Ceph开发每周谈 Vol 75 | RBDCache CPU 消耗

2017年05月 · 麦子迈

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

  • 一句话消息

担任 Ceph 社区经理 5 年之久的 Patrick 宣布离开

  • rbdcache cpu 消耗高

Mark 最近做了针对 rbdcache 的性能测试(https://pastebin.com/6txSkM7r),发现 wallclock 占据了大量的 client fio 4k 随机写的 CPU 利用,测试模型是单个 Job 32 并发写到一个 3 副本的 16 个 OSD 集群,OSD 全是 NVME 设备,top 工具显示 fio 占据了 300-320% 的 CPU 消耗,得到了 14-15k 的 IOPS。 大量的 CPU 消耗来自 librbd::ImageCtx::write_to_cache,大约 70.2% 的消耗。

当关掉 rbdcache 后,可以达到 36k 左右的性能,而瓶颈会成为 librbd 的处理线程。 vol75-1