2.2. 在数据平面中添加新节点集
您可以通过在数据平面中添加新的 OpenStackDataPlaneNodeSet CR 来扩展数据平面。要将新节点集添加到现有数据平面中,您必须创建一个新的 OpenStackDataPlaneDeployment CR,以部署新的 OpenStackDataPlaneNodeSet CR。如果要能够执行移动操作,如实例迁移和调整大小,在数据平面上的新节点集和其他节点集之间,还必须创建额外的 OpenStackDataPlaneDeployment CR,以便在所有节点集合中运行 ssh-known-hosts 服务,必须能够执行移动操作。
流程
-
在工作站上创建一个文件,以定义新的
OpenStackDataPlaneNodeSetCR。 定义节点集。有关如何创建节点集的详情,请查看以下流程之一:
在工作站上创建一个文件,以定义
OpenStackDataPlaneDeploymentCR 来部署新节点集:apiVersion: dataplane.openstack.org/v1beta1 kind: OpenStackDataPlaneDeployment metadata: name: <node_set_deployment_name>-
将
<node_set_deployment_name> 替换为OpenStackDataPlaneDeploymentCR 的名称。名称必须是唯一的,必须包含小写字母数字字符(hyphen)或.(句点),且必须以字母数字字符开头和结尾。
提示为定义文件和
OpenStackDataPlaneDeploymentCR 提供唯一和描述性名称,以指示新节点集的用途。-
将
将新的
OpenStackDataPlaneNodeSetCR 添加到要部署的节点集合列表中:spec: nodeSets: - <nodeSet_name>-
保存
OpenStackDataPlaneDeploymentCR 部署文件。 部署新的
OpenStackDataPlaneNodeSetCR:$ oc create -f openstack_data_plane_deploy.yaml -n openstack您可以在部署执行时查看 Ansible 日志:
$ oc get pod -l app=openstackansibleee -w $ oc logs -l app=openstackansibleee -f --max-log-requests 10如果
oc logs命令返回类似以下错误的错误,请提高--max-log-requests值:error: you are attempting to follow 19 log streams, but maximum allowed concurrency is 10, use --max-log-requests to increase the limit验证新的
OpenStackDataPlaneNodeSetCR 是否已部署:$ oc get openstackdataplanedeployment -n openstack NAME NODESETS STATUS MESSAGE openstack-data-plane ["openstack-data-plane"] True Setup Complete $ oc get openstackdataplanenodeset -n openstack NAME STATUS MESSAGE openstack-data-plane True NodeSet Ready有关返回状态的含义的信息,请参阅 在 OpenShift 上部署 Red Hat OpenStack Services 中的 Data plane 条件和状态。
如果状态表示 data plane 尚未部署,则对部署进行故障排除。如需更多信息,请参阅在 OpenShift 上部署 Red Hat OpenStack Services 中的对 data plane 创建和部署进行故障排除。
如果要在您的新节点集和其他节点集之间迁移工作负载,或者在数据平面上执行调整大小操作,您必须创建一个额外的
OpenStackDataPlaneDeploymentCR,以便在所有节点集上运行ssh-known-hosts服务,该 CR 在所有移动操作要在节点间正常工作:在工作站上创建一个文件,以定义启用移动操作的
OpenStackDataPlaneDeploymentCR:apiVersion: dataplane.openstack.org/v1beta1 kind: OpenStackDataPlaneDeployment metadata: name: enable-move-operations将新的
OpenStackDataPlaneNodeSetCR 添加到节点集合列表以及所有移动操作的现有OpenStackDataPlaneNodeSetCR 中,才能在其中执行移动操作:spec: nodeSets: - enable-move-operations - ... - <nodeSet_name>指定在 move 操作
OpenStackDataPlaneDeploymentCR 中部署节点集时,仅在指定节点集中执行ssh-known-hosts服务:spec: ... servicesOverride: - ssh-known-hosts-
保存
OpenStackDataPlaneDeploymentCR 部署文件。 部署
ssh-known-hosts服务,以便在新节点集和数据平面上的其他指定节点集之间启用移动操作:$ oc create -f enable_move_operations.yaml -n openstack
如果新节点是 Compute 节点,则必须在线它们:
将 Compute 节点映射到它们连接的 Compute 单元:
$ oc rsh nova-cell0-conductor-0 nova-manage cell_v2 discover_hosts --verbose如果您没有创建额外的单元,这个命令会将 Compute 节点映射到
cell1。验证 hypervisor 主机名是否为完全限定域名(FQDN):
$ hostname -f如果 hypervisor 主机名不是 FQDN,例如,如果它作为短名称或全名注册,请联系红帽支持。
访问
openstackclientpod 的远程 shell,并验证部署的 Compute 节点是否在 control plane 上可见:$ oc rsh -n openstack openstackclient $ openstack hypervisor list