1、系统容灾解决方案容灾基本概念容灾是一个范畴比较广泛的概念,广义上,我们可以把所有与业务连续性相关的内容都纳入容灾.容灾是一个系统工程,它包括支持用户业务的方方面面。而容灾对于IT而言,就是提供一个能防止用户业务系统遭受各种灾难影响及破坏的计算机系统。容灾还表现为一种未雨绸缪的主动性,而不是在灾难发生后的“亡羊补牢。从狭义的角度,我们平常所谈论的容灾是指:除了生产站点以外,用户另外建立的冗余站点,当灾难发生,生产站点受到破坏时,冗余站点可以接管用户正常的业务,达到业务不间断的目的.为了达到更高的可用性,许多用户甚至建立多个冗余站点.容灾系统是指在相隔较远的异地,建立两套或多套功能相同的IT系统,
2、互相之间可以进行健康状态监视和功能切换,当一处系统因意外(如火灾、地震等)停止工作时,整个应用系统可以切换到另一处,使得该系统功能可以继续正常工作。容灾技术是系统的高可用性技术的一个组成部分,容灾系统更加强调处理外界环境对系统的影响,特别是灾难性事件对整个IT节点的影响,提供节点级别的系统恢复功能。要实现容灾,首先要了解哪些事件可以定义为灾难?典型的灾难事件是自然灾难,如火灾、洪水、地震、飓风、龙卷风、台风等;还有其它如原提供给业务运营所需的服务中断,出现设备故障、软件错误、网络中断和电力故障等等;此外,人为的因素往往也会酿成大祸,如操作员错误、破坏、植入有害代码和病毒袭击等。现阶段,由于信息
3、技术正处在高速发展的阶段,很多生产流程和制度仍不完善,加之缺乏经验,这方面的损失屡见不鲜。容灾的七个层次等级1:被定义为没有信息存储的需求,没有建立备援硬件平台的需求,也没有发展应急计划的需求,数据仅在本地进行备份恢复,没有数据送往异地。这种方式是成本最低的灾难恢复解决方案,但事实上这种恢复并没有真正达到灾难恢复的能力。 一种典型等级1方式就是采用本地磁带库自动备份方案,通过制定相关的备份策略,可以实现系统等级1备份。等级2:是一种为许多站点采用的备份标准方式。数据在完成写操作之后,将会送到远离本地的地方,同时具备有数据恢复的程序.在灾难发生后,在一台未启动的计算机上重新完成.系统和数据将被恢
4、复并重新与网络相连.这种灾难恢复方案相对来说成本较低,但同时有难以管理的问题,即很难知道什么样的数据在什么样的地方.这种情况下,恢复时间长短依赖于何时硬件平台能够被提供和准备好。典型方式就是将数据备份到本地磁带介质上,然后通过运输方式(如“卡车”)将备份介质送往异地保存,而异地没有主机系统。当灾难发生时,再使用新的主机,利用数据备份介质(磁带)将数据恢复起来。 等级3:相当于等级2再加上具有热备份能力站点的灾难恢复。热备份站点拥有足够的硬件和网络设备去支持关键应用的安装需求。对于十分关键的应用,在灾难发生的同时,必须在异地有正运行着的硬件提供支持.这种方式与等级2方式的区别是在异地有一个热备份
5、站点,该站点有主机系统,平时利用数据备份介质(磁带)将数据恢复到主机系统起来。一旦发生灾难,利用该主机系统将数据恢复。这种情况下,由于备份介质是采用运输方式送往异地,可能会有一天、甚至一周的数据丢失.由于备份站点己经有主机系统,数据恢复典型地需要一定的时间。等级4:是在等级3的基础上用电子链路取代了卡车进行数据传送的灾难恢复。接收方的硬件必须与主站点物理分离,在灾难发生后,存储的数据用于灾难恢复。由于热备份站点要保持持续运行,因此增加了成本.但由于采用了电子链接方式,取消了传输工具,这样提高了灾难恢复的速度。 该方式的特点是用电子数据传输取代了使用传统交通工具(“卡车”)来传输备份数据.由于采
6、用了电子数据传输,数据丢失的时间可能是一天甚至更短,而数据恢复则可能是一天的时间.等级5:第二站点(备份站点)不仅仅是一个分离的备份系统, 还处于活动状态(运行).而备份数据则可以双向传输,数据的丢失与恢复时间达到小时甚至分钟级。 这种灾难恢复要求两个站点同时处于活动状态并管理彼此的备援数据,允许备援行动在任何一个方向发生。接收方硬件必须保证与另一方平台物理分离。这种情况下,工作负载可以在两个站点之间被分担,站点1成为站点2的备份.在两个站点之间,在线关键数据的拷贝不停地相互传送着。在灾难发生时,需要的关键数据通过网络可迅速恢复,通过网络的切换,关键应用的恢复时间也可降低到了小时级或分钟级。等
7、级6:在等级5的基础上使用了镜像技术,也就是说,在更新请求被认为满意之前,等级6需要应用站点与备援站点的数据都被更新。数据在两个站点之间相互映像,由远程两步提交来同步,因为关键应用使用了双重在线存储,所以在灾难发生时,仅仅传送中的数据被丢失,恢复的时间被降低到了分钟级。等级6方式的数据不仅在本地进行确认,而且需要在异地(备份)进行确认。因为,数据是镜像地写到两个站点,所以灾难发生时只会丢失正在传输的一部分数据,因而可以在分钟级进行数据恢复。等级7:是灾难恢复中最昂贵的方式,也是速度最快的恢复方式,它被认为是灾难恢复的最高级别,可以实现零数据丢失率.等级7方式在本地和远程的所有数据被更新的同时,
8、利用了双重在线存储和完全的网络切换能力。等级方式不仅保证数据的完全一致性,而且存储和网络等环境具备了应用的自动切换能力。一旦发生灾难,备份站点不仅有全部的数据,而且应用可以自动接管,实现无数据丢失的备份。本文着重讨论的等级5、6、7层的容灾解决方案.容灾需要考虑的内容在通常情况下,IT系统相关的灾难备份方案设计都必须考虑以下五大因素,灾难类型:需要考虑哪些灾难?怎样的灾难?会使业务中断多久?恢复速度RTO(Recovery Time Objective ):灾难发生后需要多久来启动及运行系统?能否承受数天或数分钟的等待?恢复程度RPO(Recovery Point Objective ):需要
9、恢复每条记录和交易吗?可以使用昨天或上星期的数据吗?需要恢复一切吗?有相关的文件吗?什么是合法隐含的要求?有少数的一组人输入交易吗?他们可以重新输入灾难期间丢失的交易吗?这些交易十分重要而不容许丢失吗?可用的技术:必须结合考虑所选技术在本地区的适用性、实现条件以及在实施时是否受某些现有条件的制约?异构环境问题:其实质是投资保护问题。如果由于采购了异构的硬件平台,而导致对老设备无法利用,或者今后无法使用其它硬件平台,势必造成投资的巨大浪费。容灾中心综合利用问题:容灾中心的建设,势必花费大量的资金和人力,如果容灾中心的功能只是静态地等待概率事件发生时产生效用,其实也是一种巨大的浪费,因此,容灾中心
10、的综合利用是有效提高容灾中心投资回报的手段。最常见的方式有:利用容灾中心的数据实现离线数据挖掘,甚至于建立两个同时可用的生产中心,互为容灾等。容灾中心、容灾服务的扩展问题:这是提高容灾中心投资回报率的另一个思考角度.如何建立一个有弹性的IT架构的容灾中心,可以在业务不断扩展的同时,为更多的应用提供更多、更全面的容灾服务,也是我们在容灾中心建立时需要考虑的重要问题。切换成本:这是非常容易被忽略的一个部分,无论是容灾演练、小范围系统故障、还是大范围灾难造成的系统切换,都会一定程度上产生多种成本。而当这种切换较为频繁时(通常是由小范围的系统故障造成),其造成的成本更不容忽视.投资成本:实现灾难备份需
11、要多少投资?不实现灾难备份会损失多少钱?同时,无论任何时候,备份都是非常重要的,并要定期测试备份的可靠性,一种技术只能减少或防止某些类型的灾难影响。容灾方案分类及特点在介绍一些容灾方案之前,我们可以了解到容灾方案的分类大体分为很多种,如:根据距离分类:同城容灾、远程容灾;根据数据最大数据损失量(RPO)分类:离线数据容灾、在线数据容灾;根据系统最大系统恢复时间(RTO)分类:数据级容灾、应用级容灾;根据容灾物理层次分类:磁盘系统层、操作系统层、应用系统层。本文按第四种分类方式介绍容灾解决方案.磁盘系统层以同步复制技术为基础,通过磁盘阵列实现数据同步复制,从而保证生产中心阵列与容灾中心阵列的在线
12、数据完全同步。其整体方案中也包含了同步快速恢复、快照等辅助技术.从而实现整个容灾体系的要求.当然,所有的前提就是,生产中心的磁盘阵列和容灾中心的磁盘阵列必须是同构的。当发生灾难或者出现不可恢复的错误时,可以提升远程的阵列以接管正常的I/O操作,实现了磁盘子系统层的数据保护。【典型案例】某单位在新大楼建立企业数据存储系统,以满足应用发展对数据存储及系统性能的需要。在新大楼和老大楼(同城异地)两地之间建立容灾系统,相距小于15公里。新大楼为生产中心,老大楼为容灾中心.【系统拓扑图】容灾系统拓扑结构如下图.对重要的应用系统通过基于存储的容灾技术进行保护。【项目描述】容灾系统采用基于磁盘阵列的容灾技术
13、,生产中心与容灾中心通过SAN网络进行连接,根据目前运行负载状况,在生产中心与容灾中心之间采用4对光纤直接连接两中心的SAN交换机,可满足目前和今后一段时间的数据流量,数据复制采用EMC SRDF技术同步方式进行。容灾中心存储系统设备:1台存储设备DMX1000和2台SAN交换机ED-64M。生产中心存储系统设备:2台SAN网络交换机ED-140M、1台数据存储设备DMX1000。该项目的实施,实现下列目标实现关键应用的应用容灾;容灾系统的数据损失指标RPO小于5分钟;应用容灾系统恢复运行指标RTO小于2小时;容灾系统的建设和运行,并不对生产系统的运行性能产生不良影响。容灾系统容灾传输线路的中
14、断或故障不影响生产系统的正常运行,容灾传输线路恢复正常后,容灾系统能自动同步生产中心和容灾中心的数据,实现自动再同步。操作系统层以镜像技术为基础,实现生产中心阵列与容灾中心阵列的在线数据完全同步。从而实现数据的容灾功能。当然作为容灾方案来说,仅有镜像技术是远远不够的。因此在远程镜像技术中,通常包含更丰富的技术手段,来实现数据容灾的完整要求。例如,用于灾难修复后的系统恢复基于日志的镜像快速修复技术;用于支持多根光纤通道协同工作的动态多路径技术;用于逻辑错误快速恢复或者容灾中心数据使用的卷快照、文件系统快照技术;用于调整读写性能的读优先选择技术;用于镜像启动、暂停、继续等镜像过程的镜像监控技术等。
15、 由于镜像的基本原理决定,生产中心的存储与容灾中心的存储在写数据时不存在主从关系,因此,无论哪一个阵列因故停顿,都不会导致数据的读写发生停顿,可以做到数据容灾意义上的“零”停机。其意义不是单纯的通过“零”停机保障了业务的连续性,并且避免了由于存储非正常停机带来巨大的数据一致性风险(也就是数据库遭到破坏,数据不可用),而数据一致性风险是导致长时间业务停顿的主要因素。【典型案例】某单位的应用系统等当前都是以本地Cluster或者单服务器方式运行,一旦遇到火灾等大灾难时,信息系统有可能完全瘫痪,甚至于无法恢复(备份系统的磁带库也在同一幢大楼).【拓扑结构】【项目描述】整个容灾系统主要设备有6台IBM
16、 P系列小型机(应用服务器)、4台SAN交换机和2台EMC DMX 800存储组成,具体的物理连接见上图。项目总体思路是通过Veritas存储管理软件Veritas Storage Foundation HA来实现系统容灾。Veritas Storage Foundation HA主要由Veritas VVM(卷管理工具)、VCS(双机容错工具)、VFS(Veritas 文件系统)以及特定的应用代理(agent)等多个组件组成。其中通过VVM卷管理工具实现数据容灾,通过VCS以及特定的代理实现应用级别容灾。通过这种方案,在灾难发生的时候,无需人工干预就可实现应用系统切换,人工参与的只是灾后机房
17、重建和数据同步。Symantec建议利用VERITAS Storage Foundation系列软件的镜像技术,来构建容灾方案。利用VERITAS Storage Foundation的镜像技术构建容灾系统是非常简单的,它只有一个条件,就是将生产中心和容灾中心之间的SAN存储区域网络通过光纤连接起来,建立城域SAN存储网络。然后,我们就可以通过Storage Foundation提供的非常成熟的跨阵列磁盘镜像技术来实现同城容灾了,容灾方案的结构如下图所示:从镜像原理上讲,在城域SAN存储网络上的两套磁盘系统之间的镜像,和在一个机房内的SAN上的两个磁盘系统之间的镜像并没有任何区别。利用裸光纤将
18、生产中心和容灾中心的SAN网络连接起来,构成城域SAN网络以后,利用 VERITAS Storage Foundation的先进逻辑卷管理功能,我们就可以非常方便的实现生产中心磁盘系统和容灾中心磁盘系统之间的镜像了。如下图所示。我们可以看到,利用VERITAS Storage Foundation可以创建任意一个逻辑卷(Volume)供业务主机使用,实际上是由两个完全对等的,容量相同的磁盘片构成的,两个磁盘片上的数据完全一样,业务主机对该Volume的任意修改,都将同时被写到位于生产中心和容灾中心的两个磁盘系统上。采用这种方式,生产中心的磁盘阵列与同城容灾中心的磁盘阵列对于两地的主机而言是完全
19、同等的。利用城域SAN存储网络和VERITAS Storage Foundation镜像功能,我们可以非常轻松的实现数据系统的异地容灾。并且消除了复制技术(无论是同步还是异步)的切换动作,从而保证零停机时间,零数据损失的实现。应用程序层利用应用软件自身的容灾功能实现容灾,如DB2 Data Propagator、Oracle Replication Product等等。通过应用程序自身的复制功能,同步数据,达到容灾的目的。【典型案例】某单位采用Sun ONE 邮件系统,由于其目录服务不支持VCS群集切换的工作方式,目前的版本又无法在两个节点间同步目录信息,当前仅有一个节点的目录信息是最新有效的
20、。邮件帐户、通讯簿等重要信息都储存在目录中,这些信息存在单点故障,当邮件服务切换到备用节点时会出现通讯簿和部分用户帐户丢失等问题。如果主节点目录信息损坏,将对邮件系统的运行造成很大影响,需要重新建立部分邮件帐户和所有通讯薄信息。因此针对这些缺点,实现目录服务的容灾势在必行。【拓扑结构】【项目描述】由二台sun 小型机提供邮件消息存储服务;二台ldap HP PC服务器安装目录服务软件提供邮件帐号存储及认证服务,而且配置双向复制功能来实现用户数据的同步.本案例中,两台LDAP服务器虽然从物理位置暂时处于同一机房,但从技术上来看,通过负载均衡设备和LDAP自身的双向同步复制功能,已经实现了LDAP
21、的容灾,在SAN连通的情况下,只需要将一台服务器移至容灾机房即可实现异地容灾.对比三种容灾方式对比如下:磁盘系统层操作系统层应用层硬件环境磁盘同构服务器同构服务器、存储都可异构,一般要求应用版本同构网络资源可以基于TCP/IP链路实现.也可以基于SAN链路实现,在同城容灾中,采用SAN链路实现数据同步容灾方式为主。距离在80KM以内可以基于TCP/IP链路实现。也可以基于SAN链路实现,在同城容灾中,采用SAN链路实现数据同步容灾方式为主。距离在80KM以内一般采用IP网络连接,无距离限制容灾数据与生产数据关系物理隔离,逻辑一体物理隔离,逻辑一体物理、逻辑隔离RTO(Recovery Time
22、 Objective)、RPO(Recovery Point Objective)RPO为零,无数据损失.RTO不为零,应用会中断,需要手工切换存储。RPO、RTO为零。无应用中断、无数据损失。同步方式对生产中心的性能影响极大。因此基本采用非同步方式,RPO、RTO都不为零,需要停机时间。适用场景结构简单可靠;对已有系统影响小,部署简单;磁盘阵列同构;关注于数据保护RPO、RTO要求高;磁盘阵列异构;关注于数据保护及更短的切换时间数据重复利用;与硬件架构基本无关;应急预案及演练咨询方案很多用户开始时误认为容灾是技术项目,其实容灾项目不是单纯的技术项目,而是业务项目,早期的BCP(业务连续性规划)是最重要的,BCP要占整个项目80%的工作量。灾难备份项目强调的是业务不中断而不是I T 不中断,现在用户已经越来越认识到,容灾的目的不仅是防止数据丢失,而是保证业务的连续性,因此从项目名称上,很多用户已经不再称为容灾,而是改称为业务连续性项目。BCP涉及到各个业务部门,大量的工作是与业务部门人员进行沟通,而只有容灾技术方案是与 IT部门完成的。BCP规划完成后在确定容灾方案时也要根据 RTO和RIO的要求,分成不同的层面来考虑,例如有些需要数据同步技术,有一些需要应用级容灾,还有些只需要本地备份就可以。在运行过程中,容灾的演练也是非常重要的环节。