0

我有一个用 virtualbox、vagrant 和 openshift 的 dockered ansible intsaller 构建的开发集群。到目前为止,我还没有发现如何强制安装程序使用 eth1 地址作为节点的 nodeip。它始终是 10.0.2.15。到目前为止,我已经尝试route add 8.8.8.8 gw 192.168.33.1让 ansible 将 eth1 子网识别为默认子网。还尝试openshift_ip在节点上设置(与 一起openshift_public_ip)。没有成功。我还注意到该变量openshift_set_node_ip已被弃用,它服务于这个特定目的。那么如何在安装过程中更改节点 ip?(甚至之后...... oc edit node 也不起作用,即使保存了更改,它也会翻转)

4

1 回答 1

1

您应该通过要使用 DNS 配置的特定 IP 地址来解析节点主机名。并且为每个节点IP分配的网卡接口应该只配置一个默认网关。

然后,您可以使用以下清单变量进行安装。您应该为每个节点主机分别定义每个节点组。有关节点组的详细信息,请参阅节点组定义

eg> 为了便于阅读,我插入了缩进openshift_node_groups,但你应该配置为一行。

openshift_node_groups=[
                       {'name': 'node-config-master1', 
                        'labels': ['node-role.kubernetes.io/master=true'], 
                        'edits': [{ 'key': 'nodeIP','value': '1.1.1.1'}]}, 
                       {'name': 'node-config-masterX'
                       ...                                              
                       },
                       {'name': 'node-config-infra1', 
                        'labels': ['node-role.kubernetes.io/infra=true'], 
                        'edits': [{ 'key': 'nodeIP','value': '2.2.2.2'}]},
                       {'name': 'node-config-infraX'
                       ...
                       },
                       {'name': 'node-config-compute1', 
                        'labels': ['node-role.kubernetes.io/compute=true'], 
                        'edits': [{ 'key': 'nodeIP','value': '3.3.3.3'}]},
                       {'name': 'node-config-computeX'
                       ...
                       }
                       ]

[nodes]
master1.example.com openshift_node_group_name='node-config-master1'
...
masterX.example.com openshift_node_group_name='node-config-masterX'
infra1.example.com  openshift_node_group_name='node-config-infra1'
...
infraX.example.com  openshift_node_group_name='node-config-infraX'
compute1.example.com  openshift_node_group_name='node-config-compute1'
...
computeX.example.com  openshift_node_group_name='node-config-computeX'
于 2019-09-27T12:24:44.760 回答