Windows Azure und IaaS – Schritt 8 PowerShell Cmdlets installieren

Die neue Azure-Verwaltungsseite bietet interaktive Steuerung und Zugriff auf alle Funktionen von Windows Azure - im Web. Mit der Windows Azure Version Juni 2012 können nun die Windows Azure PowerShell Cmdlets installiert werden und damit Funktionen in der Microsoft Cloud per Script gesteuert werden. Wie das funktioniert, erfahren Sie hier!

Windows Azure Management API

Windows Azure besitzt ein REST-basierende API für fast alle Funktionen, inklusive Management API. Alle API Operationen erfolgen über SSL und werden wechselseitig über X.509 v3 Zertifikate ausgetauscht – die Verbindung ist sicher. Jedes Azure-Abonnement (“Subscription”) besitzt eine eigene, eindeutige Subscription ID, die einen Teil der URI (des Service Endpoints) darstellt. Die Basisadresse lautet https://management.core.windows.net, dahinter folgen Subscription-ID und das gewünschte Service, zum Beispiel https://management.core.windows.net/\<subscriptionId>/services/storageservices. Developer erfahren in Addressing Service Management Resources mehr über diese Adressierung.

Zu dieser Management API existiert ein übereinstimmendes Set von Windows Azure PowerShell Cmdlets, welche die Automatisierung von kompletten Deployments mit PowerShell ermöglichen. Das ist der relevante Teil, der uns hier für IaaS-Steuerung per Scripts interessiert.

Windows Azure PowerShell Cmdlets installieren

Zunächst müssen Sie auf dem Computer die Windows Azure PowerShell Cmdlets installieren. Diese laden Sie von der Windows Azure Downloads-Website: https://www.windowsazure.com/en-us/manage/downloads.

azure-ps-1

Hinweis: Die Cmdlets stehen für diese Betriebssysteme bereit: Windows 8, Windows 7, Windows Server 2012 und Windows Server 2008 R2.

Für Windows klicken Sie auf den blauen “install”-Link und speichern Sie den Download. Klicken Sie danach auf “Ordner öffnen” und installieren Sie das heruntergeladene Paket WindowsAzurePowerShell.3f.3f.3fnew.exe mit Doppelklick. Bestätigen Sie die UAC-Sicherheitsabfrage. Der Webplattform-Installer 4.0 wird gestartet.

azure-ps-2

Die aktuelle Version stammt von Ende Oktober 2012. Klicken Sie auf “Installieren”. Und nochmals mit “Ich stimme zu” bestätigen:

azure-ps-3

Nun wir das Paket heruntergeladen und installiert – dies erfolgt in wenigen Sekunden. Klicken Sie danach auf “Fertig stellen”. Danach können Sie den Web Plattform Installer 4.0 mit “Beenden” schließen.

Windows Azure PowerShell starten

Starten Sie nun die neue Windows Azure PowerShell. Am schnellsten, indem Sie nach “azure” oder “power” in den Apps suchen.

azure-ps-4-start

Starten Sie die Windows Azure PowerShell. Hiermit wird eine neue PowerShell Session gestartet, welche die Windows Azure Cmdlets bereits geladen hat – Sie können (fast) sofort loslegen.

Die neuen Cmdlets selbst laden

Alternativ können Sie auch die “normale” PowerShell starten und das Modul importieren.

standard-ps

Hier können Sie die Azure Cmdlets wir folgt importieren:

Import-Module Azure

azure-ps-import-module-azure

Danach funktionieren alle Azure Cmdlets wie im Screenshot oben.

Die Installation kopiert die PowerShell-Module in den Ordner C:\Program Files (x86)\Microsoft SDKs\Windows Azure\PowerShell\Azure. Wenn Sie kein x64-Bit Betriebssystem verwenden, lautet der Ordner C:\Program Files\…

azure-ps-5

Hinweis: Für zukünftige Versionen ist geplant, dass die Azure-Module in den Benutzer-Ordner installiert werden (siehe Blog of Michael Washam, Senior Technical Evangelist for Windows Azure at Microsoft).

Wenn Sie die Cmdlets in eigenen PS-Scripts verwenden wollen, importieren Sie das Modul wie folgt:

Import-Module “C:\Program Files (x86)\Microsoft SDKs\Windows Azure\PowerShell\Azure\Azure.psd1”

Verbindung zum Azure Abonnement herstellen

Bevor Sie mit den neuen Azure-Funktionen arbeiten können, benötigen Sie eine Verbindung zur Cloud. Wenn Sie ohne Verbindung loslegen wollen, informiert Sie PowerShell, dass zuerst “publish settings” erforderlich sind:

azure-ps-9

Zunächst müssen Sie eine Verbindung zwischen Ihrem Computer und Windows Azure herstellen. Dies erfolgt durch Konfiguration des Verwaltungszertifikates und der Abonnement-Daten.

Am einfachsten funktioniert dieser Weg:

Rufen Sie in der Windows Azure PowerShell den Befehl Get-AzurePublishSettingsFile auf:

azure-ps-10

Hiermit öffnet sich ein Browserfenster mit der Adresse https://windows.azure.com/download/publishprofile.aspx.
Melden Sie sich hier mit Ihrem Microsoft Konto an und setzen Sie fort. Nun folgt eine Webseite, die Ihre persönlichen PublishSettings erstellt und zum Download bereitstellt.

azure-ps-11

Nach kurzer Zeit folgt die Aufforderung, Ihre PublishSettings für alle ihre Abonnements herunterzuladen. Klicken Sie auf “Speichern” und danach auf “Ordner öffnen”. Am besten kopieren Sie den Pfad zur heruntergeladenen Datei:

azure-ps-12

Nun muss diese Datei nur noch importiert werden. Wechseln Sie nun wieder in die Windows Azure PowerShell und rufen Sie den Befehl Import-AzurePublishSettingsFile <mysettings>.publishsettings auf. Verwenden Sie zum Einfügen des Pfades Ihrer heruntergeladenen PublishSettings-Datei am besten das Einfügen aus der Zwischenablage. Die CommandShell sieht dann etwa so aus:

azure-ps-13-import

Hiermit wird das Zertifikat für Ihre Abonnements auf Ihrem Computer installiert.

Hinweis: Löschen Sie die heruntergeladenen PublishSettings-Datei nach dem Import wieder. Hier ist ein Verwaltungszertifikat enthalten, das nicht von unautorisierten Benutzern verwendet werden sollte – schließlich erhalten sie so Zugriff zu Ihren Azure-Abonnements!

Der etwas längere Weg führt – statt über den Download der automatisch generierten PublishSettings - über eine manuelle Konfiguration der Abonnement-Daten mit Erstellen eines neuen Zertifikates. Wenn Sie diese Vorgangsweise interessiert, finden Sie die Anleitung in Get Started with Windows Azure Cmdlets und weitere Informationen in How to: Manage Management Certificates in Windows Azure sowie in Windows Azure PowerShell.

Mehrere Subscriptions verwenden

Wenn Sie mehrere Abonnements verwalten, wird eines davon als aktuelles Standard-Abonnement ausgewählt, im Beispiel oben ist das Abonnement “VM-Test-2” das aktuelle Abonnement. Das Standard-Abonnement kann jederzeit mit dem Select-AzureSubscription Cmdlet geändert werden, zum Beispiel in das Abonnement “VM-Test-3”:

Select-AzureSubscription "VM-Test-3"

Dies ist auch erforderlich, wenn Sie die (Azure) PowerShell öffnen und Aktionen ausführen wollen. Stellen Sie mit diesem Befehl zuvor sicher, dass Sie im richtigen Abonnent sind.

Prüfen der Verbindung

Netterweise merkt sich Windows ihre Einstellungen – dieser Vorgang muss nur einmal erfolgen. Mit

Get-AzureSubscription

können Sie all Ihre Abonnements abfragen. Sie erhalten eine Auflistung aller Abonnement-Objekte:

azure-ps-14-check

In obigem Screenshot sehen Sie eine Auflistung aller Subscriptions. mit ihrem installierten Zertifikat.

Die Zertifikat-Einstellungen werden übrigens in C:\Users\<User>\AppData\Roaming\Windows Azure Powershell gespeichert:

azure-ps-15-settings

Ein Blick in publishSettings.xml zeigt, dass hier alle Abonnements verfügbar sind:

azure-ps-16-settings

Nun stehen Ihnen die Azure Cmdlets zur Verwendung für Ihre Subscriptions  bereit.
Wie das mit virtuellen Maschinen funktioniert, erfahren Sie im nächsten Artikel!

Quicklinks:
Windows Azure und IaaS
Schritt 1 Anmeldung
Schritt 2 Das Portal
Schritt 3 Kostenübersicht
Schritt 4 VM Vorschau aktivieren
Schritt 5 Neue VM anlegen
Schritt 6 Verbinden
Schritt 7 VHD anfügen
Schritt 8 PowerShell Cmdlets installieren
Schritt 9 PowerShell QuickVM