Ceph 报告的存储桶空间利用率和集群总利用率不一致

Ceph 报告的存储桶空间利用率和集群总利用率不一致

我使用 rclone 将旧 Ceph 集群的内容复制到新 Ceph 集群。由于多个存储桶在单个目录中包含数千万个对象,因此我不得不逐个枚举这些对象,并使用“rclone copyto”命令来移动它们。复制后,对象数量匹配,但第二个 Ceph 集群上的空间利用率要高得多。

每个 Ceph 集群都配置了默认的三重冗余。

较旧的 Ceph 集群具有 1.4PiB 的原始容量。

根据“radosgw-admin 元数据存储桶统计”报告,较旧的 Ceph 集群的总存储桶利用率为 526 TB。此集群上的“ceph -s”状态显示对象利用率为 360TiB,总容量为 1.4PiB,空间利用率为 77%。集群中使用的 360TiB 和存储桶使用的 526 TB 这两个指示数量明显不同。此集群上的原始容量不足以容纳 526 TB。

将内容复制到新的 Ceph 集群后,总存储桶利用率为 553TB,在“ceph -s”状态中反映为 503TiB。我假设这略高于源存储桶总数,因为驱动器的块大小较大,但状态利用率与存储桶利用率总和相匹配,正如预期的那样。目标集群每个存储桶中的对象数也与源存储桶相匹配。

这是第一个 Ceph 集群中的设置,它像简单的压缩一样合并重复对象吗?第一个 Ceph 集群中没有足够的容量来容纳超过 500TB 的数据,所以这似乎是发生这种情况的唯一方式。我假设当两个对象相同时,每个存储桶都会获得一个指向同一对象的符号链接指针。新的 Ceph 集群似乎没有这种能力,或者没有设置为以这种方式运行。

第一个集群是 Ceph 版本 13.2.6,第二个集群是版本 17.2.3。

相关内容