Tags: OS Deployment, VHD, Windows Server 2016, Nano Server
Windows Server 2016 führt eine superschlanke Installationsoption namens Nano Server ein, die sich nicht über das normale Setup, sondern mit PowerShell einrichten lässt. Seit der TP5 steht dafür eine veränderte
Routine zur Verfügung, die weniger Handarbeit erfordert als die bisherige
Prozedur.
Nachdem es sich bei Nano Server um eine Variante handelt, die ausschließlich remote und bevorzugt mit PowerShell administriert wird, ist es nur konsequent, wenn auch das Setup über die Kommandozeile erfolgt. Die dafür vorgesehenen Mittel erlauben aber nur eine Installation in eine VHD, egal ob Nano Server in einer VM oder auf einem physikalischen Rechner laufen soll.
Installation vorbereiten
Die Installationsmedien für Nano Server sind nicht separat erhältlich, sondern Teil des ISO-Abbilds, das die Quellen für den ganzen Windows Server 2016 enthält. Daher muss man im ersten Schritt die ISO mounten (über die GUI oder mit PowerShell) und von dort das Verzeichnis NanoServer\NanoServerImageGenerator auf die Festplatte zu kopieren.
Anschließend öffnet man PowerShell als Administrator und wechselt in das Verzeichnis NanoServerImageGenerator, das man eben von der ISO kopiert hat. Dort führt man den Befehl
Import-Module .\NanoServerImageGenerator
aus. Es enthält die Cmdlets für die Verwaltung der Nano-Images, allen voran New-NanoServerImage, mit dem man das System in eine VHD übertragen kann.
Aufruf von New-NanoServerImage
New-NanoServerImage akzeptiert eine Vielzahl von Parametern, von denen jedoch viele optional sind, weil sich die dazugehörigen Aktionen später auch auf anderen Wegen nachholen lassen. Ein typischer Aufruf wird folgende Parameter verwenden:
- MediaPath: Pfad zu den Installationsmedien, sprich das Wurzelverzeichnis der gemounteten ISO
- ComputerName: Der Computername des Nano Servers
- TargetPath: Der Pfad und Dateiname der VHD, in die der Server installiert werden soll. Sie muss nicht existieren, das Cmdlet erzeugt
sie eigenständig.
Gibt man hier als Endung .vhdx an, dann richtet New-NanoServerImage ein GPT-Laufwerk ein, und bei .vhd folgt es dem Partitionierungsschema von MBR. Soll die virtuelle Festplatte an eine VM der Generation 2 angehängt werden, dann muss man sich hier für VHDX entscheiden, weil Windows in einer UEFI-VM nicht von MBR starten kann. - DeploymentType: Damit teilt man dem Cmdlet mit, ob der Nano Server in einer VM oder auf physikalischer Hardware laufen soll. Die zulässigen Werte dafür sind Guest und Host.
Bei der ersten Variante werden die Integrationsdienste installiert. Wählt man dagegen Host, dann sollte man zusätzlich den Schalter OEMDrivers angeben. Er sorgt dafür, dass die Treiber für die gängigste Hardware in das Image übernommen werden. Benötigt man zusätzliche Treiber, dann kann man den Pfad zu den .sys- und .inf-Dateien mit Hilfe des Parameters DriversPath angeben. - Edition: Legt die Edition von Windows Server fest, zulässig sind Standard und DataCenter.
- AdminPassword: Das Passwort für das Konto des eingebauten Administrators. Gibt man den Parameter nicht an, dann fragt das Cmdlet diesen beim Start ab.
Folgender Beispielaufruf installiert Nano Server Standard Edition in eine VHDX-Datei zur Verwendung mit einer VM der Generation 2:
New-NanoServerImage -Edition Standard `
-DeploymentType Guest `
-MediaPath L:\ `
-TargetPath "E:\Hyper-V\Nano Server 2016 TP5\Virtual Hard Disks\Nano2016Standard.vhdx" `
-ComputerName "Nano-2016-VM1"
Statische IP-Adresse konfigurieren
Grundsätzlich kann man Nano Server gleich bei der Installation noch weiter konfigurieren, etwa wenn man statische IP-Adressen vergeben möchte. Dazu muss man erst den Namen des Interfaces ermitteln, entweder auf dem Hyper-V-Host oder auf dem Windows, wo die VHD nativ starten soll.
Dieses übergibt man dem Parameter InterfaceNameOrIndex. Zusätzlich legt man die IP-Adresse mit Ipv4Address, die Netmask mit Ipv4SubnetMask, das Default Gateway mit Ipv4Gateway und die DNS-Server mit Ipv4Dns fest.
Updates und andere Dateien integrieren
Weitere nützliche Argumente sind MaxSize, wenn man in der VHD mehr Platz benötigt als die voreingestellten 4GB, und ServicingPackages, um Updates in Form von .cab-Dateien einzuspielen. Möchte man darüber hinaus noch eigene Dateien in das Image übernehmen, dann erledigt CopyFiles diese Aufgabe.
Von VHD(X) booten
Sobald Nano Server installiert ist, kann man eine neue virtuelle Maschine anlegen und dort die VHD(X)-Datei einbinden. Die minimale RAM-Anforderung für die schlanke Server-Variante liegt bei 512 MB. Diese wird man jedoch deutlich überschreiten, um Anwendungen in der VM auszuführen.
Falls man sich jedoch für DeploymentType Host entschieden hat, kopiert man die VHD auf einen Windows-Rechner und richtet diesen so ein, dass er vom virtuellen Laufwerk starten kann. Zu diesem Zweck wird der Nano Server in das Boot-Menü aufgenommen. Wie man dabei vorgeht, beschreibt dieser Beitrag am Beispiel von Windows 7.
Täglich Know-how für IT-Pros mit unserem Newsletter
Verwandte Beiträge
- Nano Server als File-Server einrichten und Freigaben konfigurieren
- Image Builder: GUI für die Installation von Nano Server
- DISM Befehlsübersicht: Images anpassen, Windows reparieren, Optionale Features und Datei-Zuordnungen verwalten
- Windows-Features offline in einer virtuellen Maschine installieren
- Angepasstes Image von Windows 10 erstellen mit PowerShell und Hyper-V
Weitere Links
2 Kommentare
Da ich viele meiner Informationen bezüglich VMware aus eurem Blog beziehe, wollte ich mal fragen, ob ihr auch eine Anleitung für VMware habt.
Grundsätzlich ist es ja zumindest beim Player / Workstation möglich, die vhdx als Festplatte anzugeben. Meistens endet das aber dann in einer Bootschleife. Sieht es hier mit dem Nano Server anders aus?
Für VMware ist die VHD(X)-Variante natürlich nicht optimal, auch wenn man die VMs mit Hilfe von VMware Converter nach vSphere migrieren könnte. Für Bare Metal und VMware bietet sich eine Alternativ auf Basis der WDS an. Bringe dazu einen Beitrag in nächster Zeit.