银行信息系统高可用技术应用研究

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

栏目编辑:叶纯青 E-mail:yecq66@

银行信息系统高可用技术应用研究

■ 中信银行重庆分行 申庆华 刘剑锋

摘 要:银行信息系统作为银行业务正常运作的重要支撑平台,一旦出现故障,轻则引起业务中断,重则可能导致业务局部甚至整体瘫痪。本文根据当前银行信息系统的实际运维情况,结合部分业界主流的方法和技术,从接入层、应用层、数据库、存储等方面探讨银行信息系统的高可用,以保障信息系统为业务应用提供可持续性服务。

关键词:高可用;双活;负载均衡;

热备

作者简介: 申庆华(1984-),男,湖南邵阳人,工学硕士,供职于中信银行重庆分行,信息技术部经理,研究方向:系统运维管理; 刘剑锋(1974-),男,重庆人,高级工程师,供职于中信银行重庆分行,信息技术部总经理,研究方向:系统运维管理、 软件开发。

一、引言

银行业务连续性管理既是监管的要求,也是银行全面风险管理的有机组成部分,反映了一家银行IT系统的建设能力和综合运营能力。业务连续性管理是指为有效应对重要业务运营中断事件,建设应急响应、恢复机制,以保障重要业务持续运营的一整套管理过程。在银行业务运营中断的各类事件中,由于信息系统故障而引起的信息系统服务异常、重要业务停止运营占据了大多的。业务中断会对银行造成财务损失、声誉受损,严重的会产生社会金融风险。因此,需要银行根据业务连续性目标,建立和完善信息系统高可用方案,如采用双机热备、负载均衡、服务器集群、存储数据同步复制等高可用技术。

二、高可用概述

高可用系统是指当系统失效时,数据不会丢失并且

可在合理的时间内恢复到失效前的工作状态,与之相关的概念有平均无故障时间MTTF (平均正常运行多长时间才发生一次故障)、平均故障恢复时间MTTR (故障后到恢复正常运行所平均花费的时间)等,系统的可用性使用MTTF/(MTTF+MTTR)这个公式进行度量,计算结果就是IT运维上常说的X个9,以一年计算周期为例,“3个9”,即(1-99.9%)×365×24=8.76小时,表示该系统在连续运行1年时间里最多可能的业务中断时间是8.76小时,“4个9”则是52.56分钟。在系统恢复过程中,最关键的衡量指标有两个:一个是RTO,另一个是RPO。RTO (Recovery Time Objective )类似于MTTR,用来衡量系统从故障发生到恢复所需的时长,反映了系统的故障恢复能力;RPO (Recovery Point Objective )衡量数据能够恢复到的时点,即能容忍的最大数据损

失,反映了系统的数据恢复能力。

本文将从接入层、应用层、数据库、存储等方面

栏目编辑:叶纯青 E-mail:yecq66@

分布式数据库等方式来实现。

应用程序和数据库的高可用与存储的高可用密不可分,需利用RAID技术、复制技术、存储双活机制来保证存储层的高可用。

服务器及设备之间的连接和数据传输需要高可用的业务网络和存储网络提供支撑和保障。

互联网区分层物理拓扑,采用分层结构设计,以满足互联网区的高可用要求及安全规范要求,其中,Nginx服务器组与硬件负载均衡设备属于接入层范畴,Web服务器组与App+DB服务器组分别属于应用层和数据库层范畴,相关交易数据均被保存在存储设备上。该区域内部署的系统使用了负载均衡、VMware虚拟化、双机热备、MySQL主从库等高可用技术方案,

探讨银行信息系统的高可用。如图1所示。备、图2 互联网区分层物理拓扑

栏目编辑:叶纯青 E-mail:yecq66@

(一)双机备份

双机备份一般有一主一备、两主互备的模式,根据RTO不同的时间要求分为热备和冷备。一主一备热备模式采用两台服务器部署相同应用,主备机数据保持同步,通过心跳网络探测对方状态。当系统出现异常时,通过切换脚本可自动将应用切换到备机,有效缩短RTO时间。理想情况下,主备切换可在5分钟内完成,该方式备机未承载业务,资源使用率仅为50%。而在两主互备模式中,主备机同时分别承载不同业务,提升了资源的使用率,当其中一台服务器出现故障后由另外一台服务器承载全部业务。热备方式目前主要依靠操作系统层次的高可用性和各种集群技术实现双机热备,包括RedHat的RHCS,HPUX的MC,AIX的PowerHA等,而冷备方式在应急切换时相对而言耗时较长,因此,其RTO相对较长。

(二)多主一备

多主一备模式是多个系统共用一个备机,可以节约服务器资源,备机的物理配置需不低于组内配置最高的服务器,这种情况配置较为复杂,日常需确认多个系统的配置在备机上部署正确且互不干扰。

(三)服务器虚拟化

服务器虚拟化(或称“主机虚拟化”)是通过虚拟化软件(如VMware)将传统的若干台物理主机的CPU、硬盘、内存等硬件资源整合成一个逻辑的资源池,从资源池中可以划分出几十个甚至几百个虚拟机(VM ),每个虚拟机对外提供单独的服务。

以VMware为例,借助vSphere vMotion,运行中的虚拟机可以从一个主机迁移到另一个主机,而且不会对终端用户造成任何影响,无需安排停机时间或中断业务运营即可执行服务器的维护和升级。利用

vSphere Storage vMotion可以将虚拟机磁盘文件从一个数据存储迁移到另一个数据存储,而不会中断系统服务。因此,采用服务器虚拟化技术,当资源池中某台物理主机故障后,应用将自动迁移至其他健康主机上,

提供统一的接入,主要分为硬件负载均衡和软件负载均衡两种方式。负载均衡技术除了可以将用户的请求经过负载分析之后分配到应用服务器集群中,还能实现对服务器健康状态的实时监控,当检测到服务器故障时,新的请求将分配给其他可用的节点。

(一)硬件负载均衡

硬件负载均衡一般是采购专业厂商的硬件负载均衡设备,常用的硬件负载均衡设备包括F5,Citrix,A10、深信服等产品,在生产环境中,一般至少使用两台设备来保障单台设备失效后仍能够对外提供持续的服务服务,两台设备利用虚拟地址来为用户提供统一的接入。购买硬件负载均衡设备后,厂商会提供完整成熟的解决方案,但费用也更加昂贵,设备维护较为复杂。

(二)软件负载均衡

软件负载均衡通过软件级别来实现,Ng in x,LVS,HAPROXY是目前使用较为广泛的3种负载均衡软件。以图2的两个节点的Nginx部署方案为例,Nginx一个节点提供线上服务,另外一个作为冗余节点保证高可用。常见实践是利用keepalived进行Nginx 存活探测,使用相同的虚拟IP地址对外提供服务,Nginx能探测到后端应用故障,并为后端应用提供自动故障转移,将流量自动迁移到其他应用服务器上,整个过程由Nginx自动完成,对服务调用者来说是透明的。Nginx工作在网络的第七层,支持Http,Https,Email协议;LVS基于Linux内核实现,工作在网络的第四层,几乎可以对所有应用进行负载均衡,包括数据库、Http等,其缺点是平台和内核版本相关,目前只支持Linux,实施配置及维护过程也相对比较复杂。

四、应用层的高可用

应用层服务器的高可用主要是通过服务器节点的冗余实现,主要模式包括双机备份、多主一备、服务器虚拟化、负载均衡。

相关文档
最新文档