17.8. Controller 节点替换后清理


完成节点替换后,执行以下步骤来完善 Controller 集群。

步骤

  1. 登录 Controller 节点。
  2. 启用 Galera 集群的 Pacemaker 管理,并在新节点上启动 Galera:

    [heat-admin@overcloud-controller-0 ~]$ sudo pcs resource refresh galera-bundle
    [heat-admin@overcloud-controller-0 ~]$ sudo pcs resource manage galera-bundle
    Copy to Clipboard Toggle word wrap
  3. 执行最后的状态检查来确保服务在正确运行:

    [heat-admin@overcloud-controller-0 ~]$ sudo pcs status
    Copy to Clipboard Toggle word wrap
    注意

    如果有任何服务失败,请使用 pcs resource refresh 命令来解决问题并重新启动失败的服务。

  4. 退出 director:

    [heat-admin@overcloud-controller-0 ~]$ exit
    Copy to Clipboard Toggle word wrap
  5. 查找 overcloudrc 文件,以便您可以跟 overcloud 交互:

    $ source ~/overcloudrc
    Copy to Clipboard Toggle word wrap
  6. 检查 overcloud 环境中的网络代理:

    (overcloud) $ openstack network agent list
    Copy to Clipboard Toggle word wrap
  7. 如果出现任何旧节点的代理,请删除它们:

    (overcloud) $ for AGENT in $(openstack network agent list --host overcloud-controller-1.localdomain -c ID -f value) ; do openstack network agent delete $AGENT ; done
    Copy to Clipboard Toggle word wrap
  8. 如有必要,将您的路由器添加到新节点上的 3 层代理主机。使用以下示例命令,通过 UUID 2d1c1dc1-d9d4-4fa9-b2c8-f29cd1a649d4 将名为 r1 的路由器添加到 L3 代理中:

    (overcloud) $ openstack network agent add router --l3 2d1c1dc1-d9d4-4fa9-b2c8-f29cd1a649d4 r1
    Copy to Clipboard Toggle word wrap
  9. 清理 cinder 服务。

    1. 列出 cinder 服务:

      (overcloud) $ openstack volume service list
      Copy to Clipboard Toggle word wrap
    2. 登录到控制器节点,连接到 cinder-api 容器,并使用 cinder-manage service remove 命令删除左侧服务:

      [heat-admin@overcloud-controller-0 ~]$ sudo podman exec -it cinder_api cinder-manage service remove cinder-backup <host>
      [heat-admin@overcloud-controller-0 ~]$ sudo podman exec -it cinder_api cinder-manage service remove cinder-scheduler <host>
      Copy to Clipboard Toggle word wrap
  10. 清理 RabbitMQ 集群。

    1. 登录 Controller 节点。
    2. 使用 podman exec 命令启动 bash,并验证 RabbitMQ 集群的状态:

      [heat-admin@overcloud-controller-0 ~]$ podman exec -it rabbitmq-bundle-podman-0 bash
      [heat-admin@overcloud-controller-0 ~]$ rabbitmqctl cluster_status
      Copy to Clipboard Toggle word wrap
    3. 使用 rabbitmqctl 命令忘记替换的控制器节点:

      [heat-admin@overcloud-controller-0 ~]$ rabbitmqctl forget_cluster_node <node_name>
      Copy to Clipboard Toggle word wrap
  11. 如果替换了 bootstrap Controller 节点,则必须在替换过程后移除环境文件 ~/templates/bootstrap-controller.yaml,或者从现有环境文件中移除 pacemaker_short_bootstrap_node_namemysql_short_bootstrap_node_name 参数。此步骤可防止 director 在后续替换中尝试覆盖 Controller 节点名称。如需更多信息,请参阅 替换 bootstrap 控制器节点
返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

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

關於紅帽

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

Theme

© 2025 Red Hat