Teilen über


Automatisieren von Microsoft Azure Pack-Vorgängen mit Dienstverwaltungsautomatisierung

Sie können Sma-Runbooks (Service Management Automation) verwenden, um Routinevorgänge in Ihrer Microsoft Azure Pack für Windows Server-Umgebung zu automatisieren. Es gibt zwei verschiedene Arten von SMA Runbooks:

Typ Beschreibung
PowerShell-Workflow Textrunbook, das auf einem Windows PowerShell-Workflow basiert.
PowerShell Textrunbook, das auf einem Windows PowerShell-Skript basiert.

PowerShell-Workflow-Runbooks

PowerShell-Workflow-Runbooks basieren auf Windows PowerShell-Workflow. Sie können den Code des Runbook direkt über den Editor im Verwaltungsportal bearbeiten. Sie können auch jeden Offlinetext-Editor verwenden und das Runbook in SMA importieren.

Vorteile

  • Implementieren Sie alle komplexen Logik mit PowerShell-Workflowcode.
  • Verwendung von Prüfpunkten zum Fortsetzen des Runbooks im Fall eines Fehlers.
  • Verwendung der parallelen Verarbeitung , um mehrere Aktionen gleichzeitig auszuführen.
  • Fügen Sie andere PowerShell-Workflow-Runbooks als untergeordnete Runbooks zum Erstellen von allgemeinen Workflows ein.

Begrenzungen

  • Erfordern Kenntnisse mit dem PowerShell-Workflow
  • Runbook muss mit der zusätzlichen Komplexität von PowerShell-Workflow umgehen, z. B. deserialisierte Objekte.
  • Das Starten des Runbooks dauert länger als bei PowerShell-Runbooks, da es vor der Ausführung kompiliert werden muss.
  • PowerShell-Runbooks können nur als untergeordnete Runbooks mit dem Cmdlet Start-SMARunbook eingeschlossen werden, das einen neuen Auftrag erstellt.

PowerShell-Runbooks

PowerShell-Runbooks basieren auf Windows PowerShell. Sie können den Code des Runbook direkt über den Editor im Verwaltungsportal bearbeiten. Sie können auch jeden Offlinetext-Editor verwenden und das Runbook in SMA importieren.

Vorteile

  • Implementieren Sie alle komplexen Logik mit PowerShell-Code ohne die zusätzlichen Komplexitäten von PowerShell-Workflow.
  • Runbook startet schneller als PowerShell-Workflow-Runbooks, da es nicht vor der Ausführung kompiliert werden muss.

Begrenzungen

  • Erfordern Kenntnisse zu PowerShell-Skripts
  • Sie können keine parallele Verarbeitung verwenden, um mehrere Aktionen parallel auszuführen.
  • Sie können runbooks nicht mit Prüfpunkten fortsetzen, wenn ein Fehler auftritt.
  • PowerShell-Workflow-Runbooks können nur als untergeordnete Runbooks mit dem Cmdlet Start-SMARunbook eingeschlossen werden, das einen neuen Auftrag erstellt.

So führt SMA Runbooks aus

Anforderungen zum Starten eines Runbook werden vom SMA-Webdienst entweder über das Dienstverwaltungsportal oder das Windows PowerShell-Cmdlet Start-SmaRunbook ausgeführt. Der Webdienst schreibt diese Anforderung in die Automatisierungsdatenbank, in der sie von einem der Automatisierungs-Worker-Server abgerufen wird.

Wenn die RunbookWorker-Eigenschaft des Runbook ausgefüllt ist, wird der Workerserver den Auftrag diensten. Wenn der Workerserver nicht verfügbar ist, schlägt der Auftrag mit einem Fehler fehl. Wenn die RunbookWorker-Eigenschaft des Runbook nicht aufgefüllt wird, wählt SMA zufällig einen verfügbaren Workerserver aus, um die Anforderung zu bedienen.

Der Worker-Server erstellt einen Auftrag, der auf dem Worker-Server ausgeführt wird, der die Anforderung nutzt und remote auf alle Computer oder andere Ressourcen zugreift, mit denen er arbeitet. Dies erfordert, dass die Cmdlets im Runbook remote auf diese Ressourcen zugreifen können. Alternativ kann das Runbook einen InlineScript-Befehl enthalten, um PowerShell-Remoting zum lokalen Ausführen von Befehlen auf einem Zielcomputer zu verwenden. Dieses Konzept wird im folgenden Diagramm veranschaulicht.

Runbook-Ausführungsdiagramm.

Wenn ein Auftrag angehalten oder unterbrochen wird, kann er auf einem anderen Worker-Server fortgesetzt werden. Aus diesem Gründen sollten Sie darauf achten, lokale Ressourcen zu verwenden, auf die nicht auf alle Workerserver zugegriffen werden kann, z. B. eine Datei auf einem lokalen Computer. Sie sollten globale Ressourcen wie Variablen so weit wie möglich zum Freigeben von Informationen zwischen Prüfpunkten verwenden.

Berechtigungen

Damit ein Runbook seine erforderlichen Aktionen ausführen kann, muss es über Berechtigungen für den Zugriff auf die Ressourcen verfügen, mit denen es arbeitet. Runbooks in SMA werden immer im Kontext des Dienstkontos des Automatisierungs-Runbook-Diensts ausgeführt. Wenn dieses Konto nicht über die erforderlichen Berechtigungen verfügt, können Sie entweder eine Anmeldeinformationen oder eine globale Verbindungsressource in Ihrem Runbook verwenden, um die erforderlichen Befehle mithilfe von Anmeldeinformationen mit den erforderlichen Berechtigungen auszuführen. Diese Anmeldeinformationen können entweder mit einem Cmdlet verwendet werden, das Anmeldeinformationen über einen Parameter akzeptiert, oder mit InlineScript , um einen Codeblock mit alternativen Anmeldeinformationen auszuführen.

Nächste Schritte