基于快照的备份系统,对任何有兴趣用它作为关键数据的主要备份和恢复方案的人的来说,都将是一个翻天覆地的变化。快照可以提供比任何传统的备份系统更快、更容易的备份,而且它们还能提供对传统备份系统来说是不可思议的恢复时间目标(RTO)和恢复点目标(RPO)。在这里,一个传统的数据备份系统是指一个通过备份把文件放入某种备份格式(例如 Symantec公司的 NetBackup 镜像, EMC 公司的 NetWorker saveset, IBM 公司的 TSM 聚合),并把那种格式存放在磁盘或者磁带上的系统。不过,并非所有的快照备份系统都是相同的,而且,不是所有的这种系统都有完全替代备份系统的能力。接下来,我们将带你了解快照备份系统的优劣势,以帮助你决定你的公司是否需要投资一个快照备份系统。
在讨论基于快照的备份系统的时候,有很多相关的误区需要先澄清一下。第一个误区就是,快照并不是备份──他们是“某时刻”的拷贝。有些人认为,如果数据的一个拷贝没有改变格式──例如放入一个tar包中──那么它就不是一个备份。这个观点从何而来不得而知,不过改变格式并不是备份的必要属性。
如何定义快照备份?
SNIA(Storage Networking Industry Association ─存储网络工业协会)这么定义备份──“一个存储在非易失性媒介(通常可以移动)上的,以在原始数据拷贝丢失或不可访问情况下对原始数据进行恢复为目的的一个数据的集合;也可称作备份拷贝。为了成功恢复,一个备份必须是在源数据处于一致性状态时对其进行拷贝而成。”这个定义中,基于快照的备份唯一可能会有问题的部分是“通常可移动”,不过这只是SNIA在表明通常备份都是在磁带上的。
SNIA的定义确实指出了基于快照的备份系统的一个重要属性──一个快照在被复制到另一个存储系统上之前并不是一个真正的备份。这是因为一个快照是一个数据的虚拟拷贝,而不是数据的一个真实拷贝。如果快照所处的卷发生什么问题,该卷的快照也没有任何用处了——除非它曾通过复制被拷贝到另一个卷上。
在传统的备份系统中,备份软件和磁带使得恢复不同的时间点成为可能。这是备份系统的一个关键功能,因为数据损坏或者其他因素可能需要我们把系统恢复到某个时间点,而不是最近的备份。在一个基于快照的备份系统里,快照提供了这个功能。多个快照──每个创建于不同时间──可以被用来表示文件系统在不同时间点的多个虚拟视图。
备份系统的另一个重要功能是在灾难发生时提供数据的一个拷贝。一个传统的备份系统通过利用离站保险库供应商(例如 Iron Mountain)把磁带发往站外的方式来实现这个目标。一个基于快照的备份系统可以通过复制实现相同的目的,实际上,基于快照的备份系统可以通过复制到多个地点来存储多个数据拷贝。例如,日常的恢复可能来自一个和被备份的系统同站物理上不同的存储系统, 而灾难恢复可能来自一个接收这套系统复制流的站外系统。这可以通过让主系统同时复制到两套系统来实现,或者让它复制到同站的存储系统,而让那套同站的系统复制到离站的存储系统。两种方式各有优缺点。
SNIA对备份定义的最后一部分是,数据备份必须在数据处于一致性状态的时候进行。在传统的数据备份应用里,这通常是通过文件系统或者数据库代理实现的,而基于快照的备份系统也必须找到一个保证数据在处于一致性的时候进行拷贝的办法,才能使得备份有意义。简单地对数据库进行一个快照,再在恢复的时候让数据库的崩溃恢复系统来使镜像一致是不可接受的。快照必须以一种数据库应用可以支持的方式建立。一个例子是可以使快照系统和Windows的VSS( Volume Shadow Services 影子卷服务)集成,让VSS作为快照系统和需要处于一致性状态的应用之间的一个媒介。在考虑把任何基于快照的备份系统作为你的核心备份系统之前,先要确保你的产品对这个问题有很好的答案。基于快照的备份系统经常缺少的另一个方面是,由于提供这些系统的厂家认为你需要做的就是简单地“cd”到一个特定的目录,并抓取你需要的文件,他们就不需要任何的集中化的备份目录或者索引了,而这些是传统备份系统能够提供的。尽管基于快照的备份系统确实在某种程度上是“自索引”的,人们在某些时候还是会不知道他们需要恢复的文件到底在哪里,而一个备份目录就可以帮上大忙。在一些产品里,这个功能可以通过结合使用基于快照的备份和传统的备份产品来实现,因为有些传统的备份产品可以提供用NDMP对基于快照的备份进行索引的功能。
确保你的快照备份产品可以扩展
配置、监控和报表才是真正的考验。一个只有一个存储系统的小公司用的东西在一个有上百个系统的大公司不一定能用。在考察这部分功能的时候,一定要问问你自己,如果你的数据中心随着时间的推移迅速增大,那么这个特定的产品是否有足够的扩展性。一些系统需要你通过命令行来管理快照和卷关系,而其他的一些产品有复杂的基于Web的用户界面来替你做这些事。
对备份管理员来说,每天需要回答的最重要的问题是“备份好用吗?”大型的公司往往有管理员来监视备份生成的过程,而较小的公司则可能只有一个人,他早上的第一件事就是检查昨晚的备份状态。不管是哪种方式,备份系统的监控功能必须能够迅速并有效地回答这个问题。
报表则有点不同,由于它能够帮助理解备份随时间的变化趋势。是否有个别卷总是有备份问题?是否有足够的空间给快照和生产数据?是否有哪个快照用的空间比其它的快照用的空间明显大很多?这些问题都可以用产品的报表功能回答。
如果你打算用快照备份替换你的传统备份系统,需要考虑最后的一个问题是,前者大多是基于主机的,而后者多数是基于存储的。服务器和存储虚拟化的迅速增加使得进行基于存储的备份越来越难了。现在只需鼠标一点,一个服务器就可以从一个物理服务器和它所关联的存储“神奇地”移动到另一个完全不相干的服务器和存储上,基于主机的备份是保证那个服务器(实际上是一个虚拟机)无论身处何处都会被备份的最简单的办法。基于存储的备份需要适应这个趋势。
在某些情况下,用一个基于快照的系统来完全替代一个备份系统和它所有的功能是可能的。你需要确保你认真地考虑过你现在的备份系统给你做了哪些事,并保证你的新系统也可以做得到。