近一两年来,银行进入了核心系统升级改造的高峰期,在核心业务系统升级改造的同时,也是基础架构平台改造升级的重要契机,但核心系统基础架构平台建设面临着纷繁复杂的问题,给建设者和领导层造成很多困扰。
就核心业务系统如何升级改造以及如何实现企业应用级同城双活建设这个课题,社区不久前在天津组织了线下交流活动,有来自16家企业的同行参与了活动,进行了热烈的探讨。现将活动中大家关心的几个重点问题,以及专家解答整理如下,希望能为金融同业带来一些参考思路。
以下部分问题基于活动中某省级城商行基础环境架构师分享的“稳态与敏态双模IT架构实践经验分享”,某省级农信社基础架构师分享的“某银行核心系统应用级同城双活架构设计经验分享”,以及IBM资深专家分享的“银行架构转型思路及LinuxONE银行解决方案”。
Q1.Oracle RAC+ADG的方式实现双活是否有最佳实践?灾备从AS转换到AA的建设有什么建议?
专家回复:
目前该架构双活的最佳实践应该还是搭建跨中心的EXTEND RAC+GPFS并行文件系统,RAC节点数2节点或4节点为宜,节点数越多,节点间的缓存融合和锁竞争开销越大,事务层的数据同步(锁、缓存)靠RAC节点间的TCPIP通讯完成,存储层数据的同步靠2个GPFS NSD盘的网络复制完成,这样就从事务层和存储层都保持了数据的同步和一致性,另外,如果对性能要求比较严格的,最好还是上INFINIBAND网络,提升带宽和性能,毕竟2个同步都是走的网络。如果不用GPFS的话,那就建议用存储双活,包括存储网关实现的双活或者存储本身实现的双活,事务层的同步依旧走的网络,存储层的同步走的FC网络。灾备从AS转换到AA模式,首先需要一个好的链路,也就是两个数据中心间链路的稳定性和可靠性是基础;其实是整个架构和方案要经过各种高可用场景的测试,从测试中发现问题,提出优化方案,哪些能舍弃,哪些不能舍弃就必须调整;最后是只有最后端的数据库双活也不行,前端的应用最好也是跨中心部署的应用,否则,一端有应用访问数据库节点,另一端没有任何访问请求,那搭建在灾备端的活数据库有什么用呢。
Q2.分布式在传统核心上应用的可能性有多大?
专家回复:
对于应用服务器来说,采用分布式集群的架构非常简单。这里说的核心应用,更多的是讨论核心数据库采用分布式的可能性。我们经常跟一些大中型银行的开发人员、应用架构师和开发处的领导探讨这些问题,实际上,核心数据库采用分布式的大中型银行很少,往往是宣传大于实际。对于核心系统来说,稳定性、数据强一致性和安全性极其重要,为了降低成本,有些大中型银行可能会考虑“瘦核心”,但很少会采用完全分布式的架构。对于分布式来说,最大的障碍在于无法摆脱“CAP”定律,分布式一方面必然带来应用架构的复杂度,另一方面也会带来数据一致性的问题。所以,动核心的理由一定不是为了分布式而分布式,核心更多会关注稳定、可靠、安全和高性能,LinuxONE切合核心系统这些所有的诉求,因此,LinuxONE是核心系统的另外一种选择。
Q3.目前在做数据库同城灾备,对于同城和异地的灾备都有哪些方案呢?每个方案适合的条件是什么呢?
专家回复:
数据库同城灾备目前有三种方式实现:
(1)数据库自身的复制技术实现,如DB2 HADR、ORACLEDG,实现数据库逻辑层的数据一致性
这种方案适合容灾端需要提供数据库读服务,也就是A-Q模式的容灾,另外这种方式也规避了数据库块数据出现逻辑错误,导致容灾端块数据也同样出错的风险。
(2)数据库底层的存储复制技术实现,如Metrol Mirror,GlobalMirror,True Copy等存储底层远程复制技术,实现块数据的数据一致性
这种方案适合实时的块数据级容灾,最简单的可以通过IP网络复制数据至容灾端,整体成本较低。
(3)通过间接存储远程复制技术实现,如CDC,爱数备份软件等,通过获取生产端的镜像数据,再复制到远程端,来实现块数据的数据级容灾
这种方案由于CDC拥有多份数据快照,可以回退至其他时间节点,防范了数据库逻辑层数据不一致导致的灾难,但同时也会消耗一定的生产端性能。。
Q4.LinuxONE对于容器的支持如何?容器云需要做集群,如果使用LinuxONE来做,是否需要多台?这样的话是否有资源浪费?
专家回复一:
一方面,LinuxONE 由于承接了IBM大型机Z系列的高可用性硬件架构,号称Zero 停机性能,其本身具有非常高的稳定性和可用性,在一台主机上各个部件具有冗余设计。有很多企业用单台跑重要业务系统。另一方面,若有非常强烈的高可用需求,可以采用两台以上的冗余设计,平时各自跑不用业务,只有发生故障时才切换至另一台备机(资源不足可零时激活冗余CPU资源),因此,不存在资源浪费情况。
专家回复二:
Docker容器技术已经分化为Docker EE,Docker CE和Moby,其中Docker EE是企业级的版本,而LinuxONE是第一批通过认证的平台。同时对Docker CE和Moby的支持都没有问题。LinuxONE对Docker容器支持完全没有问题,客户可以根据自己的需求使用不同的版本。
从LinuxONE自身的高可用角度来说,单台LinuxONE完全可以满足客户的可用性需求。因此单台LinuxONE作为容器云的资源池可以满足需求。如果从金融行业高可用的角度来说,可能需要至少两台LinuxONE服务器组成集群。而LinuxONE的配置比较灵活,单台可以配置2颗处理器,因此不存在资源浪费的问题。
Q5.LinuxONE对于集群内的东西向的数据流量监控是如何做的?
专家回复一:
所谓东西向数据即是集群内数据的流量监控,或者是单台LinuxONE主机上多个分区之间的数据流量监控。目前,在LinuxONE上的分区是基于硬件层面的,因此底层即实现了数据隔离,在网络层面,若不同域之间可以通过IP和端口实现区域隔离和流量监控,跟传统物理主机之间通过网络防火墙隔离没有区别。
专家回复二:
在LinuxONE上可以参考目前成熟的数据流量监控技术,将数据引流到外部交换机,并进行监控。在LinuxONE上可以配置很多网卡,即使外部引流,也不会造成网络的性能瓶颈。
Q6.请问某省农信目前双活对外服务是AA还是AS?能否介绍下运维平台的建设情况?
专家回复:
(1)目前网银系统双活实现的是AA模式,两个数据中心,自上而下的所有节点都是双活部署的,从最前端的智能DNS,链路负载,网络防火墙、WAF、IPS、交换机等网络设备,再到F5应用负载、SSL安全网关、WEB代理、WAS应用,最后网银GDPC跨数据中心双活数据库,都是本站点消化本站点的访问请求,从本站点返回结果给请求方。因此是一个真双活方案,除了DB2事务层数据和存储数据需要实时同步外,不存在其他跨站点访问的情况。
(2)目前我们建立了一体化运维流程平台、集中监控平台、统一云平台等,正在建设运维大数据平台,运维IT可视化平台,业务性能监控和网络性能监控,预计明年将全面完成自上而下的一整套运维与监控体系,补足短板,并初步探索智能运维的实际落地。
Q7.LinuxONE支持的Linux是什么样的Linux?Linux?还是PowerLinux?
专家回复一:
LinuxONE主机实际上就是IBM大型主机的一个分支,其硬件架构平台的问世至今有50多年的历史,IBM大型主机支持Linux系统已经超过15年的历史,并不是横空出现的一个产品,其平台的成熟度非常高,支持的认证的数据库、中间件和软件超过3000多个,在国外有大量的金融行业客户,该平台已经得到了市场的检验。
目前商用版本的Linux操作系统发行商有Redhat,Suse和Ubuntu。这三种Linux操作系统都有针对LinuxONE的版本。同时社区版Linux操作系统,如Debian,centos等,也都有支持LinuxONE等版本。 LinuxONE上运行的是S390指令集,和PowerLinux没有任何关系。Linux操作系统在发布的时候,会针对不同处理器,会发布不同的版本。例如redhat7.1,在发布的时候就会有x86-32,x86-64,arm,mips,s390,power等针对不同处理器的版本。
专家回复二:
LinuxONE和PowerLinux不一样,LinuONE的定位为高端的Linux服务器和数据库服务器。LinuxONE支持主流的商用Linux操作系统版本,如Redhat,SUSE和Ubuntu等,同时也支持社区版Linux操作系统,如Debian,centos等,也都有支持LinuxONE等版本。Linux还是Linux,LinuxONE上的Linux和开放平台上的Linux并无差异,开放平台Linux上Linux的应用可以无缝的迁移到LinuxONE平台,比如Java应用、C/C++应用等,又如商用的Oracle数据库、DB2数据库和各种开源的数据库。LinuxONE支持Linux的历史超过20年,久经市场的检验,非常成熟稳定。
Q8.目前的架构都在从集中式向分布式转换,那么LinuxONE的定位是什么样的?
专家回复:
从架构层面来看,从集中式向分布式转换,主要是指系统架构层面,通过使用资源池去运行多个系统以支撑分布式架构所需要的系统。再去看资源池组成,可以是x86服务器组成资源池,也可以是LinuxONE这种高稳定高性能的服务器组成。LinuxONE虽然是物理集中,但其稳定可靠性仍会比使用多台x86的资源池高。因此LinuxONE服务器做分布式架构系统的资源池,通过LinuxONE去大规模整合x86服务器,从空间,电力及整体拥有成本等方面都是很合适的选择。
集中式向分布式转换是系统架构的一个方向,但不是所有的系统都适合去进行这样的转化。集中式系统在未来仍然会存在,例如银行的核心数据库系统,其强一致性要求,使用集中式架构还是有很明显的优势。核心数据库也是LinuxONE服务器可以发挥特长的领域。