如何應對云計算環境下 VMware 虛擬機備份挑戰?
一、可行性評估
1.1 背景
2016年初國家出臺《中國金融業信息化“十三五”發展規劃(征求建議稿)》[1] 強調“科學利用云服務,提升金融服務能力和效率”。同年7月《中國銀行業信息科技“十三五”發展規劃監管指導意見(征求意見稿)》[2 ]明確提出:積極開展云計算架構規劃,主動和穩步實施架構遷移。在中國信通院2018年金融行業云計算技術調查報告中顯示參與調查的機構中近九成金融機構已經或正計劃應用云計算技術。這其中,近1/3 已經部署了小規模以上(>500)的虛擬服務器;vmware 和openstack 占比為2.67:1;openstack用于生產環境占總環境不足20%[3]。在金融行業生產環境中vmware架構為主流架構。
另一方面,金融業競爭日益加劇,業務對IT技術呈現極強的依賴性,對IT系統的可用性、連續性、安全性提出更高要求。以合理的成本構建vmware環境下完備的高可用體系才能適應新形勢要求。雖然vmware提供FT、HA等特性在一定程度上保障了業務連續性,但是仍無法應對數據意外的的丟失如人為誤刪、意外覆蓋或存儲介質損壞等,因此從備份副本中恢復數據尤為重要。
對于vmware虛擬化環境下的備份系統建設,金融企業主要面對以下挑戰:
1. 有限的備份窗口及帶寬:按照小型虛擬機(硬盤配置50GB),以目前虛擬數據中心主流規模1000 臺進行計算每天需要備份數據為50TB。在數據中心常用的千兆網環境下,無法預留出足夠的備份窗口。即使在萬兆帶寬條件下,每天全量備份時間最少需要14小時,也很難滿足業務需求。
2. 備份介質存儲開銷:以每天備份一次,每個副本保留7天計算,總計保存7個副本,需要存儲容量為350TB(50TB*7),存儲備份數據帶來巨大開銷。
3. 額外運維成本:為加快運營響應速度,需要頻繁地對業務系統虛擬機進行新增、刪除、遷移、重命名等變更操作。備份策略需要及時配合變更,增加額外運維開銷。
4. 有限恢復窗口:金融行業對于業務連續性要求近乎苛刻。在部分數據丟失情況,卻需恢復整體數據,漫長的恢復時間對于金融行業無法接受。
在有限帶寬和存儲空間下快速對大規模Vmware虛擬機集群進行備份,成為金融業迫切需求之一。
1.2 項目價值
數據是金融業務系統的核心,當前環境下大量生產業務系統運行在Vmware虛擬機中。Vmware虛擬化后端存儲分為集中式存儲、分布式存儲、本地存儲。存儲資源池化提高了資源利用率的同時也集中了故障風險。任一存儲的故障都會帶來數10臺甚至數百臺虛擬機的數據丟失為金融企業帶來不可估量的損失。對Vmware虛擬機整機備份可以在人為操作失誤,軟件缺陷,硬件異常,自然災害等諸多意外情況下保證數據完整性,有效性。
1.3 項目預期
在現有千兆網絡帶寬條件下,按照8小時備份窗口對于所有生產虛擬機自動進行整機備份。備份頻率為每日進行一次備份。備份數據按照業務系統等級保留多個副本。確保在系統故障情況下快速恢復業務,在數據丟失情況下能按照整機或者文件顆粒快速恢復數據。需提供解決方案以在Vmware環境變化時,自動更改備份策略適應新環境。不改變現有網絡架構前提下避免大規模企業網絡架構調整帶來額外開銷。采用重刪算法,以數十倍的重刪比降低存儲備份介質消耗,節省存儲資源。
1.4 重大風險揭示與管理:
在解決方案實施過程中,企業虛擬化環境可能會存在多個版本及配置。對備份任務執行效果帶來負面影響。提前調研企業虛擬化環境,收集確認各組件版本信息以及每套虛擬機配置信息。在備份方案實施之前對各組件進行升級解決已知BUG或變更配置優化效率。由于***備份為全量備份需要耗費較多時間,按照現有網絡帶寬對初始備份任務進行分批規劃,提前安排***備份時間。
1.5 預算評估:
預算構成分為軟件許可費用和硬件費用兩部分。
軟件許可費用至少包含以下:
1. 重刪容量許可
2. 虛擬機備份許可。
硬件費用包含以下:
按照業務類型、網絡類型以及監管要求將虛擬機分成不同的備份任務集。考慮到日后一定時間內增長情況按照1:50重刪比進行估算購置等量空間備份介質存儲設備。
為了控制成本,可以考慮將備份系統運行在虛擬化環境中。每套服務器配置多張網卡,將備份介質服務器綁定到單獨物理網卡獨占帶寬。
1.6 關鍵技術路線選型
目前市面上提供了多款虛擬化備份軟件,例如Veeam、Networker、nbu以及vmware公司的vdp(在之后的vmware產品中將不再可用[4])。后端存儲可以選擇集中式塊存儲、datadomain、msdp。各主流廠商基本上都采用調用Vsphere-Api技術進行備份實現。解決方案分為軟硬件一體化解決方案例如Veeam、avamar、NBU一體機或備份軟件+重刪磁盤陣列方案例如Nbu+msdp/datadomain、Networker+datadomain等。
在進行選型之前,首先應考慮公司Vmware虛擬化環境當前運行架構,例如是否包含萬兆網、是否包含SAN網絡等選擇合理解決方案。在選型過程中,除了考慮備份效率還需著重對備份任務管理進行考量。例如備份策略的建立、維護、備份報表的生成、與公司已有備份架構的融合。參考其他特性以及成本完成最終的產品選型。
2 方案設計
2.1 項目目標
項目目標包含以下四個方面
1. 在規定備份時間窗口內完成備份任務。
2. 建立智能備份策略。
3. 自動生成報表。
4. 實現即時恢復。
2.2 項目的整體架構以及組成部分說明
以下為使用NBU解決方案的典型的Vmware虛擬化邏輯架構。架構圖中每套宿主機配置三個網絡,分別為千兆數據網、千兆管理網、SAN網絡。由此將管理流量、業務流量、存儲流量相分離,避免互相影響。由于管理網主要用于監控數據、故障切換、Vmotion,常規情況下流量不大。備份流量雖然在任務發起期間會占用大量管理帶寬,但是考慮到備份任務一般在業務低峰期發起,因此對管理網影響有限。另一方面,管理流量和業務流量、存儲流量相分離的設計方案保證了業務帶寬和存儲帶寬使得業務可用性不受影響。架構中包含若干套NBU-MSDP服務器完成備份數據重刪,增加并發備份流,提高備份速度。
按照合規性與安全性要求,金融機構多區域隔離,備份集需存放在不同分區中。在實踐中對備份數據重刪比可達:99.1%左右。按照1000臺虛擬機平均每套200GB計算,每天備份一次,每次保留7天,共需要1400TB,所需存儲空間為12.6TB。當前市場上主流2U-X86服務器可以容納24塊2.5寸硬盤,裸容量可達48TB,因此建議采用虛擬機形式構建不同重刪池,以符合監管強隔離規定,兼顧管理、擴展性。此外,由于備份時會占用大量帶寬,建議盡可能將備份介質服務器和所需備份集群規劃在同一交換機中,節省交換機上聯帶寬。
2.3 關鍵技術
Vmware-CBT:
ESX/ESXi 主機上運行的虛擬機可以跟蹤更改了的磁盤扇區。 此功能被稱為塊修改跟蹤,記錄變更塊(CBT)[5]。CBT是備份系統高效備份的關鍵,能顯著提高備份速度,降低備份數據存儲空間。在許多文件系統上,CBT在兩個變更集 ID 之間識別修改了的磁盤扇區。在VMFS分區上,CBT還可以識別所有正在使用的磁盤扇區。可從虛擬機外部到虛擬化層中對虛擬磁盤的塊修改進行跟蹤。當軟件執行備份時,它可以請求僅傳輸自上次備份以來更改的數據塊或正在使用的數據塊。第三方應用程序可以訪問此功能。通過調用 VADP,應用程序可請求VMkernel 返回自上次備份快照以來虛擬磁盤上已更改的數據塊。
要使 CBT 識別自上次更改ID以來已更改的磁盤扇區,需要滿足以下條件:
1. 主機必須是 ESX/ESXi 4.0 或更高版本。
2. 包含要進行磁盤跟蹤的虛擬機的硬件版本必須是7或更高版本。
3. I/O 操作必須通過 ESX/ESXi 存儲堆棧。因此,NFS 和虛擬兼容模式下的RDM 受支持,但物理兼容模式下的 RDM 不受支持。而對于VMFS、SAN、iSCSI 或本地磁盤都提供支持。
4. 必須為虛擬機啟用 CBT。當備份日志中出現:更改塊跟蹤配置不正確 (Incorrect changed block tracking configuration)、磁盤“硬盤編號”的更改塊跟蹤配置不正確 (Disk "Hard disk #" has incorrect changed block tracking configuration)、一個或多個虛擬機磁盤的更改塊跟蹤配置不正確(One or more VM disks have incorrect changed block tracking configuration)時,此類虛擬機的CBT功能可能未開啟。需按照[6]中所示開啟。
5. 虛擬機存儲不能是獨立磁盤(持久性和非持久性的)
而在一些情況下,例如虛擬機啟動時發生電源故障或硬關閉等情況,CBT 可能會重置和丟失增量變更的跟蹤記錄。在vSphere 4.1和之前的版本中,冷遷移(而不是Storage vMotion)會重置CBT,但不能禁用 CBT。在vSphere 5.5 Update 2 之前的 vSphere 5.x 版本中,Storage vMotion會重置CBT。如果出現此類情況,需要預先預留出足夠時間窗口進行全備。
在實踐中,發現有些ESXI版本會導致CBT功能失效。例如[7],CBT堆耗盡導致備份效率下降。此時在/var/log/vmkernel.log中顯示
重刪池:
Vmware備份方案中一定要使用重刪功能,可以通過Veeam、Vdp、NBU-MSDP軟件實現或使用后端重刪池例如NBU一體機、Avamar、Datadomain來實現。
使用重刪設備能夠:
- 減少存儲的數據量。
- 減小備份帶寬。
- 減少備份時段。
- 減少基礎架構。
以下為MSDP部署***做法,詳細請參考[8]
1.逐漸增加作業數。
2.使用客戶端重復數據刪除來擴展重復數據刪除處理以提高性能。
3.擴展備份介質服務器提高并發流,提高備份效率。
構建智能策略:
由于虛擬化平臺中的虛擬機經常變更,因此配置智能策略自動發現,添加備份任務對于降低金融企業運維人員壓力尤為重要。在金融企業中不同集群往往代表不同的業務區域。以下以NBU為例:說明一個自動發現策略:
在虛擬機備份策略中增加自動字段:
Cluster anyof “1-管理區” AND NOT [backneed] equal “0”
“1-管理區”代表集群名稱,[backneed]代表VM中自定義字段,過濾不需要備份的虛擬機如:大量讀寫IO特性的vm(快照靜默會使虛擬機夯住)。
通過這些條件的組合就能自動過濾,隔離備份虛擬機。
其他前置條件:
各備份軟件對備份環境有各別特殊要求,例如NBU備份vmware前提條件(詳細請參考[9])
1.在計劃備份的虛擬機上安裝 VMware Tools。
2.在低版本NBU中Vm不能采用中文名命名
3.在Linux 虛擬機上,NetBackup 需要一個特殊的實用程序 (SYMCquiesce) 來靜默文件系統,為創建快照做準備。如果沒有SYMCquiesce,在創建快照時,NetBackup 無法保證該文件系統中的數據處于一致狀態。
2.4 設備清單(可選)
除去vmware產品,備份項目中需采購的產品主要分為備份軟件和后端重刪存儲兩部分。具體設備根據選型方案所定。
2.5 關鍵設備選型(可擴展問題)
選型時候考慮以下幾點
1. 備份效率
Vmware規模隨著數據中心規模會迅猛增長,備份系統的并行能力尤為重要。因此要求備份軟件支持多節點部署。
2. 管理效率
Vmware集群在上線后,變更頻繁。高效的管理功能能大幅減輕運維人員壓力。例如:本文之前提到的自動發現、報表等功能。
3. 恢復效率
大多數數據恢復并不需要完全恢復vm,直接通過NAS方式掛載出備份鏡像,臨時恢復出其中需要的文件能達到文件級別細粒度恢復,大幅度提升運維效率。
4. 其他新特性
備份產品處于在不斷更新中總是能夠提供更好的特性,綜合考慮各家產品新特性,選出最適合自己的產品。
參考文檔:
[1] 《中國金融業信息化“十三五”發展 規 劃(征求建議稿)》
[2] 《中國銀行業信息科技“十三五”發展規劃監管指導意見(征求意見稿)》
[3] 《金融行業云計算技術調查報告 》中國信息通信研究院2018年3月
[4] https://kb.vmware.com/s/article/2149614
[5] https://kb.vmware.com/s/article/2076678
[6] https://kb.vmware.com/s/article/2078214
[7] https://kb.vmware.com/s/article/2116126
[8] Symantec NetBackup™ Deduplication 指南
[9] Symantec NetBackup™ for VMware 管理指南
本文作者:沈志鑫,主要從事私有云、備份系統建設與運維支持工作。熟悉x86服務器、各類存儲架構、VMWARE、NBU、BMC等平臺的運維及管理。