本發(fā)明涉及服務(wù)器技術(shù)領(lǐng)域,特別是涉及一種用于虛擬環(huán)境下的存儲(chǔ)設(shè)備的災(zāi)難恢復(fù)方法。
背景技術(shù):
隨著信息技術(shù)的發(fā)展,云計(jì)算得到了大規(guī)模的應(yīng)用和發(fā)展,計(jì)算虛擬化環(huán)境也受到越來越多的用戶的重視。
計(jì)算虛擬化能夠有效地利用硬件,易于IT管理,并降低運(yùn)營成本。和物理計(jì)算環(huán)境一樣,在計(jì)算虛擬化環(huán)境中的數(shù)據(jù)也需要被保護(hù),在虛擬化計(jì)算環(huán)境中的數(shù)據(jù)保護(hù),面臨的挑戰(zhàn)是在物理計(jì)算環(huán)境中不曾遇到的。假如在虛擬環(huán)境中,利用傳統(tǒng)的保護(hù)數(shù)據(jù)的方法將虛擬磁盤做一個(gè)鏡像,然后將鏡像存儲(chǔ)在遠(yuǎn)程,可能會(huì)付出較大的存儲(chǔ)資源和時(shí)間成本,而當(dāng)需要被備份或恢復(fù)的數(shù)據(jù)量較大時(shí),就會(huì)耗費(fèi)更多的時(shí)間和資源。
因此,如何有效實(shí)現(xiàn)虛擬環(huán)境下的數(shù)據(jù)保護(hù),且能夠降低時(shí)間成本和資源成本,是本領(lǐng)域技術(shù)人員目前需要解決的技術(shù)問題。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的目的是提供一種用于虛擬環(huán)境下的存儲(chǔ)設(shè)備的災(zāi)難恢復(fù)方法,可以有效實(shí)現(xiàn)虛擬環(huán)境下的數(shù)據(jù)保護(hù),且能夠降低時(shí)間成本和資源成本。
為解決上述技術(shù)問題,本發(fā)明提供了如下技術(shù)方案:
一種用于虛擬環(huán)境下的存儲(chǔ)設(shè)備的災(zāi)難恢復(fù)方法,其中,所述存儲(chǔ)設(shè)備包括虛擬機(jī),該方法包括:
預(yù)先在重復(fù)數(shù)據(jù)刪除數(shù)據(jù)庫中備份存儲(chǔ)設(shè)備的初始化數(shù)據(jù);
實(shí)時(shí)判斷所述存儲(chǔ)設(shè)備中的數(shù)據(jù)是否發(fā)生變更;
若是,則將所述存儲(chǔ)設(shè)備中發(fā)生變更的數(shù)據(jù)備份至所述重復(fù)數(shù)據(jù)刪除數(shù)據(jù)庫中;
實(shí)時(shí)判斷所述存儲(chǔ)設(shè)備是否發(fā)生災(zāi)難;
若是,則判斷所述存儲(chǔ)設(shè)備是否災(zāi)難恢復(fù);
若是,則根據(jù)所述重復(fù)數(shù)據(jù)刪除數(shù)據(jù)庫中備份的數(shù)據(jù)對所述存儲(chǔ)設(shè)備進(jìn)行數(shù)據(jù)恢復(fù)。
優(yōu)選地,所述預(yù)先在重復(fù)數(shù)據(jù)刪除數(shù)據(jù)庫中備份存儲(chǔ)設(shè)備的初始化數(shù)據(jù),包括:
預(yù)先建立備份存儲(chǔ)設(shè)備的初始化數(shù)據(jù)中各文件對應(yīng)的索引指針;
將各所述索引指針和與各所述索引指針對應(yīng)的文件數(shù)據(jù)備份至所述重復(fù)數(shù)據(jù)刪除數(shù)據(jù)庫。
優(yōu)選地,所述將所述存儲(chǔ)設(shè)備中發(fā)生變更的數(shù)據(jù)備份至所述重復(fù)數(shù)據(jù)刪除數(shù)據(jù)庫中,包括:
根據(jù)所述存儲(chǔ)設(shè)備中發(fā)生變更的數(shù)據(jù),建立相應(yīng)的索引指針和虛擬機(jī)快照;
將各虛擬機(jī)快照和對應(yīng)的索引指針備份存儲(chǔ)至所述重復(fù)數(shù)據(jù)刪除數(shù)據(jù)庫。
優(yōu)選地,所述根據(jù)所述重復(fù)數(shù)據(jù)刪除數(shù)據(jù)庫中備份的數(shù)據(jù)對所述存儲(chǔ)設(shè)備進(jìn)行數(shù)據(jù)恢復(fù),包括:
獲取所述虛擬機(jī)的文件恢復(fù)指令;
根據(jù)所述文件恢復(fù)指令查找對應(yīng)的所需恢復(fù)的文件的索引指針;
根據(jù)所述索引指針調(diào)取相應(yīng)的虛擬機(jī)快照對所述存儲(chǔ)設(shè)備進(jìn)行數(shù)據(jù)恢復(fù)。
優(yōu)選地,所述獲取所述虛擬機(jī)的文件恢復(fù)指令,包括:
跟蹤所述虛擬機(jī)的變更數(shù)據(jù)塊;
確定所述虛擬機(jī)的主文件表的范圍;
在所述虛擬機(jī)的主文件表和變更數(shù)據(jù)塊之間尋找一個(gè)共同數(shù)據(jù)塊;
對該共同數(shù)據(jù)塊進(jìn)行解析,確定一個(gè)文件變更列表;
存儲(chǔ)所述文件變更列表至文件索引中;
根據(jù)所述文件索引中的文件變更列表確定所需恢復(fù)的文件,生成對應(yīng)的文件恢復(fù)指令。
優(yōu)選地,所述根據(jù)所述索引指針調(diào)取相應(yīng)的虛擬機(jī)快照對所述存儲(chǔ)設(shè)備進(jìn)行數(shù)據(jù)恢復(fù),包括:
根據(jù)所述索引指針在對應(yīng)的虛擬機(jī)快照中確定包含所需恢復(fù)的文件的第一數(shù)據(jù)塊;
根據(jù)所述第一數(shù)據(jù)塊中的數(shù)據(jù)對所述存儲(chǔ)設(shè)備中的虛擬機(jī)進(jìn)行數(shù)據(jù)恢復(fù)。
與現(xiàn)有技術(shù)相比,上述技術(shù)方案具有以下優(yōu)點(diǎn):
本發(fā)明所提供的一種用于虛擬環(huán)境下的存儲(chǔ)設(shè)備的災(zāi)難恢復(fù)方法,其中,存儲(chǔ)設(shè)備包括虛擬機(jī),該方法包括:預(yù)先在重復(fù)數(shù)據(jù)刪除數(shù)據(jù)庫中備份存儲(chǔ)設(shè)備的初始化數(shù)據(jù);實(shí)時(shí)判斷存儲(chǔ)設(shè)備中的數(shù)據(jù)是否發(fā)生變更;若是,則將存儲(chǔ)設(shè)備中發(fā)生變更的數(shù)據(jù)備份至重復(fù)數(shù)據(jù)刪除數(shù)據(jù)庫中;實(shí)時(shí)判斷存儲(chǔ)設(shè)備是否發(fā)生災(zāi)難;若是,則判斷存儲(chǔ)設(shè)備是否災(zāi)難恢復(fù);若是,則根據(jù)重復(fù)數(shù)據(jù)刪除數(shù)據(jù)庫中備份的數(shù)據(jù)對存儲(chǔ)設(shè)備進(jìn)行數(shù)據(jù)恢復(fù)。在虛擬環(huán)境下,通過重復(fù)數(shù)據(jù)刪除數(shù)據(jù)庫對存儲(chǔ)設(shè)備中虛擬機(jī)的數(shù)據(jù)進(jìn)行備份,預(yù)先備份存儲(chǔ)設(shè)備的初始化數(shù)據(jù),在虛擬機(jī)的應(yīng)用過程中并不實(shí)時(shí)備份虛擬機(jī)的所有數(shù)據(jù),只是當(dāng)虛擬機(jī)中的數(shù)據(jù)發(fā)生變更時(shí)才將變更的數(shù)據(jù)進(jìn)行備份,當(dāng)虛擬機(jī)發(fā)生災(zāi)難時(shí),在災(zāi)難恢復(fù)后,可以根據(jù)需求來將備份的數(shù)據(jù)對虛擬機(jī)進(jìn)行數(shù)據(jù)恢復(fù),可以有效實(shí)現(xiàn)虛擬環(huán)境下的數(shù)據(jù)保護(hù),且能夠降低時(shí)間成本和資源成本。
附圖說明
為了更清楚地說明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖是本發(fā)明的一些實(shí)施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1為本發(fā)明一種具體實(shí)施方式所提供的用于虛擬環(huán)境下的存儲(chǔ)設(shè)備的災(zāi)難恢復(fù)方法流程圖。
具體實(shí)施方式
本發(fā)明的核心是提供一種用于虛擬環(huán)境下的存儲(chǔ)設(shè)備的災(zāi)難恢復(fù)方法,可以有效實(shí)現(xiàn)虛擬環(huán)境下的數(shù)據(jù)保護(hù),且能夠降低時(shí)間成本和資源成本。
為了使本發(fā)明的上述目的、特征和優(yōu)點(diǎn)能夠更為明顯易懂,下面結(jié)合附圖對本發(fā)明的具體實(shí)施方式做詳細(xì)的說明。
在以下描述中闡述了具體細(xì)節(jié)以便于充分理解本發(fā)明。但是本發(fā)明能夠以多種不同于在此描述的其它方式來實(shí)施,本領(lǐng)域技術(shù)人員可以在不違背本發(fā)明內(nèi)涵的情況下做類似推廣。因此本發(fā)明不受下面公開的具體實(shí)施的限制。
請參考圖1,圖1為本發(fā)明一種具體實(shí)施方式所提供的用于虛擬環(huán)境下的存儲(chǔ)設(shè)備的災(zāi)難恢復(fù)方法流程圖。
本發(fā)明的一種具體實(shí)施方式提供了一種用于虛擬環(huán)境下的存儲(chǔ)設(shè)備的災(zāi)難恢復(fù)方法,其中,存儲(chǔ)設(shè)備包括虛擬機(jī),該方法包括:
S11:預(yù)先在重復(fù)數(shù)據(jù)刪除數(shù)據(jù)庫中備份存儲(chǔ)設(shè)備的初始化數(shù)據(jù)。
在本實(shí)施方式中,所涉及到的虛擬環(huán)境可指的是VMWare的vSphere環(huán)境,包括一個(gè)或多個(gè)虛擬機(jī)、ESX服務(wù)器、本地硬盤或遠(yuǎn)程資源組成的存儲(chǔ)設(shè)備。重復(fù)數(shù)據(jù)刪除數(shù)據(jù)庫利用重復(fù)數(shù)據(jù)刪除技術(shù)在計(jì)算機(jī)中避免存儲(chǔ)重復(fù)數(shù)據(jù),可節(jié)省大量的硬盤空間。
在本發(fā)明的一種實(shí)施方式中,預(yù)先在重復(fù)數(shù)據(jù)刪除數(shù)據(jù)庫中備份存儲(chǔ)設(shè)備的初始化數(shù)據(jù),包括:預(yù)先建立備份存儲(chǔ)設(shè)備的初始化數(shù)據(jù)中各文件對應(yīng)的索引指針;將各索引指針和與各索引指針對應(yīng)的文件數(shù)據(jù)備份至重復(fù)數(shù)據(jù)刪除數(shù)據(jù)庫。
在本實(shí)施方式中,為了方便后續(xù)的災(zāi)難恢復(fù),在備份存儲(chǔ)設(shè)備的數(shù)據(jù)時(shí),根據(jù)虛擬機(jī)中的各文件,建立對應(yīng)的索引指針,索引指針作為索引號,以方便找尋對應(yīng)的文件。
S12:實(shí)時(shí)判斷存儲(chǔ)設(shè)備中的數(shù)據(jù)是否發(fā)生變更。即判斷存儲(chǔ)設(shè)備中的虛擬機(jī)中的數(shù)據(jù)是否發(fā)生變更。
S13:若是,則將存儲(chǔ)設(shè)備中發(fā)生變更的數(shù)據(jù)備份至重復(fù)數(shù)據(jù)刪除數(shù)據(jù)庫中。
在本發(fā)明的一種實(shí)施方式中,將存儲(chǔ)設(shè)備中發(fā)生變更的數(shù)據(jù)備份至重復(fù)數(shù)據(jù)刪除數(shù)據(jù)庫中,包括:根據(jù)存儲(chǔ)設(shè)備中發(fā)生變更的數(shù)據(jù),建立相應(yīng)的索引指針和虛擬機(jī)快照;將各虛擬機(jī)快照和對應(yīng)的索引指針備份存儲(chǔ)至重復(fù)數(shù)據(jù)刪除數(shù)據(jù)庫。在本實(shí)施方式中,以數(shù)據(jù)快照的方式來對變更的數(shù)據(jù)進(jìn)行備份存儲(chǔ)??煺諏?yīng)數(shù)據(jù)在某個(gè)時(shí)間點(diǎn)的映像,這使得在備份時(shí)可以確定備份的時(shí)間點(diǎn)。
S14:實(shí)時(shí)判斷存儲(chǔ)設(shè)備是否發(fā)生災(zāi)難。即判斷存儲(chǔ)設(shè)備的虛擬機(jī)是否發(fā)生了故障等災(zāi)難。
S15:若是,則判斷存儲(chǔ)設(shè)備是否災(zāi)難恢復(fù)。即判斷存儲(chǔ)設(shè)備處是否向重復(fù)數(shù)據(jù)刪除數(shù)據(jù)庫發(fā)出數(shù)據(jù)恢復(fù)的請求。
S16:若是,則根據(jù)重復(fù)數(shù)據(jù)刪除數(shù)據(jù)庫中備份的數(shù)據(jù)對存儲(chǔ)設(shè)備進(jìn)行數(shù)據(jù)恢復(fù)。
在本發(fā)明的一種實(shí)施方式中,根據(jù)重復(fù)數(shù)據(jù)刪除數(shù)據(jù)庫中備份的數(shù)據(jù)對存儲(chǔ)設(shè)備進(jìn)行數(shù)據(jù)恢復(fù),包括:獲取虛擬機(jī)的文件恢復(fù)指令,在虛擬機(jī)災(zāi)難后,當(dāng)需要恢復(fù)數(shù)據(jù)時(shí),虛擬機(jī)向存儲(chǔ)設(shè)備發(fā)出文件恢復(fù)指令;根據(jù)文件恢復(fù)指令查找對應(yīng)的所需恢復(fù)的文件的索引指針;根據(jù)索引指針調(diào)取相應(yīng)的虛擬機(jī)快照對存儲(chǔ)設(shè)備進(jìn)行數(shù)據(jù)恢復(fù)。
其中,獲取虛擬機(jī)的文件恢復(fù)指令,包括:跟蹤虛擬機(jī)的變更數(shù)據(jù)塊;確定虛擬機(jī)的主文件表的范圍;在虛擬機(jī)的主文件表和變更數(shù)據(jù)塊之間尋找一個(gè)共同數(shù)據(jù)塊;對該共同數(shù)據(jù)塊進(jìn)行解析,確定一個(gè)文件變更列表;存儲(chǔ)文件變更列表至文件索引中;根據(jù)文件索引中的文件變更列表確定所需恢復(fù)的文件,生成對應(yīng)的文件恢復(fù)指令。
更進(jìn)一步地,根據(jù)索引指針調(diào)取相應(yīng)的虛擬機(jī)快照對存儲(chǔ)設(shè)備進(jìn)行數(shù)據(jù)恢復(fù),包括:根據(jù)索引指針在對應(yīng)的虛擬機(jī)快照中確定包含所需恢復(fù)的文件的第一數(shù)據(jù)塊;根據(jù)第一數(shù)據(jù)塊中的數(shù)據(jù)對存儲(chǔ)設(shè)備中的虛擬機(jī)進(jìn)行數(shù)據(jù)恢復(fù)。
當(dāng)虛擬機(jī)發(fā)生災(zāi)難并恢復(fù)時(shí),很多情況下并不是所有的數(shù)據(jù)都遭到損壞,而是需要恢復(fù)一部分?jǐn)?shù)據(jù),這時(shí)候,虛擬機(jī)根據(jù)自身的需求向重復(fù)數(shù)據(jù)刪除數(shù)據(jù)庫發(fā)送文件恢復(fù)指令來恢復(fù)自身的數(shù)據(jù),在本實(shí)施方式中,通過跟蹤虛擬機(jī)的變更數(shù)據(jù)塊確定一個(gè)虛擬機(jī)的主文件表的范圍,來確定文件變更列表,從而確定需要進(jìn)行恢復(fù)的文件。然后通過索引指針在重復(fù)數(shù)據(jù)刪除數(shù)據(jù)庫中調(diào)取對應(yīng)的文件數(shù)據(jù)進(jìn)行數(shù)據(jù)恢復(fù)。
本發(fā)明所提供的用于虛擬環(huán)境下的存儲(chǔ)設(shè)備的災(zāi)難恢復(fù)方法,在虛擬環(huán)境下,通過重復(fù)數(shù)據(jù)刪除數(shù)據(jù)庫對存儲(chǔ)設(shè)備中虛擬機(jī)的數(shù)據(jù)進(jìn)行備份,預(yù)先備份存儲(chǔ)設(shè)備的初始化數(shù)據(jù),在虛擬機(jī)的應(yīng)用過程中并不實(shí)時(shí)備份虛擬機(jī)的所有數(shù)據(jù),只是當(dāng)虛擬機(jī)中的數(shù)據(jù)發(fā)生變更時(shí)才將變更的數(shù)據(jù)進(jìn)行備份,當(dāng)虛擬機(jī)發(fā)生災(zāi)難時(shí),在災(zāi)難恢復(fù)后,可以根據(jù)需求來將備份的數(shù)據(jù)對虛擬機(jī)進(jìn)行數(shù)據(jù)恢復(fù),可以有效實(shí)現(xiàn)虛擬環(huán)境下的數(shù)據(jù)保護(hù),且能夠降低時(shí)間成本和資源成本。
以上對本發(fā)明所提供的一種用于虛擬環(huán)境下的存儲(chǔ)設(shè)備的災(zāi)難恢復(fù)方法進(jìn)行了詳細(xì)介紹。本文中應(yīng)用了具體個(gè)例對本發(fā)明的原理及實(shí)施方式進(jìn)行了闡述,以上實(shí)施例的說明只是用于幫助理解本發(fā)明的方法及其核心思想。應(yīng)當(dāng)指出,對于本技術(shù)領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明原理的前提下,還可以對本發(fā)明進(jìn)行若干改進(jìn)和修飾,這些改進(jìn)和修飾也落入本發(fā)明權(quán)利要求的保護(hù)范圍內(nèi)。