微软Hyper-V用户和VMware用户一样,在数据备份和恢复的时候遇到了类似的问题,和物理资源占用相关的。当我们将20台左右的物理机迁移到物理机的时候,大多数应用都会正常的工作,除了一样,那就是数据备份。备份操作对数据的输入输出上的要求相当的高,另外与之相关的CPU和内存的占用率也会较高。这也是为什么当我们备份多台虚拟机的时候,会出现和物理资源占用相关的问题。
解决这个问题的方法之一,就是备份这些数据的时候,我们需要在Hyper-V级别进行,而不是在虚拟机级别进行。运行在Hyper-V级别的备份应用可以很好的协调下层架构资源从而能最优化的完成备份工作。
Hyper-V备份和VSS备份之间的区别
Hyper-V级别备份中最大的挑战来自于虚拟机上文件系统中的数据实际是在不断变化着的,换句话说,在实施备份的时刻,我们不希望数据有变动。让用户欣慰的是,微软已经有内嵌的架构来解决这个问题,也是大家广为人知的“卷影像拷贝服务(VSS)”。VSS可以创建磁盘的虚拟镜像,这样备份的时候数据就不是变动的了。
VSS系统里面一共有三块:请求、提供和写入。请求的操作实际上就是一个简单的应用请求创建快照。提供实际就是创建快照。在一套简单的系统里,提供者实际就是Windows操作系统自己,但在相对庞大的系统中,提供者可能是通过存储系统的接口和VSS连接。最后,每个希望支持VSS的应用都需要创建它们自己的VSS写入,这样的工具可以用来当需要创建快照的时候写入备份中。
比如说,SQL服务器的VSS写入将会把数据库放置到一个特殊的模式,之后再创建快照。一旦快照被建立好,请求就会告诉VSS写入备份已经成功,然后SQL服务器写入就会截断SQL服务器的事务日志以避免日志满了。
VSS的多层架构允许请求控制并且备份应用,而不需要写入这些应用的特定接口,唯一需要知道的是,如何和VSS之间通信。Hyper-V实际上是允许在Windows系统内部的一个可以和VSS通信的另一个应用。那些希望能备份Hyper-V的备份应用需要能够与允许在Windows系统上的Hyper-V进行通信。VSS请求之后就会被告知Hyper-V VSS写入以及准备好了,可以开始通信了。
“和VSS的接口并不足以解决备份虚拟机时候遇到的物理资源调配的问题。”
当发生一次备份请求的时候,在每个虚拟机下层的Hyper-V VSS写入就会变成VSS请求。它会去试图发现每个虚拟机里都有哪些写入,告诉它们应该做哪些事情,再在每个虚拟机中创建快照。一旦完成,就可以创建每个卷组上的快照,里面包含了Hyper-V虚拟磁盘镜像。快照创建完成后,就会通知备份应用来开始对快照内容进行备份。
其它Hyper-V 备份策略:复制、可持续数据保护以及准可持续数据保护
和VSS的接口并不足以解决备份虚拟机时候遇到的物理资源调配的问题。用户同样需要部署增量备份策略。全备份虽然不是很常用的,但会对Hyper-V的输入输出负载以及下层的虚拟机产生较大的压力。这也是为什么在选择备份软件的时候,强烈建议您考虑有增量备份功能的机器。复制、可持续数据保护和准可持续数据保护都是这些技术的代表。
另外一个可以考虑的特性是恢复整台虚拟机和虚拟机内单独文件的能力。其实这两种恢复的模式都非常有代表性,用户需要了解的是备份软件是否支持镜像级别和文件级别的恢复。
作为Hyper-V备份策略,在Hyper-V备份产品中最需要关注的功能是和VSS的紧密结合。一旦拥有了这个前提,用户需要关注有增量备份功能的产品和有对单个文件恢复和整个虚拟机恢复的能力。如果这些功能在您所选择的产品都包含了,那么最后需要考虑的就是价格了。