1.引言
信息时代的高速发展使得数据呈爆炸性的增长,在知识经济体系中,企业内部最重要的资产越来越成为长期积累下来的数据资料,如产品研发资料、客户资料等关键性资产。数据的安全存储和高可用性已经被提高到了一个前所未有的高度,并且成为衡量服务质量的一个主要方面。对数据进行365×7×24小时的不间断访问已经成为信息时代的普遍要求。
2001年9月11日,美国世贸大厦遭受的恐怖袭击使灾难前约350家在其中工作的企业在事故发生一年后,生存下来的只有150家,有200家企业由于关键数据的丢失而永远的关闭消失了。
EAGLEROCKALLIANCE的调查报告统计了各类关键业务信息系统的停机所带来的不可估量的损失。容灾问题被提到了前所未有的高度。
另外一个方面,网络存储技术的进步使数据和业务容灾变成为可能。近年来,网络附属存储NAS(NetworkAttachedStorage),存储区域网络SAN(StorageAreaNetwork),基于IP网络的存储区域网络(IP-SAN)等的提出和发展,为数据的容灾提供了有力支持。
远程容灾系统是指在相隔较远的异地,建立两套或多套功能相同的系统,互相之间可以进行健康状态监视和功能切换。当一处系统因灾害,如水灾、火灾、人为破坏或地震等,停止工作时。整个应用系统可以切换到另一处,使得该系统功能可以继续正常工作。
当前对容灾系统的研究主要集中于具体技术的研究开发和实现优化,而关于什么时候该使用什么技术,以及从系统的角度对各种技术和实施方案进行评价和分析等方面则少有研究。当前有少量的研究关注特定的技术或容灾子系统的评价和分析,如备份系统的评价和建模,或基于某种技术的系统设计和评价,如文献和讨论了基于在线冗余技术的系统设计模型和自动生成工具。
EMC提供了计算备选容灾系统方案的总拥有成本TCO(TotalcostofOwnership)和IT投资回报ROI(ReturnonITInvestment)的计算方法。
从系统的角度给出了容灾系统常用组件和子系统的成本计算公式,并采用线性规划的方法实现了容灾系统自动设计工具。但是其远程容灾系统框架比较简单,不能涵盖所有的设计空间,且系统设计和评价采用全部量化为成本的线性规划方法也不能适应众多的系统需求和限制条件。
远程容灾系统是一个复杂的系统,其设计空间和涉及的主要设计参数很庞大。通过组合列举的方式来设计、测试和评价各种子系统构成的容灾系统几乎成为不可能的事情。因此,有必要用数学模型对其进行形式化描述和定义,再依据该形式化模型来自动或半自动设计和评价远程容灾系统方案。
本文通过总结和分析远程容灾系统的主要技术和实施方案,提出了远程容灾系统统一结构框架,并对系统的组成,主要设计空间和设计参数进行了总结和分析,进而设计了远程容灾系统形式化模型RDS,可以用以对远程容灾系统进行自动设计和性能成本评价。
通过综合考虑各种远程容灾系统的需求和实施方案以及当前可提供的存储网络技术,提出远程容灾系统统一结构框架如图1所示。
图 1 远程容灾系统统一结构框架图
其中,主站点和远程容灾中心是两个分别位于不同地理位置的数据中心,它们之间通过连接网络1和连接网络2进行连接,根据业务需要,数据安全要求和成本限制其可以是Internet,WAN网络或专用网络。远程容灾中心具备与主中心相似的网络、通信设置;具备业务应用运行的基本系统配置;具有足够的处理能力来接管主站点的业务;同时应具有不低于主站点的安全防护能力。
主站点和远程容灾中心各由以下几个子系统模块组成:
(1)部件和路径冗余容错子系统;
(2)备份子系统;
(3)远程复制子系统;
(4)存储网络子系统。
以下将结合这几个子系统以及远程容灾中心的模式配置和远程线路连接的选择这些容灾系统涉及的主要设计参数予以说明。
2.1部件和路径冗余容错子系统
部件和路径冗余容错子系统主要利用冗余的思想,使用容错技术来达到高可用性,其建立在如下假设之上,即信息系统的任何组成部分,都有可能因为失效而导致系统的不可用。将可能失效的部件采用两个或多个作为冗余,从而避免和消除单点故障(SPOF,SinglePoint-Of-Failure)。
该子系统主要使用的设计参数主要有:
(1)硬件部件冗余。冗余的硬件部件常常包括电源适配器、风扇、存储子系统控制器、磁盘、内存、固件(FirmWare)等,如UPS,RAID磁盘系统等;
(2)路径冗余。其目的主要由于数据传输路径失效而导致整个系统的不可用,在图1中,主要有存储网络SAN的路径冗余和远程连接网络1和连接网络2的路径冗余等;
(3)系统集群。采用集群技术,checkpoint技术,回滚技术(RollBack)技术等,可实现本地高可用性。注意的是冗余部件或系统的切换过程的自动化程度和切换时间是需要可用性评价时需要考虑的重要因素。
部件和路径冗余容错子系统通常无法抵御站点灾难,也无法消除计划内或计划外系统维护所导致的系统停机。
2.2备份子系统
在远程容灾系统中使用的备份子系统,其功能是将系统的数据或状态,按照一定的周期,存储在磁带(或者磁盘)上并离线放置。在系统需要恢复时,将备份数据恢复到系统。备份技术是传统的容灾方案的主要实现技术,随着网络存储技术的发展又出现了一些新的备份技术。
根据备份系统的主要技术以及容灾系统的实际需求,备份子系统的设计空间和主要技术参数有:
(1)备份介质是选择磁带库还是磁盘或虚拟磁带库(VTL)。磁带库一直是备份的主要介质。近年来,随着磁盘的成本不断下降以及其支持在线随机访问和恢复速度快,越来越多的磁盘设备成为备份介质,其中,虚拟磁带库(VTL)通过磁盘来模拟磁带库的行为,不仅提高了性能,而且与现有的软件和系统结构保持一致而获得了广泛关注。
(2)基于设备的(Device-based)备份或基于文件(fileSystem-based)的备份。基于文件(fileSystem-based)的备份系统能够理解文件结构,因此将整个文件和目录结构备份到备份设备中。这种备份方式可快速恢复,但是将文件连续的存储在备份设备中降低了备份速度。若采用增量的基于文件的备份系统,则一个小的修改都会引起整个文件被备份。基于设备的(Device-based)备份系统不考虑文件系统结构,而仅将磁盘块拷贝到备份设备中。这种方式提高了备份性能,但是进行文件恢复时速度较慢且很麻烦,而且有可能引入数据不一致性问题。
(3)备份策略采用全量备份(fullbackup)还是增量备份(incrementalbackup)以及备份周期的选择。当前主要的方式是采用全量备份和增量备份间隔进行的方式,即每隔一段时间进行一次全量备份,这期间进行若干次增量备份。其中最重要的设计参数是采用怎样的备份周期,以使在保证数据可用性的前提下使灾难发生时丢失的数据量尽量少。
(4)是否进行数据压缩。出于数据在传输时的安全性考虑和节省备份设备的存储空间,往往需要对备份数据进行压缩,但是压缩会消耗额外的处理器资源和使恢复的时间延长。
(5)在线备份或离线备份。总的来说,在线备份提供了更高的可用性,但是引入了数据一致性问题。
(6)快照技术(Snapshot)及快照周期的选择;(7)网络存储备份方式的选择。随着存储网络技术的发展,新的备份技术如局域网无关的备份(LAN-freeBackup),服务器无关的备份(Server-freeBackup),Zero-Impact备份技术等已逐渐成熟,这些新技术有更好的备份性能,但是其建设成本会大大增加。
2.3远程复制子系统
远程复制技术通过将主站点的生产数据实时复制到远程容灾中心中,灾难发生和数据毁坏时,即时进行数据中心的切换和恢复,从而数据可以随时被访问,而且丢失量极少。远程复制技术可以解决数据丢失和数据不可访问。远程复制的思想很简单,但是在实际实现时却往往不能达到应有的数据保护要求:数据可用性达到一定标准,容忍数据丢失和数据损坏,性能退化控制在特定的比例下,恢复和操作代价控制在一定水平下。
根据远程复制系统的关键技术和当前采用的主要方法可以得到远程复制子系统的主要设计空间和设计参数如下:
(1)支持的错误类型。主要包括主机硬件出错,SAN出错,连接线路出错等;
(2)复制模式的选择。主要包括同步复制和异步复制。异步复制主要包括写命令按序执行的异步复制模式和允许批处理的异步复制模式,两者的区别在于后者更新的最小单位为若干I/O命令组成的批命令(batch),因此可进行写命令的吸收和合并。异步复制模式需要确定更新的最小单位和周期;
(3)更新的响应周期。改参数需要根据复制模式和允许的数据丢失量进行确定;
(4)复制操作在系统中的位置。按照复制操作在I/O路径中的位置,可以分成:数据存储层复制、数据交换层复制、数据卷管理器层复制、应用程序层复制等4种方式。
2.4存储网络子系统
存储网络子系统主要有SAN(StorageAreaNetwork)和NAS(NetworkAttachedStorage)的选择。
NAS服务器子系统主要提供文件服务,在远程容灾系统中为可选子系统。在SAN中,存储设备成为独立的实体,其通过网络可以为多个主机系统提供基于块的数据服务。
当前主要使用FC-SAN,FC(FiberChannel)技术是关键,其提供高速可靠的网络,且容易将SCSI存储设备集成到SAN存储池中。在FC-SAN中,光纤通道协议FCP(FiberChannelProtocol)是主要的存储传输协议,其规定了如何在光纤通道中运行SCSI命令。
光纤通道的主机总线适配器HBA(FiberChannelHostBusAdapter)取代了传统DAS(DirectAccessStorage)服务器中的SCSI控制器,以连接SAN框架和磁盘、磁带阵列。
但是构建基于光纤通道的SAN需要巨额的设备投资和构架,大范围实现FC-SAN是非常昂贵和复杂的,而且大多数的系统管理员也不熟悉FC(FiberChannel)技术。因此在中小企业中构建FC-SAN比较困难。
近年来,随着网络带宽的进一步提高,如千兆网络的发展和使用,以及相应的高速传输协议的协调,基于IP网络技术的SAN构架成为可能,即把存储设备接入到传统IP网络中,用现成的网络通道传输存储数据和命令。其优点在于:
(1)现有Ethernet技术的性能使在IP网络中访问存储设备成为可能;
(2)使用基于IP网络技术的SAN连接区域较FC-SAN更宽广;
(3)在现有IP网络结构上构建SAN使成本可以大大降低。IP-SAN存储传输协议将I/O命令和以块为单位的存储数据通过IP网络进行传播,并在服务器节点实现相应的包解析机制进行包的封装和解析,以及控制存储设备进行操作。当前比较成熟的IP-SAN存储传输协议主要有3个,即FCIP(FiberChan-neloverTCP/IP)、IFCP(InternetFiberChannelProtocol)和iSCSI(InternetSmallComputerSystemInterface)。
FCIP协议提供了基于IP的互联模型以连接光纤通道的结构单元,其中引入的FCIP设备连同运行载体IP网络共同构成了FCIP传输网络。
iFCP是一个网关间的协议,其通过TCP/IP网络,提供光纤通道服务给光纤通道设备。它利用TCP协议提供拥塞控制、错误检测和恢复。
iSCSI协议即是将SCSI在IP网络上传输的存储传输协议,允许在IP网络上对存储设备的共享访问。其工作在TCP之上,且与标准SCSI系统模型完全兼容。使用iSCSI协议的一个显著优点是iSCSI可以充分利用现有的标准的、非定制的网络资源和组件。构建基于iSCSI的SAN只需要一种网络框架,一般数据和存储相关信息都在此单一网络中传输。而且使用基于iSCSI的SAN,其传输范围从理论上说可以无限大。因此iSCSI协议是目前IP-SAN的主流数据传输技术。
除上述4个子系统以外,远程容灾中心的模式配置和远程线路连接的选择也是在设计和实施容灾系统时需要考虑的设计参数。按远程容灾中心在正常工作时是否提供数据服务可以
分成活动-后备(Active-Standby)和活动-活动(Active-Active)模式。一般来讲,“活动-活动”模式能够为系统提供更好的传输性能,但需要更复杂的配置,通常还需要第三方管理软件的支持。远程线路连接可以选择具有不同传输速率和数据安全性的Internet、WAN或专用网络。
综上所述,远程容灾系统因为其涉及的众多的设计参数和广泛的设计空间,已经成为一个复杂的大系统,所以对其进行形式化的描述则显得很有必要和意义,在此基础上可以使用有效的数学工具对远程容灾系统的设计进行控制和优化。下面先用UnitedSet对远程容灾系统进行了形式化描述和定义,然后在此基础上给出了远程容灾系统设计模型。
3.远程容灾系统形式化模型
远程容灾系统(RemoteDisasterRecoverySystem,RDS)可以表示为6元组:DRS={A,D,F,O,G,J}其中,A为远程容灾系统DRS的属性集合,A={A1,A2,A3,A4,A5,A6}。
A1为部件和路径冗余容错子系统属性集合;
A2为备份子系统;
A3远程复制子系统;
A4为存储网络子系统;
A5远程容灾中心的模式配置集合;
A6为远程线路连接属性集合。
aij∈Ai,1≤i≤6,j∈N为Ai内涉及的设计参数。D为远程容灾系统DRS的属性值集合,即Ai中各设计参数aij的取值的集合。这些参数的具体意义和可选值见第2节的综述和分析。F:A→D是集合A到集合D的映射,它给A中所有的元素都定义了描述。
O为目标集合,表示远程容灾系统DRS的设计和评价目标。其目标主要有三个方面:
(1)容灾类型和程度。不同的远程容灾系统,由于对系统故障、通信故障、长时间断电以及火灾、地震等各种自然灾害要求的保护类型和程度不同,所采用的系统结构和技术也不同;
(2)数据和业务丢失量。常常量化为RPO(RecoveryPointObjective)指标,即当灾难发生时允许的数据丢失的最大时间窗口(TimeWindow)。是否要求数据库可以恢复所有提交的交易,并且要求实时同步数据。也就是数据的连续性和一致性。决定了灾难恢复方案的规模和复杂程度。给出了系统不可用时期的量化成本;
(3)系统的恢复时间。常常量化为RTO(RecoveryTimeObjective)指标,即当灾难发生时,系统从不可用到恢复正常业务所允许的最长恢复时间。也就是定义用户对于IT环境发生故障的最大容忍时间;
(4)实施和建设成本。给出了容灾系统常用组件和子系统的成本计算公式,EMC提供了计算备选容灾系统方案的总拥有成本TCO(TotalcostofOwnership)和IT投资回报ROI(ReturnonITInvestment)的计算方法。
G:A×D→O是远程容灾系统设计参数集合A×D到目标集合O的映射,它给出了系统的设计参数对目标的影响。
J:是系统约束条件。从物理意义上说,J既可以是设计参数的限制,也可以是容灾系统目标的限定;从数学形式来说,J可以是一个集合,一个不等式,一个等式或若干谓词的组合。
远程容灾系统RDS形式化模型描述了系统可以用以对远程容灾系统进行自动设计和性能成本评价。将在今后的研究和论文中予以详细说明。
4.结论和展望
随着数据信息越来越成为核心资源和社会对数据存储安全的迫切需求,以及网络存储技术的快速发展,远程容灾系统成为当前工业界和学术界共同关注的热点。但当前对容灾系统
的研究主要集中于具体技术的研究开发和实现优化,而从系统的角度研究如何将这些容灾技术整合起来组成有机的远程容灾系统,以及对远程容灾系统进行评价和设计优化,则缺少足够的研究。但事实上,远程容灾系统是一个复杂的系统,其设计空间和涉及的主要设计参数很庞大。有必要用数学模型对其进行形式化描述和定义,再依据该形式化模型来自动或半自动设计和评价远程容灾系统方案。
本文通过总结和分析远程容灾系统的主要技术和实施方案,提出了远程容灾系统统一结构框架,并对系统的组成,主要设计空间和设计参数进行了总结和分析,进而设计了远程容灾系统形式化模型RDS,可以用以对远程容灾系统进行自动设计和性能成本评价。