專利名稱:虛擬機(jī)還原的方法和裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及虛擬機(jī)技術(shù)領(lǐng)域,尤其涉及一種虛擬機(jī)還原的方法和裝置。
背景技術(shù):
虛擬化通常是指計算機(jī)操作系統(tǒng)和程序在虛擬的硬件上而不是真實(shí)的硬件上運(yùn)行。計算機(jī)的虛擬化就是通過軟件平臺的方法在一臺計算機(jī)上虛擬出很虛擬計算機(jī),被虛擬出的計算機(jī)稱作虛擬主機(jī)或虛擬機(jī)。計算機(jī)所運(yùn)行的軟件平臺為虛擬化平臺,虛擬機(jī)化平臺可以提供對虛擬機(jī)的虛擬磁盤進(jìn)行讀寫操作的應(yīng)用程序編程接口(ApplicationProgramming Interface, API),備份系統(tǒng)可通過此接口對虛擬機(jī)進(jìn)行備份和還原。在現(xiàn)有技術(shù)下,可以通過虛擬化平臺的改變塊追蹤(Changed Block Tracking,CBT)功能或其他類似的能實(shí)現(xiàn)增量備份的軟件來實(shí)現(xiàn)虛擬機(jī)的增量備份。而虛擬機(jī)的還原方法為刪除要進(jìn)行還原的虛擬機(jī)的磁盤文件;重建一個與被刪除的磁盤文件一樣大的空白磁盤文件;將第一次備份的虛擬機(jī)的全備文件的所有數(shù)據(jù)塊的數(shù)據(jù)從備份服務(wù)器寫回新建的空白磁盤文件,得到原始磁盤文件;將虛擬機(jī)待還原時刻與第一次備份時刻相比改變的數(shù)據(jù)塊的數(shù)據(jù)從備份服務(wù)器的增備文件集中寫回之前得到的原始磁盤文件,即更新與原始磁盤文件中相應(yīng)數(shù)據(jù)塊的數(shù)據(jù),得到待還原時刻的虛擬機(jī)?,F(xiàn)有的虛擬機(jī)的還原方法要刪除待還原虛擬機(jī),重建待還原虛擬機(jī)的磁盤文件,由此占用了大量的系統(tǒng)資源;而把全部磁盤文件從備份服務(wù)器寫回虛擬磁盤中,則增加了額外的磁盤輸入/輸出操作,進(jìn)而加劇了硬盤的損耗;整個還原過程所需的還原時間很長,增加了時間成本。
發(fā)明內(nèi)容
本發(fā)明實(shí)施例提供了一種虛擬機(jī)還原的方法和裝置,以基于虛擬化平臺的增量數(shù)據(jù)對比功能實(shí)現(xiàn)在還原虛擬機(jī)的過程中只傳輸數(shù)據(jù)內(nèi)容發(fā)生改變的數(shù)據(jù)塊的備份數(shù)據(jù),減少數(shù)據(jù)傳輸量,進(jìn)而實(shí)現(xiàn)快速還原虛擬機(jī),并且降低硬盤損耗。第一方面,本發(fā)明實(shí)施例提供了一種虛擬機(jī)還原的方法,所述方法包括接收備份服務(wù)器發(fā)送的攜帶有第一改變標(biāo)識信息的增量數(shù)據(jù)對比命令,所述第一改變標(biāo)識信息為對待還原時刻的虛擬機(jī)進(jìn)行快照時生成的標(biāo)識信息;根據(jù)所述增量數(shù)據(jù)對比命令,對當(dāng)前時刻的所述虛擬機(jī)進(jìn)行快照操作,得到第二改變標(biāo)識信息所述第二改變標(biāo)識信息為對所述當(dāng)前時刻的所述虛擬機(jī)進(jìn)行快照時生成的標(biāo)識信息;根據(jù)所述第一改變標(biāo)識信息和所述第二改變標(biāo)識信息,確定所述虛擬機(jī)的磁盤文件中的改變數(shù)據(jù)塊,所述改變數(shù)據(jù)塊為數(shù)據(jù)內(nèi)容發(fā)生改變的數(shù)據(jù)塊;將所述改變數(shù)據(jù)塊的塊標(biāo)識信息發(fā)往所述備份服務(wù)器,用以所述備份服務(wù)器獲取所述改變數(shù)據(jù)塊在待還原時刻的備份數(shù)據(jù)。在第一種可能的實(shí)現(xiàn)方式中,所述將所述改變數(shù)據(jù)塊的塊標(biāo)識信息發(fā)送至所述備份服務(wù)器之后,還包括從所述備份服務(wù)器接收所述改變數(shù)據(jù)塊在所述待還原時刻的備份數(shù)據(jù);將所述改變數(shù)據(jù)塊的數(shù)據(jù)內(nèi)容更新為所述改變數(shù)據(jù)塊在待還原時刻的備份數(shù)據(jù)。結(jié)合第一方面或第一方面的第一種可能的實(shí)現(xiàn)方式,在第二種可能的實(shí)現(xiàn)方式中,所述根據(jù)所述第一改變標(biāo)識信息和所述第二改變標(biāo)識信息,確定所述虛擬機(jī)的磁盤文件中的改變數(shù)據(jù)塊具體為對所述第一改變標(biāo)識信息和所述第二改變標(biāo)識信息進(jìn)行對比,根據(jù)對比結(jié)果確定所述虛擬機(jī)磁盤文件中數(shù)據(jù)內(nèi)容發(fā)生改變的改變數(shù)據(jù)塊。第二方面,本發(fā)明實(shí)施例提供了一種虛擬機(jī)還原的方法,所述方法包括向虛擬化平臺發(fā)送攜帶有第一改變標(biāo)識信息的增量數(shù)據(jù)對比命令所述第一改變標(biāo)識信息為對待還原時刻的虛擬機(jī)進(jìn)行快照時生成的標(biāo)識信息;所述虛擬化平臺根據(jù)所述第一改變標(biāo)識信息完成增量數(shù)據(jù)對比后,接收所述虛擬化平臺發(fā)送的改變數(shù)據(jù)塊的塊標(biāo)識信息;根據(jù)所述改變數(shù)據(jù)塊的塊標(biāo)識信息,查詢所述改變數(shù)據(jù)塊在待還原時刻的備份數(shù)據(jù);將所述改變數(shù)據(jù)塊在待還原時刻的備份數(shù)據(jù)發(fā)送至所述虛擬化平臺,用以所述虛擬化平臺根據(jù)所述備份數(shù)據(jù)將所述改變數(shù)據(jù)塊的內(nèi)容還原至待還原時刻。在第一種可能的實(shí)現(xiàn)方式中,所述根據(jù)所述改變數(shù)據(jù)塊的塊標(biāo)識信息,查詢所述改變數(shù)據(jù)塊在待還原時刻的備份數(shù)據(jù)具體為根據(jù)所述改變數(shù)據(jù)塊的塊標(biāo)識信息,優(yōu)先在所述待還原時刻的增備數(shù)據(jù)中查詢所述改變數(shù)據(jù)塊的備份數(shù)據(jù);當(dāng)在所述待還原時刻的增備數(shù)據(jù)中查詢不到所述改變數(shù)據(jù)塊的備份數(shù)據(jù)時,在所述待還原時刻之前時刻的增備數(shù)據(jù)或全備數(shù)據(jù)中查詢所述改變數(shù)據(jù)塊的備份數(shù)據(jù)。結(jié)合第二方面或第二方面的第一種可能的實(shí)現(xiàn)方式,在第二種可能的實(shí)現(xiàn)方式中,所述向虛擬化平臺發(fā)送增量數(shù)據(jù)對比命令之前還包括接收將所述虛擬機(jī)還原到待還原時刻的命令。第三方面,本發(fā)明實(shí)施例提供了一種虛擬機(jī)還原的裝置,所述裝置包括接收單元,用于接收備份服務(wù)器發(fā)送的攜帶有第一改變標(biāo)識信息的增量數(shù)據(jù)對比命令,所述第一改變標(biāo)識信息為對待還原時刻的虛擬機(jī)進(jìn)行快照時生成的標(biāo)識信息;快照單元,用于根據(jù)所述增量數(shù)據(jù)對比命令,對當(dāng)前時刻的所述虛擬機(jī)進(jìn)行快照操作,得到第二改變標(biāo)識信息,所述第二改變標(biāo)識信息為對所述當(dāng)前時刻的所述虛擬機(jī)進(jìn)行快照時生成的標(biāo)識信息;確定單元,用于根據(jù)所述第一改變標(biāo)識信息和所述第二改變標(biāo)識信息,確定所述虛擬機(jī)的磁盤文件中的改變數(shù)據(jù)塊,所述改變數(shù)據(jù)塊為數(shù)據(jù)內(nèi)容發(fā)生改變的數(shù)據(jù)塊;發(fā)送單元,用于將所述改變數(shù)據(jù)塊的塊標(biāo)識信息發(fā)送至所述備份服務(wù)器,用以所述備份服務(wù)器獲取所述改變數(shù)據(jù)塊在待還原時刻的備份數(shù)據(jù)。在第一種可能的實(shí)現(xiàn)方式中,所述接收單元還用于,從所述備份服務(wù)器接收所述改變數(shù)據(jù)塊在所述待還原時刻的備份數(shù)據(jù);所述裝置還包括更新單元,用于將所述改變數(shù)據(jù)塊的數(shù)據(jù)內(nèi)容更新為所述改變數(shù)據(jù)塊在待還原時刻的備份數(shù)據(jù)。結(jié)合第三方面或者第三方面的第一種可能的實(shí)現(xiàn)方式,在第二種可能的實(shí)現(xiàn)方式中,所述確定單元具體用于對所述第一改變標(biāo)識信息和所述第二改變標(biāo)識信息進(jìn)行對比,根據(jù)對比結(jié)果確定所述虛擬機(jī)磁盤文件中數(shù)據(jù)內(nèi)容發(fā)生改變的改變數(shù)據(jù)塊。第四方面,本發(fā)明實(shí)施例提供了一種虛擬機(jī)還原的裝置,所述裝置包括
發(fā)送單元,用于向虛擬化平臺發(fā)送攜帶有第一改變標(biāo)識信息的增量數(shù)據(jù)對比命令所述第一改變標(biāo)識信息為對待還原時刻的虛擬機(jī)進(jìn)行快照時生成的標(biāo)識信息;接收單元,用于所述虛擬化平臺根據(jù)所述第一改變標(biāo)識信息完成增量數(shù)據(jù)對比后,接收所述虛擬化平臺發(fā)送的改變數(shù)據(jù)塊的塊標(biāo)識信息;查詢單元,用于根據(jù)所述改變數(shù)據(jù)塊的塊標(biāo)識信息,查詢所述改變數(shù)據(jù)塊在待還原時刻的備份數(shù)據(jù);所述發(fā)送單元,還用于將所述改變數(shù)據(jù)塊在待還原時刻的備份數(shù)據(jù)發(fā)送至所述虛擬化平臺,用以所述虛擬化平臺根據(jù)所述備份數(shù)據(jù)將所述改變數(shù)據(jù)塊的內(nèi)容還原至待還原時刻。在第一種可能的實(shí)現(xiàn)方式中,所述查詢單元具體用于根據(jù)所述改變數(shù)據(jù)塊的塊標(biāo)識信息,優(yōu)先在所述待還原時刻的增備數(shù)據(jù)中查詢所述改變數(shù)據(jù)塊的備份數(shù)據(jù);當(dāng)在所述待還原時刻的增備數(shù)據(jù)中查詢不到所述改變數(shù)據(jù)塊的備份數(shù)據(jù)時,在所述待還原時刻之前時刻的增備數(shù)據(jù)中查詢所述改變數(shù)據(jù)塊的備份數(shù)據(jù)或向前回溯直到全備數(shù)據(jù)中查詢所述改變數(shù)據(jù)塊的備份數(shù)據(jù)。結(jié)合第四方面或第四方面的第一種可能的實(shí)現(xiàn)方式,在第二種可能的實(shí)現(xiàn)方式中,所述接收單元還用于,接收將所述虛擬機(jī)還原到待還原時刻的命令。本發(fā)明實(shí)施例中,當(dāng)備份服務(wù)器接收到將虛擬機(jī)還原到待還原時刻時,可向虛擬機(jī)所在的虛擬化平臺發(fā)送增量數(shù)據(jù)對比命令,該命令中攜帶有待還原時刻的快照標(biāo)識信息,即第一改變標(biāo)識信息;虛擬化平臺接收到該增量數(shù)據(jù)對比命令后,首先對當(dāng)前時刻的虛擬機(jī)進(jìn)行快照得到第二改變標(biāo)識信息,然后通過對比第一改變標(biāo)識信息和第二改變標(biāo)識信息得到當(dāng)前時刻和待還原時刻相比改變的改變數(shù)據(jù)塊,并將改變數(shù)據(jù)塊的塊標(biāo)識信息發(fā)送至備份服務(wù)器;備份服務(wù)器得到該塊標(biāo)識信息后,在全備數(shù)據(jù)或增備數(shù)據(jù)中查詢待還原時刻的改變數(shù)據(jù)塊的數(shù)據(jù)內(nèi)容的備份數(shù)據(jù),并寫回到虛擬機(jī)。由此,本發(fā)明實(shí)施例基于虛擬化平臺的增量數(shù)據(jù)對比功能實(shí)現(xiàn)在還原虛擬機(jī)的過程中只傳輸數(shù)據(jù)內(nèi)容發(fā)生改變的數(shù)據(jù)塊的備份數(shù)據(jù),減少數(shù)據(jù)傳輸量,進(jìn)而實(shí)現(xiàn)快速還原虛擬機(jī),并且降低存儲空間的消耗。
圖1為本發(fā)明實(shí)施例提供的一種虛擬機(jī)還原的方法應(yīng)用場景示意圖;圖2為本發(fā)明實(shí)施例提供的一種虛擬機(jī)還原的方法流程圖;圖3為本發(fā)明實(shí)施例提供的另一虛擬機(jī)還原的方法流程圖;圖4為本發(fā)明實(shí)施例提供的一種虛擬機(jī)還原過程的示意圖;圖5為本發(fā)明實(shí)施例提供的一種虛擬機(jī)還原的裝置示意圖;圖6為本發(fā)明實(shí)施例提供的另一虛擬機(jī)還原的裝置示意圖。
具體實(shí)施例方式以下描述中,為了說明而不是為了限定,提出了諸如特定系統(tǒng)結(jié)構(gòu)、接口、技術(shù)之類的具體細(xì)節(jié),以便透切理解本發(fā)明。然而,本領(lǐng)域的技術(shù)人員應(yīng)當(dāng)清楚,在沒有這些具體細(xì)節(jié)的其它實(shí)施例中也可以實(shí)現(xiàn)本發(fā)明。在其它情況中,省略對眾所周知的裝置、電路以及方法的詳細(xì)說明,以免不必要的細(xì)節(jié)妨礙本發(fā)明的描述。
圖1為本發(fā)明實(shí)施例提供的一種虛擬機(jī)還原的方法應(yīng)用場景示意圖。本發(fā)明實(shí)施例提供的虛擬機(jī)還原的方法在實(shí)際應(yīng)用時,作為一種新的方法可應(yīng)用于虛擬機(jī)還原的場景。如圖1所示,本發(fā)明實(shí)施例提供的應(yīng)用場景中,虛擬化平臺可以通過存儲區(qū)域網(wǎng)絡(luò)(Storage Area Network, SAN)方式連接存儲陣列作為所有虛擬主機(jī)的共享存儲資源,而備份服務(wù)器可以通過網(wǎng)絡(luò)附加存儲(Network Attached Storage, NAS)方式連接存儲陣列作為備份數(shù)據(jù)的存儲池,當(dāng)用戶想要將虛擬化平臺中安裝的虛擬機(jī)1、虛擬機(jī)2、…、虛擬機(jī)η還原到待還原時刻的狀態(tài)時,備份服務(wù)器中的備份軟件可通過面向虛擬化平臺的應(yīng)用程序編程接口(Application Programming Interface,API)向虛擬化平臺發(fā)送增量數(shù)據(jù)對比命令,虛擬化平臺將確定當(dāng)前時刻與待還原時刻的數(shù)據(jù)內(nèi)容不同的改變數(shù)據(jù)塊,然后備份服務(wù)器將改變數(shù)據(jù)塊的待還原時刻的備份數(shù)據(jù)寫回到虛擬機(jī)中,這樣就可以實(shí)現(xiàn)虛擬機(jī)的還原,縮短了虛擬機(jī)還原的時間,減少了數(shù)據(jù)的傳輸量,降低了存儲空間的消耗。本發(fā)明實(shí)施例提供的備份服務(wù)器即可安裝在普通的物理主機(jī)上,也可安裝于虛擬化平臺上運(yùn)行的虛擬機(jī)中。本發(fā)明實(shí)施例針對現(xiàn)有技術(shù)下虛擬機(jī)還原的方法的缺陷,提供了一種虛擬機(jī)還原的方法和裝置。當(dāng)備份服務(wù)器接收到將虛擬機(jī)還原到待還原時刻時,可向虛擬機(jī)所在的虛擬化平臺發(fā)送增量數(shù)據(jù)對比命令,該命令中攜帶有待還原時刻的快照標(biāo)識信息,即第一改變標(biāo)識信息;虛擬化平臺接收到該增量數(shù)據(jù)對比命令后,首先對當(dāng)前時刻的虛擬機(jī)進(jìn)行快照得到第二改變標(biāo)識信息,然后通過對比第一改變標(biāo)識信息和第二改變標(biāo)識信息得到當(dāng)前時刻和待還原時刻相比改變的改變數(shù)據(jù)塊,并將改變數(shù)據(jù)塊的塊標(biāo)識信息發(fā)送至備份服務(wù)器;備份服務(wù)器得到該塊標(biāo)識信息后,在全備數(shù)據(jù)或增備數(shù)據(jù)中查詢待還原時刻的改變數(shù)據(jù)塊的數(shù)據(jù)內(nèi)容的備份數(shù)據(jù),并寫回到虛擬機(jī)。圖2為本發(fā)明實(shí)施例提供的一種虛擬機(jī)還原的方法流程圖。該實(shí)施例的執(zhí)行主體是虛擬化平臺,其中詳細(xì)描述了虛擬化平臺在接收到增量數(shù)據(jù)對比命令后,將虛擬機(jī)還原到待還原時刻的方法。如圖 2所示,該實(shí)施例包括以下步驟步驟201,接收備份服務(wù)器發(fā)送的攜帶有第一改變標(biāo)識信息的增量數(shù)據(jù)對比命令,所述第一改變標(biāo)識信息為對待還原時刻的虛擬機(jī)進(jìn)行快照時生成的標(biāo)識信息。具體地,第一改變標(biāo)識信息為一個字符串形式的標(biāo)識信息,該標(biāo)識信息在虛擬化平臺對待還原時刻的虛擬機(jī)進(jìn)行快照處理時生成。其中,待還原時刻是指要將虛擬機(jī)還原到的時刻。為了實(shí)現(xiàn)本發(fā)明實(shí)施例提供的技術(shù)方案,該虛擬化平臺支持CBT功能,可以根據(jù)進(jìn)行快照時生成的改變標(biāo)識信息ChangelD,來計算兩個快照時刻點(diǎn)之間虛擬機(jī)中數(shù)據(jù)內(nèi)容發(fā)生改變的數(shù)據(jù)塊。需要說明的是,本發(fā)明實(shí)施例中提到的數(shù)據(jù)塊是一個廣義的定義,在VMware虛擬化平臺中,數(shù)據(jù)塊指的是虛擬硬盤的硬盤扇區(qū)Sector,而在其他現(xiàn)有的以及未來可能出現(xiàn)的新的虛擬化平臺中,數(shù)據(jù)塊的含義可能不同于VMware虛擬化平臺中的虛擬硬盤的Sector,而是其他的含義。例如,對于以陣列作為虛擬化平臺的存儲介質(zhì)系統(tǒng)中,數(shù)據(jù)塊是指陣列上組成邏輯單元的塊。步驟202,根據(jù)所述增量數(shù)據(jù)對比命令,對當(dāng)前時刻的所述虛擬機(jī)進(jìn)行快照操作,得到第二改變標(biāo)識信息,所述第二改變標(biāo)識信息為對所述當(dāng)前時刻的所述虛擬機(jī)進(jìn)行快照時生成的標(biāo)識信息。虛擬化平臺接收到增量數(shù)據(jù)對比命令后,首先對當(dāng)前時刻的虛擬機(jī)行快照操作,得到當(dāng)前時刻的虛擬機(jī)快照對應(yīng)的改變標(biāo)識信息,即第二改變標(biāo)識信息。步驟203,根據(jù)所述第一改變標(biāo)識信息和所述第二改變標(biāo)識信息,確定所述虛擬機(jī)的磁盤文件中的改變數(shù)據(jù)塊,所述改變數(shù)據(jù)塊為數(shù)據(jù)內(nèi)容發(fā)生改變的數(shù)據(jù)塊。根據(jù)所述第一改變標(biāo)識信息和所述第二改變標(biāo)識信息,確定所述虛擬機(jī)磁盤文件中數(shù)據(jù)內(nèi)容發(fā)生改變的改變數(shù)據(jù)塊具體為對所述第一改變標(biāo)識信息和所述第二改變標(biāo)識信息進(jìn)行對比,根據(jù)對比結(jié)果確定所述虛擬機(jī)磁盤文件中數(shù)據(jù)內(nèi)容發(fā)生改變的改變數(shù)據(jù)塊。具體地,虛擬化平臺將第一改變標(biāo)識信息作為基準(zhǔn)標(biāo)識信息,將第二改變標(biāo)識信息與第一改變標(biāo)識信息進(jìn)行對比,可得到虛擬機(jī)的當(dāng)前時刻的虛擬磁盤中哪些數(shù)據(jù)塊的數(shù)據(jù)內(nèi)容相對待還原時刻的數(shù)據(jù)塊發(fā)生了變化。這些發(fā)生變化的數(shù)據(jù)塊即為要還原的數(shù)據(jù)塊,其他沒有發(fā)生變化的數(shù)據(jù)塊不用進(jìn)行還原處理。其中,數(shù)據(jù)塊可以用塊標(biāo)識信息進(jìn)行標(biāo)識,也可以用數(shù)據(jù)塊在虛擬磁盤中的位置來標(biāo)識。步驟204,將所述改變數(shù)據(jù)塊的塊標(biāo)識信息發(fā)往所述備份服務(wù)器,用以所述備份服務(wù)器獲取所述改變數(shù)據(jù)塊在待還原時刻的備份數(shù)據(jù)。通過步驟203,確定出發(fā)生數(shù)據(jù)內(nèi)容發(fā)生變化的數(shù)據(jù)塊之后,即可將改變數(shù)據(jù)塊的塊標(biāo)識信息發(fā)送至備份服務(wù)器,由備份服務(wù)器根據(jù)塊標(biāo)識信息,在備份數(shù)據(jù)的存儲池中查詢改變數(shù)據(jù)塊在待還原時刻的備份數(shù)據(jù)。在一種可選的實(shí)施方式中,在執(zhí)行步驟204之后,備份服務(wù)器將從備份數(shù)據(jù)的存儲池中的全備數(shù)據(jù)或增備數(shù)據(jù)中查詢待還原時刻的改變數(shù)據(jù)塊的備份數(shù)據(jù),并將需要還原的數(shù)據(jù)寫回到虛擬化平臺的虛擬機(jī)中。由此,在步驟204之后,還包括從所述備份服務(wù)器接收所述改變數(shù)據(jù)塊在所述待還原時刻的備份數(shù)據(jù);將所述改變數(shù)據(jù)塊的數(shù)據(jù)內(nèi)容更新為所述改變數(shù)據(jù)塊在待還原時刻的備份數(shù)據(jù)。本發(fā)明實(shí)施例中,虛擬化平臺通過增量數(shù)據(jù)對比功能查詢到當(dāng)前時刻與待還原時刻相比,數(shù)據(jù)內(nèi)容發(fā)生改變的數(shù)據(jù)塊,只還原該數(shù)據(jù)內(nèi)容發(fā)生改變的數(shù)據(jù)塊,即可將虛擬機(jī)還原到待還原時刻,并且由于在還原虛擬機(jī)的過程中只傳輸數(shù)據(jù)內(nèi)容發(fā)生改變的數(shù)據(jù)塊的備份數(shù)據(jù),減少了數(shù)據(jù)的傳輸量,實(shí)現(xiàn)了快速還原虛擬機(jī),降低存儲空間的消耗。上述實(shí)施例以虛擬化平臺為執(zhí)行主體描述了虛擬機(jī)還原的過程,下述實(shí)施例以備份服務(wù)器為執(zhí)行主體描述虛擬機(jī)還原的過程。圖3為本發(fā)明實(shí)施例提供的另一虛擬機(jī)還原的方法流程圖。該實(shí)施例的執(zhí)行主體是備份服務(wù)器,其中詳細(xì)描述了備份服務(wù)器接收到虛擬機(jī)還原請求后執(zhí)行虛擬機(jī)還原的方法。如圖3所示,該實(shí)施例包括以下步驟步驟301,向虛擬化平臺發(fā)送攜帶有第一改變標(biāo)識信息的增量數(shù)據(jù)對比命令所述第一改變標(biāo)識信息為對待還原時刻的虛擬機(jī)進(jìn)行快照時生成的標(biāo)識信息。在向虛擬化平臺發(fā)送增量數(shù)據(jù)對比命令之前,用戶可向備份服務(wù)器發(fā)送讓虛擬機(jī)還原到待還原時刻的請求,即備份服務(wù)器可接收將虛擬機(jī)還原到待還原時刻的命令。備份服務(wù)器接收到還原請求后,可首先獲取待還原時刻的虛擬機(jī)快照對應(yīng)的第一改變標(biāo)識信息,該標(biāo)識信息在虛擬化平臺對待還原時刻的虛擬機(jī)進(jìn)行快照處理時生成;然后向虛擬化平臺發(fā)送攜帶該第一改變標(biāo)識信息的增量數(shù)據(jù)對比命令。步驟302,所述虛擬化平臺根據(jù)所述第一改變標(biāo)識信息完成增量數(shù)據(jù)對比后,接收所述虛擬化平臺發(fā)送的改變數(shù)據(jù)塊的塊標(biāo)識信息。虛擬化平臺接收到增量數(shù)據(jù)對比命令后,對當(dāng)前時刻的虛擬機(jī)進(jìn)行快照操作,得到當(dāng)前時刻的虛擬機(jī)快照對應(yīng)的改變標(biāo)識信息,即第二改變標(biāo)識信息,然后通過對比第一改變標(biāo)識信息和第二改變標(biāo)識信息得到數(shù)據(jù)內(nèi)容發(fā)生改變的改變數(shù)據(jù)塊,并將改變數(shù)據(jù)塊的塊標(biāo)識信息發(fā)送至備份服務(wù)器,由此備份服務(wù)器可接收到虛擬化平臺發(fā)送的改變數(shù)據(jù)塊的塊標(biāo)識信息。步驟303,根據(jù)所述改變數(shù)據(jù)塊的塊標(biāo)識信息,查詢所述改變數(shù)據(jù)塊在待還原時刻的備份數(shù)據(jù)。根據(jù)所述改變數(shù)據(jù)塊的塊標(biāo)識信息,查詢所述改變數(shù)據(jù)塊在待還原時刻的備份數(shù)據(jù)的具體操作為根據(jù)所述改變數(shù)據(jù)塊的塊標(biāo)識信息,優(yōu)先在所述待還原時刻的增備數(shù)據(jù)中查詢所述改變數(shù)據(jù)塊的備份數(shù)據(jù);當(dāng)在所述待還原時刻的增備數(shù)據(jù)中查詢不到所述改變數(shù)據(jù)塊的備份數(shù)據(jù)時,在所述待還原時刻之前時刻的增備數(shù)據(jù)中查詢所述改變數(shù)據(jù)塊的備份數(shù)據(jù)或向前回溯直到全備數(shù)據(jù)中查詢所述改變數(shù)據(jù)塊的備份數(shù)據(jù)。具體地,備份服務(wù)器在接收到改變數(shù)據(jù)塊的塊標(biāo)識信息后,首先在備份數(shù)據(jù)的存儲池中待還原時刻對應(yīng)的增備數(shù)據(jù)中查找在待還原時刻是否存儲了改變數(shù)據(jù)塊的備份數(shù)據(jù),如果是,則將該時刻的增備數(shù)據(jù)中的改變數(shù)據(jù)塊的備份數(shù)據(jù)提取出來。對于在待還原時刻的增備數(shù)據(jù)中沒有保存的改變數(shù)據(jù)塊的備份數(shù)據(jù),則在待還原時刻之前的時刻對應(yīng)的增備數(shù)據(jù)中查詢,如果查詢到,則將該備份數(shù)據(jù)從增備數(shù)據(jù)提取出來;如果仍有改變數(shù)據(jù)塊的數(shù)據(jù)沒有查詢到,則繼續(xù)在該時刻之前的時刻中查找,一直查找到最初時刻的全備數(shù)據(jù)中,將改變數(shù)據(jù)塊在待還原時刻的數(shù)據(jù)內(nèi)容找到。步驟304,將所述改變數(shù)據(jù)塊在待還原時刻的備份數(shù)據(jù)發(fā)送至所述虛擬化平臺,用以所述虛擬化平臺根據(jù)所述備份數(shù)據(jù)將所述改變數(shù)據(jù)塊的內(nèi)容還原至待還原時刻。獲取到改變數(shù)據(jù)塊在待還原時刻的備份數(shù)據(jù)之后,將該備份數(shù)據(jù)發(fā)送至虛擬化平臺,由虛擬化平臺寫回對應(yīng)的虛擬機(jī)磁盤的相應(yīng)數(shù)據(jù)快即可。本發(fā)明實(shí)施例中,備份服務(wù)器在備份數(shù)據(jù)的存儲池中查詢到數(shù)據(jù)內(nèi)容發(fā)生改變的數(shù)據(jù)塊的備份數(shù)據(jù)后,只還原該數(shù)據(jù)內(nèi)容發(fā)生改變的數(shù)據(jù)塊,即可將虛擬機(jī)還原到待還原時刻,由于在還原虛擬機(jī)的過程中只傳輸數(shù)據(jù)內(nèi)容發(fā)生改變的數(shù)據(jù)塊的備份數(shù)據(jù),因此減少了數(shù)據(jù)的傳輸量,實(shí)現(xiàn)了快速還原虛擬機(jī),降低存儲空間的消耗。上述兩個實(shí)施例描述了虛擬化平臺和備份服務(wù)器還原虛擬機(jī)的技術(shù)方案,下面通過一個具體的實(shí)施例描述在還原虛擬機(jī)的過程中虛擬化平臺和備份服務(wù)器的信息交互過程。圖4為本發(fā)明實(shí)施例提供的一種虛擬機(jī)還原過程的示意圖。該實(shí)施例以將虛擬機(jī)從當(dāng)前時刻,即時刻4還原到時刻2為例進(jìn)行描述。其中,時刻2相對時刻1,數(shù)據(jù)塊2和數(shù)據(jù)塊3的內(nèi)容發(fā)生了改變;時刻3相對時刻2,數(shù)據(jù)塊2和數(shù)據(jù)塊3的內(nèi)容發(fā)生了改變;當(dāng)前時刻(時刻4)相對時刻3,數(shù)據(jù)塊4和數(shù)據(jù)塊5的內(nèi)容發(fā)生了改變。如圖4所示,本實(shí)施例包括以下步驟步驟401,備份服務(wù)器向虛擬化平臺發(fā)送增量數(shù)據(jù)對比命令。
備份服務(wù)器在當(dāng)前時刻,即時刻4接收到將虛擬機(jī)還原到時刻2的請求,此時可向虛擬化平臺發(fā)送增量數(shù)據(jù)對比命令。該增量數(shù)據(jù)對比命令中攜帶有時刻2的改變標(biāo)識信息ChangeID0步驟402,虛擬化平臺對當(dāng)前時刻的虛擬機(jī)進(jìn)行快照,并且確定當(dāng)前時刻與待還原時刻的數(shù)據(jù)內(nèi)容不同的改變數(shù)據(jù)塊。虛擬化平臺接收到增量數(shù)據(jù)對比命令后,對當(dāng)前時刻的虛擬機(jī)進(jìn)行快照,得到當(dāng)前時刻,即時刻4的ChangelD。將時刻2的ChangeID和時刻4的ChangeID進(jìn)行對比,即可得到時刻4和時刻2相比,數(shù)據(jù)內(nèi)容發(fā)生改變的數(shù)據(jù)塊,即塊數(shù)據(jù)塊2、3、4、5。步驟403,虛擬化平臺向備份服務(wù)器發(fā)送改變數(shù)據(jù)塊的塊標(biāo)識信息。步驟404,在待還原時刻的增備數(shù)據(jù)中提取改變數(shù)據(jù)塊2的備份數(shù)據(jù)。時刻2相對時刻1,數(shù)據(jù)塊I和數(shù)據(jù)塊2的數(shù)據(jù)內(nèi)容發(fā)生了改變,因此備份服務(wù)器的時刻2的增備數(shù)據(jù)中存儲了時刻I和時刻2的備份數(shù)據(jù);時刻4相對時刻2,數(shù)據(jù)塊2也發(fā)生了變化,因此可在時刻2的增備數(shù)據(jù)中提取時刻2的備份數(shù)據(jù)。步驟405,備份服務(wù)器向虛擬化平臺發(fā)送改變數(shù)據(jù)塊2的備份數(shù)據(jù)。步驟406,在時刻I的全備數(shù)據(jù)中提取改變數(shù)據(jù)塊3、4、5的備份數(shù)據(jù)。時刻4相對時刻2,數(shù)據(jù)塊3、4、5發(fā)生了變化,由于在備份服務(wù)器中,在時刻2之前,只有時刻I的全備數(shù)據(jù),沒有其他時刻的增備數(shù)據(jù),因此,數(shù)據(jù)塊3、4、5的備份數(shù)據(jù)可以從時刻I的全備數(shù)據(jù)中提取。步驟407,向虛擬化平臺發(fā)送改變數(shù)據(jù)塊3、4、5的備份數(shù)據(jù)。備份服務(wù)器向虛擬化平臺發(fā)送改變數(shù)據(jù)塊的備份數(shù)據(jù)后,虛擬化平臺即可將該改變數(shù)據(jù)塊的備份數(shù)據(jù)寫回虛擬磁盤的改變數(shù)據(jù)塊對應(yīng)的位置,由此即可完成虛擬機(jī)的還原。本發(fā)明實(shí)施例中,虛擬化平臺通過增量數(shù)據(jù)對比功能查詢到當(dāng)前時刻與待還原時刻相比,數(shù)據(jù)內(nèi)容發(fā)生改變的數(shù)據(jù)塊,備份服務(wù)器在備份數(shù)據(jù)的存儲池中查詢到數(shù)據(jù)內(nèi)容發(fā)生改變的改變數(shù)據(jù)塊的備份數(shù)據(jù)后,將該改變數(shù)據(jù)塊的數(shù)據(jù)內(nèi)容發(fā)送至虛擬化平臺,只還原該數(shù)據(jù)內(nèi)容發(fā)生改變的數(shù)據(jù)塊,即可將虛擬機(jī)還原到待還原時刻,減少了數(shù)據(jù)的傳輸量,實(shí)現(xiàn)了快速還原虛擬機(jī),降低存儲空間的消耗。相應(yīng)地,本發(fā)明實(shí)施例還提供了虛擬機(jī)還原的裝置。圖5為本發(fā)明實(shí)施例提供的一種虛擬機(jī)還原的裝置示意圖。該實(shí)施例包括以下單元接收單元501,用于接收備份服務(wù)器發(fā)送的攜帶有第一改變標(biāo)識信息的增量數(shù)據(jù)對比命令,所述第一改變標(biāo)識信息為對待還原時刻的虛擬機(jī)進(jìn)行快照時生成的標(biāo)識信息。具體地,第一改變標(biāo)識信息為一個字符串形式的標(biāo)識信息,該標(biāo)識信息在虛擬化平臺對待還原時刻的虛擬機(jī)進(jìn)行快照處理時生成。其中,待還原時刻是指要將虛擬機(jī)還原到的時刻。為了實(shí)現(xiàn)本發(fā)明實(shí)施例提供的技術(shù)方案,該虛擬化平臺支持CBT功能,可以根據(jù)進(jìn)行快照時生成的改變標(biāo)識信息ChangelD,來計算兩個快照時刻點(diǎn)之間虛擬機(jī)中數(shù)據(jù)內(nèi)容發(fā)生改變的數(shù)據(jù)塊??煺諉卧?02,用于根據(jù)所述增量數(shù)據(jù)對比命令,對當(dāng)前時刻的所述虛擬機(jī)進(jìn)行快照操作,得到第二改變標(biāo)識信息所述第二改變標(biāo)識信息為對所述當(dāng)前時刻的所述虛擬機(jī)進(jìn)行快照時生成的標(biāo)識信息。虛擬化平臺接收到增量數(shù)據(jù)對比命令后,首先對當(dāng)前時刻的虛擬機(jī)行快照操作,得到當(dāng)前時刻的虛擬機(jī)快照對應(yīng)的改變標(biāo)識信息,即第二改變標(biāo)識信息。確定單元503,用于根據(jù)所述第一改變標(biāo)識信息和所述第二改變標(biāo)識信息,確定所述虛擬機(jī)的磁盤文件中的改變數(shù)據(jù)塊,所述改變數(shù)據(jù)塊為數(shù)據(jù)內(nèi)容發(fā)生改變的數(shù)據(jù)塊。確定單元503具體用于對所述第一改變標(biāo)識信息和所述第二改變標(biāo)識信息進(jìn)行對比,根據(jù)對比結(jié)果確定所述虛擬機(jī)磁盤文件中數(shù)據(jù)內(nèi)容發(fā)生改變的改變數(shù)據(jù)塊。具體地,虛擬化平臺將第一改變標(biāo)識信息作為基準(zhǔn)標(biāo)識信息,將第二改變標(biāo)識信息與第一改變標(biāo)識信息進(jìn)行對比,可得到虛擬機(jī)的當(dāng)前時刻的虛擬磁盤中哪些數(shù)據(jù)塊的數(shù)據(jù)內(nèi)容相對待還原時刻的數(shù)據(jù)塊發(fā)生了變化。這些發(fā)生變化的數(shù)據(jù)塊即為要還原的數(shù)據(jù)塊,其他沒有發(fā)生變化的數(shù)據(jù)塊不用進(jìn)行還原處理。其中,數(shù)據(jù)塊可以用塊標(biāo)識信息進(jìn)行標(biāo)識,也可以用數(shù)據(jù)塊在虛擬磁盤中的位置來標(biāo)識。發(fā)送單元504,用于將所述改變數(shù)據(jù)塊的塊標(biāo)識信息發(fā)往所述備份服務(wù)器,用以所述備份服務(wù)器獲取所述改變數(shù)據(jù)塊在待還原時刻的備份數(shù)據(jù)。備份服務(wù)器將從備份數(shù)據(jù)的存儲池中的全備數(shù)據(jù)或增備數(shù)據(jù)中查詢待還原時刻的改變數(shù)據(jù)塊的備份數(shù)據(jù),并將需要還原的數(shù)據(jù)寫回到虛擬化平臺的虛擬機(jī)中。由此,接收單元501,還用于從所述備份服務(wù)器接收所述改變數(shù)據(jù)塊在所述待還原時刻的備份數(shù)據(jù)。優(yōu)選地,本發(fā)明實(shí)施例還包括更新單元505,用于將所述改變數(shù)據(jù)塊的數(shù)據(jù)內(nèi)容更新為所述改變數(shù)據(jù)塊在待還原時刻的備份數(shù)據(jù)。本發(fā)明實(shí)施例中,虛擬化平臺通過增量數(shù)據(jù)對比功能查詢到當(dāng)前時刻與待還原時刻相比,數(shù)據(jù)內(nèi)容發(fā)生改變的數(shù)據(jù)塊,只還原該數(shù)據(jù)內(nèi)容發(fā)生改變的數(shù)據(jù)塊,即可將虛擬機(jī)還原到待還原時刻,并且由于在還原虛擬機(jī)的過程中只傳輸數(shù)據(jù)內(nèi)容發(fā)生改變的數(shù)據(jù)塊的備份數(shù)據(jù),減少了數(shù)據(jù)的傳輸量,實(shí)現(xiàn)了快速還原虛擬機(jī),降低存儲空間的消耗。圖6為本發(fā)明實(shí)施例提供的另一虛擬機(jī)還原的裝置示意圖。如圖6所示,該實(shí)施例包括以下單元發(fā)送單元601,用于向虛擬化平臺發(fā)送攜帶有第一改變標(biāo)識信息的增量數(shù)據(jù)對比命令所述第一改變標(biāo)識信息為對待還原時刻的虛擬機(jī)進(jìn)行快照時生成的標(biāo)識信息。其中,第一改變標(biāo)識信息在虛擬化平臺對待還原時刻的虛擬機(jī)進(jìn)行快照處理時生成。接收單元602,用于所述虛擬化平臺根據(jù)所述第一改變標(biāo)識信息完成增量數(shù)據(jù)對比后,接收所述虛擬化平臺發(fā)送的改變數(shù)據(jù)塊的塊標(biāo)識信息。在向虛擬化平臺發(fā)送增量數(shù)據(jù)對比命令之前,用戶可向備份服務(wù)器發(fā)送讓虛擬機(jī)還原到待還原時刻的請求,即接收單元602還用于,接收將所述虛擬機(jī)還原到待還原時刻的命令。虛擬化平臺接收到增量數(shù)據(jù)對比命令后,對當(dāng)前時刻的虛擬機(jī)進(jìn)行快照操作,得到當(dāng)前時刻的虛擬機(jī)快照對應(yīng)的改變標(biāo)識信息,即第二改變標(biāo)識信息,然后通過對比第一改變標(biāo)識信息和第二改變標(biāo)識信息得到數(shù)據(jù)內(nèi)容發(fā)生改變的改變數(shù)據(jù)塊,并將改變數(shù)據(jù)塊的塊標(biāo)識信息發(fā)送至備份服務(wù)器,由此備份服務(wù)器可接收到虛擬化平臺發(fā)送的改變數(shù)據(jù)塊的塊標(biāo)識信息。
查詢單元603,用于根據(jù)所述改變數(shù)據(jù)塊的塊標(biāo)識信息,查詢所述改變數(shù)據(jù)塊在待還原時刻的備份數(shù)據(jù);查詢單元603具體用于根據(jù)所述改變數(shù)據(jù)塊的塊標(biāo)識信息,優(yōu)先在所述待還原時刻的增備數(shù)據(jù)中查詢所述改變數(shù)據(jù)塊的備份數(shù)據(jù);當(dāng)在所述待還原時刻的增備數(shù)據(jù)中查詢不到所述改變數(shù)據(jù)塊的備份數(shù)據(jù)時,在所述待還原時刻之前時刻的增備數(shù)據(jù)中查詢所述改變數(shù)據(jù)塊的備份數(shù)據(jù)或向前回溯直到全備數(shù)據(jù)中查詢所述改變數(shù)據(jù)塊的備份數(shù)據(jù)。具體地,備份服務(wù)器在接收到改變數(shù)據(jù)塊的塊標(biāo)識信息后,首先在備份數(shù)據(jù)的存儲池中待還原時刻對應(yīng)的增備數(shù)據(jù)中查找在待還原時刻是否存儲了改變數(shù)據(jù)塊的備份數(shù)據(jù),如果是,則將該時刻的增備數(shù)據(jù)中的改變數(shù)據(jù)塊的備份數(shù)據(jù)提取出來。對于在待還原時刻的增備數(shù)據(jù)中沒有保存的改變數(shù)據(jù)塊的備份數(shù)據(jù),則在待還原時刻之前的時刻對應(yīng)的增備數(shù)據(jù)中查詢,如果查詢到,則將該備份數(shù)據(jù)從增備數(shù)據(jù)提取出來;如果仍有改變數(shù)據(jù)塊的數(shù)據(jù)沒有查詢到,則繼續(xù)在該時刻之前的時刻中查找,一直查找到最初時刻的全備數(shù)據(jù)中,將改變數(shù)據(jù)塊在待還原時刻的數(shù)據(jù)內(nèi)容找到。發(fā)送單元601,還用于將所述改變數(shù)據(jù)塊在待還原時刻的備份數(shù)據(jù)發(fā)送至所述虛擬化平臺,用以所述虛擬化平臺根據(jù)所述備份數(shù)據(jù)將所述改變數(shù)據(jù)塊的內(nèi)容還原至待還原時刻本發(fā)明實(shí)施例中,備份服務(wù)器在備份數(shù)據(jù)的存儲池中查詢到數(shù)據(jù)內(nèi)容發(fā)生改變的數(shù)據(jù)塊的備份數(shù)據(jù)后,只還原該數(shù)據(jù)內(nèi)容發(fā)生改變的數(shù)據(jù)塊,即可將虛擬機(jī)還原到待還原時刻,由于在還原虛擬機(jī)的過程中只傳輸數(shù)據(jù)內(nèi)容發(fā)生改變的數(shù)據(jù)塊的備份數(shù)據(jù),因此減少了數(shù)據(jù)的傳輸量,實(shí)現(xiàn)了快速還原虛擬機(jī),降低存儲空間的消耗。專業(yè)人員應(yīng)該還可以進(jìn)一步意識到,結(jié)合本文中所公開的實(shí)施例描述的各示例的單元及算法步驟,能夠以電子硬件、計算機(jī)軟件或者二者的結(jié)合來實(shí)現(xiàn),為了清楚地說明硬件和軟件的可互換性,在上述說明中已經(jīng)按照功能一般性地描述了各示例的組成及步驟。這些功能究竟以硬件還是軟件方式來執(zhí)行,取決于技術(shù)方案的特定應(yīng)用和設(shè)計約束條件。專業(yè)技術(shù)人員可以對每個特定的應(yīng)用來使用不同方法來實(shí)現(xiàn)所描述的功能,但是這種實(shí)現(xiàn)不應(yīng)認(rèn)為超出本發(fā)明的范圍。結(jié)合本文中所公開的實(shí)施例描述的方法或算法的步驟可以用硬件、處理器執(zhí)行的軟件模塊,或者二者的結(jié)合來實(shí)施。軟件模塊可以置于隨機(jī)存儲器(RAM)、內(nèi)存、只讀存儲器(ROM)、電可編程ROM、電可擦除可編程ROM、寄存器、硬盤、可移動磁盤、CD-ROM、或技術(shù)領(lǐng)域內(nèi)所公知的任意其它形式的存儲介質(zhì)中。以上所述的具體實(shí)施方式
,對本發(fā)明的目的、技術(shù)方案和有益效果進(jìn)行了進(jìn)一步詳細(xì)說明,所應(yīng)理解的是,以上所述僅為本發(fā)明的具體實(shí)施方式
而已,并不用于限定本發(fā)明的保護(hù)范圍,凡在本發(fā)明的精神和原則之內(nèi),所做的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
權(quán)利要求
1.一種虛擬機(jī)還原的方法,其特征在于,所述方法包括 接收備份服務(wù)器發(fā)送的攜帶有第一改變標(biāo)識信息的增量數(shù)據(jù)對比命令,所述第一改變標(biāo)識信息為對待還原時刻的虛擬機(jī)進(jìn)行快照時生成的標(biāo)識信息; 根據(jù)所述增量數(shù)據(jù)對比命令,對當(dāng)前時刻的所述虛擬機(jī)進(jìn)行快照操作,得到第二改變標(biāo)識信息,所述第二改變標(biāo)識信息為對所述當(dāng)前時刻的所述虛擬機(jī)進(jìn)行快照時生成的標(biāo)識信息; 根據(jù)所述第一改變標(biāo)識信息和所述第二改變標(biāo)識信息,確定所述虛擬機(jī)的磁盤文件中的改變數(shù)據(jù)塊,所述改變數(shù)據(jù)塊為數(shù)據(jù)內(nèi)容發(fā)生改變的數(shù)據(jù)塊; 將所述改變數(shù)據(jù)塊的塊標(biāo)識信息發(fā)往所述備份服務(wù)器,用以所述備份服務(wù)器獲取所述改變數(shù)據(jù)塊在待還原時刻的備份數(shù)據(jù)。
2.根據(jù)權(quán)利要求1所述的虛擬機(jī)還原的方法,其特征在于,所述將所述改變數(shù)據(jù)塊的塊標(biāo)識信息發(fā)往所述備份服務(wù)器之后,還包括 從所述備份服務(wù)器接收所述改變數(shù)據(jù)塊在所述待還原時刻的備份數(shù)據(jù); 將所述改變數(shù)據(jù)塊的數(shù)據(jù)內(nèi)容更新為所述改變數(shù)據(jù)塊在待還原時刻的備份數(shù)據(jù)。
3.根據(jù)權(quán)利要求1或2所述的虛擬機(jī)還原的方法,其特征在于,所述根據(jù)所述第一改變標(biāo)識信息和所述第二改變標(biāo)識信息,確定所述虛擬機(jī)的磁盤文件中的改變數(shù)據(jù)塊具體為 對所述第一改變標(biāo)識信息和所述第二改變標(biāo)識信息進(jìn)行對比,根據(jù)對比結(jié)果確定所述虛擬機(jī)磁盤文件中數(shù)據(jù)內(nèi)容發(fā)生改變的改變數(shù)據(jù)塊。
4.一種虛擬機(jī)還原的方法,其特征在于,所述方法包括 向虛擬化平臺發(fā)送攜帶有第一改變標(biāo)識信息的增量數(shù)據(jù)對比命令,所述第一改變標(biāo)識信息為對待還原時刻的虛擬機(jī)進(jìn)行快照時生成的標(biāo)識信息; 所述虛擬化平臺根據(jù)所述第一改變標(biāo)識信息完成增量數(shù)據(jù)對比后,接收所述虛擬化平臺發(fā)送的改變數(shù)據(jù)塊的塊標(biāo)識信息; 根據(jù)所述改變數(shù)據(jù)塊的塊標(biāo)識信息,查詢所述改變數(shù)據(jù)塊在待還原時刻的備份數(shù)據(jù);將所述改變數(shù)據(jù)塊在待還原時刻的備份數(shù)據(jù)發(fā)送至所述虛擬化平臺,用以所述虛擬化平臺根據(jù)所述備份數(shù)據(jù)將所述改變數(shù)據(jù)塊的內(nèi)容還原至待還原時刻。
5.根據(jù)權(quán)利要求4所述的虛擬機(jī)還原的方法,其特征在于,所述根據(jù)所述改變數(shù)據(jù)塊的塊標(biāo)識信息,查詢所述改變數(shù)據(jù)塊在待還原時刻的備份數(shù)據(jù)具體為 根據(jù)所述改變數(shù)據(jù)塊的塊標(biāo)識信息,優(yōu)先在所述待還原時刻的增備數(shù)據(jù)中查詢所述改變數(shù)據(jù)塊的備份數(shù)據(jù); 當(dāng)在所述待還原時刻的增備數(shù)據(jù)中查詢不到所述改變數(shù)據(jù)塊的備份數(shù)據(jù)時,在所述待還原時刻之前時刻的增備數(shù)據(jù)中查詢所述改變數(shù)據(jù)塊的備份數(shù)據(jù),或向前回溯直到全備數(shù)據(jù)中查詢所述改變數(shù)據(jù)塊的備份數(shù)據(jù)。
6.根據(jù)權(quán)利要求4或5所述的虛擬機(jī)還原的方法,其特征在于,所述向虛擬化平臺發(fā)送增量數(shù)據(jù)對比命令之前還包括接收將所述虛擬機(jī)還原到待還原時刻的命令。
7.—種虛擬機(jī)還原的裝置,其特征在于,所述裝置包括 接收單元,用于接收備份服務(wù)器發(fā)送的攜帶有第一改變標(biāo)識信息的增量數(shù)據(jù)對比命令,所述第一改變標(biāo)識信息為對待還原時刻的虛擬機(jī)進(jìn)行快照時生成的標(biāo)識信息; 快照單元,用于根據(jù)所述增量數(shù)據(jù)對比命令,對當(dāng)前時刻的所述虛擬機(jī)進(jìn)行快照操作,得到第二改變標(biāo)識信息,所述第二改變標(biāo)識信息為對所述當(dāng)前時刻的所述虛擬機(jī)進(jìn)行快照時生成的標(biāo)識信息; 確定單元,用于根據(jù)所述第一改變標(biāo)識信息和所述第二改變標(biāo)識信息,確定所述虛擬機(jī)的磁盤文件中的改變數(shù)據(jù)塊,所述改變數(shù)據(jù)塊為數(shù)據(jù)內(nèi)容發(fā)生改變的數(shù)據(jù)塊; 發(fā)送單元,用于將所述改變數(shù)據(jù)塊的塊標(biāo)識信息發(fā)往所述備份服務(wù)器,用以所述備份服務(wù)器獲取所述改變數(shù)據(jù)塊在待還原時刻的備份數(shù)據(jù)。
8.根據(jù)權(quán)利要求7所述的虛擬機(jī)還原的裝置,其特征在于,所述接收單元還用于,從所述備份服務(wù)器接收所述改變數(shù)據(jù)塊在所述待還原時刻的備份數(shù)據(jù); 所述裝置還包括更新單元,用于將所述改變數(shù)據(jù)塊的數(shù)據(jù)內(nèi)容更新為所述改變數(shù)據(jù)塊在待還原時刻的備份數(shù)據(jù)。
9.根據(jù)權(quán)利要求7或8所述的虛擬機(jī)還原的裝置,其特征在于,所述確定單元具體用于 對所述第一改變標(biāo)識信息和所述第二改變標(biāo)識信息進(jìn)行對比,根據(jù)對比結(jié)果確定所述虛擬機(jī)磁盤文件中數(shù)據(jù)內(nèi)容發(fā)生改變的改變數(shù)據(jù)塊。
10.一種虛擬機(jī)還原的裝置,其特征在于,所述裝置包括 發(fā)送單元,用于向虛擬化平臺發(fā)送攜帶有第一改變標(biāo)識信息的增量數(shù)據(jù)對比命令所述第一改變標(biāo)識信息為對待還原時刻的虛擬機(jī)進(jìn)行快照時生成的標(biāo)識信息; 接收單元,用于所述虛擬化平臺根據(jù)所述第一改變標(biāo)識信息完成增量數(shù)據(jù)對比后,接收所述虛擬化平臺發(fā)送的改變數(shù)據(jù)塊的塊標(biāo)識信息; 查詢單元,用于根據(jù)所述改變數(shù)據(jù)塊的塊標(biāo)識信息,查詢所述改變數(shù)據(jù)塊在待還原時刻的備份數(shù)據(jù); 所述發(fā)送單元,還用于將所述改變數(shù)據(jù)塊在待還原時刻的備份數(shù)據(jù)發(fā)送至所述虛擬化平臺,用以所述虛擬化平臺根據(jù)所述備份數(shù)據(jù)將所述改變數(shù)據(jù)塊的內(nèi)容還原至待還原時刻。
11.根據(jù)權(quán)利要求10所述的虛擬機(jī)還原的裝置,其特征在于,所述查詢單元具體用于 根據(jù)所述改變數(shù)據(jù)塊的塊標(biāo)識信息,優(yōu)先在所述待還原時刻的增備數(shù)據(jù)中查詢所述改變數(shù)據(jù)塊的備份數(shù)據(jù); 當(dāng)在所述待還原時刻的增備數(shù)據(jù)中查詢不到所述改變數(shù)據(jù)塊的備份數(shù)據(jù)時,在所述待還原時刻之前時刻的增備數(shù)據(jù)中查詢所述改變數(shù)據(jù)塊的備份數(shù)據(jù)或向前回溯直到全備數(shù)據(jù)中查詢所述改變數(shù)據(jù)塊的備份數(shù)據(jù)。
12.根據(jù)權(quán)利要求10或11所述的虛擬機(jī)還原的裝置,其特征在于,所述接收單元還用于,接收將所述虛擬機(jī)還原到待還原時刻的命令。
全文摘要
本發(fā)明涉及一種虛擬機(jī)還原的方法和裝置。該方法包括虛擬化平臺接收備份服務(wù)器發(fā)送的增量數(shù)據(jù)對比命令,其中攜帶有第一改變標(biāo)識信息;根據(jù)增量數(shù)據(jù)對比命令,對當(dāng)前時刻的虛擬機(jī)進(jìn)行快照操作,得到第二改變標(biāo)識信息;根據(jù)第一改變標(biāo)識信息和第二改變標(biāo)識信息,確定虛擬機(jī)磁盤中數(shù)據(jù)內(nèi)容發(fā)生改變的改變數(shù)據(jù)塊;將改變數(shù)據(jù)塊的塊標(biāo)識信息發(fā)送至備份服務(wù)器,用以備份服務(wù)器獲取改變數(shù)據(jù)塊在待還原時刻的備份數(shù)據(jù)。備份服務(wù)將查詢到的改變數(shù)據(jù)塊在待還原時刻的備份數(shù)據(jù)發(fā)送至虛擬化平臺,虛擬化平臺即可將改變數(shù)據(jù)塊的內(nèi)容還原至待還原時刻。本發(fā)明實(shí)施例實(shí)現(xiàn)了快速還原虛擬機(jī),并且降低了硬盤損耗。
文檔編號G06F9/455GK103034566SQ201210519490
公開日2013年4月10日 申請日期2012年12月6日 優(yōu)先權(quán)日2012年12月6日
發(fā)明者張密 申請人:華為技術(shù)有限公司