一种基于VMware的虚拟机合成备份方法与流程

文档序号:11386349阅读:370来源:国知局
一种基于VMware的虚拟机合成备份方法与流程

本发明涉及计算机数据备份技术领域,尤其涉及一种基于vmware的虚拟机合成备份方法。



背景技术:

随着单台物理设备的硬件能力不断提高,虚拟化产品越来越受到客户的青睐。在实际的生产环境中,虚拟化技术主要用来解决高性能的物理硬件产能过剩和老的旧的硬件产能过低的重组重用,透明化底层物理硬件,从而最大化的利用物理硬件。目前金融、互联网、医疗等数据量较大的领域都已经开始广泛使用虚拟化产品。其中,vmware公司的vsphere系列产品以其简单易用、功能丰富、可靠性高等特点成为世界上使用最为广泛的虚拟化产品。

尽管vmware在虚拟化上具有如此强大的功能,但是在实际生产系统中,如果出现硬盘损坏、虚拟机磁盘文件损坏等意外,vmware的虚拟机也无法做到能够继续正常运行,因而导致的重要应用的长时间中断、重要数据的丢失等情况将为客户带来无法估计的损失。为了应对上述情况,各大专注于容灾备份的公司纷纷推出了针对vmwarevsphere的容灾备份软件。这些备份软件通常都只具备最基本的完全备份功能,即每次备份都会把虚拟机磁盘上的所有数据完整的备份下来,这种备份方式对网络、宿主机、存储都会造成极大的资源消耗。因此稍微高级一点的备份软件就会提供差异备份功能,即在进行了一次完全备份后,之后的每次备份都只会把虚拟机磁盘上产生变化的数据块备份下来,这样就大大减少了资源损耗。但是,差异备份仍然存在一个致命问题,就是差异备份点对完全备份点具有极强的依赖性,如果完全备份点损坏,则对应的所有差异备份点全部失效。



技术实现要素:

本发明正是针对现有技术存在的不足,提供了一种基于vmware的虚拟机合成备份方法。

为解决上述问题,本发明所采取的技术方案如下:

一种基于vmware的虚拟机合成备份方法,包括以下步骤:

a、用户在web灾备管理系统注册需要备份虚拟机所在的vmwarevsphere虚拟化中心,远程连接虚拟化中心扫描出所有宿主机及虚拟机的信息,并将上述信息更新到数据库,为下面创建备份任务和启动任务提供基本信息;

b、创建备份任务,选择需要备份的虚拟机,将备份任务信息更新到数据库;

c、以完全备份的模式启动备份任务,不中断生产环境的虚拟机业务,将上一步选择需要备份的虚拟机的虚拟磁盘的所有数据通过网络传输到备份服务器上,生成完全备份点;

d、以合成备份的模式启动备份任务,不中断生产环境的虚拟机业务,将备份虚拟机的虚拟磁盘在从上一步的完全备份启动时刻到此次合成备份启动时刻这段时间之内产生的变化数据块通过网络传输到备份服务器上,然后在备份服务器上通过一定的算法,将上一步的完全备份点的数据和上述提到的变化数据块合并到一起,生成合成备份点;

e、创建恢复任务,根据数据库中备份点和虚拟化中心的信息,选择用于恢复的合成备份点、恢复的目标宿主机以及新建恢复虚拟机的名称;

f、启动恢复任务,远程连接虚拟化中心,将合成备份点中包含的完整虚拟机信息恢复到目标宿主机,生成一个与之前备份虚拟机一模一样的恢复虚拟机;

所述的步骤a具体描述如下:

a1)用户登录web灾备管理系统,进入注册虚拟化中心页面;

a2)用户填写虚拟化中心ip以及用于远程连接虚拟化中心的用户名和密码,页面向备份服务器上的后台程序发送注册虚拟化中心的消息,并附带虚拟化中心ip、用户名和密码等参数,页面等待后台返回;

a3)后台收到页面注册虚拟化中心的消息后,首先获取页面传递的虚拟化中心ip、用户名和密码参数,根据虚拟化中心ip建立远程连接,在连接的过程中会验证用户名和密码的合法性,如果用户名和密码正确,连接成功执行下一步,否则连接失败,给页面返回注册失败的结果;

a4)扫描虚拟化中心上的所有宿主机和虚拟机信息,包括宿主机的ip、宿主机的uuid、虚拟机uuid、虚拟机名称等信息,将上述信息添加到数据库中;

a5)关闭和虚拟化中心的连接,并向页面返回注册成功的信息;

a6)页面返回后,如果注册成功,就可以开始创建备份任务了;

所述的步骤b具体描述如下:

b1)用户进入创建备份任务页面,选择需要备份的虚拟机,页面向备份服务器上的后台程序发送创建备份任务的消息,等待后台返回;

b2)后台收到页面创建备份任务的消息后,获取页面传递过来的任务信息,将任务信息更新到数据库,向页面返回创建任务成功;

b3)页面返回后,如果创建任务成功,就可以开始启动备份任务;

所述的步骤c具体描述如下:

c1)用户进入启动备份任务页面,选择任务并以完全备份的模式启动,页面向备份服务器上的后台程序发送启动备份任务的消息,等待后台返回;

c2)后台收到页面启动备份任务的消息后,获取启动模式和详细任务信息,成功进行下一步,否则向页面返回任务异常的错误;

c3)判断任务是否已经在运行,如果任务已经运行,备份失败,并向页面返回任务已经运行的错误,反之,进行下一步;

c4)和虚拟化中心建立远程连接,如果连接成功,进行下一步,否则备份失败,向页面返回连接虚拟化中心失败的错误;

c5)更新任务状态为运行,对虚拟机磁盘创建快照,创建快照成功,进行下一步,否则关闭和虚拟化中心的连接,备份失败,设置任务状态出错,向页面返回创建快照失败的消息;

c6)在备份服务器上创建存放备份点的备份目录,首先将虚拟机的配置信息传输到备份目录,然后循环对虚拟机的磁盘上的所有数据分块依次传输到备份服务器的备份目录,每传输完一个块,判断用户是否终止任务,如果是,进入下一步;否则继续传输下一个磁盘块,直到所有磁盘数据备份完成,然后进入c8);

c7)更新任务状态为停止,删除备份服务器的备份目录,进入下一步;

c8)保留虚拟机磁盘快照,关闭和虚拟化中心的连接,如果是用户停止任务,向页面返回停止任务成功的消息,否则向页面返回备份成功的消息;

所述的步骤d具体描述如下:

d1)和c1)到c5)的步骤一致;

d2)在备份服务器上创建存储备份点的备份目录,首先将虚拟机的配置信息传输到备份目录,然后循环对虚拟机的磁盘进行如下操作:使用步骤c)中完全备份时候留下来的快照和这次合成备份创建的快照进行对比,获取出这段时间之内该虚拟磁盘产生数据变化的所有数据块,把这些数据块通过网络传输到备份目录下,找到之前的完全备份点下相应的磁盘备份数据,通过特定算法将这两部分数据在备份服务器本地合并成一个磁盘备份文件,在上述过程中处理完一个数据块则判断用户是否终止任务,如果是,进入下一步;否则继续传输下一个磁盘块,直到所有磁盘数据备份完成,然后进入d4);

d3)更新任务状态为停止,删除备份服务器的备份目录,进入下一步;

d4)删除此次合成备份创建的虚拟机磁盘快照,关闭和虚拟化中心的连接,如果是用户停止任务,向页面返回停止任务成功的消息,否则向页面返回备份成功的消息;

所述的步骤e具体描述如下:

e1)用户进入创建恢复任务页面,选择需要恢复的合成备份点,并选择恢复的目标宿主机,填写新建虚拟机名称,页面向备份服务器上的后台程序发送创建恢复任务的消息,等待后台返回;

e2)后台收到页面创建恢复任务的消息后,获取页面传递过来的任务信息,将任务信息更新到数据库,向页面返回创建恢复任务成功;

e3)页面返回后,如果创建任务成功,就可以开始启动恢复任务;

所述的步骤f具体描述如下:

f1)用户进入启动恢复任务页面,选择任务并启动,页面向备份服务器上的后台程序发送启动恢复任务的消息,等待后台返回;

f2)后台收到页面启动恢复任务的消息后,获取任务信息,获取任务成功进行下一步,否则向页面返回任务不存在的错误;

f3)判断任务是否已经在运行,如果任务已经运行,恢复失败,并向页面返回任务已经运行的错误,反之,进行下一步;

f4)和目标宿主机所在的虚拟化中心建立远程连接,如果连接成功,进行下一步,否则恢复失败,向页面返回连接虚拟化中心失败的错误,建立连接方式和步骤c4类似;

f5)更新任务状态为运行,根据合成备份点目录下虚拟机的配置信息在目标宿主机上创建出恢复的虚拟机,读取合成备份点目录下虚拟磁盘备份文件中的数据,然后通过网络传输到目标宿主机,然后由目标宿主机写入到恢复虚拟机的相应虚拟磁盘文件中;

f6)当所有虚拟磁盘的文件写入完成,虚拟机恢复成功,返回页面恢复成功的消息。

本发明与现有技术相比较,本发明的实施效果如下:

本发明提供的一种基于vmware的虚拟机合成备份方法,采用合并备份模式,在进行一次完全备份后,之后的每次备份都只需要从生产环境虚拟机读取变化的数据块到备份服务器,然后在备份服务器上进行数据的合并过程,在大大降低备份过程对生产环境的资源消耗的同时,生成了具备独立完整恢复能力的合成备份点,极大的提升了备份软件的低耗高可靠性;

能够大大减少备份过程对生产环境的资源消耗,并且保证生成的备份点具有独立恢复出一台完整虚拟机的能力。

能够兼具差异备份对生产环境的低资源消耗的优点,同时又像完全备份一样能够生成一个独立的、不需要依赖于任何其它备份点的完整备份点。在对生产环境产生最低影响的同时又提供了超强的安全保障,对于提升vmware虚拟机的容灾备份可靠性具有重大意义。

附图说明

图1表示本发明提供的基于vmware的虚拟机合成备份方法的系统架构图。

图2表示本发明提供的基于vmware的虚拟机合成备份方法的备份功能流程图。

图3表示本发明提供的基于vmware的虚拟机合成备份方法的恢复功能流程图。

具体实施方式

下面将结合具体的实施例和附图来说明本发明的内容。

请一并参阅图1至图3,其中图1表示本发明提供的基于vmware的虚拟机合成备份方法的系统架构图。图2表示本发明提供的基于vmware的虚拟机合成备份方法的备份功能流程图。图3表示本发明提供的基于vmware的虚拟机合成备份方法的恢复功能流程图。

一种基于vmware的虚拟机合成备份方法,包括以下步骤:

a、用户在web灾备管理系统注册需要备份虚拟机所在的vmwarevsphere虚拟化中心,远程连接虚拟化中心扫描出所有宿主机及虚拟机的信息,并将上述信息更新到数据库,为下面创建备份任务和启动任务提供基本信息;

b、创建备份任务,选择需要备份的虚拟机,将备份任务信息更新到数据库;

c、以完全备份的模式启动备份任务,不中断生产环境的虚拟机业务,将上一步选择需要备份的虚拟机的虚拟磁盘的所有数据通过网络传输到备份服务器上,生成完全备份点;

d、以合成备份的模式启动备份任务,不中断生产环境的虚拟机业务,将备份虚拟机的虚拟磁盘在从上一步的完全备份启动时刻到此次合成备份启动时刻这段时间之内产生的变化数据块通过网络传输到备份服务器上,然后在备份服务器上通过一定的算法,将上一步的完全备份点的数据和上述提到的变化数据块合并到一起,生成合成备份点;

e、创建恢复任务,根据数据库中备份点和虚拟化中心的信息,选择用于恢复的合成备份点、恢复的目标宿主机以及新建恢复虚拟机的名称;

f、启动恢复任务,远程连接虚拟化中心,将合成备份点中包含的完整虚拟机信息恢复到目标宿主机,生成一个与之前备份虚拟机一模一样的恢复虚拟机;

所述的步骤a具体描述如下:

a1)用户登录web灾备管理系统,进入注册虚拟化中心页面;

a2)用户填写虚拟化中心ip以及用于远程连接虚拟化中心的用户名和密码,页面向备份服务器上的后台程序发送注册虚拟化中心的消息,并附带虚拟化中心ip、用户名和密码等参数,页面等待后台返回;

a3)后台收到页面注册虚拟化中心的消息后,首先获取页面传递的虚拟化中心ip、用户名和密码参数,根据虚拟化中心ip建立远程连接,在连接的过程中会验证用户名和密码的合法性,如果用户名和密码正确,连接成功执行下一步,否则连接失败,给页面返回注册失败的结果;

a4)扫描虚拟化中心上的所有宿主机和虚拟机信息,包括宿主机的ip、宿主机的uuid、虚拟机uuid、虚拟机名称等信息,将上述信息添加到数据库中;

a5)关闭和虚拟化中心的连接,并向页面返回注册成功的信息;

a6)页面返回后,如果注册成功,就可以开始创建备份任务了;

所述的步骤b具体描述如下:

b1)用户进入创建备份任务页面,选择需要备份的虚拟机,页面向备份服务器上的后台程序发送创建备份任务的消息,等待后台返回;

b2)后台收到页面创建备份任务的消息后,获取页面传递过来的任务信息,将任务信息更新到数据库,向页面返回创建任务成功;

b3)页面返回后,如果创建任务成功,就可以开始启动备份任务;

所述的步骤c具体描述如下:

c1)用户进入启动备份任务页面,选择任务并以完全备份的模式启动,页面向备份服务器上的后台程序发送启动备份任务的消息,等待后台返回;

c2)后台收到页面启动备份任务的消息后,获取启动模式和详细任务信息,成功进行下一步,否则向页面返回任务异常的错误;

c3)判断任务是否已经在运行,如果任务已经运行,备份失败,并向页面返回任务已经运行的错误,反之,进行下一步;

c4)和虚拟化中心建立远程连接,如果连接成功,进行下一步,否则备份失败,向页面返回连接虚拟化中心失败的错误;

c5)更新任务状态为运行,对虚拟机磁盘创建快照,创建快照成功,进行下一步,否则关闭和虚拟化中心的连接,备份失败,设置任务状态出错,向页面返回创建快照失败的消息;

c6)在备份服务器上创建存放备份点的备份目录,首先将虚拟机的配置信息传输到备份目录,然后循环对虚拟机的磁盘上的所有数据分块依次传输到备份服务器的备份目录,每传输完一个块,判断用户是否终止任务,如果是,进入下一步;否则继续传输下一个磁盘块,直到所有磁盘数据备份完成,然后进入c8);

c7)更新任务状态为停止,删除备份服务器的备份目录,进入下一步;

c8)保留虚拟机磁盘快照,关闭和虚拟化中心的连接,如果是用户停止任务,向页面返回停止任务成功的消息,否则向页面返回备份成功的消息;

所述的步骤d具体描述如下:

d1)和c1)到c5)的步骤一致;

d2)在备份服务器上创建存储备份点的备份目录,首先将虚拟机的配置信息传输到备份目录,然后循环对虚拟机的磁盘进行如下操作:使用步骤c)中完全备份时候留下来的快照和这次合成备份创建的快照进行对比,获取出这段时间之内该虚拟磁盘产生数据变化的所有数据块,把这些数据块通过网络传输到备份目录下,找到之前的完全备份点下相应的磁盘备份数据,通过特定算法将这两部分数据在备份服务器本地合并成一个磁盘备份文件,在上述过程中处理完一个数据块则判断用户是否终止任务,如果是,进入下一步;否则继续传输下一个磁盘块,直到所有磁盘数据备份完成,然后进入d4);

d3)更新任务状态为停止,删除备份服务器的备份目录,进入下一步;

d4)删除此次合成备份创建的虚拟机磁盘快照,关闭和虚拟化中心的连接,如果是用户停止任务,向页面返回停止任务成功的消息,否则向页面返回备份成功的消息;

所述的步骤e具体描述如下:

e1)用户进入创建恢复任务页面,选择需要恢复的合成备份点,并选择恢复的目标宿主机,填写新建虚拟机名称,页面向备份服务器上的后台程序发送创建恢复任务的消息,等待后台返回;

e2)后台收到页面创建恢复任务的消息后,获取页面传递过来的任务信息,将任务信息更新到数据库,向页面返回创建恢复任务成功;

e3)页面返回后,如果创建任务成功,就可以开始启动恢复任务;

所述的步骤f具体描述如下:

f1)用户进入启动恢复任务页面,选择任务并启动,页面向备份服务器上的后台程序发送启动恢复任务的消息,等待后台返回;

f2)后台收到页面启动恢复任务的消息后,获取任务信息,获取任务成功进行下一步,否则向页面返回任务不存在的错误;

f3)判断任务是否已经在运行,如果任务已经运行,恢复失败,并向页面返回任务已经运行的错误,反之,进行下一步;

f4)和目标宿主机所在的虚拟化中心建立远程连接,如果连接成功,进行下一步,否则恢复失败,向页面返回连接虚拟化中心失败的错误,建立连接方式和步骤c4类似;

f5)更新任务状态为运行,根据合成备份点目录下虚拟机的配置信息在目标宿主机上创建出恢复的虚拟机,读取合成备份点目录下虚拟磁盘备份文件中的数据,然后通过网络传输到目标宿主机,然后由目标宿主机写入到恢复虚拟机的相应虚拟磁盘文件中;

f6)当所有虚拟磁盘的文件写入完成,虚拟机恢复成功,返回页面恢复成功的消息。

本发明与现有技术相比较,本发明的实施效果如下:

本发明提供的一种基于vmware的虚拟机合成备份方法,采用合并备份模式,在进行一次完全备份后,之后的每次备份都只需要从生产环境虚拟机读取变化的数据块到备份服务器,然后在备份服务器上进行数据的合并过程,在大大降低备份过程对生产环境的资源消耗的同时,生成了具备独立完整恢复能力的合成备份点,极大的提升了备份软件的低耗高可靠性;

能够大大减少备份过程对生产环境的资源消耗,并且保证生成的备份点具有独立恢复出一台完整虚拟机的能力。

能够兼具差异备份对生产环境的低资源消耗的优点,同时又像完全备份一样能够生成一个独立的、不需要依赖于任何其它备份点的完整备份点。在对生产环境产生最低影响的同时又提供了超强的安全保障,对于提升vmware虚拟机的容灾备份可靠性具有重大意义。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

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