18.2. 升级 Controller 节点


要将所有 Controller 节点升级到 Red Hat OpenStack Platform (RHOSP) 16.2,您必须从 bootstrap Controller 节点开始升级每个 Controller 节点。

如果您的部署使用了使用 director 部署的 Red Hat Ceph Storage 集群,请按照使用 director 部署的 Ceph Storage 升级 Controller 节点 中的步骤。

在 bootstrap Controller 节点升级过程中,会创建一个新的 Pacemaker 集群,新的 RHOSP 16.2 容器会在节点上启动,而剩余的 Controller 节点仍然在 RHOSP 13 上运行。

升级 bootstrap 节点后,您必须使用 Pacemaker 服务升级每个额外节点,并确保每个节点加入使用 bootstrap 节点启动的新 Pacemaker 集群。有关更多信息,请参阅 Overcloud 节点升级工作流

流程

  1. Source stackrc 文件:

    $ source ~/stackrc
    Copy to Clipboard Toggle word wrap
  2. 在 undercloud 节点上,识别 bootstrap Controller 节点:

    $ tripleo-ansible-inventory --list [--stack <stack_name>] |jq .overcloud_Controller.hosts[0]
    Copy to Clipboard Toggle word wrap
    • <stack_name > 替换为堆栈的名称。
  3. 升级 bootstrap Controller 节点:

    1. 在 bootstrap Controller 节点上执行操作系统的 Leapp 升级:

      $ openstack overcloud upgrade run [--stack <stack>] --tags system_upgrade --limit <bootstrap_controller_node>
      Copy to Clipboard Toggle word wrap
      • <bootstrap_controller_node > 替换为环境中 bootstrap Controller 节点的主机名,如 overcloud-controller-0
      • 如果您不使用默认的 overcloud 堆栈名称 overcloud,请包含 --stack 可选参数,并将 &lt ;stack& gt; 替换为 overcloud 堆栈的名称。

        在 Leapp 升级过程中,bootstrap Controller 节点会被重启。

    2. 将数据库的最新版本从现有节点复制到 bootstrap 节点:

      $ openstack overcloud external-upgrade run [--stack <stack>] --tags system_upgrade_transfer_data
      Copy to Clipboard Toggle word wrap
      重要

      此命令会导致 control plane 上的中断。在 RHOSP 升级完成并且 control plane 再次激活前,您无法对 overcloud 执行任何标准操作。

    3. 在后续步骤中,在 Compute 节点上启动临时 16.2 容器,以帮助加快工作负载迁移。

      $ openstack overcloud upgrade run --stack <stack> --playbook upgrade_steps_playbook.yaml --tags nova_hybrid_state --limit all
      Copy to Clipboard Toggle word wrap
    4. 在没有标签的情况下升级 overcloud:

      $ openstack overcloud upgrade run --stack <stack> --limit <bootstrap_controller_node>
      Copy to Clipboard Toggle word wrap
    5. 升级后,验证新 Pacemaker 集群是否已启动,并且 control plane 服务(如 galerarabbithaproxyredis )正在运行:

      $ sudo pcs status
      Copy to Clipboard Toggle word wrap
  4. 升级下一个 Controller 节点:

    1. 验证旧集群不再运行:

      $ sudo pcs status
      Copy to Clipboard Toggle word wrap

      当集群没有运行时,会显示类似如下的错误:

      Error: cluster is not currently running on this node
      Copy to Clipboard Toggle word wrap
    2. 在 Controller 节点上执行操作系统的 Leapp 升级:

      $ openstack overcloud upgrade run --stack <stack> --tags system_upgrade --limit <controller_node>
      Copy to Clipboard Toggle word wrap
      • <controller_node > 替换为要升级的 Controller 节点的主机名,如 overcloud-controller-1

        Controller 节点作为 Leapp 升级的一部分重启。

    3. 升级 Controller 节点,将其添加到新 Pacemaker 集群中之前升级的节点:

      $ openstack overcloud upgrade run --stack <stack> --limit <bootstrap_controller_node,controller_node_1,controller_node_n>
      Copy to Clipboard Toggle word wrap
      • 将 < bootstrap_controller_node,controller_node_1,controller_node_n > 替换为您目前升级的 Controller 节点列表,以及您要添加到 Pacemaker 集群的额外 Controller 节点,例如 overcloud-controller-0、overcloud-controller-1、overcloud-controller-2
返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

Theme

© 2025 Red Hat