4.6.2. 手动注册裸机节点
将物理计算机注册为裸机节点,然后手动添加其硬件详情并为其以太网 MAC 地址创建端口。您可以在具有 overcloudrc
文件的任何节点上执行这些步骤。
前提条件
- 包括裸机置备服务的 overcloud 部署。如需更多信息,请参阅使用 裸机置备 服务 部署 overcloud。
-
必须使用
IronicEnabledDrivers
参数启用新节点的驱动程序。有关支持的驱动程序的更多信息,请参阅 裸机驱动程序。
流程
-
以
stack
用户身份登录 undercloud 主机。 提供 overcloud 凭据文件:
source ~/overcloudrc
(undercloud)$ source ~/overcloudrc
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 添加新节点:
openstack baremetal node create --driver <driver_name> --name <node_name>
$ openstack baremetal node create --driver <driver_name> --name <node_name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
将
<driver_name
> 替换为驱动程序的名称,例如ipmi
。 -
将
<node_name
> 替换为新裸机节点的名称。
-
将
- 记下在创建时分配给节点的 UUID。
将每个注册节点的引导选项设置为
local
:openstack baremetal node set \ --property capabilities="boot_option:local" <node>
$ openstack baremetal node set \ --property capabilities="boot_option:local" <node>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 将
<node>
替换为裸机节点的 UUID。指定部署内核并为节点驱动程序部署 ramdisk:
openstack baremetal node set <node> \ --driver-info deploy_kernel=<kernel_file> \ --driver-info deploy_ramdisk=<initramfs_file>
$ openstack baremetal node set <node> \ --driver-info deploy_kernel=<kernel_file> \ --driver-info deploy_ramdisk=<initramfs_file>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
将
<node>
替换为裸机节点的 ID。 -
将
<kernel_file
> 替换为.kernel
镜像的路径,例如file:///var/lib/ironic/httpboot/agent.kernel
。 -
将
<initramfs_file
> 替换为.initramfs
镜像的路径,例如file:///var/lib/ironic/httpboot/agent.ramdisk
。
-
将
更新节点属性以匹配节点上的硬件规格:
openstack baremetal node set <node> \ --property cpus=<cpu> \ --property memory_mb=<ram> \ --property local_gb=<disk> \ --property cpu_arch=<arch>
$ openstack baremetal node set <node> \ --property cpus=<cpu> \ --property memory_mb=<ram> \ --property local_gb=<disk> \ --property cpu_arch=<arch>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
将
<node>
替换为裸机节点的 ID。 -
将
<cpu
> 替换为 CPU 数量。 -
将 &
lt;ram&
gt; 替换为 RAM (以 MB 为单位)。 -
将
<disk>
替换为磁盘大小(以 GB 为单位)。 -
将 &
lt;arch&
gt; 替换为构架类型。
-
将
可选:指定每个节点的 IPMI 密码套件:
openstack baremetal node set <node> \ --driver-info ipmi_cipher_suite=<version>
$ openstack baremetal node set <node> \ --driver-info ipmi_cipher_suite=<version>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
将
<node>
替换为裸机节点的 ID。 将
<version
> 替换为节点上要使用的密码套件版本。设置为以下有效值之一:-
3
- 节点使用带有 SHA1 密码套件的 AES-128。 -
17
- 节点使用带有 SHA256 密码套件的 AES-128。
-
-
将
可选:如果您有多个磁盘,请设置 root 设备提示来通知部署要用于部署的 ramdisk:
openstack baremetal node set <node> \ --property root_device='{"<property>": "<value>"}'
$ openstack baremetal node set <node> \ --property root_device='{"<property>": "<value>"}'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
将
<node>
替换为裸机节点的 ID。 将
<property
> 和 <value
> 替换为您要用于部署的磁盘的详情,例如root_device='{"size": "128"}'
RHOSP 支持以下属性:
-
model
(字符串):设备识别码。 -
vendor
(字符串):设备厂商。 -
serial
(字符串):磁盘序列号。 -
hctl
(字符串):SCSI 的 Host:Channel:Target:Lun。 -
size
(整数):设备的大小(以 GB 为单位)。 -
wwn
(字符串):唯一的存储 ID。 -
wwn_with_extension
(字符串):唯一存储 ID 附加厂商扩展名。 -
wwn_vendor_extension
(字符串):唯一厂商存储标识符。 -
rotational
(布尔值):旋转磁盘设备为 true (HDD),否则为 false (SSD)。 name
(字符串):设备名称,例如:/dev/sdb1 仅针对具有持久名称的设备使用此属性。注意如果您指定多个属性,该设备必须与所有这些属性匹配。
-
-
将
通过在 provisioning 网络中创建一个带有 NIC 的 MAC 地址的端口,通知 Bare Metal Provisioning 服务:
openstack baremetal port create --node <node_uuid> <mac_address>
$ openstack baremetal port create --node <node_uuid> <mac_address>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
将
<node>
替换为裸机节点的唯一 ID。 -
将
<mac_address
> 替换为用于 PXE 引导的 NIC 的 MAC 地址。
-
将
验证节点的配置:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 验证
输出结果
代表以下内容:-
错误
:接口已经验证失败。如果提供的原因包含instance_info
参数[\'ramdisk'、\'kernel' 和 \'image_source']
,这可能是因为计算服务在部署过程开始时填充缺少的参数,因此还没有设置它们。如果您使用整个磁盘镜像,则可能需要只设置image_source
来传递验证。 -
true
:接口已通过验证。 -
none
:您的驱动程序不支持接口。
-