Red Hat Training

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

11.7. 在创建后对 Overcloud 进行故障排除

在创建完 Overcloud 后,可能会需要在以后执行特定的 Overcloud 操作。例如,可能会需要扩展有效的节点,或替换出现故障的节点。在执行这些操作时,可能会出现某些问题。本节介绍了对这些可能出现的问题进行故障排除的方法。

11.7.1. Overcloud 栈的修改

当通过 director 修改 overcloud 栈时可能会出现问题。对栈进行修改可能包括:
  • 扩展节点
  • 删除节点
  • 替换节点
修改栈的过程和创建栈的过程相似,director 会检查请求的节点数是否有效,部署额外的节点或删除存在的节点,然后应用 Puppet 配置。在修改 overcloud 栈时需要遵循以下的一些建议。
在初始设置时,遵循 第 11.3 节 “对创建 Overcloud 进行故障排除” 中的建议。这些相同的步骤可以帮助排除更新 Overcloud heat 栈时出现的问题。特别是,使用以下命令帮助查找有问题的资源:
heat stack-list --show-nested
列出所有栈。--show-nested 会显示所有子栈以及它们的父栈。这可以帮助判断栈在什么地方出现问题。
heat resource-list overcloud
列出 overcloud 栈中的所有资源,以及它们当前的状态。这可以帮助找出哪些资源造成了栈出现问题。您可以通过这些失败的资源追踪到 heat 模板集合和 Puppet 模块中的相关参数和配置。
heat event-list overcloud
以发生的时间顺序列出与 overcloud 栈相关的所有事件。这包括初始化事件、操作完成事件以及栈中所有失败的资源。这些信息可以帮助找出造成资源失败的原因。
下面的几个小节介绍了针对特定节点类型的故障诊断建议。

11.7.2. Controller 服务失败

Overcloud Controller 节点包括大量 Red Hat OpenStack Platform 服务,您也可能在一个高可用性的集群中使用多个 Controller 节点。如果一个节点上的特定服务出现问题,高可用性集群会提供一定程度的故障转移功能。但是,您需要对出现问题的节点进行故障诊断,以便 Overcloud 可以以最大能力运行。
在高可用性集群中,Controller 节点使用 Pacemaker 管理资源和服务。Pacemaker Configuration System(pcs)是一个用来管理 Pacemaker 集群的工具程序。在集群的 Controller 节点上运行这个命令来执行配置和监控操作。在一个高可用性集群中,可以使用以下命令帮助对 Overcloud 服务进行故障排除:
pcs status
当前整个集群的状态概况信息,包括启用的资源、失败的资源和在线节点信息。
pcs resource show
显示资源列表,以及与它们相关的节点。
pcs resource disable [resource]
停止一个特定的资源。
pcs resource enable [resource]
启动一个特定的资源。
pcs cluster standby [node]
把节点设置为待机(standby)模式,使这个节点在集群中不再可用。这可以被用来在不影响集群运行的情况下对特定节点进行维护操作。
pcs cluster unstandby [node]
取消一个节点的待机模式。这个节点将可以重新在集群中使用。
使用这些 Pacemaker 命令来找出有问题的组件和节点。当找到有问题的组件时,在 /var/log/ 中查看相关的组件日志文件。

11.7.3. Compute 服务失败

Compute 节点使用 Compute 服务来执行基于虚拟机监控程序的操作。这意味着,对 Compute 节点进行故障排除可以解决与这个服务相关的问题。例如:
  • 使用 systemd 的以下功能查看服务的状态:
    $ sudo systemctl status openstack-nova-compute.service
    
    同样,使用以下命令查看服务的 systemd 日志:
    $ sudo journalctl -u openstack-nova-compute.service
    
  • Compute 节点的主日志文件是 /var/log/nova/nova-compute.log。如果到 Compute 节点的通讯出现问题,从这个文件开始进行故障排除会是一个好的方法。
  • 如果需要在 Compute 节点上进行维护工作,把主机上存在的实例迁移到另外一个可以正常工作的 Compute 节点上,然后禁用需要进行维护的节点。如需了解更多节点迁移的信息,请参阅 第 8.9 节 “从一个 Overcloud Compute 节点中迁移虚拟机”

11.7.4. Ceph Storage 服务故障

如果 Red Hat Ceph Storage 集群出现故障,参阅 Red Hat Ceph Storage Configuration Guide 中的 Part X. Logging and Debugging