首頁  >  文章  >  帶你快速了解虛擬化備份

帶你快速了解虛擬化備份

-
-原創
2018-03-14 09:17:051961瀏覽

 一、概述

虛擬化備份技術最早是由VMware提供和發起的,隨著虛擬化應用在企業和各行業的普及,主流的備份產品基本上都支援VMware、Hyper-V 、Citrix和基於Xen或KVM衍生出來的虛擬化平台。

虛擬機器備份,不同於虛擬機器快照,虛擬機備份是虛擬化資料保護最重要的基礎措施。很多剛接觸虛擬化的使用者常將虛擬機器快照視為備份,其實是嚴重錯誤的。原因如下:

1.快照永遠無法成為虛擬化本機備份的解決方式。

2.一旦使用快照恢復先前的狀態就永遠無法回到現在狀態。

3.一旦虛擬機器磁碟檔案損壞,快照也隨之失效。

4.快照只能進行基於整個虛擬機器映像的恢復,無法做到檔案層級或套用粒度還原。

5.快照只能作為一種保護虛擬化快速復原的輔助手段。

6.不是所有的虛擬機器都能使用快照,但是所有的虛擬機器都可以使用備份。

7.過多的快照極度影響虛擬機器效能,同時快照建立或刪除過程中有可能損毀虛擬機器資料。

虛擬化平台備份目前有兩種主流備份方案,一種為無代理備份(Agentless),另一種為有代理備份(Agent)或稱為Guest OS等級備份。本文將透過分析對比無代理程式和有代理備份的優點、缺點來總結虛擬化備份的最佳實務經驗。

二、無代理備份分析

無代理備份通常是指,在虛擬機器上不需要安裝任何備份代理程式(或稱為客戶端、探針),透過在ESXI主機或Hypervisor叢集上部署一個或幾個代理虛擬機器(備份代理應用)來擷取備份VM。

無代理備份的優勢非常明顯:

1.部署安裝簡單,無需在每個虛擬機上安裝備份代理,僅透過配置hypervisor整合即可全自動部署完畢。

2.無代理程式備份充分利用虛擬化廠家提供的專用備份接口,在備份虛擬機時,可優化資源耗用,降低備份時虛擬機自身負載壓力。

3.在專屬適配的虛擬化平台上使用無代理備份產品,可實現一些虛擬化平台特有的備份、復原功能。 (如CBT\RCT區塊追蹤、瞬時復原、虛擬機複製等)

4.依虛擬化廠商宣傳,無代理備份和復原速度更快。

5.無代理程式備份在實作LAN-FREE或Server-Free備份方式上更有優勢。

正如上所述,無代理備份被許多備份廠家,特別是虛擬化廠家極力推崇。很多用戶也認為無代理備份能跟虛擬化平台結合比較好。

但實際應用上無代理備份也有很多問題,實際操作中,發現無代理備份的缺陷如下:

1.受限於虛擬化廠家提供的備份接口,部分無代理備份產品無法做到應用程式感知、細粒度資料復原以及RDM(裸磁碟對映)虛擬機器備份。

2.無代理程式備份對VM做備份時,虛擬化平台先對要備份的VM抓取快照,再將快照資訊傳遞給無代理備份軟體。而正是這個VM快照,對於高I/O或資料量極大的VM(TB級的VM)和有多磁碟結構的VM最容易出現問題,快照時間可能會持續數小時甚至數天。快照過程中一旦虛擬機器磁碟檔案出現異常,很有可能導致VM崩潰。在備份即將結束,刪除快照時也可能出現類似的情況。而且,虛擬化平臺本身快照經常出現無法靜默應用的情況。特別是資料庫類型VM,在復原時可能會出現資料一致性問題。

3.在實際場景下,無代理備份資源耗用並不比有代理方式低,而且在某些情況下消耗更多。無代理虛擬化備份需要特別注意CPU資源的消耗,因為宿主機器CPU是一種更有限的資源,通常1個core與6個或更多的虛擬機器共用。仔細分析,在備份時造成CPU使用率高峰有兩個主要原因。其一,當備份代理必須掃描整個檔案系統以查找符合備份條件的檔案(通常是自上次備份以來更改的那些檔案)時,CPU會出現峰值。例如,在增量備份或差異備份期間,這種目錄樹的遍歷非常耗時且需佔用大量CPU資源。其二,備份過程中的資料的實際傳輸會導致CPU出現峰值。目前虛擬化廠商針對第一個CPU峰值問題,相繼開發出了區塊追蹤技術(例如VMware的CBT、Hyper-V 2016的RCT等),透過追蹤底層磁碟區塊的改變,不再遍歷對比VM內的目錄文件,來優化增量\差異備份時的資源消耗,。

4.在真實場景下,無代理備份速度較慢。在不降低業務應用程式速度的情況下,無代理程式備份一般限制每個宿主機上同時備份2個VM。儘管無代理解決方案聲稱具有優勢,它們使用區塊追蹤技術,可減少傳輸的資料。但是無代理備份方法更多的採用是一種盲掃,需要對備份過程採用「拉取」方法,會降低CPU的速度。許多無代理備份產品可調整VM並發備份數量,一般最大為10-15個左右並發(最大數量限制也是由虛擬化平臺本身限制,且同備份軟體無關)。但在實際場景下,不建議開啟最大並發,會大幅加重虛擬化平台的負載壓力,要根據實際虛擬機器數量以及平台效能來決定最合理的並發備份數。

5.無代理程式備份嚴重依賴Tools類工具(例如VMware Tools、Hyper-v系統整合工具、KVM的virt-tools等),當VM的tools無法正常運作或沒有及時更新時,會導致無代理程式備份出現無法使用CBT/RCT區塊追蹤或快照異常、VM無法靜默等情況。

6.無代理備份通常要求虛擬機器所在儲存磁碟區至少保留有25%的剩餘空間,如果儲存空間不足,無代理備份快照會造成儲存卷告警或虛擬機快照失敗。

7.如果虛擬機器所在的儲存磁碟區發生掉磁碟或非活動狀態,無代理備份將會失敗。

三、有代理備份分析

有代理程式是指安裝在伺服器上執行特定功能的小型應用程式。常見的例子是備份應用程式在伺服器上安裝的用戶端,用於備份伺服器並為運行在該伺服器上的應用程式提供特定的服務。自從虛擬化流行起來後,有代理備份方式並不受虛擬化用戶歡迎。原因如下:

1.部署方式複雜,需要在要備份的虛擬機器中安裝客戶端代理程序,對於擁有龐大虛擬機器數量的使用者來說,這是個致命的問題。

2.軟體相容性問​​題,有代理方式在VM中安裝,通常要先做環境檢查,排除與備份軟體不相容的情況(例如防毒、系統相容性、特殊安全應用等) 。

3.當要備份的VM都過於集中在叢集中某幾台宿主機器時,會導致並發備份時宿主機資源負載加重,並衝擊業務虛擬網路。

4.有些備份軟體不具備針對實體設備的磁碟區塊追蹤功能,有代理備份時採用檔案層級備份,增量\差異備份時會加重VM的負載壓力。同時備份速度慢。

5.有代理相比無代理維護更困難。例如,關機的VM無法備份或個別VM基於安全需要只開放部分端口,導致代理程式無法連接或無法傳輸資料等。

儘管有代理備份方式在虛擬化環境下劣勢明顯,但自身也有很多優點:

1.備份VM時不依賴虛擬化平台快照,在Guest OS系統上直接調用系統快照(系統vss或LVM快照等),對於高I/O和資料量大的VM以及多磁碟結構VM的備份,穩定性較好。

2.備份VM時帶有應用程式感知,可支援Exchange、SQL-server、AD、Oracle、SharePoint、檔案等細粒度復原。

3.對於支援實體裝置區塊追蹤的備份軟體來說,有代理備份相比無代理備份備份和復原速度更快。

4.有代理備份在備份具有資料庫業務的虛擬機器時,可配置調取資料庫備份腳本,不僅可以單獨備份資料庫,還可讓資料庫的資料一致性更有保障。

5.有代理備份不受虛擬化平台並發備份數限制,只要網路能夠承受,並發VM備份數量無上限。

6.可支援的虛擬化平台廣泛,有代理備份方式幾乎可以支援所有的虛擬化平台,在軟體授權允許的情況下,基本不受虛擬化廠商限制。

四、虛擬化備份的實務經驗

根據自己在專案中的一些實作經驗,在大規模的虛擬機器備份上可以採用以下備份步驟(以VMware虛擬化為例):

1.在目前虛擬化平台中提取全部虛擬機器資訊到EXCEL表單中,將資料量大(超TB的)、多磁碟結構、RDM、核心資料庫類型(高I/O )、已掉儲存磁碟區(或所在的儲存磁碟區非活動狀態)的VM等全部篩選出來。在這類無法使用無代理備份的VM中安裝有代理備份。

2.上述類型以外的虛擬機器可採用無代理程式備份。

3.採用無代理程式備份虛擬機器(特別是Windows系統虛擬機器)務必確認VMware Tools已經正確安裝,且VMware Tools各項系統服務正常運作。有發生提示VMware Tools更新或無法運作的,需要及時更新VMware Tools或解除安裝重新安裝。

4.規劃備份網路架構,環境需求是否符合使用LAN-BASE\LAN-FREE\SERVER-FREE等設定需求。

1)傳統LAN-BASE架構中,無代理虛擬化備份網路要最少達到千兆網路標準(建議萬兆網路)。最佳實務建議,在每台ESXI主機上富餘至少一個實體網口,將該實體網口分配至備份專用虛擬網路中,備份資料透過每台ESXI主機上的專用網口走備份傳輸網絡,與業務網路隔離,避免備份時大數據量傳輸對業務網路造成衝擊。備份儲存伺服器,可考慮採用多網卡綁定,同時如果交換機支持,可在備份儲存伺服器連接的交換器連接埠上使用多鏈路匯聚方式,增加備份儲存伺服器頻寬。如無法滿足最佳實務要求,建議備份資料流走虛擬網路中負載壓力較低的非核心業務網段。

2)在LAN-FREE架構中,要特別注意實作前環境檢查,主要檢查VMFS磁碟區結構以及儲存狀態、多路徑對映、儲存LUN結構等。如發現虛擬化儲存中存在組合磁碟區(由多個儲存體lun組成的一個VMFS磁碟區),則此磁碟區VMware本身不支援LAN-FREE備份,且只能使用LAN-BASE方式。此外,LAN-FREE架構的備援涉及生產儲存mapping,實作有一定風險,若作業不當,後果嚴重。

3)Server-Free架構一般需要儲存裝置和備份軟體之間互相相容,不同的備份產品支援的儲存裝置不同,因此實際專案中使用該方法不多。

5.虛擬機器備份要準備單獨的備份儲存伺服器或備份儲存設備,且不可佔用寶貴的生產儲存空間。同時基於安全性考慮,備份資料如果同生產資料放置在同一儲存體上,一旦儲存發生故障,將無備份資料可供恢復。要做到備份資料同生產資料分開存放。

6.備份時間視窗規劃。任何備份產品在備份時都會對前端應用造成不同程度的業務影響。因此,在實施備份專案中,請務必預留備份時間視窗。備份時間窗口一般預留在業務較少時段,根據備份資料的總體大小以及傳輸率可大概計算備份所需時間。由於虛擬化平台虛擬機器數量多,建議依不同業務類型分割成虛擬機器群組,為虛擬機器群組預留不同的備份視窗。

7.虛擬機器備份週期直接影響資料可復原的時間點,因此,要針對不同業務的虛擬機器分組,依照RPO/RTO的要求制定不同的備份週期。

帶你快速了解虛擬化備份

#8.是否採用重複資料刪除。若要根據虛擬化儲存資料量、備份儲存所需空間以及備份時間視窗來決定是否採用重複資料刪除。如要備份的虛擬機器多,資料量大,且備份所需儲存空間不足,備份視窗時間短,採用重複資料刪除是最佳方案。但重複資料刪除對備份儲存伺服器硬體效能有一定要求,因此建議參考備份產品廠商要求配置重刪伺服器。此外,重刪有一定風險,一旦重刪資料庫損壞,所有備份將無法復原。建議對於開啟重刪的備份數據,一定要有第二份副本,盡量滿足備份的3-2-1原則要求。最後,重複資料刪除每個備份廠商均有最佳實務做法,但基本想法一致,一般先備份虛擬化平台中幾個典型虛擬機,之後再批量備份可達到最佳重刪效果。

9.無代理程式備份虛擬機器並發限制,一般建議一個備份計畫依照VMware預設2個虛擬機器並發備份為佳。可依虛擬化平台效能、網路頻寬使用綜合考量後,調整並發數量。但建議不要將並發數調整過多或啟用最大並發,否則虛擬化平台壓力極大,可能出現通訊問題,虛擬機業務出現意外,備份失敗。

10.根據業務制定好備份計劃,備份計劃之間要確保留有一定的時間間隔。避免在同一時間段,出現大量虛擬機器同時啟動備份的情況,造成網路和CPU負載大面積波動。

11.依據不同業務類型,決定備份保留週期。時效性強的業務建議備份可保留1-2週時間。需要歸檔的虛擬機器建議保留週期設定為3個月以上。保留週期同備份儲存使用率密切相關,因此要細緻規劃不同虛擬機組的資料保留時間。

12.採用有代理備份的Windows VM,為了部署方便,可採用遠端推送方式安裝備份代理程式。如果推送條件不滿足,則使用本機安裝。推送或本機安裝代理程式前一定要注意安裝環境檢查,可從修補程式、相容性、網路、設定等方面逐一檢查。

13.虛擬化備份方案實施後,要密切觀察1-2週每天的備份情況以及業務影響情況,發現備份異常或影響正常業務要及時調整備份策略,不斷優化備份方案直至備份穩定。

五、總結

虛擬化備份專案看似簡單,但需要從虛擬機器數量、儲存架構、網路架構、備份計畫週期等多方面考慮備份方案,結合虛擬化平台的實際情況來確定實施流程,並不斷優化備份策略。

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn