本文將深入剖析最新的Azure Stack HCI 22H2版本有那些新穎的功能,並且實地演練說明,讓管理員清楚地了解如何建構和部署單台Azure Stack HCI超融合叢集,以及知曉怎樣將固定大小磁碟區轉換為精簡佈建磁碟區。
在過去的Azure Stack HCI超融合基礎架構版本中,叢集節點的主機數量最少必須要「2台」才行。
然而,在微軟Build 2022大會上,正式發佈「Azure Stack HCI Single-Node」解決方案,打破過去版本最少2台叢集節點主機的限制,現在只要花費「1台」節點主機的預算,便能在小型零售店或分公司運作靈活性和高彈性高效能的Azure Stack HCI超融合架構,並且依照專案成長和商務需求,也能逐步將Azure Stack HCI超融合叢集擴充至最多「16台」節點主機的運作架構。
為何微軟會推出AzSHCI單台版本,主要在於聽取各方使用者的意見,希望能夠以更少的硬體設備,更低的IT預算,具備同樣高彈性擴充的目的,並且單台和多台超融合版本具備同樣的特色功能,例如Azure Benefits、AVD虛擬桌面、AKS容器服務等等。目前主流的x86伺服器硬體供應商,皆有提供支援單台AzSHCI版本的伺服器,在導入之前可以至Azure Stack HCI Catalog網站,查詢企業慣用的x86伺服器中哪些型號支援單台AzSHCI版本,如圖1所示,在本文撰寫期間共有224台x86伺服器支援建構單台AzSHCI環境。
值得注意的是,單台AzSHCI版本僅支援採用單一儲存裝置,例如NVMe或SSD的All-Flash運作架構,不支援採用混合式儲存裝置,例如NVMe+SSD、NVMe+HDD、SSD+HDD等等。此外,僅支援採用Azure Stack HCI作業系統建置單台AzSHCI環境,不支援使用Windows Server上的Storage Spaces Direct技術建構單台超融合環境。
在微軟Ignite 2022大會中,正式發佈將於2023年開始,提供由微軟設計和支援,專為Azure Stack HCI環境打造的「Azure Stack HCI Pro 2」硬體伺服器,如圖2所示,僅具備2U高度半深的外型尺寸,且產生的噪音低於60 dBA,因此非常適合部署在零售、製造、醫療保健等等邊緣運作場所。
Azure Stack HCI 22H2特色功能介紹
在Azure Stack HCI 22H2版本中,除了將原有特色功能增強外,也新增不少亮眼特色功能,例如儲存體複寫壓縮、Network ATC v2、Hyper-V即時移轉等等。
Hyper-V即時移轉增強無交換器架構
在過去的AzSHCI版本中,在小型規模「2~3台」叢集節點主機運作架構時,企業組織為了節省IT預算,經常會採用「無交換器」運作架構,也就是僅「南-北」(South-North)向網路流量需要網路交換器,而「東-西」(East-West)向網路流量則無須配置網路交換器,如圖3所示。
雖然能夠有效節省整體建置預算,並且降低初始網路組態的設定複雜度。但是,管理人員應該會發現,屆時嘗試透過Hyper-V即時遷移,線上移轉運作中的VM虛擬主機時,相較於使用網路交換器的運作架構來說,無交換器的Hyper-V即時遷移「網路延遲」(Network Latency)時間較高。新版AzSHCI 22H2版本中,已經完全解決採用無交換器運作架構時,Hyper-V即時遷移網路延遲的問題,讓小型規模的AzSHCI環境擁有更快速更穩定的Hyper-V即時遷移效能。
儲存體複本壓縮
在最新的AzSHCI 22H2版本中,針對儲存體複本技術開始支援壓縮功能,達成「儲存體複本壓縮」(Storage Replica Compression)機制。簡單來說,建立儲存體複本群組的方式無須任何變更,只要建立時加上「-EnableCompression」參數即可,例如「New-SRGroup -EnableCompression」。
一旦啟用壓縮機制後,系統將會在儲存體複本壓縮來源端將需要複寫傳送的資料,進行壓縮、網路傳輸至目的端、目的端解壓縮等等,如圖4所示。由於複寫資料壓縮後,將會產生較少的網路封包但傳輸相同的複寫資料量,所以能提供較高的資料傳送量和較低的網路頻寬使用率,進而降低企業組織在網路頻寬上成本。
值得注意的是,如果在建立儲存體複本群組時未指定啟用壓縮技術,那麼系統預設便不會啟用壓縮技術並自動設定為「停用」(Disabled)狀態,後續必須額外組態設定啟用壓縮技術才行,例如額外執行「Set-SRGroup -Compression $true」指令。
磁碟區格式轉換
在過去的AzSHCI版本中,建立的磁碟區格式都為「固定」(Fixed)格式,雖然可以得到最佳化儲存效能,但是在整體儲存資源空間的使用率上則缺乏彈性。舉例來說,建立1TB儲存空間的超融合磁碟區,然後在這個1TB儲存空間中,即便VM虛擬主機工作負載僅使用掉100GB的儲存空間,對於整體儲存資源空間的使用率來說,還是占用1TB的儲存空間。
現在最新的AzSHCI 22H2版本中,除了支援建立「精簡佈建」(Thin Provision)磁碟區外,也支援將現有的固定格式磁碟區,轉換為新式的精簡佈建磁碟區。簡單來說,採用精簡佈建磁碟區後,系統將會轉換並傳回在磁碟區中未使用的儲存空間回到儲存集區,以便系統提供給其他磁碟區使用,並且在磁碟區新增或移除資料時,磁碟區的儲存空間也將動態隨之增加和減少,確保儲存集區空間的使用彈性,如圖5所示。
Network ATC v2
最新AzSHCI 22H2版本針對Network ATC有多項功能增強和新特色功能,協助管理人員無論是在初期部署AzSHCI環境,或是後續的持續管理和叢集擴充,有助於簡化管理成本並得到更高的可靠性。
過去,在建構AzSHCI環境之前,必須先組態設定並配置適合的網路卡,加入至SET(Switch-Embedded Teaming)當中擔任成員網路卡,然而舊版本中必須依賴手動檢查和驗證,確保採用相同網路卡製造商、型號、傳輸速度的網路卡進行綁定作業,倘若不小心疏忽仍能進行綁定作業,但有可能造成屆時AzSHCI環境不穩定,例如將10Gb和40Gb網路混用,而造成AzSHCI環境網路傳輸不穩定,如圖6所示。
現在,透過「網路對稱」(Network Symmetry)特色功能,當準備將網路卡加入SET進行綁定作業時,系統將會針對網路卡製造商、硬體型號、傳輸速度等三項進行檢查,確保一致後才能將指定的網路卡加入至SET當中擔任成員網卡,並自動完成綁定作業,如圖7所示。
在過去舊版中,系統預設會配置給AzSHCI環境中,擔任儲存資源網路卡APIPA位址,也就是169.254.x.x的IP位址,但這種自動配置方式並不理想。因此最新AzSHCI 22H2版本提供了「IP位址自動指派」(Automatic IP Assignment),除了自動指派IP位址外,還會自動處理網路卡屬性配置、組態設定「資料中心橋接」(Data Center Bridging,DCB)、檢查是否需要建立vSwitch虛擬網路交換、倘若檢查後需要,便自動建立vSwitch虛擬網路交換、將實體網路卡和建立的vSwitch虛擬網路交換綁定、分配VLAN等等動作,如圖8所示。
舊版在建立AzSHCI環境時,系統預設指派給容錯移轉叢集的網路,都是「Cluster Network <數字>」的命名規則,然而這樣的命名規則並沒有意義,通常需要手動重新命名。現在,透過Network ATC部署和定義網路組態設定時,系統得知如何使用網路卡和網路環境,並採用新式的「叢集網路命名」(Cluster Network Naming)機制處理,所以能更恰當地為叢集網路進行命名,讓管理人員容易得知哪些網路用於運算資源,哪些網路用於儲存資源。
實戰Single-Node Azure Stack HCI Cluster
首先,下載最新Azure Stack HCI 22H2映像檔版本,在本文實作環境中,準備一台DC網域控制站,網域名稱為「lab.weithenn.org」,而AzSHCI主機除了作業系統硬碟外,額外配置四個1TB SSD固態硬碟,屆時為超融合儲存集區的儲存空間,AzSHCI安裝程序和傳統Windows Server安裝程序非常類似,如圖9所示,安裝作業完成後,系統將自動彈出命令提示字元視窗,並提醒管理人員設定Administrator管理者密碼,完成管理者密碼設定後,便自動進入「伺服器組態設定工具」(Server Configuration Tools,SConfig)互動設定視窗。
基礎設定
透過SConfig伺服器組態設定工具,可以輕鬆地為AzSHCI主機進行組態設定,包含電腦名稱、網路組態設定、加入網域環境、安裝最新安全性更新、變更系統時區和時間等等。
在本文實作環境中,將AzSHCI主機的電腦名稱變更為「AzSHCI」、網路組態設定固定IP位址為「10.10.75.31」、系統時區變更為「(UTC + 8)Taipei」、加入「lab.weithenn.org」網域環境,並安裝最新安全性更新,如圖10所示。
基礎設定完成後,首先確認額外配置的四個1TB SSD固態硬碟,AzSHCI主機是否能夠順利識別,確保稍後建立超融合儲存集區時,能夠順利地將SSD固態硬碟加入至儲存集區內。使用「Get-PhysicalDisk | Sort-Object -Property Size」PowerShell指令,檢查AzSHCI主機儲存裝置,並確保四個1TB SSD固態硬碟的CanPool欄位值為「True」,表示儲存裝置能夠加入超融合儲存集區內,如圖11所示。
執行「Install-WindowsFeature」PowerShell指令,安裝建構AzSHCI環境時必要的伺服器角色和功能,例如DCB資料中心橋接(Data-Center-Bridging)、容錯移轉叢集(Failover-Clustering)、Hyper-V虛擬化、檔案伺服器(FS-FileServer)等等,如圖12所示,待安裝程序完成後,系統會提醒必須重新啟動主機才能套用生效,鍵入「Restart-Computer」指令即可重新啟動主機。
建立容錯移轉叢集並啟用S2D技術
在本文撰寫期間,最新的WAC(Windows Admin Center)2110.2版本尚未支援部署和組態設定「單台」AzSHCI環境,因此在部署AzSHCI的1.2 Add Servers階段時,系統便會顯示警告,必須要「2~16」台節點主機才支援部署作業,如圖13所示。
因此,在現階段必須使用PowerShell指令執行部署單台AzSHCI的動作,微軟官方也已經說明,後續WAC的版本會盡快支援部署單台AzSHCI環境。執行PowerShell指令「New-Cluster -Name -Node -NoStorage -StaticAddress 」,在本文環境中,容錯移轉叢集名稱為「HCI-Cluster」,節點主機名稱為「AzSHCI」,而容錯移轉叢集IP位址則是「10.10.75.30」,要注意的是必須加上「-NoStorage」參數。
在順利建立容錯移轉叢集之後,接著執行PowerShell指令「Enable-ClusterStorageSpacesDirect -CacheState Disabled」,啟用Storage Spaces Direct技術並停用儲存體快取機制。啟用完成後,將會產生EnableClusterS2D報表檔案,後續可以透過WAC管理平台查看報表內容。最後執行「Get-StoragePool」指令,可以看到系統已經透過S2D技術將四個1TB SSD固態硬碟整合為4TB的儲存集區,如圖14所示。
註冊單台AzSHCI叢集
雖然目前最新版本的WAC管理平台尚未支援部署單台AzSHCI叢集,然而一旦建立完成後,同樣能透過WAC管理平台輕鬆管理和組態設定AzSHCI叢集以及後續工作負載,例如建立磁碟區、VM虛擬主機、AKS容器平台等等。
登入WAC管理平台後,依序點選「Add > Add or create resources > Server Clusters > Add」,在Add Cluster欄位中鍵入「HCI-Cluster」叢集名稱,系統便會自動掃描和探索到此超融合叢集,如圖15所示。
順利登入後,同樣可以透過WAC管理平台,看到AzSHCI超融合叢集的各種使用率和工作負載資訊,包括超融合叢集節點主機數量和資訊、儲存裝置數量和資訊、管理VM虛擬主機、超融合叢集CPU/Memory/Storage資源使用資訊、IOPS儲存效能、Latency延遲時間、Throughput傳輸速率等等,如圖16所示。
為建立的AzSHCI叢集進行註冊的動作,後續便能導入Azure Monitor監控機制、享有Azure Benefits權益、建置AKS容器平台等等並達成混合雲運作架構。
在註冊AzSHCI叢集之前,必須先將此台WAC管理平台註冊至Azure公有雲環境中,點選WAC管理平台右上角齒輪圖示,依序點選「Settings > Register > Register with Azure > Register」,在彈出的對話視窗中,於Select an Azure cloud下拉選單中選擇「Azure Global」項目,然後在Copy this code欄位中按下〔Copy〕按鈕,並按下Enter the code連結,此時瀏覽器將另開新頁後,貼上剛才複製的Code內容,通過使用者身分驗證程序後,系統會提示關閉該新開視窗,回到原有對話視窗中,可以發現多了Connect to Azure AD的訊息,並顯示Azure AD Tenant ID。
在Azure AD Application中,可以選擇Create New或Use Existing選項後按下〔Connect〕按鈕,順利連接至Azure AD環境中,最後按下Sign in to Azure選項中的〔Sign in〕按鈕,如圖17所示,即可將此台WAC註冊至指定的Azure訂閱帳戶和Azure AD環境中。
回到AzSHCI叢集的Dashboard頁面中,點選Azure connection中的Register this cluster連結,在彈出的Register Azure Stack HCI對話框中,首先於Azure subscription ID下拉選單中,選擇要使用的Azure訂閱帳戶,並在Azure Resource Group欄位中選擇Create new項目,然後鍵入資源群組名稱,本文實作環境為「RG-SoutheastAsia-AzSHCI」,而在Azure Region選擇此資源群組所要使用的Azure資料中心,本文實作環境選擇Azure東南亞機房的「Southeast Asia」,然後展示方式Advanced勾選「Enable Azure Arc」項目,連同Azure Arc管理機制一同安裝並註冊使用,確認無誤後按下〔Register〕按鈕,便立即進行向Azure公有雲註冊AzSHCI叢集和Azure Arc管理機制,如圖18所示。
開始註冊流程後,系統會彈出CredSSP視窗,鍵入連結至AzSHCI叢集時,使用的CredSSP connection的使用者帳號和密碼,通過使用者身分驗證程序後,可以手動開啟另一個視窗,登入Azure Portal中的Resource Group,可以看到會自動建立剛才指定的「RG-SoutheastAsia-AzSHCI」資源群組。進入之後,在Resources區塊中,可以看到註冊了名稱為「HCI-Cluster」的超融合叢集,進入後可以看到AzSHCI主機,並啟用Azure Arc管理機制,如圖19所示。
順利透過Azure Portal確認AzSHCI叢集和Azure Arc管理機制註冊完成後,切換回WAC管理平台視窗,可以發現顯示成功註冊資訊,而Azure connection區塊中的Status狀態資訊,也從原先紅色錯誤的Not yet registered,變更為綠色打勾的Connected狀態,如圖20所示。
將固定磁碟區轉換為精簡佈建磁碟區
現在,可以直接透過WAC管理平台為單台AzSHCI叢集建立新式的精簡佈建磁碟區,以供後續VM虛擬主機或檔案伺服器等等工作負載使用。
值得注意的是,雖然AzSHCI叢集已全面支援精簡佈建磁碟區,但預設情況下系統仍會採用並部署「固定」(Fixed)磁碟區。可以在WAC管理介面中,依序點選「Settings > Settings > Storage > Storage Spaces and pools > Storage Pool > Default Provisioning Type」,由原本的Fixed選擇至「Thin」選項,然後按下〔Save〕按鈕,即可將預設值修改為採用精簡佈建磁碟區,如圖21所示。
如果忘記調整預設值,並且在建立磁碟區時忘記選擇採用精簡佈建磁碟區,該如何將固定磁碟區轉換為精簡佈建磁碟區,以快速進行磁碟區轉換作業?首先,在WAC管理介面中依序點選「Storage Volumes > Inventory > Create」,在Create Volume視窗中,於Name欄位鍵入磁碟區名稱,本文實作為「VMs-ThinVolume」,而在Resiliency下拉式選單中,選擇資料容錯等級「Two-way mirror」,或依據需求選擇更高的資料容錯等級。在Size on SSD中,則鍵入要建立的磁碟區大小和GB或TB,確認無誤後再按下〔Create〕按鈕即可,就能夠看到採用固定磁碟區加上Two-way Mirror,所以占用2TB的儲存空間,如圖22所示。
由於WAC管理平台尚未支援轉換磁碟區作業,切換至PowerShell視窗,先執行「Get-StorageTier」指令,確認VMs-ThinVolume磁碟區使用固定大小類型,然後執行「Set-StorageTier -ProvisioningType Thin」將磁碟區類型由原本的固定大小變更為「精簡佈建」磁碟區。
雖然已經成功改變磁碟區類型,但ReFS檔案系統只會在掛載時辨識磁碟區類型。因此,在多叢集節點的AzSHCI環境中,只要將磁碟區的擁有節點轉移由別台叢集節點接手即可,而單台AzSHCI環境因為沒有其他節點,所以必須透過「Stop-ClusterReousrce和Start-ClusterReousrce」指令,手動停止再啟動叢集資源,因此運作其中的工作負載將會遭遇存取中斷的情況,建議應該在維護期間執行此轉換作業,如圖23所示。
此時,再次查看磁碟區資訊,可以看到Used欄位由先前的2.04TB降低為「114GB」,而Available欄位由先前的1.96TB提升為「3.89TB」,如圖24所示。
結語
透過本文的深入剖析和實作演練後,相信管理人員除了理解最新Azure Stack HCI 22H2版本特色功能外,也了解如何建構和部署單台Azure Stack HCI超融合叢集,並將固定大小磁碟區轉換為精簡佈建磁碟區。
<本文作者:王偉任,Microsoft MVP及VMware vExpert。早期主要研究Linux/FreeBSD各項整合應用,目前則專注於Microsoft及VMware虛擬化技術及混合雲運作架構,部落格weithenn.org。>