实战 | 自研新一代监控管理平台助力数字化运维转型
欢迎金融科技工作者积极投稿!
投稿邮箱:newmedia@fcmag.com.cn
——金融电子化
文 / 中国光大银行信息科技部 胖亚鹏 李安怀
监控系统作为运维之眼,通过对各类基础设施及应用系统进行全面监控,为IT系统安全平稳运行提供第一道保障。光大银行以自研的分布式报警引擎作为核心组件构建新一代监控管理平台,加强智能化和数字化处理能力,提升对监控报警全生命周期的闭环管理水平,实现故障可及时发现、根因可精准评估、处置可同步联动的运维监控管理愿景。
监控报警管理现状和目标
光大银行从2010年开始基于国外商业套件建设监控报警管理平台,历经多年建设和运营,积累和沉淀了大量报警处理规则和使用经验,在运维工作中发挥了重要作用。然而在面对云计算、大数据和微服务等先进技术架构下的新一代应用系统时,传统的监控报警管理平台暴露出诸多不足,具体表现在:新技术组件种类和数量繁多,监控覆盖度不足导致报警缺失而无法主动发现故障;故障关联发生或反复发生时触发大量重复报警,增加运维工作量;复杂架构下关键节点异常引发的大规模故障难以快速定位故障根因;监控报警平台依赖的商业套件自身架构落后和技术封闭,导致报警处理能力弱、扩展性差,无法满足海量数据智能分析的技术要求。
面对上述问题,光大银行新一代监控报警管理平台以数字化、智能化、服务化为总体方向,制定了以下具体目标:一是基于开源软件以自研方式构建报警平台,综合运用分布式、大数据流处理和AI技术提升平台处理能力;二是全面兼容原有平台的处理规则和语法规范,以插件方式进行新功能扩充,既保证新老平台平滑迁移又能提升扩展能力;三是在监控效能量化评估的基础上实现全闭环监控管理模式,确保监控覆盖度和有效性;四是加强数字化和智能化报警处理能力,实现监控报警智能压缩和故障根因分析定位。
监控报警管理平台架构
新一代监控报警管理平台基于开源组件自主研发,采用Dubbo分布式服务框架,使用Apache Ignite作为分布式存储引擎,支持实时流计算和批处理计算,通过集成行内人工智能平台算法服务实现AI分析能力。总体上具备分布式、高并发、低延迟、智能化的技术特点,实现监控报警的高效处理,为数字化监控转型提供了关键技术支撑。平台共分为5层(见图1)。
图1 监控报警管理平台架构
工具接入层:负责监控工具与上层平台之间的数据传输。具有两个作用,一是通过数据服务总线将报警数据、指标数据和监控配置管理数据上送到平台层处理;二是执行平台层推送的监控策略信息到监控工具进行部署生效。
数据处理层:负责对监控报警数据和监控策略配置数据按照业务需要进行处理和存储。报警处理功能包括丰富、压缩、升级、维护期、通知以及定位和影响分析等。报警信息按照其生命周期划分为实时报警库和归档库,用于报警数据管理。
管理层:一是App管理和容器,将报警处理功能封装为独立的App,并按照场景对App进行定制、编排和部署。二是通过监控标准化、监控自动化和监控评价等功能实现监控闭环管理。
接口服务层:负责报警管理平台与展示层及外部系统进行数据交互。一是数据服务,为前端界面提供实时数据接口,如报警查询、报警操作、监控策略配置管理、数据导出等。二是实现和外部系统交互接口,如AI服务集成接口、通知推送接口、工单生成接口和自动化平台集成接口等。
展示层:负责为用户提供监控报警管理平台的交互界面,包括大屏端、PC端和移动端,界面内容包括报警信息查询和操作以及监控闭环管理的相关功能。
主要创新点
1.自研分布式报警引擎提升处理性能。监控报警平台的核心组件是新一代分布式报警处理引擎,引擎以ApacheAkka、Dubbo和Ignite等开源组件为基础,采用全分布式技术进行构建。在报警接入层,采用Akka并行框架,基于Actor模型进行消息传递,将消息与处理者解耦,允许异步通信的同时满足消息传递模式的控制要求。在报警处理层,以Spring boot+Dubbo分布式框架为基础搭建分布式处理集群,基于多节点并行RPC调用提升性能,支持服务自动注册、发现、容错和负载均衡。在报警存储层面,使用Apache Ignite分布式内存数据库存储告警,使用堆外内存储存数据,性能不受GC影响,且能够将内存数据持久化到磁盘,保证数据不丢失。性能测试结果显示,分布式监控报警引擎的TPS达到1万条/秒,处理延迟不超过100ms,相较于原有国外商业套件性能提升10倍以上。
2.可量化的闭环管理提升监控覆盖度。在新一代监控报警管理平台中,着重加强对监控管理能力的建设,形成闭环管理机制。一是监控标准化管理,将监控对象、指标、策略和工具抽象为通用模型,结合监控接口和SDK开发技术规范生成管理基线。二是遵从管理基线,实现多场景下的自动化和自助式监控配置。三是制定监控运行评价的指标,如监控覆盖率、标准化率等,实现按应用系统量化评分并实时发布评价结果。四是根据评价结果,促进管理优化,或更新监控标准,或补充监控策略。通过反复以评促改、闭环迭代的管理方式,最大化发挥监控技术的价值。
3.采用智能算法解决报警压缩和定位的痛点。通过智能算法分析提升监控报警有效性,是监控数字化转型的重要技术手段。新一代监控报警管理平台基于NLP技术实现对报警的压缩处理。在海量报警发生时,将时间窗内的报警信息实时进行内容分析,根据相关度分值对报警条目进行分组,大幅度减少重复报警的数量,提升报警处置效率。在故障定位方面,结合多种算法进行定位分析,一是结合CMDB信息和专家知识库,按照报警条目间的内在关联关系逐层进行分析,从交易层、应用功能层、组件层、系统层、硬件层等逐层排障,定位故障点。二是在大量报警发生时,根据报警自身的属性值如机房信息、机柜信息、服务器信息、交易渠道信息等,采用聚类算法快速定位故障的热点属性,采用推断方式找到可能的故障根因。
4.App商店模式增强平台处理扩展性。采用App商店模式对报警处理功能进行封装和编排管理,有效提升报警处理的兼容性和扩展性。报警处理App是一个独立的报警处理功能部件。报警管理平台作为容器,基于Antlr、SPeL、Java动态编译等技术,支持运维人员开发各类报警处理App并进行调度编排和部署。App类型包括流类型、批调度类型、广播型、订阅型等,支持SQL语言、Scala和Java语言的功能扩展开发,采用热插拔方式部署,具备优雅启停的功能。特别是新平台能够实现对原有国外商业套件处理语法和规则的兼容,实现旧平台向新平台的平滑迁移和过渡。
新一代报警处理平台应用效果
光大银行分布式监控报警管理平台于2020年正式投产使用。平台管理范围涵盖总行、44家分行、消费金融公司和理财子公司。报警分为8大领域,包括机房、存储和硬件、网络、操作系统、数据库、中间件、应用、安全等,完全覆盖我行IT生产系统的所有领域。围绕报警的生命周期管理,迁移和新增报警App模块50余个,包括报警数据预处理、报警信息丰富、报警定级、报警维护期抑制、报警自动压缩、报警通知外发、报警根因分析等,平均每月处理报警4~5万条,报警压缩比达到40%,目标场景下故障根因定位时间缩短到5分钟以内。监控标准化方面,共部署有50余条标准化基线,7000余条监控策略,近90万个监控指标,专业运维人员通过自助方式进行监控配置的策略占比60%以上。通过以评促改的方式,持续提升监控提升覆盖率和标准化率,覆盖率从95%提升到接近100%,标准化率从70%提升到95%,监控主动发现率在98%以上,监控效能得到显著提升。
下一步,我们还将对平台进行优化,持续践行数字化监控转型。一是进一步丰富报警智能分析的场景,提升运用AI算法实现报警压缩和收敛的能力,提高报警压缩比率、缩短根因定位时间。二是继续加强报警标准化管理能力,提升分布式、云原生应用的监控粒度,持续增大自助式监控配置服务的占比。三是报警关联展示优化,提升报警与性能数据、配置数据、流程数据的关联能力,展示相关信息便于运维人员分析决策。四是扩大报警自愈范围,通过闭环联动适配更多自愈场景,缩短故障影响的时间,提升故障处置效率。
(栏目编辑:张丽霞)
往期精选:
(点击查看精彩内容)
● 实战 | 智能化技术赋能传统运营风控模式转型——运营风险智能管控项目的建设与成效
《金融电子化》新媒体部:主任 / 邝源 编辑 / 傅甜甜 潘婧