一、概述
虛擬化備份技術最早是由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週每天的備份情況以及業務影響情況,發現備份異常或影響正常業務要及時調整備份策略,不斷優化備份方案直至備份穩定。
五、總結
虛擬化備份專案看似簡單,但需要從虛擬機器數量、儲存架構、網路架構、備份計畫週期等多方面考慮備份方案,結合虛擬化平台的實際情況來確定實施流程,並不斷優化備份策略。

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

VSCode Windows 64位元 下載
微軟推出的免費、功能強大的一款IDE編輯器

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

SecLists
SecLists是最終安全測試人員的伙伴。它是一個包含各種類型清單的集合,這些清單在安全評估過程中經常使用,而且都在一個地方。 SecLists透過方便地提供安全測試人員可能需要的所有列表,幫助提高安全測試的效率和生產力。清單類型包括使用者名稱、密碼、URL、模糊測試有效載荷、敏感資料模式、Web shell等等。測試人員只需將此儲存庫拉到新的測試機上,他就可以存取所需的每種類型的清單。

SublimeText3 英文版
推薦:為Win版本,支援程式碼提示!

Dreamweaver CS6
視覺化網頁開發工具