第 6 章 对多站点 Ceph 对象网关进行故障排除
本章介绍了如何修复与多站点 Ceph 对象网关配置和操作条件相关的最常见的错误。
注意
当 radosgw-admin bucket sync status
命令报告存储桶位于分片(即使数据在多站点之间保持一致)时,对存储桶运行额外的写入。它同步状态报告,并显示存储桶从源中发现的消息。
先决条件
- 一个正在运行的 Red Hat Ceph Storage 集群。
- 正在运行的 Ceph 对象网关.
6.1. Ceph 对象网关的错误代码定义
Ceph 对象网关日志包含错误和警告消息,以协助对环境中条件进行故障排除。下面列出了一些推荐的解析信息。
常见错误消息
data_sync: ERROR: a sync operation returned error
- 这是提示较低级别 bucket 同步进程返回错误的高级别数据同步过程。此消息冗余;存储桶同步错误出现在日志中。
data sync: ERROR: failed to sync object: BUCKET_NAME:_OBJECT_NAME_
- 进程无法通过 HTTP 从远程网关获取所需的对象,或者进程无法将该对象写入 RADOS,还会重试。
data sync: ERROR: failure in sync, backing out (sync_status=2)
-
一个低级别的信息反映了上述的一个条件,特别是数据在可以同步前会被删除,从而显示一个
-2 ENOENT
状态。 data sync: ERROR: failure in sync, backing out (sync_status=-5)
-
低级消息反映了上述其中一个条件,特别是我们无法将该对象写入 RADOS,从而显示
-5 EIO
。 ERROR: failed to fetch remote data log information: ret=11
-
这是
libcurl
中的EAGAIN
通用错误代码,反映了来自另一个网关的错误条件。默认情况下,它将重试。 meta sync: ERROR: failed to read mdlog info with (2) No such file or directory
- mdlog 的分片从没有创建,因此不会同步。
同步错误消息
同步对象失败
- 进程无法通过 HTTP 从远程网关获取此对象,或者未能将该对象写入 RADOS,还会重试。
同步存储桶实例失败:(11)资源临时不可用
- 主区域和次要区域之间的连接问题。
同步存储桶实例失败:(125) Operation canceled
- 在写入同一 RADOS 对象之间存在追踪条件。
ERROR: request failed: (13) Permission denied 如果 master zone 上更改了域,则可能需要重启 master 区域的网关来识别此用户
在配置二级站点时,有时一个
rgw realm pull --url http://primary_endpoint --access-key <> --secret <&
gt; 命令会失败,并显示 permission denied 错误。在这种情况下,在主站点中运行以下命令,以确保系统用户凭证相同:
radosgw-admin user info --uid SYNCHRONIZATION_USER, and radosgw-admin zone get
其它资源
- 联系红帽支持 以获取任何其他帮助。