掌握这些监控报警优化技巧,百万年薪不在话下!

2019年11月07日 10:46来源:未知手机版

京东 小金库,2011汉语桥,fama沙发

【线下技术沙龙】11月23日,多云时代开启企业业务新高度,安全如何与时俱进?

运维工程师面试者第一个问题是:需要值班吗?笔者自己也曾经历过月入十万的时期,在那个时候,数个系统同时发布下一代版本,而老系统还需要过渡很长时间,工作量直接翻倍。

图片来自 Pexels

大家只能勉强应付一线运维工作,团队成员开始陆续离职,而新人又无法在短时间内上手,整体情况不断恶化,持续半年左右才缓过劲来。

下面两张截图是我挑选的两个团队一周报警数的对比图,前者的单日报警量最高是 55348 条,后者单日的报警量最高为 34 条,两者相差 1600 倍,而前者才是国内很多互联网运维团队的真实写照。

在管理大规模集群的情况下,究竟有多少报警量才是合理的呢?

Google SRE 每周十条故障报警

Google SRE 每周只有十条报警,如果超过十条,说明没有把无效报警过滤掉(Google SRE 仅负责 SLA 要求为 99.99% 的服务)。

笔者所在的团队要求则是,每周至多两晚有报警,单日报警量不能超过 50 条(比 Google SRE 放水好多啊)。

通过控制单日报警数量,严格约束夜间报警天数,确保最少不低于四人参与值班。

笔者所在的团队,近几年来,不仅少有因为值班压力而离职的同学,而且我们每年都能持续招聘到 985 前 20 名学校的多个研究生。

那么,怎么做到呢,以下是笔者的一些经验分享。

运维工程角度看报警优化

①报警值班和报警升级

基于值班表,每天安排两人进行值班处理报警,将值班压力从全团队压缩在两人范围内,从而让团队能够有足够的时间和人力进行优化工作。

同时,为了避免两个值班人员都没有响应报警,可以使用报警升级功能,如果一个报警在 5min 内值班人员均未响应,或者 15min 内未处理完毕,或者有严重故障发生,都可以将报警进行升级,通告团队其他成员协助处理。

如果公司的监控系统暂不支持值班表功能,则通过人工定期修改报警接收人的方式进行。

而对于监控系统不支持报警升级的问题,通过自行开发脚本的方式,也能在一定程度上得到解决。

也可以将报警短信发送至商业平台来实现。总之一句话,办法总比问题多。

对于报警值班人员,需要随时携带笔记本以方便处理服务故障,这个要求,和报警数量多少以及报警的自动化处理程度并无关系,仅和服务重要性有关。

对于节假日依然需要值班的同学,公司或者部门也应该尽量以各种方式进行补偿。

②基于重要性不同,分级应对

一个问题请大家思考一下,如果线上的服务器全部掉电后以短信方式通知值班人员,那么线上一台机器的根分区打满,也通过短信来通知是否有必要。

上述的问题在日常工作也屡屡发生,对于问题、异常和故障,我们采取了同样的处理方式,因此产生了如此多的无效报警。

Google SRE 的实践则是将监控系统的输出分为三类,报警、工单和记录。

SRE 的要求是所有的故障级别的报警,都必须是接到报警,有明确的非机械重复的事情要做,且必须马上就得做,才能叫做故障级别的报警。其他要么是工单,要么是记录。

在波音公司装配多个发动机的飞机上,一个发动机熄火的情况只会产生一个 提醒 级别的警示(最高级别是警报,接下来依次是警告、提醒、建议),对于各种警示,会有个检查清单自动弹出在中央屏幕上,以引导飞行员找到解决方案。

本文地址:/zhichang/1025076.html 转载请注明出处!

今日热点资讯