对于资源管理者,监控系统&服务 是整个运维环节,乃至整个产品生命周期中最重要的一环,事前及时预警发现故障,事后提供翔实的数据用于追查定位问题,分析业务指标。

在正式的说 监控系统之前,先给大家讲一个 故事。

由故事说起:宠物 与 养殖场

我曾经有一只宠物猫,我给他起名叫“奥利奥”,它简直是我的天使。
图片描述
我很爱很爱他,定期给他洗澡,上美容院,看病等等,享受独一无二的 监护,是否生病等等。

后来 我接手一个养殖场,里面有10000只猪,10000只牛,10000只羊
图片描述
我发现,按照我养宠物的方式来对待他们已经不适合了,为什么呢?我没有那么多精力来起30000个名字,而且还要记住这30000个牲口对应哪个名字,更加不可能为每一只都制定一个vip式的 个人监护方案(准确点说是 个牛个羊个猪:-D)。

于是我为了更好的管理监护养殖场的动物们,做了如下的事情:

  1. 根据牲口们的种类分成3类,“牛哞哞”,“猪哼哼”,“喜羊羊”。

  2. 为每一类动物各自打上编号,如“牛1号”,“牛2号”。。。。。。

  3. 根据动物的不同制定三类 不同的监护方案。

好了,剩下的我只需要坐在办公室,看着我完成的 管理&监护方案,乐呵呵的笑了。

---------------------------------------------------华丽丽的分割线---------------------------------------------------------------------

监控实施

好了,以上是个不算故事的故事, 对于管理者来说,不管是管理人还是管理服务器,甚至于管理任何一类抽象的资源,都会从中得到些什么感悟呢?

  1. 去个性化: 牛一号和牛2号在我眼中并没有不同,夸张点说,在我眼中那一万头牛只是一头牛,剩下的9999头不过是第一头的克隆体,他们的结构一样、功能一样、特征一样;

  2. 归类:根据

  3. 为每个类别制定对应的策略。

这样,上面故事中的 30000只动物,实际上就只是三只而已: 一只牛,一只羊,一只猪。那管理的难易度而言就方便容易的多。

那么如何做好分类,如何管理分类,就成了最核心的问题,对于 监控系统 来说则更是重中之重,做好了分类 & 对每个分类进行长期有效的管理工作,在整个监控体系运作过程中无论是时间还是经理都占据了绝大部分,对于这部分的操作,又可以引出 一个大家耳熟能详的系统 —— CMDB(Configuration Management Database), 不过 在这里不是描述重点,不做过多阐述,之后会专门写篇博文来对CMDB进行心得描述。

好了,做完聚类,对于监控来说,接下来 便是 具体的实施过程:

  • 数据采集;

  • 数据落地;

  • 监控策略定制;

  • 数据展示;

  • 报警下发;

  • 报警处理;

等等。

在公司内部,监控系统我们之前采用的是zabbix,因为某些原因,后来替换为了出自小米的open-falcon,但是不管实现方式是哪个,其流程大同小异,数据流大致如下:
clipboard.png

数据经 “采集模块” 汇总到 “汇总模块”, 同时下发给 “判断模块” & “落地模块”,数据模块将数据落地共展示使用。策略模块从“配置模块”处获取对应报警策略和拿到的数据做对比,如果触发报警测数据流向 “报警模块”, 将报警通过sms或者mail发送给对应的报警接收人。

到这里,监控系统基本说完了,在这里并不对个中细节做过多描述,因为万变不离其宗,这里也只记录本人对监控的心得体会。其中花了大部分的时间花在了阐述 聚类操作,也足以看出其重要性。


clipboard.png


刘阳龙Herman
672 声望106 粉丝

Herman.Liu.1988.avi