4.3. 修改 OpenStackDataPlaneNodeSet CR


修改现有的 OpenStackDataPlaneNodeSet 自定义资源(CR)以更新节点配置或向数据平面添加新节点。使用新的 OpenStackDataPlaneDeployment CR 将这些修改应用到数据平面。

注意

您必须创建新的 OpenStackDataPlaneDeployment CR,以启动另一个 Ansible 执行,以应用您对数据平面所做的任何更改。这是因为,当 OpenStackDataPlaneDeployment CR 成功完成执行时,它不会再次运行 Ansible,即使 OpenStackDataPlaneDeployment CR 或相关的 OpenStackDataPlaneNodeSet 资源已更改。

流程

  1. 为您要更新的节点集打开 OpenStackDataPlaneNodeSet CR 定义文件,如 openstack_data_plane.yaml
  2. 更新或添加您需要的配置。有关可用于配置通用节点属性的属性的信息,请参阅 Deploying Red Hat OpenStack Services on OpenShift 指南中的OpenStackDataPlaneNodeSet CR spec 属性
  3. 保存 OpenStackDataPlaneNodeSet CR 定义文件。
  4. 应用更新的 OpenStackDataPlaneNodeSet CR 配置:

    $ oc apply -f openstack_data_plane.yaml
  5. 通过确认状态为 SetupReady 来验证 data plane 资源是否已更新:

    $ oc wait openstackdataplanenodeset openstack-data-plane --for condition=SetupReady --timeout=10m

    当状态为 SetupReady 时,命令会返回一个 condition met 信息,否则会返回超时错误。

    如需有关 data plane 条件和状态的信息,请参阅 在 OpenShift 上部署 Red Hat OpenStack Services 中的 Data plane 条件 和状态

  6. 如果环境中有任何失败的 OpenStackDataPlaneDeployment CR,请删除它们以允许新的 OpenStackDataPlaneDeployment 使用更新的 Secret 运行 Ansible。
  7. 在工作站上创建一个文件来定义新的 OpenStackDataPlaneDeployment CR:

    apiVersion: dataplane.openstack.org/v1beta1
    kind: OpenStackDataPlaneDeployment
    metadata:
      name: <node_set_deployment_name>
    • <node_set_deployment_name > 替换为 OpenStackDataPlaneDeployment CR 的名称。名称必须是唯一的,必须包含小写字母数字字符(hyphen)或 . (句点),且必须以字母数字字符开头和结尾。
    提示

    为定义文件和 OpenStackDataPlaneDeployment CR 提供唯一和描述性名称,以指示修改的节点集的用途。

  8. 添加您修改的 OpenStackDataPlaneNodeSet CR:

    spec:
      nodeSets:
        - <nodeSet_name>
  9. 保存 OpenStackDataPlaneDeployment CR 部署文件。
  10. 部署修改后的 OpenStackDataPlaneNodeSet CR:

    $ 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
  11. 验证修改后的 OpenStackDataPlaneNodeSet CR 是否已部署:

    $ oc get openstackdataplanedeployment -n openstack
    NAME             	STATUS   MESSAGE
    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 创建和部署进行故障排除

  12. 如果您将新节点添加到节点集中,请将节点映射到它所连接的 Compute 单元:

    $ oc rsh nova-cell0-conductor-0 nova-manage cell_v2 discover_hosts --verbose

    如果您没有创建额外的单元,这个命令会将 Compute 节点映射到 cell1

    访问 openstackclient pod 的远程 shell,并验证部署的 Compute 节点是否在 control plane 上可见:

    $ oc rsh -n openstack openstackclient
    $ openstack hypervisor list
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

关于红帽文档

Legal Notice

Theme

© 2026 Red Hat
返回顶部