深入理解 ceph mgr

发布时间:2020-08-12 23:59:31 作者:java06051515
来源:ITPUB博客 阅读:356

背景

监控是管理的第一步,所以 ceph-mgr 目前的主要功能是把集群的一些指标暴露给外界使用。监控是什么东西呢?举个例子,例如用户访问网站 5xx 了,那么监控就是这么一个系统:采集网站 5xx 的个数,存起来,然后在 5xx 多的时候通过报警短信报给开发,然后为开发解决该问题提供其他信息(例如日志,指标图表)。所以监控系统是一个数据系统,包含采集,存储,分析(包含报警),可视化,这几个部分。

关于监控,在此之前,ceph 以及社区有不少尝试。

calamari

calamari。calamari 是 ceph 背后的公司 Inktank 为 ceph 企业版开发的监控管理程序,在 Red Hat 收购该公司后开源,目前基本处于停滞状态。其基本原理是利用 salt 远程执行 python 脚本,该脚本通过 ceph 每个守护进程暴露在本地的 admin socket 采集到数据或者执行命令。其主要包含几部分:

评价:

cephmetrics

cephmetrics。基本原理是基于 collectd 插件,从 admin socket 中采数据发往 graphite,用 grafana 做图。

评价:

ceph_exporter

ceph_exporter。基本原理是利用 librados,从 ceph monitor 中取数据,通过 http 协议把指标以 prometheus 规定的格式暴露出来。

评价:

ceph-mgr

在以上背景下,ceph 官方开发了 ceph-mgr,主要目标实现 ceph 集群的管理,为外界提供统一的入口。要深入了解 ceph-mgr,就得了解 ceph-mgr 是如何跑起来的。

由 官方文档 可知,ceph-mgr 是通过可执行文件 ceph-mgr 跑起来的,在源码 src/CMakeLists.txt 搜索 ceph-mgr 可以搜到 add_executable(ceph-mgr ${mgr_srcs}...,从中可以看出 ceph-mgr 主要由 src/mgr 里的文件编译出来(猜也猜的出来),main 函数在 src/ceph_mgr.cc。以上就是相关文件,有需要深入的人可以去读,这里介绍整理之后的 ceph-mgr 工作原理。

ceph-mgr 工作的模式是事件驱动型的,意思就是等待事件,事件来了则处理事件返回结果,又继续等待。其主要运行的线程包括:

作者:李逸超【资深软件开发工程师】

为研发提效,全是技术干货的滴滴云技术沙龙报名中!

马上关注滴滴云公众号:

回复「上课」获取免费报名资格

回复「服务器」免费获得云服务器入门1个月体验

推荐阅读:
  1. 深入浅出分布式文件存储系统之 Ceph 的实现
  2. 深入理解Python异常处理的哲学

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

ceph mgr 深入

上一篇:Redis初探

下一篇:凿渠造舟:视频会议的昨天与明天

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》