Problembehandlung bei Azure Automation State Configuration

Dieser Artikel enthält Informationen zur Behebung von Problemen, die beim Kompilieren oder Bereitstellen von Konfigurationen in Azure Automation State Configuration auftreten können. Allgemeine Informationen zum State Configuration-Feature finden Sie unter Übersicht über Azure Automation State Configuration.

Ein Problem diagnostizieren

Wenn Sie einen Kompilierungs- oder Bereitstellungsfehler für die Konfiguration erhalten, finden Sie im Folgenden einige Schritte, mit denen Sie das Problem diagnostizieren können.

1. Sicherstellen, dass Ihre Konfiguration auf dem lokalen Computer erfolgreich kompiliert wird

Azure Automation State Configuration basiert auf PowerShell Desired State Configuration (DSC). Die Dokumentation zur DSC-Sprache und -Syntax finden Sie in der PowerShell DSC-Dokumentation.

Durch das Kompilieren einer DSC auf Ihrem lokalen Computer können Sie unter anderem die folgenden allgemeinen Fehler ermitteln und beheben:

  • Fehlende Module.
  • Syntaxfehler.
  • Logikfehler.

2. Anzeigen der DSC-Protokolle auf Ihrem Knoten

Wenn Ihre Konfiguration erfolgreich kompiliert wird, aber nicht auf einen Knoten angewendet werden kann, finden Sie in den DSC-Protokollen ausführliche Informationen. Informationen zum Speicherort dieser Protokolle finden Sie unter Wo befinden sich die DSC-Ereignisprotokolle?.

Das xDscDiagnostics-Modul kann Ihnen helfen, die Informationen in den DSC-Protokollen analysieren. Wenn Sie sich an den Support wenden, fordert der diese Protokolle zur Diagnose des Problems an.

Sie können das xDscDiagnostics-Modul mithilfe der Anleitungen unter Installation der stabilen Modulversion auf Ihrem lokalen Computer installieren.

Um das xDscDiagnostics-Modul auf Ihrem Azure-Computer zu installieren, verwenden Sie Invoke-AzVMRunCommand. Sie können auch die Option Befehl ausführen im Azure-Portal verwenden, indem Sie die Schritte unter Ausführen von PowerShell-Skripts in Ihrer Windows-VM mit „Befehl ausführen“ verwenden.

Informationen zur Verwendung von xDscDiagnostics finden Sie unter Verwenden von „xDscDiagnostics“ zum Analysieren von DSC-Protokollen. Siehe auch xDscDiagnostics-Cmdlets.

3. Sicherstellen, dass Knoten und der Automation-Arbeitsbereich über die erforderlichen Module verfügen

DSC ist von den Modulen abhängig, die auf dem Knoten installiert sind. Wenn Sie Azure Automation State Configuration verwenden, importieren Sie alle benötigten Module in Ihr Automation-Konto, indem Sie die Schritte unter Importieren von Modulen ausführen. Konfigurationen können auch von bestimmten Modulversionen abhängen. Weitere Informationen finden Sie unter Problembehandlung bei Modulen.

Szenario: Eine Konfiguration mit speziellen Zeichen kann nicht aus dem Portal gelöscht werden

Problem

Wenn Sie versuchen, eine DSC-Konfiguration aus dem Portal zu löschen, wird der folgende Fehler angezeigt:

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.

Ursache

Der Fehler ist ein vorübergehendes Problem, dessen Behebung geplant ist.

Lösung

Verwenden Sie das Cmdlet Remove-AzAutomationDscConfiguration, um die Konfiguration zu löschen.

Szenario: Fehler beim Registrieren des DSC-Agents

Problem

Bei Set-DscLocalConfigurationManager oder einem anderes DSC-Cmdlet wird folgender Fehler zurückgegeben:

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 htt
ps://<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.Re
   gisterDscAgentCommand
    + PSComputerName        : <computerName>

Ursache

Dieser Fehler wird normalerweise durch eine Firewall, durch einen Computer hinter einem Proxyserver oder durch andere Netzwerkfehler verursacht.

Lösung

Stellen Sie sicher, dass Ihr Computer Zugriff auf die richtigen Endpunkte für DSC hat, und wiederholen Sie den Vorgang. Eine Liste der erforderlichen Ports und Adressen finden Sie unter Netzwerkplanung.

Szenario: Antwortcode „Nicht autorisiert“ in Statusberichten

Problem

Wenn Sie einen Knoten mit Azure Automation State Configuration registrieren, erhalten Sie eine der folgenden Fehlermeldungen:

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.

Ursache

Folgende Ursachen kommen in Betracht:

Lösung

Führen Sie die folgenden Schritte aus, um den fehlerhaften DSC-Knoten neu zu registrieren.

Schritt 1: Heben Sie die Registrierung des Knotens auf.

  1. Wechseln Sie im Azure-Portal zu Startseite>Automation-Konten> [Ihr Automation-Konto] >State Configuration (DSC).
  2. Wählen Sie Knoten aus, und klicken Sie anschließend auf den fehlerhaften Knoten.
  3. Wählen Sie Registrierung aufheben aus, um die Registrierung des Knotens aufzuheben.

Schritt 2: Deinstallieren Sie die DSC-Erweiterung auf dem Knoten.

  1. Wechseln Sie im Azure-Portal zu Startseite>Virtueller Computer> (fehlerhafter Knoten) >Erweiterungen.
  2. Wählen Sie Microsoft.Powershell.DSC aus, die PowerShell DSC-Erweiterung.
  3. Wählen Sie Deinstallieren aus, um die Erweiterung zu deinstallieren.

Schritt 3: Entfernen Sie alle ungültigen oder abgelaufenen Zertifikate vom Knoten.

Führen Sie auf dem fehlerhaften Knoten die folgenden Befehle an einer PowerShell-Eingabeaufforderung mit erhöhten Rechten aus:

$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)
    }
}

Schritt 4: Registrieren Sie den fehlerhaften Knoten erneut.

  1. Wechseln Sie im Azure-Portal zu Startseite>Automation-Konten> [Ihr Automation-Konto] >State Configuration (DSC).
  2. Wählen Sie Knoten aus.
  3. Klicken Sie auf Hinzufügen.
  4. Wählen Sie den fehlerhaften Knoten aus.
  5. Wählen Sie Verbinden aus, und wählen Sie die gewünschten Optionen aus.

Szenario: Knoten hat den Fehlerstatus „Nicht gefunden“

Problem

Der Knoten hat den Status „Fehler“ mit folgender Meldung zurückgegeben:

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.

Ursache

Dieser Fehler tritt normalerweise auf, wenn der Knoten einem Konfigurationsnamen (z. B. ABC) anstatt einem Knotenkonfigurationsnamen (z. B. ABC.WebServer) zugewiesen ist.

Lösung

  • Stellen Sie sicher, dass Sie den Knoten mit dem Knotenkonfigurationsnamen zuweisen, nicht mit dem Konfigurationsnamen zuweisen.

  • Einem Knoten können Sie über das Azure-Portal oder mit einem PowerShell-Cmdlet eine Knotenkonfiguration zuweisen.

    • Wechseln Sie im Azure-Portal zu Startseite>Automation-Konten> [Ihr Automation-Konto] >State Configuration (DSC). Wählen Sie dann einen Knoten aus, und wählen Sie Knotenkonfiguration zuweisen aus.
    • Verwenden Sie das Cmdlet Set-AzAutomationDscNode.

Szenario: Bei der Kompilierung einer Konfiguration wurden keine Knotenkonfigurationen (MOF-Dateien) erstellt

Problem

Ihr DSC-Kompilierungsauftrag wird mit folgendem Fehler abgebrochen:

Compilation completed successfully, but no node configuration **.mof** files were generated.

Ursache

Wenn der Ausdruck nach dem Schlüsselwort Node in der DSC-Konfiguration als $null ausgewertet wird, werden keine Knotenkonfigurationen erstellt.

Lösung

Beheben Sie dieses Problem mit einer der folgenden Lösungen:

  • Stellen Sie sicher, dass der Ausdruck neben dem Schlüsselwort Node in der Konfigurationsdefinition nicht als NULL ausgewertet wird.
  • Wenn Sie bei der Kompilierung der Konfiguration ConfigurationData übergeben, stellen Sie sicher, dass Sie die Werte übergeben, die von der Konfiguration aus den Konfigurationsdaten erwartet werden.

Szenario: Der DSC-Knotenbericht bleibt im Status „In Bearbeitung“ hängen

Problem

Der DSC-Agent gibt Folgendes aus:

No instance found with given property values

Ursache

Sie haben ein Upgrade Ihrer WMF-Version (Windows Management Framework) durchgeführt, und dabei wurde die Windows-Verwaltungsinstrumentation (Windows Management Instrumentation, WMI) beschädigt.

Lösung

Befolgen Sie die Anweisungen unter Bekannte Probleme und Einschränkungen in DSC.

Szenario: In einer DSC-Konfiguration können keine Anmeldeinformationen verwendet werden

Problem

Ihr DSC-Kompilierungsauftrag wurde mit folgendem Fehler abgebrochen:

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.

Ursache

Sie haben Anmeldeinformationen in einer Konfiguration verwendet, aber keine ordnungsgemäßen ConfigurationData angegeben, mit denen PSDscAllowPlainTextPassword für jede Knotenkonfiguration auf „true“ festgelegt wird.

Lösung

Stellen Sie sicher, dass Sie die ordnungsgemäßen ConfigurationData übergeben, mit denen PSDscAllowPlainTextPassword für jede in der Konfiguration angegebene Knotenkonfiguration auf „true“ festgelegt wird. Weitere Informationen finden Sie unter Kompilieren von DSC-Konfigurationen in Azure Automation State Configuration.

Szenario: „Fehler beim Verarbeiten der Erweiterung“ beim Aktivieren eines Computers über eine DSC-Erweiterung

Problem

Beim Aktivieren eines Computers mithilfe einer DSC-Erweiterung tritt der folgende Fehler auf:

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. .\".

Ursache

Dieser Fehler tritt in der Regel auf, wenn dem Knoten ein Knotenkonfigurationsname zugewiesen wurde, der im Dienst nicht vorhanden ist.

Lösung

  • Stellen Sie sicher, dass Sie dem Knoten einen Namen zuweisen, der genau mit dem im Dienst vorhandenen Namen übereinstimmt.
  • Sie können festlegen, dass kein Knotenkonfigurationsname angegeben werden soll. In diesem Fall erfolgt eine Aktivierung des Knotens, aber keine Zuweisung einer Knotenkonfiguration.

Szenario: Fehler „Es ist mindestens ein Fehler aufgetreten“ beim Registrieren eines Knotens mit PowerShell

Problem

Wenn Sie einen Knoten mithilfe von Register-AzAutomationDSCNode oder Register-AzureRMAutomationDSCNode registrieren, erhalten Sie folgenden Fehler:

One or more errors occurred.

Ursache

Dieser Fehler tritt auf, wenn Sie versuchen, einen Knoten in einem anderen als dem vom Automation-Konto verwendeten Abonnement zu registrieren.

Lösung

Behandeln Sie den Knoten aus dem anderen Abonnement so, als wäre er für eine separate Cloud oder als lokaler Knoten definiert. Registrieren Sie den Knoten mit einer der folgenden Optionen für die Aktivierung von Computern:

Szenario: Fehlermeldung „Fehler beim Bereitstellen“

Problem

Beim Registrieren eines Knotens tritt der folgende Fehler auf:

Provisioning has failed

Ursache

Diese Meldung ist auf ein Konnektivitätsproblem zwischen dem Knoten und Azure zurückzuführen.

Lösung

Ermitteln Sie, ob sich Ihr Knoten in einem virtuellen privaten Netzwerk (VPN) befindet oder ob andere Probleme beim Herstellen einer Verbindung mit Azure vorliegen. Weitere Informationen finden Sie unter Beheben von Problemen bei der Featurebereitstellung.

Szenario: Allgemeiner Fehler beim Anwenden einer Konfiguration in Linux

Problem

Wenn Sie eine Konfiguration in Linux anwenden, bei der der folgende Fehler auftritt:

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

Ursache

Wenn der Speicherort /tmp auf noexec festgelegt ist, kann die aktuelle DSC-Version keine Konfigurationen anwenden.

Lösung

Entfernen Sie die Option noexec aus dem Speicherort /tmp.

Szenario: Sich überschneidende Knotenkonfigurationsnamen können zu einem fehlerhaften Release führen

Problem

Wenn Sie zum Generieren mehrerer Knotenkonfigurationen ein einzelnes Skript verwenden und einige der Knotenkonfigurationsnamen in anderen Namen enthalten sind, kann es passieren, dass der Kompilierungsdienst die falsche Konfiguration zuweist. Dieses Problem tritt nur dann auf, wenn ein einzelnes Skript zum Generieren von Konfigurationen mit Konfigurationsdaten pro Knoten verwendet wird und die Namensüberschneidung am Anfang der Zeichenfolge auftritt. Beispiel: Ein einzelnes Konfigurationsskript wird zum Generieren von Konfigurationen auf der Grundlage von Knotendaten verwendet, die mit Cmdlets als Hashtabelle übergeben werden, und die Knotendaten enthalten Server namens server und 1server.

Ursache

Dies ist ein bekanntes Problem beim Kompilierungsdienst.

Lösung

Dieses Problem lässt sich am besten umgehen, indem Sie die Kompilierung lokal oder in einer CI/CD-Pipeline ausführen und die MOF-Dateien mit der Knotenkonfiguration direkt in den Dienst hochladen. Muss die Kompilierung im Dienst erfolgen, besteht die zweitbeste Problemumgehung darin, die Kompilierungsaufträge aufzuteilen, sodass es keine Überschneidungen bei den Namen gibt.

Szenario: Gatewaytimeoutfehler beim Hochladen der DSC-Konfiguration

Problem

Wenn Sie eine DSC-Konfiguration hochladen, erhalten Sie einen GatewayTimeout-Fehler.

Ursache

Bei DSC-Konfigurationen, deren Kompilierung lange Zeit in Anspruch nimmt, kann dieser Fehler verursacht werden.

Lösung

Sie können die Analyse Ihrer DSC-Konfigurationen beschleunigen, indem Sie den ModuleName-Parameter explizit für alle Import-DSCResource-Aufrufe einschließen.

Szenario: Fehler beim Onboarding eines Computers

Problem

Beim Onboarding eines Computers wird eine Fehlermeldung agent has a problem angezeigt.

Ursache

Dies ist ein bekanntes Problem. Sie können dieselbe Konfiguration nicht erneut zuweisen, weil sich der Knoten im Status „Ausstehend“ befindet.

Lösung

Sie müssen eine andere Testkonfiguration anwenden und die ursprüngliche Konfiguration erneut anwenden.

Nächste Schritte

Wenn Ihr Problem hier nicht aufgeführt wird, oder Sie es nicht lösen können, besuchen Sie einen der folgenden Kanäle, um weitere Unterstützung zu erhalten:

  • Erhalten Sie Antworten von Azure-Experten über Azure-Foren.
  • Kontaktieren Sie @AzureSupport, das offizielle Microsoft Azure-Konto für die Optimierung der Customer Experience. Der Azure-Support verbindet die Azure-Community mit Antworten, Support und Experten.
  • Erstellen Sie einen Azure-Supportfall. Wechseln Sie zur Azure-Supportwebsite, und wählen Sie Support erhalten aus.