「工程師筆記」VxRail數據服務最佳實踐
本文主要討論戴爾易安信超融合一體機VxRail的數據服務,包括去重和壓縮、存儲空間效率和服務質量限制QoS、糾刪碼、數據完整性軟體校驗和,以及VxRail設備的高可用性故障域。供規劃、安裝和維護VxRail的人員參考。
VxRail數據服務的最佳實踐
最新IDC報告顯示,戴爾易安信在2018年第二季度以28.8%的市場份額再次成為HCI市場無可爭議的領導者。
2018Q2全球超融合系統供應商收入、收入佔比份額和增長
(單位:百萬美元)
市場佳績背後是完整的產品線,戴爾易安信超融合基礎設施種類齊全,適合不同用戶的各種應用場景。
下面將著重介紹戴爾易安信超融合家族的一員猛將——VxRail,主要分析其高可用性、I/O加速、數據安全等企業就緒存儲數據服務。
VxRail是VMware和戴爾易安信在VMware HCI(vSAN、vSphere和vCenter)基礎上聯合開發的超融合基礎設施,附帶了vSAN、vCenter、Log Insight以及來自Dell EMC和VMware的一整套行業領先的數據服務,包括恢復、數據保護、雲分層和備份。
作為軟體定義數據中心(Software Defined Data Center,SDDC)最簡單的構建塊,VxRail支持多種形式的硬體和軟體(2U4節點、1U1節點和2U1節點),其交鑰匙方案可提供最佳的vSAN體驗。
VxRail軟體快速視圖
VxRail數據服務的最佳實踐
VxRail數據服務的核心技術包括以下幾部分內容:
? 去重和壓縮:可以啟用vSAN集群的去重和壓縮,減少存儲數據所需的空間量;
? 糾刪碼:可以在VMS上設置故障容忍方法策略屬性,使用RAID 5或RAID 6糾刪碼。糾刪碼可以保護您的數據,且使用的存儲空間比默認RAID 1鏡像小;
? QoS服務質量限制:可以為對象,如VDMK設置IOPS限制。如果超過限制,則I/O操作受限;
? 軟體校驗和:默認情況下,啟用校驗和以確保數據完整性;
?故障域:一個高可用性特徵,以確保對物理設備節點等故障的保護。
1去重和壓縮
vSAN可以執行塊級重刪和壓縮,以節省存儲空間。在vSAN全Flash集群上,重複數據刪除和壓縮兩個功能一起執行,可以提高存儲資源操作效率,減少磁碟組內的冗餘數據。
具體過程是,vSAN在將數據從緩存移動到容量層時去重,然後壓縮,如圖所示。
Web管理客戶端的健康頁面提供了重複數據刪除和壓縮數據的詳細報告,可以預期用於存儲元數據的原始存儲容量開銷,以及CPU和內存開銷。
若要啟用,首先將「添加磁碟到存儲」的設置從「自動」改為「手動」,並允許重複刪除和壓縮。當VxRail磁碟組啟用重複數據刪除和壓縮時,所有數據必須撤出。
另外,磁碟格式的升級是在沒有停機時間的滾動方式下完成的,升級期間性能可能會受到影響。當禁用該功能時,通過類似操作,根據簇大小和磁碟組的數目而決定不等的時間。
注意事項:
? 只有全快閃記憶體設備支持重刪和壓縮功能,默認情況下,在VxRail上該功能是禁用的;
? 如果要使用重刪和壓縮,建議在部署之前啟用它們。如果在部署後打開,所有數據必須重新處理以應用重刪和壓縮演算法,會產生密集的資源開銷;
? 重刪和壓縮是一起啟用的,沒有辦法單獨啟用;
? 使用去重刪和壓縮時,建議集群中至少有4個節點,以便在所有條件下保持高可用性;
? 啟用去重刪和壓縮時,向磁碟組添加或刪除容量設備的過程需要重新創建磁碟組;
? 啟用重刪和壓縮會消耗少量的元數據。此元數據所消耗的空間與vSAN數據存儲的大小有關,通常佔總容量的5%左右;
? 對象空間預留必須是所有存儲策略的0或100%,儘管100%對於重刪效率不高。這個數字表示部署虛擬機時必須分配VM對象的邏輯大小。將其設置為0意味著虛擬磁碟將被配置為精簡配置。
2糾刪碼
VxRail通過兩種方式為VM提供數據保護——「糾刪碼(RAID-5/6)」和「鏡像(RAID-1)」。
鏡像創建了VM對象的完整副本,並將其保存在單獨的主機中,以便在故障出現時從其他副本中得到服務。
RAID 5或RAID 6糾刪碼提供了防止數據丟失和提高存儲效率的另一種方式。糾刪碼可以提供與鏡像(RAID-1)相同的數據保護級別,卻使用較少的存儲容量,且允許每個VM及其對象根據需求選擇不同的保護方式。
全Flash集群上配置RAID-5,具有四個或更多VxRail節點,RAID-5保護一個故障。
全Flash集群上配置RAID-6,使用六個或更多VxRail節點,RAID-6保護兩個並發故障。糾刪碼與vSAN的去重/壓縮、QoS和校驗和特性可兼容同時啟用。
RAID-5當配置允許故障容忍數一個(FTT=1)來提供對一個故障的保護。那麼最少需要四個節點(3+1),但開銷是1.33倍,而不是用鏡像的2倍。換句話說,20GB的磁碟只需要大約27 GB來提供數據保護,而不是鏡像所需的40GB。
RAID-6當配置允許故障容忍數兩個(FTT=2)來提供對兩個故障的保護。最少需要六個節點(4+2),但開銷是1.5倍,而不是用鏡像的3倍。也就是說,20GB的磁碟只需要大約30GB來提供數據保護,而不是鏡像所需的60GB。
注意事項:
? 使用糾刪碼對性能的影響。例如,由於需要的讀取-修改-寫入步驟,使用糾刪碼會影響隨機寫入性能和計算奇偶校驗的CPU開銷。
? vSAN延伸集群不支持在VxRail中使用糾刪碼,因為它只支持3個故障域。
3QoS服務質量限制
服務質量(QoS)可在每個VM/VMDK基礎上通過設置IOPS限制來獲得。如果磁碟的IOPS超過指定限制,則I/O操作被節流;如果對象的IOP限制設置為0,則不執行IOPS限制。這些限制允許針對不同應用的不同級別的服務,可以為不同的工作負載提供服務級協議(SLAs),並保護TIER-1應用性能。
這個特性完全兼容vSAN的其他特性,對VxRail是透明的。VM/VMDK所有包括快照的讀/寫操作中是等價的,計算IOPS作為限制級別。
若要啟用對象的IOPS限制,需要先創建一個新的存儲策略規則並設置所需限制。統一按32KB的塊大小, 64KB的讀或寫就會被當作兩個獨立的操作,導致所配置的IOPS限制的一半,是所執行的操作的數量。
注意事項:
? QoS的設置不是為所有工作負載創建策略,包括優先順序工作負載。相反,使用QoS來避免「嘈雜鄰居」問題,為的是那些不希望其消耗多餘資源的低優先順序應用程序而創建限制。
4軟體校驗和
通過確認VxRail上文件的每個副本與源文件相同,可啟用端到端校驗和以確保數據的完整性。
校驗和可提供對VxRail管理器透明的附加數據完整性級別,用於檢測和解決內存和磁碟組件中未發現的磁碟錯誤和損壞。
當校驗和驗證失敗時,就從冗餘副本中獲取數據,如果檢測到校驗和錯,vSAN會自動修復,用正確數據將不正確的數據重寫。此外,校驗和計算及糾錯是作為後台操作來執行的。
注意事項:
? 禁用校驗和是立即操作,但啟用校驗和後需要完整的數據副本來請求校驗和,若所有數據都得重寫,則需要密集的資源開銷;如果有大量數據,這個過程會產生大量的CPU和資源開銷,要儘可能早地計算校驗和;
?校驗和在VxRail中是預設啟用的,如果應用程序已經提供了數據完整性機制,可禁用 ;
? 校驗和也可以檢測網路和磁碟錯誤;
?vSAN校驗和功能支持混合和全閃的VxRail設備。
5故障域
故障域有高級彈性特徵,VxRail集群可以被劃分為故障域,從而在物理組件之間提供額外的保護級別。這可以幫助最小化虛擬機停機時間,當整個物理機失效時,它通過定義跨越物理結構的辦法來實現這一點,例如物理機的邏輯分離。
下圖是應用示例:
在這個例子中,一個機架中的節點可以被分配給一個故障域。vSAN把冗餘的VM對象/組件放置在不同的故障域中,以便在機架故障時保持VM對象/組件的可用性。
vSAN數據布局方式,是將VM數據跨集群放置在不同節點。要實現基於存儲策略的管理,部署在vSAN數據存儲中的每個虛擬機都具有至少一個分配的策略。當創建VM並分配一個存儲策略時,就將策略要求推送到vSAN層。
這些策略確定在數據存儲中如何配置和分配存儲對象以保證所需的服務水平,即希望VM能夠容忍的故障數量,就是「Number Of Failures To Tolerate(FTT)」。如圖可以把四個主機看作一個VxRail設備。當我們創建具有FTT=1策略的VM時,vSAN創建副本並將其放置在另一個節點中。在一個節點失敗的情況下,可用的副本可以服務任何數據請求。
單獨使用FTT策略只能防止「主機故障」。當系統伸縮時,或者當希望確保VM數據在「主機故障」vSAN故障域之外可用時,vSAN故障域提供了所需功能。
VxRail的故障域考慮
VxRail具有不同的形狀因子和節點類型。基於不同的配置,節點可以部署在單個機架內或跨多個機架。一個集群至少需要三個節點,可以是由單個節點或3節點G系列設備組成的3個設備。
在為VxRail設備定義故障域時,我們需要考慮在VxRail集群中使用什麼設備類型和配置,以確定如何跨機架布局設備,以便創建機架級別的彈性。
G系列設備在一個機箱最多可以容納4個節點,因此包含的所有節點將屬於單個機箱。
E、S、P和V系列設備在單獨的機箱中具有單個節點,它們可以放置在單個機架中,或者跨數據中心內的各種機架來創建VxRail集群。
以下是針對特定VxRail集群的故障域最佳實踐建議:
?由於整個機箱的故障,同一VxRail機箱中的所有節點都應該是同一故障域的一部分;
? 節點的數量將根據FTT的定義和故障域的配置要求而變化;
? 建議每個故障域具有相同數量的節點,以確保在發生故障時有足夠的可用資源來提供完全的業務支撐;
? 可根據數據中心的保護計劃為VxRail基礎設施軟體以及其他服務組件(包括vCenter Server和Log Insight)定義故障域。
對於單系列VxRail集群中的G系列設備,請使用以下故障域指南:
對於所有其他設備E、S、P和V系列,每個節點VxRail集群的最佳實踐方式:
應用場景一:
S、P、V或E系列的故障域
在這個場景中,VxRail設備的三個節點跨多個機架放置。相同的故障域特徵可以用不同的方式配置,代替同一機架中的多個節點,我們可以為VxRail設備配置不同機架中的節點,並提供類似的彈性級別。
應用場景二:
G系列的故障域
在這個場景中,有三個4節點G系列VxRail設備,都在一個單獨的機架中。當部署FTT=1時,在不使用故障域時,兩個副本放置到同一機架中的不同主機。因此,如果機架、機箱或網路交換機宕機,則VM不受保護。
然而,如果啟用了故障域,則可以將同一機箱中的主機分組在一起以形成故障域。vSAN不再將虛擬機數據的副本放在與原始相同的故障域中。若要按FTT計算所需的故障域數,參照上表。每個故障域包含一個或多個VxRail設備機箱。
我們使用vSphere Web Client工具配置以下故障域:
故障域1包含VxRail設備1,具有三至四個節點(機架1)
故障域2包含VxRail設備2,具有三至四個節點(機架2)
故障域3包含VxRail設備2,具有三至四個節點(機架3)
總結
VxRail為應用於不同場景的數據保護,助力效率和服務質量提供了許多功能,這些功能中的每一種都有特定的最佳實踐,可以幫助我們在最大限度地使用VxRail。在使用這些特性中的任何一種時,確保理解其用途和含義,並遵循本文所給出的最佳指導實踐。
※擁抱變革 VMware創新Workspace ONE助力企業邁向現代數字化工作空間
※多虧它,讓大家做好「山竹」來襲的準備Make It Real故事匯
TAG:至頂網 |