Dela via


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:

Åtgärd

Använd följande steg för att registrera om den misslyckade DSC-noden.

Steg 1: Avregistrera noden

  1. I Azure Portal går du till Hemautomatiseringskonton>> (ditt Automation-konto) >Tillståndskonfiguration (DSC).
  2. Välj Noder och välj den nod som har problem.
  3. Välj Avregistrera för att avregistrera noden.

Steg 2: Avinstallera DSC-tillägget från noden

  1. I Azure Portal går du till Tillägg för virtuell> dator>(misslyckad nod). >
  2. Välj Microsoft.Powershell.DSC, PowerShell DSC-tillägget.
  3. 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

  1. I Azure Portal går du till Hemautomatiseringskonton>> (ditt Automation-konto) >Tillståndskonfiguration (DSC).
  2. Välj Noder.
  3. Markera Lägga till.
  4. Välj noden som misslyckas.
  5. 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 $nullskapas 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 ConfigurationDatainstä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:

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å noexeckan 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.