EMC数据中心容灾系统建设方案建议书EMC电脑系统(中国)有限公司Version1.0,2014/10EMC双活数据中心方案建议书第-1-页共-16-页前言信息是用户的命脉,近十年来信息存储基础设施的建设在用户取得长足的进步。从内置存储转向外置RAID存储,从多台服务器共享一台外置RAID阵列,再到更多台服务器通过SAN共享更大型存储服务器。存储服务器容量不断扩大的同时,其功能也不断增强,从提供硬件级RAID保护到独立于服务器的跨磁盘阵列的数据镜像,存储服务器逐渐从服务器外设的角色脱离出来,成为单独的“存储层”,为数据中心的服务器提供统一的数据存储,保护和共享服务。随着用户业务的不断发展,对IT系统尤其是存储系统的要求越来越高,鉴于用户业务由于信息的重要性,要求各地各用户多中心来预防单一数据中心操作性风险。多数据中心建设方案可以预防单数据中心的风险,但面对多数据中心建设的巨额投资,如何同时利用多数据中心就成为IT决策者的首要问题。同时利用多数据中心就必需实现生产数据跨中心的传输和共享,总所周知,服务器性能的瓶颈主要在IO部分,数据在不同中心之间的传输和共享会造成IO延时,进而影响数据中心的总体性能。同时,各家厂商不断推出新技术,新产品,容量不断扩展,性能不断提高,功能越来越丰富,但由于不同存储厂商的技术实现不尽相同,用户需要采用不同的管理界面来使用不同厂商的存储资源。这样,也给用户业用户带来不小的问题,首先是无法采用统一的界面来让服务器使用不同厂商的存储服务器,数据在不同厂商存储服务器之间的迁移也会造成业务中断。作为信息存储行业的领先公司,EMC公司针对用户跨数据中心信息传输和共享的迫切需求,推出存储VPlex解决方案,很好的解决了这些问题。本文随后将介绍VPlex产品及其主要应用场景,供用户信息存储管理人士参考。EMC双活数据中心方案建议书第-2-页共-16-页第一章.方案概述1.需求***计划建设两个数据中心,构成同城双生产系统,两中心之间距离不超过100公里;要求数据零丢失,系统切换时间小于5分钟;2.方案简介为了满足客户建设容灾系统的需求,我们设计了本地双活数据中心。整体架构如下:上图是双活数据中心总体框架,包括双活存储系统、双活数据库系统、双活应用系统和双活网络系统。我们将利用存储双活技术和主机集群技术实现数据库系统的双活,利用负载均衡设备实现应用系统在两个数据中心内的负载均衡,利用动态域名确保两个数据中心的网络双活。双活数据中心可以实现业务系统同时在两个节点同时工作,达到负载均衡的目的。当生产节点出现故障时,业务系统还能够在第二生产节点上正常工作,实现业务零切换。EMC双活数据中心方案建议书第-3-页共-16-页第二章.双活数据中心架构设计通过对***具体需求的分析,我们建议客户采用双活数据中心架构设计。1.数据库系统双活架构设计在这个架构中,存储层除了采用EMCVNX存储系统或者其他厂商存储系统(第三方主流存储系统见EMCVplex兼容性列表)外,还引进了EMC全新一代数据整合系统VPLEX,由VPLEX实现存储系统高可靠性和同城范围内数据高效共享。1.1本地存储高可靠性保证在本方案中,首先我们要满足客户对生产中心存储系统高可靠性的需求。目前的IT系统架构中,从应用服务器、数据库服务器到网络等各个部分都已经提供了高可靠性的设计,唯独存储系统很少有高可靠性方案的设计,这主要基于两个原因:EMC双活数据中心方案建议书第-4-页共-16-页存储系统自身已经有高可靠性设计,控制器、电源、链路等都是冗余设计,可靠性较高,一般情况下很少会发生整体故障,导致数据不可访问。没有非常合适的技术来实现存储系统的高可靠性保证现在EMC推出了全新架构的数据整合解决方案——VPLEX,VPLEX首先实现了本地存储系统的整合及高可靠性设计,而且是硬件级别的解决方案。在本项目中,生产中心VPLEX首先将两台EMCDMX3/4(仅以DMX存储为例说明,下同)整合在一起,实现存储级别的HA系统。如下图显示:1)在两台DMX3/4中分别划出两个LUN,LUN-A和LUN-BLUN大小一样RAID的保护方式一样为了保证性能所分布的硬盘类型和数量最好也一样将这两个LUN同时映射给VPLEX(通过图中虚线链路),VPLEX可以将这些LUN进行再次RAID保护,目前VPLEX支持的RAID保护级别为:RAID0RAID1分布式RAID1在实现本地存储HA系统时,使用RAID1保护方式,形成一个虚拟LUN(V-LUN)。2)VPLEX通过光纤链路(图中实线链路)将V-LUN分配给主机,主机可以进行读写操作3)当主机向V-LUN写入I/O时,先写入V-LUN,然后再继续写入到两台DMX3/4存储系统中4)当其中一台存储设备发生故障,整个存储系统能够继续工作,主机访问存储不会受到任何影响EMC双活数据中心方案建议书第-5-页共-16-页1.2双活数据中心数据保护本次项目客户要求首先实现本地存储高可靠性保护外,还需要实现双活数据中心,既两个数据中心的业务同时运行,任何一个数据中心出现问题,业务都会继续运行。1.2.1通过VPLEX进行数据读写首先在第二生产节点上,DMX3/4存储系统给VPLEX分配一个LUN,VPELX产生一个V-LUN。如下图显示:其次,通过两个节点的VPLEX产生一个分布式虚拟LUN,采用分布式RAID1保护。如下图显示:两个节点的主机都能够访问到这个虚拟LUN,两节点的主机都能够同时访问这个分布式虚拟LUN。由于我们提供的是双活数据中心,两个节点中的数据要实时一致,所以在写入数据时,要确保数据被同时写入到两个节点中,这样才能保证数据两节点之间的数据一致性。如下图所示:EMC双活数据中心方案建议书第-6-页共-16-页1)在生产节点的主机产生I/O;2)向VPLEX写入I/O,I/O通过VPLEX之间的光纤链路发送到第二生产节点的VPLEX上,3)I/O同时写入到两个节点中的DMX3/4存储系统中;4)第二生产节点的VPLEX向生产节点VPLEX发出写I/O完成的确认信息(ACK);1.2.2通过VPLEX进行数据读取EMCVPLEX是一个集群系统提供分布式缓存一致性保证,能够将两个或多个VPLEX的缓存进行统一管理,从而使主机访问到一个整体的缓存系统。当主机向VPLEX的摸一个缓存区域写I/O时,VPLEX缓存将锁定这个缓存区域,同一时刻其他主机是无法向这个缓存区域写入I/O的。但是,当主机读取I/O时,VPLEX缓存允许多个主机访问一个缓存区域,尤其是主机访问其他VPLEX集群中其他VPLEX所管理的数据时,统一个缓存管理会将这个I/O的具体位置告知主机,主机直接访问。如下图显示:EMC双活数据中心方案建议书第-7-页共-16-页1.2.3主机故障切换我们将1个RAC的集群中的两台主机分别放置在生产和第二生产节点上,这两台主机形成一个跨数据中心的集群系统,如图中RAC1-1和RAC1-2,RAC2-1和RAC2-2。这种设置保证了正常情况下,两节点的主机同时工作;一旦其中一个节点的主机出现故障,业务会无缝的被另外一个节点的主机所接管。此时,RAC的心跳线需要通过网络来进行连接。1.2.4存储故障切换主机故障切换由RAC集群保证,存储系统故障切换则由EMCVPLEX保证。EMCVPLEX中设计了一个重要的部件——VPLEXWitnessWitness安装在客户提供的VMwareESXServer上运行的虚拟机,Witness最好与两个VPLEX集群不在同一地点,但是考虑到实际情况,也可以将Witness放置在生产节点。VPLEXWitness使用IP连接监视两个VPLEX群集之间的系统“心跳”信号。通过监视这些心跳信号,VPLEXWitness可以区分站点故障和站点分区。VPLEXWitness让应用程序能够承受任何存储故障的影响,包括同时影响整个存储设备机架的故障。VPLEXWitness与服务器群集软件和AccessAnywhere相结合,形成了一套端到端的解决方案,允许在服务器出现故障时自动重启。对于双活数据中心的部署,VPLEXWitness能为客户提供具有零恢复点目标(RTO)的高可用性解决方案。由于在生产节点已经通过VPLEX实现存储的HA,所以一个存储系统出现故障,不会影响到整个系统的正常运行。如图所示:EMC双活数据中心方案建议书第-8-页共-16-页第二生产节点存储系统出现故障,不会影响到整个系统的正常运行。如图所示:VPLEX系统故障VPLEX系统自身是全冗余设计,可用性能够达到99.999%,但是为了防止VPLEX自身出现故障,VPLEX自身有一整套放置系统故障的处理流程,在这个过程中就要结合上面我们提到的Witness。如下图所示:EMC双活数据中心方案建议书第-9-页共-16-页上图中,①—⑦种情况中,业务正常工作;⑧—⑩种情况中,业务暂停,需要少量人工干预将业务恢复,时间不会超过10分钟。1.2.5生产节点发生灾难如果生产节点发生灾难,则所有业务要切换至第二生产节点,其过程如上图所示情况⑨,需要少量人工干预,在这种情况下人工干预是指将V-2暂时中断的工作重新启动,主机能够重新访问存储系统,最终业务恢复。1.2.6生产节点恢复生产节点修复后,需要重新将生产节点和第二生产节点的VPLEX关联起来。EMC双活数据中心方案建议书第-10-页共-16-页在VPLEX上重新通过两个节点的VPLEX产生一个分布式虚拟LUN,采用分布式RAID1保护,此时业务可以正常运行,第二生产节点与生产节点之间的数据在后台进行复制,直到两边数据一致。在这个过程中,我们还需要将VPLEX的Witness修复,在其中定义生产节点为主节点。2.网络系统架构设计2.1互联网接入部分该部分内容EMC只是根据其他用户的经验提供一些建议,具体设计与实施还需要专业的网络系统厂商或集成商提供。建议两个生产分别租用两条互联网出口线路,一条联通线路,一条电信线路。在每条线路出口处,分别透明部署一台智能抗攻击设备,用以抵挡来自互联网的Dos/DDos等攻击,保护内部用户和服务器的安全。在两台抗攻击设备后,分别部署两台链路负载均衡设备,用来实现多广域网线路选路和冗余备份,使用户可以通过最快线路访问***业务系统,加快了数据中心访问速度。同时,当任何一条线路故障,用户依然可以通过另一条广域网线路访问数据中心服务器,提高了数据中心的可靠性。链路负载均衡设备可实现多条internet接入链路的负载均衡,可以同时实现outbound流量和inbound流量双向的负载均衡。链路负载均衡设备会通过多种方式检测两条链路的健康状况,一旦发现其中一条链路故障,会立即将所有用户流量定向至其它可用链路,从而实现Internet连接的高可用性。主要的方法有:为了确保ISP链路的畅通,链路负载均衡设备将采用Ping的方法,不仅仅检查和其相连的路由器的端口是否可达,还可以检查该链路后续路由节点的连通性(10跳),已确保整个路径的畅通。EMC双活数据中心方案建议书第-11-页共-16-页针对所有的网络环境(包括禁止ICMP的ISP),链路负载均衡设备提供了丰富的4~7层检查方式,并可以通过多种检查结果的“与”和“或”运算结果,最终准确判断链路的健康状况。在链路负载均衡设备旁路部署全局负载均衡设备。通过全局负载均衡设备的智能DNS功能,实现两数据中心的灾备功能。当第一生产中心的所有服务器故障或受到攻击而不能提供服务时,全局负载均衡设备会引导用户(自动或人工)去第二生产中心访问业务。在用户的权威DNS服务器上添加NS记录,使服务器域名的解析权交给主备两个站点的全局负载均衡设备。当全局负载均衡设备(无论哪个中心)收到用户DNS请求后,首先会检测服务器状态,确认应用是否健康,能否正常提供服务,广域网线路是否正常等等。如果主站点服务器能提供正常服务,再根据DNS请求包源地址,将域名解析为主站点的联通或电信地址(根据动态探测结果),使用户访问主站点服务器。如果主