来源 | 金科创新社
项目背景
邢台银行作为当地最具特色化和差异化的城商银行。近年来,业务的迅猛发展导致客户呈现爆炸式增长,业务系统对基础设施的横向扩展能力、动态调整功能的需求越来越强,基础设施的敏捷反应是业务快速发展的城商行基础设施建设之初的新需求。而大量基于开源架构的分布式、微服务架构需要大量的基础服务节点带来的机房能耗不堪重负、系统管理复杂性、数据一致性等问题特别突出。为满足业务连续性强监管年的各项科技指标,打造稳定的IT架构是金融行业信息科技建设最关键、最核心的要求。金融机构既要保持传统集中式架构的稳定性、可靠性、安全性方面的优势,又需要迎战互联网化、移动化、开源化等新趋势的挑战,既需要高可靠的IT系统,满足客户对金融业务7*24小时连续性的需求,同时又需要考虑如何基于云化架构并利用大数据分析、区块链等各种新技术实现从业务到技术的转型,提升金融机构竞争力,快速响应市场变化。
为了更好实现打造数字化银行、开放型银行、产品型银行的战略目标,快速满足业务需求,提升风险防控水平和经营管理水平,我行于2019年1月9日启动以新核心建设为中心,打造具有前瞻性的多中心多活云化IT架构为目标的项目群建设。命名为“祥牛创芯”工程。
“祥牛创芯”工程采用全新的核心系统及开放开源的Linux架构,通过4台IBM LinuxONE实现了全行80余套面向客户的业务系统及数据库的双中心双活高密度整合部署,并结合混合架构的统一云管平台,实现真正意义上同城应用层、数据层双活,并从被动式运维成功走向主动式运维。实现了基于开放+开源的技术路线,商用软件+开源软件相结合的模式推进IT架构的转型和创新,同时保障所有业务系统的高效运行和高度稳定!
创新点
“祥牛创芯”工程通过开放开源的平台实现【双中心双活,双中心多活】、【“以一顶百”高密度负载整合,稳敏兼顾】、【开源统一云化管理,一键部署,主动运维】三个层面的架构创新和实践,摸索出一套适合于城商行的前瞻性架构,真正做到少花钱、多办事、办实事。依据此创新点,未来,我行将着力探索多中心多活、高可靠与高可用的系统,为广大客户、为邢台百姓提供更加优质、便捷、高效、智能的金融服务,持续建设燕赵之地“多走一步的银行”。
技术实现特点
1、基于LinuxONE高密度整合架构,提升系统可用性及灵活性,简化IT架构复杂度。
通过高密度、集约化部署模式,我行将数据库、应用系统高密度整合,大幅节省总体建设成本,构建绿色数据中心。经测算,整个项目通过LinuxONE平台的高密度整合,将原先总共需要730个x86核和近104个Power核的数据库及应用系统,整合到4台LinuxONE平台上。
通过这样的部署方式,数据库的数量得到有效降低,运维团队工作量和部署难度也得到有效降低,数据库软件成本实现大幅度节省。在虚拟化软件方面,采用开源的KVM虚拟化平台节省软件成本,同时引入OpenStack云平台,提升团队开发创新能力。
2、标准化双中心双活,双中心多活
我行“祥牛创芯”工程项目实现数据库层双中心双活、应用层双中心多活的高可用解决方案的标准化。数据库层面通过跨机房Extended RAC技术实现双活,应用通过跨机房集群及负载均衡调度实现多活。其中,4台LinuxONE服务器上部署多套Oracle RAC,所有数据库全部实现双中心双活;共部署近百套业务系统,其中80余套面向客户交易的系统实现双中心多活。无论是从数据库还是应用系统层面,我行的双活/高可用覆盖率得到大幅度提升,同时带来更好的服务质量和客户体验。“祥牛创芯”工程项目上线后的运行情况显示,LinuxONE平台表现极其优秀。
3、建设云化管理平台及自动化运维平台,降低维护难度,提升运维管理自动化程度,面向未来。
为实现KVM虚拟化的云化管理和自动化部署,我行基于开源Openstack平台搭建了以LinuxONE平台为资源池的KVM私有云管理平台:
分别部署在两个数据中心的4台LinuxONE上的共计16个LPAR作为Openstack云的计算节点,按照物理机器或数据中心设计Available Zone,应用部署时按照资源负载、业务分类科学有效地分配到位于两数据中心的平行AZ中以保证可用性和负载均衡。在虚拟机层,由于应用服务器高可用集群的设计,个别Hypervisor或者单台物理机器的故障并不会造成应用服务中断。
在云平台的配置管理方面,选择自动化配置管理工具Ansible进行批量部署、变更和系统软件配置。通过Ansible软件编写动态生成Inventory的脚本,按照操作系统和应用服务器分类编写ansible role和playbook,并进行版本控制。通过批量配置管理可实现自动部署、更新应用程序等功能。
通过软件版本的统一,Openstack+KVM及自动化配置管理工具的结合,大幅度提升运维团队的工作效率,降低运维工作的复杂度,同时系统运行风险也得到有效控制。
4、Prometheus+Grafana可视化监控方案,化被动运维为主动运维,降低系统和业务运行风险,同时极大降低运维工作量。
通过zHMC Prometheus Exporter将zHMC通过REST API暴露的Metrics转换为Prometheus格式输出,集成到现有监控框架。通过Prometheus Server定期从配置好的作业和exporter中收集数据,通过定义好的告警规则,向AlertManager推送警告,通过Prometheus AlertManager按照预先定义的配置文件,对接收的警告进行处理,发出事件告警;使用Grafana通过PromQL查询Prometheus中存储的中存储的数据,将数据信息在可视化界面中展现,实现资源状态监控。
项目过程管理
1、需求分析
2019年1月-3月,完成既有基础架构的梳理、需求调研及架构需求设计,形成“祥牛创芯”工程需求工作书等文档。
2、架构选型及设计
2019年3月-5月,秉承开源开放、稳敏兼备的原则,对业内多家设备及架构设备进行调研及测试,最终选择LinuxONE LPAR + KVM + Openstack + Prometheus + Grafana的架构作为“祥牛创芯”工程主体架构,形成LinuxONE功能/性能/可靠性测试等文档
3、资源评估及容量规划
从原有竖井式架构向高密度整合架构转型,容量规划是最重要的一环,2019年4月-7月,我行调研待整合的所有服务器资源使用情况,结合LinuxONE的实际测试功能表现,进行缜密的规划,形成既有服务器资源使用情况说明、新架构容量规划等文档。
4、应用迁移及试运行阶段
2019年8月-11月,针对前期规划的应用、数据库整合方案,进行全方位的应用及数据库迁移验证及实施,并完成试运行。
5、项目正式上线
2019年12月“祥牛创芯”工程正式上线。
运营情况
“祥牛创芯”工程正式上线意味着我行所有的重要业务系统都运行在LinuxONE平台之上。这些业务系统涵盖核心、ECIF、渠道、柜面、ESB等,近百套业务系统,数据库及应用服务器100余套,全部部署和运行在4台LinuxONE之上。
以数据库为例,原环境有70多个Oracle数据库分散部署在Power小机环境、x86环境,并且采用了10.2及11.2的多个版本,绝大部分没有进行高可用部署。原环境中仅有核心、ESB、渠道等少量应用实施了高可用/双活保护。基于新环境下双数据中心距离优势,投产后新架构下所有A、B、C类业务系统数据库均实现高可用/双活保护,同时应用方面均实现了双中心多活多点接入,在地市级城商行中开创先河率先实现所有关键系统双活全覆盖!与众多分散的x86相比,新架构可更有效提升高可用覆盖的范围,为业务提供更广泛的风险防范能力。
此外,在应用迁移方面,此次整合项目涵盖银行业普遍使用的各类业务应用,涉及的应用编程语言主要为Java,其它语言还包括了C(渠道及文件传输平台), C++(ECIF), Python(POSP-POS服务器端程序)。涉及的中间件和工具软件包括(部分):Oracle DB、MQ、Message Broker、WAS、Weblogic、Tomcat、Ansible、KVM、OpenStack、Prometheus、Grafana等。在项目执行过程中,应用及数据的迁移工作整体推进非常顺利,为整个新核心项目群的按期投产赢得了宝贵的时间。
投产后整体性能表现优异,联机时段整体开销在20-30%的水平。批量窗口由原先的数小时大幅缩减到40分钟之内。
项目成效
1、基于弹性架构实现高密度整合,提升系统可用性,简化IT架构复杂度,提高双活/多活覆盖率
“祥牛创芯”工程通过4台LinuxONE服务器整合近百套业务系统,其中80余套面向客户交易的系统实现了双中心多活,数据库层面通过跨机房Extended RAC技术实现双活,应用通过跨机房集群及负载均衡调度实现双中心多活。
2、全面拥抱开源+开放的架构,Openstack+KVM云化管理及自动化部署工具,提升运维管理自动化程度,变被动运维为主动运维
通过软件版本的统一,Openstack+KVM及自动化配置管理工具的结合,大幅度提升运维团队的工作效率,降低运维工作的复杂度,采用LinuxONE,使我行摆脱了Power小型机、x86物理机、云平台和超融合平台多个平台混合使用的多而杂的不利局面,降低运维工作难度,同时系统运行风险也得到有效控制。
基于开放+开源技术路线实现架构转型并全速推进云平台建设,采用商用软件+开源软件相结合的模式推进IT架构的转型和创新,同时保障了所有整合的业务系统的高效运行和高度稳定!在开源技术的采用方面,主要涵盖了部署、配置及监控3个主要方面:
云化高效率部署:利用KVM+OpenStack构建IaaS云平台,针对所有应用虚机实现了基于模板的高效、自动化部署;
自动化配置变更:基于Ansible实现快速的跨多个逻辑分区或虚机环境批量的配置变更;
整体及局部监控:基于Prometheus + Grafana实现全面监控。另外Grafana存在多种标准化展示模板,可以大幅简化实施过程并大幅减少工作量。
通过上述模式,我行大幅提升运维管理效率的同时还实现了从被动运维到主动运维的转型,同时还变得更加的开放和自主可控,降低整体的投入需求!
3、总体成本大幅降低
通过LinuxONE平台的高密度整合,原先总共需要730个x86核和104个Power核的数据库及业务系统,被整合到LinuxONE平台的上。数据库采用多租户方式整合,搭建多套RAC,提高部署效率,简化部署复杂度。通过这样的部署方式,数据库的数量得到有效降低,节省数据库许可费用,同时运维团队工作量和部署难度也得到有效降低。
在虚拟化软件方面,原先在x86平台上采用的是VMware软件。新核心LinuxONE平台采用了LPAR结合KVM的虚拟化方案,每台服务器上部署4个应用LPAR,总共16个LPAR全部采用KVM虚拟化技术。由于KVM是开源技术,软件成本为0,原先用于商用的虚拟化软件许可费用得到了节省。
经测算,在应用这一方案后,配电费用需求比率为之前的63%,软件费用降低为之前的28%,机房面积节省25%,网络端口成本节省40%,5年期硬件总体拥有成本节省33%,5年期软硬件总体成本节省53%。可以说是“少花钱,多办事”。
经验总结
IT建设面对的是主机、存储、网络、数据库、操作系统、中间件、驱动软件、应用软件等一系列组件组成的全生态建设过程。邢台银行新核心在建设期间,既在整合、优化自身业务系统的架构、需求,又在实践LinuxONE平台如何快速适应国外、国内混合软硬件环境,整个邢台银行新核心架构中,既存在IBM、Oracle、EMC的经典组合,又存在国内应用厂商自研软件、国内网络设备的自研标准不统一的国内组合,整个建设周期,面对新基础硬件平台、新应用软件,要实现应用、网络、数据库、存储双活架构,某一个环节出现问题,就需要协调整个IT生态系统的专家级工程师来解决,面对新架构、新平台,要迎难直上,不畏艰险,勇于创新。
在开源软件与方案的选择上,建议选择成熟的组件或架构,能更多的避免实践过程中会遇到的问题,在开放开源的道路上,选择与国内外能力较强的厂商合作,即便遇到棘手的难题,也能获得具备完整技术能力与丰富经验的厂商的支持。
邢台银行“祥牛创芯”工程采用开放开源的架构,通过全部 IT 系统的整合,集中、缜密的架构规划,整合分布式的数据库及应用,实现全行包括核心、ECIF、渠道,柜面、ESB等近百套重要业务系统,打造百余套数据库及应用服务器的高密度整合的多中心多活数据中心,构建了一套前瞻性的“稳敏双态IT架构”,同时建设统一的云化平台及绿色数据中心,为支撑未来10年或以上的客户和业务增长打下坚实的基础。
版权声明及安全提醒:本文转自网络平台金科创新社,文章仅代表作者观点,不代表「金融文库」立场。相关版权归原作者所有,「金融文库」仅提供免费交流与学习,相关内容与材料请勿用于商业。我们感谢每一位原创作者的辛苦付出与创作,如本转载内容涉及版权及侵权问题,请及时联系我们客服处理(微信号:JRwenku8),谢谢!