在网商银行金融级云原生分布式架构的探索与实践

简介: 网商银行正在构建金融级云原生分布式架构,迎接云原生时代的到来。

网商银行从诞生之日起就是一家将核心系统架构在云上的银行,经过多年建设,逐步完成了两地三中心架构到异地多活云单元架构的升级。中国人民银行出台的《金融科技(Fin-Tech)发展规划(2019-2021年)》提出合理布局云计算,统筹规划云计算在金融领域的应用,随着云计算技术不断发展,云原生技术日趋成熟,云基础设施的重大变化带来研发场景、软件生产模式的一系列变革,网商银行密切关注业内发展趋势,目前正在构建金融级云原生分布式架构,为业务发展提供安全、稳定、高效和敏捷的基础设施能力,迎接云原生时代的到来。

—本文首发自“金融电子化”公众号

网商银行技术架构演进

网商银行经历了三次大的技术架构变迁。从建站开始,网商银行就是架构在云计算基础设施之上,使用云平台架构支撑业务开展,交付模式上使用基于经典虚拟机的发布包模式。随着业务量增长,两地三中心的架构已经无法满足业务发展需求,需要升级扩展性更好的架构,另外银行金融业务的属性需要在容灾能力上有更高的要求,因此网商银行从传统的云架构升级到了异地多活云单元架构。云原生技术持续发展,为我们带来了安全可信、节约成本和敏捷开发的能力,随着业务的发展,对于运维效率、扩展性、可迁移性、精细化管控的更高要求驱使着基础设施往云原生的架构体系演进,网商银行拥抱新兴技术架构,正在逐步演进到云原生架构。

金融级云原生分布式架构为业务带来的价值

当前云原生社区持续火热,云原生计算基金会(CNCF)在2018年为云原生进行了重新定位:云原生技术有利于各组织在公有云、私有云和混合云等新型动态环境中,构建和运行可弹性扩展的应用。云原生的代表技术包括容器、服务网格、微服务、不可变基础设施和声明式API,这些技术能够构建容错性好、易于管理和便于观察的松耦合系统。结合可靠的自动化手段,云原生技术使工程师能够轻松地对系统作出频繁和可预测的重大变更。

随着云原生技术的不断迭代演进,云原生产品能力也在不断成熟和完善,云原生架构逐渐成为多家互联网机构及金融行业机构架构选型方向。容器编排Kubernetes技术承载了云原生时代统一资源调度的目标,通过统一资源调度,可以有效提升资源利用率,极大节省资源成本,通过在弹性资源交付、集群规模化服务以及技术风险与自动化运维上持续建设能力,让Kubernetes逐渐成为下一代云操作系统基础设施。服务网格技术是云原生架构核心,与SOA体系相比,服务网格将RPC、消息、DB访问等基础底层能力下沉,与业务系统部署解耦,给业务系统带来透明的通信基础设施,减轻业务负担,加速基础设施演进速度。基于云原生的混合云弹性架构为业务低成本快速扩缩容提供了可行性方案,跨云弹性资源统一管控实现了资源灵活调度,根据业务量进行弹性云的资源动态使用,进一步降低了资源成本。

网商银行云原生架构升级的挑战与目标

1.云原生架构升级挑战。首先是基础设施的大面积更新换代,从底层的资源调度到上层的PaaS、中间件都要做云原生架构的适配改造,以满足应用层云原生接入要求;其次是架构升级平滑演进的问题,在平台产品层面需要做到已有单元化架构和新的云原生架构的兼容,保障架构的平滑过渡,在研发模式层面,需要从传统的代码包交付模式过渡到容器镜像为载体的云原生交付模式,整个过程要尽可能少的改变用户操作习惯。再次是架构升级带来的运维体系及安全生产的挑战,新的云原生产品的引入需要建设配套的基础运维能力,SaaS层应用运维模式的变化也给运维人员带来了新的挑战,另外新架构的引入带来了高可用、稳定性及变更管控等安全生产的挑战,需要不断建设配套的技术风险能力。

2.云原生架构升级目标。首先完成云原生基础设施产品的落地,并完成已有单元化架构平滑升级到云原生架构,为架构持续演进提供底层能力支撑。其次通过使用云原生新技术带来研发效能、资源效能、安全加固和运维能力提升,基础设施能力下沉后具备独立演进能力,降低应用开发投入成本,服务网格技术可实现业务低成本安全加固,降低业务风险,统一资源调度和混合云弹性架构支撑资源弹性伸缩,提高资源利用率降低资源成本投入,建设新的运维体系支撑云原生运维模式,实现可持续交付;再次网商银行探索云原生架构升级路径,沉淀一整套从经典架构迁移至先进架构的方法实践和产品,为行业提供技术实践参考。

网商银行云原生架构的探索与实践

1.混合云弹性架构。在云计算逐渐普及的情况下,无论是互联网公司还是传统IT企业都倾向于不被一朵云绑定,混合云架构已经成为一个大的IT系统演进趋势。网商银行基于统一的容器服务(兼容Kubernetes)进行应用的部署,可以解耦应用跟IAAS云底座的锁定关系,实现一个镜像多朵云部署。此外,网商银行在云单元架构的基础上通过业务链路动态识别技术,打造了按业务链路级别进行多云之间的流量弹入弹出能力,可以便捷高效地在多朵云之间进行流量调度,解决互联网时代面向突发流量及促销类活动的弹性扩缩容成本和效率问题。

2.不可变基础设施。传统的可变基础设施是基于物理机或虚拟服务器进行应用的部署,在不同环境之间可以通过动态配置下发或者实时访问外部服务更新应用的机器状态,整个基础设施一直处于一个变化的过程中,对于一些需要回滚的运维场景会比较复杂。网商银行采用镜像化部署模式,将应用依赖的基础设施(含配置)打包成不可变的镜像,可以做个多环境统一镜像,极大地降低了应用多环境的部署成本,同时对自动轮转替换、自动回滚等运维动作更友好,提升了基础设施运维的自动化水平。

3.服务网格。服务网格是网商银行下一代云原生架构中非常重要的一个基础设施,它把原来通过SDK集成的一些网络通信的能力下沉到Sidecar中,包括基本的RPC、消息、DB访问能力,以及在此基础上的服务发现、熔断、限流、流量管控、数据库分库分表的能力,以此给业务系统带来较为透明的通信基础设施,将基础设施的迭代演进跟业务系统解耦,让业务研发专注于业务逻辑,减轻业务系统的负担,提升业务系统及基础设施的迭代效率,实现专业的团队做专业的事情。另外Sidecar的引入也给业务系统的多语言发展提供了更大的可能性,通过服务网格技术可解决多语言、多技术栈之间的互连互通问题,有利于构建一个松耦合银行系统架构。

4.安全可信。网商银行在云原生架构探索实践过程中特别注重架构的安全能力,不断建设云原生基础上的安全可信架构。作为一家面向互联网的数字化银行,网商银行需要一套兼顾高效率与高安全性的IT系统架构,基于服务网格网商银行实现了核心应用服务的安全访问控制,整体上形成了核心系统的纵深防御能力覆盖,在保证业务研发效率的同时可以大幅度提升安全性。

5.离在线混部。随着集群规模化的提升,在线业务集群和离线集群资源池逐步变大,由于存在业务低峰期,在线和离线使用独立的资源池会遇到资源利用率的问题,一个比较明显的现象就是集群的资源分配率很高但是实际利用率偏低。为了解决资源利用率问题,网商银行在云原生架构建设过程中进行在线和离线集群混合部署,统一资源调度,以资源隔离和动态调整为基础,将不同属性类型的在线服务和离线计算类服务精确进行组合,利用高效调度算法和智能化的容量计算模型等技术手段完成资源的合理利用,提升资源错峰高效利用水平,降低IT成本。

总结及未来展望

云原生技术带来了更高层次的基础设施抽象,让研发的关注点从基础设施进一步分离,聚焦上层业务逻辑实现。网商银行通过探索和实践云原生架构升级,逐步落地了云原生相关的技术,为网商未来业务发展提供了先进的技术支撑,为架构持续演进打下了基础。面向互联网的数字银行IT系统设计越趋复杂,在业务需求快速变化的情况下,微服务的数量也呈指数级增长,传统的运维模式支撑如此大规模的分布式服务运维变得艰难,云原生架构简化了业务系统基础设施,更利于构建自动化的运维体系,降低人的介入难度。此外,随着银行业务的复杂化,金融核心组件的抽象是一个大趋势,中台化架构已经逐渐成为新一代软件系统集成模式的重要方向。在强调业务核心组件复用能力的同时,如何保证业务系统迭代的效率是需要面临的问题。在云原生的基础上,一些新的技术为研发效能提升提供了新的思路,比如Serverless等,云原生架构的落地,为银行基础架构在容量管理、运维管控等能力向自动化、智能化拓展打开了更广阔的发展空间。

金融行业的数字化转型需要构建有力的技术支撑体系和IT能力,网商银行期望通过自己的云原生架构落地实践为业界提供借鉴经验,也希望与同行共同探索未来金融行业的架构转型之路。

相关文章
|
21天前
|
Kubernetes Cloud Native 微服务
探索云原生技术:容器化与微服务架构的融合之旅
本文将带领读者深入了解云原生技术的核心概念,特别是容器化和微服务架构如何相辅相成,共同构建现代软件系统。我们将通过实际代码示例,探讨如何在云平台上部署和管理微服务,以及如何使用容器编排工具来自动化这一过程。文章旨在为开发者和技术决策者提供实用的指导,帮助他们在云原生时代中更好地设计、部署和维护应用。
|
21天前
|
Cloud Native 持续交付 开发者
云原生技术在现代企业中的应用与实践####
本文深入探讨了云原生技术的核心概念及其在现代企业IT架构转型中的关键作用,通过具体案例分析展示了云原生如何促进企业的敏捷开发、高效运维及成本优化。不同于传统摘要仅概述内容,本部分旨在激发读者对云原生领域的兴趣,强调其在加速数字化转型过程中的不可或缺性,为后续详细论述奠定基础。 ####
|
8天前
|
弹性计算 Java 关系型数据库
Web应用上云经典架构实践教学
Web应用上云经典架构实践教学
Web应用上云经典架构实践教学
|
11天前
|
Cloud Native 安全 Java
铭师堂的云原生升级实践
铭师堂完整经历了云计算应用的四个关键阶段:从”启动上云”到”全量上云”,再到”全栈用云”,最终达到”精益用云”。通过 MSE 云原生网关的落地,为我们的组织带来了诸多收益,SLA 提升至100%,财务成本降低67%,算力成本降低75%,每次请求 RT 减少5ms。
铭师堂的云原生升级实践
|
10天前
|
Cloud Native 安全 Java
杭州铭师堂的云原生升级实践
在短短 2-3 年间,杭州铭师堂完整经历了云计算应用的四个关键阶段:从“启动上云”到“全量上云”,再到“全栈用云”,最终达到“精益用云”。也从云计算的第一次浪潮,迈过了第二次浪潮,顺利的进入到了 第三次浪潮 AI + 云。
|
10天前
|
Cloud Native
邀您参加云原生高可用技术沙龙丨云上高可用体系构建:从理论到实践
云原生高可用技术专场,邀您从理论到实践一起交流,探索云上高可用体系构建!
|
16天前
|
运维 Kubernetes 调度
阿里云容器服务 ACK One 分布式云容器企业落地实践
阿里云容器服务ACK提供强大的产品能力,支持弹性、调度、可观测、成本治理和安全合规。针对拥有IDC或三方资源的企业,ACK One分布式云容器平台能够有效解决资源管理、多云多集群管理及边缘计算等挑战,实现云上云下统一管理,提升业务效率与稳定性。
|
21天前
|
Kubernetes Cloud Native API
云原生入门:从理论到实践的探索之旅
本文旨在为初学者提供一个关于云原生技术的全面介绍,包括其定义、核心原则、关键技术组件以及如何将这些概念应用于实际项目中。我们将通过一个简易的代码示例,展示如何在云原生环境下部署一个简单的应用,从而帮助读者更好地理解云原生技术的实践意义和应用价值。
|
21天前
|
运维 Cloud Native 持续交付
云原生技术深度探索:重塑现代IT架构的无形之力####
本文深入剖析了云原生技术的核心概念、关键技术组件及其对现代IT架构变革的深远影响。通过实例解析,揭示云原生如何促进企业实现敏捷开发、弹性伸缩与成本优化,为数字化转型提供强有力的技术支撑。不同于传统综述,本摘要直接聚焦于云原生技术的价值本质,旨在为读者构建一个宏观且具体的技术蓝图。 ####
|
23天前
|
运维 Cloud Native 开发者
云原生技术入门与实践
在云计算的浪潮中,云原生技术以其独特的优势和魅力吸引了越来越多的开发者和企业。本文将从云原生技术的基本概念、核心组件以及实际应用三个方面进行详细介绍,帮助读者更好地理解和掌握这一新兴技术。同时,文章还将分享一些实际案例和经验教训,让读者能够更深入地了解云原生技术的应用场景和发展趋势。
38 5

热门文章

最新文章