虚拟机的架构与传统的物理机有着天壤之别,因此不适合于传统的备份方案。在本文中,我们将介绍一些虚拟机备份的最佳实践。
更改块跟踪(Changed Block Tracking, CBT)可以大大增加备份的速度。CBT技术会记录下自上次备份以来被修改过的磁盘块。部署的备份应用可以向VMkernel查询被更改的盘块信息,并且只对这些盘块进行备份,以此实现更快的增量备份。
快照并不复制虚拟机的数据。当进行快照操作时,Hypervisor(虚拟机监视器)所做的其实是创建一个差分磁盘。这种特殊的虚拟磁盘与其主磁盘之间存在着父子关系。一旦差分磁盘创建完毕,所有的写盘操作都会被导向差分磁盘,而主磁盘则不再改动,以便在之后可以将虚拟机回滚至创建快照时的状态。
快照会占用额外的存储空间,单个快照最大可以增长为原磁盘的大小。生成的快照数量越多,它们对该宿主机上的虚拟机产生的性能影响就越大。
即便快照可以作为短期的备份措施,主要的备份方式不应该依赖于它。如果想要了解具体的原因,可以参考这里(英语)。
备份传统的物理机时,常见的做法是直接在操作系统上安装备份工具,在需要备份时,备份服务器就直接访问物理机。这样做在虚拟机中效率较低。它会消耗虚拟机的资源,影响到这个虚拟机以及同一宿主机上所有服务器的性能。
正确的做法是在宿主机上进行备份,即使用工具对磁盘镜像.vmdk文件进行备份,不需要虚拟机主动的配合。这样能保证虚拟机可以将所有资源用于负载。
企业级的IT环境不能接受只在一处保留备份的风险。在服务器部署地之外有至少一份备份可以确保在部署地点严重受灾时不会出现没有备份可用的情况。
更理想的情况是,次要的备份仓库应该放在现实中不同的两地或放在“云”上。这样,只要还能连接到备份仓库,就可以访问之前的备份。
加密可以保证备份安全。假如有人窃取了未加密的备份数据,从这一份备份还原出的数据中,可以获取到一些机密信息。加密备份则避免了这样的安全漏洞。
做到定期备份虚拟机仅仅只是备份的第一步。谁也不想在需要从备份中还原虚拟机时才发现以往的备份根本无法使用。
定期测试还原工具,以便检查备份的完整性。