Troubleshoot solution updates for Azure Stack HCI, version 23H2

Applies to: Azure Stack HCI, version 23H2

This article describes how to troubleshoot solution updates that are applied to your Azure Stack HCI cluster to keep it up-to-date.

About troubleshooting updates

If your cluster was created via a new deployment of Azure Stack HCI, version 23H2, then an orchestrator was installed during the deployment. The orchestrator manages all of the updates for the platform - OS, drivers and firmware, agents and services, and updates for the workloads.

The new update solution includes a retry and remediation logic. This logic attempts to fix update issues in a non-disruptive way, such as retrying a CAU run. If an update run can't be remediated automatically, it fails. When an update fails, you can retry the update.

Collect update logs

You can also collect diagnostic logs to help Microsoft identify and fix the issues.

To collect logs for updates using the Azure portal, see Use Azure Update Manager to update your Azure Stack HCI, version 23H2.

To collect logs for the update failures using PowerShell, follow these steps on the client that you're using to access your cluster:

  1. Establish a remote PowerShell session with the server node. Run PowerShell as administrator and run the following command:

    Enter-PSSession -ComputerName <server_IP_address> -Credential <username\password for the server>
    
  2. Get all the solutions updates and then filter the solution updates corresponding to a specific version. The version used corresponds to the version of solution update that failed to install.

    $Update = Get-SolutionUpdate | ? Version -eq "<Version string>" -verbose
    
  3. Identify the action plan for the failed solution update run.

    $Failure = $update | Get-SolutionUpdateRun
    
  4. Identify the ResourceID for the Update.

    $Failure
    

    Here's a sample output:

    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/a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1
    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
    

    Note the ResourceID GUID. This GUID corresponds to the ActionPlanInstanceID.

  5. Copy the logs for the ActionPlanInstanceID that you noted earlier, to a text file named log.txt. Use Notepad to open the text file.

    Get-ActionplanInstance -ActionplanInstanceId <Action Plan Instance ID> >log.txt
    notepad log.txt
    

    Here's sample output:

    PS C:\Users\lcmuser> Get-ActionplanInstance -actionplaninstanceid a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1 >log.txt
    
    PS C:\Users\lcmuser>notepad log.txt
    

Resume an update

To resume a previously failed update run, you can retry the update run via the Azure portal or PowerShell.

The Azure portal

We highly recommend using the Azure portal, to browse to your failed update and select the Try again button. This functionality is available at the Download updates, Check readiness, and Install stages of an update run.

A screenshot of the retry a failed update button.

PowerShell

If you're using PowerShell and need to resume a previously failed update run, use the following command:

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

To resume a previously failed update due to update health checks in a Warning state, use the following command:

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

Next steps

Learn more about how to Run updates via PowerShell.

Learn more about how to Run updates via the Azure portal.