【发布时间】:2018-06-25 11:31:42
【问题描述】:
我是 Ceph 的新用户。
我的 Ceph 服务器运行的是 12.2.5 版。它有 3 个节点,每个节点都有 1 个 OSD 和 4TB 硬盘。
ceph.conf
osd pool default size = 3
osd pool default min size = 2
我已将 252GB 数据上传到 Ceph。
据我了解,由于设置了osd pool default size = 3,原始存储使用量应该是 3 倍左右。
但现在我的全球原始存储使用量几乎是我数据的 6 倍 (1605GB / 252GB = 6.3)
GLOBAL:
SIZE AVAIL RAW USED %RAW USED
11165G 9560G 1605G 14.38
POOLS:
NAME ID USED %USED MAX AVAIL OBJECTS
.rgw.root 8 1113 0 3000G 4
default.rgw.control 9 0 0 3000G 8
default.rgw.meta 10 21502 0 3000G 72
default.rgw.log 11 0 0 3000G 269
default.rgw.buckets.index 15 0 0 3000G 427
default.rgw.buckets.data 16 256G 7.88 3000G 6522963
有人在 Ceph 上遇到同样的问题吗?
更新
我想我找到了原因。我的大部分文件都是小文件,但在 Ceph 版本 12.2.5 (bluestore) 中,bluestore 的最小分配大小为bluestore_min_alloc_size_hdd = 65536,因此如果文件小于 64k,它仍然使用 64k 来存储它。
我测试了上传 2000 个文件(每个 64k)和 3200 个文件(每个 40k),总共大约 128M
64k文件的原始使用量为410M,接近384M(2000 * 64k * 3)
40k文件的原始使用量为602M,接近614M(3200 * 64k * 3)
【问题讨论】: