透過PowerShell更新 Azure 本機版本 23H2
適用於:Azure 本機版本 23H2
本文說明如何透過PowerShell將解決方案更新套用至 Azure 本機。
本文中的程式同時適用於單一節點和多節點系統,這些系統執行已安裝協調器(生命週期管理員)的最新版 Azure Local。 如果您的系統是透過 Azure Local 版本 23H2 的新部署所建立,則協調器會自動安裝為部署的一部分。
重要
此處所述的程式僅適用於從某個版本的 Azure Local 版本 23H2 更新為另一個更高版本時。 如需舊版更新的相關信息,請參閱 更新 Azure 本機版本 22H2 的叢集。
關於解決方案更新
Azure 本機解決方案更新可以包含平臺、服務和解決方案擴充功能更新。 如需這些類型更新的詳細資訊,請參閱 關於 Azure 本機版本 23H2 的更新。
當您套用解決方案更新時,以下是您採取的高階步驟:
- 請確定所有必要條件都已完成。
- 透過遠端 PowerShell 連線到您的 Azure 本機實例。
- 確認目前的已安裝軟體版本,並確認您的叢集狀況良好。
- 探索可用的更新,並篩選您可以套用至系統的更新。
- (建議)預先下載更新並評估系統更新整備程度。
- 安裝更新並追蹤更新的進度。 視需要監視詳細進度。
- 確認已安裝的更新版本。
安裝更新所需的時間會根據下列因素而有所不同:
- 更新的內容。
- 在您的系統上載入 。
- 系統中的電腦數目。
- 使用的硬體類型。
- 所使用的解決方案延伸模組。
下表摘要說明一般單一或多節點系統的近似時間估計值:
系統/時間 | 健康情況檢查的時間 hh:mm:ss |
安裝更新的時間 hh:mm:ss |
---|---|---|
單一節點 | ~03:00 | ~ 01:30 |
4 個節點 | ~ 05:00 | ~ 04:00 |
重要
不支援使用第三方工具來安裝更新。
必要條件
在您開始前,請確定:
- 您可以存取執行 2311 或更高版本的 Azure 本機版本 23H2 系統。 系統應該在 Azure 中註冊。
- 您可以存取可連線到 Azure 本機的用戶端。
- 您可以透過網路存取解決方案更新。
線上到您的 Azure 本機
請遵循用戶端上的下列步驟,連線到 Azure 本機中的其中一部機器。
以系統管理員身分執行 PowerShell,以您用來連線到系統的用戶端。
開啟遠端 PowerShell 工作階段至 Azure 本機電腦上的電腦。 執行下列命令,並在出現提示時提供計算機的認證:
$cred = Get-Credential Enter-PSSession -ComputerName "<Computer IP>" -Credential $cred
注意
使用您的部署用戶帳戶認證登入。 這是您在準備 Active Directory 並用來部署 Azure 本機時所建立的帳戶。
展開本節以查看範例輸出。
以下為範例輸出:
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>
步驟 1:確認軟體和驗證系統健康情況
在您查找更新之前,請確保您的系統正在運行 Azure 本機版本 23H2,且軟體版本為 2311 或更高。
請確定您已使用部署使用者帳戶連線到電腦。 執行以下命令:
whoami
若要確保系統正在執行 Azure Local 版本 23H2,請在系統的其中一部電腦上執行下列命令:
Get-SolutionUpdateEnvironment
展開本節以查看範例輸出。
PS C:\Users\lcmuser> Get-SolutionUpdateEnvironment ResourceId : redmond SbeFamily : GenA HardwareModel : Contoso680 LastChecked : 10/2/2024 12:38:21 PM PackageVersions : {Solution: 10.2408.0.29, Services: 10.2408.0.29, Platform: 1.0.0.0, SBE: 4.1.2409.1} CurrentVersion : 10.2408.0.29 CurrentSbeVersion : 4.1.2409.1 LastUpdated : State : UpdateAvailable HealthState : Success HealthCheckResult : {Storage Subsystem Summary, Storage Pool Summary, Storage Services Physical Disks Summary, Storage Services Physical Disks Summary...} HealthCheckDate : 10/2/2024 10:46:44 AM AdditionalData :
請注意您系統上的
CurrentVersion
。 目前的版本反映您系統正在執行的解決方案版本。查看系統上的
HealthState
,並確認您的系統狀況良好。 如果 HealthState 是Failure
、Error
或Warning
,請在繼續之前參閱 檢查問題排除。
步驟 2:探索更新
請遵循下列步驟來探索您系統的可用更新:
使用部署用戶帳戶連線到 Azure 本機上的電腦。
檢閱準備使用
Get-SolutionUpdate
安裝的Ready
更新詳細資訊。Get-SolutionUpdate | Where-Object {$_.State -like "Ready*" -or $_.State -like "Additional*"} | FL DisplayName, Description, ResourceId, State, PackageType
展開本節以查看範例輸出。
以下為範例輸出:
PS C:\Users\lcmuser> Get-SolutionUpdate | Where-Object {$_.State -like "Ready*" -or $_.State -like "Additional*"} | FL DisplayName, Description, ResourceId, State, PackageType DisplayName : 2024.10 Cumulative Update ResourceId : redmond/Solution10.2408.2.7 Version : 10.2408.2.7 State : Ready PackageType : Solution DisplayName : SBE_Contoso_GenA_4.1.2410.5 ResourceId : redmond/SBE4.1.2410.5 Version : 4.1.2410.5 State : AdditionalContentRequired PackageType : SBE
這裡可能會列出一或多個選項,包括完整
Solution
更新的條目(也可能包含解決方案建置器擴充功能)以及獨立的SBE
更新。如果您未見列出預期的更新,請將命令中的篩選器移除,查看它是否顯示在
non-ready
狀態中:Get-SolutionUpdate | FL DisplayName, Description, ResourceId, State, PackageType
如需詳細資訊,請參閱 關於更新階段,以取得更新狀態的詳細數據。
選取您想要安裝的更新,並記下其
ResourceId
。 檢閱更新的詳細數據,以確認您已選取要安裝的所需更新。$Update = Get-SolutionUpdate –Id <ResourceId> $Update
展開本節以查看範例輸出。
以下為範例輸出:
PS C:\Users\lcmuser> $Update = Get-SolutionUpdate –Id redmond/Solution10.2408.2.7 PS C:\Users\lcmuser> $Update ResourceId : redmond/Solution10.2408.2.7 InstalledDate : Description : State : Ready KbLink : https://zcusa.951200.xyz/en-us/azure-stack/hci/ MinVersionRequired : 10.2408.0.0 MinSbeVersionRequired : 2.0.0.0 PackagePath : C:\ClusterStorage\Infrastructure_1\Shares\SU1_Infrastructure_1\Updates\Packages\Solution10.2408 .2.2 PackageSizeInMb : 1278 DisplayName : 2024.10 Cumulative Update Version : 10.2408.2.7 SbeVersion : 4.1.2410.5 Publisher : Microsoft ReleaseLink : https://zcusa.951200.xyz/en-us/azure-stack/hci/ AvailabilityType : Online PackageType : Solution Prerequisites : {} UpdateStateProperties : The update requires additional content distributed by the OEM. AdditionalProperties : {SBEReleaseLink, SBENotifyMessage, SBEFamily, SBEPublisher...} ComponentVersions : {Services: 10.2408.2.7, Platform: 10.2408.2.7, SBE: 4.1.2410.5} RebootRequired : Unknown HealthState : Unknown HealthCheckResult : HealthCheckDate : 1/1/0001 12:00:00 AM BillOfMaterials : {PlatformUpdate, ServicesUpdate}
注意
HealthState
為Unknown
是正常的,因為該更新尚未排程或準備。選擇性地檢閱更新套件元件的版本。
$Update = Get-SolutionUpdate -Id <ResourceID> $Update.ComponentVersions
展開本節以查看範例輸出。
以下為範例輸出:
PS C:\Users\lcmuser> $Update = Get-SolutionUpdate -Id redmond/Solution10.2408.2.7 PS C:\Users\lcmuser> $Update.ComponentVersions PackageType Version LastUpdated ----------- ------- ----------- Services 10.2408.2.7 Platform 10.2408.2.7 SBE 4.1.2410.5 PS C:\Users\lcmuser>
您現在可以繼續下載 並安裝更新。
步驟 3:匯入和重新發現更新
這是 選擇性 步驟。 在下列其中一個案例中,可能需要匯入更新:
您要安裝的更新顯示
AdditionalContentRequired
狀態。 在您進行AdditionalContentRequired
狀態的更新排程之前,可能需要一些額外的內容。 如需此狀態和解決方案擴充功能更新的詳細資訊,請參閱 Azure 本機版本 23H2上的解決方案擴充功能更新。 您想要安裝的更新並未列出,因為支援會提供您私人版本來解決您遇到的問題。
更新會列為
Ready
,但因為您的系統有有限的網路連線能力,因此您想要避免解決方案擴充功能更新的在線下載階段。
請遵循下列步驟來匯入和探索您的解決方案更新。
使用部署用戶帳戶連線到 Azure 本機上的電腦。
移至網路共享並取得您使用的更新套件。 確認您匯入的更新套件包含下列檔案:
- SolutionUpdate.xml
- SolutionUpdate.zip
- AS_Update_10.2408.2.7.zip
如果解決方案產生器擴充功能是更新套件的一部分,您也應該會看到下列檔案:
- SBE_Contoso_GenA_4.1.2410.5.xml
- SBE_Contoso_GenA_4.1.2410.5.zip
- SBE_Discovery_Contoso.xml
下載您打算匯入的檔案到 Azure 本機實例可以存取的位置。 如果您要匯入解決方案延伸模組,您一律會下載三個符合下列命名模式的檔案:
檔名模式 例 描述 SBE_Discovery_<制造商>.xml SBE_Discovery_Contoso.xml 啟用更新發現的解決方案擴展發現清單。 SBE_<Manufacturer>_<系列>_<版本>.xml SBE_Contoso_GenA_4.1.2410.5.xml 具有解決方案擴展名清單和已簽署軟體物料清單的檔案 SBE_<制造商>_<系列>_<版本>.zip SBE_Contoso_GenA_4.1.2410.5.zip 具有解決方案擴充承載的檔案 在系統基礎結構磁碟區中的下列位置,建立更新服務探索的資料夾。
New-Item C:\ClusterStorage\Infrastructure_1\Shares\SU1_Infrastructure_1\import -ItemType Directory
將更新檔案複製到您在上一個步驟中建立的資料夾。
使用 Update 服務手動探索更新套件。 執行以下命令:
Add-SolutionUpdate -SourceFolder C:\ClusterStorage\Infrastructure_1\Shares\SU1_Infrastructure_1\import
確認 Update 服務會探索更新套件,而且可供開始準備和安裝。 重複
Get-SolutionUpdate
命令以重新探索更新。
步驟 4:(建議) 預先下載並檢查更新整備程度
您可以下載更新並執行一組檢查,以確認叢集的更新整備程度,而不需要啟動安裝。
若要下載更新而不啟動安裝,請執行下列命令:
Get-SolutionUpdate -Id <ResourceId> | Start-SolutionUpdate –PrepareOnly
展開本節以查看範例輸出。
以下是範例輸出:
PS C:\Users\lcmuser> Get-SolutionUpdate -Id redmond/Solution10.2408.2.7 | Start-SolutionUpdate –PrepareOnly redmond/SBE4.1.2410.9/<GUID>
若要追蹤更新進度,請監視更新狀態。 執行以下命令:
Get-SolutionUpdate -Id <ResourceId> | ft Version,State,UpdateStateProperties,HealthState
更新啟動時,會發生下列動作:
- 更新的下載隨即開始。 視下載套件的大小和網路頻寬而定,下載可能需要幾分鐘的時間。
展開本節以查看範例輸出。
以下是下載更新時的範例輸出:
PS C:\Users\lcmuser> Get-SolutionUpdate -Id redmond/Solution10.2408.2.7 | ft Version,State,HealthState Version State HealthState ------- ----- --------------------- 10.2408.2.7 Downloading InProgress
下載套件之後,會執行整備檢查來評估系統的更新整備程度。 如需整備檢查的詳細資訊,請參閱 更新階段。 在這個階段中, 更新的狀態 會顯示為
HealthChecking
。展開本節以查看範例輸出。
PS C:\Users\lcmuser> Get-SolutionUpdate|ft Version,State,UpdateStateProperties,HealthState Version State HealthState ------- ----- --------------------- 10.2408.2.7 HealthChecking InProgress
完成整備檢查時,系統會準備好安裝更新。 更新的
State
會顯示為ReadyToInstall
。 如果更新的State
顯示為HealthCheckFailed
,請參閱 在您繼續之前,先對整備檢查進行疑難解答。
步驟 5:啟動更新
在安裝期間,系統機器可能會重新啟動,您可能需要再次建立遠端 PowerShell 工作階段來監視更新。 如果更新單一計算機,您的 Azure 本地服務會有停機時間。
要啟動更新,請先選取單一更新,然後將其傳遞至 Start-SolutionUpdate
。
$InstanceId = Get-SolutionUpdate -Id <ResourceId> | Start-SolutionUpdate
注意
如果略過步驟 4 (且您未呼叫類似 Start-SolutionUpdate -PrepareOnly
),呼叫 Start-SolutionUpdate
會先下載更新,並執行一系列檢查,以確認叢集的更新準備情況,然後再開始安裝更新。
展開本節以查看範例輸出。
PS C:\Users\lcmuser> $InstanceId = Get-SolutionUpdate -Id redmond/Solution10.2408.2.7 | Start-SolutionUpdate
這會啟動安裝更新的程式。
提示
請儲存 $InstanceId
,因為您日後可以利用它來 針對 Azure 本機的方案更新進行疑難排解。
步驟 6:追蹤更新進度
Microsoft建議在 Azure 入口網站中啟動更新之後追蹤叢集更新進度。 即使透過PowerShell啟動更新,入口網站也是追蹤更新進度的絕佳選項,因為它不受狀態報告中斷的影響。
提示
- 如果透過PowerShell進行監視,建議您將PowerShell會話連線到叢集中的最後一部伺服器,以避免會話提早中斷連線。 當系統重新啟動時,會話會中斷連線,因此通過已更新的伺服器進行監控,可以將會話中斷的頻率降到最低。
- 建議您在 Azure 入口網站中追蹤叢集更新進度,以避免在機器重新啟動之後重新連線到 PowerShell 會話。
請遵循下列步驟來追蹤使用PowerShell的更新進度。
若要追蹤更新進度,請監視更新狀態。 執行以下命令:
Get-SolutionUpdate -Id <ResourceId> | ft Version,State,UpdateStateProperties,HealthState
更新會在數個階段中進行,如 檢閱更新階段中所述。
使用上述命令,下列範例示範如何使用
State
和UpdateStateProperties
屬性,在更新進行的各階段中進行監視。下載狀態
呼叫
Start-SolutionUpdate
后不久,就會開始下載更新。 視下載套件的大小和網路頻寬而定,下載可能需要幾分鐘的時間。展開本節以查看範例輸出。
以下是下載更新時的範例輸出:
PS C:\Users\lcmuser> Get-SolutionUpdate -Id redmond/Solution10.2408.2.7 |ft Version,State,UpdateStateProperties,HealthState Version State HealthState ------- ----- ------------ 10.2408.2.7 Downloading Unknown
準備狀態
下載更新之後,需要準備更新。 在準備狀態中,會確認更新檔案哈希,並擷取檔案來準備和暫存更新檔案。
展開本節以查看範例輸出。
以下是下載更新時的範例輸出:
PS C:\Users\lcmuser> Get-SolutionUpdate -Id redmond/Solution10.2408.2.7 |ft Version,State,HealthState Version State HealthState ------- ----- ----------- 10.2408.2.7 Preparing Unknown
健康檢查中狀態
一旦準備好更新,就會執行整備檢查來評估叢集的更新整備程度。 如需整備檢查的詳細資訊,請參閱 更新階段。
在這個階段中,更新中的
State
顯示為HealthChecking
。 如果更新的State
顯示為HealthCheckFailed
,請參閱 在您繼續之前,先對整備檢查進行疑難解答。展開本節以查看範例輸出。
以下是更新進行
HealthChecking
時的範例輸出:PS C:\Users\lcmuser> Get-SolutionUpdate -Id redmond/Solution10.2408.2.7 |ft Version,State,HealthState Version State HealthState ------- ----- ----------- 10.2408.2.7 HealthChecking Unknown
安裝狀態 當系統就緒時,更新會轉換為
Installing
。 在這個階段中,更新的State
會顯示為Installing
,UpdateStateProperties
顯示已完成安裝的百分比。展開本節以查看範例輸出。
以下是更新進行
Installing
時的範例輸出:PS C:\Users\lcmuser> Get-SolutionUpdate -Id redmond/Solution10.2408.2.7 |ft Version,State,HealthState Version State HealthState ------- ----- ----------- 10.2408.2.7 Installing Unknown
安裝完成後,狀態會變更為 Installed
。 如需各種更新狀態的詳細資訊,請參閱 安裝進度和監視。
步驟 7:繼續更新(如有需要)
若要繼續透過PowerShell執行先前失敗的更新,請使用下列命令:
Get-SolutionUpdate -Id <ResourceId> | Start-SolutionUpdate
若要繼續先前因更新整備檢查處於 Warning
狀態而失敗的更新,請使用下列命令:
Get-SolutionUpdate -Id <ResourceId> | Start-SolutionUpdate -IgnoreWarnings
若要針對其他更新執行問題進行疑難解答,請參閱 針對更新進行疑難解答。
步驟 8:確認安裝
安裝更新之後,請確認環境的解決方案版本和操作系統版本。
更新處於
Installed
狀態之後,請檢查環境解決方案版本。 執行以下命令:Get-SolutionUpdateEnvironment | ft State, CurrentVersion
展開本節以查看範例輸出。
PS C:\Users\lcmuser> Get-SolutionUpdateEnvironment | ft State, CurrentVersion State CurrentVersion ----- -------------- AppliedSuccessfully 10.2408.2.7
請檢查作業系統版本,確認它符合您安裝的配方。 執行以下命令:
cmd /c ver
展開本節以查看範例輸出。
以下是範例輸出:
PS C:\Users\lcmuser> cmd /c ver Microsoft Windows [Version 10.0.25398.1189] PS C:\Users\lcmuser>