由于文件级备份有一些不可克服的弱点,所以我们建议采用裸设备(Raw Device)级备份。本文将讨论这种备份方法。
基于裸设备的虚拟机备份操作,备份内容包括虚拟机的配置环境。
通常情况下,硬盘在操作系统下是一个块设备,针对磁盘的读写要通过操作系统,以块设备进行操作实现。裸设备是指不通过操作系统的文件系统,而由应用程序直接读写的硬盘设备。硬盘在没有格式化的情况下,是一个裸设备。
实际上,很多数据库对数据文件的操作就是基于裸设备进行的。基于裸设备读写,应用程序需要通过硬件驱动,直接对裸设备进行读写操作。读写操作采用字符方式进行,读写效率相对较高。
ESX服务器采用SAN存储技术,文件系统采用分布式文件系统VMFS3,非本地硬盘。故通过基于文件方式的备份,无法实现对系统的备份与恢复。
裸机恢复,是指灾难性故障发生后,从头开始重新安装一台计算机系统的所有过程。包括重新安装操作系统、软件,恢复数据及设置。
对VMware虚拟机备份
下文介绍的是从ESX服务器上备份基于裸虚拟机文件(raw virtual machine files)的操作过程,这可保证完整备份虚拟机文件。而且,在备份过程中,虚拟机可正常运行。
实现这种备份,主要依靠集成在WMware ESX服务器中的快照功能。快照命令主要完成以下功能:
1. 告诉虚拟机使用dump功能,完全复制自己的内存及缓存。
2. 创建一个临时的Delta文件及裸虚拟机(VMDK),其目的是在备份进行过程中,用来暂时记录写入虚拟机的一些写入动作。
3. 冻结VMDK文件,同时将主要虚拟机的VMDK文件解锁。这样做的目的是为了完整地备份虚拟机上的硬盘文件,而不必在ESX服务器上安装备份软件。
4. 整个备份过程中,虚拟机正常运行,所有服务不必中断。
最后,根据实际情况,将快照文件保存到一台或者多台目标虚拟机上。要完成对虚拟机的快照,网络管理员要确保在目标虚拟机上安装WMware工具包,并且使WMware工具处在运行状态。
在对系统进行快照的过程中,WMware工具的不同程序模块负责与虚拟机的操作系统进行交互,包括发出命令复制内存、冻结磁盘等。
快照前的准备工作
既然Delta和交换文件不会被备份,那么第一步要做的事是将目录中的文件列出来,将其通过管道命令输出到一个文件中。以下为执行命令:
$ ls /vmfs/volumes/storage1/VM1 > /tmp/filestocopy
#使用ls命令,列出虚拟机目录下的所有文件,通过pipe命令“>”输出到“filetocopy”文件中。(“#”后为注释,下同。)
然后开始创建虚拟机VM1的快照,在ESX服务器的控制台上执行以下命令:
$ /usr/bin/VMware-cmd /vmfs/volumes/storage1/VM1/VM1.vmx
createsnapshot dailybackups "Backups snapshot" 1
以下对命令进行分开解释:
/usr/bin/VMware-cmd
#这是一个用来进行虚拟机备份的可执行命令。
/vmfs/volumes/storage/VM1/VM1.vmx
#这是虚拟机的配置文件。
Createsnapshot
#创建快照的命令。
Dailybackups
#快照名称。
"Backups snapshot"
#ESX服务器上的日志记录及虚拟机中心环境
备份虚拟机文件
现在,虚拟机的快照做好了,可以开始备份虚拟机上的所有文件了。上期文章中我们提到过Openssh服务。在备份服务器上,我们需要先设置Openssh服务,然后再使用Openssh。
这种方式可以安全地从ESX服务器上将文件复制到备份服务器。采用这种方法,一方面在ESX服务器上不用安装备份软件,最小化了传输文件的时间;同时,也省略了在ESX服务器上加载备份软件的时间。
除了Delta与快照文件外,需要将虚拟机上所有目录中的所有文件进行备份。由于操作系统本身的问题,在Unix、Linux系统中对文件的权限管理比较严格,所以,请注意快照文件的创建权限。同时,请记住要使用SFTP来传输快照进行前的所有虚拟机文件。
执行备份步骤如下:
1. 在ESX服务器上执行SFTP
$ sftp -b /tmp/filestocopy http://media.techtarget.com/searchServerVirtualization/downloads/perl_script.doc
执行Perl脚本文件的命令为:
$ perl snapvm.pl
第三方备份工具
第三方备份软件中,较好的是Vizioncore提供的esxRanger。运行这个程序,需要一个单独的服务器,所以这种方法需要增加额外的软硬件投入。其下载地址为:http://www.vizioncore.com/esxRangerPro.html
esxRanger Professional是一款基于工业标准的备份与恢复软件,它在WMware结构的灾难恢复中处于领先地位。它允许管理人员可以在适当时间、包括虚拟机正在运行的情况下,定时实现对虚拟机的完整备份或者差异备份。镜像文件放在SAN中可随时存取的设备中。也可以通过WAN,远程支持灾难恢复活动。
同时,esxRanger Professional还能够支持单个文件的高效恢复。通常情况下,esxRanger提供一个浏览树,支持用户方便地拖拽自己需要的文件。
笔者相信,未来越来越多的厂家会推出更多的备份方案。