监控系统选型,一篇全搞定!

目前我所经历的几家公司,监控系统都是自研的。其实业界有很多优秀的开源产品可供选择,能满足绝大部分的监控需求,如果能从中选择一款满足企业当下的诉求,显然最省时省力。

这篇文章,我将对监控体系的基础知识、原理和架构做一次系统性整理,同时还会对几款最常用的开源监控产品做下介绍,以便大家选型时参考。

内容包括如下三部分:

  • 必知必会的监控基础知识

  • 主流监控系统介绍

  • 监控系统的选型建议

必知必会的监控基础知识

监控系统俗称“第三只眼”,几乎是我们每天都会打交道的系统,下面四项基础知识我认为是必须要了解的。

监控系统的 7 大作用

正所谓“无监控,不运维”,监控系统的地位不言而喻。不管你是监控系统的开发者还是使用者,首先肯定要清楚:监控系统的目标是什么?它能发挥什么作用?

监控系统有如下七大作用:

  • **实时采集监控数据:**包括硬件、操作系统、中间件、应用程序等各个维度的数据。

  • **实时反馈监控状态:**通过对采集的数据进行多维度统计和可视化展示,能实时体现监控对象的状态是正常还是异常。

  • **预知故障和告警:**能够提前预知故障风险,并及时发出告警信息。

  • **辅助定位故障:**提供故障发生时的各项指标数据,辅助故障分析和定位。

  • **辅助性能调优:**为性能调优提供数据支持,比如慢 SQL,接口响应时间等。

  • **辅助容量规划:**为服务器、中间件以及应用集群的容量规划提供数据支撑。

  • **辅助自动化运维:**为自动扩容或者根据配置的 SLA 进行服务降级等智能运维提供数据支撑。

使用监控系统的正确姿势

出任何线上事故,先不说其他地方有问题,监控部分一定是有问题的。听着很甩锅的一句话,仔细思考好像有一定道理。我们在事故复盘时,通常会思考这三个和监控有关的问题:

  • 有没有做监控?

  • 监控是否及时?

  • 监控信息是否有助于快速定位问题?

可见光有一套好的监控系统还不够,还必须知道如何用好它。一个成熟的研发团队通常会定一个监控规范,用来统一监控系统的使用方法。

如何使用监控系统?总结如下四个方面:

  • **了解监控对象的工作原理:**要做到对监控对象有基本的了解,清楚它的工作原理。比如想对 JVM 进行监控,你必须清楚 JVM 的堆内存结构和垃圾回收机制。

  • **确定监控对象的指标:**清楚使用哪些指标来刻画监控对象的状态?比如想对某个接口进行监控,可以采用请求量、耗时、超时量、异常量等指标来衡量。

  • **定义合理的报警阈值和等级:**达到什么阈值需要告警?对应的故障等级是多少?不需要处理的告警不是好告警,可见定义合理的阈值有多重要,否则只会降低运维效率或者让监控系统失去它的作用。

  • **建立完善的故障处理流程:**收到故障告警后,一定要有相应的处理流程和 oncall 机制,让故障及时被跟进处理。

监控的对象和指标都有哪些

监控已然成为了整个产品生命周期非常重要的一环,运维关注硬件和基础监控,研发关注各类中间件和应用层的监控,产品关注核心业务指标的监控。可见,监控的对象已经越来越立体化。

这里,我对常用的监控对象以及监控指标做了分类整理,供大家参考:

①硬件监控包括:电源状态、CPU 状态、机器温度、风扇状态、物理磁盘、raid 状态、内存状态、网

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值