Dela via


Felsöka lösningsuppdateringar för Azure Local, version 23H2

Gäller för: Azure Local 2311.2 och senare

Den här artikeln beskriver hur du felsöker lösningsuppdateringar som tillämpas på din Azure Local för att hålla den uppdaterad.

Om felsökning av uppdateringar

Om systemet skapades via en ny distribution av Azure Local, version 23H2, installerades en orkestrerare under distributionen. Orkestratorn hanterar alla uppdateringar för plattformen – operativsystem, drivrutiner och inbyggd programvara, agenter och tjänster.

Den nya uppdateringslösningen innehåller en logik för återförsök och reparation. Den här logiken försöker åtgärda uppdateringsproblem på ett icke-störande sätt, till exempel genom att försöka köra en Cluster-Aware Update (CAU). Om en uppdateringskörning inte kan repareras automatiskt misslyckas den. När en uppdatering misslyckas rekommenderar Microsoft att du inspekterar informationen för felmeddelandet för att fastställa lämplig nästa åtgärd. Du kan försöka återuppta uppdateringen om det är lämpligt för att avgöra om ett nytt försök löser problemet.

Felsöka beredskapskontroller

Beredskapskontroller är viktiga för att säkerställa att du tillämpar uppdateringar smidigt, håller dina system up-to-date och upprätthåller rätt systemfunktioner. Beredskapskontroller utförs och rapporteras separat i två scenarier:

  • Systemhälsokontroller som körs en gång var 24:e timme.

  • Uppdateringsberedskapskontroller som körs efter nedladdning av uppdateringsinnehållet och innan installationen påbörjas.

Det är vanligt att resultaten av systemhälsokontroller och uppdateringsberedskapskontroller skiljer sig åt. Detta beror på att uppdateringsberedskapskontroller använder den senaste valideringslogik från lösningsuppdateringen som ska installeras, medan systemhälsokontroller alltid använder valideringslogik från den installerade versionen.

Både system- och föruppdateringsberedskapskontroller utför liknande valideringar och kategoriserar tre typer av beredskapskontroller: Kritisk, Varning och Information.

  • Kritisk: Beredskapskontroller som hindrar dig från att tillämpa uppdateringen. Den här statusen anger problem som du måste lösa innan du fortsätter med uppdateringen.
  • Varning: Beredskapskontroller som också hindrar dig från att applicera uppdateringen, men du kan kringgå dessa med PowerShell. Den här statusen anger potentiella problem som kanske inte är tillräckligt allvarliga för att stoppa uppdateringen, men som bör åtgärdas för att säkerställa en smidig uppdateringsprocess.
  • Informational: Beredskapskontroller som inte blockerar uppdateringen. Den här statusen innehåller information om systemets tillstånd och eventuella problem som inte ska påverka uppdateringsprocessen direkt. Dessa kontroller är för din medvetenhet och kanske inte kräver omedelbara åtgärder.

Felsökningsstegen skiljer sig beroende på vilket scenario beredskapskontrollerna kommer från.

Använda Azure-portalen

Scenario 1: Systemhälsokontroller

Det här scenariot inträffar när du förbereder installation av systemuppdateringar i Azure Update Manager:

  1. I systemlistan visar du tillståndet Kritisk för Uppdateringsberedskap.

    Skärmbild av sidan Uppdateringshanteraren.

  2. Välj ett eller flera system i listan och välj sedan Engångsuppdatering.

  3. På sidan Kontrollera beredskap granskar du listan över beredskapskontroller och deras resultat.

    1. Välj Visa information länkar under de berörda systemen.

    2. När informationsrutan öppnas kan du visa mer information, enskilda systemresultat och Remediation för misslyckade hälsokontroller.

    Skärmbild av sidan Installera uppdateringar.

    Följ reparationsanvisningarna för att lösa felen.

    Not

    Systemhälsokontrollerna körs var 24:e timme, så det kan ta upp till 24 timmar innan de nya resultaten synkroniseras till Azure-portalen efter att felen har åtgärdats. Information om hur du initierar en ny systemhälsokontroll omedelbart eller ytterligare felsökning finns i avsnittet PowerShell.

Scenario 2: Uppdateringsberedskapskontroller

Det här scenariot inträffar när du installerar och spårar systemuppdateringar i Azure Update Manager:

  1. I Historyväljer du den misslyckade uppdateringen i listan.

  2. På sidan Kontrollera beredskap granskar du listan över beredskapskontroller och deras resultat.

    1. Välj Visa information länkar under de berörda systemen.

    2. När informationsrutan öppnas kan du visa mer information, enskilda systemresultat och Remediation för misslyckade hälsokontroller.

    Skärmbild av sidan uppdateringsförlopp.

    Följ reparationsanvisningarna för att lösa felen och välj sedan knappen Försök igen för att försöka utföra beredskapskontrollerna före uppdateringen igen och Återuppta uppdateringen.

    Mer information om felsökning finns i avsnittet PowerShell.

Använda PowerShell

Scenario 1: Systemhälsokontroller

Så här felsöker du systemhälsokontroller via PowerShell:

  1. Kontrollera att systemhälsokontrollerna misslyckades genom att köra följande kommando på en av datorerna i systemet:

    Get-SolutionUpdateEnvironment
    

    Här är ett exempel på utdata:

    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. Granska HealthState i systemet och visa Failure- eller Warning-värdet.

  3. Om du vill filtrera egenskapen HealthCheckResult för att identifiera misslyckade tester kör du följande kommando:

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

    Här är ett exempel på utdata:

    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://zcusa.951200.xyz/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://zcusa.951200.xyz/en-us/windows-server/failover-clustering/cluster-aware-updating-requirements# 
              tests-for-cluster-updating-readiness`
    
  4. Granska fältet Remediation för misslyckade tester och vidta lämpliga åtgärder för att lösa felen.

  5. När du har löst felen anropar du systemets hälsokontroller igen genom att köra följande kommando:

    Invoke-SolutionUpdatePrecheck -SystemHealth
    
  6. Använd Get-SolutionUpdateEnvironment för att bekräfta att de misslyckade hälsokontrollerna har åtgärdats. Det kan ta några minuter innan systemhälsokontrollerna körs.

    Här är ett exempel på utdata:

    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 
    

Scenario 2: Uppdateringsberedskapskontroller

När uppdateringsberedskapskontroller misslyckas misslyckas uppdateringen i systemet. Så här felsöker du uppdateringsberedskapskontroller via PowerShell:

  1. Kontrollera att uppdateringsberedskapskontrollerna misslyckades genom att köra följande kommando på en av datorerna i systemet:

    Get-SolutionUpdate | FT Version,State,HealthCheckResult
    

    Här är ett exempel på utdata:

    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. Granska State för uppdateringen och visa värdet för HealthCheckFailed.

  3. Om du vill filtrera egenskapen HealthCheckResult för att identifiera misslyckade tester kör du följande kommando:

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

    Här är ett exempel på utdata:

    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://zcusa.951200.xyz/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://zcusa.951200.xyz/en-us/windows-server/failover-clustering/cluster-aware-updating-requirements# 
              tests-for-cluster-updating-readiness
    
  4. Granska fältet Remediation för misslyckade tester och vidta lämpliga åtgärder för att lösa felen.

  5. När du har löst felen anropar du uppdateringsberedskapskontrollerna igen genom att köra följande kommando:

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

Felsöka uppdateringsfel

Om det finns ett problem som gör att en uppdatering misslyckas, är det ofta effektivast att granska den detaljerade stegprogressen för att identifiera var det misslyckades och avgöra om problemet kan åtgärdas genom en enkel reparation (och återuppta) eller om ett supportärende krävs för att lösa problemet. Viktiga objekt att notera för det misslyckade steget är:

  • Fel på stegnamn och beskrivning.

  • Vilken dator eller server som steget misslyckades på (i händelse av ett datorspecifikt problem).

  • Meddelandesträng för fel (kan identifiera problemet med ett specifikt känt problem med dokumenterad reparation).

Microsoft rekommenderar att du använder Azure-portalen för att identifiera felstegsinformationen enligt Återuppta en uppdatering. Du kan också se nästa avsnitt för hur du visar liknande information i PowerShell med hjälp av Start-MonitoringActionplanInstanceToComplete.

Se tabellen nedan för scenarier för uppdateringsfel och riktlinjer för reparation.

Stegnamn Typ av problem Sanering
Någon Strömförlust eller annat liknande avbrott i systemet under uppdateringen. 1. Återställ ström.
2. Kör en systemhälsokontroll.
3. Återuppta uppdateringen.
CAU-uppdateringar Den klustermedvetna uppdateringskörningen (CAU) misslyckas med ett max retries exceeded-fel. Om det finns en indikation på att flera CAU-försök har gjorts och att de alla har misslyckats är det ofta bäst att undersöka det första felet.

Använd start- och sluttiden för det första felet för att matcha rätt Get-CauReport utdata för att undersöka felet ytterligare.
Någon Minne, strömförsörjning, startdrivrutin eller liknande kritiska fel på en eller flera noder. Se Reparera en nod på Azure Local version 23H2 för hur du reparerar noden som misslyckas.
När noden har reparerats kan uppdateringen återupptas.

Samla in uppdateringsloggar

Du kan också samla in diagnostikloggar som hjälper Microsoft att identifiera och åtgärda problemen.

Information om hur du samlar in loggar för uppdateringar med hjälp av Azure-portalen finns i Återuppta en uppdatering.

Information om hur du samlar in loggar för uppdateringsfel finns i Samla in diagnostikloggar för Azure Local version 23H2.

Visa sammanfattningsrapport för uppdatering

Om du vill visa en detaljerad sammanfattningsrapport för uppdateringar med PowerShell följer du de här stegen på klienten som du använder för att komma åt systemet:

  1. Upprätta en powershell-fjärrsession med datorn. Kör PowerShell som administratör och kör följande kommando:

    Enter-PSSession -ComputerName <machine_IP_address> -Credential <username\password for the machine>
    
  2. Hämta alla lösningsuppdateringar och filtrera sedan på lösningsuppdateringar som motsvarar en viss version. Den version som används motsvarar den version av lösningsuppdateringen som inte kunde installeras.

    $Update = Get-SolutionUpdate | ? Version -eq "<Version string>" -verbose
    
  3. Identifiera åtgärdsplanen för den misslyckade lösningsuppdateringskörningen.

    $Failure = $update | Get-SolutionUpdateRun
    
  4. Identifiera ResourceID för uppdateringen.

    $Failure
    

    Här är ett exempel på utdata:

    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 Anteckna GUID. Detta GUID motsvarar ActionPlanInstanceID.

  5. Visa sammanfattningen för ActionPlanInstanceID som du antecknade tidigare.

    Start-MonitoringActionplanInstanceToComplete -actionPlanInstanceID <Action Plan Instance ID>
    

    Här är några exempelutdata:

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

    Skärmbild av PowerShell insamlade loggars utdata.

Återuppta en uppdatering

Om du vill återuppta en tidigare misslyckad uppdateringskörning kan du försöka köra uppdateringen igen via Azure Portal eller PowerShell.

Azure-portalen

Vi rekommenderar starkt att du använder Azure Portal för att bläddra till den misslyckade uppdateringen och välja knappen Försök igen. Den här funktionen är tillgänglig i stegen Hämta uppdateringar, Kontrollera beredskap och Installera i en uppdateringskörning.

Skärmbild av knappen för att försöka igen med misslyckad uppdatering.

Om du inte kan köra en misslyckad uppdatering igen eller om du behöver felsöka ett fel ytterligare följer du dessa steg:

  1. Välj Visa detaljer för ett fel.

  2. När informationsrutan öppnas kan du granska felinformationen. Om du vill ha mer information om hur du samlar in diagnostikloggar kan du klicka på Så här samlar du in loggar länk nära knappen Öppna ett supportärende.

    Skärmbild för att ladda ned felloggar.

    Mer information om hur du hämtar loggar finns i Samla in diagnostikloggar för Azure Local.

  3. Dessutom kan du välja knappen Öppna ett supportärende, fylla i lämplig information och bifoga dina loggar så att de är tillgängliga för Microsoft Support.

    Skärmbild för att öppna ett supportärende.

Mer information om hur du skapar ett supportärende finns i Skapa en supportbegäran.

PowerShell

Om du använder PowerShell och behöver återuppta en tidigare misslyckad uppdateringskörning använder du följande kommando:

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

Om du vill återuppta en tidigare misslyckad uppdatering på grund av uppdatering av hälsokontroller i ett varningstillstånd använder du följande kommando:

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

Nästa steg

Läs mer om hur du kör uppdateringar via PowerShell.

Läs mer om hur du kör uppdateringar via Azure Portal.