总第9期
2017年5月刊
Solution    方案
Solution    方案
业务连续性保障----ADDC多中心解决方案
文/姚民
分享

在当前云计算的大背景下,分散独立的数据中心架构将难以满足企业对资源的快速、最优的调度部署,无法满足业务的速扩张和发展。为了更好的实现资源的整合,需要将传统孤立的多个数据中心整合在一起,成为分布式数据中心,从而使资源得到充分利用,避免一个数据中心常年闲置而造成浪费;同时提高可靠性,一个数据中心故障以后,另一个数据中心仍可提供服务,实现对业务的连续性保障。数据中心之间一般有热备、冷备、双活3种备份方式。其中热备、冷备主要是针对业务进行备份,对业务而言,只有一个中心提供服务,是Active-Backup方式;而双活方式,则是两个中心都可以同时提供业务,是Active-Active模式。

在基于SDN理念和架构来实现的应用驱动下,华三通信目前提供了ADDC数据中心方案。其通过SDN控制器软件接口与上层业务应用进行对接,让应用对网络的需求得以顺畅地传递给网络,从而让网络能够随应用需求而动,符合云数据中心的要求。在ADDC数据中心架构下,分布式数据中心部署时,如何通过ADDC如何实现数据中心互联和多活,是本文所讨论的重点。主要包括数据中心互联和双活两部分。

数据中心互联方案

ADDC数据中心架构下,DC间,有如下几种互联方式。

1. 控制器集群方式

控制器集群组网如图1所示:

图1 控制器集群组网

不同DC间通过ED(边缘设备)设备进行互联,每个DC单独部署控制器,不同DC的控制器做控制器集群。这种组网将多个数据中心的资源真正整合在一起,实际上属于单中心多机房互联。这种组网下,两个物理机房的资源可以统一调度和分配。控制器集群要求控制器间网络延迟低于10ms。通过控制器的集中控制,不仅可以实现计算资源的调度,在互联多链路场景下,还可以按需调度流量,提高链路的带宽利用率。

2. DC间EVPN组网:EVI 2.0

相对早期的EVI 1.0而言,EVI 2.0控制平面采用了EVPN业界标准协议,数据平面为VXLAN封装。EVPN是基于MP-BGP协议扩展的,在网络扩展能力上,EVI 2.0相对1.0而言有了较大的改进,同时由于EVPN协议是IETF标准,在异构厂家DCI互联上,也提供了可行性。

图2

VXLAN作为Overlay的技术,不仅在数据中心内可以部署,还可以很方便的实现数据中心间的L2互联,相比传统的MPLS VPLS/VLL等二层技术而言,其技术和配置较为简单,配套EVPN邻居发现和VXLAN隧道的自动建立,对部署和运维提供较大的帮助。

数据中心双活方案

针对分布式数据中心的双活,华三通信采用和F5等厂商的GSLB、SLB配套(本文主要以F5的GTM和LTM来举例说明),配合华三通信网络设备、SDN控制器可以实现跨DC的全局负载均衡,在满足高可靠性的同时,提升用户访问体验。

F5的GTM(Globa● Traffic Manager,全局负载均衡设备)主要完成用户解析DNS功能;LTM(Loca● Traffic Manager,本地负载均衡设备)则负责对内部服务器健康状态检查、将访问流量分担到不同服务器以及出口流量的链路负载分担。GTM可以和LTM联动,当LTM检测到本设备管辖的服务器资源故障,不能对外提供服务时,GTM可以对DNS解析做替换。同时LTM会实时保持与GTM联动,将检测到的服务器健康状况上报给GTM。

分布式数据中心双活典型组网如图3所示:

.

图3 分布式数据中心双活典型组网

GTM侧挂出口路由器,具有公网IP地址,可以作为权威服务器被访问。两个数据中心的LTM通过DCI的VXLAN隧道L2连接,组成集群。

通常而言,在双活场景下,根据业务类型(比如企业内业务或对对外提供的业务)有两种业务发布模式:基于DNS发布和基于IP发布

1. 基于DNS发布业务的双活

顾名思义,基于DNS发布的业务对外是通过域名方式来引导用户访问业务服务器,适用于各类Internet和Intranet场景。这种部署模式下,Ingress流量主要通过GTM发布DNS来引流。

我们来举例说明基于DNS发布业务的双活机制。若数据中心对外提供业务的域名为www.h3c.com.cn。其在数据中心A对应地址VIP A,而在数据中心B对应地址为VIP B。当客户端发出对www.h3c.com.cn的DNS请求时,流程如图4所示:

图4

● 客户端向本地DNS服务器查询指定域名www.h3c.com.cn

● 当本地DNS服务器在本地/缓存中找不到指定域名时,会向root服务器查询

● Root服务器返回授权(com.cn域)服务器的地址

● 本地DNS服务器向com.cn域服务器请求DNS解析

● com.cn域服务器返回h3c.com.cn域服务器(就是GTM)地址

● 本地DNS服务器向h3c.com.cn域服务器请求DNS解析

● h3c.com.cn域服务器返回www.h3c.com.cn的主机地址10.63.16.77

● 本地DNS服务器将资源记录缓存到本地

● 本地DNS服务器向DNS客户端返回www.h3c.com.cn域名解析结果

实际上,GTM会根据就近性探测和数据中心的负载分担算法,,来返回VIP A或者VIP B,将客户端的流量引入数据中心A或数据中心B。VIP A和VIP B则与数据中心内LTM的对外提供服务的地址是对应的。

LTM基于TCP、HTTP等方式,实时的检测其管辖范围内服务器的健康状况,同时记录各个服务器的负载情况,对于外界进来的访问流量(目标IP为VIP A或VIP B),LTM会选择内部最优的服务器提供服务,做到内部服务器的负载均衡。

假设正常时客户端访问数据中心A的VIP A地址,当数据中心A内的业务服务器或LTM出现故障时,则数据中心B的LTM会接管VIP A地址。同时,GTM也会检测到A中心出现了故障,从而进行DNS的倒换,将新的客户端对ww.h3c.com的DNS请求应答为VIP B地址,新客户端的业务流则会访问数据中心B,由数据中心B的服务器来提供业务访问。但是对于原有的客户端,由于终端DNS表项存在老化时间,那么在老化时间前,终端仍然会访问VIP A地址,流量会从数据中心A进来,通过数据中心间的L2隧道,访问数据中心B的服务器,继续为用户提供业务服务。

2. 基于IP发布业务的双活

基于IP发布的业务对外是通过IP地址来引导用户访问业务服务器,主要适用于Intranet内网场景。这种部署模式下,由于同一业务的IP地址只能有一个,因此无法做到真正Active-Active意义上的双活,只能是主备模式。

正常情况下,数据中心A和B的LTM在检测到内部服务器正常运行时,会对外发布IP路由,但优先级或地址长度不同,比如数据中心A发布的是32位主机路由,数据中心B发布的是24位网段路由。那么对于网络路由设备而言,会优先匹配32位主句路由进行访问。

LTM会实时监测本设备管辖的服务器,当服务器故障、本中心不能对外提供服务时,LTM会通过RHI(Route Health Injection,健康路由注入)功能撤销对外发布的路由,此时,数据中心B发布的网段路由则会优先。这样,同一个IP地址的业务由数据中心B来提供。数据中心A和B的LTM之间需要通过二层互连网络保持联动。同理,当数据中心A的LTM故障时,同样的切换也会发生。从而保证业务的连续性

结束语

通过数据中心互联方案和GSLB/SLB的配套,可以实现基于DNS和IP发布业务的双活,从而在网络层面保证业务的连续性。但是,数据中心的业务连续性保障建设是一个系统的复杂的工程,不仅仅对网络提出要求,对服务器、数据库、存储,甚至用户的业务系统本身也有较高的要求。只有各系统都能较好的支持双活,才能为用户提供一个较好的业务连续性保障体验。

分享到
关闭