適用於:Azure Local 2311.2 和更新版本
重要
Azure Stack HCI 版本 22H2 將於 2025 年 5 月 31 日終止支援。 在此日期之後:
- 每月安全性和品質更新會停止。
- 22H2 版系統的計費會繼續。
- 您的系統持續運作,包括註冊和修復。
- Microsoft支援仍僅供升級協助使用。
若要保持支持並繼續接收更新,建議您將作系統升級至 23H2 版。 如果您正在執行 Azure Stack HCI 版本 22H2 延展叢集,或透過 System Center - Virtual Machine Manager 管理 Azure 地端,請查看 支援工作負載與設定的更新時程表。
本文說明如何透過 PowerShell 將 Azure Local 的作系統 (OS) 從 22H2 版升級至 23H2 版,這是升級 OS 的建議方法。 這是升級程式的第一個步驟,只會升級OS。
還有其他方法可以升級作業系統,包括使用 Windows Admin Center 和伺服器組態工具 (SConfig)。 如需這些方法的詳細資訊,請參閱透過 Windows 管理中心將 Azure Stack HCI OS 版本 22H2 OS 升級及使用其他方法升級 Azure Local 至新的作業系統。
在本文中,我們會將OS 23H2 版視為新版本 ,並將22H2版視為 舊 版。
重要
若要讓您的 Azure 本地服務保持支持狀態,您最多需要六個月的時間才能安裝這個新的 OS 版本。 此更新適用於所有執行 22H2 版的 Azure 本機實例。 強烈建議您儘快安裝此版本。
OS 升級的高階工作流程
Azure Stack HCI 操作系統更新可透過 Windows Update 和您可以從 Azure 入口網站 下載的媒體取得。
若要升級系統上的OS,請遵循下列高階步驟:
- 完成必要條件。
- 更新登錄機碼。
- 連接至 Azure Local,版本 22H2。
- 使用 PowerShell 檢查可用的更新。
- 使用 PowerShell 安裝新的 OS。
- 檢查更新的狀態。
- 升級OS之後,請執行OS後升級步驟。
必須完成的前置作業
在您開始前,請確定:
您可以存取執行 22H2 版的 Azure 本地環境。
系統會在 Azure 中註冊。
所有位於您的 Azure Local 版本 22H2 實例中的機器均運行正常,顯示為 在線。
您關閉虛擬機器 (VM)。 建議您先關閉 VM,再執行 OS 升級,以避免資料庫發生非預期的中斷和損害。
您可以存取 Azure Local 的 Azure Stack HCI 版本 23H2 OS 軟體更新。 此更新可透過 Windows Update 或可下載的媒體取得。 媒體必須是 2503 版的 ISO 檔案,您可以從 Azure 入口網站 下載。
您可以存取能夠連接至您 Azure 地端實例的客戶端。 此客戶端應該執行 PowerShell 5.0 或更新版本。
只有在同時符合下列兩個條件時,您才會執行
RepairRegistration
Cmdlet:-
身分識別屬性遺失或不包含
type = "SystemAssigned"
。- 在 Azure 入口中的資源 JSON 中檢查此項目
- 或執行
Get-AzResource -Name <cluster_name>
PowerShell Cmdlet
-
雲端管理叢集群組不存在。 執行
Get-ClusterGroup
PowerShell cmdlet 來檢查它。
如果符合這兩個條件,請執行
RepairRegistration
Cmdlet。Register-AzStackHCI -TenantId "<tenant_ID>" -SubscriptionId "<subscription_ID>" -ComputerName "<computer_name>" -RepairRegistration
-
身分識別屬性遺失或不包含
(建議)升級OS之前,請先在 Azure 本機電腦上啟用 安全開機 。 若要啟用安全開機,請遵循下列步驟:
- 清空叢集節點。
- 重新啟動OS。
- 輸入 BIOS/UEFI 功能表。
- 檢閱 UEFI 組態選項的 開機 或 安全性 一節找出安全開機選項。
- 將選項設定為 [已啟用] 或 [開啟]。
- 儲存變更並重新啟動電腦。
如有需要,請洽詢硬體廠商以取得協助。
注意
只有在計算機無法存取 Windows Update 以下載 OS 功能更新時,才需要 2503 ISO 檔案。 如果使用此方法,請在連線到 Azure 本機版本 22H2 之後,跳至步驟 2:使用 PowerShell 安裝新的 OS 並執行其餘步驟中的步驟 6。 不支援使用第三方工具來安裝升級。
步驟 0:更新登錄機碼
若要確保復原文件系統 (ReFS) 和即時移轉在作系統升級期間和之後正常運作,請遵循系統中每部機器上的這些步驟來更新登錄機碼。 重新啟動每部機器,讓變更生效。
設定
RefsEnableMetadataValidation
為0
:Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\FileSystem" -Name "RefsEnableMetadataValidation" -Value 0 -Type DWord -ErrorAction Stop
如果參數索引鍵不存在,請建立參數索引鍵。 如果已經存在,命令可能會因錯誤而失敗,這是預期的。
New-Item -Path HKLM:\SYSTEM\CurrentControlSet\Services\Vid\Parameters
設定
SkipSmallLocalAllocations
為0
:New-ItemProperty -Path HKLM:\SYSTEM\CurrentControlSet\Services\Vid\Parameters -Name SkipSmallLocalAllocations -Value 0 -PropertyType DWord
重新啟動電腦,讓變更生效。 在機器重新啟動時,如果
RefsEnableMetadataValidation
密鑰被覆寫,且 ReFS 磁碟區無法上線,請先將機碼設定為RefsEnableMetadataValidation
,然後再切換回1
。更新並確認登錄機碼已在系統中的每部計算機上套用,再移至下一個步驟。
步驟 1:連線至 Azure Local 服务
請遵循在您的客戶端上的下列步驟,連線到 Azure 本機環境的其中一台機器。
以系統管理員身分執行 PowerShell,在您用來連接系統的客戶端上。
對 Azure 本機實例上的機器開啟遠端 PowerShell 會話。 執行下列命令,並在出現提示時提供計算機的認證:
$cred = Get-Credential Enter-PSSession -ComputerName "<Computer IP>" -Credential $cred
以下是範例輸出:
PS C:\Users\Administrator> $cred = Get-Credential cmdlet Get-Credential at command pipeline position 1 Supply values for the following parameters: Credential PS C:\Users\Administrator> Enter-PSSession -ComputerName "100.100.100.10" -Credential $cred [100.100.100.10]: PS C:\Users\Administrator\Documents>
步驟 2:使用 PowerShell 安裝新的 OS
若要使用 PowerShell 安裝新的 OS,請遵循下列步驟:
注意
下列步驟要求在系統上安裝並啟用叢集感知更新 (CAU) 角色。 如需如何在 Azure 本機上安裝和啟用此功能的資訊,請參閱 叢集感知更新概觀。
在系統中的每部計算機上執行下列 Cmdlet。
Set-WSManQuickConfig Enable-PSRemoting
若要測試系統是否已正確設定為使用 Cluster-Aware Updating(CAU)來套用軟體更新,請執行
Test-CauSetup
cmdlet,它會通知您任何警告或錯誤:Test-CauSetup -ClusterName <System name>
在系統中的其中一部計算機上執行 Cmdlet,
Test-Cluster
以驗證硬體和設定。 如果有任何條件檢查失敗,請先加以解決,再繼續進行下一個步驟。Test-Cluster
檢查可用的更新:
Invoke-CauScan -ClusterName <SystemName> -CauPluginName "Microsoft.RollingUpgradePlugin" -CauPluginArguments @{'WuConnected'='true';} -Verbose | fl *
檢查上述 Cmdlet 的輸出,並確認每部機器都提供相同的功能更新,這應該是這種情況。
您需要在系統外部有一台單獨的電腦或 VM 來執行
Invoke-CauRun
cmdlet。 個別計算機可確保當機器重新啟動時,協調流程不會中斷。重要
您執行
Invoke-CauRun
的系統必須執行 Windows Server 2022。Invoke-CauRun -ClusterName <SystemName> -CauPluginName "Microsoft.RollingUpgradePlugin" -CauPluginArguments @{'WuConnected'='true';} -Verbose -EnableFirewallRules -Force
如果系統未連線到 Windows Update,且 Azure 本機安裝媒體可在本機共用上使用,CAU 也可用來升級系統。 請務必使用 ISO 映像的共享路徑來更新
'PathToSetupMedia'
參數。Invoke-CauRun –ClusterName <SystemName> -CauPluginName Microsoft.RollingUpgradePlugin -CauPluginArguments @{ 'WuConnected'='false';'PathToSetupMedia'='\some\path\'; 'UpdateClusterFunctionalLevel'='true'; } -Force
檢查是否有任何進一步的更新並加以安裝。
等候更新完成,並檢查更新的狀態。
步驟 3:檢查更新的狀態
若要取得進行中更新的摘要資訊,請執行
Get-CauRun
Cmdlet:Get-CauRun -ClusterName <SystemName>
以下是範例輸出:
RunId : <Run ID> RunStartTime : 10/13/2024 1:35:39 PM CurrentOrchestrator : NODE1 NodeStatusNotifications : { Node : NODE1 Status : Waiting Timestamp : 10/13/2024 1:35:49 PM } NodeResults : { Node : NODE2 Status : Succeeded ErrorRecordData : NumberOfSucceededUpdates : 0 NumberOfFailedUpdates : 0 InstallResults : Microsoft.ClusterAwareUpdating.UpdateInstallResult[] }
在系統中的其中一部計算機上執行 Cmdlet,
Test-Cluster
以驗證系統的健康情況。 如果有任何條件檢查失敗,請先加以解決,再繼續進行下一個步驟。Test-Cluster
在移至下一個步驟之前,請先確認系統中的每個機器上仍套用登錄機碼。
若要檢查登錄機碼是否存在:
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\FileSystem" -Name "RefsEnableMetadataValidation"
視需要重新套用登錄機碼,並重新啟動每部機器,變更才會生效:
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\FileSystem" -Name "RefsEnableMetadataValidation" -Value 0 -Type DWord -ErrorAction Stop
如果 OS 升級失敗,請執行下列命令來復原 CAU 執行:
Invoke-CauRun –ForceRecovery -Force
您現在已準備好為系統執行 OS 後升級步驟。