Ceph开发每周谈 Vol 18 — EXT4 废弃论战? | 去重支持

2016年04月 · 麦子迈

这是Ceph开发每周谈的第十八篇文章,记录从16年4月4号到16年4月10号的社区开发情况。笔者从前年开始做Ceph的技术模块分析到今年中告一段落,想必有挺多人期待下一篇Ceph技术分析。考虑到Ceph的发展已经从前年的一穷二白到现在的如火如荼,但对于社区的方向和实况仍有所脱节,笔者考虑开始Ceph开发每周谈这个系列。每篇文章都会综述上周技术更新,围绕几个热点进行深度解析,如果正好有产业届新闻的话就进行解读,最后有读者反馈问题的话并且值得一聊的话,就附上答疑部分。

  • 上周综述

  • 去重支持

在上周 CDM 讨论了 Ceph 支持去重的设计和实现,主要细节是利用一个 pool 存储指纹,利用 omap 去做。然后基于这个在 PGBackend 端实现数据的检验和去重。

ceph18插图

  • EXT4 废弃支持?

在上周因为 EXT4 对于 XATTR 的长度的限制,为了给 RGW 场景提供更好的支持,Sam 重写了大量 FileStore 对于 XATTR 长度支持然后拆分的代码为了去弥补 EXT4 在 XATTR 上的不足。然后 Sage 表示鉴于 BlueStore 的良好进展和 FileStore 即将退役这个事情,希望能废弃 EXT4 的支持,主要是会在 qa lab 里去除对于 EXT4 文件系统的覆盖。这个消息立刻就炸锅了。EXT4 支持者直接打出了 “RIP Ceph”,”If you (that is RH) is going to declare bluestore stable this year, I would be very surprised. Either way, dropping support before the successor is truly ready doesn’t sit well with me.”。 Sage 的回应是 “My hope is that it can be the *default* for L (next spring).  But we’ll see.”

不少用户表示 EXT4 在很多场景下性能要优于 XFS,并且没有任何理由他们想转换到 XFS。还有部分用户归结于 REDHAT 对于 XFS 的支持使得 Ceph 转向 XFS,无疑是火上浇油。

从目前看起来在 FileStore 被废弃之前,EXT4 作为健壮、高效的文件系统仍然将持续被 Ceph 支持,EXT4 的使用者声音还是很大的。

到 12 号为止,对 EXT4 的讨论已经演化到对于 BlueStore 废弃 Local Filesystem 的谴责,Jan 认为只需要能够有 CRUSH 的分布式存储系统就够了,一致性交给应用去吧,传统的 DRBD + HA 就是挺好的。

Sage 的回应:

If you want a system that “just” layers over an existing filesystem, try you can try Gluster (although note that they have a different sort of pain with the ordering of xattr updates, and are moving toward a model that looks more like Ceph’s backend in their next version).

That’s what gluster does–it just layers the distributed namespace right on top of a local namespace. If you didn’t care about correctness or data safety, it would be beautiful, and just as fast as the local file system (modulo network).

If you want replicated VM store that isn’t picky about consistency, try Sheepdog.  Or your mdraid over iSCSI proposal.