深入理解ceph crush(3)—Object至PG映射源码分析

一. 前言


在上一篇《深入理解crush(2)—-手动编译ceph集群并使用librados读写文件》博文中,初步使用了c语言客户端程序 rados_write ,写入文件到ceph测试集群中,现在开始通过使用gdb debug客户端程序 rados_write 的整个写入流程,来分析crush的计算过程。

ceph rados对象的映射过程分为两个阶段: - 第一阶段:object 到PG的映射 - 第二阶段:PG 到OSD的映射

image

考虑到篇幅的问题,这一篇博文先分析第一阶段,object 到PG的映射

二. Object 到 PG的映射


接下来的函数分析会非常的冗长,所以这里先将 object 到PG的映射 的流程图先贴出来,方便对照着流程图去分析代码。

image

三. 总结


到此 OBJEC–>PG 映射的流程分析就完成了,简单的总结下这个过程

四. 参考文档