Show Table of Contents
11.4. 对升级过程中出现的故障进行排除
第 10 章 升级环境 演示了如何升级 Undercloud 和 Overcloud。本节包括了如何处理在升级过程中出现的故障。
11.4.1. 升级 Undercloud
当 Undercloud 升级命令(
openstack undercloud upgrade)运行失败时,按照以下建议查找造成问题的原因:
openstack undercloud upgrade命令运行时会输出一个进程日志信息。当升级过程出现故障时,这个命令会在出现故障的地方停止。使用这个信息来帮助定位造成升级故障的原因。openstack undercloud upgrade命令运行 Puppet 来配置 Undercloud 服务。这会在以下目录中产生有用的 Puppet 报告信息:/var/lib/puppet/state/last_run_report.yaml- 为 Undercloud 产生的最新的 Puppet 报告。这个文件会包括失败的 Puppet 操作。/var/lib/puppet/state/last_run_summary.yaml-last_run_report.yaml文件的概述。/var/lib/puppet/reports- Undercloud 的所有 Puppet 报告。
使用这些信息可以帮助找出造成升级故障的原因。- 检查失败的服务:
$ sudo systemctl -t service
如果有失败的服务,检查它们的相关日志。例如,如果openstack-ironic-api运行失败,使用以下命令检查这个服务的日志:$ sudo journalctl -xe -u openstack-ironic-api $ sudo tail -n 50 /var/log/ironic/ironic-api.log
在排除了造成 Undercloud 升级失败的问题后,重新运行升级命令:
$ openstack undercloud upgrade
升级命令会重新开始,并配置 Undercloud。
11.4.2. Overcloud 升级
当 Overcloud 升级过程(第 10.4 节 “升级 Overcloud”)出现问题时,按照以下建议查找造成问题的原因:
- 检查 Heat 栈信息,找出带有
UPDATE_FAILED状态的栈。运行以下命令:$ heat stack-list --show-nested | awk -F "|" '{ print $3,$4 }' | grep "UPDATE_FAILED" | column -t检查失败的栈和它的模板来找出栈失败的原因:$ heat stack-show overcloud-Controller-qyoy54dyhrll-1-gtwy5bgta3np $ heat template-show overcloud-Controller-qyoy54dyhrll-1-gtwy5bgta3np
- 使用 第 11.3.3 节 “实施后的配置” 中提供的建议找出 Overcloud 后配置的问题,特别是运行失败的 Puppet。
- 检查 Pacemaker 是否在所有 Controller 节点上正确运行。如果需要,登录到一个 Controller 节点并重启 Controller 集群:
$ sudo pcs cluster start
如需了解更多与诊断 Pacemaker 问题相关的信息,请参阅 第 11.7.2 节 “Controller 服务失败”。
在排除了造成 Overcloud 升级失败的故障后,重新运行
openstack overcloud deploy 命令。以下是升级过程中的第一个 openstack overcloud deploy 命令,它包括 major-upgrade-pacemaker-init.yaml:
$ openstack overcloud deploy --templates \
-e /usr/share/openstack-tripleo-heat-templates/environments/network-isolation.yaml \
-e /usr/share/openstack-tripleo-heat-templates/environments/net-single-nic-with-vlans.yaml \
-e network_env.yaml \
-e /usr/share/openstack-tripleo-heat-templates/environments/major-upgrade-pacemaker-init.yamlopenstack overcloud deploy 会重试 Overcloud 栈的更新。

Where did the comment section go?
Red Hat's documentation publication system recently went through an upgrade to enable speedier, more mobile-friendly content. We decided to re-evaluate our commenting platform to ensure that it meets your expectations and serves as an optimal feedback mechanism. During this redesign, we invite your input on providing feedback on Red Hat documentation via the discussion platform.