1.一種基于KVM虛擬化的無代理模式備份方法,其特征在于,包括以下步驟:
S10:在web災(zāi)備管理系統(tǒng)注冊需要備份虛擬機(jī)所在的宿主機(jī),遠(yuǎn)程連接宿主機(jī)掃描所有虛擬機(jī)信息,將虛擬機(jī)信息更新到數(shù)據(jù)庫,為創(chuàng)建備份任務(wù)和啟動任務(wù)提供基本信息;
S20:創(chuàng)建備份任務(wù),每個備份任務(wù)涉及一臺宿主機(jī)下的多個虛擬機(jī)以及一臺備份服務(wù)器,將備份任務(wù)信息更新到數(shù)據(jù)庫;
S30:啟動備份任務(wù),不中斷虛擬機(jī)業(yè)務(wù),將上一步選擇需要備份的虛擬機(jī)磁盤和配置文件通過網(wǎng)絡(luò)傳輸?shù)絺浞莘?wù)器上;
S40:創(chuàng)建快速恢復(fù)任務(wù),根據(jù)數(shù)據(jù)庫的虛擬機(jī)和宿主機(jī)信息,選擇需要恢復(fù)的虛擬機(jī)名稱、恢復(fù)的目標(biāo)機(jī)以及新建恢復(fù)虛擬機(jī)的名稱;
S50:啟動快速恢復(fù)任務(wù),遠(yuǎn)程連接宿主機(jī),將虛擬機(jī)的磁盤文件和配置文件快速恢復(fù)到宿主機(jī),重建虛擬機(jī)。
2.如權(quán)利要求1所述的基于KVM虛擬化的無代理模式備份方法,其特征在于,S10步驟具體包括以下步驟:
S101:登錄web災(zāi)備管理系統(tǒng),進(jìn)入注冊宿主機(jī)頁面;
S102:填寫宿主機(jī)ip地址以及用于遠(yuǎn)程連接宿主機(jī)的用戶名和密碼,頁面向備份服務(wù)器上的后臺程序發(fā)送注冊宿主機(jī)的消息,并附帶宿主機(jī)ip、用戶名和密碼等參數(shù),頁面等待后臺返回;
S103:后臺收到頁面注冊宿主機(jī)的消息后,獲取頁面?zhèn)鬟f的宿主機(jī)ip、用戶名和密碼參數(shù),根據(jù)宿主機(jī)ip地址建立遠(yuǎn)程連接,在連接的過程中會驗證用戶名和密碼的合法性,如果用戶名和密碼正確,連接成功執(zhí)行下一步,否則連接失敗,給頁面返回注冊失敗的結(jié)果;
S104:掃描宿主機(jī)上的所有虛擬機(jī)信息,包括虛擬機(jī)UUID、虛擬機(jī)名稱、虛擬機(jī)配置文件以及虛擬機(jī)磁盤信息,將虛擬機(jī)信息添加到數(shù)據(jù)庫中;
S105:關(guān)閉和宿主機(jī)的連接,并向頁面返回注冊成功的信息。
3.如權(quán)利要求1所述的所述的基于KVM虛擬化的無代理模式備份方法,其特征在于,S20步驟具體包括以下步驟:
S201:進(jìn)入創(chuàng)建備份任務(wù)頁面,選擇需要備份的虛擬機(jī),頁面向備份服務(wù)器上的后臺程序發(fā)送創(chuàng)建備份任務(wù)的消息,等待后臺返回;
S202:后臺收到頁面創(chuàng)建備份任務(wù)的消息后,獲取頁面?zhèn)鬟f過來的任務(wù)信息,將任務(wù)信息更新到數(shù)據(jù)庫,向頁面返回創(chuàng)建任務(wù)成功。
4.如權(quán)利要求1所述的所述的基于KVM虛擬化的無代理模式備份方法,其特征在于,S30步驟具體包括以下步驟:
S301:進(jìn)入啟動備份任務(wù)頁面,選擇任務(wù)并啟動,頁面向備份服務(wù)器上的后臺程序發(fā)送啟動備份任務(wù)的消息,等待后臺返回;
S302:后臺收到頁面啟動備份任務(wù)的消息后,獲取任務(wù)信息,獲取任務(wù)成功進(jìn)行下一步,否則向頁面返回任務(wù)不存在的錯誤;
S303:判斷任務(wù)是否已經(jīng)在運行,如果任務(wù)已經(jīng)運行,則備份失敗,并向頁面返回任務(wù)已經(jīng)運行的錯誤,反之,則進(jìn)行下一步;
S304:和宿主機(jī)建立遠(yuǎn)程連接,如果連接成功,則進(jìn)行下一步,否則備份失敗,則向頁面返回連接宿主機(jī)失敗的錯誤;
S305:獲取虛擬機(jī)磁盤的總大小和備份服務(wù)器的剩余存儲大小,如果備份服務(wù)器剩余存儲空間足夠,則進(jìn)行下一步,否則關(guān)閉和宿主機(jī)的連接,備份失敗,向頁面返回備份服務(wù)器存儲空間不足的消息;
S306:更新任務(wù)狀態(tài)為運行,對虛擬機(jī)所有磁盤創(chuàng)建快照,創(chuàng)建快照成功,則進(jìn)行下一步,否則則關(guān)閉和宿主機(jī)的連接,備份失敗,設(shè)置任務(wù)狀態(tài)出錯,向頁面返回創(chuàng)建快照失敗的消息;
S307:在備份服務(wù)器上創(chuàng)建存儲虛擬機(jī)磁盤和配置文件的目錄uuid_timestamp;
S308:更新任務(wù)狀態(tài)為停止,刪除備份服務(wù)器的uuid_timestamp目錄,進(jìn)入下一步;
S309:刪除虛擬機(jī)磁盤快照,關(guān)閉和宿主機(jī)的連接,如果是用戶停止任務(wù),則向頁面返回停止任務(wù)成功的消息,否則向頁面返回備份成功的消息。
5.如權(quán)利要求1所述的所述的基于KVM虛擬化的無代理模式備份方法,其特征在于,S40步驟具體包括以下步驟:
S401:用進(jìn)入創(chuàng)建快速恢復(fù)任務(wù)頁面,選擇需要快速恢復(fù)的備份點,并選擇快速恢復(fù)的目標(biāo)機(jī)ip,填寫新建虛擬機(jī)名稱以及恢復(fù)路徑,頁面向備份服務(wù)器上的后臺程序發(fā)送創(chuàng)建快速恢復(fù)任務(wù)的消息,等待后臺返回;
S402:后臺收到頁面創(chuàng)建快速恢復(fù)任務(wù)的消息后,獲取頁面?zhèn)鬟f過來的任務(wù)信息,將任務(wù)信息更新到數(shù)據(jù)庫,向頁面返回創(chuàng)建快速恢復(fù)任務(wù)成功。
6.如權(quán)利要求1所述的所述的基于KVM虛擬化的無代理模式備份方法,其特征在于,S50步驟具體包括以下步驟:
S501:進(jìn)入啟動快速恢復(fù)任務(wù)頁面,選擇任務(wù)并啟動,頁面向備份服務(wù)器上的后臺程序發(fā)送啟動快速恢復(fù)任務(wù)的消息,等待后臺返回;
S502:后臺收到頁面啟動快速恢復(fù)任務(wù)的消息后,獲取任務(wù)信息,獲取任務(wù)成功則進(jìn)行下一步,否則向頁面返回任務(wù)不存在的錯誤;
S503:判斷任務(wù)是否已經(jīng)在運行,如果任務(wù)已經(jīng)運行,則恢復(fù)失敗,并向頁面返回任務(wù)已經(jīng)運行的錯誤,反之,則進(jìn)行下一步;
S504:和目標(biāo)機(jī)建立遠(yuǎn)程連接,如果連接成功,則進(jìn)行下一步,否則快速恢復(fù)失敗,向頁面返回連接目標(biāo)機(jī)失敗的錯誤,建立連接方式和步驟S304類似;
S505:更新任務(wù)狀態(tài)為運行,將備份服務(wù)器上的備份點uuid_timestamp目錄通過網(wǎng)絡(luò)共享方式掛載到目標(biāo)機(jī)的恢復(fù)路徑share_des下,該路徑是創(chuàng)建快速恢復(fù)任務(wù)時由用戶指定,修改虛擬機(jī)配置文件中的磁盤存儲路徑指向share_des目錄的磁盤文件,然后進(jìn)行下一步;
S506:將目標(biāo)機(jī)上的share_des目錄創(chuàng)建為kvm管理的存儲池,使用新創(chuàng)建的虛擬機(jī)配置文件創(chuàng)建新的虛擬機(jī),虛擬機(jī)恢復(fù)成功,返回頁面快速恢復(fù)成功的消息。
7.如權(quán)利要求4所述的所述的基于KVM虛擬化的無代理模式備份方法,其特征在于,所述步驟S307具體包括以下步驟:
S3071:將虛擬機(jī)的配置信息傳輸?shù)絺浞莘?wù)器的uuid_timestamp目錄;
S3072:循環(huán)對每個虛擬機(jī)的磁盤分塊依次傳輸?shù)絺浞莘?wù)器的uuid_timestamp目錄;
S3073:每次傳輸完一個塊,判斷用戶是否終止任務(wù),如果是,則進(jìn)入步驟S308;否則則繼續(xù)傳輸下一個磁盤塊,直到所有磁盤數(shù)據(jù)備份完成,然后進(jìn)入步驟S309。
8.一種基于KVM虛擬化的無代理模式備份系統(tǒng),其特征在于,包括:
web災(zāi)備管理系統(tǒng):用戶通過瀏覽器登錄該web災(zāi)備管理系統(tǒng),管理整個備份恢復(fù)過程;
宿主機(jī):所述宿主機(jī)包括兩個或兩個以上虛擬機(jī),所述每個虛擬機(jī)均包含磁盤文件和配置文件;
備份服務(wù)器:將所述虛擬機(jī)的磁盤文件和配置文件備份到該備份服務(wù)器上,生成備份點,該備份服務(wù)器上存儲虛擬機(jī)的備份點信息,每一個備份點關(guān)聯(lián)一個虛擬機(jī)的磁盤文件和配置文件,用于快速恢復(fù)。