Erstellen von Service Management Automation-Runbooks

Wichtig

Diese Version von Service Management Automation (SMA) hat das Ende des Supports erreicht. Es wird empfohlen, ein Upgrade auf SMA 2022 durchzuführen.

Runbooks in Service Management Automation und Microsoft Azure Automation sind Windows PowerShell Workflows oder PowerShell-Skripts. Sie ermöglichen die Automatisierung von administrativen Prozessen zur Verwaltung und Bereitstellung von Cloudservern oder beliebigen anderen Funktionen, die von einem Windows PowerShell-Skript ausgeführt werden können.

Es gibt keinen Unterschied in den Runbooks zwischen den beiden Systemen, und dasselbe Runbook kann auf beiden mit identischer Funktionalität ausgeführt werden. Wenn der Begriff Automatisierung in diesem Artikel verwendet wird, bezieht er sich sowohl auf Service Management Automation als auch auf Microsoft Azure Automation.

Folgende zusätzliche Dienste werden von Automation für die Arbeit mit Windows PowerShell-Workflows bereitgestellt:

  • Zentralisierter Speicher und Verwaltung von Runbooks

  • Skalierbare Architektur für die Planung und Ausführung von Runbooks

  • Globale Ressourcen, die zentral verwaltet werden und für alle Runbooks verfügbar sind

  • Benutzeroberfläche zum Erstellen und Testen von Runbooks

  • Gruppe von Cmdlets zum Verwalten und Starten von Runbooks

Erstellen oder Importieren eines Runbooks

Sie können ein Runbook zu Service Management Automation hinzufügen, indem Sie es entweder im Verwaltungsportal erstellen oder es aus einer Datei importieren.

Erstellen eines Runbooks im Verwaltungsportal

  1. Wählen Sie im Verwaltungsportal Neu, App Services, Automation, Runbook und Schnellerstellung aus.

  2. Geben Sie die erforderlichen Informationen ein, und wählen Sie Erstellen aus. Der Runbook-Name muss mit einem Buchstaben beginnen und kann Buchstaben, Zahlen, Unterstriche und Bindestriche enthalten.

  3. Wenn Sie das Runbook jetzt bearbeiten möchten, wählen Sie Runbook bearbeiten aus. Wählen Sie andernfalls OK aus.

  4. Ihr neues Runbook wird auf der Registerkarte Runbooks angezeigt.

Importieren eines Runbooks aus einer Datei

  1. Wählen Sie im Verwaltungsportal Automation , und wählen Sie dann ein Automation-Konto.

  2. Wählen Sie Importieren aus.

  3. Wählen Sie Nach Datei suchen aus, und suchen Sie die zu importierende Skriptdatei.

  4. Wenn Sie das Runbook jetzt bearbeiten möchten, wählen Sie Runbook bearbeiten aus. Wählen Sie andernfalls OK aus.

  5. Ihr neues Runbook wird auf der Registerkarte Runbooks für das Automatisierungskonto angezeigt.

Importieren eines Runbooks aus einer Skriptdatei mit Windows PowerShell

Sie können das Import-SmaRunbook -Cmdlet zum Erstellen eines neuen Runbooks aus einer Skriptdatei mit einem Workflow importieren.

Die folgenden Beispielbefehle zeigen, wie eine Skriptdatei in ein vorhandenes Runbook importiert und dieses dann veröffentlicht werden kann.

$webServer = 'https://MyServer'
$port = 9090
$runbookName = "Test-Runbook"
$scriptPath = "c:\runbooks\Test-Runbook.ps1"

Import-SmaRunbook -WebServiceEndpoint $webServer -Port $port -Path $scriptPath
Publish-SMARunbook -WebServiceEndpoint $webServer -Port $port -Name $runbookName

Bearbeiten eines Runbooks

Jedes Runbook in Service Management Automation verfügt über zwei Versionen: Entwurf und Veröffentlicht. Sie bearbeiten die Entwurfsversion des Workflows und veröffentlichen sie dann, damit sie ausgeführt werden kann. Die veröffentlichte Version kann nicht bearbeitet werden.

Bearbeiten eines Runbooks mit dem Verwaltungsportal

Das Verwaltungsportal enthält einen Editor, den Sie zum Anzeigen und Bearbeiten von Runbooks verwenden können. Zusätzlich zur Bereitstellung grundlegender Textbearbeitungsfunktionen bietet der Editor die Möglichkeit, automatisch Code für Runbooks, globale Ressourcen und Aktivitäten einzufügen.

  1. Wählen Sie im Verwaltungsportal Automation.

  2. Klicken Sie auf die Registerkarte Runbooks.

  3. Wählen Sie den Namen des Runbooks aus, das Sie bearbeiten möchten.

  4. Wählen Sie die Registerkarte Autor aus.

  5. Wählen Sie entweder entwurf am oberen Bildschirmrand oder unten auf dem Bildschirm die Schaltfläche Bearbeiten aus.

  6. Nehmen Sie die gewünschten Änderungen vor.

  7. Wählen Sie Speichern aus, wenn Ihre Bearbeitungen abgeschlossen sind.

  8. Wählen Sie Veröffentlichen aus, wenn die neueste Entwurfsversion des Runbooks veröffentlicht werden soll.

Wählen Sie die erforderliche Registerkarte für Schritte zum Einfügen von Code für Runbooks, globale Ressourcen und Aktivitäten aus:

Führen Sie die folgenden Schritte aus, um Code in ein Runbook einzufügen:

  1. Öffnen Sie das Runbook im Verwaltungsportal-Editor.

  2. Wählen Sie unten auf dem Bildschirm Einfügen und dann Runbook aus.

  3. Wählen Sie das Runbook aus, das in der mittleren Spalte eingefügt werden soll, und wählen Sie den Pfeil nach rechts aus.

  4. Wenn das Runbook über Parameter verfügt, werden sie zur Information aufgelistet.

  5. Wählen Sie die Schaltfläche "Überprüfen" aus.

  6. Der Code zum Ausführen des ausgewählten Runbooks wird in das aktuelle Runbook eingefügt.

  7. Wenn das Runbook Parameter erfordert, geben Sie einen geeigneten Wert anstelle des Datentyps an, der von Klammern <>umgeben ist.

Bearbeiten eines Automation-Runbooks mit PowerShell

Zum Bearbeiten eines Runbooks mit Windows PowerShell müssen Sie den Workflow mit dem Editor Ihrer Wahl bearbeiten und als PS1-Datei speichern. Sie können das Get-SMARunbookDefinition -Cmdlet zum Abrufen des Inhalts des Runbooks und dann das Edit-SMARunbook -Cmdlet zum Ersetzen des vorhandenen Entwurfsworkflows mit der bearbeiteten Version verwenden.

So rufen Sie den Inhalt eines Runbooks mithilfe von Windows PowerShell

Die folgenden Beispielbefehle zeigen, wie das Skript für ein Runbook abgerufen und in einer Skriptdatei gespeichert wird. In diesem Beispiel wird die Entwurfsversion abgerufen. Sie können auch die veröffentlichte Version des Runbooks abrufen, auch wenn diese Version nicht geändert werden kann.

$webServer = 'https://MyServer'
$port = 9090
$runbookName = "Test-Runbook"
$scriptPath = "c:\runbooks\Test-Runbook.ps1"

$runbookDefinition = Get-SMARunbookDefinition -WebServiceEndpoint $webServer -Port $port -Name $runbookName -Type Draft
$runbookContent = $runbookDefinition.Content

Out-File -InputObject $runbookContent -FilePath $scriptPath

So ändern Sie den Inhalt eines Runbooks mithilfe von Windows PowerShell

Die folgenden Beispielbefehle zeigen, wie vorhandener Inhalt eines Runbooks mit dem Inhalt einer Skriptdatei mit einem Workflow ersetzt werden kann.

$webServer = 'https://MyServer'
$port = 9090
$runbookName = "Test-Runbook"
$scriptPath = "c:\runbooks\Test-Runbook.ps1"

Edit-SmaRunbook -WebServiceEndpoint $webServer -Port $port -Name $runbookName -Path $scriptPath -Overwrite
Publish-SmaRunbook -WebServiceEndpoint $webServer -Port $port -Name $runbookName -Path $scriptPath

Bearbeiten eines Automation-Runbooks mit PowerShell ISE

Windows PowerShell Integrated Scripting Environment (ISE) ist eine Anwendung, mit der Sie Befehle ausführen und Skripts schreiben, testen und debuggen können. Mit dem SMA PowerShell ISE-Add-On können Sie dieses Tool zum Schreiben und Testen von Automation-Runbooks verwenden.

  1. Öffnen Sie Windows PowerShell ISE.

  2. Wenn das SMA ISE-Add-On nicht auf der rechten Seite der ISE angezeigt wird, öffnen Sie das Add-Ons-Menü , und aktivieren Sie das SMA ISE-Add-On.

  3. Melden Sie sich auf der Registerkarte Konfiguration bei SMA an.

  4. Wählen Sie die Registerkarte Runbook aus. Es sollte eine Liste von SMA-Runbooks angezeigt werden.

  5. Wählen Sie das Runbook aus, das Sie bearbeiten möchten, und wählen Sie Herunterladen aus. Dadurch wird eine lokale Kopie des Runbooks von SMA heruntergeladen.

  6. Klicken Sie auf Öffnen. Dadurch wird eine neue Registerkarte mit dem Runbook erstellt.

  7. Nehmen Sie die erforderlichen Änderungen am Runbook vor.

  8. Wählen Sie Entwurf hochladen aus, um das Runbook an SMA zu senden. Dadurch wird die vorhandene Entwurfsversion des Runbooks überschrieben.

  9. Wählen Sie Entwurf veröffentlichen aus, wenn Sie die neueste Entwurfsversion des Runbooks veröffentlichen möchten.

Veröffentlichen Ihres Runbooks

Nachdem Sie Ihr Runbook erstellt haben, müssen Sie es veröffentlichen, damit es vom Runbook Worker ausgeführt werden kann. Jedes Runbook in Service Management Automation verfügt über eine Entwurfs- und eine veröffentlichte Version. Nur die veröffentlichte Version kann ausgeführt werden, und nur die Entwurfsversion kann bearbeitet werden. Die veröffentlichte Version bleibt von Änderungen an der Entwurfsversion unberührt. Wenn Sie bereit sind, die Entwurfsversion verfügbar zu machen, veröffentlichen Sie sie, wodurch die veröffentlichte Version mit der Entwurfsversion überschrieben wird.

Veröffentlichen eines Runbooks über das Verwaltungsportal

  1. Wählen Sie den Arbeitsbereich Automation aus.

  2. Wählen Sie am oberen Bildschirmrand Runbooks.

  3. Navigieren Sie zum Runbook, das Sie bearbeiten möchten, und klicken Sie auf seinen Namen.

  4. Wählen Sie oben auf dem Bildschirm Autor aus.

  5. Wählen Sie Entwurf aus.

  6. Wählen Sie unten auf dem Bildschirm Veröffentlichen aus.

  7. Wählen Sie Ja für die Überprüfungsmeldung aus.

Veröffentlichen eines Runbooks mithilfe von PowerShell

Sie können Publish-SmaRunbook zum Veröffentlichen eines Runbooks mit Windows PowerShell verwenden. Die folgenden Beispielbefehle zeigen, wie Sie ein Runbook veröffentlichen.

$webServer = 'https://MyServer'
$port = 9090
$runbookPath = 'c:\runbooks\Sample-TestRunbook.ps1'
$runbookName = 'Test-Runbook'

Publish-SmaRunbook -WebServiceEndpoint $webServer -Port $port -Name $runbookName

Veröffentlichen eines Runbooks mithilfe von PowerShell ISE

Windows PowerShell Integrated Scripting Environment (ISE) ist eine Anwendung, mit der Sie Befehle ausführen und Skripts schreiben, testen und debuggen können. Mit dem SMA PowerShell ISE-Add-On können Sie dieses Tool zum Schreiben und Testen von Automation-Runbooks verwenden.

  1. Öffnen Sie Windows PowerShell ISE.

  2. Wenn das SMA ISE-Add-On nicht auf der rechten Seite der ISE angezeigt wird, öffnen Sie das Add-Ons-Menü , und aktivieren Sie das SMA ISE-Add-On.

  3. Melden Sie sich auf der Registerkarte Konfiguration bei SMA an.

  4. Wählen Sie die Registerkarte Runbook aus. Es sollte eine Liste von SMA-Runbooks angezeigt werden.

  5. Wählen Sie das Runbook aus, und wählen Sie Entwurf veröffentlichen aus, um die neueste Entwurfsversion des Runbooks zu veröffentlichen.

Testen Ihres Runbooks

Sie können die Entwurfsversion eines Runbooks in Service Management Automation testen, während die veröffentlichte Version des Runbooks unverändert bleibt. Auf diese Weise stellen Sie sicher, dass das Runbook ordnungsgemäß arbeitet, bevor Sie die veröffentlichte Version ersetzen.

Wenn Sie ein Runbook testen, wird die Entwurfsversion des Runbooks ausgeführt, und alle darin ausgeführten Aktionen werden abgeschlossen. Es wird kein Auftragsverlauf erstellt, aber die Streams "Ausgabe" , "Warnung" und "Fehler " werden im Bereich "Testausgabe" angezeigt. Meldungen an den ausführlichen Stream werden im Ausgabebereich nur angezeigt, wenn die variable $VerbosePreference auf Weiter festgelegt ist.

Wenn Sie ein Runbook testen, wird der Workflow weiterhin normal ausgeführt und alle Aktionen für Ressourcen in der Umgebung ausgeführt. Aus diesem Grund sollten Sie nur Runbooks für nicht produktive Ressourcen testen.

Testen eines Runbooks in Service Management Automation

Öffnen Sie zum Testen eines Runbooks die Entwurfsversion des Runbooks im Verwaltungsportal. Wählen Sie unten auf dem Bildschirm die Schaltfläche Test aus, um den Test zu starten.

Sie können das Runbook beenden oder anhalten, während es mit den Schaltflächen unter dem Ausgabebereich getestet wird. Wenn Sie das Runbook anhalten, wird die aktuelle Aktivität vor der Unterbrechung abgeschlossen. Nachdem das Runbook angehalten wurde, können Sie es beenden oder erneut starten.

Testen eines Runbooks mit PowerShell ISE

Das PowerShell ISE-Add-On stellt Cmdlets bereit, die die Standardaktivitäten wie Get-SMACredential und Set-SMAVariable emulieren, sodass Sie das Runbook wie jedes andere Skript auf dem lokalen Computer testen können.

Globale Ressourcen und ihre Werte werden aus der Automatisierungsgruppe heruntergeladen, um sie für lokale Tests zu verwenden. Sie können diese Werte auf der Registerkarte Assets überprüfen oder ändern. Verschlüsselte Werte werden orange angezeigt, und ihre Werte werden nicht heruntergeladen. Wenn Sie diese Ressourcen in lokalen Tests verwenden möchten, müssen Sie ihren Wert lokal festlegen.

Um das Runbook in SMA zu testen, wählen Sie Test Draft in SMA aus. Ein neues Fenster wird geöffnet. Wählen Sie Neuen Auftrag starten aus, um den Test zu starten. Die Ausgabe wird im Fenster angezeigt.

Automatisierungsrunbookbeispiele

Die folgenden Runbooks werden mit Service Management Automation als Beispielrunbooks geliefert, um Techniken und bewährte Methoden zu veranschaulichen. Sie können in der Automation-Erweiterung im Microsoft Azure Pack für Windows Server verwendet werden.

Runbookname BESCHREIBUNG
Sample-Deleting-VMCloud-Subscription Demonstriert ein nützliches Szenario, bei dem Sie ein Runbook auslösen, wenn ein Benutzer ein VM-Clouds-Abonnement löscht
Sample-Managing-Azure Zeigt, wie Sie eine Verbindung mit einem Microsoft Azure-Abonnement herstellen und grundlegende Vorgänge mithilfe des moduls Microsoft Azure PowerShell ausführen.
Sample-Managing-ConfigurationManager Veranschaulicht die Fähigkeit von Service Management Automation, eine Verbindung mit Configuration Manager herzustellen.
Sample-Managing-DataProtectionManager Demonstriert, wie Sie eine Verbindung zu einem Data Protection Manager-Server (DPM-Server) herstellen und Informationen zu den auf dem DPM-Server gefundenen Datenträgern anzeigen
Sample-Managing-MySQLServers Demonstriert, wie Sie ein Sicherheitstoken abrufen, mit dem Sie anschließend eine Liste von Hostservern abrufen können
Sample-Managing-OperationsManager Veranschaulicht die Fähigkeit von Service Management Automation, eine Verbindung mit System Center Operations Manager herzustellen.
Sample-Managing-Orchestrator Zeigt, wie Sie eine Verbindung mit System Center Orchestrator herstellen und ein Orchestrator-Runbook starten, um Ihre vorhandene Infrastruktur zu verwenden.
Sample-Managing-Plans Demonstriert, wie Sie einen neuen Plan erstellen und dem neuen Plan den SQL Server-Dienst mit einem definierten Kontingent hinzufügen
Sample-Managing-ServiceBusClouds Demonstriert, wie Sie eine Verbindung zu einem Service Bus Cloud-Server herstellen und Informationen zu den erstellten Namespaces anzeigen
Sample-Managing-SQLServers Demonstriert, wie Sie eine neue Servergruppe erstellen und einen SQL-Hostingserver hinzufügen
Sample-Managing-UserAccounts Veranschaulicht, wie Sie einen Benutzer in Microsoft Azure Pack für Windows Server erstellen, der in Microsoft Azure Pack erstellt wird und im Verwaltungsportal für Administratoren benutzerseitig angezeigt wird. Dieser Benutzer sollte jedoch auch in den Authentifizierungsanbieter (z. B. AuthSite) für den Zugriff auf das Verwaltungsportal für Mandanten integriert werden, was in diesem Beispiel nicht enthalten ist.
Sample-Managing-VirtualMachineManager Demonstriert, wie Sie eine Verbindung zu einem Virtual Machine Manager-Server (VMM-Server) herstellen und Informationen zur VMM-Serverlizenz anzeigen
Sample-Managing-VMClouds Demonstriert, wie Sie auf Informationen zur Datenbankverbindung eines Service Provider Foundation-Servers und auf Informationen zu den von Service Provider Foundation verwalteten VMM-Serverobjekten zugreifen
Sample-Managing-WebSiteCloud Demonstriert, wie Sie eine Verbindung zu einem Web Site Clouds-Controller-Server herstellen und Informationen zu den auf Web Site Clouds bereitgestellten Servern anzeigen
Sample-Modify-VMCloud-Subscription Demonstriert ein nützliches Szenario, bei dem Sie ein Runbook auslösen, wenn ein Mandant oder ein Administrator ein VM-Clouds-Abonnement anhält oder aktiviert
Sample-Using-Activities Veranschaulicht die Fähigkeit von Service Management Automation, Aktivitäten zu verwenden
Sample-Using-Checkpoints Veranschaulicht die Möglichkeit, Prüfpunkte in Service Management Automation zu verwenden.
Sample-Using-Connections Veranschaulicht die Fähigkeit von Service Management Automation, Verbindungen zum Herstellen einer Verbindung mit Remotesystemen zu verwenden.
Sample-Using-Credentials Veranschaulicht die Fähigkeit von Service Management Automation, Anmeldeinformationen zu verwenden, und gibt den Benutzer aus, unter dem das Service Management Automation-Runbook ausgeführt wird. Anschließend wird eine Verbindung zum Server „ServerName“ hergestellt, und der unter „SampleCredential“ angegebene Benutzer, der auf den Server zugreift, wird ausgegeben.
Sample-Using-Modules Demonstriert den Import von Modulen in Runbooks und gibt die Anzahl der bereits auf dem Server „ServerName“ importierten Module aus. Anschließend wird das unter „ModulePath“ angegebene Modul importiert, und die neue Anzahl der Module sowie die Informationen zum neu importierten Modul werden ausgegeben.
Sample-Using-RunbookParameters Demonstriert, wie Sie Eingabeparameter für Runbooks verwenden, wie Sie angeben, ob Parameter erforderlich sind, wie Sie Standardwerte für Parameter angeben und wie Sie Parameterwerte später im Workflow verwenden
Sample-Using-Runbooks Demonstriert, wie Sie ein Runbook von einem anderen Runbook aus aufrufen
Sample-Using-SuspendWorkflow Demonstriert, wie Sie das Anhalten eines Runbooks erzwingen. Dies kann hilfreich sein, wenn ein manueller Schritt erforderlich ist, bevor ein Runbook fortgesetzt werden soll, z. B. die Genehmigung der Abmeldung von einer bestimmten Person. Nachdem der manuelle Schritt abgeschlossen ist, setzen Sie die Ausführung des angehaltenen Runbooks manuell wieder fort.
Sample-Using-Variables Veranschaulicht die Funktionen von Service Management Automation zur Verwendung von Variablen.
Sample-Using-VMCloud-Automation Demonstriert ein nützliches Szenario, bei dem Sie ein Runbook auslösen, wenn ein Service Provider Foundation-Ereignis gestartet wird

Nächste Schritte

  • Lesen Sie , wie Sie ein Runbook aus einem anderen Runbook aufrufen.
  • Erfahren Sie , wie Sie mit Integrationsmodulen arbeiten.