亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種虛擬機(jī)的磁盤文件的處理方法及裝置與流程

文檔序號:12063267閱讀:253來源:國知局
一種虛擬機(jī)的磁盤文件的處理方法及裝置與流程

本發(fā)明涉及虛擬機(jī)處理技術(shù)領(lǐng)域,尤其涉及一種虛擬機(jī)的磁盤文件的處理方法及裝置。



背景技術(shù):

以冰點為代表的系統(tǒng)還原軟件通過還原驅(qū)動程序攔截硬盤讀寫驅(qū)動,改變系統(tǒng)對硬盤的讀寫,實現(xiàn)對硬盤已存在數(shù)據(jù)的保護(hù)。這類還原軟件需要在系統(tǒng)啟動過程中加載還原驅(qū)動程序,屬于操作系統(tǒng)層級的系統(tǒng)還原軟件。在實際使用過程中,由于企業(yè)版冰點還原軟件(Deep Freeze)與域控配合使用時產(chǎn)生較高的輸入輸出量,導(dǎo)致桌面虛擬機(jī)系統(tǒng)在還原過程中存在輸入輸出過高的問題,致使此類軟件在桌面虛擬機(jī)的使用上遇到了瓶頸。



技術(shù)實現(xiàn)要素:

為了克服上述問題,本發(fā)明提供一種虛擬機(jī)的磁盤文件的處理方法及裝置,來解決桌面虛擬機(jī)系統(tǒng)在還原過程中存在輸入輸出過高的問題。

為了解決上述技術(shù)問題,本發(fā)明實施例采用如下技術(shù)方案:

本發(fā)明的一個方面,提供了一種虛擬機(jī)的磁盤文件的處理方法,所述磁盤文件存儲于第一節(jié)點上,所述方法包括:

在創(chuàng)建還原點時,根據(jù)所述虛擬機(jī)的磁盤文件生成第一葉子文件,并將所述磁盤文件標(biāo)記為還原點的文件,其中,所述第一葉子文件用于記錄后續(xù)用戶新修改的用戶數(shù)據(jù);

將所述第一葉子文件存儲于第二節(jié)點上,所述第一節(jié)點為所述第二節(jié)點的父節(jié)點;

將所述磁盤文件的讀寫屬性設(shè)置為只讀屬性,將所述第一葉子文件的讀寫屬性設(shè)置為可讀可寫屬性,以及將所述虛擬機(jī)的狀態(tài)標(biāo)識設(shè)置為冰凍狀態(tài)。

可選地,所述在創(chuàng)建還原點時,根據(jù)所述虛擬機(jī)的磁盤文件生成第一葉子 文件,具體為:

在創(chuàng)建所述還原點時,對所述虛擬機(jī)的磁盤文件進(jìn)行快照處理,根據(jù)快照處理得到的文件生成第一葉子文件。

可選地,所述方法還包括:

獲取一還原指令;

根據(jù)所述還原指令,刪除所述第一葉子文件,并根據(jù)所述虛擬機(jī)的磁盤文件生成第二葉子文件,其中,所述磁盤文件為所述還原點的文件,所述第二葉子文件用于記錄后續(xù)用戶新修改的用戶數(shù)據(jù);

將所述第二葉子文件存儲于第三節(jié)點上,其中,所述第一節(jié)點為所述第三節(jié)點的父節(jié)點;

將所述第二葉子文件的讀寫屬性設(shè)置為可讀可寫屬性。

可選地,所述還原指令為在檢測到所述虛擬機(jī)進(jìn)入關(guān)閉狀態(tài)時自動觸發(fā)或由用戶手動進(jìn)行觸發(fā)。

可選地,所述方法還包括:

在所述虛擬機(jī)的解凍任務(wù)觸發(fā)后,刪除所述第一葉子文件,并根據(jù)所述虛擬機(jī)的磁盤文件生成第三葉子文件,其中,所述磁盤文件為所述還原點的文件,所述第三葉子文件用于記錄后續(xù)用戶新修改的用戶數(shù)據(jù);

將所述第三葉子文件存儲于第四節(jié)點上,其中,所述第一節(jié)點為所述第四節(jié)點的父節(jié)點;

將所述第三葉子文件的讀寫屬性設(shè)置為可讀可寫屬性,將所述虛擬機(jī)的狀態(tài)標(biāo)識設(shè)置為解凍狀態(tài)。

可選地,所述方法還包括:

在所述虛擬機(jī)的解凍任務(wù)觸發(fā)后,將所述磁盤文件的讀寫屬性設(shè)置為可讀可寫屬性,將所述虛擬機(jī)的狀態(tài)標(biāo)識設(shè)置為解凍狀態(tài)。

本發(fā)明的另一個方面,還提供了一種虛擬機(jī)的磁盤文件的處理裝置,所述磁盤文件存儲于第一節(jié)點上,所述裝置包括:

生成模塊,用于在創(chuàng)建還原點時,根據(jù)所述虛擬機(jī)的磁盤文件生成第一葉子文件,并將所述磁盤文件標(biāo)記為還原點的文件,其中,所述第一葉子文件用于記錄后續(xù)用戶新修改的用戶數(shù)據(jù);

第一存儲模塊,用于將所述第一葉子文件存儲于第二節(jié)點上,所述第一節(jié)點為所述第二節(jié)點的父節(jié)點;

第一設(shè)置模塊,用于將所述磁盤文件的讀寫屬性設(shè)置為只讀屬性,將所述第一葉子文件的讀寫屬性設(shè)置為可讀可寫屬性,以及將所述虛擬機(jī)的狀態(tài)標(biāo)識設(shè)置為冰凍狀態(tài)。

可選地,所述生成模塊,包括:

快照模塊,用于在創(chuàng)建所述還原點時,對所述虛擬機(jī)的磁盤文件進(jìn)行快照處理,根據(jù)快照處理得到的文件生成第一葉子文件。

可選地,所述裝置還包括:

獲取模塊,用于獲取一還原指令;

第一還原模塊,用于根據(jù)所述還原指令,刪除所述第一葉子文件,并根據(jù)所述虛擬機(jī)的磁盤文件生成第二葉子文件,其中,所述磁盤文件為所述還原點的文件,所述第二葉子文件用于記錄后續(xù)用戶新修改的用戶數(shù)據(jù);

第二存儲模塊,用于將所述第二葉子文件存儲于第三節(jié)點上,其中,所述第一節(jié)點為所述第三節(jié)點的父節(jié)點;

第二設(shè)置模塊,用于將所述第二葉子文件的讀寫屬性設(shè)置為可讀可寫屬性。

可選地,所述還原指令為在檢測到所述虛擬機(jī)進(jìn)入關(guān)閉狀態(tài)時自動觸發(fā)或由用戶手動進(jìn)行觸發(fā)。

可選地,所述裝置還包括:

第二還原模塊,用于在所述虛擬機(jī)的解凍任務(wù)觸發(fā)后,刪除所述第一葉子文件,并根據(jù)所述虛擬機(jī)的磁盤文件生成第三葉子文件,其中,所述磁盤文件為所述還原點的文件,所述第三葉子文件用于記錄后續(xù)用戶新修改的用戶數(shù)據(jù);

第三存儲模塊,用于將所述第三葉子文件存儲于第四節(jié)點上,其中,所述第一節(jié)點為所述第四節(jié)點的父節(jié)點;

第三設(shè)置模塊,用于將所述第三葉子文件的讀寫屬性設(shè)置為可讀可寫屬性,將所述虛擬機(jī)的狀態(tài)標(biāo)識設(shè)置為解凍狀態(tài)。

可選地,所述裝置還包括:

第四設(shè)置模塊,用于在所述虛擬機(jī)的解凍任務(wù)觸發(fā)后,將所述磁盤文件的讀寫屬性設(shè)置為可讀可寫屬性,將所述虛擬機(jī)的狀態(tài)標(biāo)識設(shè)置為解凍狀態(tài)。

本發(fā)明的有益效果是:

上述方案,以虛擬機(jī)中原始磁盤文件為還原點,在虛擬機(jī)的磁盤文件基礎(chǔ)上生成葉子文件,通過葉子文件來記錄后續(xù)用戶新修改的用戶數(shù)據(jù),將后續(xù)的用戶操作數(shù)據(jù)與原始磁盤文件分隔開來進(jìn)行獨立記錄,避免其他用戶的操作對磁盤文件進(jìn)行修改,在后續(xù)還原過程中,只需將存儲有后續(xù)的用戶操作數(shù)據(jù)的葉子節(jié)點進(jìn)行刪除即可實現(xiàn)對虛擬機(jī)的還原,更好的適應(yīng)了實際需要,避免了還原操作導(dǎo)致的輸入輸出過高的問題。

附圖說明

圖1表示本發(fā)明中第一實施例的流程示意圖;

圖2表示本發(fā)明中第二實施例的流程示意圖;

圖3表示本發(fā)明中第三實施例的流程示意圖;

圖4表示本發(fā)明中第五實施例的模塊結(jié)構(gòu)框圖一;

圖5表示本發(fā)明中第五實施例的模塊結(jié)構(gòu)框圖二;

圖6表示本發(fā)明中第五實施例的模塊結(jié)構(gòu)框圖三;

圖7為虛擬機(jī)冰凍操作過程示意圖;

圖8為虛擬機(jī)還原操作過程示意圖;

圖9為虛擬機(jī)解凍操作過程示意圖。

具體實施方式

下面將參照附圖更詳細(xì)地描述本公開的示例性實施例。雖然附圖中顯示了本公開的示例性實施例,然而應(yīng)當(dāng)理解,可以以各種形式實現(xiàn)本公開而不應(yīng)被這里闡述的實施例所限制。相反,提供這些實施例是為了能夠更透徹地理解本公開,并且能夠?qū)⒈竟_的范圍完整的傳達(dá)給本領(lǐng)域的技術(shù)人員。

第一實施例

如圖1所示,本發(fā)明公開了一種虛擬機(jī)的磁盤文件的處理方法,該磁盤文件存儲于第一節(jié)點上,其中該方法具體包括:

步驟101:在創(chuàng)建還原點時,根據(jù)所述虛擬機(jī)的磁盤文件生成第一葉子文件,并將所述磁盤文件標(biāo)記為還原點的文件。

其中,第一葉子文件用于記錄后續(xù)用戶新修改的用戶數(shù)據(jù),創(chuàng)建還原點是指在對虛擬機(jī)上現(xiàn)有的磁盤文件基礎(chǔ)上作保留,使該些磁盤文件上的數(shù)據(jù)及內(nèi)容不被后來的操作數(shù)據(jù)修改或覆蓋,將磁盤文件標(biāo)記為還原點的文件表明在需要對虛擬機(jī)進(jìn)行還原時,該磁盤文件為虛擬機(jī)所保留的內(nèi)容,還原之后虛擬機(jī)重新回到該還原點時刻對應(yīng)的磁盤文件狀態(tài)。且在創(chuàng)建還原點之后,在虛擬機(jī)上現(xiàn)有磁盤文件基礎(chǔ)上生成葉子文件,將后續(xù)的用戶操作數(shù)據(jù)記錄全部記錄存放在該葉子文件內(nèi),將磁盤文件標(biāo)記為還原點文件以便于不被讀寫修改,并便于后來做還原操作。

步驟102:將所述第一葉子文件存儲于第二節(jié)點上,所述第一節(jié)點為所述第二節(jié)點的父節(jié)點。

其中,磁盤文件存儲于第一節(jié)點上,根據(jù)該磁盤文件生成的第一葉子文件存儲于為該第一節(jié)點子節(jié)點的第二節(jié)點上,以便于后續(xù)的還原處理。

步驟103:將所述磁盤文件的讀寫屬性設(shè)置為只讀屬性,將所述第一葉子文件的讀寫屬性設(shè)置為可讀可寫屬性,以及將所述虛擬機(jī)的狀態(tài)標(biāo)識設(shè)置為冰凍狀態(tài)。

此時與上述步驟101、102相對應(yīng)地,此時將磁盤文件的讀寫屬性設(shè)置為只讀屬性,避免后續(xù)用戶操作時對該磁盤文件進(jìn)行修改,第一葉子文件的讀寫屬性設(shè)置為可讀可寫屬性,使后續(xù)用戶數(shù)據(jù)能夠在該葉子文件中進(jìn)行存儲,在創(chuàng)建還原點之后,該虛擬機(jī)的狀態(tài)標(biāo)識設(shè)置為冰凍狀態(tài),表明此時的虛擬機(jī)上有還原點的存在。

本發(fā)明的上述方法,以虛擬機(jī)中原始磁盤文件為還原點,在虛擬機(jī)的磁盤文件基礎(chǔ)上生成葉子文件,通過葉子文件來記錄后續(xù)用戶新修改的用戶數(shù)據(jù),將后續(xù)的用戶操作數(shù)據(jù)與原始磁盤文件分隔開來進(jìn)行獨立記錄,避免其他用戶的操作對磁盤文件進(jìn)行修改,在后續(xù)還原過程中,只需將存儲有后續(xù)的用戶操作數(shù)據(jù)的葉子節(jié)點進(jìn)行刪除即可實現(xiàn)對虛擬機(jī)的還原。

進(jìn)一步地,上述步驟101中在創(chuàng)建還原點時,根據(jù)虛擬機(jī)的磁盤文件生成第一葉子文件,具體可以為:在創(chuàng)建還原點時,對該虛擬機(jī)的磁盤文件進(jìn)行快照處理,根據(jù)快照處理得到的文件生成第一葉子文件。

這里的對虛擬機(jī)的磁盤文件進(jìn)行快照處理具體是利用VHD磁盤快照技術(shù), 在虛擬機(jī)關(guān)機(jī)狀態(tài)下虛擬化管理中心啟動冰凍任務(wù)對虛擬機(jī)的磁盤文件做快照從而保留冰凍點,這樣用戶虛擬機(jī)在啟動之后,產(chǎn)生的新數(shù)據(jù)為體現(xiàn)在新建的磁盤節(jié)點上,具體這里不做限定。

第二實施例

如圖2所示,本實施例將在第一實施例的基礎(chǔ)上,對虛擬機(jī)創(chuàng)建還原點之后,虛擬機(jī)進(jìn)行還原操作的過程展開進(jìn)一步描述。

其中,該虛擬機(jī)的磁盤文件的處理方法還包括:

步驟201:獲取一還原指令。

步驟202:根據(jù)所述還原指令,刪除所述第一葉子文件,并根據(jù)所述虛擬機(jī)的磁盤文件生成第二葉子文件。

其中,磁盤文件為該還原點的文件,第二葉子文件用于記錄后續(xù)用戶新修改的用戶數(shù)據(jù)。在需要對虛擬機(jī)做還原操作時,先獲取還原指令,根據(jù)該還原指令對記錄有用戶操作虛擬機(jī)之后產(chǎn)生的新修改的用戶數(shù)據(jù)的第一葉子文件進(jìn)行刪除,并在與還原點時刻對應(yīng)的磁盤文件的基礎(chǔ)上生成新的葉子文件,即上述第二葉子文件,如果有新用戶對還原之后的虛擬機(jī)進(jìn)行了操作,此時該第二葉子文件就負(fù)責(zé)記錄存儲還原之后的儲虛擬機(jī)上用戶新修改的用戶數(shù)據(jù),以便于在需要的時候?qū)μ摂M機(jī)作再一次的還原操作。

步驟203:將所述第二葉子文件存儲于第三節(jié)點上,其中,所述第一節(jié)點為所述第三節(jié)點的父節(jié)點。

步驟204:將所述第二葉子文件的讀寫屬性設(shè)置為可讀可寫屬性。

對應(yīng)地,此時將步驟202中生成的第二葉子文件存儲在新的節(jié)點上,即上述第三節(jié)點上,該第三節(jié)點同樣為存儲有與還原點對應(yīng)的磁盤文件的第一節(jié)點的子節(jié)點,此時該磁盤文件仍為只讀狀態(tài),新的葉子文件即第二葉子文件為可讀可寫。

其中,上述步驟201中的還原指令為在檢測到虛擬機(jī)進(jìn)入關(guān)閉狀態(tài)時自動觸發(fā)或由用戶手動進(jìn)行觸發(fā),即在虛擬機(jī)關(guān)閉時自動對虛擬機(jī)進(jìn)行還原操作,或者在任意時刻,根據(jù)實際需要對虛擬機(jī)進(jìn)行手動操作觸發(fā)還原指令。

第三實施例

如圖3所示,在第一實施例基礎(chǔ)上,本實施例將對虛擬機(jī)觸發(fā)解凍任務(wù), 將虛擬機(jī)的狀態(tài)標(biāo)識設(shè)置為解凍狀態(tài)后的操作過程做出相應(yīng)描述,本實施例中具體涉及在虛擬機(jī)的解凍任務(wù)觸發(fā)后,與之對應(yīng)的兩種不同的處理過程。

一方面,這里將對虛擬機(jī)的解凍任務(wù)觸發(fā)后,對應(yīng)的第一種處理過程進(jìn)行描述,其中虛擬機(jī)的磁盤文件的處理方法還包括:

步驟301:在所述虛擬機(jī)的解凍任務(wù)觸發(fā)后,刪除所述第一葉子文件,并根據(jù)所述虛擬機(jī)的磁盤文件生成第三葉子文件。

其中,磁盤文件為還原點的文件,第三葉子文件用于記錄后續(xù)用戶新修改的用戶數(shù)據(jù)。

步驟302:將所述第三葉子文件存儲于第四節(jié)點上,其中,所述第一節(jié)點為所述第四節(jié)點的父節(jié)點。

步驟303:將所述第三葉子文件的讀寫屬性設(shè)置為可讀可寫屬性,將所述虛擬機(jī)的狀態(tài)標(biāo)識設(shè)置為解凍狀態(tài)。

上述步驟301至步驟303中,在虛擬機(jī)的解凍任務(wù)觸發(fā)后,對該解凍任務(wù)進(jìn)行響應(yīng),對虛擬機(jī)的狀態(tài)做解凍的同時,也對虛擬做還原操作,還原該虛擬機(jī)當(dāng)前狀態(tài)至還原點時刻記錄的磁盤狀態(tài),在對虛擬機(jī)解凍時,該還原點也隨之變?yōu)闊o效還原點,不再對原有還原點時刻對應(yīng)的磁盤文件作讀寫保護(hù),后續(xù)用戶的操作可以對原有的磁盤文件做出相應(yīng)的修改與處理,此時虛擬機(jī)的解凍任務(wù)觸發(fā)后,刪除記錄有用戶的后續(xù)操作數(shù)據(jù)的第一葉子文件,并在磁盤文件基礎(chǔ)上生成新的空葉子文件,以該新的空葉子文件存儲接下來的用戶操作數(shù)據(jù),將該新的空葉子文件存儲在第一節(jié)點的新的子節(jié)點上,上述磁盤文件讀寫狀態(tài)也更改為可讀可寫狀態(tài)。

另一方面,這里將對虛擬機(jī)的解凍任務(wù)觸發(fā)后,對應(yīng)的另一種處理過程進(jìn)行描述,其中虛擬機(jī)的磁盤文件的處理方法還包括:

在虛擬機(jī)的解凍任務(wù)觸發(fā)后,將磁盤文件的讀寫屬性設(shè)置為可讀可寫屬性,將虛擬機(jī)的狀態(tài)標(biāo)識設(shè)置為解凍狀態(tài)。

這里,在虛擬機(jī)的解凍任務(wù)觸發(fā)后,系統(tǒng)響應(yīng)該解凍任務(wù),只對該虛擬機(jī)上設(shè)置的還原點作解除操作,不對該虛擬機(jī)做還原操作,此時的磁盤文件也不再為還原點的文件,此時與之對應(yīng)的,第一葉子文件仍用于記錄后續(xù)用戶新修改的用戶數(shù)據(jù),磁盤文件的讀寫屬性設(shè)置為可讀可寫屬性,虛擬機(jī)的狀態(tài)標(biāo)識 設(shè)置為解凍狀態(tài)。

上述的第一種操作過程與第二種操作過程的區(qū)別主要在于:前者在虛擬機(jī)的解凍任務(wù)觸發(fā)后,對虛擬機(jī)的解凍任務(wù)響應(yīng)之后,既對虛擬機(jī)作還原操作又對虛擬機(jī)的還原點做無效、修改虛擬機(jī)的冰凍標(biāo)記為解凍標(biāo)記,后者對虛擬機(jī)作還原操作又對虛擬機(jī)的還原點做無效、修改虛擬機(jī)的冰凍標(biāo)記為解凍標(biāo)記,虛擬機(jī)中的新變化可以在第一葉子文件中存儲的用戶操作數(shù)據(jù)的基礎(chǔ)上進(jìn)行繼續(xù)存儲,這里對虛擬機(jī)做冰凍狀態(tài)的設(shè)置可以確保對虛擬機(jī)作重復(fù)的還原操作,對冰凍狀態(tài)的解除設(shè)置可以保證在需要的時候?qū)υ即疟P文件做出相應(yīng)調(diào)整及修改,更好的適應(yīng)了實際需要。

第四實施例

本發(fā)明是在虛擬化管理系統(tǒng)現(xiàn)有的VHD格式磁盤快照接口基礎(chǔ)上,開發(fā)新的冰凍解凍還原業(yè)務(wù)接口,來實現(xiàn)虛擬機(jī)的冰凍還原功能。當(dāng)用戶虛擬機(jī)關(guān)機(jī)時,虛擬化管理中心啟動還原任務(wù),刪掉磁盤文件的葉子文件重新在冰凍點及還原點拉空的葉子文件,清除用戶數(shù)據(jù)使磁盤重新回到冰凍點即還原點狀態(tài),這樣由虛擬化管理中心對虛擬機(jī)磁盤文件的操作來實現(xiàn)冰凍還原。為使本發(fā)明目的、技術(shù)方案優(yōu)點更加清楚,下面對本發(fā)明所使用的技術(shù)方案做一個詳細(xì)的闡述。

一方面,對虛擬機(jī)做冰凍操作:這里借助于虛擬化管理中心提供虛擬機(jī)的冰凍功能接口,界面可以對關(guān)機(jī)狀態(tài)的VHD格式虛擬機(jī)設(shè)置還原點操作,虛擬機(jī)冰凍任務(wù)觸發(fā)后,后臺會對該虛擬機(jī)的磁盤文件基礎(chǔ)上新拉出一個空的葉子文件,冰凍點磁盤文件變?yōu)橹蛔x的父親節(jié)點文件,達(dá)到保留冰凍點即還原點數(shù)據(jù)的目的,同時虛機(jī)化管理中心將該虛擬機(jī)標(biāo)志為冰凍虛擬機(jī),表示該虛擬機(jī)做過冰凍,可以對該虛擬機(jī)做還原和解凍操作。

結(jié)合圖7,虛擬機(jī)的冰凍操作的具體流程如下:

用戶虛擬機(jī)默認(rèn)為非冰凍虛擬機(jī),此時的虛擬機(jī)狀態(tài)標(biāo)識為b_freeze=0,表示該虛擬機(jī)不處于冰凍狀態(tài),即不存在還原點,假設(shè)虛擬機(jī)創(chuàng)建好之后有一個磁盤,該磁盤文件節(jié)點為A,在虛擬化管理中心界面對用戶虛擬機(jī)做冰凍操作,則A為還原點,A變?yōu)橹蛔x,新拉出一個新的節(jié)點B,A節(jié)點由可讀可寫變?yōu)橹蛔x,該虛擬機(jī)的任何改變只能體現(xiàn)在可讀可寫的節(jié)點B上,從而保留還 原點處虛擬機(jī)的狀態(tài),還原點設(shè)置好后,該虛擬機(jī)狀態(tài)標(biāo)志變?yōu)閎_freeze=1。

另一方面,對虛擬機(jī)做還原操作:虛擬化管理中心提供虛擬機(jī)的還原功能接口,分為兩種策略,其一,手動觸發(fā)還原,即由用戶在界面對關(guān)機(jī)狀態(tài)的冰凍虛擬機(jī)直接做還原冰凍點操作,其二,關(guān)機(jī)自動還原,即虛擬機(jī)在關(guān)閉時,后臺自動觸發(fā)還原虛擬機(jī)到冰凍點,此時如果對應(yīng)于對該虛擬機(jī)的磁盤文件進(jìn)行快照處理的話,則后臺自動觸發(fā)還原虛擬機(jī)快照點的狀態(tài)。用戶可根據(jù)需要自行設(shè)置還原策略,虛擬機(jī)還原任務(wù)觸發(fā)后,后臺刪除保存用戶數(shù)據(jù)的葉子文件,從而清除用戶新產(chǎn)生的數(shù)據(jù)使磁盤回到冰凍點及還原點狀態(tài),同時從父親節(jié)點重新拉出一個新的節(jié)點,用于存儲接下來的用戶數(shù)據(jù)。

結(jié)合圖8,虛擬機(jī)的還原操作的具體流程如下:

已經(jīng)冰凍的用戶虛擬機(jī)磁盤由裝載有只讀的磁盤文件的父節(jié)點A和子節(jié)點B組成,用戶新修改的數(shù)據(jù)全部體現(xiàn)在子節(jié)點B上,A為還原點,若根據(jù)還原策略需要對虛擬機(jī)做還原操作,則刪除保存用戶數(shù)據(jù)的葉子節(jié)點B,同時從父親節(jié)點A處重新拉出一個新的空子節(jié)點C,磁盤便回到冰凍點,后續(xù)用戶新修改的數(shù)據(jù)全部更新在新的子節(jié)點C上,此時虛擬機(jī)狀態(tài)標(biāo)志b_freeze仍為1保持不變。

另一方面,對虛擬機(jī)做解凍操作:虛擬化管理中心提供虛擬機(jī)的解凍功能接口,界面可以對關(guān)機(jī)狀態(tài)的已凍結(jié)虛擬機(jī)設(shè)置解凍操作,虛擬機(jī)解凍任務(wù)觸發(fā)后,后臺會首先刪除葉子文件,并從父親節(jié)點重新拉出一個新的節(jié)點,用于存儲接下來的用戶數(shù)據(jù),即先將虛擬機(jī)還原到冰凍點,然后虛擬化管理中心將該虛擬機(jī)狀態(tài)標(biāo)識設(shè)置為解凍虛擬機(jī),表示該虛擬機(jī)已解除冰凍,用戶可以再次自行選擇對虛擬機(jī)做冰凍操作。

結(jié)合圖9,虛擬機(jī)的解凍操作的具體流程如下:

已經(jīng)冰凍的用戶虛擬機(jī)磁盤由只讀的父節(jié)點A和子節(jié)點B組成,用戶新修改的數(shù)據(jù)全部體現(xiàn)在葉子節(jié)點B上,A為還原點,若需要對虛擬機(jī)做解除冰凍操作,則刪除保存用戶數(shù)據(jù)的葉子節(jié)點B,同時從快照父親節(jié)點A處重新拉出一個新的空子節(jié)點C,磁盤回到冰凍點狀態(tài),后續(xù)用戶新修改的數(shù)據(jù)全部更新在新的子節(jié)點C上,虛擬機(jī)狀態(tài)標(biāo)志b_freeze由1置為0,表示該虛擬機(jī)已經(jīng)為非冰凍虛擬機(jī),可以再次選擇新的冰凍點對虛擬機(jī)做冰凍,解凍后的虛擬 機(jī)由節(jié)點A和節(jié)點C組成,若此時再對虛擬機(jī)作冰凍操作,則C作為新的還原點,由可寫變?yōu)橹蛔x,C上新拉節(jié)點D,用于體現(xiàn)用戶數(shù)據(jù)的改變。

第五實施例

如圖4所示,本發(fā)明還公開了一種虛擬機(jī)的磁盤文件的處理裝置,該磁盤文件存儲于第一節(jié)點上,該裝置包括:生成模塊401、第一存儲模塊402、第一設(shè)置模塊403。

其中,生成模塊401,用于在創(chuàng)建還原點時,根據(jù)虛擬機(jī)的磁盤文件生成第一葉子文件,并將磁盤文件標(biāo)記為還原點的文件,其中,第一葉子文件用于記錄后續(xù)用戶新修改的用戶數(shù)據(jù);第一存儲模塊402,用于將第一葉子文件存儲于第二節(jié)點上,第一節(jié)點為第二節(jié)點的父節(jié)點;第一設(shè)置模塊403,用于將磁盤文件的讀寫屬性設(shè)置為只讀屬性,將第一葉子文件的讀寫屬性設(shè)置為可讀可寫屬性,以及將虛擬機(jī)的狀態(tài)標(biāo)識設(shè)置為冰凍狀態(tài)。

本發(fā)明的上述處理裝置,以虛擬機(jī)中原始磁盤文件為還原點,在虛擬機(jī)的磁盤文件基礎(chǔ)上生成葉子文件,通過葉子文件來記錄后續(xù)用戶新修改的用戶數(shù)據(jù),將后續(xù)的用戶操作數(shù)據(jù)與原始磁盤文件分隔開來進(jìn)行獨立記錄,避免其他用戶的操作對磁盤文件進(jìn)行修改,在后續(xù)還原過程中,只需將存儲有后續(xù)的用戶操作數(shù)據(jù)的葉子節(jié)點進(jìn)行刪除即可實現(xiàn)對虛擬機(jī)的還原,使得整個還原過程簡潔易實現(xiàn),避免了還原操作導(dǎo)致的輸入輸出過高的問題。

進(jìn)一步地,其中生成模塊401還包括:快照模塊4011。

其中,該快照模塊4011,用于在創(chuàng)建還原點時,對虛擬機(jī)的磁盤文件進(jìn)行快照處理,根據(jù)快照處理得到的文件生成第一葉子文件。

如圖5所示,該裝置還包括:獲取模塊501、第一還原模塊502、第二存儲模塊503、第二設(shè)置模塊504。

其中,獲取模塊501,用于獲取一還原指令;第一還原模塊502,用于根據(jù)該還原指令,刪除第一葉子文件,并根據(jù)虛擬機(jī)的磁盤文件生成第二葉子文件,其中,該磁盤文件為該還原點的文件,第二葉子文件用于記錄后續(xù)用戶新修改的用戶數(shù)據(jù);第二存儲模塊503,用于將第二葉子文件存儲于第三節(jié)點上,其中,第一節(jié)點為第三節(jié)點的父節(jié)點;第二設(shè)置模塊504,用于將第二葉子文件的讀寫屬性設(shè)置為可讀可寫屬性。

其中,該還原指令為在檢測到虛擬機(jī)進(jìn)入關(guān)閉狀態(tài)時自動觸發(fā)或由用戶手動進(jìn)行觸發(fā)。

更進(jìn)一步地,如圖6所示,該裝置還包括:第二還原模塊505、第三存儲模塊506、第三設(shè)置模塊507。

其中,第二還原模塊505,用于在虛擬機(jī)的解凍任務(wù)觸發(fā)后,刪除第一葉子文件,并根據(jù)虛擬機(jī)的磁盤文件生成第三葉子文件,其中,該磁盤文件為還原點的文件,第三葉子文件用于記錄后續(xù)用戶新修改的用戶數(shù)據(jù);第三存儲模塊506,用于將第三葉子文件的讀寫屬性設(shè)置為可讀可寫屬性,將第三葉子文件存儲于第四節(jié)點上,其中,該第一節(jié)點為第四節(jié)點的父節(jié)點;第三設(shè)置模塊507,用于將虛擬機(jī)的狀態(tài)標(biāo)識設(shè)置為解凍狀態(tài)。

相對應(yīng)地,該裝置還包括:第四設(shè)置模塊,用于在虛擬機(jī)的解凍任務(wù)觸發(fā)后,將磁盤文件的讀寫屬性設(shè)置為可讀可寫屬性,將該虛擬機(jī)的狀態(tài)標(biāo)識設(shè)置為解凍狀態(tài)。

上述方案中提到的裝置,在虛擬機(jī)的后續(xù)還原過程中,只需將存儲有后續(xù)的用戶操作數(shù)據(jù)的葉子節(jié)點進(jìn)行刪除即可實現(xiàn)對虛擬機(jī)的還原,其中對冰凍狀態(tài)的設(shè)置可以確保對虛擬機(jī)作重復(fù)的還原操作,對冰凍狀態(tài)的解除設(shè)置可以保證在需要的時候?qū)υ即疟P文件做出相應(yīng)調(diào)整及修改,更好的適應(yīng)了實際需要,使得整個還原過程簡便易實現(xiàn),避免了還原操作導(dǎo)致的輸入輸出過高的問題。

本說明書中的各個實施例均采用遞進(jìn)的方式描述,每個實施例重點說明的都是與其他實施例的不同之處,各個實施例之間相同相似的部分互相參見即可。

盡管已描述了本發(fā)明實施例的優(yōu)選實施例,但本領(lǐng)域內(nèi)的技術(shù)人員一旦得知了基本創(chuàng)造性概念,則可對這些實施例作出另外的變更和修改。所以,所附權(quán)利要求意欲解釋為包括優(yōu)選實施例以及落入本發(fā)明實施例范圍的所有變更和修改。

最后,還需要說明的是,在本文中,諸如第一和第二等之類的關(guān)系術(shù)語僅僅用來將一個實體或者操作與另一個實體或操作區(qū)分開來,而不一定要求或者暗示這些實體或操作之間存在任何這種實際的關(guān)系或者順序。而且,術(shù)語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者終端設(shè)備不僅包括那些要素,而且還包括沒 有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者終端設(shè)備所固有的要素。在沒有更多限制的情況下,由語句“包括一個……”限定的要素,并不排除在包括所述要素的過程、方法、物品或者終端設(shè)備中還存在另外的相同要素。

以上所述的是本發(fā)明的優(yōu)選實施方式,應(yīng)當(dāng)指出對于本技術(shù)領(lǐng)域的普通人員來說,在不脫離本發(fā)明所述的原理前提下還可以作出若干改進(jìn)和潤飾,這些改進(jìn)和潤飾也在本發(fā)明的保護(hù)范圍內(nèi)。

當(dāng)前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1