Automatisieren Sie Microsoft Azure Pack-Vorgänge mit Service Management Automation
Sie können Service Management Automation (SMA)-Runbooks verwenden, um Routinevorgänge in Ihrer Microsoft Azure Pack for 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 Runbooks direkt mit dem Editor im Management-Portal bearbeiten. Sie können auch einen beliebigen Offline-Text-Editor verwenden und das Runbook in SMA importieren.
Vorteile
- Implementierung der gesamten 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.
- Binden Sie andere PowerShell-Workflow-Runbooks als untergeordnete Runbooks ein, um High-Level-Workflows zu erstellen.
Begrenzungen
- Erfordern Kenntnisse mit dem PowerShell-Workflow
- Runbook muss mit der zusätzlichen Komplexität von PowerShell Workflow umgehen, z. B. mit deserialisierten Objekten.
- 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 mit dem Cmdlet Start-SMARunbook, mit dem ein neuer Auftrag erstellt wird, als untergeordnete Runbooks eingebunden werden.
PowerShell-Runbooks
PowerShell-Runbooks basieren auf Windows PowerShell. Sie können den Code des Runbooks direkt mit dem Editor im Management-Portal bearbeiten. Sie können auch einen beliebigen Offline-Text-Editor verwenden und das Runbook in SMA importieren.
Vorteile
- Implementieren Sie die gesamte komplexe Logik mit PowerShell-Code ohne die zusätzliche Komplexität 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
- Eine parallele Verarbeitung zum gleichzeitigen Ausführen mehrerer Aktionen ist nicht möglich.
- Sie können Prüfpunkte nicht verwenden, um Runbooks fortzusetzen, wenn ein Fehler auftritt.
- PowerShell-Workflow-Runbooks können nur mit dem Cmdlet Start-SMARunbook, mit dem ein neuer Auftrag erstellt wird, als untergeordnete Runbooks eingebunden werden.
So führt SMA Runbooks aus
Anfragen zum Starten eines Runbooks werden vom SMA-Webdienst entweder über das Service Management Portal 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 Worker Server nicht verfügbar ist, schlägt der Auftrag mit einem Fehler fehl. Wenn die RunbookWorker-Eigenschaft des Runbooks nicht ausgefüllt ist, wählt SMA zufällig einen verfügbaren Worker-Server aus, um die Anfrage zu bearbeiten.
Der Worker-Server erstellt einen Auftrag, der auf dem Worker-Server läuft, der die Anfrage bedient und per Fernzugriff auf alle Computer oder andere Ressourcen zugreift, mit denen er arbeiten soll. 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 zur lokalen Ausführung von Befehlen auf einem Zielcomputer zu verwenden. Dieses Konzept wird im folgenden Diagramm veranschaulicht.
Wenn ein Auftrag angehalten oder unterbrochen wird, kann er auf einem anderen Worker-Server fortgesetzt werden. Aus diesem Grund sollten Sie vorsichtig sein, wenn Sie lokale Ressourcen verwenden, auf die nicht alle Worker-Server zugreifen können, z. B. eine Datei auf einem lokalen Computer. Sie sollten globale Ressourcen wie etwa Variablen so weit wie möglich zum Freigeben von Informationen zwischen Prüfpunkten verwenden.
Berechtigungen
Damit ein Runbook die erforderlichen Aktionen ausführen kann, muss es über Berechtigungen für den Zugriff auf die Ressourcen verfügen, mit denen es arbeitet. Runbooks in der SMA werden immer im Kontext des Dienstkontos des Automatisierungsrunbook-Dienstes ausgeführt. Wenn dieses Konto nicht über die erforderlichen Berechtigungen verfügt, können Sie entweder Anmeldeinformationen oder eine globale Verbindungsressource in Ihrem Runbook verwenden, um die erforderlichen Befehle unter Verwendung der Anmeldeinformationen mit den erforderlichen Berechtigungen auszuführen. Diese Anmeldeinformationen können entweder mit einem Cmdlet, das Anmeldeinformationen über einen Parameter akzeptiert, oder mit InlineScript verwendet werden, um einen Codeblock mit alternativen Anmeldeinformationen auszuführen.
Nächste Schritte
- Weitere Informationen zum Erstellen von Automatisierungsrunbooks.
- Weitere Informationen zu Windows PowerShell-Workflowkonzepten.