CN103034566B - 虚拟机还原的方法和装置 - Google Patents
虚拟机还原的方法和装置 Download PDFInfo
- Publication number
- CN103034566B CN103034566B CN201210519490.7A CN201210519490A CN103034566B CN 103034566 B CN103034566 B CN 103034566B CN 201210519490 A CN201210519490 A CN 201210519490A CN 103034566 B CN103034566 B CN 103034566B
- Authority
- CN
- China
- Prior art keywords
- data
- identification information
- moment
- data block
- restored
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及一种虚拟机还原的方法和装置。该方法包括:虚拟化平台接收备份服务器发送的增量数据对比命令,其中携带有第一改变标识信息;根据增量数据对比命令,对当前时刻的虚拟机进行快照操作,得到第二改变标识信息;根据第一改变标识信息和第二改变标识信息,确定虚拟机磁盘中数据内容发生改变的改变数据块;将改变数据块的块标识信息发送至备份服务器,用以备份服务器获取改变数据块在待还原时刻的备份数据。备份服务将查询到的改变数据块在待还原时刻的备份数据发送至虚拟化平台,虚拟化平台即可将改变数据块的内容还原至待还原时刻。本发明实施例实现了快速还原虚拟机,并且降低了硬盘损耗。
Description
技术领域
本发明涉及虚拟机技术领域,尤其涉及一种虚拟机还原的方法和装置。
背景技术
虚拟化通常是指计算机操作系统和程序在虚拟的硬件上而不是真实的硬件上运行。计算机的虚拟化就是通过软件平台的方法在一台计算机上虚拟出很虚拟计算机,被虚拟出的计算机称作虚拟主机或虚拟机。计算机所运行的软件平台为虚拟化平台,虚拟机化平台可以提供对虚拟机的虚拟磁盘进行读写操作的应用程序编程接口(Application ProgrammingInterface,API),备份系统可通过此接口对虚拟机进行备份和还原。
在现有技术下,可以通过虚拟化平台的改变块追踪(Changed BlockTracking,CBT)功能或其他类似的能实现增量备份的软件来实现虚拟机的增量备份。而虚拟机的还原方法为:删除要进行还原的虚拟机的磁盘文件;重建一个与被删除的磁盘文件一样大的空白磁盘文件;将第一次备份的虚拟机的全备文件的所有数据块的数据从备份服务器写回新建的空白磁盘文件,得到原始磁盘文件;将虚拟机待还原时刻与第一次备份时刻相比改变的数据块的数据从备份服务器的增备文件集中写回之前得到的原始磁盘文件,即更新与原始磁盘文件中相应数据块的数据,得到待还原时刻的虚拟机。现有的虚拟机的还原方法要删除待还原虚拟机,重建待还原虚拟机的磁盘文件,由此占用了大量的系统资源;而把全部磁盘文件从备份服务器写回虚拟磁盘中,则增加了额外的磁盘输入/输出操作,进而加剧了硬盘的损耗;整个还原过程所需的还原时间很长,增加了时间成本。
发明内容
本发明实施例提供了一种虚拟机还原的方法和装置,以基于虚拟化平台的增量数据对比功能实现在还原虚拟机的过程中只传输数据内容发生改变的数据块的备份数据,减少数据传输量,进而实现快速还原虚拟机,并且降低硬盘损耗。
第一方面,本发明实施例提供了一种虚拟机还原的方法,所述方法包括:
接收备份服务器发送的携带有第一改变标识信息的增量数据对比命令,所述第一改变标识信息为对待还原时刻的虚拟机进行快照时生成的标识信息;
根据所述增量数据对比命令,对当前时刻的所述虚拟机进行快照操作,得到第二改变标识信息所述第二改变标识信息为对所述当前时刻的所述虚拟机进行快照时生成的标识信息;
根据所述第一改变标识信息和所述第二改变标识信息,确定所述虚拟机的磁盘文件中的改变数据块,所述改变数据块为数据内容发生改变的数据块;
将所述改变数据块的块标识信息发往所述备份服务器,用以所述备份服务器获取所述改变数据块在待还原时刻的备份数据。
在第一种可能的实现方式中,所述将所述改变数据块的块标识信息发送至所述备份服务器之后,还包括:从所述备份服务器接收所述改变数据块在所述待还原时刻的备份数据;将所述改变数据块的数据内容更新为所述改变数据块在待还原时刻的备份数据。
结合第一方面或第一方面的第一种可能的实现方式,在第二种可能的实现方式中,所述根据所述第一改变标识信息和所述第二改变标识信息,确定所述虚拟机的磁盘文件中的改变数据块具体为:对所述第一改变标识信息和所述第二改变标识信息进行对比,根据对比结果确定所述虚拟机磁盘文件中数据内容发生改变的改变数据块。
第二方面,本发明实施例提供了一种虚拟机还原的方法,所述方法包括:
向虚拟化平台发送携带有第一改变标识信息的增量数据对比命令所述第一改变标识信息为对待还原时刻的虚拟机进行快照时生成的标识信息;
所述虚拟化平台根据所述第一改变标识信息完成增量数据对比后,接收所述虚拟化平台发送的改变数据块的块标识信息;
根据所述改变数据块的块标识信息,查询所述改变数据块在待还原时刻的备份数据;
将所述改变数据块在待还原时刻的备份数据发送至所述虚拟化平台,用以所述虚拟化平台根据所述备份数据将所述改变数据块的内容还原至待还原时刻。
在第一种可能的实现方式中,所述根据所述改变数据块的块标识信息,查询所述改变数据块在待还原时刻的备份数据具体为:根据所述改变数据块的块标识信息,优先在所述待还原时刻的增备数据中查询所述改变数据块的备份数据;当在所述待还原时刻的增备数据中查询不到所述改变数据块的备份数据时,在所述待还原时刻之前时刻的增备数据或全备数据中查询所述改变数据块的备份数据。
结合第二方面或第二方面的第一种可能的实现方式,在第二种可能的实现方式中,所述向虚拟化平台发送增量数据对比命令之前还包括:接收将所述虚拟机还原到待还原时刻的命令。
第三方面,本发明实施例提供了一种虚拟机还原的装置,所述装置包括:
接收单元,用于接收备份服务器发送的携带有第一改变标识信息的增量数据对比命令,所述第一改变标识信息为对待还原时刻的虚拟机进行快照时生成的标识信息;
快照单元,用于根据所述增量数据对比命令,对当前时刻的所述虚拟机进行快照操作,得到第二改变标识信息,所述第二改变标识信息为对所述当前时刻的所述虚拟机进行快照时生成的标识信息;
确定单元,用于根据所述第一改变标识信息和所述第二改变标识信息,确定所述虚拟机的磁盘文件中的改变数据块,所述改变数据块为数据内容发生改变的数据块;
发送单元,用于将所述改变数据块的块标识信息发送至所述备份服务器,用以所述备份服务器获取所述改变数据块在待还原时刻的备份数据。
在第一种可能的实现方式中,所述接收单元还用于,从所述备份服务器接收所述改变数据块在所述待还原时刻的备份数据;所述装置还包括:更新单元,用于将所述改变数据块的数据内容更新为所述改变数据块在待还原时刻的备份数据。
结合第三方面或者第三方面的第一种可能的实现方式,在第二种可能的实现方式中,所述确定单元具体用于:对所述第一改变标识信息和所述第二改变标识信息进行对比,根据对比结果确定所述虚拟机磁盘文件中数据内容发生改变的改变数据块。
第四方面,本发明实施例提供了一种虚拟机还原的装置,所述装置包括:
发送单元,用于向虚拟化平台发送携带有第一改变标识信息的增量数据对比命令所述第一改变标识信息为对待还原时刻的虚拟机进行快照时生成的标识信息;
接收单元,用于所述虚拟化平台根据所述第一改变标识信息完成增量数据对比后,接收所述虚拟化平台发送的改变数据块的块标识信息;
查询单元,用于根据所述改变数据块的块标识信息,查询所述改变数据块在待还原时刻的备份数据;
所述发送单元,还用于将所述改变数据块在待还原时刻的备份数据发送至所述虚拟化平台,用以所述虚拟化平台根据所述备份数据将所述改变数据块的内容还原至待还原时刻。
在第一种可能的实现方式中,所述查询单元具体用于:根据所述改变数据块的块标识信息,优先在所述待还原时刻的增备数据中查询所述改变数据块的备份数据;当在所述待还原时刻的增备数据中查询不到所述改变数据块的备份数据时,在所述待还原时刻之前时刻的增备数据中查询所述改变数据块的备份数据或向前回溯直到全备数据中查询所述改变数据块的备份数据。
结合第四方面或第四方面的第一种可能的实现方式,在第二种可能的实现方式中,所述接收单元还用于,接收将所述虚拟机还原到待还原时刻的命令。
本发明实施例中,当备份服务器接收到将虚拟机还原到待还原时刻时,可向虚拟机所在的虚拟化平台发送增量数据对比命令,该命令中携带有待还原时刻的快照标识信息,即第一改变标识信息;虚拟化平台接收到该增量数据对比命令后,首先对当前时刻的虚拟机进行快照得到第二改变标识信息,然后通过对比第一改变标识信息和第二改变标识信息得到当前时刻和待还原时刻相比改变的改变数据块,并将改变数据块的块标识信息发送至备份服务器;备份服务器得到该块标识信息后,在全备数据或增备数据中查询待还原时刻的改变数据块的数据内容的备份数据,并写回到虚拟机。由此,本发明实施例基于虚拟化平台的增量数据对比功能实现在还原虚拟机的过程中只传输数据内容发生改变的数据块的备份数据,减少数据传输量,进而实现快速还原虚拟机,并且降低存储空间的消耗。
附图说明
图1为本发明实施例提供的一种虚拟机还原的方法应用场景示意图;
图2为本发明实施例提供的一种虚拟机还原的方法流程图;
图3为本发明实施例提供的另一虚拟机还原的方法流程图;
图4为本发明实施例提供的一种虚拟机还原过程的示意图;
图5为本发明实施例提供的一种虚拟机还原的装置示意图;
图6为本发明实施例提供的另一虚拟机还原的装置示意图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、接口、技术之类的具体细节,以便透切理解本发明。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本发明。在其它情况中,省略对众所周知的装置、电路以及方法的详细说明,以免不必要的细节妨碍本发明的描述。
图1为本发明实施例提供的一种虚拟机还原的方法应用场景示意图。本发明实施例提供的虚拟机还原的方法在实际应用时,作为一种新的方法可应用于虚拟机还原的场景。如图1所示,本发明实施例提供的应用场景中,虚拟化平台可以通过存储区域网络(Storage Area Network,SAN)方式连接存储阵列作为所有虚拟主机的共享存储资源,而备份服务器可以通过网络附加存储(Network Attached Storage,NAS)方式连接存储阵列作为备份数据的存储池,当用户想要将虚拟化平台中安装的虚拟机1、虚拟机2、…、虚拟机n还原到待还原时刻的状态时,备份服务器中的备份软件可通过面向虚拟化平台的应用程序编程接口(Application Programming Interface,API)向虚拟化平台发送增量数据对比命令,虚拟化平台将确定当前时刻与待还原时刻的数据内容不同的改变数据块,然后备份服务器将改变数据块的待还原时刻的备份数据写回到虚拟机中,这样就可以实现虚拟机的还原,缩短了虚拟机还原的时间,减少了数据的传输量,降低了存储空间的消耗。
本发明实施例提供的备份服务器即可安装在普通的物理主机上,也可安装于虚拟化平台上运行的虚拟机中。
本发明实施例针对现有技术下虚拟机还原的方法的缺陷,提供了一种虚拟机还原的方法和装置。当备份服务器接收到将虚拟机还原到待还原时刻时,可向虚拟机所在的虚拟化平台发送增量数据对比命令,该命令中携带有待还原时刻的快照标识信息,即第一改变标识信息;虚拟化平台接收到该增量数据对比命令后,首先对当前时刻的虚拟机进行快照得到第二改变标识信息,然后通过对比第一改变标识信息和第二改变标识信息得到当前时刻和待还原时刻相比改变的改变数据块,并将改变数据块的块标识信息发送至备份服务器;备份服务器得到该块标识信息后,在全备数据或增备数据中查询待还原时刻的改变数据块的数据内容的备份数据,并写回到虚拟机。
图2为本发明实施例提供的一种虚拟机还原的方法流程图。该实施例的执行主体是虚拟化平台,其中详细描述了虚拟化平台在接收到增量数据对比命令后,将虚拟机还原到待还原时刻的方法。如图2所示,该实施例包括以下步骤:
步骤201,接收备份服务器发送的携带有第一改变标识信息的增量数据对比命令,所述第一改变标识信息为对待还原时刻的虚拟机进行快照时生成的标识信息。
具体地,第一改变标识信息为一个字符串形式的标识信息,该标识信息在虚拟化平台对待还原时刻的虚拟机进行快照处理时生成。其中,待还原时刻是指要将虚拟机还原到的时刻。
为了实现本发明实施例提供的技术方案,该虚拟化平台支持CBT功能,可以根据进行快照时生成的改变标识信息ChangeID,来计算两个快照时刻点之间虚拟机中数据内容发生改变的数据块。
需要说明的是,本发明实施例中提到的数据块是一个广义的定义,在VMware虚拟化平台中,数据块指的是虚拟硬盘的硬盘扇区Sector,而在其他现有的以及未来可能出现的新的虚拟化平台中,数据块的含义可能不同于VMware虚拟化平台中的虚拟硬盘的Sector,而是其他的含义。例如,对于以阵列作为虚拟化平台的存储介质系统中,数据块是指阵列上组成逻辑单元的块。
步骤202,根据所述增量数据对比命令,对当前时刻的所述虚拟机进行快照操作,得到第二改变标识信息,所述第二改变标识信息为对所述当前时刻的所述虚拟机进行快照时生成的标识信息。
虚拟化平台接收到增量数据对比命令后,首先对当前时刻的虚拟机行快照操作,得到当前时刻的虚拟机快照对应的改变标识信息,即第二改变标识信息。
步骤203,根据所述第一改变标识信息和所述第二改变标识信息,确定所述虚拟机的磁盘文件中的改变数据块,所述改变数据块为数据内容发生改变的数据块。
根据所述第一改变标识信息和所述第二改变标识信息,确定所述虚拟机磁盘文件中数据内容发生改变的改变数据块具体为:对所述第一改变标识信息和所述第二改变标识信息进行对比,根据对比结果确定所述虚拟机磁盘文件中数据内容发生改变的改变数据块。
具体地,虚拟化平台将第一改变标识信息作为基准标识信息,将第二改变标识信息与第一改变标识信息进行对比,可得到虚拟机的当前时刻的虚拟磁盘中哪些数据块的数据内容相对待还原时刻的数据块发生了变化。这些发生变化的数据块即为要还原的数据块,其他没有发生变化的数据块不用进行还原处理。其中,数据块可以用块标识信息进行标识,也可以用数据块在虚拟磁盘中的位置来标识。
步骤204,将所述改变数据块的块标识信息发往所述备份服务器,用以所述备份服务器获取所述改变数据块在待还原时刻的备份数据。
通过步骤203,确定出发生数据内容发生变化的数据块之后,即可将改变数据块的块标识信息发送至备份服务器,由备份服务器根据块标识信息,在备份数据的存储池中查询改变数据块在待还原时刻的备份数据。
在一种可选的实施方式中,在执行步骤204之后,备份服务器将从备份数据的存储池中的全备数据或增备数据中查询待还原时刻的改变数据块的备份数据,并将需要还原的数据写回到虚拟化平台的虚拟机中。由此,在步骤204之后,还包括:从所述备份服务器接收所述改变数据块在所述待还原时刻的备份数据;将所述改变数据块的数据内容更新为所述改变数据块在待还原时刻的备份数据。
本发明实施例中,虚拟化平台通过增量数据对比功能查询到当前时刻与待还原时刻相比,数据内容发生改变的数据块,只还原该数据内容发生改变的数据块,即可将虚拟机还原到待还原时刻,并且由于在还原虚拟机的过程中只传输数据内容发生改变的数据块的备份数据,减少了数据的传输量,实现了快速还原虚拟机,降低存储空间的消耗。
上述实施例以虚拟化平台为执行主体描述了虚拟机还原的过程,下述实施例以备份服务器为执行主体描述虚拟机还原的过程。
图3为本发明实施例提供的另一虚拟机还原的方法流程图。该实施例的执行主体是备份服务器,其中详细描述了备份服务器接收到虚拟机还原请求后执行虚拟机还原的方法。如图3所示,该实施例包括以下步骤:
步骤301,向虚拟化平台发送携带有第一改变标识信息的增量数据对比命令所述第一改变标识信息为对待还原时刻的虚拟机进行快照时生成的标识信息。
在向虚拟化平台发送增量数据对比命令之前,用户可向备份服务器发送让虚拟机还原到待还原时刻的请求,即备份服务器可接收将虚拟机还原到待还原时刻的命令。
备份服务器接收到还原请求后,可首先获取待还原时刻的虚拟机快照对应的第一改变标识信息,该标识信息在虚拟化平台对待还原时刻的虚拟机进行快照处理时生成;然后向虚拟化平台发送携带该第一改变标识信息的增量数据对比命令。
步骤302,所述虚拟化平台根据所述第一改变标识信息完成增量数据对比后,接收所述虚拟化平台发送的改变数据块的块标识信息。
虚拟化平台接收到增量数据对比命令后,对当前时刻的虚拟机进行快照操作,得到当前时刻的虚拟机快照对应的改变标识信息,即第二改变标识信息,然后通过对比第一改变标识信息和第二改变标识信息得到数据内容发生改变的改变数据块,并将改变数据块的块标识信息发送至备份服务器,由此备份服务器可接收到虚拟化平台发送的改变数据块的块标识信息。
步骤303,根据所述改变数据块的块标识信息,查询所述改变数据块在待还原时刻的备份数据。
根据所述改变数据块的块标识信息,查询所述改变数据块在待还原时刻的备份数据的具体操作为:根据所述改变数据块的块标识信息,优先在所述待还原时刻的增备数据中查询所述改变数据块的备份数据;当在所述待还原时刻的增备数据中查询不到所述改变数据块的备份数据时,在所述待还原时刻之前时刻的增备数据中查询所述改变数据块的备份数据或向前回溯直到全备数据中查询所述改变数据块的备份数据。
具体地,备份服务器在接收到改变数据块的块标识信息后,首先在备份数据的存储池中待还原时刻对应的增备数据中查找在待还原时刻是否存储了改变数据块的备份数据,如果是,则将该时刻的增备数据中的改变数据块的备份数据提取出来。对于在待还原时刻的增备数据中没有保存的改变数据块的备份数据,则在待还原时刻之前的时刻对应的增备数据中查询,如果查询到,则将该备份数据从增备数据提取出来;如果仍有改变数据块的数据没有查询到,则继续在该时刻之前的时刻中查找,一直查找到最初时刻的全备数据中,将改变数据块在待还原时刻的数据内容找到。
步骤304,将所述改变数据块在待还原时刻的备份数据发送至所述虚拟化平台,用以所述虚拟化平台根据所述备份数据将所述改变数据块的内容还原至待还原时刻。
获取到改变数据块在待还原时刻的备份数据之后,将该备份数据发送至虚拟化平台,由虚拟化平台写回对应的虚拟机磁盘的相应数据快即可。
本发明实施例中,备份服务器在备份数据的存储池中查询到数据内容发生改变的数据块的备份数据后,只还原该数据内容发生改变的数据块,即可将虚拟机还原到待还原时刻,由于在还原虚拟机的过程中只传输数据内容发生改变的数据块的备份数据,因此减少了数据的传输量,实现了快速还原虚拟机,降低存储空间的消耗。
上述两个实施例描述了虚拟化平台和备份服务器还原虚拟机的技术方案,下面通过一个具体的实施例描述在还原虚拟机的过程中虚拟化平台和备份服务器的信息交互过程。
图4为本发明实施例提供的一种虚拟机还原过程的示意图。该实施例以将虚拟机从当前时刻,即时刻4还原到时刻2为例进行描述。其中,时刻2相对时刻1,数据块2和数据块3的内容发生了改变;时刻3相对时刻2,数据块2和数据块3的内容发生了改变;当前时刻(时刻4)相对时刻3,数据块4和数据块5的内容发生了改变。如图4所示,本实施例包括以下步骤:
步骤401,备份服务器向虚拟化平台发送增量数据对比命令。
备份服务器在当前时刻,即时刻4接收到将虚拟机还原到时刻2的请求,此时可向虚拟化平台发送增量数据对比命令。该增量数据对比命令中携带有时刻2的改变标识信息ChangeID。
步骤402,虚拟化平台对当前时刻的虚拟机进行快照,并且确定当前时刻与待还原时刻的数据内容不同的改变数据块。
虚拟化平台接收到增量数据对比命令后,对当前时刻的虚拟机进行快照,得到当前时刻,即时刻4的ChangeID。将时刻2的ChangeID和时刻4的ChangeID进行对比,即可得到时刻4和时刻2相比,数据内容发生改变的数据块,即块数据块2、3、4、5。
步骤403,虚拟化平台向备份服务器发送改变数据块的块标识信息。
步骤404,在待还原时刻的增备数据中提取改变数据块2的备份数据。
时刻2相对时刻1,数据块1和数据块2的数据内容发生了改变,因此备份服务器的时刻2的增备数据中存储了时刻1和时刻2的备份数据;时刻4相对时刻2,数据块2也发生了变化,因此可在时刻2的增备数据中提取时刻2的备份数据。
步骤405,备份服务器向虚拟化平台发送改变数据块2的备份数据。
步骤406,在时刻1的全备数据中提取改变数据块3、4、5的备份数据。
时刻4相对时刻2,数据块3、4、5发生了变化,由于在备份服务器中,在时刻2之前,只有时刻1的全备数据,没有其他时刻的增备数据,因此,数据块3、4、5的备份数据可以从时刻1的全备数据中提取。
步骤407,向虚拟化平台发送改变数据块3、4、5的备份数据。
备份服务器向虚拟化平台发送改变数据块的备份数据后,虚拟化平台即可将该改变数据块的备份数据写回虚拟磁盘的改变数据块对应的位置,由此即可完成虚拟机的还原。
本发明实施例中,虚拟化平台通过增量数据对比功能查询到当前时刻与待还原时刻相比,数据内容发生改变的数据块,备份服务器在备份数据的存储池中查询到数据内容发生改变的改变数据块的备份数据后,将该改变数据块的数据内容发送至虚拟化平台,只还原该数据内容发生改变的数据块,即可将虚拟机还原到待还原时刻,减少了数据的传输量,实现了快速还原虚拟机,降低存储空间的消耗。
相应地,本发明实施例还提供了虚拟机还原的装置。图5为本发明实施例提供的一种虚拟机还原的装置示意图。该实施例包括以下单元:
接收单元501,用于接收备份服务器发送的携带有第一改变标识信息的增量数据对比命令,所述第一改变标识信息为对待还原时刻的虚拟机进行快照时生成的标识信息。
具体地,第一改变标识信息为一个字符串形式的标识信息,该标识信息在虚拟化平台对待还原时刻的虚拟机进行快照处理时生成。其中,待还原时刻是指要将虚拟机还原到的时刻。
为了实现本发明实施例提供的技术方案,该虚拟化平台支持CBT功能,可以根据进行快照时生成的改变标识信息ChangeID,来计算两个快照时刻点之间虚拟机中数据内容发生改变的数据块。
快照单元502,用于根据所述增量数据对比命令,对当前时刻的所述虚拟机进行快照操作,得到第二改变标识信息所述第二改变标识信息为对所述当前时刻的所述虚拟机进行快照时生成的标识信息。
虚拟化平台接收到增量数据对比命令后,首先对当前时刻的虚拟机行快照操作,得到当前时刻的虚拟机快照对应的改变标识信息,即第二改变标识信息。
确定单元503,用于根据所述第一改变标识信息和所述第二改变标识信息,确定所述虚拟机的磁盘文件中的改变数据块,所述改变数据块为数据内容发生改变的数据块。
确定单元503具体用于:对所述第一改变标识信息和所述第二改变标识信息进行对比,根据对比结果确定所述虚拟机磁盘文件中数据内容发生改变的改变数据块。
具体地,虚拟化平台将第一改变标识信息作为基准标识信息,将第二改变标识信息与第一改变标识信息进行对比,可得到虚拟机的当前时刻的虚拟磁盘中哪些数据块的数据内容相对待还原时刻的数据块发生了变化。这些发生变化的数据块即为要还原的数据块,其他没有发生变化的数据块不用进行还原处理。其中,数据块可以用块标识信息进行标识,也可以用数据块在虚拟磁盘中的位置来标识。
发送单元504,用于将所述改变数据块的块标识信息发往所述备份服务器,用以所述备份服务器获取所述改变数据块在待还原时刻的备份数据。
备份服务器将从备份数据的存储池中的全备数据或增备数据中查询待还原时刻的改变数据块的备份数据,并将需要还原的数据写回到虚拟化平台的虚拟机中。由此,接收单元501,还用于从所述备份服务器接收所述改变数据块在所述待还原时刻的备份数据。
优选地,本发明实施例还包括:更新单元505,用于将所述改变数据块的数据内容更新为所述改变数据块在待还原时刻的备份数据。
本发明实施例中,虚拟化平台通过增量数据对比功能查询到当前时刻与待还原时刻相比,数据内容发生改变的数据块,只还原该数据内容发生改变的数据块,即可将虚拟机还原到待还原时刻,并且由于在还原虚拟机的过程中只传输数据内容发生改变的数据块的备份数据,减少了数据的传输量,实现了快速还原虚拟机,降低存储空间的消耗。
图6为本发明实施例提供的另一虚拟机还原的装置示意图。如图6所示,该实施例包括以下单元:
发送单元601,用于向虚拟化平台发送携带有第一改变标识信息的增量数据对比命令所述第一改变标识信息为对待还原时刻的虚拟机进行快照时生成的标识信息。
其中,第一改变标识信息在虚拟化平台对待还原时刻的虚拟机进行快照处理时生成。
接收单元602,用于所述虚拟化平台根据所述第一改变标识信息完成增量数据对比后,接收所述虚拟化平台发送的改变数据块的块标识信息。
在向虚拟化平台发送增量数据对比命令之前,用户可向备份服务器发送让虚拟机还原到待还原时刻的请求,即接收单元602还用于,接收将所述虚拟机还原到待还原时刻的命令。
虚拟化平台接收到增量数据对比命令后,对当前时刻的虚拟机进行快照操作,得到当前时刻的虚拟机快照对应的改变标识信息,即第二改变标识信息,然后通过对比第一改变标识信息和第二改变标识信息得到数据内容发生改变的改变数据块,并将改变数据块的块标识信息发送至备份服务器,由此备份服务器可接收到虚拟化平台发送的改变数据块的块标识信息。
查询单元603,用于根据所述改变数据块的块标识信息,查询所述改变数据块在待还原时刻的备份数据;
查询单元603具体用于:根据所述改变数据块的块标识信息,优先在所述待还原时刻的增备数据中查询所述改变数据块的备份数据;当在所述待还原时刻的增备数据中查询不到所述改变数据块的备份数据时,在所述待还原时刻之前时刻的增备数据中查询所述改变数据块的备份数据或向前回溯直到全备数据中查询所述改变数据块的备份数据。
具体地,备份服务器在接收到改变数据块的块标识信息后,首先在备份数据的存储池中待还原时刻对应的增备数据中查找在待还原时刻是否存储了改变数据块的备份数据,如果是,则将该时刻的增备数据中的改变数据块的备份数据提取出来。对于在待还原时刻的增备数据中没有保存的改变数据块的备份数据,则在待还原时刻之前的时刻对应的增备数据中查询,如果查询到,则将该备份数据从增备数据提取出来;如果仍有改变数据块的数据没有查询到,则继续在该时刻之前的时刻中查找,一直查找到最初时刻的全备数据中,将改变数据块在待还原时刻的数据内容找到。
发送单元601,还用于将所述改变数据块在待还原时刻的备份数据发送至所述虚拟化平台,用以所述虚拟化平台根据所述备份数据将所述改变数据块的内容还原至待还原时刻
本发明实施例中,备份服务器在备份数据的存储池中查询到数据内容发生改变的数据块的备份数据后,只还原该数据内容发生改变的数据块,即可将虚拟机还原到待还原时刻,由于在还原虚拟机的过程中只传输数据内容发生改变的数据块的备份数据,因此减少了数据的传输量,实现了快速还原虚拟机,降低存储空间的消耗。
专业人员应该还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (11)
1.一种虚拟机还原的方法,其特征在于,所述方法包括:
接收备份服务器发送的携带有第一改变标识信息的增量数据对比命令,所述第一改变标识信息为对待还原时刻的虚拟机进行快照时生成的标识信息;
根据所述增量数据对比命令,对当前时刻的所述虚拟机进行快照操作,得到第二改变标识信息,所述第二改变标识信息为对所述当前时刻的所述虚拟机进行快照时生成的标识信息;
根据所述第一改变标识信息和所述第二改变标识信息,确定所述虚拟机的磁盘文件中的改变数据块,所述改变数据块为数据内容发生改变的数据块;
将所述改变数据块的块标识信息发往所述备份服务器,用以所述备份服务器获取所述改变数据块在待还原时刻的备份数据;
所述备份服务器获取所述改变数据块在待还原时刻的备份数据具体为:
根据所述改变数据块的块标识信息,优先在所述待还原时刻的增备数据中查询所述改变数据块的备份数据;
当在所述待还原时刻的增备数据中查询不到所述改变数据块的备份数据时,在所述待还原时刻之前时刻的增备数据中查询所述改变数据块的备份数据,或向前回溯直到全备数据中查询所述改变数据块的备份数据。
2.根据权利要求1所述的虚拟机还原的方法,其特征在于,所述将所述改变数据块的块标识信息发往所述备份服务器之后,还包括:
从所述备份服务器接收所述改变数据块在所述待还原时刻的备份数据;
将所述改变数据块的数据内容更新为所述改变数据块在待还原时刻的备份数据。
3.根据权利要求1或2所述的虚拟机还原的方法,其特征在于,所述根据所述第一改变标识信息和所述第二改变标识信息,确定所述虚拟机的磁盘文件中的改变数据块具体为:
对所述第一改变标识信息和所述第二改变标识信息进行对比,根据对比结果确定所述虚拟机磁盘文件中数据内容发生改变的改变数据块。
4.一种虚拟机还原的方法,其特征在于,所述方法包括:
向虚拟化平台发送携带有第一改变标识信息的增量数据对比命令,所述第一改变标识信息为对待还原时刻的虚拟机进行快照时生成的标识信息;
所述虚拟化平台根据所述第一改变标识信息完成增量数据对比后,接收所述虚拟化平台发送的改变数据块的块标识信息;
根据所述改变数据块的块标识信息,查询所述改变数据块在待还原时刻的备份数据;
将所述改变数据块在待还原时刻的备份数据发送至所述虚拟化平台,用以所述虚拟化平台根据所述备份数据将所述改变数据块的内容还原至待还原时刻;
所述根据所述改变数据块的块标识信息,查询所述改变数据块在待还原时刻的备份数据具体为:
根据所述改变数据块的块标识信息,优先在所述待还原时刻的增备数据中查询所述改变数据块的备份数据;
当在所述待还原时刻的增备数据中查询不到所述改变数据块的备份数据时,在所述待还原时刻之前时刻的增备数据中查询所述改变数据块的备份数据,或向前回溯直到全备数据中查询所述改变数据块的备份数据。
5.根据权利要求4所述的虚拟机还原的方法,其特征在于,所述向虚拟化平台发送增量数据对比命令之前还包括:接收将所述虚拟机还原到待还原时刻的命令。
6.一种虚拟机还原的装置,其特征在于,所述装置包括:
接收单元,用于接收备份服务器发送的携带有第一改变标识信息的增量数据对比命令,所述第一改变标识信息为对待还原时刻的虚拟机进行快照时生成的标识信息;
快照单元,用于根据所述增量数据对比命令,对当前时刻的所述虚拟机进行快照操作,得到第二改变标识信息,所述第二改变标识信息为对所述当前时刻的所述虚拟机进行快照时生成的标识信息;
确定单元,用于根据所述第一改变标识信息和所述第二改变标识信息,确定所述虚拟机的磁盘文件中的改变数据块,所述改变数据块为数据内容发生改变的数据块;
发送单元,用于将所述改变数据块的块标识信息发往所述备份服务器,用以所述备份服务器获取所述改变数据块在待还原时刻的备份数据;
所述备份服务器获取所述改变数据块在待还原时刻的备份数据具体为:
根据所述改变数据块的块标识信息,优先在所述待还原时刻的增备数据中查询所述改变数据块的备份数据;
当在所述待还原时刻的增备数据中查询不到所述改变数据块的备份数据时,在所述待还原时刻之前时刻的增备数据中查询所述改变数据块的备份数据,或向前回溯直到全备数据中查询所述改变数据块的备份数据。
7.根据权利要求6所述的虚拟机还原的装置,其特征在于,所述接收单元还用于,从所述备份服务器接收所述改变数据块在所述待还原时刻的备份数据;
所述装置还包括:更新单元,用于将所述改变数据块的数据内容更新为所述改变数据块在待还原时刻的备份数据。
8.根据权利要求6或7所述的虚拟机还原的装置,其特征在于,所述确定单元具体用于:
对所述第一改变标识信息和所述第二改变标识信息进行对比,根据对比结果确定所述虚拟机磁盘文件中数据内容发生改变的改变数据块。
9.一种虚拟机还原的装置,其特征在于,所述装置包括:
发送单元,用于向虚拟化平台发送携带有第一改变标识信息的增量数据对比命令所述第一改变标识信息为对待还原时刻的虚拟机进行快照时生成的标识信息;
接收单元,用于所述虚拟化平台根据所述第一改变标识信息完成增量数据对比后,接收所述虚拟化平台发送的改变数据块的块标识信息;
查询单元,用于根据所述改变数据块的块标识信息,查询所述改变数据块在待还原时刻的备份数据;
所述发送单元,还用于将所述改变数据块在待还原时刻的备份数据发送至所述虚拟化平台,用以所述虚拟化平台根据所述备份数据将所述改变数据块的内容还原至待还原时刻;
所述查询单元具体用于:
根据所述改变数据块的块标识信息,优先在所述待还原时刻的增备数据中查询所述改变数据块的备份数据;
当在所述待还原时刻的增备数据中查询不到所述改变数据块的备份数据时,在所述待还原时刻之前时刻的增备数据中查询所述改变数据块的备份数据或向前回溯直到全备数据中查询所述改变数据块的备份数据。
10.根据权利要求9所述的虚拟机还原的装置,其特征在于,所述查询单元具体用于:
根据所述改变数据块的块标识信息,优先在所述待还原时刻的增备数据中查询所述改变数据块的备份数据;
当在所述待还原时刻的增备数据中查询不到所述改变数据块的备份数据时,在所述待还原时刻之前时刻的增备数据中查询所述改变数据块的备份数据或向前回溯直到全备数据中查询所述改变数据块的备份数据。
11.根据权利要求9或10所述的虚拟机还原的装置,其特征在于,所述接收单元还用于,接收将所述虚拟机还原到待还原时刻的命令。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210519490.7A CN103034566B (zh) | 2012-12-06 | 2012-12-06 | 虚拟机还原的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210519490.7A CN103034566B (zh) | 2012-12-06 | 2012-12-06 | 虚拟机还原的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103034566A CN103034566A (zh) | 2013-04-10 |
CN103034566B true CN103034566B (zh) | 2015-07-22 |
Family
ID=48021484
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210519490.7A Active CN103034566B (zh) | 2012-12-06 | 2012-12-06 | 虚拟机还原的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103034566B (zh) |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103218276A (zh) * | 2013-04-23 | 2013-07-24 | 深圳市京华科讯科技有限公司 | 多节点增量备份的方法及系统 |
CN103593263B (zh) * | 2013-11-20 | 2017-03-01 | 上海爱数信息技术股份有限公司 | 基于备份知识库和文件属性的hyper‑v虚拟机备份方法 |
CN103605588B (zh) * | 2013-11-21 | 2016-08-17 | 上海爱数信息技术股份有限公司 | 一种虚拟机磁盘备份方法 |
CN103761168B (zh) * | 2014-01-26 | 2017-06-13 | 上海爱数信息技术股份有限公司 | 一种基于nfs卷挂载备份虚拟机的方法 |
CN104102556B (zh) * | 2014-06-13 | 2017-03-01 | 上海爱数信息技术股份有限公司 | 一种虚拟机磁盘数据备份及恢复方法 |
CN104050058A (zh) * | 2014-06-27 | 2014-09-17 | 珠海市君天电子科技有限公司 | 一种数据修复方法及相关设备、系统 |
CN106598658A (zh) * | 2016-12-07 | 2017-04-26 | 国云科技股份有限公司 | 一种Windows的ghost文件还原到虚拟机的方法 |
CN106681862B (zh) * | 2016-12-15 | 2020-12-04 | 华为技术有限公司 | 数据的增量恢复方法和装置 |
CN110018987B (zh) * | 2017-11-08 | 2023-03-21 | 阿里巴巴集团控股有限公司 | 快照创建方法、装置及系统 |
CN107908755A (zh) * | 2017-11-21 | 2018-04-13 | 郑州云海信息技术有限公司 | 一种快照文件处理方法及装置 |
CN108681494B (zh) * | 2018-05-21 | 2021-03-26 | 深圳市科力锐科技有限公司 | 备份数据还原方法、装置、用户设备及存储介质 |
CN111078464B (zh) * | 2018-10-22 | 2024-06-25 | 华为技术有限公司 | 一种备份数据的方法、装置和系统 |
CN110109777A (zh) * | 2019-07-02 | 2019-08-09 | 南京云信达科技有限公司 | 一种实现cbt数据损坏情况下的vm持续增量备份方法 |
CN111651238A (zh) * | 2020-06-03 | 2020-09-11 | 上海英方软件股份有限公司 | 一种虚拟机保护中有效数据获取系统及方法 |
CN112817698A (zh) * | 2021-02-20 | 2021-05-18 | 咪咕音乐有限公司 | 一种虚拟机备份方法、装置、电子设备和存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7370164B1 (en) * | 2006-03-21 | 2008-05-06 | Symantec Operating Corporation | Backup of virtual machines from the base machine |
CN101183387A (zh) * | 2007-12-14 | 2008-05-21 | 沈阳东软软件股份有限公司 | 一种增量数据捕获方法和系统 |
CN101770410A (zh) * | 2009-01-07 | 2010-07-07 | 联想(北京)有限公司 | 基于客户操作系统的系统还原方法、虚拟机管理器及系统 |
CN102033792A (zh) * | 2010-12-17 | 2011-04-27 | 浪潮(北京)电子信息产业有限公司 | 一种基于虚拟化的数据远程恢复方法及装置 |
CN102594849A (zh) * | 2011-01-06 | 2012-07-18 | 阿里巴巴集团控股有限公司 | 数据备份、恢复方法、虚拟机快照删除、回滚方法及装置 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7743028B1 (en) * | 2005-07-13 | 2010-06-22 | Symantec Corporation | Incremental backup of partial volumes |
US8037032B2 (en) * | 2008-08-25 | 2011-10-11 | Vmware, Inc. | Managing backups using virtual machines |
CN102521083B (zh) * | 2011-12-13 | 2015-04-29 | 广州杰赛科技股份有限公司 | 一种云计算系统中虚拟机备份方法和系统 |
-
2012
- 2012-12-06 CN CN201210519490.7A patent/CN103034566B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7370164B1 (en) * | 2006-03-21 | 2008-05-06 | Symantec Operating Corporation | Backup of virtual machines from the base machine |
CN101183387A (zh) * | 2007-12-14 | 2008-05-21 | 沈阳东软软件股份有限公司 | 一种增量数据捕获方法和系统 |
CN101770410A (zh) * | 2009-01-07 | 2010-07-07 | 联想(北京)有限公司 | 基于客户操作系统的系统还原方法、虚拟机管理器及系统 |
CN102033792A (zh) * | 2010-12-17 | 2011-04-27 | 浪潮(北京)电子信息产业有限公司 | 一种基于虚拟化的数据远程恢复方法及装置 |
CN102594849A (zh) * | 2011-01-06 | 2012-07-18 | 阿里巴巴集团控股有限公司 | 数据备份、恢复方法、虚拟机快照删除、回滚方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN103034566A (zh) | 2013-04-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103034566B (zh) | 虚拟机还原的方法和装置 | |
US20230384963A1 (en) | Efficient Creation And Management Of Snapshots | |
US11194667B2 (en) | Creating a restore copy from a copy of a full copy of source data in a repository that is at a different point-in-time than a restore point-in-time of a restore request | |
CN103970585B (zh) | 创建虚拟机的方法及装置 | |
US9916478B2 (en) | Data protection enhancement using free space | |
US10719404B2 (en) | Excluding files in a block based backup | |
CN103064765B (zh) | 数据恢复方法、装置及集群存储系统 | |
US8843716B2 (en) | Computer system, storage apparatus and data transfer method | |
CN108460045B (zh) | 一种快照的处理方法及分布式块存储系统 | |
US11169958B2 (en) | Using a repository having a full copy of source data and point-in-time information from point-in-time copies of the source data to restore the source data at different points-in-time | |
CN108733311B (zh) | 用于管理存储系统的方法和设备 | |
CN103617097B (zh) | 文件恢复方法及装置 | |
EP3051408B1 (en) | Data operating method and device | |
CN109144416B (zh) | 查询数据的方法和装置 | |
CN104461390A (zh) | 将数据写入叠瓦状磁记录smr硬盘的方法及装置 | |
US10387446B2 (en) | Merging multiple point-in-time copies into a merged point-in-time copy | |
US20110093437A1 (en) | Method and system for generating a space-efficient snapshot or snapclone of logical disks | |
WO2015125030A1 (en) | Creating restore copy from copy of source data in repository having source data at different point-in-times | |
US8019953B2 (en) | Method for providing atomicity for host write input/outputs (I/Os) in a continuous data protection (CDP)-enabled volume using intent log | |
CN101960442B (zh) | 使用虚拟技术输入/输出数据的方法和设备 | |
CN109918352B (zh) | 存储器系统和存储数据的方法 | |
CN107122223B (zh) | 数据迁移方法及装置 | |
CN110019063A (zh) | 计算节点数据容灾回放的方法、终端设备及存储介质 | |
CN110187834B (zh) | 重删副本的数据处理方法、装置、电子设备 | |
US7937548B2 (en) | System and method for improved snapclone performance in a virtualized storage system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |