Hyper-V verschachteln

VMware bot schon seit einiger Zeit (ESXi 4.1, Workstation 9) die Möglichkeit, innerhalb einer virtuellen Maschine eine weitere Virtualisierung durchzuführen. Microsoft Client Hyper-V erlaubt verschachtelte Virtualisierung (Nested Virtualization) seit Windows 10 Preview Build 10565. Ich habe es mit dem Preview Build 10586 getestet. Das ist auch die Nummer des November-Updates („Threshold 2“) der Produktivversion. Die Versionsnummer kann man mit dem Befehl „winver“ prüfen.

Verschachtelter Hyper-V
Hardware->VM->VM unter VM

„Hyper-V verschachteln“ weiterlesen

Backup Hyper-V Virtuelle Maschinen

Im Prinzip reicht es, von einer virtuellen Maschine die vhdx-Dateien zu sichern, aus der ihre virtuellen Festplatten bestehen. Falls die originale VHD beschädigt ist, restauriert man einfach die gesicherte Datei. Man kann sogar eine neue VM anlegen und statt einer leeren Festplatte die gesicherte Datei verwenden, aber dann sieht es für das Gastbetriebssystem so aus, als ob es sich um einen neuen Computer handelt, und Windows verlangt eine Aktivierung. Wichtig ist daher, zusätzlich die Dateien unter „%ProgramData%\Microsoft\Windows\Hyper-V\Virtual Machines“ zu sichern. Wo genau die Dateien liegen, hängt von den Einstellungen ab:

Hyper-V Einstellungen
Standardordner für virtuelle Computer

Windows PowerShell
Copyright (C) 2015 Microsoft Corporation. Alle Rechte vorbehalten.
PS C:\WINDOWS\system32> Get-VMHost | Format-List -Property VirtualHardDiskPath,VirtualMachinePath

VirtualHardDiskPath : C:\Users\Public\Documents\Hyper-V\Virtual Hard Disks
VirtualMachinePath  : C:\ProgramData\Microsoft\Windows\Hyper-V

Statt die Dateien von Hand zu kopieren kann man auch im Hyper-V Manager mit der rechten Maustastaste auf die VM klick und „Export“ wählen.

VHD Komprimieren

Defragmentierung
Laufwerke optimieren: Speicherplatzeffizienz

Dynamische virtuelle Festplatten, d. h. VHD- oder VHDX-Dateien wachsen erst, wenn sie mit Daten beschrieben werden. Beim Löschen solcher Daten schrumpfen sie aber nicht automatisch. Wenn die VHD auf der realen Maschine mehr Platz belegt, als in der virtuellen Maschine genutzt wird, sinkt die „Speicherplatzeffiziez“ unter 100%.

Dies wird besonders deutlich, wenn man nach einem Betriebssystemupdate mit der Systemsteuerung die Datenträgerbereinigung („Speicherplatz durch Löschen nicht erforderlicher Dateien freigeben“, „cleanmgr.exe“) aufruft.
„VHD Komprimieren“ weiterlesen

VMware und Hyper-V Netzwerktypen

Virtuelle Maschinen können bei VMware Workstation und Hyper-V auf unterschiedliche Art mit dem Netzwerk verbunden werden. Folgende Typen sind in etwa vergleichbar:

VMware Netzwerktyp Hyper-V Switchtyp Beschreibung
VMnet0 Bridged External Die VM ist mit ihrer virtuellen Netzwerkkarte direkt an das Netzwerk angeschlossen.
VMnet1 Host-only Internal Die VM ist nur vom Rechner, auf dem sie läuft, aber nicht vom Netzwerk aus sichtbar.
VMnet8 NAT Ähnlich wie Host-only bzw. Internal, aber zwischen dem Netzwerk und der VM findet NAT statt
Private Die VM ist nur mit anderen VMs am gleichen privaten Netz verbunden.

Bei Hyper-V ist „NAT“ kein eigener Netzwerktyp. Stattdessen muss man „Internal“ wählen und NAT von Hand einrichten: „VMware und Hyper-V Netzwerktypen“ weiterlesen

Linux Secure Boot in Hyper-V

Set-VMFirmware openSUSE -SecureBootTemplate MicrosoftUEFICertificateAuthority
Set-VMFirmware openSUSE -SecureBootTemplate MicrosoftUEFICertificateAuthority

Im Artikel „Linux als VM der Generation 2“ hatte ich beschrieben, dass es unter Windows 8.1 Client Hyper-V möglich sei, Linux per EFI zu booten, falls man Secure Boot ausschaltet. Unter Windows Server 10 Preview und Windows 10 Technical Preview gibt es folgenden Weg, auch Secure Boot zu ermöglichen: „Linux Secure Boot in Hyper-V“ weiterlesen

Linux als VM der Generation 2

openSUSE 13.1 x64 ist die einzige Linux Distribution, bei der mir eine Installation unter Hyper-V als virtuelle Maschine der „Generation 2“ gelungen ist. Zuerst bekam ich die Meldung „Boot Failed. EFI SCSI Device. Failed Secure Boot Verification.“ Der Workaround ist, Secure Boot auszuschalten.

UEFI Secure Boot ausschalten
UEFI Secure Boot einer VM der Generation 2 ausschalten

Im Dialog vor dem eigentlichen Setup funktioniert die Tastatur nicht. Daher kann man dort keinen non-root-User anlegen und kein Passwort für root festlegen. Wenn man weiter installiert, wird man nach dem Setup noch mal nach einem Root-Passwort gefragt und dann geht die Tastatur auch wieder. Das dürfte daran liegen, dass in der „Generation 2“ der Tastaturcontroller i8042 nicht emuliert wird.

Nachtrag 22.11.2014: openSUSE 13.2 zeigt das Tastaturproblem nicht mehr und kann problemlos als VM der Generation 2 installiert werden, wenn man Secure Boot ausschaltet.

Hyper-V Generation 2

Eine Neuerung von Hyper-V unter Windows 8.1 sind virtuelle Maschinen der „Generation 2“:

Hyper-V Generation 2
Assistent für neue virtuelle Computer

Die wichtigsten Unterschiede zur Generation 1 sind die Unterstützung von UEFI-Boot und eine andere Emulation von Hardware. Somit werden nur die neuesten Betriebssysteme unterstützt.
Wenn man als Gastbetriebssystem z. B. die Windows 8.1 Preview installiert, funktioniert das, ohne dass man irgendwelche Besonderheiten bemerkt. Windows 7 hingegen lässt sich nicht installieren.