摘要:博客挂了 6 个小时,全靠同事打电话才知道——这就是没有监控的代价。这篇用「凌晨三点的电话」开头,讲清监控的四个环节(采集 / 存储 / 展示 / 告警)分别对应哪个工具、一条指标长什么样、Counter 和 Gauge 的区别,以及 Prometheus 为什么坚持用「拉取」而不是「推送」。承接上篇:博客部署项目完结。今天开始第二个项目——监控告警。一、凌晨三点的电话周一早上,小林刚到工位,老周端着保温杯走过来,脸色不太好看。「你周末干嘛了?」「打游戏啊,怎么了?」「你博客,周一凌晨挂了。」小林一愣:「挂了?我周日还访问了啊。」「你周日几点访问的?」「下午吧……」「对。周一凌晨 2 点到早上 8 点,你博客挂了 6 个小时。周一早上同事想看你的文章,打不开,打电话问我。」小林脸色变了:「那……那怎么没人告诉我?」「你博客会自己打电话吗?」老周问。「不会。」「那你怎么知道它挂了?」小林想了想:「用户投诉?」「对。但用户投诉的时候,已经晚了。你博客挂了 6 个小时,没人知道——这就是没有监控的后果。」二、监控是什么?「你觉得监控是什么?」「就是……看服务器有没有挂?」「对了一半。」老周说,「监控不只是『看挂没挂』,而是『持续地看,并且在你没看的时候,帮你看着』。你不可能 24 小时盯着屏幕,但监控可以。」监控的四个环节① 采集数据服务器现在的 CPU、内存、磁盘、服务状态——这些数据叫指标(metric)。采集指标的工具叫exporter。② 存储数据采集到的数据得存起来,不然你只能看到「现在」,看不到「过去」。存指标的工具叫Prometheus。③ 展示数据存了数据得能看到。用图表展示,一目了然。展示工具叫Grafana。④ 告警数据异常,得通知你。通知工具叫Alertmanager。「采集、存储、展示、告警——这就是监控的四个环节。记住了,以后面试被问到,直接说这四个。」Prometheus 是中枢。exporter 把数据给它,Grafana 从它那拿数据,Alertmanager 也从它那拿数据。所以你先学
阅读完成 · 觉得有帮助?