VERITAS卷快照技术白皮书.docx
《VERITAS卷快照技术白皮书.docx》由会员分享,可在线阅读,更多相关《VERITAS卷快照技术白皮书.docx(9页珍藏版)》请在冰豆网上搜索。
VERITAS卷快照技术白皮书
使用VERITAS卷快照技术(Flashsnap)
1.引言2
2.Flashsnap技术说明2
2.1VERITAS VolumeManager2
2.2逻辑卷快照3
2.2.1FastResyncofVolumesnapshot3
2.2.2DynamicsplitandJoin3
2.2.3逻辑卷快照技术的特点3
2.3文件系统快照………………………………………………………………2
3.Flashsnap如何工作3
3.1DCOlog说明3
4.Flashsnap应用环境3
4.1报告和分析3
4.2应用测试和培训3
4.3脱机备份3
4.4逻辑错误快速恢复3
1.引言
企业的业务生产系统不仅需要连续不中断运行,还需要生产数据为业务分析、决策支持服务,甚至需要这些数据支持新的应用开发测试。
同时为了预防任何故障破坏数据,需要对数据进行备份。
例如,医院HIS系统的数据需要服务于BI、CRM等各种应用;企业新业务开发和软件升级也需要使用生产数据做实时测试;同时生产数据需要备份以预防意外事故造成的损失。
而这些工作往往都需要占用生产系统的资源来完成,影响生产系统的高可用性。
一些硬件厂家提供解决方案,但是往往需要所有存储锁定一家同型号的设备。
如果系统使用了X牌存储,为了将业务数据转移到其它应用系统中,必需再配上新的X牌存储完成,即使Y牌存储更好也不行。
这有时会让你感到缺乏灵活性。
VERITAS Flashsnap采用数据逻辑卷的快照方式,将生产数据快速做一份拷贝放到任何其他存储上,再将这个数据拷贝存储接到另一台机器上,完成需要的备份、分析、测试等工作。
在工作过程中生产系统不受任何影响。
Flashsnap采用VERITASVolumeManager的动态磁盘组拆分、合并(dynamicgroupsplit andJoin)及快速同步(FastResync)技术创建磁盘组的瞬间拷贝或快照,随后这些拷贝可以并行的用于多种任务,而生产系统的原磁盘组在原系统上继续保持业务处理。
显然VERITAS技术是中立的,可以工作于任何品牌、任何档次的磁盘阵列。
2.Flashsnap技术说明
2.1VERITAS VolumeManager
VERITASVolumeManager是一个磁盘管理子系统,支持磁盘条带化、磁盘镜像等各种raid功能;允许逻辑卷raid参数修改、结构修改、卷放大、卷缩小等管理在线完成。
从而简化管理,减少因逻辑卷管理带来的业务停顿。
同时VolumeManager相对于其他同类产品提供最好的性能,被认为是业界的领先技术。
VolumeManager是使用Flashsnap必需安装的。
VERITASFlashsnap是VERITASStorageFoundation的一个可选配的license.这个license打开Volumemanager的快速同步和动态拆分与合并功能,同时打开与VERITAS文件系统共同使用的StorageCheckpoint功能(其他段落详述)。
即VERITAS Flashsnap支持两种快照:
基于卷的快照和基于文件系统的快照(StorageCheckpoint).卷快照支持Windows、LINUX、UNIX等。
StorageCheckpoint只用于UNIX平台的文件系统数据。
2.2逻辑卷快照
卷快照采用VolumeManager的镜像功能创建逻辑卷的某时间点拷贝。
原数据(Primary)卷和卷快照都可以包含多个逻辑设备。
如果需要Primary卷一直保持是是冗余的镜像卷,就需要创建第三个快照镜像plex用于卷快照。
创建卷快照时,需要静默应用几秒钟。
例如对于Oracle数据库,通过将数据库置于backup模式以达到静默。
一旦第三个快照镜像完成,所有的处理过程恢复,数据库退出backup状态。
由于Oracle的容错能力,很多情况下,应用不静默而直接对数据库的数据卷照相,再由Oraclelog机制恢复到一致性状态。
对于周期性工作的应用来说,例如备份,你希望多次使用这个卷的实时数据。
为了重新同步卷快照,你需要将快照卷重新送回给primary卷,作为它的一个mirror,将新的数据重新flash到这个卷上,然后再做快照…….显然重新同步影响生产系统的性能---这是许多软件、硬件解决方案的关键问题。
VERITAS Flashsnap使用新的技术解决这个问题:
FastResync及DynamicsplitandJoin.
2.2.1FastResyncofVolumesnapshot
VERITASVolumeManager允许对一个磁盘卷创建多个快照(多至32个),每一个卷快照都包含数据在拍照时刻的静态拷贝,可以用于备份、分析等应用。
如果打开FastResync功能开关,VM将使用一张叫做“快速同步图”(FastResyncmap)的日志跟踪原卷和快照卷的数据块更新情况。
如果快照数据不再跟新到原数据卷新的状态,它就变成过时数据。
快速同步图保证一旦需要快照卷与原数据卷重新同步时,只有那些在快照发生之后改变过的数据才重新写到过期的快照卷上,避免全同步或较慢的全同步操作。
VolumeManager快速同步图是永久性的,因为这些信息存放在叫做数据改变目标(DCO)的日志卷上,这个卷与数据卷关联在一起。
所以这种同步不受系统重启和系统跌机影响。
而且VolumeManager的快照重新同步是双向的。
2.2.2DynamicsplitandJoin
动态拆分和组合功能,可以让一个或多个逻辑卷快照从原来的磁盘组中拆除,形成新的磁盘组,并且可以将这个新的磁盘组从生产机上拆掉。
然后这些拆掉的快照卷再装入到另一台服务器上,专门用于脱机处理。
这台服务器不一定与生产主机在一个集群中,但是必需具有存取该快照磁盘的I/O通路。
当脱机处理完成之后,磁盘组从这台服务器上拆除,重新装入到产生主机上,与原来的磁盘组合并。
如果需要也可以仍然保持在不通的磁盘组中
2.2.3逻辑卷快照技术的特点
▪不管数据量多大,使用什么牌子的存储,快照都一样简单
▪支持所有类新的数据,包括建立在VERITAS逻辑卷上的数据库
▪卷快照可以拆到其他主机上用于脱机处理
▪可以随时更新卷快照,用于实时测试和开发目的
▪快速、高效的同步过程
2.3文件系统快照storageCheckpoing
在UNIX文件系统上,Flashsnap 提供一个基于文件系统的快照叫StorageCheckpoint. StorageCheckpoint工作于文件系统上的数据,包括建立在文件系统上的数据库数据。
StorageCheckpoint瞬间创建VERITAS文件系统的某一时刻的映像。
不是拷贝文件系统上的数据,而是跟踪文件系统上的数据变化,将原有数据维护在一个与checkpoint相关联的块图中。
创建StorageCheckpoint时,需要静默生产文件系统几秒钟,以便做StorgeCheckpoint初始化。
随后,文件系统监视原文件系统的变化,维护checkpoint.
StorageCheckpoint使用原文件系统的存储池(可以和生产数据在不同的逻辑卷上),需要比原数据小得多的存储。
你可以根据需要维护多个StorageCheckpoint.
StorageCheckpoint特别适合数据变化相对较小的应用环境,如webserver内容和某些数据库。
在UNIX文件系统上,我们可以将StorageCheckpoint称作undo按钮。
即当发生错误时,StorageCheckpoint快速回到原来的内容。
考虑这种情况,管理员正在给应用二进制文件打patch,为了保证发生错误后能恢复到原来状态,管理员对该应用程序所在文件系统创建StorageCheckpoint。
创建命令提出后,StorageCheckpoint驱动立即开始监视文件系统的变化数据块,对任何发生修改的数据块,将其老数据拷贝到Checkpoint的map中。
随后如果程序运行有任何问题,都很容易undo到打patch之前的状态。
这比管理员自己寻找程序修改的位置并删除patch过程快的多,也准确地多。
如果管理员的升级成功了,可以丢掉这个StorageCheckpoint.显然StorageCheckpoint技术减少了管理工作量,提高了系统uptime时间。
由此可以总结这个技术的关键特点:
▪永久的、基于磁盘的映像提供快速瞬时恢复。
▪你可以读写StorageCheckpoint—其他文件系统快照技术做不到的事情。
3.Flashsnap如何工作
FlashSnap技术是从最早的Volumesnapshop(mirror)演变而来的。
图1是将volume的一个mirror做为一个快照的示意图:
Figure1:
Snapshot工作流程
先提出一条命令“vxassistsnapstart”将作为snapshot的mirror加到原始逻辑卷上,数据开始同步。
同步完成之后,由命令”vxassistsnapshot”在一个或多个sanpshot镜像上创建snapshot卷。
于是snapshot卷包含你创建时刻原始卷的完整拷贝。
如果多于一个snapshot,他们之间是镜像的。
命令”vxassistsnapback”用于将快照卷返回到原始卷上。
当快照卷连接到原始卷时,数据重新同步发生。
由于Flashsnap中的快速同步技术存在,重新同步相当快,因为只有快照创建之后发生的改变才被同步。
永久性的快速同步将快速同步图存放在磁盘上,这样即使发生系统重启、或crash,或集群crash,同步仍然可以完成,永久性快速同步特征有效时,将有一个数据改变目标(DCO)和DCO日志卷与数据卷和快照卷相关联。
Figure2:
PersistentFastResync激活的mirrorvolume
3.1DCOlog说明
永久FastResync使用DCO卷中的位图(map)实现变化块的跟踪。
这种位图记录自上次快照操作以来原有数据卷和每一个快照卷(支持32个快照卷之多)发生的写操作位置。
磁盘上的DCO日志卷拥有33个map,每个map大小缺省是4个block(即缺省的dcologlen是33x4=132block)。
如果想使用较大的map,用33乘以希望的值来计算dcologlen的长度。
最大允许值是2112block.永久FastResync还可以跟踪原有卷和和快照卷在拆分到不同磁盘组后的关联关系。
当磁盘组重新合并时,这种记录能保证快照的快速同步。
图3中,在一个含两个mirror plex 的卷中激活了FastResync,与卷关联的是含两个plex的DCOobject和DCO日志卷。
当对这个卷开始“Snapstart“ 操作时,立即在这个卷上产生一个快照(snapshot)plex,同时产生一个与之关联的、没有激活的DCOlogplex.
Figure3snapstart操作后的mirrorvolume
现在可以运行snapshot操作从primary卷产生卷快照。
正象图4所示,这个动作将snapshotplex转变成snapshot卷,同时将与之相关联的DCOlogplex转变成DCOobject和DCOlog卷。
新的DCO日志卷含单个DCOlogplex.
Figure4:
snapshort完成后的原mirrorvolume和snapshotvolume