云原生技术领域的探索与实践

导读 民生银行以人民银行《金融科技(FinTech)发展规划(2019-2021)》为指引,坚持创新发展理念,科技与业务深度融合,积极变革科技结构,加快

民生银行以人民银行《金融科技(FinTech)发展规划(2019-2021)》为指引,坚持创新发展理念,科技与业务深度融合,积极变革科技结构,加快技术能力向业务价值转化。2019年和2021年,民生银行分别发行了《中国民生银行科技金融战略发展规划(2019-2022年)》和《中国民生银行五年发展规划(2021-2025)》。在技术能力方面,民生银行基于多年在SOA、分布式、微服务、云原生研发等方面的经验积累和沉淀,在技术栈中构建了统一、健壮、灵活的云原生技术平台和能力体系。d领域,推动了应用架构和技术架构的持续变革,以及技术治理和支持业务交付能力的持续提升。

中国民生银行信息技术部总经理助理李晓东

云原生转型的整体规划

民生银行的信息科技架构经历了从电子银行、网上银行、手机银行到场景金融的几个不同阶段的演进。随着架构的演进,民生银行的技术架构经历了从集中式、SOA、分布式到云原生的不断发展过程。

民生银行从2019年开始进入场景金融阶段。其标志性事件是零售综合金融服务平台、企业综合金融服务平台、金融市场综合金融服务平台的推出,逐步形成了渠道层、场景层、业务中台、数据中台、AI中台以及具有民生特色的基础金融产品和服务的应用架构体系。随着应用架构的转型,民生银行的技术团队也在推进技术架构的转型和探索,尤其是云原生系统能力的沉淀和快速发展。

云本地能力建设

民生银行云原生平台体系核心包括基础软硬件云服务IPaaS、应用云服务APaaS、后端微服务框架Tesla、前端微服务框架Apollo、DevSecOps工具集、云安全能力平台六大部分。

1.基础软件云平台(IPaaS)。根据民生银行自身需求,IPA兼容各种底层环境,打造总行数据中心各种基础软硬件的云管理和服务,实现自动自助提供计算能力和各种软件服务的能力,包括数据库、中间件、缓存、大数据、存储等标准化服务。同时,容器平台提供了云原生的基础平台能力,为云原生业务场景提供了强有力的支持。

IPaaS的建设思路是为万物提供服务,以云服务的形式提供基础软硬件产品的能力,快速响应业务需求,提高稳定的生产运营能力和自我服务能力。

2.应用云平台(APaaS)。APaaS是民生银行下一代金融级应用基础服务平台。APaaS建立在IPaaS巨头的肩膀上,以应用为核心,以标准化的应用模型和全面的集成与服务为核心,为开发者提供一站式、端到端、基于场景、引导式的研发;d体验。借助模板和配置,可以实现标准化的工程初始化、组件集成、服务集成、代码仓库、流水线、微服务治理、中间件、部署架构、日志记录和监控等。

APaaS建设前期的核心工作是沉淀和整合。一方面,R & ampd标准和规范沉淀在平台上,以服务的形式提供给开发者;另一方面,它整合了前后台框架、云组件、治理组件和DevSecOps能力,提供一站式体验。通过这个过程,应用在APaaS、原生规范、原生标准和原生云化上开发。

随着APaaS的不断建设和成熟,民生银行技术开发团队逐渐沉淀出集技术服务和业务服务于一体的领域方案。通过在应用程序开发中沉淀领域模型,它形成了平台级的能力,降低了

3.后端微服务框架(Tesla)。特斯拉是该行自主研发的金融级云原生后端开发平台。它引入了基于模块化架构的多种互联网组件,为我行基于分布式和微服务架构的应用系统提供了统一的底层应用开发平台、运营支撑系统和最佳实践方法论。

特斯拉的特点可以概括为六个部分。第一,全方位研发;d支撑能力,构建开发框架、基础设施和领域解决方案,多角度全方位构建完整的云原生应用开发运营生态。二是稳定优先的微内核架构,实现极致的性能和稳定性,保证关键金融应用系统的持续稳定运行,应对各种业务爆发。第三,是可持续积累的外挂模式。通过应用和反馈的良性循环,不断丰富和完善支持各种金融场景的插件系统,不断赋能应用研发。第四,是轻量级的系统运行模式,解耦对商业中间件产品的直接依赖,满足技术可控的要求。五是平滑敏捷演进方案,设计实现存量异构技术平台平滑演进的通用方案,探索存量系统技术平台标准化的最佳实践模式。第六,开放高效的支持能力,为开发者提供研发;d工具箱,如一键下单系统建设、在线问题处理、“一目了然”架构,从而提高交付效率和质量。

4.前端微服务框架(Apollo)。阿波罗是我行自主研发的,非常适合银行业务。

企业级前端应用开发平台。针对银行大型前端应用交付遇到的如缺乏前端企业级统一的技术框架和研发规范、缺乏高效及高质量的交付能力、缺乏持续提升前端用户体验的能力等常见痛点,提供技术平台和解决方案的支撑。

  Apollo基于云原生的理念和技术,实现了前端云应用开发平台,主要功能包括前端应用开发框架和架构体系、前端云IDE、前端设计研发协作服务、前端组件服务、前端自动化测试组件服务、前端云持续集成服务、前端云运行服务、前端应用可观测体系和前端低代码应用开发平台。Apollo的主要技术特点可概括为7大部分:一是基于组件化和模块化、逻辑视图分层、数据和模型驱动视图、领域驱动架构等应用架构思想,实现了统一的企业级前端研发范式;二是采用微内核加插件的模式,统一抽象前端企业级工程配置,实现了可动态扩展及可持续演进的能力;三是支持各种主流的前端应用类型,包括单体、微前端、前后端一体化等工程类型,以及PCWeb、移动端H5、小程序、桌面应用、大屏应用等应用类型,全面支持我行各种业务类型;四是支持从应用设计、应用研发、联调测试、持续集成到部署运行的全流程云服务能力支撑,实现全流程敏捷研发;五是前端组件、模板等研发资产实现标准化、可持续的积累和共享能力,最大程度实现面向组件的研发和复用,提升交付质量和效率;六是全面的前端应用可观测指标,覆盖持续集成阶段和线上运行阶段,帮助应用开发者持续提升应用质量和用户体验;七是企业级的前端低代码平台,支持我行领域类和通用类业务交付,实现低代码的研发模式,提升研发产能。

  5.DevSecOps。民生银行基于DevOps和“应用原生安全”的理念,持续建设DevSecOps体系,包括研发交付制度、规范、流程和工具集。目前DevSecOps体系涵盖了从需求管理、任务管理、代码管理、持续集成、代码扫描、测试管理、质量门禁、制品晋级到持续发布的研发交付全生命周期。

  民生银行DevSecOps有三个核心关键字:自动化、左移和质量门禁。所谓自动化,即以持续集成流水线为载体,集成了代码扫描、安全检测、单元测试、接口测试、SQL扫描、配置更新以及应用探活等,对于开发人员,只需驱动流水线,即可自动完成。所谓左移,即质量分析、安全分析、生产分析等尽可能左移,向开发阶段延伸,尽早发现问题、尽早解决问题。所谓质量门禁,即将安全、质量等要求固化到流程里,作为制品晋级的必要条件。

  6.云安全。民生银行基于“零信任安全防御”理念,构建一体化安全防御体系,将安全威胁检测、发现和阻断能力与云原生架构的各层基础组件有机结合,实现了动态化的容器安全防护和精细化、智能化的云上安全访问控制,提升云上应用安全风险发现的广度、深度和及时性。同时持续夯实数据中心的基础安全防御,实现云安全防御设施与基础安全设施的自动化联防联控,有效保障云原生平台及其上业务的安全稳定运行。

  云原生应用实践

  云原生能力建设的目的是支撑和驱动云原生架构转型升级和架构治理。针对实际的应用上云场景,民生进行了从上云评估、上云方案、上云样板间、云原生认证到领域PaaS建设等多种应用实践。

  1.应用上云评估体系。目前民生银行现存数千个运行单元,上千个SOA模块,几百个集成系统。针对如此大量的IT资产,如何进行云原生转型,需要方法论的指导和支撑。针对这个问题,民生科技基础技术团队制定了上云评估指标体系,针对必要性、可行性两个方向,从业务、技术、工程三个维度,对每一个模块和服务单元进行量化评估。模块具体的云原生转型方案,需根据业务的紧要程度和关键能力的优化程度,进行评估和设计,并制定有针对性的上云策略和演进方案。

  2.一揽子上云方案。我们把现有金融应用分为六大类:联机交易类、通道类、前后端分离类、批量业务类、计算密集类和领域平台类。针对不同类型的应用,设计不同的模板,把相应的各维度指标和推荐方案提供给大家,帮助用户进行应用转型设计。针对云原生转型中的技术难点,如混合部署、网络、会话保持等,也提供了标准化模板和适配性的解决方案。同时将这些模板和方案固化到APaaS平台上,为开发人员提供白屏化能力。

  3.上云样板间。不同应用的特征不同,相应的云原生建设方案也有所不同。基于此,我们提供上云样板间,供用户在上云设计时参考和复制。例如,对于联机交易类应用(如支付平台),提供针对性的云化模板,并结合模板制作对应的联机交易类应用样板间。从应用建模、架构拆分、基础设施接入、配置分离、上云迁移、节点和会话的无状态化改造、中间件适配等方面入手,适配和打造样板间。

  4.云原生认证。一切的核心是人才。为了加速企业级的云原生转型升级,类似阿里ACP,我们设计了民生银行的云原生认证体系。2021年,研发类岗位全员参加了云原生相关的培训、学习、练习和考试,持证上岗。

  5.领域PaaS实践。在为交付团队提供云原生服务的同时,采用联合共建的方式,APaaS平台逐渐沉淀了各类领域PaaS,如面向移动应用的FIREFLY PaaS、面向零售场景的SPaaS、面向员工渠道的CPaaS等。类似容器、Service Mesh到Serverless的技术演进过程,APaaS通过从原始云原生技术平台逐步生长出专业领域PaaS分支的过程,体现了民生银行科技团队将云原生能力逐步应用到赋能业务的过程。衍生领域PaaS可以使开发交付工程师更多地专注在业务需求的实现方面,降低对于底层基础设施技术细节的关注,并逐步过渡到业务交付开发的低代码和白屏作业模式。

  (1)FIREFLY PaaS。FIREFLY PaaS是我行自主研发的移动应用开发运营支撑平台,贯穿了研发—集成—运行三态,起源于FIREFLY平台,并基于APaaS进行扩展与增强,逐步构建出灵活可控的基础技术框架,并积累了大量可复用组件,建设了可靠的公共基础设施。FIREFLY PaaS主要包含前端开发框架FIREFLY Apollo、客户端开发平台FIREFLY Client等框架和组件服务,广泛应用于全行移动应用。同时FIREFLY PaaS还提供了移动应用的通用基础服务和运营支撑服务,共同为移动应用的快速开发、安全保障、数据运营提供强有力支撑。

  (2)场景PaaS(SPaaS)。SPaaS(Scenario-PaaS)是APaaS在民生银行场景中台架构领域的典型沉淀,其基于云原生基础能力及场景化中台体系架构,面向场景应用开发人员,提供了场景应用全生命周期服务平台,涵盖了场景开发、部署、运行、测试、监控及运行评估等过程。该平台主要包括四部分能力:一是统一管理的场景应用租户,基于APaaS模块管理、资源管理能力对场景应用租户进行统一管理;二是一体化的场景开发部署流水线,基于事件驱动、管理驱动和交易驱动场景各自的业务和技术特性,以及软件工程支撑平台(PSET)和自动化运维平台能力,构建三大驱动场景开发部署流水线,支持标准化、组件化、配置化的场景低代码开发模式及标准化的场景部署流程;三是高效运行的场景引擎,基于派迪(PADDE)场景感知响应模型和三大场景驱动引擎(事件驱动场景引擎、管理驱动场景引擎、交易驱动场景引擎)构建高效运行的场景引擎;四是平台化的场景管理和监控能力,构建场景应用的场景仓库,并对场景进行统一管控和监控,打造平台化的管理和监控功能。通过SPaaS,民生零售业务研发团队已经实现了零售场景交付和管理过程的高度白屏化和低代码化。

  (3)员工渠道PaaS。员工渠道PaaS是基于APaaS应用模型和云基础模块能力建设的员工渠道领域的云平台。该平台具有云原生敏捷开发、多租户领域组件和服务、多维度的技术管理等特点。员工渠道PaaS从贷款平台整合、大运营平台整合等项目入手,梳理、抽象和整合领域架构的公共组件和服务,推进技术架构和研发模式向云原生演进。平台从开发态、运行态和管理态全面支撑员工渠道应用的建设,交付团队只需专注于业务逻辑的实现。

  (4)分行特色业务应用PaaS。本着总分协同、管理、作业一体化的建设理念、开发共享、弹性扩展、安全管控的设计原则以及微服务、共享云的设计思路,民生银行基于APaaS建设了分行特色业务应用PaaS。平台实现了分行特色业务应用的技术支撑架构标准化和规范化,提升了对分行业务的支持响应能力,助力打造民生银行分行特色业务领域“技术+业务”双轮驱动的生态圈。

免责声明:本文由用户上传,如有侵权请联系删除!

猜你喜欢

最新文章