3.4. 配置网络
在安装前,您必须为 provisioner 节点配置网络设置。安装程序置备的集群使用裸机网桥和网络资源部署,以及可选的 provisioning 网桥和网络资源。
您还可以从 OpenShift Container Platform Web 控制台配置网络设置。
先决条件
-
已使用
sudo dnf install -y <package_name> 命令安装了nmstate软件包。软件包包含nmstatectlCLI。
流程
配置裸机网络:
注意在配置裸机网络和安全 shell (SSH)连接断开连接时,NMState 有一个自动恢复任何配置的回滚机制。您还可以使用
nmstatectl gc工具为指定网络状态文件生成配置文件。对于使用 DHCP 的网络,运行以下命令来删除
/etc/sysconfig/network-scripts/ifcfg-eth0旧样式:$ nmcli con delete "System <baremetal_nic_name>"其中:
<baremetal_nic_name>-
将
<baremetal_nic_name> 替换为网络接口控制器(NIC)的名称。
对于使用动态主机配置协议(DHCP)的网络,请创建一个 NMState YAML 文件,并指定裸机网桥接口以及文件中的任何物理接口:
使用 DHCP 的裸机网桥接口配置示例
# ... interfaces: - name: <physical_interface_name> type: ethernet state: up ipv4: enabled: false ipv6: enabled: false - name: baremetal type: linux-bridge state: up ipv4: enabled: true dhcp: true bridge: options: stp: enabled: false port: - name: <physical_interface_name> # ...对于使用静态 IP 寻址的网络且没有 DHCP 网络,请创建一个 NMState YAML 文件并在文件中指定裸机网桥接口详情:
使用静态 IP 寻址且没有 DHCP 网络的裸机网桥接口配置示例
# ... dns-resolver: config: server: - <dns_ip_address> routes: config: - destination: 0.0.0.0/0 next-hop-interface: baremetal next-hop-address: <gateway_ip> interfaces: - name: <physical_interface_name> type: ethernet state: up ipv4: enabled: false ipv6: enabled: false - name: baremetal type: linux-bridge state: up ipv4: enabled: true dhcp: false address: - ip: <static_ip_address> prefix-length: 24 bridge: options: stp: enabled: false port: - name: <physical_interface_name> # ...其中:
<dns-resolver>- 定义裸机系统的 DNS 服务器。
<server>-
将
<dns_ip_address> 替换为 DNS 服务器的 IP 地址。 <type>- 定义网桥接口及其静态 IP 配置。
<gateway>-
使用网关的 IP 地址替换
<gateway_ip>。 <name>- 详细说明您设置为网桥端口的物理接口。
输入以下命令将 YAML 文件中的网络配置应用到主机的网络接口:
$ nmstatectl apply <path_to_network_yaml>输入以下命令备份网络配置 YAML 文件:
$ nmstatectl show > backup-nmstate.yml可选: 如果您要在 provisioning 网络中部署集群,请创建或编辑 NMState YAML 文件,并在文件中指定详情。
注意IPv6 地址可以是任何不是通过裸机网络路由的地址。
确保启用了统一可扩展固件接口(UEFI),并在使用 IPv6 地址时为 IPv6 协议设置 UEFI PXE 设置。
provisioning 网络的 NMState YAML 文件示例
# ... interfaces: - name: eth1 type: ethernet state: up ipv4: enabled: false ipv6: enabled: false - name: provisioning type: linux-bridge state: up ipv4: enabled: true dhcp: false address: - ip: 172.22.0.254 prefix-length: 24 ipv6: enabled: true dhcp: false address: - ip: fd00:1101::1 prefix-length: 64 bridge: options: stp: enabled: false port: - name: eth1 # ...可选:通过运行以下命令建立到
provisioner节点的 SSH 连接:# ssh kni@provisioner.<cluster_name>.<domain>其中
<cluster_name>.<domain>-
将
<cluster_name> 替换为集群的名称,<domain> 替换为集群的完全限定域名(FQDN)。
运行以下命令验证连接网桥是否已正确创建:
$ sudo nmcli con show输出示例
NAME UUID TYPE DEVICE baremetal 832f645a-9337-4afc-b48e-4a55c5779eab bridge baremetal provisioning e7756e01-d026-4a38-b460-129afaac0ec2 bridge provisioning Wired connection 1 49ff4c9c-db76-3139-8c18-c49fa7deb39a ethernet eth0 Wired connection 2 c1fb12b1-88a6-3c07-93b9-187c99204c43 ethernet eth1 lo aa030e0f-21ca-498f-b6ce-bac7d4d793f0 loopback lo