集群中虚拟机的恢复方法和系统的制作方法_2

文档序号:8922440阅读:来源:国知局
复方法可应用于如图1所示的应用环境中。参考图1所示,服务器101、服务器102、服务器103通过网络组成集群。服务器101与外置存储设备104通过网络连接。每台服务器上都运行了虚拟机(Virtual Machine, VM),还可以对其他服务器上运行的虚拟机的虚拟磁盘文件进行备份存储。其中,服务器101上运行了四台虚拟机,分别为VMl、VM2、VM3和VM4。其中,VMl和VM3与服务器103建立了备份关系,在指定时间VMl和VM3分别将其虚拟磁盘文件备份至服务器103。VM2与服务器102建立了备份关系,在指定时间VM2将其虚拟磁盘文件备份至服务器102。VM4与外置共享存储设备104建立了备份关系,在指定时间VM4将其虚拟磁盘文件备份至外置共享存储设备104。当服务器101发生故障时,可以在服务器103上利用已备份的VMl的虚拟磁盘文件对VMl进行快速恢复,并且可利用已备份的VM3的虚拟磁盘文件对VM3进行快速恢复。在服务器102上利用已备份的VM2的虚拟磁盘文件对VM2进行快速恢复。服务器102或者服务器103可以获取外置共享存储设备104上已备份的VM4的虚拟磁盘文件,利用已备份的VM4的虚拟磁盘文件在服务器102或者服务器103上对VM4进行快速恢复。此外,在服务器101发生故障时,虚拟机VM1、VM2、VM3和VM4可以任意选择在服务器102或者服务器103上进行快速恢复。由此实现了在不增加硬件成本投入的情况下有效利用集群中的服务器资源对集群中虚拟机的快速恢复。
[0050]在一个实施例中,如图2所示,提供了一种集群中虚拟机的恢复方法,该方法具体包括:
[0051]步骤202,将第一服务器上运行的虚拟机的虚拟磁盘文件备份至集群中其他服务器。
[0052]服务器是指采用了虚拟化技术并且可以运行虚拟机的服务器。多台服务器组成一个集群。服务器也可以称为集群中的节点。服务器上运行的虚拟机的虚拟磁盘文件可以备份至其他服务器,即备份至其他节点。也就是说,集群中的每台服务器都运行了虚拟服务器,并且承担备份其他服务器上的虚拟机的虚拟磁盘文件的任务。每台服务器上可以运行一台虚拟机,也可以运行多台虚拟机。对于一台服务器上运行的多台虚拟机,可以将多台虚拟机的虚拟磁盘文件备份至集群中其他的同一台服务器,也可以将多台虚拟机的虚拟磁盘文件分别对应虚拟机与其他服务器的备份关系备份至集群中多台不同的服务器。对虚拟机的虚拟磁盘文件进行备份,也可简称为对虚拟机进行备份。承担备份任务的服务器是可以预先指定的。也可以选择资源空闲的服务器作为承担备份任务的服务器。资源是指服务器的资源,如 1(Input/Output,输入 / 输出)>CPU(Central Processing Unit,中央处理器)等。资源空闲是指服务器的资源占用率低于预设条件。例如,CPU占用率低于10%等。
[0053]在对虚拟磁盘文件进行备份的过程中,第一服务器上的虚拟机处于正常运行状态。具体的,通过对虚拟机的虚拟磁盘文件创建快照,创建快照之后,对虚拟磁盘的容量进行扩充,将虚拟机在快照之后写入虚拟磁盘的数据写到虚拟磁盘扩充后的区域。从而避免了对同一虚拟磁盘区域同时进行读写操作。由此能够在无需暂停虚拟机运行的情况下对虚拟磁盘文件进行备份。
[0054]此外,第一服务器也可以通过网络与外置共享存储设备相连接。将第一服务器上运行的虚拟机与外置共享存储设备建立备份关系之后,可以将虚拟机的虚拟磁盘文件备份至外置共享存储设备。
[0055]步骤204,第一服务器发生故障时,从其他服务器获取已备份的虚拟磁盘文件。
[0056]第一服务器发生故障时虚拟机无法继续运行,要对虚拟机进行恢复。需从其他服务器即承担备份任务的服务器上获取已备份的虚拟磁盘文件。如果发生故障的第一服务器上运行了多台虚拟机,则需要从其他服务器上分别获取多份已备份的虚拟磁盘文件。
[0057]步骤206,利用已备份的虚拟磁盘文件对虚拟机进行恢复。
[0058]利用已备份的虚拟磁盘文件对虚拟机进行恢复,从而确保虚拟机能够继续运行。虚拟机可以在备份磁盘文件的服务器上进行恢复,也可以根据集群中其他服务器的资源利用状况,选择在资源空闲的服务器上进行恢复。如果有多台虚拟机需要恢复,可以将多台虚拟机在同一台服务器上进行恢复,也可以在集群中不同的服务器上对不同的虚拟机分别进行恢复。
[0059]对于备份至外置共享存储设备中的虚拟磁盘文件,当第一服务器发生故障时,从外置共享存储设备中获取已备份的虚拟磁盘文件,在任意选择的集群中的服务器上利用已备份的虚拟磁盘文件对虚拟机进行恢复。如果外置共享存储设备上备份了多份虚拟磁盘文件,可获取多方虚拟磁盘文件在集群中多台服务器上分别对虚拟机进行恢复。也可以将多台虚拟机在一台服务器上进行恢复。
[0060]本实施例中,将第一服务器上运行的虚拟机的虚拟磁盘文件备份至集群中其他服务器;第一服务器发生故障时,从其他服务器获取已备份的虚拟磁盘文件;利用已备份的虚拟磁盘文件对虚拟机进行恢复。由于将虚拟机的虚拟磁盘文件备份至集群中其他服务器,从而无需增加硬件成本投入即可利用集群中的其他服务器对虚拟机进行备份。在运行虚拟机的第一服务器发生故障时,从集群中其他服务器获取已备份的虚拟磁盘文件,由此能够利用已备份的虚拟磁盘文件对虚拟机进行快速恢复。由此实现了在不增加硬件成本投入的情况下能够有效利用集群中的服务器资源对虚拟机进行快速恢复。[0061 ] 在一个实施例中,在将第一服务器上运行的虚拟机的虚拟磁盘文件备份至集群中其他服务器的步骤之前,还包括:建立虚拟机与集群中其他服务器之间的备份关系;获取对虚拟机进行备份的指定时间。
[0062]本实施例中,备份关系是指将虚拟机的虚拟磁盘数据备份至集群中的哪一台服务器。备份关系可以是预先人为指定建立的。也可以是根据集群中各个服务器已运行的虚拟机数量、已备份的虚拟磁盘文件数量、物理磁盘剩余空间容量、CPU占用率、1占用率等参数计算出备份指数,选择备份指数最高的服务器,建立虚拟机与该服务器的备份关系。如果有多台虚拟机需要进行备份,则在每台虚拟机进行备份之前都需要分别计算备份指数,并分别建立虚拟机与备份指数最高的服务器的备份关系。
[0063]对虚拟机进行备份的指定时间可以是定时的,也可以是不定时的。定时进行备份时,可以在指定时间手动对虚拟磁盘文件进行备份。不定时备份时,可以在已建立备份关系的服务器资源空闲时对虚拟磁盘文件进行备份。具体的,实时检测已建立备份关系的服务器的资源利用状况,如CPU占用率、1占用率等,若检测到资源空闲,则在已建立备份关系的服务器上备份虚拟磁盘文件,若备份过程中检测到不再满足资源空闲条件,则暂停备份,当再次检测到资源空闲时再继续进行虚拟磁盘文件的备份。由于不定时备份能够充分利用集群中服务器的空闲资源对虚拟机的虚拟磁盘文件进行备份,由此能够在不影响服
当前第2页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1