容灾系统
1.容灾系统概述
容灾系统是指在相隔较远的异地,建立两套或多套功能相同的IT系统,互相之间可以进行健康状态监视和功能切换,当一处系统因意外(如火灾、地震等)停止工作时,整个应用系统可以切换到另一处,使得该系统功能可以继续正常工作。容灾技术是系统的高可用性技术的一个组成部分,容灾系统更加强调处理外界环境对系统的影响,特别是灾难性事件对整个IT节点的影响,提供节点级别的系统恢复功能。
完善的容灾系统是企业保护核心数据,让企业生产应用不间断运行、为客户提供增值服务的关键和前提。
2.容灾系统的类型
从其对系统的保护程度来分,可以将容灾系统分为:数据容灾和应用容灾。
数据容灾就是指建立一个异地的数据系统,该系统是本地关键应用数据的一个实时复制。
应用容灾是在数据容灾的基础上,在异地建立一套完整的与本地生产系统相当的备份应用系统(可以是互为备份),在灾难情况下,远程系统迅速接管业务运行。数据容灾是抗御灾难的保障,而应用容灾则是容灾系统建设的目标。
一、数据容灾
所谓数据容灾,就是指建立一个异地的数据系统,该系统是本地关键应用数据的一个可用复制。在本地数据及整个应用系统出现灾难时,系统至少在异地保存有一份可用的关键业务的数据。该数据可以是与本地生产数据的完全实时复制,也可以比本地数据略微落后,但一定是可用的。采用的主要技术是数据备份和数据复制技术。
数据容灾技术,又称为异地数据复制技术,按照其实现的技术方式来说,主要可以分为同步传输方式和异步异步传输方式(各厂商在技术用语上可能有所不同),另外,也有如“半同步”这样的方式。半同步传输方式基本与同步传输方式相同,只是在Read占 I/O比重比较大时,相对同步传输方式,可以略微提高I/O的速度。而根据容灾的距离,数据容灾又可以分成远程数据容灾和近程数据容灾方式。下面,我们将主要按同步传输方式和异步异步传输方式对数据容灾展开讨论,其中也会涉及到远程容灾和近程容灾的概念,并作相应的分析。
二、应用容灾
所谓应用容灾,是在数据容灾的基础上,在异地建立一套完整的与本地生产系统相当的备份应用系统 (可以是互为备份)。建立这样一个系统是相对比较复杂的,不仅需要一份可用的数据复制,还要有包括网络、主机、应用、甚至IP等资源,以及各资源之间的良好协调。主要的技术包括负载均衡、集群技术。数据容灾是应用容灾的技术,应用容灾是数据容灾的目标。
在选择容灾系统的构造时,还要建立多层次的广域网络故障切换机制。本地的高可用系统指在多个服务器运行一个或多种应用的情况下,应确保任意服务器出现任何故障时,其运行的应用不能中断,应用程序和系统应能迅速切换到其它服务器上运行,即本地系统集群和热备份。
在远程的容灾系统中,要实现完整的应用容灾,既要包含本地系统的安全机制、远程的数据复制机制,还应具有广域网范围的远程故障切换能力和故障诊断能力。也就是说,一旦故障发生,系统要有强大的故障诊断和切换策略制订机制,确保快速的反应和迅速的业务接管。实际上,广域网范围的高可用能力与本地系统的高可用能力应形成一个整体,实现多级的故障切换和恢复机制,确保系统在各个范围的可靠和安全。
3.容灾系统的等级
参照国际灾难备份行业的通行灾难备份等级划分原则,根据异地数据的多寡,异地数据与生产数据的差异程度,以及灾难恢复环境的完备程度,将灾难备份系统从低到高划分为如下四个等级:
第0级:没有备援中心
这一级容灾备份,实际上没有灾难恢复能力,它只在本地进行数据备份,并且被备份的数据只在本地保存,没有送往异地。
第1级:本地磁带备份,异地保存
在本地将关键数据备份,然后送到异地保存。灾难发生后,按预定数据恢复程序恢复系统和数据。这种方案成本低、易于配置。但当数据量增大时,存在存储介质难管理的问题,并且当灾难发生时存在大量数据难以及时恢复的问题。为了解决此问题,灾难发生时,先恢复关键数据,后恢复非关键数据。
第2级:热备份站点备份
在异地建立一个热备份点,通过网络进行数据备份。也就是通过网络以同步或异步方式,把主站点的数据备份到备份站点,备份站点一般只备份数据,不承担业务。当出现灾难时,备份站点接替主站点的业务,从而维护业务运行的连续性。
第3级:活动备援中心
在相隔较远的地方分别建立两个数据中心,它们都处于工作状态,并进行相互数据备份。当某个数据中心发生灾难时,另一个数据中心接替其工作任务。这种级别的备份根据实际要求和投入资金的多少,又可分为两种:①两个数据中心之间只限于关键数据的相互备份;②两个数据中心之间互为镜像,即零数据丢失等。零数据丢失是目前要求最高的一种容灾备份方式,它要求不管什么灾难发生,系统都能保证数据的安全。所以,它需要配置复杂的管理软件和专用的硬件设备,需要投资相对而言是最大的,但恢复速度也是最快的。
不同等级的灾难备份系统,其投资差异非常巨大,企业需要根据实际情况,主要是遭受严重灾难后的损失情况,以及发生灾难的几率,建立满足企业需求的灾难备份系统。
4.容灾系统的衡量指标
衡量容灾系统的两个技术指标:
RPO(Recovery Point Objective):即数据恢复点目标,主要指的是业务系统所能容忍的数据丢失量。
RTO(Recovery Time Objective):即恢复时间目标,主要指的是所能容忍的业务停止服务的最长时间,也就是从灾难发生到业务系统恢复服务功能所需要的最短时间周期。
RPO针对的是数据丢失,而RTO针对的是服务丢失,二者没有必然的关联性。RTO和RPO的确定必须在进行风险分析和业务影响分析后根据不同的业务需求确定。对于不同企业的同一种业务,RTO和RPO的需求也会有所不同。
5.容灾备份的关键技术
在建立容灾备份系统时会涉及到多种技术,如:SAN或NAS技术、远程镜像技术、基于IP的SAN的互连技术、快照技术等。这里重点介绍远程镜像、快照和互连技术。
1. 远程镜像技术
远程镜像技术是在主数据中心和备援中心之间的数据备份时用到。镜像是在两个或多个磁盘或磁盘子系统上产生同一个数据的镜像视图的信息存储过程,一个叫主镜像系统,另一个叫从镜像系统。按主从镜像存储系统所处的位置可分为本地镜像和远程镜像。远程镜像又叫远程复制,是容灾备份的核心技术,同时也是保持远程数据同步和实现灾难恢复的基础。远程镜像按请求镜像的主机是否需要远程镜像站点的确认信息,又可分为同步远程镜像和异步远程镜像。
同步远程镜像(同步复制技术)是指通过远程镜像软件,将本地数据以完全同步的方式复制到异地,每一本地的I/O事务均需等待远程复制的完成确认信息,方予以释放。同步镜像使远程拷贝总能与本地机要求复制的内容相匹配。当主站点出现故障时,用户的应用程序切换到备份的替代站点后,被镜像的远程副本可以保证业务继续执行而没有数据的丢失。但它存在往返传播造成延时较长的缺点,只限于在相对较近的距离上应用。
异步远程镜像(异步复制技术)保证在更新远程存储视图前完成向本地存储系统的基本I/O操作,而由本地存储系统提供给请求镜像主机的I/O操作完成确认信息。远程的数据复制是以后台同步的方式进行的,这使本地系统性能受到的影响很小,传输距离长(可达1000公里以上),对网络带宽要求小。但是,许多远程的从属存储子系统的写没有得到确认,当某种因素造成数据传输失败,可能出现数据一致性问题。为了解决这个问题,目前大多采用延迟复制的技术(本地数据复制均在后台日志区进行),即在确保本地数据完好无损后进行远程数据更新。
2.快照技术
远程镜像技术往往同快照技术结合起来实现远程备份,即通过镜像把数据备份到远程存储系统中,再用快照技术把远程存储系统中的信息备份到远程的磁带库、光盘库中。
快照是通过软件对要备份的磁盘子系统的数据快速扫描,建立一个要备份数据的快照逻辑单元号 LUN和快照cache。在快速扫描时,把备份过程中即将要修改的数据块同时快速拷贝到快照cache中。快照LUN是一组指针,它指向快照cache和磁盘子系统中不变的数据块(在备份过程中)。在正常业务进行的同时,利用快照LUN实现对原数据的一个完全的备份。它可使用户在正常业务不受影响的情况下(主要指容灾备份系统),实时提取当前在线业务数据。其“备份窗口”接近于零,可大大增加系统业务的连续性,为实现系统真正的7×24运转提供了保证。
快照是通过内存作为缓冲区(快照cache),由快照软件提供系统磁盘存储的即时数据映像,它存在缓冲区调度的问题。
3.互连技术
早期的主数据中心和备援数据中心之间的数据备份,主要是基于SAN的远程复制(镜像),即通过光纤通道FC,把两个SAN连接起来,进行远程镜像(复制)。当灾难发生时,由备援数据中心替代主数据中心保证系统工作的连续性。这种远程容灾备份方式存在一些缺陷,如:实现成本高、设备的互操作性差、跨越的地理距离短(10公里)等,这些因素阻碍了它的进一步推广和应用。
目前,出现了多种基于IP的SAN的远程数据容灾备份技术。它们是利用基于IP的SAN的互连协议,将主数据中心SAN中的信息通过现有的TCP/IP网络,远程复制到备援中心SAN中。当备援中心存储的数据量过大时,可利用快照技术将其备份到磁带库或光盘库中。这种基于IP的SAN的远程容灾备份,可以跨越LAN、MAN和WAN,成本低、可扩展性好,具有广阔的发展前景。基于IP的互连协议包括:FCIP、iFCP、Infiniband、iSCSI等。
6.建设企业容灾系统应注意的问题
1.加强数据安全意识
目前国内用户所能购买到的灾难备份产品,在技术上并不落后于国外用户,但是国外用户在灾难备份意识上,明显比国内用户强。国外很多企业是全球性运作,要求业务能够7×24小时不间断工作,对业务的连续性要求高,一旦出现中断将造成巨大损失。而目前国内企业的规模相对较小,对业务连续运行的需求没有那么强烈,因此对灾难备份的意识相比国外客户来说要淡薄些。但随着中国加入WTO市场以及跨区域、跨国企业的逐渐增加,国内客户的认识、需求正逐渐提高。
在数据安全意识方面,国内企业常常会走两个极端。有的企业是没有数据安全的防卫意识,而一旦意识到要保证数据安全了,就想到容灾。数据安全其实不仅仅是容灾,它应该是一个体制,是一个管理范畴的问题,例如人员的管理,大楼的安全,网络的安全等,这些对于企业保证数据安全才是最重要的;其次才是技术的问题。容灾系统应该具有三个层次,包括了主机的高可用系统、备份系统和整体系统故障异地容灾。但是国内的许多企业在做异地容灾的时候都只重视第三个层次,殊不知前两个层次能够有效地屏蔽掉单点故障等局部故障问题,在整个容灾系统中也起着重要的作用。
2.实现容灾需因地制宜
企业在制定数据安全方案时,首先要加强人员管理,建立安全体制,避免人为失误;第二步是采用磁带和双机热备份来确保本地的数据安全;第三步才是用到远程灾难备份。其实灾难备份只是业务连续性的一部分,保证业务连续性应包括两个方面:一是计划内的停机,如备份、系统升级、维护等造成的计划停机;另一方面是非计划的中断,如电源、通信链路、灾难等引起的灾难性备份。
根据企业的规模、所处地域、业务类型、网络状况、数据量等因素,容灾备份系统的建设需因地制宜地采取不同容灾技术以免造成不必要的成本消耗。如果是防火灾,则容灾中心距离容灾数据中心只需要几百米就可以了。如果要是水灾,则要求它们之间的距离在数公里以上。如果要是预防地震的话,则需要保持几百公里的距离。此外,不同的地域需求也有不同,例如在北京,就可以不用考虑水灾的问题,而在有的地区,地震就不用考虑。
3.容灾成本考虑
企业在建立灾难备份系统时,须考虑整个系统成本问题。如果实现远程异地自动备份,租赁通信链路所付出的代价较大。国内中小企业目前一般采用的多是本地备份,这主要是因为资金和中国通信广域网线路的限制。而国外用户一般都租用比较宽的带宽。
100公里以上的异地灾难备份将是未来的一种趋势。这种备份目前分为两种形式,一种是历史备份,一般采用每天凌晨备份的形式,出现问题可以恢复一天前的数据。如果对数据要求不是很高的话,可以采用3天,甚至一周备份的方式,可以节约很多成本。
4.数据大集中有利于灾难恢复
要想做好针对灾难性的备份系统,数据大集中是亟待解决的问题。由于灾难性备份系统的建立需要耗费很大的资金,如果每一个地市都建立一个灾难性备份中心,企业是很难承受的。有效整合目前的资源,建立全省性的,或是区域性的数据集中系统,可以减少灾难备份系统建设的成本。
目前最有效的备份方式是“数据大集中”,以“数据大集中”为基础的灾难备份手段,可以有效避免企业各分部各自进行备份而导致的各自为政、管理不统一的问题出现。以“数据大集中”为基础的灾难备份会使管理更有效,也便于数据统计。
7.企业容灾系统构建
实现了数据集中处理之后,企业的业务运行和经营管理将更依赖于信息系统的可靠运行。服务的连续性以及业务数据的完整性、正确性和有效性,将直接关系到企业的生产、经营与决策。一旦因自然灾害、设备故障或人为因素等引起了信息系统的停顿,导致了数据丢失或业务处理的中断,将会造成巨大的经济损失和声誉损害,甚至会让企业受到致命打击。
当然,企业的业务信息数据是有生命周期的,从产生那一刻起就进入到一个循环周期,从收集、复制、访问、迁移到删除,周而复始,而处在生命周期不同阶段的信息数据的价值又是不一样的。因此,业务信息需要不同级别的保护,其中一些信息和事务需要比以前更高的保护级别; 而另外一些信息和事务则仅需要用更有吸引力的价位提供标准保护就行了。企业在构建自己的容灾系统时,有必要根据信息价值的变化实施分级存储,以合理调配存储资源,降低整体拥有成本。
选择好技术与工具
建立容灾系统的初衷就是以最合理的代价保护应用数据的完整性与安全性,在灾难发生后尽快恢复系统运行,减少业务停顿时间,尽可能不中断或不影响业务的正常进行,并让灾难对企业造成的损失降到最低。也就是说,无论两个系统相隔多远,当一个数据中心出现问题时,另一个数据中心就能迅速接替运行,同时既要保证业务数据的完整性,又要保证关键业务的连续性。
保持业务连续性就对灾难恢复系统提出了更高的要求—要保证业务的连续性,要保证业务数据的连续性,就要对系统提供连续完整的基本数据; 缩小或取消应用系统用于批处理和数据备份(如磁带备份)的时间,保证关键业务服务24小时不中断; 为业务发展及应用提供与生产系统完全一致的开发与测试环境。
目前,在构建容灾系统方面出现了四个不同发展方向的技术趋势,这为保证企业数据的完整性及业务的连续性提供了新的不同的选择。
1. 实时热备份技术实时热备份技术虽然缺点非常明显,比如一次性投资昂贵、通信费用高等,但其优点也很明显,就是对数据的完整性以及对业务连续性的高保证。现在,随着业务的发展及竞争的需要,企业对业务连续性的要求将越来越高,因此用实时热备份技术来实现灾难备份已经成为了主流的发展趋势。
2. 外包方式 灾难恢复计划涉及业务风险分析、方案选择、实施、测试、培训、演习等内容,是一项既复杂又烦锁的工作。采用外包方式则可以将灾难恢复计划交给专业公司来完成,企业就可以专心从事核心业务的生产和经营了。
3. 开发灾难恢复计划辅助工具 灾难恢复计划是一项系统工程,开发灾难恢复计划辅助工具与系统是非常有必要的,这其中包括备份策略决策系统、灾难恢复指引系统及自动运行管理系统等。
备份策略决策系统是以风险及损失分析为基础的,同时考虑成本、恢复速度、防灾种类、数据的完整性等因素,通过科学的分析及决策方法来确定应采用的备份策略; 灾难恢复指引系统是通过将相应的灾难恢复处理流程编成相应的在线指引性软件系统,在灾难发生后指导管理维护人员一步一步地依照设定好的步骤,准备相应的资源,执行相应的操作,从而准确地进行灾难恢复; 自动运行管理系统是指通过软硬件等措施,实现生产系统及备份系统的全部或部分自动操作,这样既可减少人员的投入,又可减少由于人为失误而带来的损失,从而提高整个系统的安全性与可靠性。
4. 远程容灾前面提到,根据业务种类的不同,各种数据的安全级别是不同的,为防范高级别的故障(如火灾、地震),可以通过远程监控体系和报警体系实现远程切换,切换包括IP、域名和应用等。一旦故障解除,应用系统的主备站点恢复传输,采用异地复制中断传输的恢复流程(软件方式复制),断点序号重传,增量异地同步实现增量块复制。
七大规划原则
首先,在制定容灾系统方案的过程中要考虑的就是容灾系统建设对原有业务系统带来的影响。比如,采用数据复制技术对系统I/O带来的延迟,应用数据同步对日常业务处理系统带来的压力等。因此,企业要通过周密的测试和分析来规避容灾系统建设时带来的这些风险,以保证业务系统不会因容灾系统的建设而出现在处理性能上下降的问题。
第二,数据状态要保持同步。为保证在灾难发生时,业务可以成功地切换到备份中心,就必须保证容灾系统数据同步机制的可靠性。因此,建立可靠的数据同步校验机制是必须的; 同时,还要考虑建立定时的、自动的数据同步核查对比机制,以检验两个中心数据的一致性,这是数据容灾工作中非常重要的一部分。
第三,容灾系统的日常维护工作要尽可能轻,并能承担部分业务处理和测试的工作。容灾系统的维护和管理是容灾切换成功的重要保证,在系统建设中,就必须要考虑系统的维护管理流程。生产中心任何业务处理过程的改变都必须完整地复制到备份中心; 所有新业务系统上线时,必须通知备份中心,并在备份中心配置好数据同步机制; 对原程序的改动也必须保证两个中心同时上线。
第四,系统恢复时间要尽可能短。容灾系统主要是为了实现在主中心系统发生灾难时,可以在规定时间切换到备份中心,保证数据不会丢失,并且继续向用户提供服务。但往往在灾难发生时,主要技术人员不能及时到达现场,为了顺利实现系统间的切换,应该让系统切换操作尽可能地简单; 并建立固定化的、标准化的切换流程,要求维护人员在切换演习时严格按照流程的指导步骤进行操作。
第五,可实现部分业务子系统的切换和回切。当人事变动、业务变化、IT设施变化以及其他可能引起恢复规划文档失效的变化发生时,应及时更新各恢复规划文档,并在必要时启动模拟测试或演习,确保业务连续性系统的工作能力。
第六,技术方案选择要遵循成熟稳定、高可靠性、可扩展性、透明性的原则。目前,国际上比较成熟的容灾技术包括: SAN/NAS技术、远程镜像技术、虚拟存储、基于IP的SAN互连技术以及快照技术等。其中基于IP的SAN远程数据容灾备份技术应用比较广泛,其是利用基于IP的SAN的互连协议,将主数据中心SAN中的信息通过现有的TCP/IP网络,远程复制到备份中心的SAN中的。当备份中心存储的数据量过大时,可利用快照技术将其备份到磁带库或光盘库。这种基于IP的SAN远程容灾备份,可以跨越LAN、MAN和WAN,成本低、可扩展性好。基于IP的互连协议主要包括FCIP、iFCP、InfiniBand、iSCSI等。
第七,构建系统方案可以选择多种技术组合方式。目前,业内应用较多的容灾方案是基于智能存储系统的远程数据复制技术,它是由智能存储系统自身实现的数据远程复制和同步,即智能存储系统将对该系统中的存储器I/O操作请求复制到远端的存储系统中并执行。由于在这种方式下,数据复制软件运行在存储系统内,因此较容易实现主中心和容灾备份中心的操作系统、数据库、系统库和目录的实时拷贝及维护能力,且不会影响主中心主机系统的性能。如果在系统恢复场具备了实时数据,那么就可以做到在灾难发生时,及时开始应用处理过程的恢复。但这种方案也有开放性差(不同厂家的存储设备系统一般不能配合使用)、对于主、备中心之间的网络条件(稳定性、带宽、链路空间距离)要求较苛刻等缺点。
建立模型、制度及管理流程
按照容灾能力的高低,目前数据容灾可分为多个层次,按国际标准SHARE 78定义的容灾系统有七个层次:从最简单的仅在本地进行磁带备份,到将备份的磁带存储在异地,再到建立应用系统实时切换的异地备份系统; 恢复时间也可以从几天到小时级再到分钟级、秒级或0数据丢失等。
无论是采用哪种容灾方案,数据备份还是最基础的,没有备份的数据,任何容灾方案都是没有现实意义的。当然,光有备份也是不够的,容灾也必不可少。在建立容灾系统的过程中,建设容灾系统模型、容灾演习制度以及容灾系统管理流程都非常重要。
而容灾系统主要是从业务连续能力、应用系统连续能力、网络连续能力三个方面来保证业务应用系统的正常运行的。
对于数据级容灾,可以采用定期拷贝的方式,如磁带备份、数据快照、廉价存储等。定期拷贝是在业务运行过程中某一时刻对生产数据的保护,这种保护一般在业务正常运行时生成,主要预防业务因生产数据的逻辑故障而造成的停顿。当产生的数据因人为误操作而损坏时,可以利用该定期拷贝将业务状态恢复到损坏发生前的某一时刻(即执行定期拷贝时)的业务状态。在业务恢复过程中,辅以其他手段(如手工录入等),补充自定期拷贝生成时至业务中断时这一段时间内业务运行产生的数据。
对于应用级容灾,可以采用连续复制的方式,如应用分发、数据库复制、文件系统复制、逻辑卷复制、智能存储等。连续复制是对业务状态数据进行持续不断的复制,主要是预防业务系统遭遇严重故障而造成生产系统长时间无法修复,利用该复制作为恢复生产的基础。在进行业务恢复时,利用复制结果可以恢复系统中断现场的生产数据,从而恢复业务。
容灾演习是对容灾项目建设是否成功的检验标准,也是对容灾维护管理流程和文档检测的重要手段。通过演习可以及时发现问题,并确保各相关部门的配合和人员的操作准确无误。容灾演习的主要工作内容包括:对业务影响的评估、核查恢复规划、制定回退计划、触发演习场景、执行恢复规划、总结报告、维护等。
此外,容灾系统管理流程的建立也至关重要,容灾项目的实现过程是人员、流程、技术相辅相成的过程,容灾管理流程的建立是容灾系统成功运作的保证。通过固化的流程,指导维护人员按照实现规定的步骤进行系统切换和演习工作,才能保证容灾技术的最终实现。