相比其他行业,证券业对业务连续性事件容忍度极低。 当出现客户权益类风险事件时,给运维留下的处置时间极短,多一秒都可能带来客户巨大损失,所以通常比别的行业更强调事前更快地发现潜在风险,并在风险未产生业务影响前消灭风险。而以打补丁方式对已知异常点加监控项对于风险发现的覆盖面越来越力不从心, 同时运维还需要在稳定的人力资源下加强对系统风险的把控能力,所以需要寻求一种新的运行风险管理工作方法。 本篇讨论风险感知,从面的视角,主动地构建信息系统风险的感知能力与风险应对机制。
在构建系统运行风险感知能力时,需要重点思考一些问题:
上述的问题重点围绕系统运行风险的如何发生、如何发现、如何识别、如何应对四个步骤,问题之间有递进的关系。
在反思生产故障时,我们会发现很多因素都可能引发风险事件,比如我之前梳理的一个鱼骨图:
如果将这些因素进一步归纳,可以发现 “ 变化 ”是引发风险的关键因素,找到生产环境的“变化”来源,持续地对“变化”来源进行感知,将有助于在风险源头进行防控。 从运维可控的工作范围看,可以从计划性与非计划性两个角度梳理一些“变化”的来源:
(1)计划性的“变化”
此处的“计划性”指针对运维团队可以把控的“计划 性”操作 ,通常围绕“变更管理”,比如:
梳理变化来源因素后,下一步是如何感知发现变化的发生。由于“变化”有变化前与变化后两个比较面,发现风险的策略可以归纳为“比不同”。 相 比设置固定阀值的监控策略, 采用“比不同”的变化感知方案的策略是规律的,在一定程度可以减少人工经验对每个监控点配置不同监控策略的操作步骤,达到从面角度的感知能力 。 从工具层面,一方面需要将具体的变化点的状态转换成数据,保存不同时间切面的数据,并对多个时间切面的数据进行比较,发现“变化”;另一方面需要将专家经验不断地融入到感知策略的调优上,调整通用策略与实际异常发现的准确性。 为了落地比不同的策略,还要确认“变化”的时间点或时间段,可选用特定时点触发,或采用循环调用的方式触发。 对于计划性的“变化”,通常时间可控,可以考虑在触发计划性操作后对变更执行前后的“变化”进行监测, 制定相关策略,比如:
对于非计划性的“变化”,可能来自业务、外部系统、外部依赖等因素,所运维对触发“变化”的操作不可控,需要区别于计划性“变化”在特定时点或时段执行感知策略,而是需要采用 循环调度的多时间切面地“比不同”感知。比如:
另外, 结合最近在AIOps上的实践,“算 法+平台+数据”的 优势在异常发现上有其特别的优势。 对于“比不同”的感知策略方案,除了已知专家经验规则的沉淀,还 需要基于数据驱动的思维,利用AIOps 在 精准性、大数据量、大计算量、实时计算、算法上的综合优势,实现通用的异 常发现能力,比如发现日志中首次报错、业务与性能指标的突增突减等 变化。
运行风险感知并非技术平台的实现,还需要结合具体的工作机制,才能真正落地,并发挥价值。
(1)融入现有工作流程机制
运行风险感知工作可以考虑与现有工作机制相结合。在一些常态化工作任务执行时点触发,比如在盘前巡检、清算批次结束、节假日结束等时点,能够更好落实新增的风险感知工作。同时,风险感知发现的风险可以融入到统一告警中,触发监控告警的处理流程中。
(2)建立新的风险识别工作机制
传统监控 是基于已知问题 发现的规则, 对某个异常 点设置监控阀值,假设监控策略准确情况下,告警的事件转化率需要越来越高。 而基于“变化”发现的风险可能包括高低风险事件,高风险可以融入到原有监控告警的处理机制,但低风险事件的处置可能需要区别处理,比如以下两个示例。
示例1:系统交易量、处理时延提高 几 倍, 但 系统容量 水位与峰值 相 差较高 。 案例中黄金指标出现较大波动, 还未 引发全局性的 性能问题, 虽暂未影响业务,但通过运维专家分析变化的原因,可以了解是业务计划性的业务推广行为,还是下游系统在未知会上游系统增大批量调用的行为等,以帮助运维了解变化行为是否合理,是否需要优化管理协同机制,同时,也能更好的了解系统容量水位变化情况,提前推动容量扩容与性能调优。
示例2: 业务功能的首次出现、应用日志出现一个首次出现的报错。 案例中首次出现的业务、报错等变化,可能是一种正常的业务行为,但通过分析,可以让运维专家更好地了解系统功能运行状况。 总的来说,由于企业系统越来越多,架构越来越复杂,运维专家负责的系统越来越多,运行数据指数级增长,系统对于运维专家逐渐往黑盒的状态发展。采用识别“变化”的方式,了解系统,可作为一种聚焦系统运行风险的管理方法,纳入技术运营中,并据此建立一个新的工作机制。
如果觉得我的文章对您有用,请点赞。您的支持将鼓励我继续创作!
赞2
添加新评论0 条评论