线上监控怎么做?

image.png

监控,是一个生产服务必不可少的组成部分,少了监控的产品,无异于在互联网上“裸奔”。在一个产品正式上线之前,就应该做好相关的监控规划工作。
关于监控,就有一些我们经常被忽略的陷阱和值得思量的好方向。SRE成长记经查阅资料梳理了一下,一起来看看吧!

监控的陷阱

1. 对监控工具盲目崇拜

监控不是一个单一的问题,而是涉及多方面的复杂问题。市面上各种监控工具五花八门,所有的工具都能满足自己的实际需求。要在众多工具中找到最适合自己的监控工具和方式,如果使用多种工具,尽量使用最小工具集。
同时,在有条件的团队,可根据需要,研发自己量身打造的专用工具。

2. 监控岗位化

监控不是一份工作,而是一种技能,团队中每一位成员都需要在一定程度上掌握这项技能。
可观测性团队(构建自服务监控工具,并将其作为服务提供给给其他团队)负责创建并维护监控工具,但不应该负责监控某个具体的应用程序、配置告警信息等。
公司监控的责任不能完全推给一个人来承担。

3. 为了“有监控”而监控

监控系统应该是有效的,不能为了证明自己有监控而部署监控系统。无效的监控系统可能会比没有监控还糟糕。
哪些是无效的监控系统?
1)虽然做了监控,如系统负载、CPU、内存等,但是服务还是在不知道什么时候、什么原因的情况下停止了运行;
2)习惯性地忽略告警信息,因为它们多数时候是误报或者无需处理;
3)每隔5分钟或者更短的时间就要检查系统的指标;
4)没有存储历史指标数据;
5)虽然做了监控,但是无人看得懂;

4. 把监控当拐杖

虽然监控对于提醒你注意问题非常有用,但是别忘了更重要的是解决问题。
如果发现自己面对的是一个问题层出的服务,相比层层添加更多的监控来说,更应该做的是提升服务的代码质量、服务稳定和弹性。
更多的监控无法修复有效的系统,也不会改善现有的情形。

5. 监控缺乏自动化

监控配置应该尽量做成自动化,减少配置监控项的繁琐。
如果服务在每次扩容后,都需要花费大量的时间在监控配置上,可能就不会有太多精力去思考怎么监控更多的东西。

监控的建议

1. 可组合监控可能比一体化监控效率更好、更灵活

可组合监控:使用多个专门的工具,并且将它们松散地组合在一起,形成一个监控平台,每个工具各司其职。如果随着业务的发展,某个工具不再满足需求,可以替换掉这个工具,而非替换整个平台。
一个监控系统一般包含这些方面:
数据采集:采集监控指标、日志等数据,数据采集组件采集数据一般有2种方式——推送(如zabbix主动模式)或拉取(如zabbix被动模式、Prometheus等);
数据存储:将采集到的数据存储到数据库中,如influxdb等;
可视化:将监控数据以可视化的图标等方式展示出来,如grafana等;
分析和报告:根据监控数据,对应用的可用性、容量等进行分析和报告,如SLA;
告警:发送问题告警信息给系统管理员;

2. 从用户角度监控能产生更高效的可见性

如果当你收到一份重要的告警,你需要跟相关同事确认这个告警信息是否影响到用户使用,那么你应该考虑在用户端加设置监控告警。
添加监控的最佳地点首先是用户与应用程序交互的点。用户不会关心应用程序实现的细节,而会关心应用程序是否可用,首先要从他们的角度看问题。
运行监控最有效的事情之一就是监控HTTP响应码,这些监控虽然不会告诉你出了什么问题,但是会告诉你问题出现了,并且正在影响用户。

3. 尽可能购买工具,而不是自己构建工具

相比购买工具,组建公司自由的可观测性团队的人力成本、工具的专业性而言,可能购买工具是个更好的选择。购买专业的监控工具,你可以节省出更多时间去关注自身服务建设。

4. 不断持续改善监控

监控不是一层不变,随着业务、程序架构的变迁和更迭,监控也应持续改善适应新的需求。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值