144 期 - 實戰雙節點 vSAN 叢集,見證機制確保可用性


網管人雜誌

本文刊載於 網管人雜誌第 144 期 - 2018 年 1 月 1 日出刊,NetAdmin 網管人雜誌 為一本介紹 Trend Learning 趨勢觀念、Solution Learning 解決方案、Technology Learning 技術應用的雜誌,下列筆記為本站投稿網管人雜誌獲得刊登的文章,網管人雜誌於每月份 1 日出刊您可於各大書店中看到它或透過下列圖示連結至博客來網路書店訂閱它。





文章目錄

前言
vSAN 6.6.1 增強功能
實戰 vSAN 2 Node 叢集架構
          vSAN ESXi 6.5 硬體需求
          建立資料中心及叢集
          建立 vDS 分散式交換器
          叢集啟用 vSAN 軟體定義儲存機制
          佈署 Witness 見證機制
          高可用性測試
結語





前言

在 VMware 官方打造 SDDC 軟體定義資料中心的願景中,負責 SDS 軟體定義儲存解決方案的角色便是 VMware vSAN(Virtual SAN)。簡單來說,企業及組織只要透過 VMware vSAN 軟體定義儲存技術,便可以將多台安裝 ESXi 虛擬化平台 x86 實體伺服器中,所有「本機硬碟」(LocalHardDisk)儲存空間匯整後(例如,NVMe 快閃儲存、SSD 固態硬碟、HDD 機械式硬碟……等),建構出高可用性高效能的共享儲存資源集區。

在 VMworld 2017 大會上,負責 VMware vSAN 解決方案的 Duncan Epping 技術長,所主講的 Top 10 things to know about vSAN 議程中,開宗明義便提到 VMware vSAN 為「Object-Based Storage」(如圖 1 所示),並且每個「物件」(Object)都會包含多個「元件」(Component),同時採用「儲存原則」(Storage Policy)來管理分散的儲存資料。

此外,由 VMware vSAN 所建構的共享儲存資源集區中,還能夠直接運作 VM 虛擬主機及容器等工作負載,因此企業及組織在建構 VMware vSAN 軟體定義儲存環境後,便能同時解決建置「運算 / 儲存」2 大資源的難題,這也是目前非常熱門的「超融合式架構」(Hyper-Converged Infrastructure,HCI)應用情境。

圖 1、VMware vSAN Object-Based Storage 運作示意圖





vSAN 6.6.1 增強功能

在 2017 年 4 月時,VMware 官方正式推出最新第 6 代 VMware vSAN 6.6 並且新增 23 項特色功能,緊接著在 VMworld 2017 舉辦前夕於 2017 年 7 月推出 VMware vSAN 6.6.1 增強版本,同時在此增強版本中再新增 3 項特色功能:

  • 整合 VMware Update Manager: 在過去的 vSAN 版本當中,管理人員倘若需要針對 vSAN 叢集進行版本升級作業時,除了必須確保 vSAN 叢集整體升級程序,以及確認 vSAN 硬體相容性(例如,SAS、SATA、NVMe…… 等)之外,執行版本升級作業時還必須要管理人員手動處理才行。現在,Update Manager 可以針對 vSAN 運作環境提出建議,它可以掃描 vSAN 叢集和 vSAN 節點主機之後,建議相關安全性更新、修補程式、擴充功能 …… 等,並且會驗證 vSAN 節點主機是否符合及支援 vSAN HCL 規範。值得注意的是,vSAN 運作環境必須要能連接至網際網路,Update Manager 才能順利產生各項建議,倘若 vSAN 叢集是透過 Proxy 代理伺服器連接至網際網路時,那麼 vSAN 運作環境則可以產生修補程式及升級建議,但是將無法進行主要版本升級作業。
  • 運作效能診斷: 針對 vSAN 叢集及 vSAN 節點主機進行運作效能基準線測試,例如,最大吞吐量、最小延遲時間、時間範圍……等,系統將會檢測出運作效能是否有任何問題,並且提出修復運作效能問題的操作步驟,同時提供運作效能圖表以便管理人員能夠深入了解效能表現情況(如圖 2 所示)。此外,管理人員還可以透過 HCI Bench 這個 API Level 的效能診斷機制,進一步查詢效能診斷的詳細資訊。值得注意的是,必須加入 CEIP 客戶體驗改善計畫,並且啟用 vSAN Performance Service 機制之後才能使用此特色功能。
  • 儲存設備可維護性: 過去的 vSphere 運作環境中,當採用 RAID 控制器的 ESXi 主機硬碟發生問題時,便能透過驅動損壞硬碟 LED 燈亮的方式快速找出故障損壞硬碟。但是,驅動損壞硬碟 LED 燈亮的方式在過去的 vSAN 運作環境中,因為「不」支援 HBA 或 Pass-Throuth 控制器而無法順利使用。現在,驅動損壞硬碟 LED 燈亮的方式已經支援 HBA 或 Pass-Throuth 控制器,所以當 vSAN節點主機硬碟發生問題時管理人員便能快速找出故障損壞硬碟。舉例來說,在 HPE DL G9 / ML G9 系列的伺服器便已經正式支援此功能。

圖 2、vSAN效能診斷示意圖





實戰 vSAN 2 Node 叢集架構

事實上,在第 3 代 vSAN 6.1 版本的運作環境中,便已經支援「2 Node」的 vSAN 節點主機建構 vSAN 叢集的運作環境,這種小型的 vSAN 軟體定義儲存運作架構,非常適合企業及組織中分公司或小型運作環境時使用。

雖然,vSAN 6.1 支援 2 台 vSAN 節點主機的叢集運作架構,但是仍至少需要配置「1 台」昂貴的 10 Gbps 網路交換器才行,然而卻僅使用到該台 10 Gbps 網路交換器 2 ~ 4 個連接埠而已,倘若考慮避免發生 SPOF 單點失敗情況時,則需要配置「2 台」10 Gbps 網路交換器才行,並且每台 10 Gbps 網路交換器仍只會用到 1 ~ 2 個連接埠而已,這對於建置分公司或小型 vSAN 運作規模的整體 IT 預算來說無疑加重負擔。

第 5 代 vSAN 6.5 版本開始,正式支援在 2 Node vSAN 叢集運作架構中,2 台 vSAN 節點主機可以直接透過「交叉式纜線」(Crossover Cables)的方式互相連接(如圖 3 所示),無須像過往舊版 2 Node vSAN 運作環境中,必須透過 10 Gbps 網路交換器才能進行 vSAN 節點主機的資料交換作業。

因此,當企業及組織在建置分公司或小型 vSAN 運作環境時,無須再被迫採購昂貴的 10 Gbps 網路交換器,所以能有效降低分公司或小型 vSAN 運作規模的整體 IT 預算,根據 VMware 官方分析調查的結果顯示此舉可以有效降低約「20 %」的投資成本。

在組態設定部分,根據 VMware 官方的最佳作法建議,當 vSAN 叢集當中的節點主機透過交叉式纜線互相連接之後,在 vSAN 節點主機網路流量規劃的部分,應該要將「vSAN 儲存流量」「vMotion 遷移流量」分開在不同的 10 Gbps 纜線進行傳輸,以避免儲存或遷移流量互相干擾的情況發生,舉例來說,倘若 2 台 vSAN 節點主機正透過 vSAN 儲存流量網路大量同步資料狀態的情況下,此時又剛好執行 vMotion 線上遷移機制大量移動 VM 虛擬主機的話,那麼有可能會增加 10 Gbps 的網路延遲時間及工作負載。

此外,有關 vSAN 節點主機網路流量規劃方面除了將儲存及遷移流量分開之外,也應該要組態設定為互相備援機制以便故障情況發生時,能夠有另 1 個 10 Gbps 纜線進行網路流量的容錯移轉。
VMware 官方建議,當 vSAN 運作架構採用「Hybrid」儲存組態時,在儲存網路流量的部分至少規劃 1 Gbps 網路頻寬,當 vSAN 運作架構採用「All-Flash」儲存組態時,在儲存網路流量的部分必須要規劃 10 Gbps 網路頻寬。

圖 3、2 台 vSAN 節點主機透過交叉式纜線連接後,網路流量規劃的組態配置示意圖

此外,從第 5 代 vSAN 6.5 版本開始,新增「見證網路流量」(Witness Traffic)分離的特色功能,解決在 2 台 vSAN 節點主機之間必須建立及維護靜態路由的組態設定,有效降低 vSAN 叢集運作架構的複雜度,同時在安全性方面也能得到改善,因為 vSAN 儲存網路流量與 WAN 見證網路流量現在能夠完全分離了。

值得注意的是,負責 vSAN 叢集運作架構的見證虛擬設備(vSAN Witness Appliance),「不得」運作在 2 台 vSAN 節點主機之上以避免誤判的情況發生。同時,一般來說 2 台 vSAN 節點主機的小型運作架構,通常是運作在企業及組織的分公司或遠端辦公室當中,所以分公司或遠端辦公室若有透過 WAN 網路與主要資料中心連接時,那麼管理人員可以考慮將見證虛擬設備運作在主要資料中心內,除了節省建置第 3 台 ESXi 主機以便運作見證虛擬設備之外,也能達到將見證虛擬設備運作在主要資料中心內達到統一管理的目的(如圖 4 所示)。

圖 4、支援將 vSAN 見證虛擬設備運作在主要資料中心內的運作架構示意圖



vSAN ESXi 6.5 硬體需求

在建構 vSAN 軟體定義儲存叢集架構時,值得注意的部分主要在於硬體組態配置,舉例來說,倘若管理人員希望在測試環境嘗試建構 vSAN 叢集架構時,那麼 ESXi 主機的記憶體資源至少需要「8 GB」才行。

此外,在建構正式營運環境的 vSAN 叢集架構時,倘若採用 vSAN Ready Node 的話則無須擔心硬體組態配置,若是自行規劃時則必須要注意除了安裝 ESXi Hypervisor 採用傳統的 RAID 之外,其它由 vSAN 軟體定義儲存所管理的儲存裝置,必須要採用 HBA 控制器(Passthrough 或 RAID 0 Mode)機制才行(如圖 5 所示),這是初次建置 vSAN 叢集架構時,管理人員最容易忽略的部分。

圖 5、自行配置 vSAN 節點主機硬體組態參考架構



建立資料中心及叢集

當管理人員安裝好 vCenter Server 及 ESXi 主機後,首先請建立「資料中心」(Datacenter)接著建立「叢集」(Cluster),但是先「不要」針對建立的叢集啟用 vSAN 功能。

值得注意的是,在目前 vCenter Server 的主要管理工具,分別支援 vSphere Web Client(Flash-Based)vSphere HTML Client(HTML5-Based)

雖然,VMware 官方已經宣佈後續版本的操作介面,將採用全新開發且操作更為順利的 vSphere HTML Client,然而即便目前最新的 vSphere 6.5 update1 版本中,vSphere HTML Client 仍僅支援「部分」功能而非全功能組態設定,舉例來說,在建立「叢集」(Cluster)時 vSphere HTML Client 操作介面,便無法啟用 vSAN 特色功能且後續在叢集操作介面中也無法進行管理(如圖 6 所示)。
在 2017 年 8 月 25 日時,VMware 在官方部落格中正式宣佈下一版 vSphere 當中,將會以 vSphere HTML Client 為主要管理工具,同時在下一版 vSphere 當中將不會再有 vSphere Web Client 管理工具。詳細資訊請參考 VMware vSphere Blog - Goodbye,vSphere Web Client!

圖 6、建立 vSAN 用途的資料中心及叢集

順利建立 vSAN 用途的資料中心及叢集之後,請將完成硬體配置的 2 台 ESXi 主機加入至叢集當中,順利加入叢集後請先確認 ESXi 主機,是否擁有足夠建立 vSAN 軟體定義儲存的硬體配置。如圖 7 所示,在本文實作環境中 2 台 ESXi 主機,除了安裝 ESXi Hypervisor 的儲存裝置之後,還額外配置「3 個」100 GB 空間大小的 SSD 固態硬碟。

圖 7、每台 vSAN 節點主機皆額外配置 3 個 100 GB 容量的 SSD 固態硬碟



建立 vDS 分散式交換器

在剛才建立 vSAN 用途的叢集時,建議先不要啟用 vSAN 特色功能的主要原因在於,我們尚未組態設定好 vSAN 節點主機的網路組態。同時,在 vSAN 網路環境規劃建議作法當中,針對 vSAN 網路環境建議採用「vDS 分散式網路交換器」(vNetwork Distributed Switch)為佳。

現在,請為 vSAN 節點主機組態設定 vDS 分散式網路交換器,下列分別說明採用 vSphere Web Client 及 vSphere HTML Client 這 2 項管理工具時,如何建立 vDS 分散式網路交換器:

  • vSphere Web Client: 請依序點選【首頁 > 網路功能 > 網路 > Distributed Switch > 新增 Distributed Switch】。
  • vSphere HTML Client: 請依序點選【功能表 > 網路功能 > Datacenter > 動作 > Distributed Switch > 新增 Distributed Switch】。


在彈出的新增 Distributed Switch 視窗中,首先請指定建立的 vDS 分散式網路交換器名稱及位置,在本文實作環境中 vDS 分散式網路交換器名稱為「vSAN-DSwitch」,接著選擇 vDS 分散式網路交換器版本,因為本文實作環境中並沒有新舊版本混合的 ESXi 主機所以選擇採用最新「6.5.0」版本,最後在設定組態頁面中,除了連接埠群組名稱改為「vSAN-DPortGroup」之外其餘採用系統預設值即可(如圖 8 所示)。

圖 8、建立 vDS 分散式網路交換器及連接埠群組

順利新增 vDS 分散式網路交換器及連接埠群組之後,請將 vSAN 節點主機中用於 vSAN 儲存流量的網路卡,加入至剛才所建立的 vDS 分散式網路交換器及連接埠群組當中:

  • vSphere Web Client: 請依序點選【網路功能 > vCenter Server > 網路 > Distributed Switch > 新增和管理主機】。
  • vSphere HTML Client: 請依序點選【網路功能 > vSAN-Dswitch > 網路 > 動作 > 新增和管理主機】。


在彈出的新增和管理主機視窗中,於選取工作頁面中請選擇「新增主機」項目,在選取主機頁面中按下「新增主機」鈕後將 2 台 vSAN 節點主機依序加入,在管理實體介面卡頁面中請將 vSAN 節點主中,配置用於 vSAN 儲存流量傳輸用途的網路卡加入,請點選相關網路卡後點選「指派上行」鈕,將選定的 vSAN 儲存流量傳輸用途網路卡,指派為 vSAN-Dswitch Uplink

在管理 VMkernel 網路介面卡頁面中,請先點選「位於此交換器上」然後按下「新增介面卡」鈕,選擇採用「vSAN-DPortGroup」連接群組,並且勾選「vSAN」項目以便啟用 vSAN 儲存流量,最後指派 vSAN 用途的 VMkernel IP 位址即可(如圖 9 所示)。
此操作步驟若採用新式 vSphere HTML Client 管理工具時,僅能新增管理網路介面卡無法同時新增 VMkernel 網路介面卡。

圖 9、指派 vSAN 儲存流量用途的網路卡並組態設定 VMkernel Port

完成指派 vSAN 儲存流量用途的實體網路卡及 VMkernel Port 之後,請再次確認是否指派完成且正確無誤(如圖 10 所示),以避免稍後為叢集啟用 vSAN 特色功能時發生不可預期的錯誤。

圖 10、再次確認 vSAN 儲存流量用途實體網路卡及 VMkernel Port 指派完成且正確無誤



叢集啟用 vSAN 軟體定義儲存機制

現在,請透過 vSphere Web Client 管理工具,為 vSphere 叢集啟用 vSAN 軟體定義儲存機制,請依序點選【首頁 > 主機和叢集 > vSAN-Cluster > 設定 > vSAN > 一般 > 設定】,在彈出的設定 vSAN 視窗中,由於我們尚未組態設定 vSAN Witness 見證機制,所以在容錯網域與延伸叢集的組態設定中請採用「不設定」選項,稍後我們便會組態設定 vSAN Witness 見證機制。
新式 vSphere HTML Client 管理工具,尚未支援為 vSphere 叢集啟用 vSAN 軟體定義儲存機制。
接著,在網路驗證頁面中,由於剛才已經正確指派及組態設定 vSAN 儲存流量網路卡及 VMkernel Port,所以將會順利通過 vSAN 網路驗證機制。如圖 11 所示,在宣告磁碟頁面可以看到我們為 vSAN 節點主機所配置的 3 個 100 GB SSD 固態硬碟,請將 1 個 SSD 固態硬碟宣告為「快取層」(Cache Tier),另外 2 個 SSD 固態硬碟宣告為「容量層」(Capacity Tier)

圖 11、宣告 vSAN 節點主機儲存裝置為快取層及容量層

最後,完成為 vSphere 叢集啟用 vSAN 軟體定義儲存機制,此時系統將會執行更新 vSAN 組態、在 vSAN 叢集中建立磁碟群組、將磁碟新增至 vSAN……等動作。當順利為 vSphere 叢集啟用 vSAN 軟體定義儲存機制後,可以看到在網路模式的部分採用新式「單點傳播」處理 vSAN 儲存流量(如圖 12 所示),而非舊有的「多點傳播」

圖 12、順利為 vSphere 叢集啟用 vSAN 軟體定義儲存機制



佈署 Witness 見證機制

在 2 Node 的 vSAN 叢集架構中,必須要佈署 Witness 見證機制才能確保可用性。管理人員請在 vSphere Web Client 管理工具中,依序點選【首頁 > 主機和叢集 > vSAN-Cluster > 設定 > 容錯網域與延伸叢集】選項後,可以看到目前 vSAN 叢集容許「0 個主機故障」(如圖 13 所示),表示 vSAN 叢集尚未具備高可用性。
倘若,vSAN 叢集當中具備「3 台」vSAN 節點主機時,那麼即便沒有佈署 Witness 見證機制,也能容許「1 台」主機發生故障損壞仍能正常運作,簡單來說便是已經具備高可用性。

圖 13、目前 vSAN 叢集尚未具備高可用性

現在,請為 vSAN 叢集佈署 Witness 見證機制,值得注意的是運作見證虛擬設備的 ESXi 主機必須具備 2 項條件,第 1 項條件是該台 ESXi 主機「不能」加入至 vSAN 叢集當中,第 2 項條件則是該台 ESXi 主機「必須」要能接觸得到 vSAN 儲存網路。

完成見證虛擬設備 ESXi 主機的基本組態設定後,請依序點選【動作 > 部署 OVF 範本】進行佈署見證虛擬設備的動作。在本文實作環境中,採用的見證虛擬設備運作規模為「Tiny」,所以 ESXi 主機必須提供 2 vCPU 及 8GB vRAM 虛擬硬碟資源給它,此外見證虛擬設備管理用途的 IP 位址為「10.10.75.33」,接觸 vSAN 儲存網路的 IP 位址則是「192.168.75.33」
採用新式 vSphere HTML Client 管理工具,在佈署見證虛擬設備的過程中並不會組態設定管理者密碼,所以必須佈署完成後組態設定管理者密碼才能順利啟動見證虛擬設備。

佈署及組態設定見證虛擬設備後,請將見證虛擬設備加入 vSphere Datacenter 當中,順利加入後可以發現見證虛擬設備與一般 ESXi 主機的圖示顏色不同(如圖 14 所示)。

圖 14、將見證虛擬設備加入 vSphere Datacenter 當中

現在,請依序點選【首頁 > 主機和叢集 > vSAN-Cluster > 設定 > vSAN > 容錯網域與延伸叢集 > 設定】,在彈出的設定 vSAN 延伸叢集視窗中,組態設定慣用容錯網域為「10.10.75.31」vSAN 節點主機,而次要容錯網域為「10.10.75.32」vSAN 節點主機。

接著,在選取見證主機頁面中,選擇我們完成佈署及組態設定的 vSAN 見證虛擬設備「10.10.75.33」,在為見證主機宣告磁碟頁面中採用系統預設值即可。順利為 vSAN 叢集啟用 Witness 見證機制後,可以看到容錯網域由先前容許「0 個主機故障」變更為「1 個容錯網域故障」(如圖 15 所示)。

圖 15、為 2 Node vSAN 叢集架構啟用 Witness 見證機制



高可用性測試

順利建構 2 Node vSAN 節點主機搭配 Witness 見證機制後,現在 vSAN 叢集已經具備高可用性機制,請為 vSAN 叢集「啟用 vSphere HA」高可用性機制,以便其中 1 台 vSAN 節點主機發生故障損壞事件時,其上運作的 VM 虛擬主機能夠自動在另 1 台存活的 vSAN 節點主機上重新啟動。

現在,運作在 vSAN 叢集當中的 VM 虛擬主機,預設情況下儲存物件和元件將會分別存放在 2 台 vSAN 節點主機中(如圖 16 所示)。

圖 16、VM 虛擬主機儲存物件將會分別存放在 2 台 vSAN 節點主機中

即便其中 1 台 vSAN 節點主機,因為安全性更新需要重新啟動,或是伺服器硬體元件發生故障損壞事件(如圖 17 所示),在 vSAN 叢集當中的 VM 虛擬主機仍然能夠正常運作提供服務達到高可用性的目的。

圖 17、其中 1 台 vSAN 節點主機故障損壞 VM 虛擬主機仍能正常運作





結語

透過本文的說明及實作相信讀者已經了解,在最新 vSAN 6.6.1 版本當中新增哪些特色功能,同時本文也進行 2 Node vSAN 叢集搭配 Witness 見證機制的運作架構實戰演練,期望能夠幫助企業及組織建立更靈活、高擴充性、高可用性的 SDS 軟體定義儲存運作環境。