创建裸金属实例的管理节点
在controller节点执行以下操作。
- 配置ironic API版本。
Ironic API从1.11版本后,裸金属实例管理节点的provision_state状态机添加了新的状态,并增加新特性,当前默认使用1.9的ironic API版本,推荐使用更高版本。
可通过设置环境变量来配置API版本:
1 2
export IRONIC_API_VERSION=1.11 export OS_BAREMETAL_API_VERSION=1.11
也可在命令中通过--os-baremetal-api-version指定API版本,例如:
1
openstack baremetal --os-baremetal-api-version 1.11 node list
- 创建裸金属实例管理节点。
创建裸金属实例管理节点时,必须通过--driver字段指定检查裸金属实例的管理驱动小节中所述的管理驱动。
1
openstack baremetal node create --driver ipmi --name {BM_NAME}
- 后续裸金属实例管理节点的相关设置可通过UUID指定节点,若已通过--name字段指定裸金属实例管理节点的逻辑名,可使用裸金属实例名指定节点。
- {BM_NAME}为裸金属实例管理节点的裸金属实例名称,要求具有唯一性,不支持特殊字符,本小节中使用“BM_TEST”进行演示。
- 查看裸金属实例管理节点信息。
1
openstack baremetal node show ${BM_UUID}
或者
1
openstack baremetal node show ${BM_NAME}
此时管理节点的供应状态provision_state为enroll。
- 配置管理节点硬件接口信息。
从API版本1.31开始,可以为裸金属实例管理节点配置硬件接口信息,可配置选项与默认值如2所述。
1
openstack baremetal --os-baremetal-api-version 1.31 node set ${BM_NAME} --deploy-interface iscsi --raid-interface no-raid
配置完成后,可通过命令进行查看:
1
openstack baremetal --os-baremetal-api-version 1.31 node show ${BM_NAME} --fields deploy_interface raid_interface
在API 1.31版本中可通过--fields指定所查看属性。
- 配置管理驱动属性信息。
- 使用driver_info字段设置管理驱动所需的属性,主要包括BMC等相关信息,以便Bare Metal服务可以管理该节点。
1
openstack baremetal node set ${BM_NAME} --driver-info ipmi_username=${USER_NAME} --driver-info ipmi_password=${PASSWORD} --driver-info ipmi_address=${ADDRESS} --driver-info ipmi_port=${PORT}
USER_NAME、PASSWORD、ADDRESS、PORT分别为访问BMC的用户名、密码、IP地址、端口号,若不配置ipmi_port,则使用默认值623。
- 配置完成后,可查看管理驱动属性信息。
1
openstack baremetal node show {BM_NAME}
- 可通过ipmitool工具验证所填配置正确、网络环境是否正常。
1
ipmitool -I lanplus -H ${ADDRESS} -U ${USER_NAME} -P ${PASSWORD} -p ${PORT} power status
- 可通过查看待部署裸金属实例的启动项信息,验证信息是否配置成功。
1
openstack baremetal node boot device show ${BM_NAME}
- 使用driver_info字段设置管理驱动所需的属性,主要包括BMC等相关信息,以便Bare Metal服务可以管理该节点。
- 在管理节点上部署镜像。
- 指定与管理驱动兼容的部署镜像内核kernel与部署镜像临时文件系统ramdisk。
1
openstack baremetal node set ${BM_NAME} --driver-info deploy_kernel=${deploy_kernel_uuid} --driver-info deploy_ramdisk=${deploy_ramdisk_uuid}
其中部署镜像为创建、上传用户镜像到Image服务小节3~6中所述镜像,可通过命令openstack image list获取镜像UUID,部署镜像的体系架构应与实际物理服务器相匹配。
- 配置完成后,可通过如下命令查看裸机节点的驱动程序信息。
1
openstack baremetal --os-baremetal-api-version 1.31 node show ${BM_NAME} --fields driver_info
- 指定与管理驱动兼容的部署镜像内核kernel与部署镜像临时文件系统ramdisk。
- 配置管理节点网络信息。
- 管理节点若使用neutron网络接口,则需指定provisioning_network与cleaning_network,若使用flat网络接口,则只需指定cleaning_network。供应网络与清理网络可以相同,也可以不同,根据实际情况进行配置。
1
openstack baremetal node set ${BM_NAME} --driver-info cleaning_network=${cleaning_network_uuid} --driver-info provisioning_network=${provisioning_network_uuid}
此处所使用的网络为创建Provisioning Network中所创建的网络,cleaning_network与provisioning_network可以相同,可通过命令“openstack network list”获取网络UUID。
- 配置完成后,可通过如下命令查看裸机节点的驱动程序信息。
1
openstack baremetal --os-baremetal-api-version 1.31 node show ${BM_NAME} --fields driver_info
- 管理节点若使用neutron网络接口,则需指定provisioning_network与cleaning_network,若使用flat网络接口,则只需指定cleaning_network。供应网络与清理网络可以相同,也可以不同,根据实际情况进行配置。
- 配置管理节点引导模式。
1
openstack baremetal node set ${BM_NAME} --property capabilities='boot_mode:uefi'
- 鲲鹏服务器只支持UEFI引导启动。
- 若使用CentOS-7-x86_64-GenericCloud-2003镜像部署x86_64服务器,应将命令中的BIOS启动模式参数改为boot_mode:bios。
- 配置管理端口。
- 需要根据裸金属实例服务器网口的MAC地址创建端口,Bare Metal服务将会把MAC地址传递至网络服务,用于网络配置。应确保裸金属实例服务器中应有一个网口开启PXE功能,并已根据网口MAC地址成功创建端口。
1
openstack baremetal --os-baremetal-api-version 1.31 port create ${MAC_ADDRESS} --node ${BM_UUID} --pxe-enabled true
应在裸金属实例服务器BIOS中开启网卡的PXE功能,网口的MAC地址可通过BMC等方式获取。
- 可通过命令查看端口列表。
1
openstack baremetal port list
- 也可以通过命令查看端口详细信息。
1
openstack baremetal port show ${port_uuid}
- 使用命令查看端口pxe_enabled状态。
1
openstack baremetal --os-baremetal-api-version 1.31 port list --fields address pxe_enabled node_uuid
对于每个裸金属实例管理节点,应有一个端口pxe_enabled状态为True。
若端口pxe_enabled为False,可使用命令启用PXE(Preboot Execution Environment)。
1
openstack baremetal port set {port_uuid} --pxe-enabled
- 需要根据裸金属实例服务器网口的MAC地址创建端口,Bare Metal服务将会把MAC地址传递至网络服务,用于网络配置。应确保裸金属实例服务器中应有一个网口开启PXE功能,并已根据网口MAC地址成功创建端口。