随着云计算、人工智能、大数据、区块链等新兴技术兴起,我国数字经济蓬勃发展,传统金融业态发生巨大变革。人民银行与银保监会相继印发《金融科技发展规划(2022-2025年)》和《关于银行业保险业数字化转型的指导意见》,金融数字化转型逐步从多点突破走向深入发展,金融行业在技术变革的推动下迈入新发展阶段。机遇和挑战并存,在金融服务效率提高的同时,也衍生出复杂多样的潜在风险。

在高质量发展的新时代下,如何有效落实“发展要安全”的整体目标,如何保障金融业务系统平稳运行,如何提升平台系统可靠性是金融行业行稳致远的关键。北银金融科技有限责任公司(以下简称北银金科)作为中国信通院牵头成立的混沌工程实验室(ChaosLab)成员单位,以混沌工程建设为出发点,对其赋能金融行业复杂业务稳定性方面进行了有益的探索实践。

新形势下金融业务系统稳定

新形势下金融业务系统稳定

面临的挑战

面临的挑战

伴随着数字化转型的不断深入推进,金融业务系统逐渐由传统架构演进为云原生下复杂的分布式微服务架构,服务间依赖关系变得错综复杂,传统稳定性的治理手段无法应对不可预见和不确定的系统性风险的挑战。具体表现为以下几个方面。

一是系统规模呈指数级增长。金融业务的飞速发展带来用户规模与海量数据爆发式增长,云原生分布式微服务架构下应用系统基础设施呈现指数级增长,系统节点增多、结构更加复杂,服务边界难以梳理,系统观测性难度、维护难度持续升级。

二是快与稳的平衡。云原生、微服务、DevOps的广泛应用使开发的效率和便捷性大幅提升,业务需求得以快速响应的同时,各服务频繁变化衍生出系统不稳定性风险,如何保证快与稳的平衡成为金融机构面临的新挑战。

三是复杂系统的认知局限。数字化转型的本质是一场认知与思维的革命。现有系统稳定性保障措施是基于传统的认知思维,侧重防范可预见的风险,而面对未来种种不可确定、不可预见、不可估量的风险,突破常规确定性思维、深化创新技术是适应数字化深入发展的积极探索。

混沌工程建设的理论依据

混沌工程建设的理论依据

继20世纪60年代气象专家Lorenz首次通过发表的《确定性非周期流》论文提出混沌理论的“蝴蝶效应”,越来越多的企业关注混沌工程。为持续提升复杂网络环境下大规模、高可靠、高可用的业务系统稳定运行效能,北银金科也积极开展混沌理念和发展趋势的深入研究,探索形成了基于四要素的混沌工程建设理论(如图1所示),为混沌工程实践提供理论依据。

稳态假说。系统稳态,可衡量系统在一段时间内稳定运行的状态。在进行混沌工程实验前,需要先假设实验的结果是否会破坏稳态,一套验证假设的完善测试集,帮助我们判断实验对系统的影响。

主动预防。如何主动预防风险是混沌工程要重点解决的问题。提前模拟可能出现的故障,验证服务在不同故障场景下的容错、应急响应、恢复等可靠性能力,主动发现问题并扼杀在摇篮里,驱动系统可靠性提升。

实验收益。混沌工程是一门对系统进行实验的学科,通过一系列实验验证系统应对各种混乱状况的能力,即系统在面对故障发生时的应急和自愈能力,频繁的实验不断增强系统抵御故障的能力,降低故障产生的影响,让系统在每一次的故障中获益,不断提高系统的韧性。

真实事件。决定引入哪些事件,设定发生的频率和影响范围,不仅要权衡引入它们的成本和复杂度,更重要的是保证注入的事件是频繁发生且影响较大的真实世界的事件,比如断电、宕机等,模拟真实性的事件更能体现系统可能存在的缺陷。

混沌工程平台的探索实践

混沌工程平台的探索实践

北银金科按照“主动攻击、提前预防”的思想,以数字时代金融业务系统“稳定器”为建设目标,独立研发具有自主知识产权的混沌工程系列产品,探索出一条保障金融业务系统稳定性和业务连续性的新路径,为金融数字化转型提供强大的科技支撑。

1.总体设计原则

为更好响应监管机构对于金融信息系统连续性要求,针对金融行业对高可用严谨性有极高要求的特性,在行业《信息系统稳定性保障能力建设指南(1.0)》相关标准基础上,创新性提出了“2345”原则体系下的“+金融”总体设计模式(如图2所示),为混沌工程在金融领域的技术实践提供智力支撑。

“2345”原则体系。即始终坚持2个总体原则(平衡取舍、积极防御)、3个关键要素(人员、管理、技术)、4项核心能力(故障预防能力、故障识别能力、应急响应能力、优化改进能力)和5项重要工作(团队组织、场景及系统情况梳理、预案准备、事中协同、事后复盘)。

“+金融”。即在兼顾安全、稳定、标准化要求下,利用云计算高性能、高弹性、低成本的优势,助力金融创新,实现普惠的数字金融服务,让金融服务“无微不至、无处不在”。同时,将风险管理能力、技术支撑能力、场景化的客户服务能力开放共享给商业生态和同业金融机构,进而更高效地实现金融服务需求与供给的匹配,形成开放式、生态化平台,成为数智驱动的智能金融,促进金融业整体数字化转型升级。

2.规划实施路径

北银金科始终坚持创新驱动发展,结合金融行业特性实践模式,经历三个建设发展阶段逐步打造有效保障金融业务系统稳定性和业务连续性混沌工程系列产品(如图3所示)。

第一阶段落地混沌工程测试平台产品。建设面向行业的金融级系统稳定性测试平台,支持多场景、全链路的系统故障模拟和诊断分析。

第二阶段从测试领域产品过渡到企业级混沌工程测试体系的建设。以稳定性优先为战略考量,从企业工程建设的各环节进行设计和实施,基于分布式稳定性理论,建设以持续测试平台、混沌工程平台、可观测性平台为核心的企业级混沌工程服务体系。

第三阶段从过渡阶段产品体系到应用系统稳定性综合整体解决方案的跨越。针对金融业业务特点、云原生分布式系统技术现状,基于混沌工程测试体系,以红蓝对抗等实战演练方式,把系统薄弱点和瓶颈点纳入到检查环节中,做到提前发现问题、解决问题、检查系统的应急保障,有效保障业务连续性、提升故障自愈能力。

3.实践成效及展望

结合金融行业面临落地混沌工程的困难与挑战,成熟的混沌工程应用不仅体现于技术,更注重在服务。目前,北银金科混沌工程平台已演进发展到第三阶段,整合技术与服务,全方位提供体系化的金融业务系统稳定性数字化服务,陆续在交易核心、微服务、信贷风控等多个场景实现了落地。混沌工程能力呈现“通用性”“自动化”“智能化”“可观测性”四方面优势,应用成效显著。

一是以“通用性”广泛满足异构场景需求。混沌工程平台具备广泛的通用性,可基于兼容的各类异构基础设施抽象出统一的实验能力,提供多维度的实验场景。统一封装丰富的面向资源的原子级的故障注入能力,用户无需关注底层差异,只需要关注实验编排和故障演练,做到拆箱即用。

二是以“自动化”显著提高运作效能。混沌工程平台融入云原生DevOps体系,在CI/CD中进行常态化故障演练,做到混沌实验自动化、常态化运行,切实实现“一次编排,到处运行”,同时“自动化”的安全保障做到可控,用户可以随时暂定、停止或者重新运行实验,也可基于某些系统资源的告警阈值自动终止实验。混沌工程平台实现了风险挖掘和度量的高度自动化,显著提升软件交付能力,提升了企业的工作效率。

三是以“智能化”智能演练及风险挖掘。混沌工程平台可智能化生成、推荐故障场景和示例,实现智能化故障根因定位,并针对故障实现部分场景自愈,降低用户使用难度。在实验运行过程中,以监控数据为基础,以AI算法为支撑,以专家经验为辅助,为企业提供了提升系统稳定性和可靠性的智能化保障能力,提高数据管控能力、智能根因分析能力、异常风险预测能力。

四是以“可观测性”深刻洞察数据监控和风险。混沌工程平台通过整合全链路监控、日志聚合分析、APM应用系统监控等技术手段,实现了实验全生命周期的数据、故障、风险的实时监控。通过实验数据度量混沌实验效果,能够全面地展示和定位系统的故障,为尽早发现、定位、分析和解决故障提供有力保障。

随着金融机构上云规模和应用深度大幅增加,北银金科为某金融机构提供了一系列基于IaaS+PaaS的混沌工程测试解决方案,验证了云原生业务系统的稳定性。在IaaS上将可信安全基础设施纳入到Kubernetes集群节点中,通过模拟节点级别的故障,验证不同公有云厂商、私有云服务器的可用性、可信操作系统系统与Kubernetes的兼容性与稳定性,以及对业务的影响。在PaaS上,通过对PaaS微服务组件模拟网络故障、服务不可用、机器资源满载等故障,验证了微服务组件的流量控制、熔断降级的可靠性。通过混沌工程实验,在实验中进行了300+个故障场景,800+测试用例,排除了50+项潜在技术风险,保障了金融机构业务系统云化部署的稳定性。

展望未来,北银金科将继续在金融业务系统安全稳定领域发挥自身优势,以守正创新驱动价值创造,不断深化稳定性体系的构建与应用,持续提升金融业务系统韧性,赋能金融行业创新发展,以更多创新成果助力数字化转型升级。

(栏目编辑:张丽霞)