vSAN 8 新儲存架構開工,實戰 ESA 超融合叢集 | 網管人 208 期



網管人雜誌

本文刊載於 網管人雜誌第 208 期 - 2023 年 5 月 1 日出刊,NetAdmin 網管人雜誌 為一本介紹 Trend Learning 趨勢觀念、Solution Learning 解決方案、Technology Learning 技術應用的雜誌,下列筆記為本站投稿網管人雜誌獲得刊登的文章,網管人雜誌於每月份 1 日出刊您可於各大書店中看到它,或透過城邦出版人讀者服務網進行訂閱。





本文目錄

          RAID-5/6 vs RAID-1
          增強壓縮機制





前言

隨著最新舉辦的 VMware Explore 2022 大會 中,正式發佈最新的 vSphere 8 和 vSAN 8 版本。全新的 vSAN 8 版本最大改變,便是新增支援 vSAN ESA(Express Storage Architecture)儲存架構,而過去管理人員熟悉的 vSAN 超融合技術,則為 vSAN OSA(Original Storage Architecture)儲存架構。

新增支援的 vSAN ESA 儲存架構,僅支援高效能的 NVMe 儲存裝置,至於其它 SATA 或 SAS SSD 固態硬碟儲存裝置則不支援,在 vSAN 儲存網路部份則建議至少配置 25Gbps 傳輸速率。

或許,管理人員會有這樣的疑惑,過去的 vSAN 架構也支援採用 NVMe 儲存裝置,建構出 All-Flash 模式的 vSAN 超融合叢集,那麼新增支援的 vSAN ESA 儲存架構究竟有何不同?

簡單來說,傳統的 vSAN OSA 儲存架構,先將儲存裝置區分為「快取層」(Cache Tier)「容量層」(Capacity Tier),並將快取層和容量層組合為「磁碟群組」(Disk Group),其中快取層僅用於資料快取和寫入使用,並無法真正納入儲存容量,而新式的 vSAN ESA 儲存架構,則採用單一儲存層級並導入「儲存集區」(Storage Pool)機制,所有 NVMe 儲存裝置容量都能使用(如圖 1 所示)。

圖 1、傳統 vSAN OSA 和新式 vSAN ESA 儲存架構比較示意圖

值得注意的是,企業和組織必須使用至少「vSAN Advanced」或更高的軟體授權版本,才能夠支援使用新式的 vSAN ESA 儲存架構,倘若僅採購 vSAN Standard 軟體授權時,雖然使用最新的 vSAN 8 版本,也僅支援建構傳統 vSAN OSA 儲存架構的超融合叢集。詳細軟體授權和功能支援資訊,請參考 VMware vSAN Licensing Guide 文件。

雖然,vSAN 8 推出新式 ESA 儲存架構,但是針對傳統的 OSA 儲存架構也有所提升。在過去的 vSAN OSA 儲存架構中,每個磁碟群組的「寫入緩衝大小」(Write Buffer Size)為「600 GB」,表示每個磁碟群組中,最多僅能宣告使用 600 GB 儲存空間,所以大於此限制的快取層儲存空間便無法有效利用。

現在,最新的 vSAN 8 版本 OSA 儲存架構,將寫入緩衝大小提升至「1.6 TB」,這表示 OSA 儲存架構能夠更提升資料讀取和寫入效能,因為可以儲存的讀取快取和寫入緩衝區的資料量變多了,同時也能夠減少容量層的 I/O 需求,以及 vSAN 元件的重新同步時間(如圖 2 所示)。

圖 2、vSAN 8 OSA 儲存架構寫入緩衝大小由 600 GB 提升至 1.6 TB





vSAN 8 ESA 儲存架構亮眼特色功能

事實上,最新版本的 vSAN 8 ESA 儲存架構,並非僅是支援 NVMe 儲存裝置和採用儲存集區而已,而是從底層許多技術進行增加和改進,和傳統 vSAN OSA 儲存架構相較下,更能充分發揮 NVMe 儲存裝置的效能。



RAID-5/6 vs RAID-1

在傳統 vSAN OSA 儲存架構中,倘若希望節省儲存空間則採用 RAID-5/6 容錯機制,保護 VM 虛擬主機工作負載的 vSAN 元件,缺點則是儲存效能稍嫌不足,而若是希望獲得較高的儲存效能,可以採用 RAID-1 容錯機制,但缺點則是消耗較多的儲存空間,而新式 vSAN ESA 儲存架構,則是採用 RAID-5/6 容錯機制,但能提供不輸給 RAID-1 的儲存效能,充分在儲存效能和節省儲存空間之間達到最大化。

此外,同樣採用 RAID-5 容錯機制,傳統 vSAN OSA 儲存架構和新式 vSAN ESA 儲存架構,在儲存空間節省方面也所有不同。在傳統 vSAN OSA 儲存架構中,提供 3+1 的 RAID-5 容錯機制,這表示保護資料的方式,是由 3 個「資料位元」(Data bits)加上 1 個「同位位元」(Parity bit)組成,所以至少必須要跨越「4 台」vSAN 叢集節點主機,才能達到資料保護的目的,並且能夠容忍單台 vSAN 叢集節點主機發生故障,儲存容量則是主要資料的「1.33 倍」,倘若 VM 虛擬主機的 VMDK 硬碟大小為 100 GB 時,則需要耗用 133GB 的 vSAN 儲存空間(如圖 3 所示)。

圖 3、傳統 vSAN OSA 儲存架構 3+1 的 RAID-5 容錯機制示意圖

而新式的 vSAN ESA 儲存架構,則提供 2 種不同的 RAID-5 容錯機制,倘若 vSAN 叢集節點主機數量較少時,可以採用 FTT=1 的 2+1 RAID-5 容錯機制,也就是 2 個「資料位元」(Data bits)加上 1 個「同位位元」(Parity bit)組成,只要跨越「3 台」vSAN 叢集節點主機就能達到資料保護的目的,儲存容量則是主要資料的「1.5 倍」,倘若 VM 虛擬主機的 VMDK 硬碟大小為 100 GB 時,則需要耗用 150 GB 的 vSAN 儲存空間(如圖 4 所示)。

圖 4、新式 vSAN ESA 儲存架構 FTT=1 的 2+1 RAID-5 容錯機制示意圖

倘若 vSAN 叢集節點主機數量較多時,可以採用 FTT=1 的 4+1 RAID-5 容錯機制,也就是 4 個「資料位元」(Data bits)加上 1 個「同位位元」(Parity bit)組成,必須跨越「5 台」vSAN 叢集節點主機才能達到資料保護的目的,儲存容量則是主要資料的「1.25 倍」,倘若 VM 虛擬主機的 VMDK 硬碟大小為 100 GB 時,則僅需要耗用 125 GB 的 vSAN 儲存空間(如圖 5 所示)。

圖 5、新式 vSAN ESA 儲存架構 FTT=1 的 4+1 RAID-5 容錯機制示意圖



增強壓縮機制

在最新 vSAN 8 ESA 超融合技術中,針對資料壓縮機制重新設計並增強處理效能,在資料寫入壓縮方面,只需要針對主要資料壓縮一次即可,而非每個資料副本也要進行壓縮,此舉除了有效降低 CPU 處理器的工作負載之外,同時也降低寫入資料量和 vSAN 儲存流量,而在資料讀取方面則直接讀取壓縮狀態的資料,無須解壓縮後進行讀取,同樣減少 vSAN 叢集節點主機之間的 vSAN 儲存流量。

具體來說,新的壓縮機制將資料大小的壓縮單元縮小到 4 KB,整體壓縮比達到 8:1,和傳統 vSAN OSA 儲存架構相比提升了 4 倍(如圖 6 所示)。

圖 6、新式 vSAN 8 ESA 儲存架構壓縮機制運作示意圖



智慧調整 vSAN 網路流量

在傳統的 vSAN OSA 儲存架構中,倘若 vSAN 儲存流量發生資源爭奪的情況,例如,VM 虛擬主機 I/O 工作負載,和重新同步元件的 Resync I/O 工作負載同時發生時,便很有可能因為資源爭奪的情況,造成 vSAN 儲存效能降低,甚至影響 VM 虛擬主機的工作負載。

新式的 vSAN ESA 儲存架構,新增智慧型 vSAN 網路流量調整機制,在 vSAN 儲存流量沒有發生資源爭奪時,每種類型的 vSAN 流量都可以盡可能使用網路頻寬,一旦發生資源爭奪的情況時,便會自動檢測並限制優先層級較低的 vSAN 流量。

因此,同樣發生上述的 vSAN 儲存流量發生資源爭奪時,新式的 vSAN ESA 儲存架構,將會把重新同步元件的 Resync I/O 工作負載,限制在使用網路頻寬不超過 20%,而讓優先層級較高的 VM 虛擬主機 I/O 工作負載,能夠使用 80% 的網路頻寬(如圖 7 所示)。

圖 7、新式 vSAN ESA 儲存架構智慧型 vSAN 網路流量調整機制示意圖



B-Tree 高效能快照機制

過往的 vSAN 版本中,雖然針對 VM 虛擬主機工作負載的「快照」(Snapshot)不斷改善,例如,vSAN 5.5 版本的 VMFS 快照,以及 vSAN 6.0 的 vsanSparse 快照機制,都是為了增強和改善快照效能,然而長時間儲存的快照合併作業一直是個難解的問題(如圖 8 所示)。

圖 8、傳統 vSAN 儲存架構快照機制運作示意圖

新式 vSAN ESA 儲存架構,處理快照時並非採用傳統 vDisk 虛擬硬碟的互相參照機制,而是改為採用 B-Tree 的方式處理,相較於過去傳統的快照機制,在刪除快照時間上 B-Tree 新式機制比傳統快上「100 倍」,有效改善快照處理時間(如圖 9 所示)。

圖 9、新式 vSAN ESA 儲存架構改採用 B-Tree 機制處理快照示意圖





實戰演練 – vSAN 8 ESA 超融合叢集

在實戰小節中,將實作演練最新 vSAN 8 ESA 超融合儲存架構,除了採用最新 vCenter Server 8 管理平台之外,共有 3 台 vSAN 叢集節點主機,每台 vSAN 叢集節點主機,除了安裝 ESXi 虛擬化平台系統的硬碟,額外配置 4 顆 600 GB NVMe 儲存裝置。



手動建立 DataCenter 和 Cluster

在本文實作環境中,不會採用 Cluster QuickStart 自動化部署機制,而是改為採用手動操作逐一建立的方式,例如,手動建立 DataCenter、Cluster、vDS 分佈式虛擬交換器、vSAN VMkernel Port……等,以便帶領讀者能夠一步一步打造出 vSAN ESA 超融合叢集。

首先,登入 vCenter Server 8 管理平台後,建立 vSAN 8 ESA 超融合叢集使用的 DataCenter 和 Cluster,值得注意的是在建立 vSAN Cluster 時,先建立空的叢集而不要啟用任何進階特色功能,例如,vSphere DRS、vSphere HA、vSAN,等到後續運作環境完備後,再啟用這些叢集等級的進階特色功能(如圖 10 所示)。

圖 10、建立 vSAN-Cluster 但先不啟用叢集等級的進階特色功能

在管理介面中,依序點選「vCenter Server > DataCenter > vSAN-Cluster > Actions > Add Hosts」,鍵入第 1 台 vSAN 叢集節點主機的連線資訊後,按下 Add Host 鈕,然後勾選上方的「Use the same credentials for all hosts」,表示採用相同的管理者帳號及密碼,納管 3 台 vSAN 叢集節點主機,按下 Next 鈕後,系統將會自動彈出這 3 台 vSAN 叢集節點主機的 SHA1 指紋檔內容,按下 OK 鈕接受後至下一個納管步驟。

在 2. Host Summary 納管步驟中,確認 vSAN 叢集節點主機資訊無誤後按下 Next 鈕,在 3. Import Image 納管步驟中,採用預設值 Don’t import an image 選項即可,最後在 4. Review 步驟中確認無誤後,按下 Finish 鈕,即可將 3 台 vSAN 叢集節點主機,加入至 vSAN-Cluster 叢集中(如圖 11 所示)。預設情況下加入的 vSAN 叢集節點主機,將會自動進入「維護模式」(Maintenance Mode),管理人員可以將其設定為離開維護模式即可。

圖 11、將 3 台 vSAN 叢集節點主機加入至 vSAN-Cluster 納管



組態設定 vSAN VMkernel Port

在 vSAN 超融合運作架構中,每台 vSAN 叢集節點主機,必須規劃專用於 vSAN 儲存流量的 VMkernel Port,確保 vSAN 超融合叢集中每台 vSAN 叢集節點主機,都能夠透過這個專用的 vSAN 儲存流量 VMkernel Port,彼此交換和儲存相關 vSAN 元件。

點選「vSAN8-N01」,本文實作環境中規劃的第 1 台 vSAN 叢集節點主機,依序點選「Configure > Networking > VMkernel adapters > Add Networking」選項,在彈出視窗中選擇「VMkernel Network Adapter」項目後按下 Next 鈕,在 2. Select target device 頁面中,先選擇將 vSAN VMkernel Port,建立在預設現有的 vSS 標準式虛擬交換器 vSwitch0 上,稍後將會建立 vDS 分佈式虛擬交換器,並且將 vSAN VMkernel Port 遷移至 vDS Port Group 中,請選擇「Select an existing standard switch > vSwitch0」選項後,按下 Next 鈕。

在 3. Port properties 頁面中,在 Network label 欄位中填入「vSAN-VMkernel」名稱,以利後續管理上辨別用途,接著在下方 Enabled services 選項中勾選「vSAN」項目,確保啟用 vSAN 儲存流量並按下 Next 鈕(如圖 12 所示)。

圖 12、命名為 vSAN-VMkernel 並勾選 vSAN 選項確保啟用 vSAN 儲存流量

在 4. IPv4 settings 頁面中,組態設定此 vSAN VMkernel Port 的 IP 位址,本文實作採用「192.168.1.31/24」,按下 Next 鈕。在 5. Ready to complete 頁面中,檢視相關資訊確認無誤後按下 Finish 鈕即可。

接著,請採用相同的操作步驟,為 vSAN8-N02 和 vSAN8-N03 組態設定 vSAN VMkernel Port,並且指派採用「192.168.1.32、192.168.1.33」的 IP 位址(如圖 13 所示)。

圖 13、組態設定另外 2 台 vSAN 叢集節點主機的 vSAN VMkernel Port



建立 vSAN 專用 vDS 分佈式虛擬交換器

雖然,採用 vSS 標準式虛擬交換器,也能夠建構和部署 vSAN 超融合叢集,然而對於後續維運管理和組態設定的便利性則稍嫌不足,並且針對 vSAN 超融合叢集的可擴充性考量,倘若採用 vSS 標準式虛擬交換器,當後續需要加入新的 vSAN 叢集節點主機至 vSAN 超融合叢集時,將會多出許多額外的組態設定工作,浪費管理人員寶貴的時間。

因此,在建構和部署 vSAN 超融合叢集初期,便建立 vSAN 專用的 vDS 分佈式虛擬交換器為佳。請在 vCenter Server 管理介面中,依序點選「Home > Networking > vCenter Server > Datacenter > Actions > Distributed Switch > New Distributed Switch」選項,在彈出的精靈視窗中,首先於 Name 欄位鍵入「vSAN-DSwitch」後,按下 Next 鈕。

在 2. Select version 頁面中,選擇 vDS 分佈式虛擬交換器採用的版本,在本文實作環境中採用最新的「8.0.0」版本(如圖 14 所示),實務上管理人員則必須視管理的 vSphere 虛擬化環境版本選擇,舉例來說,倘若原有運作的 vSphere 叢集中,採用 7.0.2 版本並且尚未升級至新版,那麼管理人員應該為了相容性考量,同樣採用舊版的 7.0.2 版本,後續再找機會進行 vDS 版本升級作業。
管理人員想查看每個版本的特色功能概要時,可以點選 Features per version 字樣旁的 Information 圖示。
圖 14、採用最新 8.0.0 vDS 分佈式虛擬交換器版本

在 3. Configure settings 頁面中,大部份選項皆採用系統預設值即可,管理人員在 Port group name 欄位中,鍵入「vSAN-DPortGroup」名稱以利後續維運管理時進行辨別,在 4. Ready to complete 頁面中,確認相關資訊無誤後按下 Finish 鈕即可。

vDS 分佈式虛擬交換器建立完成後,便可以將 3 台 vSAN 節點主機加入,以及進行 vSAN VMkernel Port 遷移作業。請在 vCenter Server 管理介面中,依序點選「Networking > Datacenter > vSAN-DSwitch > Actions > Add and Manage Hosts」選項,在彈出的精靈視窗 1. Select task 頁面中,選擇「Add hosts」選項後按下 Next 鈕,在 2. Select hosts 頁面中,將會列出 DataCenter 中所有的 ESXi 主機,請僅勾選 3 台 vSAN 叢集節點主機即可,按下 Next 鈕。

在 3. Manage physical adapters 頁面中,本文實作中的每台 vSAN 叢集節點主機,共配置 2 張 10Gb 網路卡,其中 vmnic0 用於管理和遷移等流量,而 vmnic1 則配置為專用於 vSAN 儲存網路,所以請在 vmnic1 的 Assign uplink 下拉選單中選擇「Uplink1」,當確認選擇 vmnic1 為 Uplink1 時,則原有 In use by switch 欄位值,將從原本的 3 hosts / 0 switches 轉變為「This switch」,表示 vmnic1 實體網路卡,已經指派給 vDS 分佈式虛擬交換器使用。

在 4. Manage VMkernel adapters 頁面中,顯示每台 vSAN 叢集節點主機的 VMkernel Port,在本文實作中,每台 vSAN 叢集節點主機有 2 個 VMkernel Port,vmk0 用於管理和遷移用途,而 vmk1 則是剛才建立,專用於 vSAN 儲存流量的 VMkernel Port,管理人員可以點選 vmk1 進行再次確認,確認後點選 Destination port group 欄位中的 ASSIGN PORT GROUP 文字,系統便會跳至是否將 vmk1 指派至 vDS 分佈式虛擬交換器中的 vSAN-DPortGroup,按下 ASSIGN 確認指派,回到頁面中 vmk1 的 In use by switch 欄位值為「This switch」,而 Destination port group 欄位則是「vSAN-DPortGroup」,也就是將原本在 vSwitch0 標準式虛擬交換器中的 vSAN VMkernel Port,遷移至 vDS 分佈式虛擬交換器中的 vSAN-DPortGroup(如圖 15 所示)。

圖 15、將 vSAN VMkernel Port 從 vSS 標準式虛擬交換器遷移至 vDS 分佈式虛擬交換器

在 5. Migrate VM networking 頁面中,因為目前的 vSAN 超融合叢集中並沒有任何 VM 虛擬主機網路,所以無須遷移任何 VM 虛擬主機網路設定,請按下 Next 鈕。在 6. Ready to complete 頁面中,確認相關組態設定資訊無誤後,按下 Finish 鈕完成組態設定作業。



啟用 vSAN ESA 超融合叢集

vSAN 叢集節點主機和運作環境前置作業完成後,請在 vCenter Server 管理介面,依序點選「vSAN-Cluster > Configure > vSAN > I need a local vSAN datastore > Standard vSAN cluster > Configure」選項。

在彈出的精靈視窗 1. vSAN ESA 頁面中,首先請啟用上方的「vSAN ESA」選項,在這個程序中系統將進行二個項目的檢查作業,首先是採用的 NVMe 儲存裝置是否為 VMware certified,第二項檢查則是確認 vSAN 叢集節點主機,採用的網路卡傳輸速率,在 VMware vSAN 最佳建議作法中,專用於 vSAN 儲存網路的網路卡傳輸速率,建議至少為「25 Gbps」。

在 2. Service 頁面中,倘若 vSAN 叢集節點主機採用的網路卡,支援 RDMA 特色功能時記得勾選 RDMA support 項目。在 3. Cliam disks 頁面中,因為本文實作採用的 NVMe 儲存裝置型號,尚未取得 VMware certified,所以 vSAN ESA Compatible 相容性檢查欄位值為「Incompatible」,但是並不影響實作演練的進行,請勾選「Cliam」項目表示使用所有 vSAN 叢集節點主機中的 NVMe 儲存裝置,勾選後上方便會顯示 vSAN Capacity 7.03TB,表示 3 台 vSAN 叢集節點主機,共 12 顆 600GB NVMe 儲存裝置,皆正確無誤宣告給 vSAN 超融合叢集使用(如圖 16 所示)。
實務上,請一定要採用通過 VMware certified 的 NVMe 儲存裝置。

16、成功宣告所有 NVMe 儲存裝置給 vSAN 超融合叢集使用


在 4. Create fault domains 頁面中,採用系統預設值即可。在 5. Review 頁面中,確認相關組態設定資訊無誤後,按下 Finish 鈕完成組態設定作業。

管理人員可以從下方 Recent Tasks 工作列中,看到系統建構 vSAN 超融合叢集的工作流程,其中 Reconfigure vSAN cluster 項目是整個建構進度百分比,中間會有許多組態設定程序,例如,Reconfigure cluster 和 Update vSAN configuration,最後則是將每台 vSAN 叢集節點主機中的 NVMe 儲存裝置,加入至 vSAN ESA 超融合叢集中的儲存集區 Add disk(s)to storage pool…… 等工作項目。

當 vSAN ESA 超融合叢集建構完成後,管理人員可以切換至「vSAN-Cluster > Monitor > vSAN > Skyline Health」,查看系統針對 vSAN ESA 超融合叢集的健康檢查情況,可以看到通過所有的健康檢查項目(如圖 17 所示)。

圖 17、順利建構 vSAN ESA 超融合叢集並通過所有健康檢查項目



建立 VM 虛擬主機和 vSAN 網路測試

順利建構 vSAN ESA 超融合叢集後,在正式上線營運並提供服務之前,建議管理人員可以採用內建的「主動測試」(Proactive Tests)功能,測試 vSAN ESA 超融合叢集在建立 VM 虛擬主機工作負載,以及在 vSAN 儲存網路方面是否符合需求。

請在 vCenter Server 管理介面中,依序點選「vSAN-Cluster > Monitor > vSAN > Proactive Tests > VM Creation Test > Run Test」,此時系統將會彈出視窗,說明建立 VM 虛擬主機工作負載測試程序的一些事宜,確認開始測試後按下 Run 鈕。

此時,可以在下方工作列中,看到系統自動在每台 vSAN 叢集節點主機中,建立 VM 虛擬主機然後再刪除 VM 虛擬主機,通過測試後便會在頁面中,顯示每台 vSAN 叢集節點主機的測試情況為 success,以及整體測試情況為通過測試的 Passed(如圖 18 所示)。

圖 18、每台 vSAN 叢集節點主機皆通過建立和刪除 VM 虛擬主機工作負載測試

接著,展開 Network Performance Test 項目後,同樣按下 Run Test 鈕進行 vSAN 儲存網路測試,系統將會彈出視窗,說明 vSAN 儲存網路測試程序的一些事宜,確認開始測試後按下 Run 鈕。從測試結果中可以看到,vSAN 叢集節點主機之間的 vSAN 儲存網路傳輸速率和測試情況(如圖 19 所示)。

圖 19、每台 vSAN 叢集節點主機皆通過 vSAN 儲存網路測試





結語

透過本文的深入剖析和實作演練後,相信管理人員除了理解最新發佈的 vSAN 8 版本,具備哪些亮眼特色功能之外,也充份理解如何從無到有建構出最新發佈的 vSAN ESA 超融合叢集,輕鬆為企業和組織部署高效能高穩定性高擴充性的 vSAN 超融合叢集。