Azure VM per PowerShell und CustomScript Extension vorkonfigurieren

*** noch im Rohmodus – der Beitrag wird in Kürze noch einmal überarbeitet ***

Möchte man man eine Azure VM skriptgesteuert vorbereiten, z.B. bestimmte Anwendungen vorabinstallieren, gibt es dafür grundsätzlich zwei Alternativen, die keine Tools anderer Hersteller oder Microsoft SCCM voraussetzen:

>Azure DSC
>Eine Extension in Gestalt der CustomScriptExtension, die entweder beim Anlegen der VM oder nachträglich als Erweiterung ausgewählt wird

Beide Ansätzen besitzen, wie könnte es anders sein, ihre kleineren Vor- und Nachteile. Variante 1, die ich in seinem separaten Blog-Eintrag in naher Zukunft vorstellen werde, setzt etwas mehr Vorbereitungsaufwand voraus und kann aktuell nicht vollständig im Portal umgesetzt werden, ist aber flexibler, da sich eine beliebige Anzahl an VMs damit konfigurieren lassen. Variante 2 ist einfach, da lediglich ein vorhadenes PowerSHell-Skript geladen wird, dafür aber nicht so flexibel (ich bin mir im Moment nicht sicher, ob die Erweiterung per Azure-Cmdlets einer beliebigen Anzahl an VMs zugeordnet werden kann. Generell empfehle ich DSC, aber mehr nur ein paar VMs vorkonfigurieren möchte, kommt mit Variante 2 schneller zum Ziel.

Schritt 1: Auswahl der Erweiterungen für die VM

Im ersten Schritt meldet man sich am Azure-Portal aus, selektiert die bereits vorhandene VM und danach Erweiterungen.

Auswahl der Erweiterungen für eine VM

Schritt 2: Hinzufügen der CustomScriptExtension

Sollte die CustomScriptExtension noch nicht in der Liste der Erweiterungen enthalten sein, muss sie über das +-Zeichen hinzugefügt werden. Dabei wird ein vorhandenes Ps1-Skript hochgeladen. Theoretisch sollte es auch aus einem Storage Account geladen werden können.

Anlegen einer CustomScript Extension


Schritt 3: Anwenden der CustomScriptExtension
Wurde die CustomScriptExtension eingerichtet, erscheint sie in der Liste der Erweiterungen.

Die CustomScriptExtension wurde bereitgestellt

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.