IT集中监控系统告警关联分析模型研究

2017-05-30 04:46:51黄强
科技尚品 2017年5期

黄强

摘 要:数据中心日常运维会收到大量来自不同监控源、不同设备、不同类型的原始告警。这些原始告警不仅包含原始信息,而且存在大量不需要IT运维人员关注的告警、单一重復告警、同一系统故障引发大量关联告警等,不便于运维人员快速判断和处理。因此,需要对原始告警信息进行收集、格式化、过滤、压缩、丰富、根源分析,最终呈现给运维人员的是根源告警,并且携带有便于运维人员后续处理的告警和配置资源信息,实现故障快速定位和恢复。本文是结合贵州电网公司信息中心IT集中监控系统规划建设进行的分析设计。

关键词:告警关联分析模型;原始告警;运维人员

1 告警关联分析模型在整体架构中的定位

告警管理分析模型处在数据处理层,通过内存数据库实现。其核心模块为告警预处理引擎、告警丰富处理引擎、告警关联性分析引擎和告警后期处理引擎。本模型处理各个监控源采集到的原始告警,通过调用告警知识库和配置管理库的规则和配置信息,实现对告警的收集、格式化编码、过滤、压缩、丰富、关联分析等处理,并为业务运行状态评价模型提供告警状态。

2 告警关联分析模型引入的意义

贵州电网需要的是针对大型网络中基础架构平台和应用的实时故障处理及运行管理系统,包含各管理子系统的综合故障管理功能。引入告警关联分析具有重要意义:(1)有效精简告警数量,缩短故障定位时间;丰富告警所包含的信息量,提升运维人员的故障处理效率;(2)可以将专家支持团队的经验以算法的形式直接应用到运维实践中,快速提高团队运维能力;(3)提高告警处理的标准化程度。

3 告警關联分析模型研究内容

告警关联分析模型主要研究内容是如何对系统中大量告警进行精简,只对需要干预和处理的告警进行通知和展示,因此需要将内存数据库中的告警在其各个生命周期、使用不同算法进行处理。

首先,根据各个监控源的原始告警进行格式化处理,格式化处理后形成的告警中携带了原始告警的全部信息;告警预处理引擎内置告警处理算法,将告警信息进行压缩、过滤;然后,调用告警知识库中的告警表和配置表,对需要进一步处理的告警进行告警丰富和配置丰富,将告警信息和配置信息丰富到告警内存库中;将业务关联信息丰富到告警流水表,发送给业务状态评价模型;按照关联算法,消除已恢复告警和非根源告警;对告警内存库处理后的告警通知到一线运维人员、事件管理平台,并对告警做归档存入统一信息库,以供后续查询。

4 告警关联分析模型的重点和难点

4.1 模型研究的重点

告警关联分析模型包含4个子模型:告警预处理模型、告警丰富模型、告警关联性分析模型和告警后期处理模型。设计研究重点如下:(1)告警预处理模型:告警格式化编码设计和告警过滤、压缩是本模型的重点。完备的告警格式化编码设计,可以使监控源的信息量有效传递,也可以为后续告警处理奠定基础;告警过滤和压缩属于源消息处理,有效的过滤和压缩可以减少告警内存库的告警处理量,大大提高告警后续处理的性能和效率,降低告警内存库的负荷。(2)告警丰富模型:本模型研究重点是告警内存库与告警知识库的接口设计。原始告警本身只携带监控源采集到的监控指标信息,其信息量与后续干预、处理还有很大差距,将配置信息、告警知识库信息以及业务关联信息有效丰富到告警中,可以充分利用现有的知识储备,丰富告警的信息量,提高后续处理效率,不断提升告警处理能力。(3)告警关联性分析:本模型研究重点是告警关联性分析算法设计,建立告警关系的树形结构。告警经过关联分析引擎后,将直接进入告警通知过程,通过展示层呈现给运维人员。多个关联告警同时发生,如何根据多个告警有效分析出根源告警,将衍生告警吸收;或者多个告警发生,根据既有告警推论得出一个新告警的发生。

4.2 模型研究的难点

告警格式化编码设计:不同业务、不同系统对各个指标参数的要求不同,告警格式也不尽相同,不同软件、硬件产品的告警格式也不尽相同,因此,设计告警编码格式和规范,对不同类型原始告警,将其信息正确有效的写入告警流水表的各个字段,才可以保证信息传递不失真;后续告警处理需要大量调用管理配置库和告警知识库内容,格式化告警中需要预留相应的字段,同时需要兼顾告警内存库的资源,因此格式化告警编码设计需要合理高效。

与关键应用监控系统其他子模块(配置关联模型、告警知识库)的接口设计:配置关联数据库和告警知识库中存储了大量的配置信息和知识信息,在告警丰富、告警关联性分析等多个过程中,需要通过接口正确调用和重新组织告警知识库和配置资源信息。

告警压缩、过滤算法和告警关联性分析算法:告警处理告警关联分析模型的输入之一是监控告警源,输出是直接呈现给运维人员看到的告警信息,如何过滤无效告警、压缩重复告警、正确获取关联告警中的根源告警,直接关系到运维人员的告警处理效率。需要设计科学有效的告警处理算法。算法设计涵盖了告警处理流程设计和告警知识库关联规则管理模块的数据结构设计。

5 告警关联性分析模型设计

5.1 告警预处理模型设计

各监控源采集到的原始告警信息进入告警总线进行处理,需要经过压缩、过滤、关联性分析等过程,从而达到告警的提炼,使得最终呈现给运维人员面前的信息是最关键、最重要的告警。告警格式化、告警过滤、压缩不涉及告警关联分析模型和告警知识库模型之间的相互调用,实现的算法逻辑相对简单,但是可以过滤绝大部分无关告警。

5.2 告警丰富模型设计

根据用户的实际管理需要对告警进行的丰富,将用户的资源信息与原始告警进行关联,使运维人员在收到告警的同时,直接可以查看到相关的内容,如联系人、联系电话、处理方式等,将有价值的数据进行整合,集中呈现到告警管理平台,不用进行额外的手工查询工作,提高处理效率。

告警过滤和压缩过程在告警内存库中进行,逻辑相对简单,处理过程并不需要直接调用告警知识库中的数据表。在后续的告警关联性分析以及进一步处理过程,仅凭原始告警信息已经无法进行,需要大量调用告警知识库模型的信息。为了提高告警处理效率,需要将告警知识库和配置管理库中的关键信息写入格式化告警的相应字段,在告警内存库中处理。

5.3 告警关联性分析模型设计

告警处理引擎的数据来自不同的基础监控系统系统,这些数据之间是否有关联?如果有,是何种关联关系?关联关系的判断是依赖系统告警本身就可以实现,还是需要连接到外部数据源,从外部数据源获得信息帮助判断?这些问题都需要整理和回答,让系统自动实现关联关系的分析。通过对这些信息的分析,包括告警信息本身、外部数据依赖关系、告警发生的时段和频率甚至外部的问题支持数据库等,来告诉管理系统,告警的根源是什么,是否已有解决方案,如果是,解决方案是什么,告警的影响情况如何,相关告警中,是否可以將部分告警抑制等等。这些工作就是在梳理告警之间的关联关系,本模型中告警關联分析的工作就是利用这些规则,系统自动发现多重告警的根源告警,减少人为处理的工作强度,提高运维效率。

在实际的监控系统中,经统计发现告警在每天不是平均分布的,经常是在短时间内产生大量的报警。针对以上的场景在处理告警时有可能因为没有从大量告警中找到最主要告警信息而延误故障的处理时间。因此针对有关联关系的报警,需要一套方法来进行合并,减少无效报警。为了满足南方电网告警关联分析的需求,可以使用基于树形规则的相关性分析模型。

很多告警会成对出现,例如故障的发生告警和故障的恢复告警。告警关联能够根据预定义的特征将这些告警关联在一起并消除相应的告警。告警关联具备告警相关性分析功能,如故障告警发生在前,故障恢复告警在后,才自动关联归并,否则不予关联。支持资源内部告警关联(如服务器Down造成的应用、数据库等不可用的告警能够自动关联定位故障根源为服务器Down)和跨资源关联(如网络端口Down造成服务器Ping Failure等告警发生,自动关联定位故障根源为网络端口Down)。

5.4 告警后期处理

告警在数据处理层经过了压缩、过滤、丰富和关联分析等过程后,形成了最终的通知告警。从告警生命周期来看,还需要通知到告警展示平台,并提供相应的操作接口;从告警的历史持久化来看,需要进行归档并提供检索功能。

6 总结

通过以上4个模型,可以大幅降低告警量;在告警发生时也只会报出需要运维人员处理的根源告警;对于根源告警,其信息量也足够丰富,实现快速处理。

参考文献

[1]张现飞,侯思祖.电力通信网监控系统告警关联分析[J].电力系统通信,2009,30(1):47-50.

[2]王旭勇.基于电网IT集中监控系统告警关联分析研究[J].中国电子商务,2014,(19):75.

(作者单位:贵州电网有限责任公司信息中心)