随着计算机技术的快速发展,保障数据的完整性变得越来越重要。德州大学的研究结果表明,一旦关键业务数据丢失,可能引起34%的公司立即倒闭,51%的公司在两年内倒闭,所以构建完善的数据保护系统是近年来研究的热点。多版本备份是保护数据最有效最常用的方案,面对海量数据的增长,PB级的海量存储需求越来越普遍.企业和个人迫切需要大量的空间来备份数据。云备份是一个很好的解决方案.可以满足企业和个人海量数据备份的需求。目前云备份系统仍属于起步阶段,尽管其实现架构没有统一标准,但国内外少数公司已提供了相关产品:微软的Azure storage是一种能提供块级数据备份服务的云备份产品,但其只支持单—快照节点,用户只能恢复到最后一次上传数据的状态,恢复丢失的数据量(Recovery Point objective,RPO)取决于网络质量,而且目标恢复时间点局限性太大,远不能满足用户需求;EMC和上海电信合作开发的产品“e云”,虽然支持多快照节点备份,可供用户选择的恢复目标时间点不再是单一的,但其仍然采用传统备份方法,即根据用户设定的备份时间间隔,定期进行数据备份,粒度为分钟,若磁盘阵列的写速率为500 MB/s,1分钟能够存储的数据大约是30 GB,因此最多只能恢复到1分钟前的数据状态,即RPO≈30GB。针对目前云备份产品的缺陷,本文提出一种支持连续数据保护的云备份系统(Continuous DataProtection cloud Backup,CDP-CB),该系统以私有云架构为基础,引入连续数据保护技术,彻底打破了传统以时间间隔为基础的周期性备份方案,主动截获每个时刻的数据更新并立即将其备份,备份数据的时间是连续的,不再有时问空隙。能够提供秒级的连续恢复时间点,RPO≈0,具有更高的可靠性和可用性。
l CDP-CB系统关键技术
CDP-CB系统是一种基于私有云架构的数据备份和防护系统,通过引入连续数据保护技术,实现了比Azure Storage和“e”云更完善的云备份功能,主要包含两个关键技术:连续数据保护技术和云备份技术。
1.1 连续数据保护技术
连续数据保护技术(Continuous Data Protection,CDP)是一种最高形式的数据保护技术,对任何引起数据丢失的故障或者灾难都具有保护能力,比如病毒侵袭、地震、火灾等。都可以确保业务数据不丢失。按照存储网络行业协会(StorageNetworking Industry Association,SNIA)的定义,所谓的连续数据保护技术是指连续捕捉和保存数据状态的变化,并将变化后的数据独立保存在原始数据之外,从而允许将数据恢复到过去任意时间点的状态。它打破了传统数据保护方案的周期性备份以及离散的可恢复时间点的缺陷,真正将数据丢失量降到最低,即RPO≈0。
目前已有的云备份系统,比如“e”云,给用户提供多个恢复目标时问点,但由于其仍然采用传统的周期性备份方案,即每隔一段时间对业务数据进行备份,使得恢复目标时间点不连续且恢复粒度太粗,如果发生故障或灾难,会造成部分业务数据丢失。为了解决以上问题,在云备份系统中引入连续数据保护技术,实时地将客户端每一次数据更新保存到云备份服务器中,并能够实现任意历史时间点的恢复,保证在发生各种故障或者灾难的情况下用户数据都不会丢失,确保业务数据的连续性.提高云备份系统的可用性。此外,按照CDP捕捉更新数据的层次可分为:块级CDP、文件级CDP和应用级CDP,其中对于文件级CDP,不同的文件系统需要做不同的没计,应用级CDP是嵌入具体的应用软件当中,而块级CDP部署在文件系统下层,可以屏蔽异构文件系统。CDP-CB系统采用块级的连续数据保护技术,具有更加广泛的应用前景。
1.2 云备份技术
云备份是云存储的一个特殊运用,都是为了保存客户端的业务数据,只是数据类型有差异,云备份保存的是备份数据,云存储保存的是原始数据。云备份实现的技术方案与云存储类似,也是通过集群应用、网格技术或分布式文件系统等技术,将网络中大量各种不同类型的存储设备通过应用软件集合起来协同工作,共同对外提供数据存储和备份功能。按照云备份中数据的规模可将云分为3类:私有云、公有云和混合云。其中私有云的应用通常部署在一个区域或者企业的防火墙内部,服务质量(Quality of Service,QoS)非常稳定,不会受到网络不稳定的影响,因而能够提供对数据安全和服务质量的最有效控制。比起公有云和混合云,私有云具有部署快速、成本低廉的优势,并能够提供更加安全可靠的备份服务。云备份架构有以下两种方案:紧耦合对称(Tightly coupledsymmetric,Tcs)架构和松散耦合非对称(Loose couplingAsymmetric,LCA)架构。Tcs架构不存在集中管理的节点,是通过执行某种策略来使每个节点知道自己所要执行的操作,利用分布式锁管理共享数据,适合于单文件I/0操作频繁的系统;LCA架构有一个统一管理所有节点的中央元数据控制服务器,所有的操作命令都是通过该服务器发出,通过利用虚拟化技术进行系统扩展和调整。CDP-CB系统的主要职能是备份用户的更新数据,并允许任意时间点的恢复,没有频繁的单文件I/0操作,所以采用LCA架构更有利于系统动态管理和控制。综上,CDP-CB系统采用基于LCA的私有云备份架构。
2 CDP-CB系统工作原理
2.1 CDP-CB系统整体框架
CDP-CB系统按照地域划分为本地客户端和云备份端,二者通过iscsi协议传输数据,其整体框架如图1。
本地客户端是家庭用户或者企业用户的总称,以卷(volume)为保护单位,安装完客户端软件之后,会自动加载CDP客户端代理模块(CDP proxy),该模块的详细功能在2.2节介绍。此外,在客户机的磁盘管理中会多出一个虚拟日志卷(virtual Log Volume),该卷初始大小为0,用户通过付费机制向云备份端申请备份空删。虚拟日志卷大小会随着空间申请自动扩容。云备份端是由一系列的服务器(server)组成,这些服务器利用局域网(LAN)互联,按照职能划分为元数据服务器和CDP备份服务器。元数据服务器存储了客户端信息和节点的空间、状态等信息,并利用集群技术、虚拟机技术来管理云备份端的节点,包括节点的加入、撤销、空问扩容等;CDP备份服务器利用虚拟化技术将异构的存储介质组织成存储池.按用户需求划分指定大小的空问,并将客户端的更新数据以日志的形式保存在所属空问中,存储池中不同的空间划分被称为日志卷。每个CDP备份服务器也有一个CDP服务器代理模块(CDP proxy),详情见2.2节。
2.2 CDP-CB系统结构
CDP-CB系统捕获本地客户端的更新数据,将其整合之后保存到云备份端,其详细结构如图2所示。
图2按照备份数据(Data)流向设计,其核心模块包括:本地客户端的CDP过滤驱动和CDP proxy,服务器端的元数据管理模块、iscsi控制管理模块、CDP Proxy和重复数据删除模块、备份数据管理模块和数据存储模块。下面介绍各模块的具体职能:
CDP过滤驱动:该模块是CDP-CB系统实现连续数据保护技术的基础,CDP过滤驱动处在文件系统下层,硬件设备上层,可以屏蔽异构文件系统,即CDP-CB系统可以构建在拥有不同文件系统的客户端上。文件系统通过给设备分发Irp(Input/output Request Packet,Irp)的方式来完成写操作,该模块利用自己创建的虚拟块设备来捕获客户端被保护卷每个时刻的数据更新请求(Irp),并负责将Irp整合成日志记录,即加上时间、位置和块大小等标签,然后传递到下—个模块。
CDP proxy:CDP的客户端代理模块,相当于一个高级缓存。负责临时保存CDP过滤驱动传下来的日志记录以及其他控制信息。为了保证系统性能,通常采用SSD设备作为CDP proxy。该模块可以用来处理一些基本故障,比如:在备份数据的过程中,断网或者客户端意外掉电,当系统恢复正常时,利用缓存在CDP pfoxy设备上的日志记录,系统可以自动继续未完成的备份任务。
虚拟日志卷:该日志卷是云备份端通过iscsi映射的虚拟卷,与云备份端的日志卷是相对应的,只是用户对该卷并不拥有读写操作权限,仅可以访问该卷的属性信息。
iscsi控制管理模块:该模块通过维护一张由客户端IP和CDP备份服务器IP组成的地址映射表,来实现IP转换。iscsi控制管理模块通过元数据管理模块建立地址映射表,在备份过程中,当接收到客户端发来传输消息时。iscsi控制管理模块通过查找地址映射表获取对应的CDP备份服务器IP,并将消息转发给实际存储备份数据的CDP备份服务器;在恢复过程中,CDP备份服务器将恢复数据发送至iscsi控制管理模块,该模块查找地址映射表获得客户端的IP,再转发给相应客户端。以上所有操作对客户端都是透明的,是CDP-CB系统实现真正云备份的关键。
用户身份认证:用户在最初使用该服务、申请扩容或者恢复时需要核对用户的身份,保证能够建立安全的数据传输链路。
元数据管理模块:是云备份端的核心管理模块,负责管理云备份端的CDP备份服务器(node),不保存不变的node记录,而是通过定期HeartBeat消息和每个node通信,搜集node的状态信息,包括:活跃状态、负载情况、垃圾块处理情况等。如果有某个node失活,就尝试进行激活或者更换node。借助校验和,检测node上数据的完整性,一旦检测到数据被破坏,如果该数据有副本,则将某个副本作为主node,并利用该副本来恢复原node的错误数据。按照存储数据可靠性程度将空间租赁分为低、中、高3个档次,分别对应的副本数量为l、2、3。在用户提出空间租赁申请时,需要元数据管理模块(Master)对此作出响应,首先分析每个node的负载情况,按照用户要求的可靠性程度,将负载较小的m(副本数量)个node的相应空间租给客户端,并给客户端返回成功租赁消息,在Master中保存本次租赁记录以及修改该node的空间分配信息;当用户开始正常备份数据就无需Master参与了,node自己制定空间管理策略,数据在日志卷中的位置由node自己指定,如果有对应的其他副本,则在写完主node之后,将数据发送到其他副本;当用户提出空间退订申请时,Master负责修改有关该用户的租赁信息,释放node的空间,并给客户端返回成功退订消息。另外,考虑到Master容易产生单点失效,则为了保障系统的高安全性,Master需要被远程备份,这部分功能并未在图2中显示。
CDP proxy:CDP服务器端代理,功能与客户端的CDPproxy类似,也是用来缓存日志记录,提高备份速率。
重复数据删除模块:为了降低成本,提供给用户更加低廉的服务,CDP-CB系统引入了重复数据删除技术。将CDPproxy中的数据按照固定大小分块,利用sha-l算法计算每个块的指纹值,相同指纹表示重复数据,在介质上只保存一份,其他保存指针。该模块不仅提高介质利用率,而且减少了大量的写操作,提高了系统效率。
备份数据管理层:负责管理单个node中不同客户端对应日志卷的使用情况,包括下—个要写的位置、剩余空闲空间等。数据存储层:利用虚拟化技术将不同类型、不同特性的异构存储资源整合成统一的存储空间,从而实现了对存储资源的充分利用和有效规划,负责处理存储介贡的动态加入和撤销。
2.3 CDP-CB系统工作流程
按照CDP-CB系统结构(2.2节)中Irp的传输路径总结数据备份、恢复流程:
备份流程:Irp首先被CDP过滤驱动截获,整合成日志记录传给CDP proxy,之后Irp被提交到本地存储介质上并向上层返回成功,此时完成了一次写请求,开始接收处理下一个Irp。为了降低备份对上层应用的影响因子,备份过程采用异步方式,即不等云备份端发送成功备份消息,客户端就开始处理下—个Irp。在Irp被提交到本地存储介质的同时,日志记录再次被封装(加上客户端地址,便于云备份端辨识),通过iscsi协议传输到云备份端的iscsi控制管理模块,该模块通过查找地址映射表获得客户端对应node的IP,将消息转发给CDP proxy模块。CDP胛口砂模块将缓存的日志记录再提交给重复数据删除模块,针对不同客户端的日志记录进行独立的重复数据删除操作,把需要保存的日志记录或者指针传递到备份数据管理层。通过查询对应客户端的日志空间,确定下一个要写的位置,将数据提交到数据存储层中对应的日志卷执行写操作。至此一次备份操作执行完毕,备份指针前移,开始备份下—个Irp。
恢复流程:用户利用客户端软件指定恢复目标时间点,向云备份端发出恢复请求,CDP过滤驱动自动收回用户对被保护卷的写权限。云备份端首先通过用户身份认证模块验证用户身份,然后元数据管理模块查询客户端备份数据是存放在哪个node中,并检测node上的数据是否被破坏。如果数据完整,则通知该node开始恢复;否则若有其他副本,则先确定可用副本,再通知副本node开始恢复。node中备份数据管理模块确定客户端备份数据的日志卷位置,并利用恢复算法确定有效的恢复数据,将恢复数据按照固定大小发送至iscsi控制管理模块,再由该模块转发给客户端。成功恢复后,CDP-CB系统自动转为正常备份状态,用户重新获取对被保护卷的写权限。
3 实验结果
在实验室搭建了小规模的CDP-CB系统,云备份端是由l台元数据服务器和6台CDP备份服务器组成,且每台CDP备份服务器下端挂着高端磁盘阵列;客户端是由2台windows主机组成;客户端和云备份端采用千兆以太网连接。为了简化测试内容,本文只对其中l台客户机进行了正确性验证实验和必要的性能测试,测试内容包括CDP-CB系统的备份速率、恢复速率和恢复数据的正确性验证实验,如图3,利用iometer工具测试了备份对顺序写(100%顺序,100%写)的影响因子,如图4。
图3表明CDP-CB系统的备份速率的平均水平为4 MB/s,恢复速率的平均水平为ll MB/s。系统的性能是比较高的。此外,对恢复出来的数据计算MD5指纹值,验证恢复数据的正确性,结果表明CDP-CB系统可以正确恢复到历史任意时刻的数据状态,由于受篇幅限制,相关测试数据未在本文展示。
影响因子的计算方法是:(无备份软件顺序写速率- 有备份软件顺序写速率)/无备份软件顺序写速率,用来表征客户端数据备份对普通写操作的影响。CDP-CB系统采用异步备份方式,大大减弱备份对客户端上层应用的性能影响,由图4可见影响因子在15%-45%区间内波动,是—个比较理想的范围。
4 结束语
着跟于目前云备份系统恢复目标时间点不连续以及恢复粒度太粗的问题,将连续数据保护技术应用到云备份中,提出支持连续数据保护的云备份系统(CDP-CBS)。CDP-CB系统能够提供秒级的连续恢复时间点,且PRO≈O。过滤驱动是数据块级别的,可屏蔽异构文件系统,具有广泛的应用前景。引入重复数据删除技术大大降低了系统成本,从而为用户提供更低廉的服务。当然,该系统仍然存在很多不足,需要在下一步的研究中完善,比如:身份认证机制的完善、异步复制模式的数据正确性保证、系统容错机制及云备份端控制信息同步机制建立等。
核心关注:拓步ERP系统平台是覆盖了众多的业务领域、行业应用,蕴涵了丰富的ERP管理思想,集成了ERP软件业务管理理念,功能涉及供应链、成本、制造、CRM、HR等众多业务领域的管理,全面涵盖了企业关注ERP管理系统的核心领域,是众多中小企业信息化建设首选的ERP管理软件信赖品牌。
转载请注明出处:拓步ERP资讯网http://www.toberp.com/
本文标题:支持连续数据保护的云备份系统的架构设计
本文网址:http://www.toberp.com/html/consultation/1083973668.html