Felsöka problem med Azure Automation State Configuration
Kommentar
Azure Automation State Configuration tas ur bruk den 30 september 2027. Övergå till Azure Machine Configuration senast det datumet. Mer information finns i blogginlägget. Azure Machine Configuration-tjänsten kombinerar funktioner i DSC-tillägget, Azure Automation State Configuration och de vanligaste funktionerna från kundfeedback. Azure Machine Configuration innehåller även stöd för hybriddatorer via Arc-aktiverade servrar.
Varning
Azure Automation DSC för Linux har dragits tillbaka den 30 september 2023. Mer information finns i meddelandet.
Den här artikeln innehåller information om hur du felsöker och löser problem som uppstår när du kompilerar eller distribuerar konfigurationer i Azure Automation State Configuration. Allmän information om funktionen State Configuration finns i Översikt över Azure Automation State Configuration.
Diagnostisera ett problem
När du får ett kompilerings- eller distributionsfel för konfigurationen följer några steg som hjälper dig att diagnostisera problemet.
1. Kontrollera att konfigurationen kompileras korrekt på den lokala datorn
Azure Automation State Configuration bygger på PowerShell Desired State Configuration (DSC). Du hittar dokumentationen för DSC-språket och syntaxen i PowerShell DSC Docs.
Genom att kompilera en DSC-konfiguration på den lokala datorn kan du identifiera och lösa vanliga fel, till exempel:
- Moduler saknas.
- Syntaxfel.
- Logikfel.
2. Visa DSC-loggar på noden
Om konfigurationen kompileras men misslyckas när den tillämpas på en nod kan du hitta detaljerad information i DSC-loggarna. Information om var du hittar dessa loggar finns i Var finns DSC-händelseloggarna.
Modulen xDscDiagnostics kan hjälpa dig att parsa detaljerad information från DSC-loggarna. Om du kontaktar supporten måste de här loggarna diagnostisera problemet.
Du kan installera modulen xDscDiagnostics
på den lokala datorn genom att följa anvisningarna i Installera modulen för stabil version.
Om du vill installera modulen xDscDiagnostics
på din Azure-dator använder du Invoke-AzVMRunCommand. Du kan också använda kommandoalternativet Kör i Azure Portal genom att följa stegen i Kör PowerShell-skript på den virtuella Windows-datorn med körkommandot.
Information om hur du använder xDscDiagnostics finns i Använda xDscDiagnostics för att analysera DSC-loggar. Se även xDscDiagnostics-cmdletar.
3. Kontrollera att noderna och Automation-arbetsytan har nödvändiga moduler
DSC är beroende av moduler som är installerade på noden. När du använder Azure Automation State Configuration importerar du nödvändiga moduler till ditt Automation-konto genom att följa stegen i Importera moduler. Konfigurationer kan också ha ett beroende av specifika versioner av moduler. Mer information finns i Felsöka moduler.
Scenario: En konfiguration med specialtecken kan inte tas bort från portalen
Problem
När du försöker ta bort en DSC-konfiguration från portalen visas följande fel:
An error occurred while deleting the DSC configuration '<name>'. Error-details: The argument
configurationName with the value <name> is not valid. Valid configuration names can contain only
letters, numbers, and underscores. The name must start with a letter. The length of the name must be
between 1 and 64 characters.
Orsak
Det här felet är ett tillfälligt problem. Försök igen senare.
Åtgärd
Använd cmdleten Remove-AzAutomationDscConfiguration för att ta bort konfigurationen.
Scenario: Det gick inte att registrera DSC-agenten
Problem
Du får ett fel när du använder Set-DscLocalConfigurationManager eller en annan DSC-cmdlet.
Registration of the Dsc Agent with the server
https://<location>-agentservice-prod-1.azure-automation.net/accounts/00000000-0000-0000-0000-000000000000
failed. The underlying error is: Failed to register Dsc Agent with AgentId
00000000-0000-0000-0000-000000000000 with the server
https://<location>-agentservice-prod-1.azure-automation.net/accounts/00000000-0000-0000-0000-000000000000/Nodes(AgentId='00000000-0000-0000-0000-000000000000').
+ CategoryInfo : InvalidResult: (root/Microsoft/...gurationManager:String) [], CimException
+ FullyQualifiedErrorId : RegisterDscAgentCommandFailed,Microsoft.PowerShell.DesiredStateConfiguration.Commands.RegisterDscAgentCommand
+ PSComputerName : <computerName>
Orsak
Nätverksproblem kan orsaka det här felet. Kontrollera brandväggsinställningarna eller om datorn finns bakom en proxyserver.
Åtgärd
Kontrollera att datorn har åtkomst till rätt slutpunkter för DSC och försök igen. En lista över portar och adresser som behövs finns i Nätverksplanering.
Scenario: Statusrapporter returnerar svarskoden Obehörig
Problem
När du registrerar en nod med Azure Automation State Configuration får du något av följande felmeddelanden:
The attempt to send status report to the server https://{your Automation account
URL}/accounts/xxxxxxxxxxxxxxxxxxxxxx/Nodes(AgentId='xxxxxxxxxxxxxxxxxxxxxxxxx')/SendReport returned
unexpected response code Unauthorized.
VM has reported a failure when processing extension 'Microsoft.Powershell.DSC / Registration of the
Dsc Agent with the server failed.
Orsak
Följande är de möjliga orsakerna:
Ett felaktigt eller utgånget certifikat. Se Registrera om en nod.
En proxykonfiguration som inte tillåter åtkomst till
*.azure-automation.net
. Mer information finns i Konfiguration av privata nätverk.När du inaktiverar lokal autentisering i Azure Automation. Se Inaktivera lokal autentisering. Information om hur du åtgärdar det finns i Återaktivera lokal autentisering.
Klientdatortiden är många minuter felaktig från den faktiska tiden. Använd följande kommando för att kontrollera tiden:
w32tm /stripchart /computer:time.windows.com /samples:6
.
Åtgärd
Använd följande steg för att registrera om den misslyckade DSC-noden.
Steg 1: Avregistrera noden
- I Azure Portal går du till Hemautomatiseringskonton>> (ditt Automation-konto) >Tillståndskonfiguration (DSC).
- Välj Noder och välj den nod som har problem.
- Välj Avregistrera för att avregistrera noden.
Steg 2: Avinstallera DSC-tillägget från noden
- I Azure Portal går du till Tillägg för virtuell> dator>(misslyckad nod). >
- Välj Microsoft.Powershell.DSC, PowerShell DSC-tillägget.
- Välj Avinstallera för att avinstallera tillägget.
Steg 3: Ta bort alla felaktiga eller utgångna certifikat från noden
Kör följande kommandon på den nod som misslyckas från en upphöjd PowerShell-prompt:
$certs = @()
$certs += dir cert:\localmachine\my | ?{$_.FriendlyName -like "DSC"}
$certs += dir cert:\localmachine\my | ?{$_.FriendlyName -like "DSC-OaaS Client Authentication"}
$certs += dir cert:\localmachine\CA | ?{$_.subject -like "CN=AzureDSCExtension*"}
"";"== DSC Certificates found: " + $certs.Count
$certs | FL ThumbPrint,FriendlyName,Subject
If (($certs.Count) -gt 0)
{
ForEach ($Cert in $certs)
{
RD -LiteralPath ($Cert.Pspath)
}
}
Steg 4: Registrera om noden som misslyckas
- I Azure Portal går du till Hemautomatiseringskonton>> (ditt Automation-konto) >Tillståndskonfiguration (DSC).
- Välj Noder.
- Markera Lägga till.
- Välj noden som misslyckas.
- Välj Anslut och välj önskade alternativ.
Scenario: Noden är i misslyckad status med felet "Hittades inte"
Problem
Noden har en rapport med statusen Misslyckades och innehåller felet:
The attempt to get the action from server
https://<url>//accounts/<account-id>/Nodes(AgentId=<agent-id>)/GetDscAction failed because a valid
configuration <guid> cannot be found.
Orsak
Det här felet uppstår vanligtvis när noden tilldelas till ett konfigurationsnamn, till exempel ABC, i stället för ett namn på en nodkonfiguration (MOF-fil), till exempel ABC. Webbserver.
Åtgärd
- Kontrollera att du tilldelar noden med nodkonfigurationsnamnet och inte konfigurationsnamnet.
- Du kan tilldela en nodkonfiguration till en nod med hjälp av Azure Portal eller med en PowerShell-cmdlet.
- I Azure Portal går du till Hemautomatiseringskonton>> (ditt Automation-konto) >Tillståndskonfiguration (DSC). Välj sedan en nod och välj Tilldela nodkonfiguration.
- Använd cmdleten Set-AzAutomationDscNode .
Scenario: Inga nodkonfigurationer (MOF-filer) skapades när en konfiguration kompilerades
Problem
DSC-kompileringsjobbet pausas med felet:
Compilation completed successfully, but no node configuration **.mof** files were generated.
Orsak
När uttrycket efter nyckelordet Node
i DSC-konfigurationen utvärderas till $null
skapas inga nodkonfigurationer.
Åtgärd
Använd någon av följande lösningar för att åtgärda problemet:
- Kontrollera att uttrycket bredvid nyckelordet
Node
i konfigurationsdefinitionen inte utvärderas till Null. - Om du skickar ConfigurationData när du kompilerar konfigurationen kontrollerar du att du skickar de värden som konfigurationen förväntar sig av konfigurationsdata.
Scenario: DSC-nodrapporten fastnar i tillståndet Pågår
Problem
DSC-agenten matar ut:
No instance found with given property values
Orsak
Det här problemet kan inträffa om Windows Management Instrumentation (WMI) är skadat på noden.
Åtgärd
Följ anvisningarna i kända problem och begränsningar för DSC.
Scenario: Det går inte att använda en autentiseringsuppgift i en DSC-konfiguration
Problem
DSC-kompileringsjobbet avbröts med felet:
System.InvalidOperationException error processing property 'Credential' of type <some resource
name>: Converting and storing an encrypted password as plaintext is allowed only if
PSDscAllowPlainTextPassword is set to true.
Orsak
Det här problemet kan uppstå när du använder en autentiseringsuppgift i en konfiguration men inte har angett rätt ConfigurationData
för att ange PSDscAllowPlainTextPassword
true för varje nodkonfiguration.
Åtgärd
Se till att skicka rätt ConfigurationData
inställning PSDscAllowPlainTextPassword
till true för varje nodkonfiguration. Se Kompilera DSC-konfigurationer i Azure Automation State Configuration.
Scenario: Fel vid bearbetning av tillägg vid aktivering av en dator från ett DSC-tillägg
Problem
När du aktiverar en dator med hjälp av ett DSC-tillägg uppstår ett fel som innehåller felet:
VM has reported a failure when processing extension 'Microsoft.Powershell.DSC'. Error message: \"DSC
COnfiguration 'RegistrationMetaConfigV2' completed with error(s). Following are the first few:
Registration of the Dsc Agent with the server <url> failed. The underlying error is: The attempt to
register Dsc Agent with Agent Id <ID> with the server <url> return unexpected response code
BadRequest. .\".
Orsak
Det här felet uppstår vanligtvis när noden tilldelas ett nodkonfigurationsnamn som inte finns i tjänsten.
Åtgärd
Kontrollera att nodnamnet som exakt matchar namnet i tjänsten eller inte innehåller nodkonfigurationsnamnet. Detta aktiverar noden men tilldelar ingen nodkonfiguration.
Scenario: Felet "Ett eller flera fel uppstod" när en nod registrerades med hjälp av PowerShell
Problem
När du registrerar en nod med hjälp av Register-AzAutomationDSCNode eller Register-AzureRMAutomationDSCNode får du följande fel:
One or more errors occurred.
Orsak
Det här felet uppstår när du försöker registrera en nod i en annan prenumeration än den som används av Automation-kontot.
Åtgärd
Behandla noden mellan prenumerationer som en nod som definierats för ett separat moln eller lokalt. Registrera noden med något av följande alternativ för att aktivera datorer:
- Windows: Fysiska/virtuella Windows-datorer lokalt eller i ett annat moln än Azure/AWS.
- Linux: Fysiska/virtuella Linux-datorer lokalt eller i ett annat moln än Azure.
Scenario: Felmeddelandet "Etableringen misslyckades"
Problem
När du registrerar en nod visas felet:
Provisioning has failed
Orsak
Det här meddelandet uppstår när det finns ett problem med anslutningen mellan noden och Azure.
Åtgärd
Kontrollera om noden finns i ett virtuellt privat nätverk (VPN) eller har andra problem med att ansluta till Azure. Se Felsöka problem med funktionsdistribution.
Scenario: Fel med ett allmänt fel vid tillämpning av en konfiguration i Linux
Problem
När du tillämpar en konfiguration i Linux uppstår ett fel som innehåller felet:
This event indicates that failure happens when LCM is processing the configuration. ErrorId is 1.
ErrorDetail is The SendConfigurationApply function did not succeed.. ResourceId is [resource]name
and SourceInfo is ::nnn::n::resource. ErrorMessage is A general error occurred, not covered by a
more specific error code..
Orsak
Om /tmp-platsen är inställd på noexec
kan den aktuella versionen av DSC inte tillämpa konfigurationer.
Åtgärd
Ta bort alternativet noexec
från /tmp-platsen.
Scenario: Nodkonfigurationsnamn som överlappar kan resultera i en felaktig version
Problem
När du använder ett enda konfigurationsskript för att generera flera nodkonfigurationer och vissa nodkonfigurationsnamn är delmängder av andra namn, kan kompileringstjänsten tilldela fel konfiguration. Det här problemet uppstår bara när du använder ett enda skript för att generera konfigurationer med konfigurationsdata per nod, och endast när namnet överlappar varandra i början av strängen. Ett exempel är ett enda konfigurationsskript som används för att generera konfigurationer baserat på noddata som skickas som en hashtable med hjälp av cmdletar, och noddata innehåller servrar med namnet server och 1server.
Orsak
Det här är ett känt problem med kompileringstjänsten.
Åtgärd
Den bästa lösningen är att kompilera lokalt eller i en CI/CD-pipeline och ladda upp MOF-filer för nodkonfiguration direkt till tjänsten. Om kompilering i tjänsten är ett krav är den näst bästa lösningen att dela upp kompileringsjobben så att det inte finns någon överlappning i namn.
Scenario: Gateway-timeoutfel vid DSC-konfigurationsuppladdning
Problem
Du får ett GatewayTimeout
fel när du laddar upp en DSC-konfiguration.
Orsak
DSC-konfigurationer som tar lång tid att kompilera kan orsaka det här felet.
Åtgärd
Du kan göra så att DSC-konfigurationerna parsas snabbare genom att uttryckligen inkludera parametern ModuleName
för alla Import-DSCResource-anrop .
Scenario: Fel vid registrering av en dator
Problem
Du får ett agent has a problem
felmeddelande när du registrerar en dator.
Orsak
Detta är ett känt problem. Du kan inte tilldela samma konfiguration igen eftersom noden fortfarande är i väntande tillstånd.
Åtgärd
Du kan undvika problemet genom att använda en annan testkonfiguration och prova den ursprungliga konfigurationen igen.
Nästa steg
Om du inte ser problemet här eller om du inte kan lösa problemet kan du prova någon av följande supportkanaler:
- Få svar från Azure-experter via Azure-forum.
- Anslut med @AzureSupport, det officiella Microsoft Azure-kontot för att förbättra kundupplevelsen. Azure Support ansluter Azure-communityn till svar, support och experter.
- Skapa en Azure Support incident. Gå till webbplatsen Azure Support och välj Hämta support.