2.3. 将物理机添加为裸机节点
将作为要调配实例的物理计算机的节点添加,并确认 Compute 可以查看可用的硬件。计算不会立即通知新资源,因为计算的资源跟踪器定期同步。在下一个定期任务运行后,更改将可见。这个值 scheduler_driver_task_period 可以在 /etc/nova/nova.conf 中更新。默认周期为 60 秒。
在系统注册为裸机节点后,可以使用硬件内省来发现硬件详细信息,或者手动添加。
2.3.1. 使用硬件内省添加节点 复制链接链接已复制到粘贴板!
将物理计算机注册为裸机节点,然后使用 openstack-ironic-inspector 检测节点的硬件详细信息,并为其每个以太网 MAC 地址创建端口。以下流程中的所有步骤都必须在托管裸机置备编排器服务的服务器上执行,同时以 root 用户身份登录。
使用硬件内省添加节点
设置 shell,以使用 Identity 作为管理用户:
source ~/keystonerc_admin
# source ~/keystonerc_adminCopy to Clipboard Copied! Toggle word wrap Toggle overflow 添加新节点:
ironic node-create -d DRIVER_NAME
# ironic node-create -d DRIVER_NAMECopy to Clipboard Copied! Toggle word wrap Toggle overflow 将 DRIVER_NAME 替换为裸机置备用于置备此节点的驱动程序的名称。您必须在 /etc/ironic/ironic.conf 文件中启用了此驱动程序。要创建节点,必须至少指定驱动程序名称。
重要请注意节点的唯一标识符。
您可以通过逻辑名称或 UUID 引用节点。(可选)为节点分配逻辑名称:
ironic node-update NODE_UUID add name=NAME
# ironic node-update NODE_UUID add name=NAMECopy to Clipboard Copied! Toggle word wrap Toggle overflow 将 NODE_UUID 替换为节点的唯一标识符。使用节点的逻辑名称替换 NAME。
确定驱动程序所需的节点信息,然后更新节点驱动程序信息,以允许裸机置备来管理节点:
ironic driver-properties DRIVER_NAME ironic node-update NODE_UUID add \ driver_info/PROPERTY=VALUE \ driver_info/PROPERTY=VALUE
# ironic driver-properties DRIVER_NAME # ironic node-update NODE_UUID add \ driver_info/PROPERTY=VALUE \ driver_info/PROPERTY=VALUECopy to Clipboard Copied! Toggle word wrap Toggle overflow 替换以下值:
- 将 DRIVER_NAME 替换为要显示属性的驱动程序的名称。除非已在 /etc/ironic/ironic.conf 文件中启用了驱动程序,否则不会返回这些信息。
- 将 NODE_UUID 替换为节点的唯一标识符。或者,使用节点的逻辑名称。
- 将 PROPERTY 替换为 ironic driver-properties 命令返回的必要属性。
- 使用该属性的有效值替换 VALUE。
为节点驱动程序指定部署内核和部署 ramdisk:
ironic node-update NODE_UUID add \ driver_info/deploy_kernel=KERNEL_UUID \ driver_info/deploy_ramdisk=INITRAMFS_UUID
# ironic node-update NODE_UUID add \ driver_info/deploy_kernel=KERNEL_UUID \ driver_info/deploy_ramdisk=INITRAMFS_UUIDCopy to Clipboard Copied! Toggle word wrap Toggle overflow 替换以下值:
- 将 NODE_UUID 替换为节点的唯一标识符。或者,使用节点的逻辑名称。
- 将 KERNEL_UUID 替换为上传到镜像服务的 .kernel 镜像的唯一标识符。
- 将 INITRAMFS_UUID 替换为上传到镜像服务的 .initramfs 镜像的唯一标识符。
将节点配置为在从节点磁盘中安装的本地引导加载程序(而非通过 PXE 或虚拟介质)进行初始部署后重新引导。还必须对用于调配节点的类别上设置本地引导功能。要启用本地引导,用于部署该节点的镜像必须包含 grub2。配置本地引导:
ironic node-update NODE_UUID add \ properties/capabilities="boot_option:local"
# ironic node-update NODE_UUID add \ properties/capabilities="boot_option:local"Copy to Clipboard Copied! Toggle word wrap Toggle overflow 将 NODE_UUID 替换为节点的唯一标识符。或者,使用节点的逻辑名称。
将裸机节点移到
manageable状态:ironic node-set-provision-state NODE_UUID manage
# ironic node-set-provision-state NODE_UUID manageCopy to Clipboard Copied! Toggle word wrap Toggle overflow 将 NODE_UUID 替换为节点的唯一标识符。或者,使用节点的逻辑名称。
开始内省:
openstack baremetal introspection start NODE_UUID --discoverd-url http://overcloud IP:5050
# openstack baremetal introspection start NODE_UUID --discoverd-url http://overcloud IP:5050Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
将 NODE_UUID 替换为节点的唯一标识符。或者,使用节点的逻辑名称。节点发现和内省过程必须运行才能完成,然后才能调配节点。要检查节点内省的状态,请运行 ironic node-list,再查找
Provision State。在成功内省后,节点将处于available状态。 -
将 overcloud IP 替换为之前在 ironic.conf 中设置的
service_url值。
-
将 NODE_UUID 替换为节点的唯一标识符。或者,使用节点的逻辑名称。节点发现和内省过程必须运行才能完成,然后才能调配节点。要检查节点内省的状态,请运行 ironic node-list,再查找
验证节点的设置:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 将 NODE_UUID 替换为节点的唯一标识符。或者,使用节点的逻辑名称。以上命令的输出应该为每个接口报告
True或None。标记为None的接口是您尚未配置的接口,或者您的驱动程序不支持的接口。
2.3.2. 手动添加节点 复制链接链接已复制到粘贴板!
将物理计算机注册为裸机节点,然后手动添加其硬件详细信息并为每个以太网 MAC 地址创建端口。以下流程中的所有步骤都必须在托管裸机置备编排器服务的服务器上执行,同时以 root 用户身份登录。
添加没有硬件内省的节点
设置 shell,以使用 Identity 作为管理用户:
source ~/keystonerc_admin
# source ~/keystonerc_adminCopy to Clipboard Copied! Toggle word wrap Toggle overflow 添加新节点:
ironic node-create -d DRIVER_NAME
# ironic node-create -d DRIVER_NAMECopy to Clipboard Copied! Toggle word wrap Toggle overflow 将 DRIVER_NAME 替换为裸机置备用于置备此节点的驱动程序的名称。您必须在 /etc/ironic/ironic.conf 文件中启用了此驱动程序。要创建节点,必须至少指定驱动程序名称。
重要请注意节点的唯一标识符。
您可以通过逻辑名称或 UUID 引用节点。(可选)为节点分配逻辑名称:
ironic node-update NODE_UUID add name=NAME
# ironic node-update NODE_UUID add name=NAMECopy to Clipboard Copied! Toggle word wrap Toggle overflow 将 NODE_UUID 替换为节点的唯一标识符。使用节点的逻辑名称替换 NAME。
确定驱动程序所需的节点信息,然后更新节点驱动程序信息,以允许裸机置备来管理节点:
ironic driver-properties DRIVER_NAME ironic node-update NODE_UUID add \ driver_info/PROPERTY=VALUE \ driver_info/PROPERTY=VALUE
# ironic driver-properties DRIVER_NAME # ironic node-update NODE_UUID add \ driver_info/PROPERTY=VALUE \ driver_info/PROPERTY=VALUECopy to Clipboard Copied! Toggle word wrap Toggle overflow 替换以下值:
- 将 DRIVER_NAME 替换为要显示属性的驱动程序的名称。除非已在 /etc/ironic/ironic.conf 文件中启用了驱动程序,否则不会返回这些信息。
- 将 NODE_UUID 替换为节点的唯一标识符。或者,使用节点的逻辑名称。
- 将 PROPERTY 替换为 ironic driver-properties 命令返回的必要属性。
- 使用该属性的有效值替换 VALUE。
为节点驱动程序指定部署内核和部署 ramdisk:
ironic node-update NODE_UUID add \ driver_info/deploy_kernel=KERNEL_UUID \ driver_info/deploy_ramdisk=INITRAMFS_UUID
# ironic node-update NODE_UUID add \ driver_info/deploy_kernel=KERNEL_UUID \ driver_info/deploy_ramdisk=INITRAMFS_UUIDCopy to Clipboard Copied! Toggle word wrap Toggle overflow 替换以下值:
- 将 NODE_UUID 替换为节点的唯一标识符。或者,使用节点的逻辑名称。
- 将 KERNEL_UUID 替换为上传到镜像服务的 .kernel 镜像的唯一标识符。
- 将 INITRAMFS_UUID 替换为上传到镜像服务的 .initramfs 镜像的唯一标识符。
更新节点的属性以匹配节点上的硬件规格:
ironic node-update NODE_UUID add \ properties/cpus=CPU \ properties/memory_mb=RAM_MB \ properties/local_gb=DISK_GB \ properties/cpu_arch=ARCH
# ironic node-update NODE_UUID add \ properties/cpus=CPU \ properties/memory_mb=RAM_MB \ properties/local_gb=DISK_GB \ properties/cpu_arch=ARCHCopy to Clipboard Copied! Toggle word wrap Toggle overflow 替换以下值:
- 将 NODE_UUID 替换为节点的唯一标识符。或者,使用节点的逻辑名称。
- 使用要使用的 CPU 数量替换 CPU。
- 将 RAM_MB 替换为要使用的 RAM (以 MB 为单位)。
- 将 DISK_GB 替换为要使用的磁盘大小(以 GB 为单位)。
- 使用要使用的构架类型替换 ARCH。
将节点配置为在从节点磁盘中安装的本地引导加载程序(而非通过 PXE 或虚拟介质)进行初始部署后重新引导。还必须对用于调配节点的类别上设置本地引导功能。要启用本地引导,用于部署该节点的镜像必须包含 grub2。配置本地引导:
ironic node-update NODE_UUID add \ properties/capabilities="boot_option:local"
# ironic node-update NODE_UUID add \ properties/capabilities="boot_option:local"Copy to Clipboard Copied! Toggle word wrap Toggle overflow 将 NODE_UUID 替换为节点的唯一标识符。或者,使用节点的逻辑名称。
告知裸机在节点上置备网络接口卡。创建一个带有每个 NIC 的 MAC 地址的端口:
ironic port-create -n NODE_UUID -a MAC_ADDRESS
# ironic port-create -n NODE_UUID -a MAC_ADDRESSCopy to Clipboard Copied! Toggle word wrap Toggle overflow 将 NODE_UUID 替换为节点的唯一标识符。将 MAC_ADDRESS 替换为节点上 NIC 的 MAC 地址。
验证节点的设置:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 将 NODE_UUID 替换为节点的唯一标识符。或者,使用节点的逻辑名称。以上命令的输出应该为每个接口报告
True或None。标记为None的接口是您尚未配置的接口,或者您的驱动程序不支持的接口。