查看原文
其他

学习 Ceph 分布式存储 | MON 模块内部结构分析

李航 twt企业IT社区 2022-07-03

1. 模块简介

Monitor 作为Ceph的 Metada Server 维护了集群的信息,它包括了6个 Map,分别是 MONMap,OSDMap,PGMap,LogMap,AuthMap,MDSMap。其中 PGMap 和 OSDMap 是最重要的两张Map。

2. 模块的基本结构

  1. Monitor内部使用一套Paxos来实现各种数据的更新,所以所有继承自PaxosService的Monitor 实现数据更新时需要通过Paxos达成一致后才能进行。

  2. PaxosService的dispatch内部调用子类的preprocess_query进行查询相关操作,如果非查询类处理, 再调用子类的prepare_update接口实现数据的更新,所以子类Monitor实现两个接口来处理相关的业务消息。

3. Monitor业务消息

3.1 Monitor自身





3.2 AuthMonitor

3.3 OSDMonitor




3.4 PGMonitor

3.5 MonMapMonitor

3.6 MDSMonitor

3.7 LogMonitor


作者:李航,多年的底层开发经验,在高性能nginx开发和分布式缓存redis cluster有着丰富的经验,目前从事Ceph工作,负责分布式Ceph集群开发及运维等工作。个人主要关注的技术领域:高性能Nginx开发、分布式缓存、分布式存储。


相关阅读:

Ceph 原理、架构等知识梳理总结 | 干货分享

Ceph 心跳机制详解

学习 Ceph 运维操作 —— CRUSH MAP

学习 Ceph 运维操作 —— MON

学习 Ceph 分布式存储 | 日志和调试

Ceph 集群警告和错误类型总结

分布式存储方案漫谈:GPFS 对话 CEPH


点击阅读原文关注社区  分布式存储技术主题 ,将会不断更新优质资料、文章,您也可以前往提出疑难问题,与同行切磋交流。


下载 twt 社区客户端 APP

与更多同行在一起

高手随时解答你的疑难问题

轻松订阅各领域技术主题

浏览下载最新文章资料


长按识别二维码即可下载

或到应用商店搜索“twt”


长按二维码关注公众号

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存