Installation Nano-Server als Nested Hyper-V

Mit dem neusten Insider Preview von Windows 10 (Build 10565) wurde eine neue Funktion in Hyper-V aufgenommen – „Nested Virtualization“. Dies ermöglicht Hyper-V in Hyper-V zu installieren. Warum man dies tun sollte, werden sich sicherlich einige Fragen. Hierzu gibt es einige Szenarien, wie z.B. Hosting oder für mich einfach als Labor-Umgebung. Die „gekapselte Virtualisierung“ lässt für mich letztendlich auch die Möglichkeit zu, die Docker-Integration näher zu betrachten.

Allgemeine Informationen zum Nano-Server

Was steckt hinter einem Nano-Server? Warum entwickelt Microsoft ein solches Produkt? Was hat es den für Vorteile einen solchen Server einzusetzen?

Solche Fragen sind es, die einem schnell durch den Kopf schießen, wenn man Nano-Server hört.

Die Idee dahinter ist ein schmaler Server, der weniger Hardware-Ressourcen nutzt, weniger Wartung benötigt, und nach einem Neustart die Dienste schnell wieder zur Verfügung stehen. In einem Beitrag vom Windows Server Blog wurde der Nano-Server mit einer üblichen Installation verglichen mit folgenden Ergebnissen:

  • 93 % weniger Festplattengröße (VHD)
  • 92 % weniger kritische Updates
  • 80 % weniger Neustarts

Damit dies gelingt, wurden viele Teile des Betriebssystems entfernt. So gibt es keine GUI, kein 32-Bit Support und MSI mehr. Eine lokale Anmeldung oder einen Remote Desktop existiert auch nicht. Der Nano-Server wird remote über WMI und Powershell administriert. Derzeit kann auf einem Nano-Server die Rollen bzw. Funktionen

  • Hyper-V Servers,
  • Failover-Clusters,
  • Files- und Storage-Server,
  • Windows Defender,
  • Basis Treiber für Netzwerkkarten und Storage-Controller

installiert werden.

Auch wenn ich in diesem Beitrag eine virtuelle Maschine erstelle, kann der Nano-Server auf physischer Hardware per WDS oder System Center Configuration Manager 2016 installiert werden.

Voraussetzungen

Damit die Laborumgebung aufgebaut werden kann, wird folgendes vorausgesetzt.

  • mind. Windows 10 Insider Build 10565
    • Hyper-V Rolle muss installiert sein
  • Windows Server 2016 Technical Preview 3

Es bleibt zu erwähnen, dass es sich bei der gekapselten Virtualisierung um eine Beta-Version handelt. Um diese Funktion testen zu können, müssen noch einige Einschränkungen in Kauf genommen werden:

  • Dynamic Memory wird (noch) nicht unterstützt
  • Sichern und Widerherstellen funktioniert noch nicht
  • Live-Migration ist noch nicht möglich
  • Hyper-V Replica ist noch nicht möglich
  • MAC-Spoofing muss aktiviert sein, sofern Netzwerkfunktionalitäten benötigt werden
  • Virtual Based Security darf nicht aktiv sein
  • Derzeit wird nur Intels Virtualisierungstechnik VT-x unterstützt, AMD-V wird folgen.

Vorbereitung

Die Installation erfolgt nicht wie üblich über ein ISO-Image. Es wird über ein WIM-Image zur Verfügung gestellt, das auf dem Windows Server 2016 TP 3 hinterlegt ist. Ich verwende das Windows 10 Insider Build 10565 als Hyper-V-Host und binde ich das Windows Server 2016 Image als Laufwerk E:\ ein.

Darüber hinaus wird eine administrative Powershell-Sitzung benötigt. Dabei spielt es keine Rolle ob es sich um die CLI oder die ISE handelt.

Installation des Nano-Servers mit der Hyper-V-Rolle

In der Grundkonfiguration werden keine Serverrollen installiert. Dies bedeutet, dass man diese ggf. bereits mit der Installation hinzufügt oder später einzeln kopiert und installiert.

In dem nachfolgenden Beispiel wird ein virtueller Hyper-V-Server installiert, der nach der Installation in eine Domäne aufgenommen wird. Eine direkte Aufnahme in die AD mit der Installation ist ebenfalls möglich. Wer mehr zur Installation wissen möchte lege ich den Technet-Artikel: Getting Started with Nano Server nahe.

Nano-Server-Installation in einer virtuellen Umgebung

Die Rahmenparameter:

  • Name der VM: srv-nano01
  • Domäne: lab.dom
  • Admin-Kennwort: AendereMich!
  • IP-Adresse: 10.0.0.101/24
  • Temp-Verzeichnis: D:\tmp
  • Installations-Verzeichnis: D:\VMs\srv-nano01.lab.dom
  • eingebundenes Server-ISO: E:\
  • Hyper-V-Switch-Name:  vSw_internal (mit der Installation allerdings vSw_external, Erklärung folgt)

Die Installation (srv-nano01)

Es gibt neben den hier vorgestellten Variante ein weiteres Script aus der Technet Gallery. Ich werde es bei Gelegenheit ausprobieren Laut Dokumentation sind einige Vereinfachungen, wie z.B. Integration der IP-Adresse umgesetzt worden. Nun aber zum Ursprung.

  1. Kopie der Scripte vom eingebundenen Server-ISO-Datei in ein Verzeichnis
  2. Einrichtung der Umgebung zur Installation
  3. Erstellung der VHD für die VM
  4. Erstellung der VM

Die Installation ist soweit durchgelaufen und der Nano-Server kann nun gestartet werden. In der Console meldet man sich mit Administrator und seinem Kennwort an.

Anmeldebildschirm Nano-Server
Anmeldebildschirm Nano-Server

Nach der Anmeldung erhält man die Netzwerkübersicht. Mit der Tab-Taste, erhält man die Möglichkeit einen Adapter auszuwählen um alle Informationen zur Einstellung angezeigt zu bekommen.

Netzwerk-Übersicht Nano-Server
Netzwerk-Übersicht Nano-Server
Adapter-Info Nano-Server
Adapter-Info Nano-Server

Es läuft nun ein Hyper-V-Server unter Hyper-V. Ich möchte nicht unterschlagen, dass der Nano-Server für mein Lab vorgesehen ist und ich diesen in mein aktuelles Produktiv-Netz betreibe. Dies hat den Hintergrund, dass ich diesen mit der Installation nicht vollständig vorkonfigurieren konnte. Dies hole ich nun nach und logge mich per Powershell auf den Nano-Server ein.

Hinweis:
Es gibt selbstverständlich die Möglichkeit mit dism und einem unattended-File zu arbeiten. Dies erspare ich mir aber in der aktuellen Beta-Phase und wähle den oben beschriebenen Weg. Auf dem Beitrag von Getting Started with Nano Server gibt es auch einen Absatz (Configuring command to run on first boot -> To inject a static IP address) der sich damit beschäftigt.

Die Konfiguration des Nano-Servers

  1. Ich möchte den Server über Powershell verwalten und muss diesen erstmals als vertrauenswürdig bekannt machen. Auf meinem Windows 10-Host geschieht dies über
  2. Sollte bei diesem Befehl ein Fehler auftreten, ist vermutlich der Dienst (WinRM) nicht gestartet. Ein

    schafft Abhilfe.
  3. Die Remoteverbindung über Powershell kann nun aufgebaut werden.

    Remote Zugang über PS
    Remote Zugang über PS
  4. Umschreiben der IP-Adresse. !Vorsicht: sobald der Befehl abgesetzt wird, wird die IP-Adresse sofort umgeschrieben, die Session bricht ab.
  5. Durch den Wechsel in die Hyper-V-Konsole kann nun der Switch der Maschine gewechselt werden oder man bemüht die Powershell hierfür
  6. Damit ich die Maschine in meinem Lab nutzen kann, muss ich diese nun auch wieder als vertrauenswürdig einstufen.
  7. Die Verbindung sollte nun auch funktionieren

Beitritt in die Domäne

In Folgenden wird der Server in die Domäne aufgenommen.

  1. [vm-nano01] Öffnen des Firewall zum Zugriff auf das Dateisystem des Nano-Servers.
  2. [dc01] Erstellung einer Blob-Datei (auf dem Domänencontroller)
  3. [dc01] Kopieren der Datei
  4. [vm-nano01] Domänen-Join ausführen
  5. [vm-nano01] Neustart

Quellen/Verweise:

Kommentar verfassen