Red Hat Training

A Red Hat training course is available for Red Hat OpenStack Platform

10.2. 更新 director 软件包

重要

在执行以下操作前,请阅读 第 10.1 节 “升级前需要注意的信息” 中的信息。

重要

如需了解有关对这个过程中可能出现的问题进行故障排除的信息,请参阅 第 11.4 节 “对升级过程中出现的故障进行排除”
为了把 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
这会把 yum 设置为使用最新的软件仓库。使用 yum 来更新 director:
$ sudo yum upgrade
yum update 运行完成后,以下 OpenStack 服务可能会失败。这是一个预期的结果。Undercloud 的升级命令会修正这些服务的配置。
如果 Undercloud 使用 SSL/TLS,把您的 SSL 证书添加到服务器的信任 store 中:
# sudo cp server-cert.pem /etc/pki/ca-trust/source/anchors/
# sudo update-ca-trust extract
director 使用 openstack underlcoud upgrade 命令来升级 Undercloud 环境。运行以下升级命令:
$ openstack undercloud upgrade
这会刷新 director 的配置并设置那些在版本更新过程中被取消设置的设置。运行这个命令不会删除任何存储的数据,如 Overcloud 的栈数据或环境中已存在节点的数据。
当更新完成后,检查 director 的 OpenStack 服务:
$ sudo systemctl list-units openstack-*

注意

openstack-keystone 服务的显示状态可能是失败,这是因为这个服务作为一个 WSGI 应用通过 httpd 运行。openstack-keystone 服务可以在更新完 director 软件包并运行 openstack undercloud upgrade 后被安全地禁用。
最后,检查 Overcloud 和它的节点是否存在:
$ source ~/stackrc
$ openstack server list
$ ironic node-list
$ heat stack-list
当把 Overcloud 升级到 Red Hat OpenStack Platform 8 后,请注意以下问题:
  • 如果 Underclouds 使用 SSL,在升级的过程中,到 VIPs 的访问可能会断开。如果发生了这个问题,在 Undercloud 中重启 keepalived 服务:
    $ systemctl restart keepalived
    
  • Undercloud 的 admin 用户可能会需要一个没有包括在 Red Hat OpenStack Platform 8 中的一个额外的角色(_member_)。这个角色对于 Overcloud 的通讯非常重要。创建这个角色,并把它添加到 admin 租户中的 admin 用户上。
    $ keystone role-create --name _member_
    $ keystone user-role-add --user admin --role _member_ --tenant admin