2.3. 为 CellController 角色设计主机
要为 CellController 角色指定裸机节点,您必须使用资源类配置裸机节点,以标记 CellController 角色的节点。
如果您为多个单元环境创建了自定义角色,您可以按照以下步骤为自定义角色配置资源类,方法是使用自定义角色的名称替换单元控制器名称。
以下流程适用于尚未调配的新 overcloud 节点。要将资源类分配给已调配的现有 overcloud 节点,请缩减 overcloud 以取消置备节点,然后扩展 overcloud,以使用新的资源类分配来重新置备节点。有关更多信息,请参阅 扩展 overcloud 节点。
流程
-
将
CellController角色添加到节点定义模板:node.json或node.yaml,为 CellController 角色注册裸机节点。有关更多信息,请参阅 安装和管理 Red Hat OpenStack Platform 指南中的 为 overcloud 注册节点。 检查节点硬件:
openstack overcloud node introspect \ --all-manageable --provide
(undercloud)$ openstack overcloud node introspect \ --all-manageable --provideCopy to Clipboard Copied! Toggle word wrap Toggle overflow 如需更多信息,请参阅 安装和管理 Red Hat OpenStack Platform 指南中的创建 裸机节点硬件清单。
检索节点列表来识别它们的 UUID:
openstack baremetal node list
(undercloud)$ openstack baremetal node listCopy to Clipboard Copied! Toggle word wrap Toggle overflow 标记您要指定为单元控制器的每个裸机节点,并带有自定义单元控制器资源类:
openstack baremetal node set \ --resource-class baremetal.CELL-CONTROLLER <node>
(undercloud)$ openstack baremetal node set \ --resource-class baremetal.CELL-CONTROLLER <node>Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
将
<node>替换为裸机节点的名称或 UUID。
-
将
将
CellController角色添加到节点定义文件overcloud-baremetal-deploy.yaml中,并定义您要分配给节点的任何预先节点放置、资源类、网络拓扑或其他属性:Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
将 <
cell_topology_file> 替换为用于单元堆栈的网络拓扑文件的名称,如compute.j2。 将
<role_topology_file> 替换为用于CellController角色的网络拓扑文件的名称,如cell_controller_net_top.j2。您可以重复使用现有网络拓扑,或为角色或单元创建新的自定义网络接口模板。如需更多信息,请参阅使用 director 安装和管理 Red Hat OpenStack Platform 指南中的 自定义网络接口模板。要使用默认网络定义设置,请不要在角色定义中包含
network_config。
有关您可以在节点定义文件中配置节点属性的属性的更多信息,请参阅 裸机节点置备属性。有关节点定义文件的示例,请参阅 节点定义文件 示例。
-
将 <
为您的角色置备新节点:
openstack overcloud node provision \ [--stack <stack>] \ [--network-config \]
(undercloud)$ openstack overcloud node provision \ [--stack <stack>] \ [--network-config \] --output <deployment_file> \ /home/stack/templates/overcloud-baremetal-deploy.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow -
可选:将
<stack>替换为置备裸机节点的堆栈的名称。默认为overcloud。 -
可选:包含
--network-config可选参数,为cli-overcloud-node-network-config.yamlAnsible playbook 提供网络定义。如果您使用network_config属性在节点定义文件中未定义网络定义,则使用默认网络定义。 -
将
<deployment_file>替换为用于部署命令生成的 heat 环境文件的名称,如/home/stack/templates/overcloud-baremetal-deployed.yaml。
-
可选:将
在一个单独的终端中监控置备进度。当置备成功时,节点状态将从
available变为active:watch openstack baremetal node list
(undercloud)$ watch openstack baremetal node listCopy to Clipboard Copied! Toggle word wrap Toggle overflow 如果您在没有
--network-config选项运行 provisioning 命令,请在network-environment.yaml文件中配置<Role>NetworkConfigTemplate参数以指向 NIC 模板文件:parameter_defaults: ComputeNetworkConfigTemplate: /home/stack/templates/nic-configs/compute.j2 CellControllerNetworkConfigTemplate: /home/stack/templates/nic-configs/<role_topology_file> ControllerNetworkConfigTemplate: /home/stack/templates/nic-configs/controller.j2
parameter_defaults: ComputeNetworkConfigTemplate: /home/stack/templates/nic-configs/compute.j2 CellControllerNetworkConfigTemplate: /home/stack/templates/nic-configs/<role_topology_file> ControllerNetworkConfigTemplate: /home/stack/templates/nic-configs/controller.j2Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
将 <
role_topology_file> 替换为包含CellController角色的网络拓扑的文件的名称,如cell_controller_net_top.j2。设置为compute.j2,以使用默认的网络拓扑。
-
将 <