2

构建企业监控体系设计思路概述

 1 year ago
source link: https://blog.51cto.com/key3feng/5656674
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

构建企业监控体系设计思路概述

精选 原创

key_3_feng 2022-09-06 22:43:29 博主文章分类:2022年9月 ©著作权

文章标签 运维 自动化运维 文章分类 其它 系统/运维 yyds干货盘点 阅读数225

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

1、监控数据源层

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

2、监控服务层

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

3、监控预警通知层

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

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

4、事件响应层

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

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

5、可视化展现层

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

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

6、CMDB配置数据库

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

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

  • 1
  • 收藏
  • 评论
  • 分享
  • 举报

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK