背景和问题
目前,企业级监控运维管理系统,当告警发生时,通知模块负责将告警内容的结果推送到运维人员,推送方式也是有很多种,也各有各的优缺点,常见的推送方式如下:
-
邮件:他最基础的告警,简单,但是实时性并不是很高(很多人就很少看邮件)
-
短信:短信算是一个比较常用的告警方式,实时性高。不过不免费,虽然也不是特别贵,另外一点当告警收敛做的不够好的时候可能会造成打扰休息。
-
手机APP:实时性较高,信息内容充足,有一定的交互性。企业级的使用钉钉和企业微信的比较普遍,但是针对保密性要求比较高的单位,例如金融业单位,出于对数据保密性的要求,大多数采用自研手机APP。
电话外呼通知是一个新颖的通知方式,也是比较高级的通知方式,一般只有紧急的告警会采用这个,能够让人第一时间去介入问题的处理。同时必须需要结合通知压缩,否则会造成电话轰炸。下面针对告警的外呼通知的探索和实现进行描述。
/////
告警外呼流程
告警外呼的流程图
告警采集EPP是监控平台的采集部分,负责各种类型告警的采集工作,同时还有对告警的丰富和维护期的处理等。主要的告警采集EPP包括ZABBIX EPP,SYSLOG EPP,SNMP EPP,EIF EPP,HTTP EPP。
ZABBIX EPP:主要负责针对Zabbix告警的采集工作,通过Zabbix的API接口,将Zabbix告警抽取出来,同时根据告警状态的变化,产生原始的故障告警和恢复告警,经过丰富和维护期模块处理,传送至事件处理引擎。
SYSLOG EPP:主要负责针对利用SYSLOG协议传送过来的日志文件,根据配置的rules文件来解析日志,产生原始的故障告警和恢复告警,经过丰富和维护期模块处理,传送至事件处理引擎。目前通过SYSLOG EPP模块采集告警的应用系统有几十个,主要包括网络设备(路由器,交换机,防火墙负载均衡等),非金融交易前置,制卡系统等。
SNMP EPP:主要负责接收SNMP TRAP传送过来的告警信息,根据配置的rules文件来解析,产生原始的故障告警和恢复告警,经过丰富和维护期模块处理,传送至事件处理引擎。
EIF EPP:主要负责接收ITM传送过来的告警信息,根据配置的rules文件来解析,产生原始的故障告警和恢复告警,经过丰富和维护期模块处理,传送至事件处理引擎。
HTTP EPP:主要负责利用HTTP协议接收告警,分为两部分:一部分是EPP作为Server,供其他应用系统调用,产生告警;另一部分是EPP作为Client,定时去调应用系统的API,产生告警。
告警处理引擎主要是为EPP采集的告警提供存储和进行告警处理的工具,包括告警的丰富,压缩,维护期,告警升级,通知的处理等等,详细内容请见副刊精彩文章《新一代报警处理引擎技术》。
通知压缩是指利用配置一些特殊压缩规则来实现对通知的压缩,达到减少告警通知的目的。例如:
-
同一个应用系统(网络域)、同一个告警大类在3分钟内的短信,进行压缩。
-
同一个应用系统(网络域)、同一个设备、同一个报警策略在5分钟内的通知,进行压缩。
-
同一个应用系统(网络域)、同一个设备、同一个报警实例在5分钟内的通知,进行压缩。
-
同一个应用系统(网络域)、同一个设备、同一个报警组、同一个报警实例在10分钟内的通知,进行压缩。
具体压缩流程
通知熔断是针对外呼的次数进行限制,防止短时间内外呼次数过多,针对单个通知人和整个外呼渠道设置熔断机制,当一个管理员或者整个外呼渠道在单位时间内超过阈值,则产生熔断,通知更改状态后只持久化保存,不再通知。
此模块主要是在告警在经过通知规则匹配和压缩后,调用智能外呼服务的接口创建对应的外呼任务,将组装好的告警信息语音通知管理员。目前外呼通知的告警包括五个场景:
-
告警首次发生:告警第一次发生的场景,具体指的是在告警处理引擎中没有此告警的情况。
-
告警再发生:指的是告警首次发生后一直未恢复,超过规定的时间又一次发生的场景。
-
告警出维护期:指的是维护期内的可恢复告警在维护期结束时候未恢复的场景。
-
告警恢复:指的是发过告警通知的可恢复告警在恢复的时候通知管理员的场景
-
告警升级:指的是针对部分特殊的告警配置策略将其告警级别提高的场景。
监控通知服务模块调用智能外呼服务的对外接口API将告警信息和所需要的的参数通过HTTP协议发送到智能外呼系统的“数据接入”模块。“外呼任务管理”模块根据传入的告警信息和参数通过TTS合同语音,同时也包括通过ASR来进行语音识别。“外呼批处理”模块根据外呼任务创建http请求将语音流发送到Sip Server,进而和运维管理员建立语音通话。未接通或者通话终止后,将外呼结果发送至监控平台服务端。
/////
未来与展望
目前,平台仅仅实现了告警的外呼通知功能,告警发生时候,将告警内容通过智能外呼平台通知到管理员。但是自动化的程度还远远不够,可以设想一下这样的场景:应用管理员可以在接收告警通知的管理员与智能外呼平台实现互动,能够按键或者语音识别方式来确定需要自动化操作的选项去完成故障的处理。这样就能够更加快和更安全的完成告警的处理。
/////
文章作者:周恩涛
排版设计:王蔚棋
手绘插画:岳 媛
在看不好意思,那就点个赞吧
原创文章,作者:EBCloud,如若转载,请注明出处:https://www.sudun.com/ask/32539.html