4.4. 使用 Redfish 虚拟介质引导部署裸机节点
您可以使用 Redfish 虚拟介质引导,向节点的 Baseboard Management Controller (BMC) 提供引导镜像,以便 BMC 可将镜像插入到其中一个虚拟驱动器中。然后,节点可以从虚拟驱动器引导到镜像中存在的操作系统。
Redfish 硬件类型支持通过虚拟介质引导部署、救援和用户镜像。裸机置备服务(ironic)使用与节点关联的内核和 ramdisk 镜像,在节点部署时为 UEFI 或 BIOS 引导模式构建可引导的 ISO 镜像。虚拟介质引导的主要优点是可以消除 PXE 的 TFTP 镜像传输阶段,并使用 HTTP GET 或其他方法。
要通过虚拟介质使用 redfish
硬件类型启动裸机实例,请将每个裸机节点的引导接口设置为 redfish-virtual-media
,对于 UEFI 节点,请定义 EFI 系统分区(ESP)镜像。然后将注册节点配置为使用 Redfish 虚拟介质引导。
先决条件
- 裸机节点注册并注册。
- IPA 和实例镜像在 Image Service (glance)中提供。
- 对于 UEFI 节点,Image Service (glance)提供了一个 EFI 系统分区镜像(ESP)。
流程
从您的工作站访问
OpenStackClient
pod 的远程 shell:oc rsh -n openstack openstackclient
$ oc rsh -n openstack openstackclient
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 将 Bare Metal 服务引导接口设置为
redfish-virtual-media
:openstack baremetal node set --boot-interface redfish-virtual-media <node_name>
$ openstack baremetal node set --boot-interface redfish-virtual-media <node_name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
将
<node_name>
替换为节点的名称。
-
将
对于 UEFI 节点,定义 EFI 系统分区 (ESP) 镜像:
openstack baremetal node set --driver-info bootloader=<esp_image> <node>
$ openstack baremetal node set --driver-info bootloader=<esp_image> <node>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
将
<esp_image
> 替换为 ESP 镜像的镜像 UUID 或 URL。 -
将
<node
> 替换为节点的名称。
注意对于 BIOS 节点,请不要完成此步骤。
-
将
在裸机节点上创建一个端口,并将端口与裸机节点上 NIC 的 MAC 地址关联:
openstack baremetal port create --pxe-enabled True --node <node_uuid> <mac_address>
$ openstack baremetal port create --pxe-enabled True --node <node_uuid> <mac_address>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
将
<node_uuid
> 替换为裸机节点的 UUID。 -
将
<mac_address
> 替换为裸机节点上 NIC 的 MAC 地址。
-
将
退出
openstackclient
pod:exit
$ exit
Copy to Clipboard Copied! Toggle word wrap Toggle overflow