监控体系建设(完整)(4)
基线是由指定时间段的大量历史数据不断迭加组合,间隔的时间越短需要的性能越高,尤其是当基线的组合类型丰富的情况下,需要大量的计算资源,选用一个合理的计算方案就显得很重要.我们原来采用单库跑基线,只能做到30分钟一个点,目前采用分布式数据库结合缓存方式设计性能,未来根据基线运行的情况再考虑是否选用大数据流计算等技术框架. 4)基线的人工调整: 系统运行过程中难免会因为业务运营推广等导致历史基线不能反映指标是否合理,这时候需要有一个人工调整基线的入口,运维人员可以重新绘制基线、减少对历史数据的参考权重等. 另外,人工智能这么火,也提一点通过机器学习来实现监控基线的思路(思路还不成熟,仅供参考): 将应用运行健康与不健康的样本数据汇总,样本中不同指标的指标数据作为不同的变量,结合不同的算法,通过调参学习后,得到运行状态好坏的基线.这样,就可以将基线做一个监控运行状态的服务,把实际运行的多个监控指标数据关给基线服务,基线服务返回当前服务运行好坏. 四、监控事件1、监控事件:监控事件反映的是IT基础设施、中间件、应用程序、业务流程等运行过程中发生的问题.监控系统通过采集运行数据,通过数据判断规则生成事件,监控事件还涉及事件的处理(比如事件丰富、收敛等)、事件的关联分析,并驱动事件的解决.(以下是监控事件处理的一般流程图) 前面提到了事件整合,下面主要讲讲事件关联、事件应急、事件分析、智能处理方面的建设思路. 2、事件标准1)事件数据模型 事件数据主要包含数据头信息、静态丰富信息、事件现场信息、知识库信息、关联信息. 静态丰富信息包含描述丰富信息、拓扑丰富信息,描述丰富信息主要包含相关人员描述信息、服务器描述信息、工单信息等,这块丰富数据可以通过CMDB消费获取,这部份丰富数据有助于事件处理过程中关联分析.事件现场信息包含指标信息、性能信息、系统资源信息等,这部份信息主要是反映事件的现场数据.知识库信息主要指相似历史事件及其处理方式等信息,比如“建议如何做,己自动进行了什么动作”等.关联信息主要包含从属事件信息、关联影响信息. 2)事件分级标准 前面提到了事件分级的问题,分级是将事件当前紧急程度进行标识显示,则需要进行升级.我们将监控事件等级事件级别分为通知、预警、故障三种: ??? 通知:指一般的通知信息类事件. ??? 预警:指已经出现异常,即将要引起生产故障的事件. ??? 故障:指已经发生问题,并且已经影响到生产流程的事件,如果需要进一步细化故障级别,可以分为一般故障和紧急故障:一般故障不需要紧急处理的故障,紧急故障需要管理员紧急处理的故障. 事件细分的粒度需根据各企业团队的管理要求而定. 2、事件关联:1)事件压缩及收敛 事件压缩及收敛就是为了减少事件数量,提高事件定位能力.监控采集数据后,根据具体的单指标或多指标的规则判断是否触发事件,如触发事件,则发送事件接收器.为什么不直接通过可视化方式马上将匹配到的事件信息呈现给监控人员呢?那是由于监控数据采集是实时采集,但事件的解决可能并非马上解决,为了减少重复性的告警数量,需要由事件处理引擎进一步压缩处理.比如每2分钟采集一次文件系统容器数据,当某个文件系统容量超过70%后,触发了预警阀值,但这个文件系统是缓慢增长,计划在当周的扩容窗口集中变更,如果不对事件进行处理,那每2分钟就会有一个预警,产生预警泛滥,所以这时需要对事件进行压缩,比如针对事件来源、关键字组合等规则进行压缩,并记录事件发生次数. 有了事件压缩还不够,因为触发事件的指标往往是相互关联的,这就需要对多项指标关系进行分析,减少相同问题产生的事件.比如这个应用场景: -NAS监控:NAS文件系统在各OS上都会有监控,一个NAS文件系统出问题时,每个服务器的NAS文件系统监控都会报警.如能对NAS进行挂载关系梳理,同一NAS的报警可以大量收敛. -进程、端口、通讯检测:一个进程宕掉时,该进程启动的端口、关联系统与改进程端口的通讯等都会同时报警.如能对进程、端口、通讯关系进行梳理,同一个进程引发的进程、端口、通讯监控事件也能收敛明显. 2)事件丰富 事件丰富包括事件描述丰富(通过CMDB丰富、拓扑丰富)、事件现场丰富(指标信息丰富、APM信息丰富、系统资源信息丰富)、知识库丰富,提高运维人员分析问题的能力.事件主要丰富方法如下: -与第三方监控系统对接,获取事件相关信息进行丰富.如与CMDB系统对接,获取服务器等相关配置信息进行CMDB数据丰富; -根据拓扑关系模型,进行拓扑丰富; -指标信息丰富:获取事件发生前后一段时间内的相关指标信息数据(如CPU/内存等),进行指标信息丰富; -相关事件丰富:根据拓扑关系模型、应用关系关联模型、交易流行关联模型将相近事件时间范围内的事件进行丰富展示; -知识库丰富:建立事件处理方案知识库,记录事件处理的方法和流程,为事件处理人提供参考依据,以及为后续自动化运维提供理论支撑. 下面这个是我们做的一个事件丰富,主要包括几块内容: ???? 事件涉及的软硬件的基本配置信息、人员信息,这一块是基本CMDB的数据消费; ???? 事件报警的主体信息,包括时间、事件描述、事件可能原因、事件处理情况等; ???? 事件应急处理及流程工单链接; ???? 事件主体信息的具体指标数据展示,以及指标变化趋势; ???? 最近30分钟的事件情况,以备分析是否受其它事件关联影响; ???? 该事件所在OS的CPU、内存、IO的信息; ???? 事件涉及的性能信息,比如交易量、成功率、交易耗时; ???? 事件处理进展 3)事件扩散 (编辑:ASP站长网) |