在controller节点执行以下操作。
1
|
openstack --os-baremetal-api-version 1.21 baremetal node set ${BM_NAME} --resource-class $CLASS_NAME |
其中CLASS_NAME可自定义。
1
|
openstack baremetal --os-baremetal-api-version 1.31 node show ${BM_NAME} --fields name resource_class |
若需指定更高级的调度,可通过--property字段指定节点的capabilities属性,配合Compute服务中的ComputeCapabilitiesFilter进行使用。
1
|
openstack baremetal node set $NODE_UUID --property capabilities=key1:val1,key2:val2 |
1
|
openstack baremetal node set ${BM_NAME} --property cpus=$CPU_COUNT --property memory_mb=$RAM_MB --property local_gb=$DISK_GB --property cpu_arch=$ARCH |
其中x86服务器的cpu_arch为x86_64,arm服务器的cpu_arch为aarch64。
配置完成后,可通过命令查看:
1
|
openstack baremetal --os-baremetal-api-version 1.31 node show ${BM_NAME} --fields name properties |
硬件信息也可通过硬件检查功能进行收集。
1
|
openstack baremetal --os-baremetal-api-version 1.11 node validate ${BM_NAME} |
应确保management与power状态为True。
如果验证失败,应根据失败信息进行检查,部分配置失败是因为驱动未支持。
当Bare Metal服务与Compute服务配合使用时,管理节点中的instance_info中image相关配置无需用户主动配置,将在实例部署之前由Compute服务自动配置,因此可忽略部署deploy选项的错误。
当3中management与power状态为True时,管理节点可使用如下命令进入管理状态:
1
|
openstack baremetal --os-baremetal-api-version 1.11 node manage ${BM_NAME} |
可通过命令进行查看:
1
|
openstack baremetal --os-baremetal-api-version 1.31 node show ${BM_NAME} --fields name provision_state |
若已完成硬件检查驱动配置,可进行如下操作收集硬件信息:
1
|
systemctl start openstack-ironic-inspector-dnsmasq |
1
|
openstack baremetal --os-baremetal-api-version 1.11 node inspect ${BM_NAME} |
该命令为异步调用,并不会立即返回结果,可通过如下命令查看管理节点状态:
1
|
watch -d -n 1 "openstack baremetal node list" |
所配置的管理节点Provisioning State变化为manageable -> inspecting wait -> manageable
1
|
openstack baremetal --os-baremetal-api-version 1.11 node show ${BM_NAME} |
管理节点的properties中包含memory_mb、cpu_arch、local_gb、cpus等信息。
1
|
systemctl stop openstack-ironic-inspector-dnsmasq |
设置控制台接口。
1
|
openstack --os-baremetal-api-version 1.31 baremetal node set ${BM_NAME} --console-interface ipmitool-socat |
设置控制台端口。
1
|
openstack baremetal node set ${BM_NAME} --driver-info ipmi_terminal_port=${port} |
使能控制台。
1
|
openstack baremetal node console enable ${BM_NAME} |
查看控制台信息。
1
|
openstack baremetal node console show ${BM_NAME} |
1
|
openstack baremetal --os-baremetal-api-version 1.31 port list --fields address pxe_enabled node_uuid |
每个裸金属实例管理节点应至少有一个端口的pxe_enabled状态为true。
若端口pxe_enabled状态为false,则使用如下命令设置:
openstack baremetal --os-baremetal-api-version 1.31 port set ${port_uuid} --pxe-enable
1
|
openstack baremetal --os-baremetal-api-version 1.11 node provide ${BM_NAME} |
Bare Metal服务默认配置为自动清理,将会对节点进行格式化操作。
1
|
watch -d -n 1 "openstack baremetal node list" |
所配置的管理节点Provisioning State变化为
。
1
|
openstack baremetal --os-baremetal-api-version 1.56 node abort ${BM_NAME} |
管理节点Provisioning State将转变为clean fail,可使用如下命令重新进入管理状态。
1
|
openstack baremetal --os-baremetal-api-version 1.11 node manage ${BM_NAME} |
管理节点长时间处于clean wait问题解决步骤:
1
|
openstack baremetal node maintenance unset ${BM_NAME} |
1 2 |
[deploy] erase_devices_priority = 0 |
1 2 |
[conductor] automated_clean = true |
关闭自动清理功能后,可手动执行清理。
1
|
openstack baremetal --os-baremetal-api-version 1.15 node clean ${BM_NAME} --clean-steps '[{"interface": "deploy", "step": "erase_devices_metadata"}]' |
1
|
nova-manage cell_v2 discover_hosts --by-service |
可通过命令验证裸金属实例节点是否被nova发现。
1
|
nova hypervisor-list
|