7.6. 启用虚拟介质引导

重要

该功能在此发行版本中作为技术预览提供,因此不享有红帽的全面支持。它只应用于测试,不应部署在生产环境中。有关技术预览功能的更多信息,请参阅覆盖范围详细信息

您可以使用 Redfish 虚拟介质引导,向节点的 Baseboard Management Controller (BMC) 提供引导镜像,以便 BMC 可将镜像插入到其中一个虚拟驱动器中。然后,节点可以从虚拟驱动器引导到镜像中存在的操作系统。

Redfish 硬件类型支持通过虚拟介质引导部署、救援和用户镜像。Bare Metal 服务 (ironic) 使用与节点关联的内核和 ramdisk 镜像,在节点部署时为 UEFI 或 BIOS 引导模式构建可引导的 ISO 镜像。虚拟介质引导的主要优点是可以消除 PXE 的 TFTP 镜像传输阶段,并使用 HTTP GET 或其他方法。

要通过虚拟介质使用 redfish 硬件类型引导节点,请将引导接口设置为 redfish-virtual-media,对于 UEFI 节点,请定义 EFI 系统分区 (ESP) 镜像。然后将注册节点配置为使用 Redfish 虚拟介质引导。

先决条件

  • undercloud.conf 文件的 enabled_hardware_types 参数中启用 redfish 驱动程序。
  • 注册并登记的裸机节点。
  • Image Service (glance) 中的 IPA 和实例镜像。
  • 对于 UEFI 节点,还必须在 Image Service (glance) 中有一个 EFI 系统分区镜像 (ESP)。
  • 裸机类型。
  • 用于清理和置备的网络。
  • 已安装 Sushy 库:

    $ sudo yum install sushy

步骤

  1. 将 Bare Metal 服务 (ironic) 引导接口设置为 redfish-virtual-media

    $ openstack baremetal node set --boot-interface redfish-virtual-media $NODE_NAME

    $NODE_NAME 替换为节点的名称。

  2. 对于 UEFI 节点,将引导模式设置为 uefi

    NODE=<NODE NAME OR ID> ; openstack baremetal node set --property capabilities="boot_mode:uefi,$(openstack baremetal node show $NODE -f json -c properties | jq -r .properties.capabilities | sed "s/boot_mode:[^,]*,//g")" $NODE

    $NODE 替换为节点的名称。

    注意

    对于 BIOS 节点,请不要完成此步骤。

  3. 对于 UEFI 节点,定义 EFI 系统分区 (ESP) 镜像:

    $ openstack baremetal node set --driver-info bootloader=$ESP $NODE_NAME

    $ESP 替换为 glance 镜像 UUID 或 ESP 镜像的 URL,并将 $NODE_NAME 替换为节点的名称。

    注意

    对于 BIOS 节点,请不要完成此步骤。

  4. 在裸机节点上创建一个端口,并将端口与裸机节点上 NIC 的 MAC 地址关联:

    $ openstack baremetal port create --pxe-enabled True --node $UUID $MAC_ADDRESS

    $UUID 替换为裸机节点的 UUID,并将 $MAC_ADDRESS 替换为裸机节点上 NIC 的 MAC 地址。