Ceph开发每周谈 Vol 24|Jewel 10.2.1 第一个 Bug 修复版本释出

2016年05月 · 麦子迈

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

  • 上周综述

BlueStore 增加了对于 HDD 和 SSD 的检测,同时 Sam 完成了 Op Queue 与 Recovery Queue 的统一,因此未来的 PG 层队列将会只留下 Op Queue

  • Jewel 10.2.1

Jewel 第一个 Bug 修复版本于上周释出,从修复的 Bug 来看,主要集中在新特性上如 rbd mirror,radosgw AA 上。按照之前的版本经验,这个版本主要是开发者通过 QA 发现的问题并进行修复。所以,可以看到影响普通逻辑的 Bug 还没有出现,Jewel 并没有在用户环境得到广泛升级。按照 Hammer 版本的情况,在第三个和第四个版本会出现一些用户发现的较严重 Bug。

当然,在此也鼓励用户开始在测试环境部署 10.2.1 版本,至少经过几轮 QA 测试的版本不会产生严重的问题。

  • 基于 Ceph 的 RocksDB

在之前 Sage 提到 BlueStore 基于 RocksDB 的 Env Wrapper 实现了 RocksDB 直接访问裸设备的能力,而不需要通过文件系统。而 Kyle 最近在做基于 librados 的 RocksDB Wrapper,因为 RocksDB 的 LSM 设计,实际上对于随机 IO 并没有显著依赖,更多的是依赖大文件读写,内存索引。因此 librados 提供的接口以及分布式存储的机制都能较好满足 RocksDB 后端的需要。这样的话,RocksDB 由于底层存储分布式,能够较简单的实现 HA。