一种虚拟机备份的方法和设备与流程

文档序号:20574443发布日期:2020-04-29 01:01阅读:129来源:国知局
一种虚拟机备份的方法和设备与流程

本领域涉及计算机领域,并且更具体地涉及一种虚拟机备份的方法和设备。



背景技术:

随着互联思想的无处不在,分布式计算应运而生。传统的服务器思想受到了来自网络大数据的挑战,因此,产生了虚拟化技术。使用虚拟化技术获得的虚拟机是指通过软件模拟的具有完整硬件系统功能的、运行在一个完全隔离环境中的完整计算机系统。利用虚拟机,可以实现对硬件异构性的有效屏蔽,同时还具有隔离软件的作用。

为保证运行数据不丢失,或保证系统故障后能尽快恢复,虚拟机需要经常性的备份,并且备份数据与运行数据相一致。虚拟机的备份数据与运行数据相一致也可以称为虚拟机的一致性。

目前的虚拟机备份多数采用单机备份,多个虚拟机则需多次备份,且备份数据一般与业务数据混合存储,致存储使用混乱,在虚拟机故障时无法及时恢复数据,且部分备份机制一般全部采用全量备份。



技术实现要素:

有鉴于此,本发明实施例的目的在于提出一种虚拟机备份的方法和设备,能够通过单个任务完成对多个虚拟机的备份的管理,能够提高业务数据与备份数据的安全性,可降低存储池的利用程度,提高存储池性能。

基于上述目的,本发明的实施例的一个方面提供了一种虚拟机备份的方法,包括以下步骤:

将集群中的全部虚拟机加入到备份管理节点;

设置备份管理节点中虚拟机的备份存储池;

响应于接收到备份指令,分别判断每个虚拟机状态是否异常以及备份存储池是否可用;

响应于每个虚拟机状态正常且备份存储池可用,分别判断每个虚拟机对应的备份存储池中的备份数量及类型;

根据备份数量及类型执行对应的备份策略。

根据本发明的一个实施例,根据备份数量及类型执行对应的备份策略包括:

响应于备份数量小于最大数量,判断备份中是否有全量备份,若有则进行增量备份,若无则进行全量备份;

响应于备份数量等于最大数量、最早的备份为全量备份且其下有增量备份,则删除全量备份下最早的增量备份后进行增量备份;

响应于备份数量等于最大数量、最早的备份为全量备份且其下无增量备份,则删除全量备份并判断是否有其他全量备份,若有则进行增量备份,若无则进行全量备份;

响应于备份数量等于最大数量、最早的备份不是全量备份,则删除最早的备份并判断是否有全量备份,若有则进行增量备份,若无则进行全量备份。

根据本发明的一个实施例,最大数量为备份存储池中每个虚拟机备份文件的最大数量。

根据本发明的一个实施例,基于备份文件的大小判断是否为全量备份。

根据本发明的一个实施例,备份存储池为与虚拟机的业务存储池分离的存储设备。

本发明的实施例的另一个方面,还提供了一种虚拟机备份的设备,其特征在于,设备包括:

至少一个处理器;和

存储器,存储器存储有处理器可运行的程序代码,程序代码在被处理器运行时执行以下步骤:

将集群中的全部虚拟机加入到备份管理节点;

设置备份管理节点中虚拟机的备份存储池;

响应于接收到备份指令,分别判断每个虚拟机状态是否异常以及备份存储池是否可用;

响应于每个虚拟机状态正常且备份存储池可用,分别判断每个虚拟机对应的备份存储池中的备份数量及类型;

根据备份数量及类型执行对应的备份策略。

根据本发明的一个实施例,根据备份数量及类型的不同执行不同的备份策略包括:

响应于备份数量小于最大数量,判断备份中是否有全量备份,若有则进行增量备份,若无则进行全量备份;

响应于备份数量等于最大数量、最早的备份为全量备份且其下有增量备份,则删除全量备份下最早的增量备份后进行增量备份;

响应于备份数量等于最大数量、最早的备份为全量备份且其下无增量备份,则删除全量备份并判断是否有其他全量备份,若有则进行增量备份,若无则进行全量备份;

响应于备份数量等于最大数量、最早的备份不是全量备份,则删除最早的备份并判断是否有全量备份,若有则进行增量备份,若无则进行全量备份。

根据本发明的一个实施例,最大数量为备份存储池中每个虚拟机备份文件的最大数量。

根据本发明的一个实施例,基于备份文件的大小判断是否为全量备份。

根据本发明的一个实施例,备份存储池为与虚拟机的业务存储池分离的存储设备。

本发明具有以下有益技术效果:本发明实施例提供的虚拟机备份的方法,通过将集群中的全部虚拟机加入到备份管理节点;设置备份管理节点中虚拟机的备份存储池;响应于接收到备份指令,分别判断每个虚拟机状态是否异常以及备份存储池是否可用;响应于每个虚拟机状态正常且备份存储池可用,分别判断每个虚拟机对应的备份存储池中的备份数量;根据备份数量执行对应的备份策略的技术方案,能够通过单个任务完成对多个虚拟机的备份的管理,能够提高业务数据与备份数据的安全性,可降低存储池的利用程度,提高存储池性能。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的实施例。

图1为根据本发明一个实施例的虚拟机备份的方法的示意性流程图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明实施例进一步详细说明。

基于上述目的,本发明的实施例的第一个方面,提出了一种虚拟机备份的方法的一个实施例。图1示出的是该方法的示意性流程图。

如图1中所示,该方法可以包括以下步骤:

s1将集群中的全部虚拟机加入到备份管理节点,相当于把集群中的虚拟机的备份集中到了一起,实现虚拟机的批量备份,还可以设置备份周期,比如每天几点备份,或者每隔几天几点开始备份;

s2设置备份管理节点中虚拟机的备份存储池,备份存储池与业务存储池分开部署配置,以防备份数据与业务数据混合降低数据安全性;

s3响应于接收到备份指令,分别判断每个虚拟机状态是否异常以及备份存储池是否可用,虚拟机都会存在虚拟化系统的数据库中的,备份的时候直接根据虚拟机的id就可以获取对应虚拟机状态,备份存储池一般都是挂载在物理主机上的,类似于一块硬盘挂载在了主机上,基本上可以理解为只要是虚拟机的宿主主机能看到这块盘就是可用的;

s4响应于每个虚拟机状态正常且备份存储池可用,分别判断每个虚拟机对应的备份存储池中的备份数量及类型,每个虚拟机在备份存储池中都有一个单独的存储空间,在每个虚拟机对应的单独存储空间中可以查到当前虚拟机已有的备份数量,备份的实际文件是存放在备份存储池的,但是虚拟机在备份的时候会同时在数据库中存一条数据,保存这个虚拟机现有的备份情况,这个备份是一个链条。判断备份类型(全量或增量)可直接根据虚拟机id查询数据库;

s5根据备份数量及类型执行对应的备份策略。

通过以上技术方案,能够通过单个任务完成对多个虚拟机的备份的管理,能够提高业务数据与备份数据的安全性,可降低存储池的利用程度,提高存储池性能。

在本发明的一个优选实施例中,根据备份数量及类型的不同执行不同的备份策略包括:

响应于备份数量小于最大数量,判断备份中是否有全量备份,若有则进行增量备份,若无则进行全量备份;

响应于备份数量等于最大数量,最早的备份为全量备份且其下有增量备份,则删除全量备份下最早的增量备份后进行增量备份;

响应于备份数量等于最大数量,最早的备份为全量备份且其下无增量备份,则删除全量备份并判断是否有其他全量备份,若有则进行增量备份,若无则进行全量备份;

响应于备份数量等于最大数量,最早的备份不是全量备份,则删除最早的备份并判断是否有全量备份,若有则进行增量备份,若无则进行全量备份。

批量备份操作系统会启动多个线程批量操作多个虚拟机,每个线程单独负责一个虚拟机的备份,并判断当前虚拟机的备份数量是否已达最大保留个数,若为达到最大保留个数则直接开始备份。若达到最大保留个数,则按照以下规则删除最早备份后再开始备份。

备份过程中,首选判断虚拟机目前是否有全量备份,若有则此时进行增量备份,若无则进行全量备份。增量备份皆基于全量备份进行。

虚拟机备份数达到最大保留个数后,判断虚拟机最早的备份是增量备份还是全量备份。若为增量备份则直接删除;若为全量备份则判断是否有增量备份依赖此全量备份,若无则直接删除;若有增量备份依赖此全量备份,则删除最早生成的依赖此全量备份的增量备份。

在本发明的一个优选实施例中,最大数量为备份存储池中每个虚拟机备份文件的最大数量。一般情况下最大备份数量设置为10,也可以根据实际情况和需要更改为其他值,限制最大备份数量可降低存储池的利用程度,提高存储池性能。

在本发明的一个优选实施例中,基于备份文件的大小判断是否为全量备份。通常全量备份的数据会远大于增量备份的文件大小,也可以直接根据虚拟机id查询数据库,因为备份的实际文件是存放在备份存储池的,但是虚拟机在备份的时候会同时在数据库中存一条数据,保存这个虚拟机现有的备份情况,这个备份是一个链条。

在本发明的一个优选实施例中,备份存储池为与虚拟机的业务存储池分离的存储设备。备份存储池与业务存储池分离,能够提高业务数据与备份数据的安全性。

实施例

1、管理节点目前的批量备份为虚拟机a、b、c,在每天凌晨4点进行备份,备份存储池使用store1,虚拟机使用的业务存储池为store2,最大备份数量设置为10;

2、凌晨4点启动批量备份任务,首先判断虚拟机的状态是否异常,虚拟机的存储池store2是否可用,备份存储池store1是否可用;

3、虚拟机状态正常且存储池可用时,按照备份策略中的最大备份数量10分别判断a、b、c三个虚拟机的备份数是否已达最大数量,此处假设a未达最大备份数量,b、c已达最大备份数量,b最早的备份为全量备份且其下有增量备份,c最早的备份为全量备份其下无其他增量备份;

4、虚拟机a直接开始备份,若有全量则进行增量备份,否则进行全量备份;

5、虚拟机b由于其最早的全量备份下有增量备份,则删除其全量备份下的最早的增量备份后开始备份,备份为增量备份;

6、虚拟机c则直接删除最早的全量备份后开始备份,并判断删除之后是否还有全量备份,若有则进行增量备份,若无则进行全量备份。

通过以上技术方案,能够通过单个任务完成对多个虚拟机的备份的管理,能够提高业务数据与备份数据的安全性,可降低存储池的利用程度,提高存储池性能。

需要说明的是,本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关硬件来完成,上述的程序可存储于计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,的存储介质可为磁碟、光盘、只读存储器(read-onlymemory,rom)或随机存取存储器(randomaccessmemory,ram)等。上述计算机程序的实施例,可以达到与之对应的前述任意方法实施例相同或者相类似的效果。

此外,根据本发明实施例公开的方法还可以被实现为由cpu执行的计算机程序,该计算机程序可以存储在计算机可读存储介质中。在该计算机程序被cpu执行时,执行本发明实施例公开的方法中限定的上述功能。

基于上述目的,本发明的实施例的第二个方面,提出了一种虚拟机备份的设备,其特征在于,设备包括:

至少一个处理器;和

存储器,存储器存储有处理器可运行的程序代码,程序代码在被处理器运行时执行以下步骤:

将集群中的全部虚拟机加入到备份管理节点;

设置备份管理节点中虚拟机的备份存储池;

响应于接收到备份指令,分别判断每个虚拟机状态是否异常以及备份存储池是否可用;

响应于每个虚拟机状态正常且备份存储池可用,分别判断每个虚拟机对应的备份存储池中的备份数量及类型;

根据备份数量及类型执行对应的备份策略。

在本发明的一个优选实施例中,根据备份数量及类型的不同执行不同的备份策略包括:

响应于备份数量小于最大数量,判断备份中是否有全量备份,若有则进行增量备份,若无则进行全量备份;

响应于备份数量等于最大数量,最早的备份为全量备份且其下有增量备份,则删除全量备份下最早的增量备份后进行增量备份;

响应于备份数量等于最大数量,最早的备份为全量备份且其下无增量备份,则删除全量备份并判断是否有其他全量备份,若有则进行增量备份,若无则进行全量备份;

响应于备份数量等于最大数量,最早的备份不是全量备份,则删除最早的备份并判断是否有全量备份,若有则进行增量备份,若无则进行全量备份。

在本发明的一个优选实施例中,最大数量为备份存储池中每个虚拟机备份文件的最大数量。

在本发明的一个优选实施例中,基于备份文件的大小判断是否为全量备份。

在本发明的一个优选实施例中,备份存储池为与虚拟机的业务存储池分离的存储设备。

需要特别指出的是,上述系统的实施例采用了上述方法的实施例来具体说明各模块的工作过程,本领域技术人员能够很容易想到,将这些模块应用到上述方法的其他实施例中。

此外,上述方法步骤以及系统单元或模块也可以利用控制器以及用于存储使得控制器实现上述步骤或单元或模块功能的计算机程序的计算机可读存储介质实现。

本领域技术人员还将明白的是,结合这里的公开所描述的各种示例性逻辑块、模块、电路和算法步骤可以被实现为电子硬件、计算机软件或两者的组合。为了清楚地说明硬件和软件的这种可互换性,已经就各种示意性组件、方块、模块、电路和步骤的功能对其进行了一般性的描述。这种功能是被实现为软件还是被实现为硬件取决于具体应用以及施加给整个系统的设计约束。本领域技术人员可以针对每种具体应用以各种方式来实现的功能,但是这种实现决定不应被解释为导致脱离本发明实施例公开的范围。

上述实施例,特别是任何“优选”实施例是实现的可能示例,并且仅为了清楚地理解本发明的原理而提出。可以在不脱离本文所描述的技术的精神和原理的情况下对上述实施例进行许多变化和修改。所有修改旨在被包括在本公开的范围内并且由所附权利要求保护。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1