Windows 2016 Nano Server Part1

Hallo zusammen,

In den letzten Tagen habe ich mich mit dem Windows 2016 TP4 und dem neuen Nano Server beschäftigt.

Das wichtigste ist in den folgenden Folien vom MVA enthalten. Nano Server ist noch kompakter als ein "Core" Server.

Es werden weniger Treiber geladen, es laufen weniger Service und es sind weniger Ports offen

Es laufen weniger Prozesse, das erzeugt weniger IOPs beim starten und es wird weniger Momory benötigt.

Das bedeutet wiederum, dass schneller gestartet wird und  weniger Diskspace benötigt wird.

Alles in allem bietet das folgende Vorteile:

  • Weniger Reboots wegen Security Patches / Höhere Verfügbarkeit der Server
  • Die VM dichte auf einem HW Server kann erhöht werden
  • Dafür wird auch weniger Diskspace benötigt
  • Remote Management über Remote Server Admin Tools (RSAT) oder Powershell

VMware Treiber

Da ich meinen Nano Server unter einem VMware ESXi Server betreibe, benötige ich die VMware Treiber. Die muss man erst mal aus den VMware Tools Extrahieren.

Nun sind die VMware Tools auf dem CDRom Drive (D:) eingehängt.

Mit folgendem Befehl, kann man die Tools extrahieren

D:
Setup.exe /a

Die Treiber sind unter folgendem Pfad: C:\Extract\VMware\VMware Tools\VMware\Drivers\

Nun muss die Installation der VMware Tools wieder beendet werden

Erstellen des Nano Images

Jetzt wieder die Windows Server 2016 Installations DVD wieder mounten.

Es muss ein temporäres Verzeichnis angelegt werden. Die VMware Treiber müssen ins \Extras\Drivers Verzechnis kopiert werden. Das kann mit folgenden Powershell Befehlen gemacht werden:

#Create Nanotemp

New-Item -ItemType directory -Path C:\Nanotemp

#Copy VMWare Drivers

New-Item -ItemType directory -Path C:\Nanotemp\Extras

Copy-Item "C:\Extract\Vmware\Vmware Tools\Vmware\Drivers\*" C:\Nanotemp\Extras\

Nun muss das Powershell Modul für die Generierung des Nano Servers geladen in Powershell werden

D:

cd .\NanoServer\

Import-Module .\NanoServerImageGenerator.psm1

Das Nano Server Image kann mit folgendem Befehl erzeugt werden. Dabei gebe ich gleich die IP Konfiguration, das Administrator Passwort und den Servernamen an. Ausserdem wird das Remote Management aktiviert und die VMWare Treiber integriert.

New-NanoServerImage -MediaPath D:\ -BasePath C:\Nanotemp\ -TargetPath C:\Nanoserver\Nano01.vhd -Language EN-US -InterfaceNameOrIndex Ethernet0 -Ipv4Address 172.21.175.99 -Ipv4SubnetMask 255.255.255.0 -Ipv4Gateway 172.21.175.1 -AdministratorPassword (ConvertTo-SecureString "MySecurePassword" -AsPlainText -Force) -EnableRemoteManagementPort -ComputerName NANO01 -OEMDrivers -DriversPath C:\Nanotemp\Extra\Drivers\

Danach ist das Nano Image als VHD Datei verfügbar. Es ist nur ca. 440 MB gross. Hier jedoch durch die VMware und OEMDrivers etwas grösser

Boot von VHD

Um mal zu sehen, wie so ein Nano Server sich verhält, erweitere ich mein Bootmenü mit "bcdedit" um eine "boot from VHD" Konfiguration.

Die aktuellen Settings kann man mit dem folgenden befehl sehen (cmd als Administrator ausführen)

bcdedit

Nun wird die Konfiguration von {current} kopiert und ein Anzeigename im Bootmenü angegeben.

bcdedit /copy {current} /d "Boot from VHD Nano01"

Nun muss man sich die Konfig nochmals anschauen und die {GUID} des neuen Eintrags merken

Dann müssen ein paar Einträge mit dieser GUID angepasst werden

bcdedit /set {GUID} device vhd=[c:]\NanoServer\NanoServer.vhd

bcdedit /set {GUID} osdevice vhd=[c:]\NanoServer\NanoServer.vhd

bcdedit /set {GUID} path \windows\system32\boot\winload.exe

Und so sieht das dann hinterher aus

Beim Start des Server erscheint der Eintrag im Bootmenü

Hier noch ein kleiner Tipp. Ohne den Parameter "-OEMDrivers" beim generieren des Nano Server Images erscheint danach folgende Fehlermeldung.

Und so sieht es aus, wenn der Server gestartet ist.

Nachdem man sich eingeloggt hat (Achtung EN-US Tastaturbelegung) sieht es so aus. Man sieht das Netzwerkinterface "Ethernet0" mit der konfigurierten IP

Ich habe in der Firewall noch eingehende ICMP (Ping) erlaubt

Einfach mit F4 auf enabled stelllen

Zugriff über Powershell

Wie man in den vorhergehenden Screenshots sieht, kann man da kaum mehr was anpassen. Das geht alles über die Remote Server Admin Tools (Server Manager) oder Powershell.

Auf dem lokalen PC muss der WinRM Dienst gestartet werden

net start winrm

Danach muss man die IP oder den Computernamen in die Trusted Hosts eintragen

Set-Item WSMan:\localhost\Client\TrustedHosts "172.21.175.99"

Nun kann man sich über Powershell verbinden

$ip = “172.21.175.99”

$user = “$ip\Administrator”

Enter-PSSession -ComputerName $ip -Credential $user

Grüsse
Andres Bohren