3.6. 故障排除
有两种常见情况会导致备份服务发生的许多问题:
-
当
cinder-backup
服务启动时,它会连接到其配置的后端,并将其用作备份的目标。此连接的问题可能会导致服务失败。 - 请求备份时,备份服务会连接到卷服务并附加所请求的卷。这个连接的问题仅在备份期间被识别。
在这两种情况下,日志都包含描述错误的消息。
有关日志文件和服务的更多信息,请参阅 日志记录、监控和故障排除指南中的 OpenStack 服务的日志文件。
有关日志位置和建议的一般信息,请参阅日志记录、监控和故障排除指南中的 块存储(cinder)日志文件。
3.6.1. 验证服务
您可以通过验证服务是否可用,并通过检查错误消息来诊断许多问题。有关密钥服务及其交互的详情,请参考 第 1.2 节 “备份和恢复工作方式”。
验证服务状态后,检查 cinder-backup.log
文件。Block Storage Backup 服务日志位于 /var/log/containers/cinder]/cinder-backup.log
中。
流程
在卷上运行
cinder show
命令,以查看它是否被主机存储:# cinder show
运行
cinder service-list
命令来查看正在运行的服务:# cinder service-list +------------------+--------------------+------+---------+-------+----------------------------+-----------------+ | Binary | Host | Zone | Status | State | Updated_at | Disabled Reason | +------------------+--------------------+------+---------+-------+----------------------------+-----------------+ | cinder-backup | hostgroup | nova | enabled | up | 2017-05-15T02:42:25.000000 | - | | cinder-scheduler | hostgroup | nova | enabled | up | 2017-05-15T02:42:25.000000 | - | | cinder-volume | hostgroup@sas-pool | nova | enabled | down | 2017-05-14T03:04:01.000000 | - | | cinder-volume | hostgroup@ssd-pool | nova | enabled | down | 2017-05-14T03:04:01.000000 | - | +------------------+--------------------+------+---------+-------+----------------------------+-----------------+
- 验证预期的服务是否可用。
3.6.2. 故障排除窍门
备份是异步的。块存储备份服务在收到 API 请求时会执行少量的静态检查,如检查无效卷引用(missing
)或卷处于 in-use
,或附加到一个实例。in-use
用例要求您使用 --force
选项。
使用 --force
选项意味着不会静止 I/O,生成的卷镜像可能会损坏。
如果 API 接受请求,则备份会在后台进行。通常,即使备份失败或正在处理失败,CLI 也会立即返回。您可以使用 cinder 备份 API 查询备份状态。如果发生错误,请检查日志以发现原因。
3.6.3. pacemaker
默认情况下,Pacemaker 部署块存储备份服务。Pacemaker 将虚拟 IP 地址、容器、服务和其他功能配置为集群中的资源,以确保定义的 OpenStack 集群资源正在运行并可用。当集群中的服务或整个节点失败时,Pacemaker 可以重启该资源,使节点退出集群,或重新引导节点。对大多数服务的请求通过 HAProxy
有关如何使用 Pacemaker 进行故障排除的详情,请参考 高可用性部署和使用指南中的使用 Pacemaker 管理高可用性服务。