传统主备模式是一个业务只在一个数据中心运行,企业结合灾备等级需求和业务需求,在备份中心部署了大量的备份服务器,但备份中心仅为该业务提供灾备服务,只有当灾难发生、生产数据中心瘫痪时,灾备中心的业务系统才启动这些服务器,造成备份中心服务器资源浪费,广域网链路也无法得到充分的利用。
分布式双活数据中心可以使分布在多个数据中心的同一类业务同时运行,也可以将一个业务分布在不同数据中心层次化的运行,其特点如下:
充分利用资源,避免了一个数据中心常年处于闲置状态而造成浪费,通过资源整合,“分布式双/多活”数据中心的服务能力是双倍的;
如果中断了一个数据中心,其他的数据中心仍可独立响应业务,对用户来说业务切换是无感知的。
分布式双活数据中心建设是一个复杂的系统工程,包括数据、系统、业务、网络、服务器等基础设施资源多个方面,并且很多客户的需求是交杂在一起的,建设异常复杂,分布式双活数据中心的需求主要体现在以下三个方面。
广域网链路:企业的两个数据中心都具有丰富的广域网联路,分别为Internet用户和内网用户提供服务。为了提高用户的快速体验和链路的利用率,企业往往希望用户可以通过任意一条链路访问到数据中心的业务。服务器/存储:数据中心的服务器年年扩容,需要备份中心该业务的备份服务器也能提供业务负载,使得整个企业IT系统在不增加额外投资的前提下,性能可以提升接近一倍。 机房基础设施:数据中心基础设施资源消耗殆尽,无法为某类业务提供扩容保障,亟待为其建设一个资源扩展机房,但周期长、成本高。如果可以将扩容资源直接建设在备份机房就方便了。另外,该企业每年年终结算时办公类业务计算量是平时的3~5倍,往往需要临时加载计算资源,过后再下线,给维护带来了压力。
针对上述的不同需求,数据中心部署模式包括网络双活、业务双活、资源双活等,三者间没有必然的联系,均可以独立建设,也可以组合建设,以满足不同用户的对性能、投资保护以及业务部署灵活性的需求。当三种方案混合使用时,则组成了分布式多活方案。由于上述三种方案以及方案的搭配经常被混淆,下面将分别独立介绍各方案。
一、 网络双活——应用最成熟
该方案主要解决其广域网链路复用的问题,降低备份链路的成本从及提升网络性能,基本可以适用于所有的业务系统。
业务服务器在同一个数据中心或不在同一个数据中心的情况下,用户到两个数据中心的所有链路都可以得到充分的利用,如果每条链路都是按照业务流量峰值设计,网络双活方案则可以为用户/分支提供最佳的网络性能。网络双活方案不会对原有业务分区的设置、原有的IP地址策略有任何影响。
流量负载均衡的网络双活方案通常使用在用户到同一个数据中心的业务系统具有多条可选路径时的环境,如用户通过Internet到多个数据中心访问的业务模型,因存在次优路径,链路的选择可以通过全局负载均衡技术实现。
业务分流的网络双活方案通常使用在用户所访问的不同业务分布在不同的数据中心的环境,通过调整分支到多个数据中心间的广域网BGP或OSPF等路由策略即可实现用户到不同业务的网络分流。
二、 业务双活——逻辑关系最复杂
该方案主要解决其业务服务器复用的问题,降低业务服务器总体投入以及提升业务性能。业务双活方案使两个数据中心的服务器利用率最大化,计算性能翻倍。如果同时使用服务器虚拟化技术,则可以在一台服务器上同时部署S1/S2或S1‘/S2’,减少站点内服务器数量,起到节省投资的效果。
如图3所示,所有的服务器均可以独立响应用户请求,红色的S1‘、S2’是S1、S2的双活系统,可以独立于S1、S2响应业务请求,同时与S1、S2实现互为备份。该方案有两种部署形式,出于提供服务的标识设计(业务网关)原因,两种方案关于服务器部署的网络配置上有本质的区别。
三、 资源双活——技术难度最高
该方案主要解决其临时的计算单元不足或原机房空间扩展不便的问题,且在极端环境下,备份中心的资源系统可以变成资源中心,全面接管数据中心的业务。资源双活依赖于虚拟化和云计算技术,强调的是整个过程的动态性,资源是动态调配的,无需工程的实施,临时生成的计算资源使用完毕后,可以灵活撤销,不对原网产生任何影响。资源双活只是实现了服务器位置的动态变更,并不关注网络和业务系统是否是单活或全活,始终保持原有的业务策略。
四、 分布式多活——逻辑大中心
不同企业的数据中心现状不尽相同,需求往往也是多变、复杂的,越来越多的企业对IT系统的自动化、灵活性要求越来越高,因此经常会出现各种双活方案混搭的情况。特别是网络双活、业务双活、资源双活同时混搭的分布式多活解决方案,需要网络能够识别不同数据中心的相同业务系统,并根据既定策略实现网络双活,并且整个数据中心在逻辑层面是一个数据中心,所有的资源可以自动化生成与部署,整个系统的复杂度被大幅提升。
网络+业务双活。在业务支持双活的前提下,网络双活应采用业务分流的方案配合实现。在上述几种方案组合中,只有当双活业务在不同中心的地址段不同的情况下,网络双活与业务双活才能匹配,使用的网络技术是业界最为成熟的DNS和全局负载均衡、服务器负载均衡、BGP技术等。
业务+资源双活。资源双活的方案使双活业务部署更为灵活,业务可以全部在一个数据中心,也可以随时移动到多个数据中心。用户不关心业务在什么位置,只要IP可达即可享受服务。此时的业务已被云化,连接所有数据中心的网络成为真正的中心,连接在网络上的多个数据中心组成一个逻辑大中心。
分布式多活。业务多活提升了业务性能、保护了投资,资源多活使资源配置更加灵活,提高了资源配置能力,网络多活使用户彻底体会到整体性能的提升,分布式多活则是前述三种方案的叠加,未来数据中心的发展将是一个逻辑大中心的全活组网。在这种环境下,用户到业务的访问不再是基于传统的IP路由方式,可能是当前成熟的应用交付网络,也可能是基于应用路由,还可能是基于SDN(软件定义网络)实现,同时全活数据中心的应用还依赖于云计算技术的成熟与应用,因此分布式多活数据中心的网络部署需要谨慎对待。
五、 几种方案对比
综上所述,分布式双活数据中心可以细分为七类方案(如表1所示),其中网络、业务、资源多活方案是基础,其他方案则是基于这些基础方案演变形成。因此,演变方案的复杂度取决于基础方案的复杂度,分布式多活方案最为复杂。网络多活方案、业务多活方案、网络加业务多活方案实现复杂度较低,所采用的技术大多是成熟的、标准化的技术。其他类型的方案则不同程度的引入了新技术或还不成熟的技术。
六、 结束语
真正的分布式双活数据中心实际上还要包括数据的双活,但由于当前的技术限制和企业对数据的一致性保证等原因,双活方案中数据库通常仍只有一个处于Active状态,其他数据中心的数据库则根据地域距离选择同步复制或异步复制实现数据备份功能,因此本文讨论的双活数据中心方案只涉及到基础设施和应用的多活。另外,由于业务本身的限制,双活数据中心并不能实现全业务的双活,当各企业在建设双活数据中心时,需要脚踏实地的仔细的调研自身业务情况,再进行方案的选择。同时未来数据中心的建设方向与技术选择应符合虚拟化、云计算等趋势,在选择技术时应该充分考虑到标准性、开放性、灵活性、可维护性等因素。