6.3. 同步多站点 Ceph 对象网关
多站点同步从其它区域读取更改日志。要从元数据和数据 loags 中获取同步进度的高级视图,您可以使用以下命令:
radosgw-admin sync status
此命令列出源区域后面的日志分片(若有)。
如果以上运行的同步状态的结果返回日志分片,请运行以下命令来替换 X 的 shard-id。
radosgw-admin data sync status --shard-id=X
- replace…
- X,具有分片 ID 号。
示例
[root@rgw ~]# radosgw-admin data sync status --shard-id=27 { "shard_id": 27, "marker": { "status": "incremental-sync", "marker": "1_1534494893.816775_131867195.1", "next_step_marker": "", "total_entries": 1, "pos": 0, "timestamp": "0.000000" }, "pending_buckets": [], "recovering_buckets": [ "pro-registry:4ed07bb2-a80b-4c69-aa15-fdc17ae6f5f2.314303.1:26" ] }
输出列出了同步旁边的存储桶,以及会因为前面的错误而重试哪些存储桶(若有)。
通过以下命令检查各个 bucket 的状态,将 bucket ID 替换为 X :
radosgw-admin bucket sync status --bucket=X.
- replace…
- X,具有存储桶的 ID 号。
结果显示哪些存储桶索引日志分片位于其源区后面。
同步中的一个常见错误是 EBUSY
,这意味着同步已在进行中,通常在另一个网关中。读取写入到同步错误日志的错误,可以使用以下命令进行读取:
radosgw-admin sync error list
同步过程将重试,直到成功为止。错误仍可能发生,可能需要干预。
6.3.1. 多站点 Ceph 对象网关数据同步的性能计数器
以下性能计数器可用于 Ceph 对象网关的多站点配置来测量数据同步:
-
poll_latency
测量远程复制日志的请求延迟。 -
fetch_bytes
测量数据同步获取的对象数量和字节数。
使用 ceph daemon .. perf dump
命令查看性能计数器的当前指标数据:
# ceph daemon /var/run/ceph/{rgw}.asok
输出示例:
{ "data-sync-from-us-west": { "fetch bytes": { "avgcount": 54, "sum": 54526039885 }, "fetch not modified": 7, "fetch errors": 0, "poll latency": { "avgcount": 41, "sum": 2.533653367, "avgtime": 0.061796423 }, "poll errors": 0 } }
注意
您必须从运行守护进程的节点运行 ceph daemon
命令。
其它资源
- 有关性能计数器的更多信息,请参见《红帽 Ceph 存储 3 管理指南》 中的性能 计数器章节。