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:
I systemlistan visar du tillståndet Kritisk för Uppdateringsberedskap.
Välj ett eller flera system i listan och välj sedan Engångsuppdatering.
På sidan Kontrollera beredskap granskar du listan över beredskapskontroller och deras resultat.
Välj Visa information länkar under de berörda systemen.
När informationsrutan öppnas kan du visa mer information, enskilda systemresultat och Remediation för misslyckade hälsokontroller.
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:
I Historyväljer du den misslyckade uppdateringen i listan.
På sidan Kontrollera beredskap granskar du listan över beredskapskontroller och deras resultat.
Välj Visa information länkar under de berörda systemen.
När informationsrutan öppnas kan du visa mer information, enskilda systemresultat och Remediation för misslyckade hälsokontroller.
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:
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>
Granska
HealthState
i systemet och visaFailure
- ellerWarning
-värdet.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`
Granska fältet
Remediation
för misslyckade tester och vidta lämpliga åtgärder för att lösa felen.När du har löst felen anropar du systemets hälsokontroller igen genom att köra följande kommando:
Invoke-SolutionUpdatePrecheck -SystemHealth
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:
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>
Granska
State
för uppdateringen och visa värdet förHealthCheckFailed
.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
Granska fältet
Remediation
för misslyckade tester och vidta lämpliga åtgärder för att lösa felen.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:
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>
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
Identifiera åtgärdsplanen för den misslyckade lösningsuppdateringskörningen.
$Failure = $update | Get-SolutionUpdateRun
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 motsvararActionPlanInstanceID
.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
Å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.
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:
Välj Visa detaljer för ett fel.
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.
Mer information om hur du hämtar loggar finns i Samla in diagnostikloggar för Azure Local.
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.
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.