Behandeln von Problemen bei freigegebenen Ressourcen

In diesem Artikel werden Probleme beschrieben, die bei Verwendung von freigegebenen Ressourcen in Azure Automation auftreten können.

Module

Szenario: Ein Modul bleibt beim Import hängen

Problem

Ein Modul bleibt beim Importieren oder Aktualisieren von Azure Automation-Modulen im Zustand Wird importiert hängen.

Ursache

Da das Importieren von PowerShell-Modulen ein komplexer Prozess mit vielen Schritten ist, wird ein Modul möglicherweise nicht ordnungsgemäß importiert, und es bleibt in einem vorübergehenden Zustand hängen. Weitere Informationen zum Importvorgang finden Sie unter Importieren eines PowerShell-Moduls.

Lösung

Um dieses Problem zu beheben, müssen Sie das Modul, das hängen geblieben ist, mithilfe des Cmdlets Remove-AzAutomationModule entfernen. Sie können dann das Importieren des Moduls erneut versuchen.

Remove-AzAutomationModule -Name ModuleName -ResourceGroupName ExampleResourceGroup -AutomationAccountName ExampleAutomationAccount -Force

Szenario: AzureRM-Module bleiben nach einem Aktualisierungsversuch während des Imports hängen

Problem

Ein Banner mit der folgenden Meldung wird weiterhin in Ihrem Konto angezeigt, nachdem Sie versucht haben, Ihre AzureRM-Module zu aktualisieren:

Azure modules are being updated

Ursache

Es liegt ein bekanntes Problem mit dem Update der AzureRM-Module in einem Automation-Konto vor. Dieses Problem tritt genau gesagt dann auf, wenn sich die Module in einer Ressourcengruppe mit einem numerischen Namen befinden, der mit 0 (null) beginnt.

Lösung

Um die AzureRM-Module in Ihrem Automation-Konto zu aktualisieren, muss sich das Konto in einer Ressourcengruppe mit einem alphanumerischen Namen befinden. Ressourcengruppen, deren numerischer Name mit 0 beginnt, können zurzeit keine AzureRM-Module aktualisieren.

Szenario: Fehler beim Modulimport oder Cmdlets können nach dem Importieren nicht ausgeführt werden

Problem

Ein Modul kann nicht importiert werden, oder sein Import ist erfolgreich, aber es werden keine Cmdlets extrahiert.

Ursache

Es folgen häufige Ursachen, warum ein Modul nicht erfolgreich in Azure Automation importiert wird:

  • Die Struktur stimmt nicht mit der Struktur überein, die für Automation erforderlich ist.
  • Das Modul hängt von einem anderen Modul ab, das für Ihr Automation-Konto nicht bereitgestellt wurde.
  • Für das Modul fehlen die Abhängigkeiten im Ordner.
  • Das Cmdlet New-AzAutomationModule wird zum Hochladen des Moduls verwendet, und Sie haben nicht den vollständigen Speicherpfad angegeben oder das Modul nicht mit einer öffentlich zugänglichen URL geladen.

Lösung

Verwenden Sie eine der folgenden Lösungen, um das Problem zu beheben:

  • Stellen Sie sicher, dass das Modul folgendes Format hat: ModuleName.zip -> ModuleName oder Version Number -> (ModuleName.psm1, ModuleName.psd1).
  • Öffnen Sie die PSD1-Datei, und prüfen Sie, ob für das Modul Abhängigkeiten bestehen. Wenn ja, laden Sie diese Module in das Automation-Konto hoch.
  • Stellen Sie sicher, dass alle referenzierten DLL-Dateien im Modulordner vorhanden sind.

Szenario: Update-AzureModule.ps1 wird beim Aktualisieren der Module angehalten.

Problem

Bei Verwendung des Runbooks Update-AzureModule.ps1 zum Aktualisieren Ihrer Azure-Module wird der Updateprozess angehalten.

Ursache

Bei diesem Runbook lautet die Standardeinstellung „10“. Anhand dieses Werts wird festgelegt, wie viele Module gleichzeitig aktualisiert werden. Der Updateprozess ist fehleranfällig, wenn zu viele Module gleichzeitig aktualisiert werden.

Lösung

Es ist keine allgemeine Anforderung, dass sich alle AzureRM- oder Az-Module im selben Automation-Konto befinden müssen. Sie sollten nur die spezifischen Module importieren, die Sie benötigen.

Hinweis

Vermeiden Sie den Import des gesamten Az.Automation- oder AzureRM.Automation-Moduls – dadurch werden alle enthaltenen Module importiert.

Wenn der Updateprozess angehalten wird, fügen Sie den dem Skript Update-AzureModules.ps1 den Parameter SimultaneousModuleImportJobCount hinzu und geben einen niedrigeren Wert als den Standardwert 10 an. Beginnen Sie beim Implementieren dieser Logik mit einem Wert von 3 oder 5. SimultaneousModuleImportJobCount ist ein Parameter des Update-AutomationAzureModulesForAccount-Systemrunbooks, das zum Aktualisieren der Azure-Module verwendet wird. Wenn Sie diese Anpassung vornehmen, dauert der Updateprozess länger, aber die Wahrscheinlichkeit, dass er vollständig abgeschlossen wird, ist höher. Das folgende Beispiel zeigt den Parameter und seine Position im Runbook:

$Body = @"
   {
      "properties":{
      "runbook":{
            "name":"Update-AutomationAzureModulesForAccount"
      },
      "parameters":{
            ...
            "SimultaneousModuleImportJobCount":"3",
            ... 
      }
      }
   }
"@

Ausführende Konten

Hinweis

Azure Automation-Ausführungskonten einschließlich klassischer Ausführungskonten wurden am 30. September 2023 eingestellt und durch verwaltete Identitäten ersetzt. Sie können keine Ausführungskonten mehr über das Azure-Portal erstellen oder erneuern. Weitere Informationen finden Sie unter Migration von vorhandenen ausführenden Konten zur verwalteten Identität.

Szenario: Sie erhalten beim Ausführen eines Runbooks den Fehler „Der Einstiegspunkt ‚GetPerAdapterInfo‘ wurde nicht in der DLL vom Typ ‚iplpapi.dll‘ gefunden.“

Problem

Sie erhalten beim Ausführen eines Runbooks die folgende Ausnahme:

Unable to find an entry point named 'GetPerAdapterInfo' in DLL 'iplpapi.dll'

Ursache

Dieser Fehler wird wahrscheinlich durch ein falsch konfiguriertes ausführendes Konto verursacht.

Lösung

Stellen Sie sicher, dass Ihr ausführendes Konto ordnungsgemäß konfiguriert ist. Vergewissern Sie sich dann, dass der Code in Ihrem Runbook für die Authentifizierung bei Azure korrekt ist. Das folgende Beispiel zeigt einen Codeausschnitt in einem Runbook zum Authentifizieren bei Azure mithilfe eines ausführenden Kontos.

$connection = Get-AutomationConnection -Name AzureRunAsConnection
Connect-AzAccount -ServicePrincipal -Tenant $connection.TenantID `
-ApplicationID $connection.ApplicationID -CertificateThumbprint $connection.CertificateThumbprint

Nächste Schritte

Wenn Sie Ihr Problem nicht mit diesem Artikel lösen konnten, besuchen Sie einen der folgenden Kanäle, um weitere Unterstützung zu erhalten:

  • Erhalten Sie Antworten von Azure-Experten über Azure-Foren.
  • Verbinden mit @AzureSupport. Dies ist das offizielle Microsoft Azure-Konto, über das die Azure-Community Zugriff auf die richtigen Ressourcen erhält: Antworten, Support und Experten.
  • Erstellen Sie einen Azure-Supportfall. Wechseln Sie zur Azure-Supportwebsite, und wählen Sie Support erhalten aus.