Stefan Zawacki

Nachdem ich zuletzt in diesem Beitrag eine Einführung  zu den Azure Automation Services unter dem Service Manager gegeben habe, folgt nun die Anleitung zu den Automation Services für den Resource Manager. An Hand des gleichen Beispiels, dem automatisierten Starten und Stoppen von virtuellen Computern, werde ich Ihnen die Neuerungen und Änderungen vorstellen.

Haben Sie bereits einen Azure Account und wollen die Funktionalitäten des Resource Managers nutzen, so können Sie sich über den Link: „https://portal.azure.com“ in das Azure Portal einloggen. Haben Sie noch keinen Account, so reicht ein kostenloser Test-Account, den Sie ebenfalls unter dem obigen Link erstellen können aus, um die einzelnen Schritte dieses Tutorials nachvollziehen zu können.

 

Automation Services: Einen neuen Account anlegen

Nach dem Login kann des Portal bei Ihnen anders aussehen als in den hier gezeigten Bildern. Sowohl das linke Navigationsmenü, als auch die Portal-Übersicht kann sich jeder Benutzer nach den eigenen Bedürfnissen konfigurieren. Um nun zu den Automation Services zu gelangen wählen Sie im linken Menü den Punkt „Browse“ aus. Es öffnet sich das vollständige Menü und Sie können hier nach den „Automation Accounts“ suchen und diese auswählen.

 

Azure Automation Portal
Sie sehen eine Übersicht aller bereits vorhandenen Automation Accounts. Klicken Sie auf „Add“, um einen neuen Account anzulegen.

 

Azure Automation Accounts
Geben Sie einen Namen für den neuen Automation Account an. Der Name muss eineindeutig sein. Der kleine grüne Haken am rechten Ende des Eingabefelds zeigt an, ob der Name valide ist.

Wählen Sie die Subscription aus, in dem der neue Automation Account angelegt werden soll. Achten Sie darauf, dass Sie die Subscription wählen, in dem ihre virtuellen Computer liegen, die Sie steuern möchten, denn alle Resourcen sind in den unterschiedlichen Subscriptions streng von einander getrennt. Ein Zugriff über eine Subscription hinaus ist zwar möglich, wird aber nicht im Rahmen dieser Einführung nicht behandelt.

 

Create Azure Automation Account
Lassen Sie eine neue „Resource group“ anlegen, die Sie ebenfalls benennen und wählen Sie die „Location“ aus, die Ihrem Standort entspricht. Klicken Sie abschließend auf „Create“ und Ihr neuer Automation Account wird erstellt und in der Übersicht angezeigt.

 

Select Azure Automation Account

Automation Services: Konfiguration des Accounts

Klicken Sie auf den neuen Account, um die Konfiguration zu öffnen.

 

Configure Azure Automation Account
Wie auch schon beim Service Manager umfasst die Konfiguration der Automation Services unter dem Resource Manager unterschiedliche Resourcen. Wir werden uns in diesem Tutorial auf die „Runbooks“ und auf die „Assetes“ konzentrieren, die wir benötigen, um unser Skript anzulegen und die benötigten Credentials zu erstellen.

Wenn Ihnen diese Begriff nichts sagen, empfehle ich meinen, bereits in der Einleitung verlinkten Beitrag zu lesen, der detailliert auf diese Resourcen eingeht und deren Funktion erklärt.

 

Automation Services: Runbook anlegen

Im obigen Bild ist erkennbar, das bereits ein Runbook in dem neu angelegten Automation Account angelegt ist. Hierbei handelt es sich um ein Beispielskript, das wir für dieses Tutorial nicht benötigen. Um ein neues Runbook zu erstellen klicken Sie auf „Add a runbook“.

 

Automation Services Runbooks
Wählen Sie „Create a new runbook“ und vergeben Sie einen entsprechenden Namen, anschließend wählen Sie den Runbook Typen aus. Hierbei fällt die größte Neuerung im Vergleich zum Service Manager auf, denn neben den bereits bekannten „PowerShell Workflows“, stehen nun noch die Typen „PowerShell“ und „Graphical“ zur Verfügung.

 

Automation Services Runbooks

 

Der Typ „Graphical“ bietet die Möglichkeit, einfache Aufgabe GUI-basiert durch Drag & Drop zu erstellen. Der Typ „PowerShell“ ermöglicht das einbinden von PowerShell-Skripten, die kein Workflow sind. Dies bietet den Vorteil, Funktionen implementieren zu können. Genau diesen Typen werden wir verwenden um unser neues Runbook zu erstellen.

 

Azure Automation Services Runbokk Script
Nachdem das Runbook angelegt wurde, wird es direkt zum Bearbeiten geöffnet. Kopieren Sie nun das folgenden Skript in das leere Runbook. Das Skript ist eine modifizierte Version des „Assert-AutoShutdownSchedule.ps1“ Skripts, welches Microsoft im Technet zur Verfügung stellt.

 

In den Zeilen 1-30 ist eine Funktion enthalten, die den aktuellen Status eines virtuellen Computers ermittelt und mit dem gewünschten Status abgleicht. Weicht der aktuelle Status von dem gewünschten Status ab, so wird der Status des virtuellen Computers entsprechend angepasst. Dadurch ist das Skript sowohl für den Start, als auch für den Stopp von virtuellen Computern einer Subscription geeignet. Der Aufruf der Funktion erfolgt in Zeile 57.

In den Zeilen 39 und 40 müssen die Angaben zu den Credentials, der Subscription und dem gewünschten Status gemacht werden. Als Status kann „running“, oder „soppeddeallocated“ eingetragen werden.

In der Zeile 38 muss, wie auch beim Service Manager ein Credential angegeben werden in dessen Kontext das Skript ausgeführt wird. Daher müssen wir zunächst ein Credential Asset erstellen. Bevor Sie die Ansicht wechseln, klicken Sie zunächst auf „Save“, um das Skript zu speichern.

 

Automation Servcies: Credential Asset erstellen

Zum Anlegen navigieren Sie zurück zur Runbook-Konfiguration und wählen Sie die Kachel „Credentials“ aus.

 

Azure Automation Services Credential Asset

 

In der Übersicht sind noch keine Credentials enthalten. Wählen Sie „Add a credential“.

 

Azure Automation Services Credential Asset AnlegenVergeben Sie einen Namen, der anschließend im Skript verwendet wird und geben Sie den Benutzernamen und das Passwort, des Benutzers an, in dessen Kontext des Runbook laufen soll. Achten Sie darauf, dass der Benutzer die notwendigen Rechte hat. Es empfiehlt sich ein Benutzerkonto anzulegen das ausschließlich für die Ausführung von Runbooks verwendet wird.

 

Azure Automation Services Credential Asset Erstellen

Zum Abschluss klicken Sie auf „Create“ um das Credential erstellen zu lassen und wechseln Sie wieder zurück in den Editor des Runbooks.

 

Azure Automation Services Credential Asset Einfügen
Hier taucht nun im linken Menü unter „Assets“ das angelegt Credential auf, das nun in Zeile 39 eingefügt werden kann. Nun kann das Skript erneut gespeichert werden. Anschließend sollten Sie das Skript testen, dazu auf „Test pane“ klicken. Es wird ein Testlauf gestartet und Sie bekommen den Output des Skripts in einem Fenster angezeigt. Sollten hier Fehler auftreten, so müssen Sie das Skript noch einmal überarbeiten. Läuft das Skript wie gewünscht, klicken Sie auf „Publish“, um das Skript zu veröffentlichen. Erst danach kann das Skript automatisiert ausgeführt werden.

Um das Runbook nun automatisiert ausführen zu können, muss noch ein Zeitplan angelegt und zugewiesen werden.

 

Automation Services: Zeitplan erstellen

Wechseln Sie zurück zur Runbook-Konfiguration und wählen Sie die Kachel „Schedules“.

 

Azure Automation Services Schedule

 

Klicken Sie auf „Add a schedule“, um einen neuen Zeitplan zu erstellen.

 

Azure Automation Services Schedules Hinzufügen

Vergeben Sie einen Namen und eine Beschreibung. Da Zeitpläne mehreren Runbooks zugewiesen werden können, sollten Sie diese nicht leer lassen. Dadurch können Sie auch nach Wochen, oder Monaten erkennen, was der Zeitplan macht, ohne die Konfiguration einsehen zu müssen.

 

Azure Automation Services Schedules Anlegen

 

Konfigurieren Sie den Zeitplan entsprechend ihren Anforderungen. Ich wähle hier eine tägliche Ausführung um 8 Uhr. Nachdem der Zeitplan erstellt ist, muss er noch dem Runbook zugewiesen werden, dazu öffnen Sie erneut das Runbook und wählen Sie den Menüpunkt „Schedule.

 

Azure Automation Services Schedules Zuweisen

 

Wählen Sie den Eintrag „Link a schedule to your runbook“ und markieren Sie anschließend den zuvor erstellten Zeitplan.

 

Azure Automation Services Runbook Ovwerview

 

Schließen Sie die Zuweisung ab indem Sie auf „Ok“ klicken.

 

Azure Automation Services Schedules Auswählen
Sie können die Zuweisung überprüfen indem Sie in ihrem Runbook auf „Schedules“ klicken. In der Übersicht sind alle Zeitpläne aufgelistet, die dem Runbook zugewiesen sind und Sie können die Zeitpunkt der nächsten Ausführung ablesen.

Damit ist ihr Runbook vollständig konfiguriert und wird nun jeden Morgen um 8 Uhr die virtuellen Computer der ausgewählten Subscription starten.