“人们总是高估未来一到两年的变化,低估未来十年的变革”
——比尔·盖茨
日前,企业级IT运维软件及服务提供商广通软件成功中标光大银行运维故障诊断分析系统项目。
本次合作,我们将凭借自身在IT运维建设领域的技术能力与项目交付经验,基于机器算法和机器学习能力,针对光大银行统一监控平台的告警聚合分析、基线分析、智能化分析等内容进行建设。
一、第四次技术革命驱动运维智能化变革
在过去的120年间,人类文明经历了工业革命、电力革命和信息技术革命的三次重大突破,其所释放出的生产力不会低于人类社会数千年文明所积累的总和。今天我们又迎来了新的转折点,以大数据、云计算技术为基石,人工智能为驱动力的第四次技术革命正强势来袭。相信在不久的将来,它将为我们展开万物智能的社会新篇章。
相应的,支撑企业IT信息系统的运维模式也在不断演进,从最初的流程化运维ITIL演变至开发运维一体化DevOps,到如今最受关注的智能化运维AIOps。
·运维模式发展演进趋势图·
与流程化运维ITIL以及开发运维一体化DevOps不同的是,AIOps更专注于解决问题,而且是通过使用基于持续学习、算法技术来高度模仿人类来实现日常运维工作的高效化、高稳定性及高适应度,并且,把运维人员从耗时又容易出错的流程中解放出来。
二、银行业务转型驱动运维向智能化升级
现如今,数字化潮流风靡,身处不同行业的企业级用户无不极力投入到数字化转型当中。这其中既包括遍布全球的政府和公共事业机构,也包括金融、能源、交通和制造等各个行业的各类企业。对于众多企业级用户而言,进行数字化转型意味着加大对于信息系统建设的投资,与此同时,要求支撑IT信息系统的运维服务系统也必须随之迭代升级。
作为国内金融行业中信息化建设与管理程度较高的金融企业,光大银行通过数年的IT运维建设,已经基本形成了运维领域的相关管理工具,其中涵盖机房监控、网络监控、系统监控、应用监控等内容,能够有效支撑日常的运维保障工作。
在中国金融信息化的新时代背景下,各大金融企业业务竞争加剧,尤其是业务间的同质化竞争愈发明显。光大银行身为国内一流的财富管理银行,为了紧紧围绕客户需求,加快普惠金融践行步伐,近年来不断加深业务智能化建设,力求将差异化的产品传递给客户,为其提供高效、便捷、个性的智能业务与服务。
而相应的,这些智能化的业务也给银行内部的业务系统,以及支撑业务系统运行的基础设施运作带来了不小的挑战。尤其是在当前银行IT系统向云架构转型的时刻,其统一监控平台在监控告警分析层面还存在一些问题,比如告警定位分析的管理方式还比较传统,对于告警的聚合分析、基线分析、智能化分析仍存在缺口等,具体包含以下几点:
1. 传统的监控方式无法实时反映运行态势
银行目前采用传统的阈值告警模式来针对各类资源的监控告警,即针对具体监控指标设定告警阈值,一旦超出阈值即产生告警。现如今,光大银行正处于业务扩展、智能化转型的关键时期,对监控状态的要求也更加精细。
而传统的以阈值告警为主的方式不能够直接实时的反映系统运行状态,因此需要建立基于动态基线方式的监控能力,即以动态基线的方式,针对业务系统某个指标或某个类型交易,按照其历史运行趋势建立动态、波动的监控基线,避免传统方式下,以某个绝对阈值来一刀切“非黑(告警)即白(正常)”的告警分析方式,且报告警更能够贴近、反应真实业务环境,提升告警诊断分析的准确能力。
2. 云环境下的硬件故障早期发现亟需进行
此前光大银行的硬件监控手段已经较为完善,并且其所采用的也是一些高可用的硬件设施,以上条件在一定程度上保障了系统硬件安全运作。但是,随着银行系统逐渐告别传统环境步入云环境,硬件对于系统的影响越来越大,如何能够提早发现核心组件故障并利用一系列手段去避免硬件故障所造成的生产上的影响,成为光大银行运维系统所面临的重要挑战。
我们计划采用早期发现的手段,不仅从单一方向, 需要从多维度,比如网卡,此前都是采用硬件获取的信息来进行分析,现在需要从流量、校验等其他维度获取信息进行分析,用组合的手段去找到问题。
当然实际上硬件告警要远复杂于上面的例子,其涉及到硬件的基础日志信息、性能信息等,需要针对硬件专门定义监控分析模型和算法,基于模型与算法系统将自动诊断分析,并基于分析结果自我学习改进,确保硬件故障早发现。
3. 告警分析需要迈向智能化
在传统运维故障诊断分析时,对低级告警分析关注度较低,银行现有的系统在日常监控中,根据监控策略会产生5个级别的告警,对于高等级告警事件,管理人员通常会较为重视并重点解决,而低级别告警,则受限于管理人员精力以及告警影响范围和程度。
但是,这些低级别告警并非完全无用,在所有告警中,低级别告警数量更多、占比更高,如果说高级别告警反应了特殊事件、重大事件,那么这些低级别告警则综合反应了IT环境的总体运行态势,其中蕴含了整体IT运行的趋势。并且,许多高级别报警在其处于低级别告警阶段就已经有相关征兆,如若能及时发现处理就能规避部分高级别报警。
此次建设,运维系统需要对这些告警数据进行综合分析,实现告警的过滤、分级、关联、抑制和聚合,在海量数据中挖掘有价值的信息,帮助管理人员对告警数据进行更加合理的定级、更加合理的处置。
4. 告警根因难以确定
此前银行采用传统的监控方式,并且银行的IT环境异常复杂,在此条件下,某个基础组件的异常犹如蝴蝶的翅膀,可能会导致多个核心交易系统的告警风暴。而一旦产生业务告警,管理人员必将全力分析业务告警,大量的时间被浪费在针对业务系统的分析,而无法准确的找到告警根因。
为了避免这种情况,帮助管理人员从表面故障快速追踪到本质根源的办法核心在于定位和关联,用以确保在告警发生的第一时间定位到告警源,同时基于资源关联性、时序关联性来实现关联归并,将故障源导致的告警风暴归并到告警“风眼”下,让管理人员一目了然、快速找到根源并处理。
5. 需要形成智能化的告警新规则
此前光大银行的报警均采用传统的复杂的规则模式,这些规则来自于其内部人员及团队多年所积累的经验,利用规则引擎去进行大量的报警,用以支撑银行系统的安全运行。
相应的,现有的监控工具在告警规则定义层面比较简单,尤其是针对复杂的业务系统,涉及到动态基线、告警压缩、故障关联分析、故障定位等各个管理能力“联合作战”时,现有告警策略相对薄弱,无法满足复杂场景下通过策略来实现各类告警分析目的。
因此需要引用大数据及新算法技术,在原有的经验和规则基础上,创造建立灵活且支持复杂逻辑的告警策略管理,作为原有系统规则的一种补充,根据数据去摸索规则,形成新的智能化规则,完成面向各类业务场景下的告警诊断和分析需求。
三、AIOps助力光大银行提升运维生产力
本次运维故障诊断分析系统项目建设,将有效提升告警诊断的准确性、最大程度减少告警的噪音干扰,在海量的告警海洋中提炼出高质量的告警。运维人员每次收到告警之后可以立即评估影响的范围、定位故障根源,并且对每一个告警定义正确、合理的分级响应,并采取相应的行动。
·运维故障诊断分析的总体目标图·
广通软件将建设能提供动态基线梳理、告警分析、故障定位等核心功能,同时围绕故障诊断分析各个场景,并基于机器算法和机器学习能力的智能化数据分析系统。
从海量、异构、复杂的监控数据中挖掘出整体IT的趋势、风险、健康等有利于光大银行整体运维活动的有价值的数据,帮助用户夯实运维基础、提升分析能力,从而实现安全可靠的运维活动,保障各类业务活动开展。
▍动态基线梳理
首先针对用户当前被管对象,包括基础资源和业务资源,追溯、观察历史性能数据、发现规律,结合各类资源和业务的实际使用情况、管理情况,设计出基于动态基线的监控算法和规则,从而实现对不适合绝对阈值监控的对象采用基于动态基线的监控方式,尤其针对以业务交易为代表的、在运行过程中出现上下波动的各类资源或指标,梳理出适合的基线监控算法。
在基线梳理过程中,需要针对每一类需要通过基线监控的资源指标及业务交易进行专门梳理,为每一类指标或交易设计出最合适的基线监控算法,并支持万条基线的批量计算。
▍故障早期发现
重点针对硬件设备的故障发现,建设硬件故障发现能力。其核心在于追溯、分析硬件设备的历史运行性能和告警数据,找出故障、性能以及关键指标之间的关联与支撑规律,通过规律设计合理的计算模型,量化出硬件设备性能、故障及关键指标三者之间的变化关联关系,通过计算模型量化并预测硬件设备的故障几率和趋势,提前预测硬件设备可能发生的故障,提醒管理人员提前检修或更换,避免故障发生,将低业务运行风险。
▍告警快速定位
以时序、次序和关联关系,诊断分析告警之间的前后、关联关系,甄别出源告警和次生告警,从海量告警风暴中快速、准确找到告警“风眼”,将次生告警按照时序、关联归并到源告警之下,从而在大量相同级别的重要告警中,帮助管理人员快速定位告警源,将主要精力投入在本质问题的解决,而非浪费在各种次生告警上,延误告警解决效率和准确率。
▍海量告警压缩
本次故障诊断分析系统对接统一监控平台,涉及用户运维中心各类运维数据,数据来源多、数据结构杂,需要在海量告警中,通过告警计算模型、资源关联算法等规则,对重复、冗余、主次等相关告警进行压缩归并,将相同的、相关的告警进行归并,帮助运维人员从海量告警中快速获取关键告警信息,同时也减轻监控平台的性能压力,为管理人员对告警的处理方式提供依据。
▍告警规则丰富
提供告警规则引擎管理功能,通过在线界面配置的告警处理规则功能,实现对告警接入、处理、通知、联动等操作配置,应提供告警处理规则定义和导入导出的管理功能,允许系统实施人员、系统管理人员定义、共享、发布配置的处理规则。通过丰富的告警规则功能,对运维数据进行复杂逻辑的告警,完善当前监控平台难以实现的复杂告警逻辑。
四、 实践、认识、再实践,稳步迈向智能化运维
业内有人认为智能运维最主要的一点是对规则的打破,甚至是自由没有规则,但我们并不完全同意这个观点,智能化运维应该代表的是新规则的形成,它是运维技术在经历了主动运维到服务化运维之后所形成的便捷、智能的新技术生态。
基于光大银行目前需求,海量数据下的运维故障诊断分析是一个较为复杂且需要持续建设的智能分析系统,需要持续设计、完善相关算法和学习规则,尤其是智能化分析规则更是需要持续积累和优化。
因为仍处于初步探索实践的阶段,智能化运维之路还存在许多未知。未来的智能化运维发展也许会面临许多挑战,但无论如何,广通软件将始终以自主可控为第一原则,不断完善数据管理与机器学习等智能化运维技术,使得智能化运维标准化、知识化、工具化,为企业级用户IT系统智能化运维赋能不断努力。