本發明涉及完整性檢測技術領域,特別是一種虛擬機克隆完整性的檢測方法。
背景技術:
隨著虛擬化技術的蓬勃發展,虛擬機使用者日益增多。當使用者需要克隆所用虛擬機時,克隆虛擬機的完整性、與原虛擬機內容一致性的校驗就顯得異常重要,而傳統的校驗方法會帶來以下問題:
以使用MD5校驗為例:
一是耗時較長,校驗時需要先計算原存儲卷的MD5值,再計算對應的克隆卷的MD5值,這樣做所耗費的時間是比較長的;
二是可能出現哈希沖突,令被人惡意篡改了數據、植入病毒的文件無法校驗出來。
三是不夠靈活,只能對整個文件或文件塊計算MD5值,不能抽取指定內容校驗。
為了提升克隆卷與原存儲卷的校驗效率,確保克隆卷與原存儲卷內容的一致性,提高校驗的靈活性,需要一種更快速安全靈活的校驗方法。
技術實現要素:
本發明解決的技術問題在于提出了一種虛擬機克隆完整性的檢測方法,可以更快速、靈活地校驗虛擬機克隆卷的完整性和內容一致性,確保克隆卷與原存儲卷內容一致,解決了傳統校驗方法耗時長、被篡改可能無法發現、不能靈活校驗等問題。
本發明解決上述技術問題的技術方案是:
所述的方法是獲取虛擬機克隆的存儲卷與原存儲卷的二進制內容;驗證兩者二進制內容的一致性;從而校驗虛擬機克隆的完整性。
所述的方法具體包括如下步驟:
步驟1:創建一臺虛擬機;
步驟2:獲取組成所創建虛擬機的存儲卷;
步驟3:獲取所述虛擬機存儲卷的二進制內容;
步驟4:依次克隆存儲卷;
步驟5:快速校驗克隆存儲卷與原存儲卷二進制內容的一致性。
所述虛擬機包括一個或多個存儲卷,所述存儲卷可以是系統盤、數據盤、可移動云盤。
通過虛擬機實例文件的鏈接獲取到組成所創建虛擬機的存儲卷,包括該虛擬機的存儲卷總數、存儲卷所屬的卷組或者存儲池,能實際定位到并操作這些存儲卷;
獲取存儲卷實際所在的存儲池信息,所述存儲池包括本地存儲池、集中存儲池和分布式存儲池。
所述的校驗可以指定校驗步長和校驗范圍。
校驗后,利用所述克隆存儲卷啟動一臺虛擬機;該啟動的虛擬機依賴的鏡像、系統盤、數據盤和云盤的數據與原虛擬機一樣。
本發明通過對克隆卷與原存儲卷的二進制內容進行快速靈活的校驗,可以確保克隆卷與原存儲卷內容的一致性,保證克隆卷的完整性,比傳統校驗方法如MD5校驗節省70%的時間,還可以避免因為哈希沖突導致文件被篡改也無法察覺。本發明可以指定校驗步長和校驗范圍,區別于傳統的校驗只能通過整體校驗的缺點,實現靈活校驗。
附圖說明
下面結合附圖對本發明進一步說明:
圖1為本發明的方法流程圖。
具體實施方式
如圖1所示,本發明基本步驟如下:
1、創建一臺虛擬機,代碼如下:
2、獲取組成所創建虛擬機的存儲卷,代碼如下:
4、依次克隆存儲卷,代碼如下:
5、快速校驗克隆卷與原存儲卷內容的一致性,代碼如下:
6、利用所述克隆卷啟動一臺虛擬機,代碼如下:
整個流程結束。