Fotolia

Azure Stack als Testumgebung Schritt für Schritt einrichten

Administratoren und Entwickler können mit Azure Stack eine eigene Entwicklungsumgebung aufbauen. Dieser Beitrag erklärt detailliert, wie das in der Praxis funktioniert.

Mit Azure Stack lassen sich Funktionen aus Microsoft Azure in der privaten Cloud bereitstellen. Was Unternehmen damit alles umsetzen können beschreibt der Artikel Was mit Azure Stack im eigenen Data Center möglich ist. Bevor eine solche Technologie zum Einsatz kommt, ist es natürlich notwendig, dass diese getestet wird.

Azure Stack Deployment Kit nutzen

Hier stellt Microsoft mit dem Azure Stack Deployment Kit (ASDK) eine Testversion zur Verfügung. Diese hat aber viel zu hohe Anforderungen an die Hardware der Test- oder Entwicklungsmaschine. So sind zum Beispiel 96 GByte Arbeitsspeicher notwendig, sowie ein physischer Server. Mit etwas Konfigurationsarbeit kann aber eine Testumgebung mit wesentlich geringeren Ansprüchen erstellt werden. Der erste Schritt für die Installation von Azure Stack über das Azure Stack Deployment Kit besteht darin, die Installationsdateien herunterzuladen. Hierbei handelt es sich um etwa 15 GByte.

Auf der Seite des Azure Stack Deployment Kit kann die Datei AzureStackDownloader.exe heruntergeladen werden. Über diese startet ein Assistent, der die Installationsdateien von Azure Stack herunterlädt. Nach dem Download müssen diese angepasst werden, damit zum Beispiel Azure Stack auch auf einer Hyper-V-VM genutzt werden kann. Wichtiger Bestandteil von Azure Stack ist die Datei AzureStackDevelopmentKit.exe. Durch einen Doppelklick wird das Archiv extrahiert.

Wichtigster Bestandteil des Azure Stacks ist die virtuelle Festplatte CloudBuilder.vhdx. Diese kann über das Kontextmenü in Windows 10 als Laufwerk bereitgestellt werden. Aus dem Laufwerk werden Dateien aus dem Verzeichnis CloudDeployment/NuGetStore benötigt. Die Dateien sind im Archiv Microsoft.AzureStack.Solution.Deploy.CloudDeployment.1.1907.0.20.nupkg gespeichert. Das wird aus dem Laufwerk zum Beispiel auf den Desktop kopiert und die Endung zu zip geändert. Dadurch kann aus Windows heraus auf die Dateien zugegriffen werden. Anschließend wird das Archiv entpackt.

Azure Stack als VM betreiben

Soll Azure Stack als virtuelle Maschine betrieben werden, wird die Datei BareMetal.Tests.ps1 aus dem Verzeichnis content/Roles/PhysicalMachines/Tests geöffnet. Hier muss die Zeile

if (-not $isVirtualizedDeployment)

gegen folgende ersetzt werden:

if ($isVirtualizedDeployment)

Die Zeile ist mehrfach enthalten. Es muss also das ganze Skript durchsucht werden. Danach wird das Skript auf den Desktop oder ein weiteres Verzeichnis mit dem gleichen Namen gespeichert. Die Speicherung im Archiv erfolgt später.

Azure Stack: Speicherplatz-Voraussetzungen verringen

Azure Stack benötigt mindestens 200 GByte Festplattenplatz als Voraussetzung. Das lässt sich aber verringern. Dazu wird zunächst die Datei OneNodeRole.xml im Verzeichnis content/Configuration/Roles/Infrastructure/BareMetal geöffnet, ebenfalls mit einem Editor, zum Beispiel Notepad. Hier wird nach den beiden folgenden Zeilen gesucht:

<MinimumSizeOfDataDisksGB>135</MinimumSizeOfDataDisksGB>

<MinimumSizeOfSystemDiskGB>180</MinimumSizeOfSystemDiskGB>

Hier kann die Größe soweit verringert werden, dass die Installation durchgeführt werden kann, zum Beispiel auf 120 GByte. Auch hier wird die Datei wieder gespeichert.

Reicht der Arbeitsspeicher des Hyper-V-Hosts oder des virtuellen Servers nicht aus, um Azure Stack zu betreiben, kann in der gleichen Datei in der folgenden Zeile der Wert gesenkt werden:

<MinimumPhysicalMemoryPerMachineGB>96</MinimumPhysicalMemoryPerMachineGB>

Allerdings sollte Azure Stack auch in Entwicklungs- oder Testumgebungen mindestens 32 GByte Arbeitsspeicher zur Verfügung stehen. Stehen auf dem Server nicht genügend Prozessorkerne zur Verfügung, kann auch das angepasst werden. Dafür wird die folgende Zeile bearbeitet:

<MinimumNumberOfCoresPerMachine>12</MinimumNumberOfCoresPerMachine>

Danach werden die angepassten Dateien wieder in das Archiv Microsoft.AzureStack.Solution.Deploy.CloudDeployment.1.1907.0.20.zip kopiert. Hier reicht es aus, das Archiv doppelt anzuklicken und die Datei in das entsprechende Verzeichnis im Archiv zu kopieren.

Danach erhält die Datei wieder die Endung nupkg und wird in die Datei CloudBuilder.vhdx über das gemountete Laufwerk zurück kopiert. Anschließend wird die Bereitstellung des Laufwerks über das Kontextmenü des Laufwerks im Explorer aufgehoben.

Die Änderungen sind in der Datei gespeichert. Auf diesem Weg lassen sich auch andere Einstellungen in Azure Stack an die eigenen Anforderungen anpassen. Das Verzeichnis, in das Azure Stack extrahiert wurde, kann anschließend auf den Hyper-V-Host kopiert werden, der für Azure Stack genutzt werden soll.

VM für Azure Stack vorbereiten

Soll Azure Stack als VM betrieben werden, muss die entsprechende virtuelle Maschine vor der Installation erstellt und so angepasst werden, dass die Anforderungen den Systemvoraussetzungen entsprechen, die in den Installationsdateien vorgegeben wurden.

Abbildung 1: Beim Anlegen einer VM für Azure Stack lässt sich eine virtuelle Festplatte auch nach der Erstellung zuweisen.
Abbildung 1: Beim Anlegen einer VM für Azure Stack lässt sich eine virtuelle Festplatte auch nach der Erstellung zuweisen.

Wichtig ist hier die Anpassung der CPU, des Arbeitsspeichers, und den verschiedenen virtuellen Festplatten, die dem Azure Stack zugewiesen werden müssen. Die VM sollte idealerweise als Generation 2-VM erstellt werden.

Es kann sinnvoll sein, einen eigenen virtuellen Switch für Azure Stack zur Verfügung zu stellen. Eine virtuelle Festplatte muss nicht erstellt werden. Die entsprechende virtuelle Festplatte wird dann nach der Erstellung zugewiesen. Nach der Erstellung muss noch sichergestellt werden, dass die Anzahl der Prozessoren und Kerne, die der Azure-Stack-VM zugewiesen wurden, mit der Anzahl übereinstimmt, die in den Konfigurationsdateien festgelegt worden sind.

Cloudbuilder.vhdx und Datenfestplatten einbinden

Die virtuelle Festplatte CloudBuilder.vhdx wird danach in das Verzeichnis kopiert, in dem sich auch die anderen Systemdateien für Azure Stack befinden. Hier kann natürlich auch ein Unterverzeichnis erstellt werden. Danach wird die virtuelle Festplatte in den Einstellungen der Azure-Stack-VM eingebunden.

Über die Eigenschaften wird beim SCSI-Controller der VM eine neue Festplatte hinzugefügt. Hier wird die Datei CloudBuilder.vhdx zugewiesen. Azure Stack benötigt darüber hinaus vier Datenfestplatten. Diese müssen ebenfalls über den SCSI-Controller hinzugefügt werden.

Abbildung 2: Die Startreihenfolge der Azure-Stack-VM kann entsprechend angepasst werden.
Abbildung 2: Die Startreihenfolge der Azure-Stack-VM kann entsprechend angepasst werden.

Danach sollte in den Eigenschaften der VM bei Firmware die Startreihenfolge so geändert werden, dass die virtuelle Festplatte CloudBuilder.vhdx ganz oben steht.

Installation der Azure-Stack-VM fertigstellen

Generell ist es empfehlenswert, bei Integrationsdienste die Zeitsynchronisierung zu deaktivieren. Azure Stack synchronisiert seine Zeit selbst über einen Zeitserver (siehe unten), nicht über Hyper-V, wenn Azure Stack virtualisiert wird. Weitere Einstellungen sind optional und können jederzeit angepasst werden. Azure Stack benötigt die eingebettete Virtualisierung. Diese muss für die VM des Azure-Stacks aktiviert werden. Der Befehl dazu lautet am Beispiel der VM „Azure Stack“ folgendermaßen:

Set-VMProcessor -VMName “Azure Stack” -ExposeVirtualizationExtensions $true -Verbose

Get-VMNetworkAdapter -VMName „Azure Stack“ | Set-VMNetworkAdapter -MacAddressSpoofing On

Anschließend kann die Azure-Stack-VM gestartet und der Assistent für die Einrichtung abgeschlossen werden.

Abbildung 3: Die eingebettete Virtualisierung für die Azure-Stack-VM muss noch aktiviert werden.
Abbildung 3: Die eingebettete Virtualisierung für die Azure-Stack-VM muss noch aktiviert werden.

Unter Umständen müssen nach dem Start noch die Netzwerkeinstellungen des Azure-Stack-Servers angepasst werden.

Wichtig ist, dass eine Verbindung zum Internet hergestellt werden kann. Danach kann auf dieser VM Azure Stack über das Skript ./InstallAzureStackPOC.ps1 installiert und eingerichtet werden.

Für die Einrichtung ist es sinnvoll, dass entweder ein Abonnement von Microsoft Azure vorliegt oder alternativ ein Test-Abonnement abgeschlossen wird. Das Installationsskript befindet sich im Verzeichnis C:/CloudDeployment/Setup. Im Rahmen der Installation werden die Zugangsdaten für den Zugriff auf Azure Active Directory angegeben. Die Installation erfolgt in der PowerShell zum Beispiel mit folgenden Befehlen:

cd C:\CloudDeployment\Setup    

$adminpass = Get-Credential Administrator    

.\InstallAzureStackPOC.ps1 -AdminPassword $adminpass.Password

Auf der Seite Deploy ASDK from the command line using Powershell gibt Microsoft dazu noch Hinweise. Bei der Installation muss auch die IP-Adresse oder der Name eines Zeitservers angegeben werden. Ein Beispiel ist der Zeitserver der Physikalisch technischen Bundesanstalt in Braunschweig. Vor der Installation sollte überprüft werden, ob die Server erreichbar sind, auch über die IP-Adresse:

ptbtime1.ptb.de

ptbtime2.ptb.de

ptbtime3.ptb.de

Die Bereitstellung von Azure Stack kann einige Zeit in Anspruch nehmen, da erst einige Archive extrahiert und viele Einstellungen vorgenommen werden müssen.

Nächste Schritte

Gratis-eBook: Azure-Praxis - Migration und Betrieb

Das können Unternehmen mit Azure Stack umsetzen

Wie Azure Stack die Herausforderungen der Hybrid Cloud meistern will

Erfahren Sie mehr über Cloud Computing

ComputerWeekly.de
Close