• / 11
  • 下載費用:30 金幣  

虛擬機的數據備份方法.pdf

關 鍵 詞:
虛擬機 數據 備份 方法
  專利查詢網所有資源均是用戶自行上傳分享,僅供網友學習交流,未經上傳用戶書面授權,請勿作他用。
摘要
申請專利號:

CN201310752376.3

申請日:

2013.12.31

公開號:

CN103678045A

公開日:

2014.03.26

當前法律狀態:

授權

有效性:

有權

法律詳情: 授權|||著錄事項變更IPC(主分類):G06F 11/14變更事項:申請人變更前:曙光云計算技術有限公司變更后:曙光云計算集團有限公司變更事項:地址變更前:100193 北京市海淀區東北旺西路8號院36號樓5層變更后:100193 北京市海淀區東北旺西路8號院36號樓5層|||實質審查的生效IPC(主分類):G06F 11/14申請日:20131231|||公開
IPC分類號: G06F11/14; G06F3/06 主分類號: G06F11/14
申請人: 曙光云計算技術有限公司
發明人: 李立; 王軍林; 唐明; 徐博; 成書晟
地址: 100193 北京市海淀區東北旺西路8號院36號樓5層
優先權:
專利代理機構: 北京德恒律治知識產權代理有限公司 11409 代理人: 章社杲;孫征
PDF完整版下載: PDF下載
法律狀態
申請(專利)號:

CN201310752376.3

授權公告號:

|||||||||

法律狀態公告日:

2017.11.21|||2017.08.25|||2014.04.23|||2014.03.26

法律狀態類型:

授權|||著錄事項變更|||實質審查的生效|||公開

摘要

本發明公開了一種虛擬機的數據備份方法,該方法包括:對一個或多個虛擬機中的多個磁盤中的數據進行快照,以生成快照文件,并將所生成的快照文件存入快照隊列中;在進行快照的過程中,對各磁盤中新增的數據進行補充快照,并將所生成的補充快照文件存入快照隊列中,直到磁盤中的所有數據被快照;以及當快照隊列中的快照文件與補充快照文件達到閾值時,將快照文件與補充快照文件備份到目標磁盤中。本發明通過將數據進快照及補充快照,在快照和補充快照文件達到閾值時進行文件轉移,從而縮短虛擬機備份的時間,并且在備份過程中持續運行虛擬機,減少了虛擬機備份過程中對物理服務器性能的影響,提高了虛擬機內存數據和磁盤緩存數據的一致性。

權利要求書

權利要求書
1.  一種虛擬機的數據備份方法,其特征在于,包括:
對一個或多個所述虛擬機中的多個磁盤中的數據進行快照,以生成快照文件,并將所生成的快照文件存入快照隊列中;
在進行所述快照的過程中,對各磁盤中新增的數據進行補充快照,并將所生成的補充快照文件存入所述快照隊列中,直到所述磁盤中的所有數據被快照;以及
當所述快照隊列中的所述快照文件與所述補充快照文件達到閾值時,將所述快照文件與所述補充快照文件備份到目標磁盤中。

2.  根據權利要求1所述的數據備份方法,其特征在于,守護線程被配置成截取寫入所述磁盤中的數據。

3.  根據權利要求2所述的數據備份方法,其特征在于,持續數據保護服務器截取寫入所述磁盤中的數據。

4.  根據權利要求2所述的數據備份方法,其特征在于,發送線程被配置成將所述快照文件與所述補充快照文件備份到所述目標磁盤中。

5.  根據權利要求1所述的數據備份方法,其特征在于,所述快照隊列中的所述快照文件與所述補充快照文件達到閾值包括所述快照隊列被所述快照文件與所述補充快照文件填滿。

6.  根據權利要求4所述的數據備份方法,其特征在于,當所述磁盤中的所有數據被快照后,發送線程被配置成將剩余的所述快照文件與所述補充快照文件備份到所述目標磁盤中。

7.  根據權利要求6所述的數據備份方法,其特征在于,當所述快照文件與所述補充快照文件備份到所述目標磁盤中之后,將所述虛擬機的配置文件備份到所述目標磁盤中。

8.  根據權利要求7所述的數據備份方法,其特征在于,在將所述虛擬機的配置文件備份到所述目標磁盤中之后,檢查點檢查所述數據與備份后的數據的一致性。

9.  根據權利要求7所述的數據備份方法,其特征在于,在將所述虛擬 機的配置文件備份到所述目標磁盤中之后,所述目標磁盤將備份結果上報給虛擬機管理器。

10.  根據權利要求1所述的數據備份方法,其特征在于,所述快照隊列設置在主機系統的內存中。

說明書

說明書虛擬機的數據備份方法
技術領域
本發明涉及計算機領域,主要涉及一種虛擬機的數據備份方法。
背景技術
根據現有的虛擬機備份技術,無論是小型的或是存放多達幾個TB數據的服務器,都可在幾分鐘內完成備份。但是,當數據規模達到TB級以上的時候文件拷貝將會占用大量時間、大量系統磁盤I/O、大量網絡帶寬以及大量內存,使得CPU利用率非常低,從而影響了虛擬機系統中的正常業務的運行性能。很明顯,這種方法不能滿足TB級數據的虛擬機備份要求。
并且,根據現有的虛擬機備份技術,虛擬機的備份必須先要關閉虛擬機或是先要暫停虛擬機后才能執行備份操作,這樣會影響業務7×24小時的不間斷運行,暫停過程會對虛擬機內實時性要求較高的應用帶來不良影響。存在這些問題的原因是虛擬機在備份的過程中保證了數據的一致性,而為了保證備份數據的完整一致性犧牲了業務的不可中斷性。
虛擬化基礎設施通常需要爭奪更多的數據,越多的應用程序產生的文件越多,越大,每個虛擬機本身也是一個大文件。單個虛擬機在進行備份的過程中,會消耗90%的服務器處理器和I/O資源,備份期間其它進程想要正常運行是非常困難的。如果備份單個虛擬機勢必會對物理服務器造成過度的資源消耗,其它處于運行中的虛擬機將受到不利影響,原因是物理服務器上的資源(包括CPU,內存,磁盤IO,網絡IO)采用虛擬化技術提供給虛擬機使用,很大程度上,虛擬機本身的性能是取決于物理主機服務上的資源性能。
在虛擬機執行備份之前,需要在物理服務器上安裝備份程序,在虛擬機備份過程中,備份程序的運行會影響物理主機的性能,因為備份程序不支持快照鏈接技術,會執行大量的數據拷貝操作。
針對相關技術中大量數據備份操作會影響虛擬機的本身業務的問題,目前 尚未提出有效的解決方案。
發明內容
針對相關技術中大量數據備份操作會影響虛擬機的本身業務的問題,本發明提出一種虛擬機的數據備份方法,能夠縮短虛擬機備份的時間,并且在備份過程中持續運行虛擬機,減少了虛擬機備份過程中對物理服務器性能的影響,提高了虛擬機內存數據和磁盤緩存數據的一致性。
本發明的技術方案是這樣實現的:
根據本發明的一個方面,提供了一種虛擬機的數據備份方法。
該數據備份方法包括:
對一個或多個虛擬機中的多個磁盤中的數據進行快照,以生成快照文件,并將所生成的快照文件存入快照隊列中;
在進行快照的過程中,對各磁盤中新增的數據進行補充快照,并將所生成的補充快照文件存入快照隊列中,直到磁盤中的所有數據被快照;以及
當快照隊列中的快照文件與補充快照文件達到閾值時,將快照文件與補充快照文件備份到目標磁盤中。
其中,守護線程被配置成截取寫入磁盤中的數據。
其中,持續數據保護服務器截取寫入磁盤中的數據。
其中,發送線程被配置成將快照文件與補充快照文件備份到目標磁盤中。
并且,快照隊列中的快照文件與補充快照文件達到閾值包括快照隊列被快照文件與補充快照文件填滿。
進一步地,當磁盤中的所有數據被快照后,發送線程被配置成將剩余的快照文件與補充快照文件備份到目標磁盤中。
此外,當快照文件與補充快照文件備份到目標磁盤中之后,將虛擬機的配置文件備份到目標磁盤中。
優選地,在將虛擬機的配置文件備份到目標磁盤中之后,檢查點檢查數據與備份后的數據的一致性。
可選地,在將虛擬機的配置文件備份到目標磁盤中之后,目標磁盤將備份結果上報給虛擬機管理器。
并且,快照隊列設置在主機系統的內存中。
本發明通過將數據進快照以及補充快照,在快照和補充快照文件達到閾值時進行文件數據轉移,從而縮短虛擬機備份的時間,并且在備份過程中持續運行虛擬機,減少了虛擬機備份過程中對物理服務器性能的影響,提高了虛擬機內存數據和磁盤緩存數據的一致性。
附圖說明
為了更清楚地說明本發明實施例或現有技術中的技術方案,下面將對實施例中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發明的一些實施例,對于本領域普通技術人員來講,在不付出創造性勞動的前提下,還可以根據這些附圖獲得其他的附圖。
圖1是根據本發明實施例的數據備份方法的流程圖;
圖2是根據本發明的一個實施例實現持續數據保護的方法的結構示意圖;
圖3是根據本發明的一個實施例的虛擬機回滾機制的體系結構的示意圖;
圖4是根據本發明的一個實施例的虛擬機備份的方法的流程圖。
具體實施方式
下面將結合本發明實施例中的附圖,對本發明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發明一部分實施例,而不是全部的實施例。基于本發明中的實施例,本領域普通技術人員所獲得的所有其他實施例,都屬于本發明保護的范圍。
根據本發明的一個實施例,提供了一種虛擬機的數據備份方法。
如圖1所示,根據本發明實施例的數據備份方法包括:
步驟S101,對一個或多個虛擬機中的多個磁盤中的數據進行快照,以生成快照文件,并將所生成的快照文件存入快照隊列中;
步驟S103,在進行快照的過程中,對各磁盤中新增的數據進行補充快照,并將所生成的補充快照文件存入快照隊列中,直到磁盤中的所有數據被快照;以及
步驟S105,當快照隊列中的快照文件與補充快照文件達到閾值時,將快 照文件與補充快照文件備份到目標磁盤中。
其中,守護線程被配置成截取寫入磁盤中的數據。
其中,持續數據保護服務器截取寫入磁盤中的數據。
其中,發送線程被配置成將快照文件與補充快照文件備份到目標磁盤中。
并且,快照隊列中的快照文件與補充快照文件達到閾值包括快照隊列被快照文件與補充快照文件填滿。
進一步地,當磁盤中的所有數據被快照后,發送線程被配置成將剩余的快照文件與補充快照文件備份到目標磁盤中。
此外,當快照文件與補充快照文件備份到目標磁盤中之后,將虛擬機的配置文件備份到目標磁盤中。
優選地,在將虛擬機的配置文件備份到目標磁盤中之后,檢查點檢查數據與備份后的數據的一致性。
可選地,在將虛擬機的配置文件備份到目標磁盤中之后,目標磁盤將備份結果上報給虛擬機管理器。
并且,快照隊列設置在主機系統的內存中。
根據本發明的一個實施例,提供了一種虛擬機的數據備份方法,其中,虛擬機備份包括虛擬磁盤、內存、CPU寄存器等部分的備份,可以通過快照、遷移、克隆、日志記錄等操作實現虛擬機備份。可以從下四個方面實現虛擬機備份:
一、虛擬機異步快照及存儲
快照功能相當于整個虛擬機的熱拷貝,盡管虛擬機還在保持運行,對于一個非常繁忙的系統,可能會短暫地中斷服務,但是快照的巨大優勢還是遠遠超過了短暫的停機時間。虛擬機快照技術通常針對虛擬磁盤進行,由于內存信息變化大,保存方式有兩種:1)暫停虛擬機運行,把內存拷貝到文件;2)通過虛擬機遷移來實現內存的保存。當采用較高的快照頻率或寫操作驅動的生成策略時,快照的生成可能導致較大的開銷,從而降低虛擬機運行速度,特別是I/O密集型的應用。為此,虛擬機備份過程中,本發明的技術方案引進了一種異步快照的方式以降低快照對虛擬機性能的影響,異步快照的主要思想流程如下:
1.當有快照生成請求時,首先將要寫入快照的磁盤塊及其快照時標寫入 內存中的一個快照隊列;
2.當快照隊列滿或隊列中的快照達到一定的閾值時,VMM(Virtual Machine Monitor,虛擬機)或快照服務將快照隊列中的全部或部分快照寫回磁盤;
3.當無快照生成請求時,VMM或是快照服務從快照隊列的頭部開始逐一將隊列中的快照寫回磁盤。
4.當快照尺寸和數量龐大時,可將快照保存在專門設計的共享存儲池中,從而提供虛擬機備份的速度。對于寫操作密集或快照頻率較高的應用,大量快照可能會占用大量的存儲空間,因此可以根據實際情況,將較早產生的快照進行壓縮存儲,轉儲。
二、持續數據保護技術的實現
根據本發明的一個實施例,提供了一種實現持續數據保護的方法,如圖2所示是實現持續數據保護的方法的結構示意圖。系統修改虛擬機管理中的磁盤讀寫部分代碼,截獲對磁盤的寫操作,并把數據發送到本地內存中的一個隊列。內存中的隊列,用來緩存CDP數據,并發送到遠程備份站點。采用多線程設計,一個線程作為守護線程用來截獲接受CDP數據并緩存;另一個線程用來進行發送數據到遠程備份站點。
由于科技發展,對數據的可靠性提出了更高的要求,傳統的數據備份方法已經不能滿足需求,通過持續數據保護,才能在意外發生時將數據的損失降到最低,使服務中斷的時間最短,使得可以恢復到以前時刻的任意一點,并且,存儲的數據和恢復時間都在可以接受范圍內。
三、回滾機制的實現
系統不需要對系統中發生的所有事件進行記錄,僅僅記錄影響進程執行的不確定事件以及這些事件發生的位置或者時間點,在必要的時候通過這些記錄信息重構系統之前運行狀況。如圖3所示是根據本發明的一個實施例的虛擬機回滾機制的體系結構的示意圖,其中,回滾機制的實現流程如下:
1.在本地虛擬機內部實現:管理器,操作界面,用來執行命令,設置參數,執行回滾操作等待;
2.CDP服務器用來截獲系統寫數據,然后自適應傳送到備份點;
3.檢查點用來保存系統的CPU數據和內存數據,需要進行一致性的檢查,并把結果存放到檢查點的數據中。
這個回滾體系結構把當前版本和歷史版本分開,這樣的分割可以幫助提供快速的讀取,由于在訪問虛擬磁盤時沒有重定向,虛擬磁盤維持地址來保證順序訪問的性能不受影響。
四、自適應算法的實現
系統在自適應發送數據時,需要搜集系統的性能參數,其中,性能參數包括CPU利用率、內存使用率、磁盤空間、磁盤I/O、網絡流量等數據。具體就是提取四個反應系統性能的因子:1)CPU利用率Uc、2)系統I/O使用率Ui、3)內存使用率Um、4)網絡帶寬使用率Un。并且為每個因子賦予一定的比重,則分別對應Rc、Ri、Rm、Rn,綜合影響因子P可以用以下公式得出:P=Rc*Uc+Ri*Ui+Rm*Um+Rn*Un。
修改虛擬機管理軟件,讓其截獲客戶操作系統的寫操作,然后通過有名管道把寫的數據發送給守護線程,這樣既保證了數據的可靠性,并且保證了數據塊的順序。為了有一個標準的判斷,系統計算了一個P0,如果P大于P0,說明系統處于比較忙的狀態,系統盡量減少數據的發送。如果小于P0,系統認為處于空閑狀態,可以發送較多的數據,并且P越小發送的越多。
其中,數據接受算法包括:
(1)、打開管道,讀取數據,如果沒有則進入休眠;
(2)、分配內存,把讀取的數據放到內存隊列內,等待發送;
(3)、如果服務完成,關閉管道。
數據發送算法包括:
(1)、獲取當前系統的性能U,隊列長度,當前指針和尾指針;
(2)、如果P<P0,則發送當前指針指向的數據塊,并相應的移動指針,P0越小發送的數據越多,如果P>P0,則減少發送的數據塊,甚至不發送;
(3)、如果遇到尾指針,則說明隊列為空,停止發送。
自適應算法參數信息的獲取包括:
(1)、CPU信息的獲取,在文件“/proc/stat”里面就包含了CPU的信息,包括CPU的tick使用信息。計算單位時間里面CPU的負載,只需要計算1秒 前后數值的差除以每一秒的tick數量就可以了。計算公式為:((200*(V1-V2)/CPU_TICKS_PER_SECOND)+1)/2,其中V1,V2為兩次讀取的數值。
(2)、內存消耗,在文件“/proc/meminfo”里面包含了內存的信息,還包含了swap的信息。
(3)、磁盤I/O的數據,在文件“/proc/partitions”里面,需要隔一段時間取值,兩次取值的差就是流量。
網絡流量,在文件“/proc/net/dev”里面獲取。同樣也是需要兩次取值其差作為流量值。
五、虛擬機備份的實現
根據本發明的一個實施例,可以結合虛擬機磁盤鏡像文件快照技術和快照合并技術實現虛擬機備份,如圖4所示,為根據本發明的一個實施例的虛擬機備份的方法的流程圖,包括:
指定虛擬機的備份點;
在備份點中,判斷對虛擬機做快照是否成功,對虛擬機做快照失敗,則返回異常;
對虛擬機做快照成功,則根據備份點中的快照文件查找父磁盤鏡像文件;
檢查點異步執行,采用持續數據保護技術將虛擬機的內存信息同步到備份點指定路徑,直到內存同步完成后,再同步虛擬機的其他配置文件到備份點;
在備份點中,將新創建的快照文件重命名為Base快照文件,并制作基于Base快照文件的新快照文件;
將備份點中的虛擬機Base快照文件的內容合并到父磁盤鏡像文件中去,速度極快,可在1分鐘內完成操作;
拷貝虛擬機父磁盤鏡像文件到備份點的指定目錄,推薦父磁盤鏡像文件使用稀疏格式;
管理監聽等待所有數據同步完成的事情發生,這樣可實現虛擬機的備份。
本發明的技術方案的虛擬機備份是基于在共享存儲(也可以不是共享存儲)的環境下利用快照技術和快照合并技術完成的,所以備份速度會比較快。在備份過程中采用了持續數據保護技術來保證了虛擬機備份前后內存文件的 一致性。在備份恢復時候采用了回滾技術,就可以保證虛擬機在異常發生的情況下,可以重構恢復到過去的某一個時間點的狀態。
綜上所述,借助于本發明的上述技術方案,通過將數據進快照以及補充快照,在快照和補充快照文件達到閾值時進行文件數據轉移,從而縮短虛擬機備份的時間,并且在備份過程中持續運行虛擬機,減少了虛擬機備份過程中對物理服務器性能的影響,提高了虛擬機內存數據和磁盤緩存數據的一致性。虛擬機備份是解決了虛擬磁盤鏡像文件安全性的一種途徑;解決了傳統虛擬機備份過程中占用太多的物理服務器系統資源;解決了虛擬機中對實時性要求比較苛刻的應用需求。管理員在任何時間點執行備份的過程中,保護了虛擬機內存的安全性,同時,也解決了運行時虛擬機磁盤鏡像文件緩存的一致性。本發明技術方案可以實現備份虛擬機過程中業務不中斷,備份虛擬機過程中不影響其他虛擬機的性能,對備份后的虛擬機進行快速恢復,虛擬機恢復到備份的時間點,保證內存數據一致性,以及虛擬機的備份和恢復均一鍵完成,操作簡捷,管理自動化。
以上所述僅為本發明的較佳實施例而已,并不用以限制本發明,凡在本發明的精神和原則之內,所作的任何修改、等同替換、改進等,均應包含在本發明的保護范圍之內。

關于本文
本文標題:虛擬機的數據備份方法.pdf
鏈接地址:http://www.pqsozv.live/p-6180663.html
關于我們 - 網站聲明 - 網站地圖 - 資源地圖 - 友情鏈接 - 網站客服 - 聯系我們

[email protected] 2017-2018 zhuanlichaxun.net網站版權所有
經營許可證編號:粵ICP備17046363號-1 
 


收起
展開
钻石光影