如果某台在线备份虚拟机发生重大故障后短短几分钟就完全恢复,是不是很诱人?但需要强健的备份方法以及足够的磁盘空间来为所有服务器保留副本。
很多管理员都希望无论是小型的或是存放多达几个TB数据的服务器,都可在几分钟内完成恢复。但是,当数据规模达到TB级以上的时候文件拷贝将会占用大量时间。很明显,这种方法不能满足TB级数据的虚拟机应用要求。
为了解决该问题,并且可以同时满足快速在线备份的需求,有两种方法,只不过这些方法需要一点停机时间和预先占用的数据存储空间。
故障切换方式备份虚拟机
第一种是把故障切换方案用做虚拟机备份。很多基于磁盘的备份服务,都是通过在文件系统过滤程序从备份服务器上收集数据。如果文件系统过滤驱动可以监控每个独立磁盘数据块所发生的改变,而不是只针对某个文件级的变化。那么磁盘上的数据块发生改变时,新的内容(仅影响非常小的一部分数据空间)被拷贝到备份服务器并在索引中进行记录。
这样的文件系统过滤驱动可安装到虚拟机内部,或是虚拟主机来监控改变量。磁盘数据块只有在被修改时才进行备份,对于虚拟机的恢复来说就不存在备份窗口的问题。它不再收集过渡期的数据变化(备份量为两次虚拟机备份时间点之间的改变量),该驱动几乎是实时完成对虚拟机的更新和备份。
把数据改变量在备份服务器进行记录的同时,也可以实时备份到另一台关闭状态的虚拟机。这个过程仅在两台服务器间产生一些数据流。备份进程开始于生产服务器磁盘上的数据块发生改变,然后文件系统过滤驱动捕捉到这些改变并把它们发送给备份服务器。最后,备份服务器把改变量记录到另一台冗余的服务器内。
这样两台服务器之间建立了松散的同步关系,换句话说当故障发生后进行恢复所需的时间基本相当于启动另一台虚拟机的时间。另一台虚拟机可以是物理服务器或是虚拟机。
故障切换方式的出发点是为了保证服务器可快速投入使用,但同时也需要保留额外的一份数据用于备份。如果被保护服务器的数据量在TB级别,保留两份数据带来的投入也是巨大的。
虚拟机恢复的数据优先级分类方式
还有一种恢复方式也可以在几分钟内完成在线备份,而且避免了重复数据存储带来的浪费。这种方式在备份恢复的过程中对目标数据进行优先级分类。
同样是基于文件系统过滤驱动,该方式仅在备份服务器相连接的磁盘存储上保留单一数据拷贝。在生产服务器发生故障后,要想恢复虚拟机第一步动作是通过DVD或其它介质启动另一台机器。在DVD光盘上包含的内容可保证操作系统和相关应用程序读取虚拟机的备份数据。从而首先安装核心操作系统和关键应用。
跟整个数据集相比,操作系统和应用程序本身消耗的数据量并不大(类似于几十辆马车对比几千辆之间的差别)。所以虚拟机的恢复所需时间也很少。一旦该服务器的核心部分恢复工作后,大量数据才开始慢慢进入恢复进程。
这正是这种虚拟机恢复方式的关键所在。基于磁盘的备份服务通过文件系统过滤驱动可以随机地访问目录中的任何数据区域。根据所使用的用户不同,这部分数据可以划分优先级。高优先级的数据可以根据用户需求在其它数据加载之前优先进行恢复。完整数据的恢复也许需要很长时间——也就是把TB级的数据拷贝过来所需的时间,但在那之前服务器和相关应用已经在几分钟内恢复正常使用。如果出现用户需要的某快数据还没有被恢复,那么这块数据的优先级会迅速上升并被快速恢复。
很多提供虚拟机备份和恢复服务方案的厂家同时采用了这两种方式。某些工具对TB级数据规模的服务器在线备份要比其它产品快。结合了基于磁盘备份和文件系统过滤驱动之后,需要做的仅仅是在备份服务器上添加一些管理功能来完成对服务器恢复任务。