共用方式為


針對 Azure 本機版本 23H2 的解決方案更新進行疑難解答

適用於:Azure 本機版本 23H2

本文說明如何針對套用至 Azure 本機的解決方案更新進行疑難解答,使其保持最新狀態。

關於疑難解答更新

如果您的系統是透過新的 Azure Local 版本 23H2 部署所建立,則協調器會在部署期間安裝。 協調器會管理平臺的所有更新 - OS、驅動程式和韌體、代理程式和服務。

新的更新解決方案包含重試和補救邏輯。 此邏輯會嘗試以非干擾方式修正更新問題,例如重試 Cluster-Aware Update (CAU) 執行。 如果無法自動修復更新執行,則會更新失敗。 當更新失敗時,Microsoft建議檢查失敗訊息的詳細數據,以判斷適當的下一個動作。 您可以視需要嘗試繼續更新,以判斷重試是否會解決問題。

針對整備檢查進行疑難解答

整備檢查對於確保您順利套用更新、保持系統 up-to日期,以及維護正確的系統功能至關重要。 就緒檢查會在兩種情境中分別執行並回報:

  • 系統健康情況檢查每 24 小時執行一次

  • 更新檢查下載更新內容後的準備狀態,並在開始安裝前執行。

系統健康檢查結果與更新準備檢查結果出現差異是很常見的。 這是因為更新整備檢查會使用要安裝之解決方案更新的最新驗證邏輯,而系統健康情況檢查一律使用已安裝版本的驗證邏輯。

系統和預更新準備檢查都會執行類似的驗證,並將準備檢查分為三種類型:重大、警告和資訊。

  • 重大:防止您套用更新的準備檢查。 此狀態表示您必須先解決的問題,才能繼續進行更新。
  • 警告:就緒檢查也會防止您套用更新,但您可以使用 PowerShell跳過這些檢查。 此狀態表示可能不夠嚴重而無法停止更新,但應加以解決,以確保更新程序順暢。
  • 告知性:不會封鎖更新的準備性檢查。 此狀態提供系統狀態的相關信息,以及不應該直接影響更新程式的任何潛在問題。 這些檢查適用於您的認知,而且可能不需要立即採取動作。

疑難解答步驟會根據整備檢查的來源案例而有所不同。

使用 Azure 入口網站

案例 1:系統健康情況檢查

在 Azure Update Manager 中準備安裝系統更新時,就會發生此案例:

  1. 在系統清單中,檢視 更新整備關鍵 狀態。

    更新管理員頁面的螢幕快照。

  2. 從清單中選取一或多個系統,然後選取 [一次性更新]。

  3. 在 [檢查整備 頁面上,檢閱整備檢查清單及其結果。

    1. 選取 [檢視詳細資訊] 連結,位於 [受影響系統] 之下。

    2. 當詳細數據方塊開啟時,您可以檢視更多詳細數據、個別系統結果,以及 補救 是否有失敗的健康情況檢查。

    [安裝更新] 頁面的螢幕快照。

    請遵循補救指示來解決失敗。

    注意

    系統健康情況檢查每隔 24 小時執行一次,因此在補救失敗之後,新結果最多可能需要 24 小時才會同步至 Azure 入口網站。 若要立即起始新的系統健康狀態檢查或進一步疑難解答,請參閱 PowerShell 一節。

案例 2:更新整備檢查

在 Azure Update Manager 中安裝和追蹤系統更新時,就會發生此案例:

  1. 歷程記錄中,從清單中選取失敗的更新作業。

  2. 在 [檢查整備 頁面上,檢閱整備檢查清單及其結果。

    1. 選取 [檢視詳細資訊] 連結,位於 [受影響系統] 之下。

    2. 當詳細數據方塊開啟時,您可以檢視更多詳細數據、個別系統結果,以及 補救 是否有失敗的健康情況檢查。

    [更新進度] 頁面的螢幕快照。

    請遵循補救指示來解決失敗,然後選取 [再試一次] 按鈕,以重試更新前整備檢查,繼續更新

    若要進一步進行疑難解答,請參閱 PowerShell 一節。

使用 PowerShell

案例 1:系統健康情況檢查

若要透過PowerShell針對系統健康情況檢查進行疑難解答:

  1. 若要驗證系統健康情況檢查失敗,請在系統中的其中一部計算機上執行下列命令:

    Get-SolutionUpdateEnvironment
    

    以下是範例輸出:

    PS C:\Users\lcmuser> Get-SolutionUpdateEnvironment 
    ResourceId        : redmond  
    SbeFamily         : VirtualForTesting  
    HardwareModel     : Virtual Machine  
    LastChecked       : 9/12/2023 10:34:42 PM  
    PackageVersions   : {Solution: 10.2309.0.20, Services: 10.2309.0.20, Platform: 1.0.0.0, SBE: 4.0.0.0}  
    CurrentVersion    : 10.2309.0.20  
    CurrentSbeVersion : 4.0.0.0  
    LastUpdated       :  
    State             : AppliedSuccessfully  
    HealthState       : Failure 
    HealthCheckResult : {Storage Pool Summary, Storage Services Physical Disks Summary, Storage Services Physical Disks  
    
                    Summary, Storage Services Physical Disks Summary...}  
    
    HealthCheckDate   : 9/12/2023 7:03:32 AM  
    
    AdditionalData    : {[SBEAdditionalData, Solution Builder extension is partially installed. Please install the latest  
    
                    Solution Builder Extension provided by your hardware vendor.  
    
                    For more information, see https://aka.ms/SBE.]}  
    
    HealthState       : Success  
    HealthCheckResult : {}  
    HealthCheckDate   : 8/4/2022 9:10:36 PM 
    
    PS C:\Users\lcmuser>
    
  2. 請檢查系統上的 HealthState,並查看 FailureWarning 的值。

  3. 若要篩選 HealthCheckResult 屬性以識別失敗的測試,請執行下列命令:

    $result = Get-SolutionUpdateEnvironment 
    
    $result.HealthCheckResult | Where-Object {$_.Status -ne "SUCCESS"} | FL Title,Status,Severity,Description,Remediation
    

    以下是範例輸出:

    Title       : The machine proxy on each failover cluster node should be set to a local proxy server 
    Status      : FAILURE 
    Severity    : INFORMATIONAL 
    Description : Validating cluster setup for update. 
    Remediation : `https://learn.microsoft.com/en-us/windows-server/failover-clustering/cluster-aware-updating-requirements# 
              tests-for-cluster-updating-readiness`
    
    Title       : The CAU clustered role should be installed on the failover cluster to enable self-updating mode 
    Status      : FAILURE 
    Severity    : INFORMATIONAL 
    Description : Validating cluster setup for update. 
    Remediation : `https://learn.microsoft.com/en-us/windows-server/failover-clustering/cluster-aware-updating-requirements# 
              tests-for-cluster-updating-readiness`
    
  4. 檢視失敗測試的 [Remediation] 字段,並視需要採取動作來解決失敗。

  5. 解決失敗之後,請執行下列命令,再次叫用系統健康情況檢查:

    Invoke-SolutionUpdatePrecheck -SystemHealth
    
  6. 使用 Get-SolutionUpdateEnvironment 來確認健康檢查失敗問題已經解決。 系統健康情況檢查可能需要幾分鐘的時間才能執行。

    以下是範例輸出:

    PS C:\Users\lcmuser>  Get-SolutionUpdateEnvironment | FL HealthState, HealthCheckResult, HealthCheckDate 
    
    HealthState       : InProgress 
    HealthCheckResult : 
    HealthCheckDate   : 1/1/0001 12:00:00 AM 
    
    PS C:\Users\lcmuser>  Get-SolutionUpdateEnvironment | FL HealthState, HealthCheckResult, HealthCheckDate
    
    HealthState       : Success 
    
    HealthCheckResult : {Storage Pool Summary, Storage Subsystem Summary, Storage Services Summary, Storage Services 
    
                    Summary...} 
    
    HealthCheckDate   : 10/18/2024 11:56:49 PM 
    

案例 2:更新整備檢查

當更新整備檢查失敗時,這會導致系統上的更新失敗。 若要針對更新就緒性檢查進行疑難排解,請透過 PowerShell:

  1. 若要驗證更新整備檢查失敗,請在系統中的其中一部電腦上執行下列命令:

    Get-SolutionUpdate | FT Version,State,HealthCheckResult
    

    以下是範例輸出:

    PS C:\Users\lcmuser> Get-SolutionUpdate | FT Version,State,HealthCheckResult 
    
    Version     State              HealthCheckResult 
    -------     -----              ----------------- 
    10.2405.2.7 HealthCheckFailed {Storage Subsystem Summary, Storage Pool Summary, Storage Services Physical Disks Summary, Stora...                       
    
    PS C:\Users\lcmuser>
    
  2. 檢閱更新的 State,並檢視 HealthCheckFailed 值。

  3. 若要篩選 HealthCheckResult 屬性以識別失敗的測試,請執行下列命令:

    $result = Get-SolutionUpdate 
    $result.HealthCheckResult | Where-Object {$_.Status -ne "SUCCESS"} | FL Title,Status,Severity,Description,Remediation
    

    以下是範例輸出:

    Title       : The machine proxy on each failover cluster node should be set to a local proxy server 
    Status      : FAILURE 
    Severity    : INFORMATIONAL 
    Description : Validating cluster setup for update. 
    Remediation : https://learn.microsoft.com/en-us/windows-server/failover-clustering/cluster-aware-updating-requirements# 
              tests-for-cluster-updating-readiness 
    
    Title       : The CAU clustered role should be installed on the failover cluster to enable self-updating mode 
    Status      : FAILURE 
    Severity    : INFORMATIONAL 
    Description : Validating cluster setup for update. 
    Remediation : https://learn.microsoft.com/en-us/windows-server/failover-clustering/cluster-aware-updating-requirements# 
              tests-for-cluster-updating-readiness
    
  4. 檢視失敗測試的 [Remediation] 字段,並視需要採取動作來解決失敗。

  5. 解決失敗之後,請再次執行更新檢查,使用下列命令:

    Get-SolutionUpdate -Id <some ID> | Start-SolutionUpdate -PrepareOnly
    

針對更新失敗進行疑難解答

如果發生導致更新失敗的問題,檢視詳細的步驟進度以找出失敗的位置,通常是判斷問題能否透過簡單修復(然後繼續)解決,或需要尋求支援協助才能解決問題的最佳方法。 要記下失敗步驟的關鍵項目值得注意的有:

  • 失敗步驟的名稱和描述。

  • 步驟失敗的電腦或伺服器(如果發生電腦特定問題)。

  • 失敗訊息字串(可能會指向特定已知問題,並提供已記錄的補救措施)。

Microsoft 建議使用 Azure 入口網站來識別出錯的步驟資訊,如 繼續更新所示。 或者,請參閱下一節,以瞭解如何使用 Start-MonitoringActionplanInstanceToComplete在PowerShell中檢視類似的詳細數據。

如需更新失敗案例和補救指導方針,請參閱下表。

步驟名稱 問題類型 修復
任何 更新期間系統發生電源中斷或其他類似的中斷。 1.還原電源。
2.執行系統健康情況檢查。
3.繼續更新。
CAU 更新 叢集感知更新 (CAU) 更新執行失敗,max retries exceeded 失敗。 如果有跡象表明已進行多次 CAU 嘗試且均已失敗,通常最好先調查首次失敗。

使用第一次故障的開始和結束時間,對應正確的 Get-CauReport 輸出,以便進一步調查故障。
任何 一或多個節點上的記憶體、電源供應器、啟動驅動程式或類似的系統元件發生嚴重失敗。 如需修復失敗節點的方法,請參閱 在 Azure Local 修復節點,版本 23H2
修復節點之後,即可繼續更新。

收集更新記錄

您也可以收集診斷記錄,以協助Microsoft找出並修正問題。

若要使用 Azure 入口網站收集更新的記錄,請參閱 繼續更新

若要收集更新失敗的紀錄,請參閱 收集 Azure 本地版本 23H2 的診斷紀錄

檢視更新摘要報告

若要使用 PowerShell 檢視詳細的更新摘要報告,請遵循您用來存取系統的用戶端上的下列步驟:

  1. 使用電腦建立遠端PowerShell工作階段。 以系統管理員身分執行 PowerShell,然後執行下列命令:

    Enter-PSSession -ComputerName <machine_IP_address> -Credential <username\password for the machine>
    
  2. 取得所有解決方案更新,然後篩選出對應特定版本的解決方案更新。 所使用的版本需對應到安裝失敗的解決方案更新版本。

    $Update = Get-SolutionUpdate | ? Version -eq "<Version string>" -verbose
    
  3. 識別失敗解決方案更新執行的執行計劃。

    $Failure = $update | Get-SolutionUpdateRun
    
  4. 識別更新中的 ResourceID

    $Failure
    

    以下是範例輸出:

    PS C:\Users\lcmuser> $Update = Get-SolutionUpdate| ? Version -eq "10.2303.1.7" -verbose
    PS C:\Users\lcmuser> $Failure = $Update|Get-SolutionUpdateRun
    PS C:\Users\lcmuser> $Failure
    
    ResourceId      : redmond/Solution10.2303.1.7/6bcc63af-b1df-4926-b2bc-26e06f460ab0
    Progress        : Microsoft.AzureStack.Services.Update.ResourceProvider.UpdateService.Models.Step
    TimeStarted     : 4/21/2023 10:02:54 PM
    LastUpdatedTime : 4/21/2023 3:19:05 PM
    Duration        : 00:16:37.9688878
    State           : Failed
    

    記下 ResourceID GUID。 這個 GUID 對應至 ActionPlanInstanceID

  5. 查看您稍早注意到的 ActionPlanInstanceID 摘要。

    Start-MonitoringActionplanInstanceToComplete -actionPlanInstanceID <Action Plan Instance ID>
    

    以下是範例輸出:

    PS C:\Users\lcmuser> Start-MonitoringActionplanInstanceToComplete -actionPlanInstanceID 6bcc63af-b1df-4926-b2bc-26e06f460ab0
    

    Powershell 收集記錄輸出的螢幕快照。

繼續更新

若要繼續先前失敗的更新執行,您可以透過 Azure 入口網站 或 PowerShell 重試更新執行。

Azure 入口網站

強烈建議使用 Azure 入口網站,流覽至失敗的更新,然後選取 [再試一次] 按鈕。 這項功能可在更新執行的 [下載更新]、[檢查整備程度] 和 [安裝] 階段取得。

重試失敗更新按鈕的螢幕快照。

如果您無法成功重新嘗試失敗的更新,或需要進一步處理錯誤問題,請遵循下列步驟:

  1. 選取 檢視錯誤 的詳細資訊。

  2. 當詳細資訊方塊開啟時,您可以檢閱錯誤詳情。 如需收集診斷記錄的詳細資訊,您可以點擊 [開啟支援票證] 按鈕附近的 [如何收集記錄] 連結。

    下載錯誤記錄的螢幕快照。

    如需擷取記錄的詳細資訊,請參閱 收集 Azure 本機的診斷記錄。

  3. 此外,您可以選取 [開啟支援票證] 按鈕、填入適當的資訊,並附加您的記錄,以便 Microsoft 支援人員使用。

    螢幕快照,以開啟支援票證。

如需建立支援票證的詳細資訊,請參閱 建立支援要求

PowerShell

如果您使用 PowerShell,且需要繼續先前失敗的更新執行,請使用下列命令:

Get-SolutionUpdate | ? Version -eq "10.2302.0.31" | Start-SolutionUpdate

若要繼續先前因為更新健康情況檢查處於 警告 狀態而失敗的更新,請使用下列命令:

Get-SolutionUpdate | ? Version -eq "10.2302.0.31" | Start-SolutionUpdate -IgnoreWarnings

下一步

深入瞭解如何 透過PowerShell執行更新。

深入瞭解如何透過 Azure 入口網站 執行更新。