写点什么

构建运维监控体系设计思路概述

  • 2022 年 9 月 09 日
    北京
  • 本文字数:2017 字

    阅读完需:约 7 分钟

构建运维监控体系设计思路概述

从系统建设角度来看,监控一定要建设成为一个体系。简单来说,就是对于有一定体量的公司,需要一系列各自关注点不同的监控方案,通过系统与系统间的内部交互来组成一个大的整体,从而满足不同场景下的监控需求,即监控体系。运维监控平台不是下载或买一套工具,把它运行起来就行了,而是要根据监控场景的实际需求进行配置调整,甚至二次开发,以实现与自身诉求高度匹配。那么我们就谈谈运维监控平台的设计思路。构建成体系的运维监控平台,其整体结构可以由五大层次以及 CMDB 作为基础信息数据库组成。

1、监控数据源层

数据源层基本对应各类监控对象,通过数据源获取包括监控元数据、日志、度量值、性能状态、分析调用链等在内的各类信息。我们没有先选择工具,而是先盘点监控需求的原因有两个:一方面是前面提到的,就目前来看,没有一款监控工具能够满足所有场景需求,术业有专攻,因此有必要梳理清楚需求,再根据需求选择匹配的监控工具实现;另一方面,流行的工具很多,而且它们各有侧重,如果只是满足基础监控需求,目前主流的几乎任意工具就能满足,不过,由于我们要考虑搭建的是一套体系,事前先想清楚重点,也有助于我们分阶段实施。

2、监控服务层

服务层的重点是完成各项监控数据的收集、存储和分析。数据主要来自监控数据源层,部分基础元数据会来自 CMDB。注意,监控数据源中也有元数据,这两者提供的信息有差别。举例来说,要对某台物理机进行配置监控,机器名、IP 地址、监控项等都属于监控元数据,不过 CMDB 中只记录了该物理机机器名、IP 地址、所属服务等基础信息,如果要为其配置监控项,还需要根据物理机操作系统基线配置,以及监控服务层中的设置才能确认。 监控服务层对数据收集有多种方式,通过客户端 Agent 或者通过网络 协议(如 ICMP、SNMP)都行,根据阈值和触发逻辑,将分析后的数据同步到监控体系中的其他模块,如果监控指标超过阈值就触发告警逻辑,同时将告警信息同步到监控体系的其他模块,最终或统一展示,或触发事件,或告警。

3、监控预警通知层

将监控预警功能作为一项能力独立出来,考虑了监控上规模后的能力复用。如果企业内部监控服务层只对应一个系统,那么自然它可以在监控服务层内部实现。但如果监控服务层有多个系统,与其在每一个系统中重复造轮子,不如将此部分共性需求抽象出来,把告警的去重、聚合、抑制、收敛、发送等功能放到一个独立的模块中实现,这也符合“高内聚,低偶合”的设计理念。


监控预警就是要配置合理有效的告警规则,实现强大的告警信息送达能力。这两点说起来简单,想要做好却不容易。出现异常情况后,首先要能识别,其次要能够让相关人员第一时间知晓,包括告警阈值设置成多少,哪些告警消息要发、发给谁、什么时候发、怎么发、发几次,告警发出后长时间无响应又当如何处理等。

4、事件响应层

监控系统将数据源中采集到的各类运行数据,通过规则判断生成事件,这些事件反映的是 IT 软硬件系统在运行过程中出现异常的情形。系统在运行过程中有可能产生大量事件,每一个事件都应当记录,当然这并不代表着每一个事件都是问题,更不是每一个事件都需要人为介入。


事件发现一定意味着系统某个时刻的状态异于平常:要进行事件收敛,对同一个事件或同一个故障引起的多类指标告警进行收敛,避免大量告警事件对 IT 运维造成信息骚扰;要进行事件分组,对不同的事件要有不同紧急程度的标识;要进行事件分析,建立整个事件之间的关联分析,形成故障树,帮助 IT 运维团队分析、定位和消除异常。为了让来自不同工具、不同格式的监控事件以尽可能清晰、直观的方式展示给一线团队,就必须建设具备高性能的事件响应模块,实现事件统一汇总,并对不同层面、不同专业角度的事件进行收敛和关联分析,更全面地感知系统运行状况。

5、可视化展现层

成熟的监控系统都会提供 Web 展示界面,主要是将数据收集层获取到的数据进行统一展示,提供以曲线图、柱状图、饼状图等数据图形化方式展现监控数据。可是大多数监控系统自带的 UI 界面短板实在太明显:一方面是数据不全,各自只拥有自己那部分数据;另一方面是展现效果差强人意。


不管是从展现效果还是实用程度,最终都要对整个监控体系中关键指标数据进行定制和集中展现,何况还会有像视频监控这类天生就适合投屏展示的场景。 可视化监控平台将运维各个环节的关键监控指标,比如网络的流量、访问的统计、应用的性能等,通过图表、投屏的方式进行展现,使运维人员能实时、全方位地观察到设备的健康状况,提升运维体验。

6、CMDB 配置数据库

当然,还有信息化系统建设过程中最重要的一环——CMDB,作为各类软硬件资产的中央数据库,为各类系统提供基础元数据。


有体系的运维监控平台,其监控一定是贯穿所有环节,实时“监测”生产环境的软硬件环境运行状态,进而为“控”打下基础,实现数据集中、各监控模块能力互补、关键指标统一展示,同时具备灵活的扩展性。此外,监控平台本身海量且拥有丰富纬度的数据,可以作为数据源为大数据平台提供素材,为智能化运维体系建设打下基础。

发布于: 刚刚阅读数: 3
用户头像

InfoQ签约作者 2018.11.30 加入

热爱生活,收藏美好,专注技术,持续成长

评论

发布
暂无评论
构建运维监控体系设计思路概述_监控体系_穿过生命散发芬芳_InfoQ写作社区