5.8. 将虚拟网络接口(VIF)附加到裸机实例
要将裸机实例附加到裸机网络接口,云用户可以使用 Compute 服务(nova)或裸机置备服务(ironic)。
计算服务:云用户使用
openstack server add network
命令。如需更多信息 ,请参阅将网络附加到实例。注意===
- 在使用计算服务时,您必须在创建实例时明确声明端口。当 Compute 服务向裸机置备服务发出请求以创建实例时,计算服务会尝试记录要在裸机置备服务中附加的用户的所有 VIF 来生成元数据。
- 在使用 Compute 服务时,您无法指定要附加 VIF 的物理端口。如果要明确声明要映射到哪个端口,则使用裸机置备服务来创建附加。===
-
裸机置备服务:云用户使用
openstack baremetal node vif attach
命令将 VIF 附加到裸机实例。有关虚拟网络接口(VIF)的更多信息,请参阅 裸机置备服务虚拟网络接口(VIF)。
以下流程使用裸机置备服务将裸机实例附加到网络。裸机置备服务使用通过网络服务创建的端口的 UUID 创建 VIF 附加。
流程
从您的工作站访问
OpenStackClient
pod 的远程 shell:oc rsh -n openstack openstackclient
$ oc rsh -n openstack openstackclient
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 检索您要将 VIF 附加到的裸机实例的 UUID:
openstack server list
$ openstack server list
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 检索您要附加到节点的 VIF 的 UUID:
openstack port list
$ openstack port list
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 可选:检索您要映射 VIF 的裸机端口的 UUID:
openstack baremetal port list
$ openstack baremetal port list
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 将 VIF 附加到裸机实例:
openstack baremetal node vif attach [--port-uuid <port_uuid>] \ <node> <vif_id>
$ openstack baremetal node vif attach [--port-uuid <port_uuid>] \ <node> <vif_id>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
可选:将 <
port_uuid
> 替换为要附加 VIF 的裸机端口的 UUID。 -
将 &
lt;node
> 替换为您要附加 VIF 的裸机实例的名称或 UUID。 -
将
<vif_id
> 替换为要附加到裸机实例的 VIF 的名称或 UUID。
-
可选:将 <
退出
openstackclient
pod:exit
$ exit
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
5.8.1. 裸机置备服务如何将 VIF 附加到裸机实例 复制链接链接已复制到粘贴板!
当云用户请求虚拟网络接口(VIF)连接到其裸机实例时,使用 openstack baremetal node vif attach
命令(如果没有声明的端口或端口组首选项),Bare Metal Provisioning 服务(ironic)通过评估以下条件来选择合适的未附加端口或端口组:
- 端口或端口组没有物理网络,或者具有与 VIF 可用物理网络之一匹配的物理网络。
- 首选使用物理网络到没有物理网络的端口和端口组的端口和端口组。
- 将端口组首选为端口。
- 首选启用 PXE 的端口。
当裸机置备服务将任何 VIF 附加到裸机实例时,它会明确为 VIF 绑定的物理端口设置 MAC 地址。如果节点已经处于 ACTIVE 状态,则 Networking 服务(neutron)会更新 VIF 附加。
当裸机置备服务取消绑定 VIF 时,它会向网络服务发出请求以重置分配的 MAC 地址,以避免与网络服务的唯一硬件 MAC 地址要求冲突。
5.8.2. 连接和分离虚拟网络接口 复制链接链接已复制到粘贴板!
裸机置备服务具有一个 API,可用于管理虚拟网络接口之间的映射。例如,网络服务(neutron)和物理接口(NIC)中的接口。您可以为每个裸机节点配置这些接口,将虚拟网络接口(VIF)设置为物理网络接口(PIF)映射逻辑。
流程
从您的工作站访问
OpenStackClient
pod 的远程 shell:oc rsh -n openstack openstackclient
$ oc rsh -n openstack openstackclient
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 列出连接到裸机节点的 VIF ID:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
将
<node>
替换为裸机节点的名称或 UUID。
-
将
附加 VIF 后,裸机置备服务会使用物理端口的 MAC 地址更新网络服务中的虚拟端口。检查这个端口地址:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 在创建裸机节点的网络上创建一个新端口:
openstack port create --network baremetal --fixed-ip ip-address=192.168.24.24 <port_name>
$ openstack port create --network baremetal --fixed-ip ip-address=192.168.24.24 <port_name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 从它所附加的裸机实例中删除端口:
openstack server remove port <instance_name> 4475bc5a-6f6e-466d-bcb6-6c2dce0fba16
$ openstack server remove port <instance_name> 4475bc5a-6f6e-466d-bcb6-6c2dce0fba16
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 检查列表中是否不再存在 IP 地址:
openstack server list
$ openstack server list
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 检查附加到节点的 VIFs 是否存在:
openstack baremetal node vif list <node> openstack port list
$ openstack baremetal node vif list <node> $ openstack port list
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 添加新创建的端口:
openstack server add port <instance_name> <port_name>
$ openstack server add port <instance_name> <port_name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 验证新 IP 地址显示新端口:
openstack server list
$ openstack server list
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 检查 VIF ID 是否为新端口的 UUID:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 检查网络服务端口 MAC 地址是否已更新,并与裸机置备服务端口之一匹配:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 重新引导裸机节点,以便它可识别新的 IP 地址:
openstack server reboot overcloud-baremetal-0
$ openstack server reboot overcloud-baremetal-0
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 分离或附加接口后,裸机操作系统会删除、添加或修改已更改的网络接口。当您替换端口时,DHCP 请求会获取新的 IP 地址,但这可能需要一些时间,因为旧的 DHCP 租期仍然有效。要立即启动这些更改,请重新引导裸机节点。