【Ceph Bugs 系列】Ceph Luminous 12 版本 bluestore 占用大量额外空间

2022.8.24 更新:已找到原因

环境信息

一共三套 Ceph 环境进行对比,配置如下:

配置\版本12.2.1212.2.1314.2.16
节点数量101010
HDD 数量360360360
HDD 规格10TB10TB10TB
物理容量3.2PiB3.2PiB3.2PiB
使用场景cephfscephfscephfs
文件系统bluestorebluestorebluestore
cephfs_data PG 数819281928192
cephfs_metadata PG 数128512512
EC k+m 值3+23+23+2

问题描述

从配置中可以 看出,三个集群磁盘规格一致(均为 10TB SATA 盘,可用容量为 9.1TiB),磁盘数量一致,裸容量一致,使用场景一致,文件系统一致,EC 配置一致。除 metadata 的 PG 数量有差异外,其他配置均一致。

其中:

12.2.12 版:

  • 使用时间:2019.6 ~ 2020.10。
  • 使用场景:正常使用,有增加删除操作。

12.2.13 版:

  • 使用时间:2020.10 ~ 2021.2。
  • 使用场景:接替 12.2.12 集群使用,有增加删除操作。

14.2.16 版:

  • 使用时间:2020.12 ~ 2021.2。
  • 使用场景:用于迁移 12.2.12 集群的数据,使用 rsync 同步,基本无新增数据。

当前使用量对比:

使用量\版本12.2.1212.2.1314.2.16
OSD 最小使用率81.73%64.49%78.14%
OSD 最大使用率88.46%85.25%84.74%
balancer eval(lower is better)0.0015010.0086770.012148
总文件数239624013063395423962496
总目录数176964517480591769731
逻辑占用空间(单位:bytes)170343340370497013104667302712101703436500803050
逻辑空间使用率90.23%86.15%88.82%
物理容量(单位:bytes)360029777559552036002977755955203600297775595520
物理占用空间(单位:bytes)315282045114777029474901514649602938495125159930
物理空间使用率87.57%81.87%81.62%
基于逻辑占用空间计算出的应该占用物理空间283905567284162021841112171186802839060834671750
应该占用物理空间与实际占用物理空间的比值90.05%74.10%96.62%
应该占用物理空间使用率78.86%60.66%78.86%
应该使用率与实际物理使用率差值8.71%21.20%2.76%

从上面表格中可以得出以下结论:

  • 从 balacer 得分看,12.2.12 优于 12.2.13优于14.2.16
  • 12.2.12 的数据使用 rsync 全部同步到 14.2.16,在总文件数和逻辑占用空间几乎一样时,两个集群的物理使用率相差 6%;
  • 在集群整体使用率均超过 80% 后,12.2.12 的物理损耗空间达到 8.71%14.2.16 的物理损耗空间达到 2.76%,而 12.2.13 的物理损耗空间甚至达到恐怖的 21.20%

可能的原因推测

  • Ceph Luminous 的 bluestore 有 bug ,但已在后续版本中修复;
  • Ceph Luminous 的 bluestore + EC 才能触发的 bug,但已在后续版本中修复;
  • 由于 14.2.16 的数量为一次上传完成,可能是由于 12 版本在正常使用过程中有删除修改等操作,产生的脏数据未能成功回收所致,14 版本有可能也未修复此 bug;

根因已找到

ceph Luminous 的 bug,bluefs 的 log compact 功能不生效。

解决办法

任选其一:

  • 升级到 14 及以上版本
  • 运行 ceph tell osd.* compact 手动执行 compact(非常影响性能)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值