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