第 20 章 加快 overcloud 升级

要加快 overcloud 升级过程,您可以一次升级 1/3 control plane,从 bootstrap 节点开始。

完成 control plane 的第一个 1/3 升级后,您可以将环境移到混合模式,其中 control plane API 正在运行,云可以正常工作。只有升级整个 control plane 后,才能恢复高可用性操作性能。

当您升级大量 Compute 节点以提高性能时,您可以在 20 个节点组中并行使用 --limit Compute 选项运行 openstack overcloud upgrade run 命令。您可以在后台运行多个升级任务,每个任务都升级一个单独的 20 个节点组。

此场景包含 overcloud 环境的升级过程示例,它包括以下节点类型及可组合角色:

  • 三个 Controller 节点
  • 三个数据库节点
  • 三个 Networker 节点
  • 三个 Ceph Storage 节点
  • 多个 Compute 节点

20.1. 运行 overcloud 升级准备

升级需要运行 openstack overcloud upgrade prepare 命令,该命令执行以下任务:

  • 将 overcloud 计划更新至 OpenStack Platform 16.1
  • 为升级准备节点
注意

如果您不使用默认的堆栈名称(overcloud),使用 --stack STACK NAME选项设置堆栈名称,将 STACK NAME 替换为堆栈的名称。

流程

  1. Source stackrc 文件:

    $ source ~/stackrc
  2. 运行 upgrade preparation 命令:

    $ openstack overcloud upgrade prepare \
        --stack STACK NAME \
        --templates \
        -e ENVIRONMENT FILE
        …​
        -e /home/stack/templates/upgrades-environment.yaml \
        -e /home/stack/templates/rhsm.yaml \
        -e /home/stack/containers-prepare-parameter.yaml \
        -e /usr/share/openstack-tripleo-heat-templates/environments/services/neutron-ovs.yaml \
        …​

    包含与您的环境相关的以下选项:

    • 环境文件 (upgrades-environment.yaml) 带有特定于升级的参数 (-e)。
    • 环境文件(rhsm.yaml),以及注册和订阅参数(-e)。
    • 包含新容器镜像位置(-e)的环境文件(containers-prepare-parameter.yaml)。在大多数情况下,这是 undercloud 使用的环境文件。
    • 环境文件(neutron-ovs.yaml),以保持 OVS 兼容性。
    • 与您的部署相关的任何自定义配置文件(-e)。
    • 如果适用,使用 --roles-file 的自定义角色(roles_data)文件。
    • 如果适用,使用 --networks-file 的可组合网络(network_data)文件。
    • 如果使用自定义堆栈名称,请使用 --stack 选项传递名称。
  3. 等待升级准备完成。
  4. 下载容器镜像:

    $ openstack overcloud external-upgrade run --stack STACK NAME --tags container_image_prepare