3.2. 升级 Director


重要

确保在以下流程中的任何步骤前读取 第 3.1 节 “重要的 Pre-Upgrade 备注” 中的信息。

stack 用户身份登录 director,再停止主要的 OpenStack Platform 服务:

$ sudo systemctl stop 'openstack-*' 'neutron-*' httpd
Copy to Clipboard Toggle word wrap
注意

这会导致 undercloud 短停机时间。overcloud 在 undercloud 更新期间仍然可以正常工作。

要将 director 软件包更新至最新的主版本,请将 OpenStack Platform 存储库从旧版本更改为新版本。例如:

$ sudo subscription-manager repos --disable=rhel-7-server-openstack-7.0-rpms --disable=rhel-7-server-openstack-7.0-director-rpms
$ sudo subscription-manager repos --enable=rhel-7-server-openstack-8-rpms --enable=rhel-7-server-openstack-8-director-rpms
Copy to Clipboard Toggle word wrap

这会将 yum 设置为使用最新的软件仓库。使用 yum 更新 director:

$ sudo yum upgrade
Copy to Clipboard Toggle word wrap

yum update 完成后,一些 OpenStack 服务可能会失败。这是预期的行为。Undercloud 的 upgrade 命令更正这些服务的配置。

director 使用 openstack undercloud upgrade 命令来升级 Undercloud 环境。运行 upgrade 命令:

$ openstack undercloud upgrade
Copy to Clipboard Toggle word wrap

这会刷新 director 的配置,并填充自版本更改以来未设置的任何设置。运行此命令不会删除环境中现有节点的任何存储数据,如 Overcloud 堆栈数据或数据。

更新完成后,检查 director 的 OpenStack 服务:

$ sudo systemctl list-units openstack-*
Copy to Clipboard Toggle word wrap
注意

openstack-keystone 可能显示为失败的服务。这是因为该服务现在作为 WSGI 应用程序通过 httpd 服务运行。在更新 director 软件包并运行 openstack undercloud upgrade 后,openstack-keystone 服务可以安全地禁用。

要完成更新,请验证您的 Overcloud 及其节点是否存在:

$ source ~/stackrc
$ openstack server list
$ ironic node-list
$ heat stack-list
Copy to Clipboard Toggle word wrap

在将 Overcloud 升级到 Red Hat OpenStack Platform 8 后请注意以下几点:

  • 使用 SSL 的 undercloud 可能会在升级过程中丢失对 VIP 的访问。如果是,重启 Undercloud 上的 keepalived 服务:

    $ systemctl restart keepalived
    Copy to Clipboard Toggle word wrap
  • Undercloud 的 admin 用户可能需要 Red Hat OpenStack Platform 8 附带的额外角色(_member_)。此角色对于 Overcloud 通信非常重要。检查此角色:

    $ keystone role-list
    Copy to Clipboard Toggle word wrap

    如果角色不存在,请创建:

    $ keystone role-create --name _member_
    Copy to Clipboard Toggle word wrap

    将角色添加到 admin 租户上的 admin 用户:

    $ keystone user-role-add --user admin --role _member_ --tenant admin
    Copy to Clipboard Toggle word wrap
  • 如果使用自定义核心 Heat 模板,请确保检查更新的核心 Heat 模板和当前集合之间的差别。红帽通过后续版本为 Heat 模板集合提供更新。使用修改后的模板集合可导致您的自定义副本和 /usr/share/openstack-tripleo-heat-templates 中的原始副本之间的不同性。运行以下命令,以查看自定义 Heat 模板集合和更新的原始版本之间的区别:

    # diff -Nary /usr/share/openstack-tripleo-heat-templates/ ~/templates/my-overcloud/
    Copy to Clipboard Toggle word wrap

    确保将这些更新应用到您的自定义 Heat 模板集合,或者在 /usr/share/openstack-tripleo-heat-templates/ 中创建模板的新副本,并应用您的自定义。

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

Theme

© 2025 Red Hat