不要小瞧了监控这件事

2014-11-06 23:48:44 +08:00
 blueking
这个世界上开源和收费的监控系统实在是太多了,而不是太少了。无论是传统的nagios,ganglia,还是所谓的云监控系统。它们的工作方式其实都差不多,安装一个agent,上报数据,然后花花绿绿的图表就显示在web界面上了。无论这些系统如何包装,前端写得多么漂亮,一看截图十有八九图例是“cpu1”,“cpu2”。cpu使用率,内存,磁盘,仿佛把这些东西的曲线画在一个web界面上,监控工作就完成了似的。好吧,你有cpu使用率曲线图了,so what?

监控是多学科交叉非常有深度的课题。其职责一般落在一个部门里的运维身上来落实,比如我这样的人。我们知道技术里一流的人才去做架构师了,二流的人才去做后台开发了,三流的人才比如我这样的就来搞运维了。搞好监控是一项与运维传统技能(能熬夜肯加班,虎背熊腰扛机器)非常不match的工作,它包含四个方面的内容:

1、根据目标选择监控对象和策略
2、数据上报与实时统计
3、异常检测
4、由人或者系统来处理

其中数据上报与实时统计就需要非常综合的工程能力。简单的搞个小脚本往中央的一台开源监控系统定时报个数就行了,表面上很简单。但是大型系统监控往往对应到了jd里的所谓“大数据”经验。你需要从选择hbase还是postgresql,选择storm还是spark,选择metaq开始kafka,选择flume还是logstash这些开始,然后经过一个漫长的学习过程,最终学会了如何fancy而优雅地“数数”。其实我一直很纳闷的是,怎么有这么多牛b的人写这么多牛b的系统来干小学生都会的数数工作。

异常检测是一件表面上非常简单的活。比如给定一颗cpu,平时都是40%的占用率。那好,我配置一个80%的阈值,超过就告警,完事了。但如果你要监控的对象一根一天上下变化非常剧烈的曲线呢?早上可能只有几千,中午和晚上可以到几十万。这个时候去检测异常就不再是一个阈值这么简单的工作了。这项工作的学名叫Outlier Detection,按照分类来说属于机器学习,自打有计算机这门学科以来从简单的自回归到现在的SVM神马的,paper是层出不穷的。简单来说,这是一片有着科学家头衔人群从事的领域。

即便是发条告警消息这么简单的一件事,也事关cognitive bias。有人还研究飞机驾驶舱的告警消息设计是如何导致大西洋坠机事件的。还有花花绿绿的仪表盘,如何设计好以更好利用人眼的认知方式以传达信息,这也是一门很深的学问,叫data visualization。这个领域有一家大名鼎鼎的公司叫tableau,其创始人以前是在好莱坞搞动漫渲染的。凌晨四点需要叫运维起床尿尿的系统,必须重视人机交互这块的。给头脑不清醒的人设计界面一个场景就是club里给醉汉们用的点唱机,另外一个我所知的场景就是接到电话之后愤怒起床来定位问题的运维了。

故障处理就是个擦屁股的活,这话一点没错。那些架构师们设计了一个高可用的架构之后,他们的工作就高大上的完成了。故事是这样的,一台application server挂了,前段nginx检测到自动把这台application server踢掉,用户完全不受影响。然后后台开发们就可以光荣自豪的说,前段机器哈随便挂的说。运维苦哈哈的嘟囔着,尼玛又挂了。一个集群里挂个一两台application server可能是没啥关系的,但是挂多了呢,雪崩了呢?挂掉的机器咋处理,放那晾干么?故障及不还得修,不还是得人来管?运维们就像唐顿庄园里地下室的仆人们一样,做一些卑微但是必要又无人欣赏的工作。更加不要说,没有做高可用的架构了。一台登陆服务器挂了,cao,无论你是在陪女朋友逛街,还是第一次相亲,都得飞奔到有3g信号的地方开始ssh。

好像少了什么。哦,忘记说了。这是篇招聘帖,老板说了再招不来人我就要滚蛋了。如果你对以上工作内容的任何一条感兴趣,请联系我: blueking.jobs@gmail.com。没有薪资范围的招聘都是耍流氓,我就耍了,怎么的?有本事来找我啊,联系地址:腾讯游戏,深圳南山科兴科学园。是的,英雄联盟,穿越火线,天天酷跑就是我们部门负责运维的。经常挂,进不了大区?是的……所以我们要招人好好来搞嘛。anyway,call me,约吗?
16823 次点击
所在节点    酷工作
80 条回复
behappy
2014-11-07 10:19:43 +08:00
好顶赞
yechengxiao
2014-11-07 10:24:25 +08:00
看着好吸引人
zyxfsky
2014-11-07 10:24:58 +08:00
监控出身,看到帖子还以为是要探讨,原来是招聘贴,不过还是要赞下
xiaohanyu
2014-11-07 10:25:55 +08:00
赞赞赞,独树一帜的招聘贴
iyaozhen
2014-11-07 10:39:08 +08:00
叼,我也在做监控。赞
hjxx
2014-11-07 10:40:18 +08:00
看到最后才知道是招聘贴 赞,中间几个英文专业术语一般人不知道
tftk
2014-11-07 10:54:09 +08:00
不错。
mnsw
2014-11-07 11:21:56 +08:00
这招聘。。。。赞一个!
cbwzwsq
2014-11-07 11:33:30 +08:00
赞!
siko
2014-11-07 11:46:19 +08:00
赞!
jaxiinofea
2014-11-07 11:53:57 +08:00
有点意思~
likexian
2014-11-07 11:54:21 +08:00
楼主啊,字太多了,密集恐惧症啊,不想看啊,随便拉了拉啊,我也说一说吧。

在这个世界上,监控都不是目的啊,就比如你监控一个女神的活动,你以为你真的是想收集这个女神的数据来做大数据吗?很明显不是啊,你是想上她啊。所以说,监控任何时候都不是最终目的。

那么既然监控不是目的,那目的是什么呢?

答案是:目的是发现宕机,然后处理宕机。

如果有服务器挂了,你应该首先做什么呢?查原因,解决问题?

如果你这样说,那么你就不是一个合格的运维了。

宕机了,运维要做的首先是切换服务器啊,保证对用户的影响才小才是合格的运维啊。



那么问题来了,挖掘机可能会坏,我们需要监控它,监控到坏了怎么办?切换它!


那么答案来了,监控切换哪家强,中国山东D监控啊!!!




D监控,监控切换一条龙。





编者注:DNSPod D监控,不仅可以监控,还可以在服务器宕机后第一时间切换服务器并发送微信、短信、邮件通知。无痛切换,首选D监控!
mlhorizon
2014-11-07 12:20:54 +08:00
同做监控,专业公司,偏基础设施。
跟楼主是邻居,离科兴不到200米。
大腾讯的基础设施监控用的我司的产品。
同招人!!
wwek
2014-11-07 12:35:16 +08:00
cao,无论你是在陪女朋友逛街,还是第一次相亲,都得飞奔到有3g信号的地方开始ssh。
frankzeng
2014-11-07 12:38:04 +08:00
切换服务器,最怕就是你切到备机,然后故障排除后切不回主机,悲催啊。
再者90%的故障都小故障,简单排除其实就可以的,运维监控能做到不让故障发生两次就已经非常不错了。
frankzeng
2014-11-07 12:41:29 +08:00
@wwek 没那么夸张,有专门轮班24小时值班的,先由值班人员处理的,处理不了再提交研发人员处理的。研发人员是要对自己所写代码负责的,想在节假日才点骚扰,努力提高代码质量呗。
bigzhu
2014-11-07 13:48:50 +08:00
完全就是神一般的招聘帖
楼主应该单独开一个帖子, 来聊聊监控和运维那点破事
1yndonn3u
2014-11-07 13:50:57 +08:00
@mlhorizon 哈哈哈,你借着这个地方招聘人啊。~~~~~

话说楼主招聘的算是运维的还是算是招聘的做监控的?是用监控的还是做监控的?

无要求,无薪资。233333

还真想投递简历试试呢~~~~
dhlwing
2014-11-07 13:51:29 +08:00
gysutantoman
2014-11-07 14:50:41 +08:00
笑喷了, 好招聘

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/144542

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX