F5中国
作者F5中国·2015-12-04 14:20
其它·F5

银行多中心基于负载均衡的实践

字数 5274阅读 3348评论 0赞 1

F5公司的技术和产品在金融行业有着广泛深入的应用, F5整体应用交付解决方案中包括多中心多活并行的应用交付解决方案,与数据中心多活实践的需求相吻合。

本文转自 AIX专家俱乐部,文章的作者张维华系中国民生银行高级安全工程师。通过F5的方案和功能设计,作者所在银行目前已完成20余套业务系统的双中心部署及多套系统的同城多中心整合迁移,并在实际使用、维护过程中得到验证。以下是转载内容。

1概述

银行多中心需求源自于多个方面,采用多中心方案解决问题的侧重及实现目标各有不同,同时,多中心建设涉及的领域非常多,是一个大型的系统工程。本文对多中心需求进行分析,对多中心采用的网络技术进行探讨,并着重介绍在多中心建设中利用负载均衡技术作为一种局部解决方案的思路、方法及结果,供读者参考。

 

2多中心的形成原因银行多中心需求的主要来源是容灾,即确保业务连续性,世界各国普遍将银行和金融纳入关键信息基础设施范畴 ,并做出相应的业务连续性要求,如我国人民银行、银监会都做出了明确的要求 ,建设“两地三中心”模式的同城、异地灾备数据中心已经成为银行业普遍采取的方式并且取得了显著的成效。由于数据中心的建设周期长、投入大,部分银行根据业务发展情况逐步租用多个小型数据中心部署业务系统,满足业务不断发展的需求,也造成了多中心的局面。另外,租用数据中心到期后,向新数据中心迁移形成了阶段性的过渡型多中心。

 

3多中心面临的需求

多中心格局下,需要解决的主要需求包括:
1、中断恢复时间。随着业务连续性要求的不断提高,主备中心间实现快速的切换甚至实现并行双活已成为客观需求。2、资源利用率。由于备用中心环境不处于在线提供服务状态,导致资源利用率不高。当业务规模持续发展或出现短期业务量波动时,备用中心资源如何被充分利用。3、环境的可信。备用中心如何保持与主用中心完全一致,在需要时能够可靠的接管。4、技术更新的成本。目前,出现了大量新技术以提供网络、系统、存储等各个层面的双活、多活,技术的更新往往意味着基础架构、软硬件的变化,需要追加投入;从技术的应用、人员对技术达到熟练掌握、最终有效纳入组织运作方式是一个复杂而漫长的过程,整个过程存在一定风险。
另外,便于部署、迁移、维护,以及如何与未来的架构衔接、保护投资也是很实际的需求。

 

4同城多中心模式的探讨

由于数据中心对通信、电力、供水、交通等方面的要求较高,造成了大型银行的数据中心有七成左右部署在北京、上海两个基础设施最发达的城市,而中小型银行的数据中心也以同城为主,形成了银行业灾备格局以“大同城、小异地”为主。
同城数据中心具备几个优势条件:
1、数据中心间通信带宽充裕。如果租用运营商专线,相同带宽的本地通信线路比长途通信线路资费低,如果租用裸光纤配合波分设备,成本差异就更大了。2、通信延时低。与同一数据中心内部相比,同城数据中心间进行业务交互、数据同步的延时增量通常可以控制在1毫秒以内。3、维护成本低。同城数据中心可以纳入同一个维护体系内,维护标准统一,管理成本低;并且维护人员、设备资源可以部分复用。
因此,在同城的多个数据中心进行业务系统多活实践具备先天的优势。
从不同的技术层面看,多活数据中心有不同的模式。例如,各个数据中心都有业务系统对外提供服务,但是就单一业务系统而言,只有部署在某个数据中心内的服务器在对外提供服务,部署在其他数据中心的服务器处于备用状态;所有或部分业务的网络通信出口都集中在某个数据中心,其他数据中心的网络通信出口处于备用状态。上述各种情况都可以视为是一种多活模式,随着多活层次的不断深入,资源利用率和切换、调度效率逐步提高,本文中探讨的多活数据中心主要集中在网络对业务的调度及与应用的配合方面,实现数据中心资源的充分利用,降低多活数据中心技术、维护的综合成本。


5基于负载均衡的实践思路

同城数据中心之间通常直接延伸二层网络或使用OVERLAYER技术间接延伸二层网络,在多中心之间实现局域网,并可以通过网关位置优化实现流量的最大本地化,这时候可以将多个同城数据中心视为一个逻辑整体,将现有技术措施优化后再利用可以获得较好的投入产出比,使用负载均衡进行多活数据中心的业务调度就是基于这个出发点。
负载均衡技术已经在银行广泛的使用,对业务系统性能、弹性的提升效果非常明显,在设备方面不需要太多的额外投入。通过长期的使用,维护人员已充分掌握了相关技术特性,并与现有的维护体系融合,例如职责分工、跨专业配合。
负载均衡可以使用NAT隐藏对后台服务器实际信息,在构建新数据中心时,可以减少服务器进行迁移、整合带来的影响。使用域名对外提供服务也可以降低服务器迁移、IP修改带来的影响,但需要注意业务系统、客户端的改造,还要注意域名、IP记录和防火墙策略的协同,更适用于在广域网上进行流量引导。
尽管各种新的网络技术在不断发展,在可预见的一段时间内,负载均衡技术仍将在数据中心广泛使用,利用负载均衡技术作为多中心多活的解决方案,可以保护投资、实现可持续性。


6使用F5产品的实践案例F5公司的技术和产品在金融行业有着广泛深入的应用, F5整体应用交付解决方案中包括多中心多活并行的应用交付解决方案,与数据中心多活实践的需求相吻合。F5的多中心多活并行应用交付解决方案在实现多数据中心应用多活部署的同时还包括应用加速、应用安全、集中管理等功能,可立体地满足业务发展需求。在部署F5多数据中心并行应用交付解决方案后,在后续业务扩容和功能追加时可平滑地扩展:当需要增加F5设备的功能时只需增加license而无需进行硬件的调整;按需插卡式设备只需在原来设备中添加板卡即可扩充设备的性能,而整个架构和设备的配置均无需发生任何变化。
F5提供GSLB+LB(即GTM+LTM),RHI,N+Mcluster等多种方式的多中心多活并行解决方案,可根据实际的基础架构和应用需求选择一种或多种方案实现多数据中心的应用多活。根据笔者所在银行的实际需求,我们选择了GSLB+LB的方案来实现对互联网业务的双中心流量的选择智能引导,N+M Cluster的方案来实现对数据中心内部业务的双中心状态探测和切换,具体包括如下的考虑。
•主动的健康检查:这包括对网络链路状态监测、对服务器的应用状态深度健康检查,通过F5多样化的健康检查方式,可以在链路层面、服务器硬件层面、应用软件层对双中心的可用情况做出准确的判断,从而确定双中心是否需要切换、以及是整体切换还是部分资源切换。
•灵活的负载分担策略:建设多活中心的重要特征是“多活”,以充分利用各中心的资源,提升资源利用率。F5可以根据业务需要,基于用户来源地域、延时情况、使用的运营商、负载权重等不同的因素来制定负载分担策略,实现在多个数据中心之间进行业务的分配。
•基于业务需求的NAT:在多活数据中心的环境中,经常可能的切换对IP地址提出了动态漂移的要求,F5可以提供一对一、一对多、多对多的地址转换,灵活适应业务切换的需要。
•自定义的iRules:根据多中心的要求,通过F5的iRules脚本的定制编写,可实现不同业务定制化的流量牵引,例如对双数据中心的突发流量应急调度牵引,出向流量的优化控制,根据业务场景动态选择不同的SNAT/SSL profile等;
•可预设定的接管顺序:基于F5的N+Mcluster机制,通过F5集群节点之间的切换和接管,牵引业务流在数据中心之间重新分布,更为重要的是,集群节点之间的切换可以预先定义接管顺序,使多活中心的运维是可管理和可预期的,并符合数据中心的分布使得延时和影响最小。这种可以预定义接管顺序已在业界得到了实践验证。
•尽量减少现有基础架构变动:基础架构的调整影响非常大,采用局部优化、循序渐进改造的方式控制风险,对业务的稳定运行非常重要。
同时,在实施的过程中,我们重点考虑了双活数据中心高可用方案的可管理性和可运维性,使之不仅仅只是一个好的纸面方案,更能是一个好的实践工程,能真正地在银行的生产环境中可靠运行。这些实施过程中的考虑要点包括:
•本地同机房切换优先:业务在同机房的切换会影响小些,而如果是同城跨机房的切换,则相对影响要大一些。在考虑基于F5的集群N+M的切换实现时,我们在两个同城机房各部署了两台F5 LTM设备,一共四台组成N+M集群,在切换的时候,某一个业务可以从其中一台LTM向其他三台中的一台进行流量牵引。从业务平滑的角度考虑,我们需要优先保证同机房的优先切换,因此,针对每一个业务,在设定N+M集群的切换顺序时,都应该按照先同机房,后同城的顺序来设定集群接管顺序。
•管理调度:考虑业务分布在同城双中心是否按1:1部署。在双活数据中心的设计中,由于每个数据中心都是“活”的对外承担业务的,本身容量的设计并不需要1:1的部署,但是考虑到如果一个数据中心完全失效的极端情况下(双中心割裂是目前的主要风险),另一个数据中心的处理容量应能够承担完整的业务量。同时,基于“双活”的情景,管理调度能力应可以实现对突发流量的应急处理,在多中心之间自动削峰调度。
•切换的协同联动:在建设双中心时,往往由于实际客观条件的限制,会存在某些环节不能实现完全的冗余备份,例如最常见的是与不同运营商的网络出口,例如电信、联通的线路配备了双出口,但是移动、广电等线路还是单出口。我们需要将双中心的各个环节进行梳理,针对实际建设中的单点环节,专门考虑协同切换,将受影响的因素进行捆绑协同。
•运维自动化考虑:包括和系统、应用的配合互动,包括监控和响应。由于双活数据中心涉及到的环节和流程特别多,为了更好地运维双活中心,可采用大量的自动化脚本,同时充分利用F5的iControl接口,可实现一键DC切换,一键DB切换,自动配置采集及上传,F5配置合规性检验,单一数据中心配置关联性提取,多数据中心配置一致性对比,F5应用统一视图生成等,并和统一运维管理平台进行集成,提升多中心环境下的运维水平和运维能力。笔者所在银行采用这些功能设计实现了同城双活数据中心的业务部署和数据中心之间的业务快速切换,除此之外,在多个数据中心向两个新建数据中心整合的迁移、IP地址改造和日常业务上线的测试、验证、发布及维护过程中也起到了非常大的作用。
•使用跨中心双活集群,在新数据中心部署业务后,可以无缝的将一个业务从一个中心变为两个中心双活。同时跨中心集群的使用,将A/A, A/S模式的双机结构扩展为N+M模式,如下图所示:•通过SNAT功能,将服务地址与真实服务器完全解耦。F5设备所在的位置与服务器位置完全无关,这样就给予应用在数据中心之间迁移或搬迁最大的灵活度,当一个业务系统要从A中心的搬迁到B中心时,完全不需要进行业务中断。IP地址的改造时,可以留给业务系统更多的弹性时间。在多中心整合过程中构建业务多活场景,简化业务迁移过程,最终整合为同城双中心。
•通过负载均衡设备进行差异化业务验证。多中心运行的业务,在进行业务测试或变更过程中,通过负载均衡技术可以将部分或特定的业务访问(比如指定客户端IP或HTTP URI等)发送到指定服务器进行业务验证。
•同城多中心均能承担业务流量并周期性进行故障演练,演练涉及各个节点的故障模拟场景,多中心的以不同业务负载比例在线服务,实时验证“备用”环境的可用性,杜绝真正发生一个数据中心故障时切换不成功的问题。
•设备的多角色分权管理。负载均衡设备涉及与应用相关的处理,横跨多个部门,因此设备的分权管理尤为重要,既要有相关变更权限,又要避免相互影响。因此在数据中心设备管理中,负载均衡设备管理员权限由网络部门统一管理,同时可为不同应用部门分配不同的只针对其职责内的变更和配置权限,将具体应用层面的日常操作从网络部门设备运维中剥离,既简化运维管理工作,又能明确权责划分。
数据中心实现多活后,效益是多方面的,不仅提高了业务的持续性,同时还在资产使用效率等方面提高显著:
•快速感知和故障快速恢复:当一个数据中心业务发生故障时,健康检查和探测对故障的感知降到分钟级甚至秒级,在大部分故障场景下,可实现分钟级甚至秒级的切换。•按需切换:当服务器或业务需要切换时,并不需要把全部应用都切换至备份中心。•资产盘活:在传统主备数据中心的模型中,备份数据中心完全不进行业务处理而仅仅做为热备或冷备,这对资源的使用是极大的浪费。多活数据中心的引入则盘活了备用的资产,提高了资产使用率。


通过F5这些方案和功能设计,笔者所在银行目前已完成20余套业务系统的双中心部署及多套系统的同城多中心整合迁移,并在实际使用、维护过程中得到验证。


多活数据中心作为数据中心发展的一个阶段,其必然不是一成不变的,随着业务需求的不断发展,数据中心还将朝更加先进的方向前进,而负载均衡技术在目前及可预见的相当一段时间内仍有很大的使用空间,因此,利用负载均衡技术来配合多中心建设是一项非常具有实际意义的实践。

 

作者: 张维华 中国民生银行 高级安全工程师

如果觉得我的文章对您有用,请点赞。您的支持将鼓励我继续创作!

1

添加新评论0 条评论

Ctrl+Enter 发表

作者其他文章

相关文章

相关问题

相关资料

X社区推广