Verschachteln von Hyper-V mit VMware Workstation 8 und ESXi 5

Da Veeam sich weiterentwickelt und beginnt, sich auf zwei Virtualisierungs-Plattformen zu konzentrieren, dachte ich mir, dass es endlich Zeit wird, herauszufinden, wie ich Microsoft Hyper-V in meine Laborumgebung integrieren kann. Ich wollte wissen, ob es in einer Art virtuellen VMware-Maschine virtualisiert werden kann. Veeam hat seine Lösungen sehr erfolgreich mit Hilfe von tragbaren Laboren präsentiert, die zum Beispiel auf Laptops verschachtelt unter VMware Workstation laufen. Es kam oft vor, dass ein verschachtelter ESX-Server, vCenter, DC und Veeam-Apps auf einem einzigen Laptop ausgeführt wurden, und ich wollte wissen, ob auch Hyper-V mit dieser Mischung kompatibel ist.

image

Dieser Post dient als Anleitung und beschreibt ein Schritt-für-Schritt-Verfahren, um virtuelle Hyper-V-Maschinen entweder in VMware Workstation 8 oder auf ESXi 5 zu betreiben.

Lange Zeit wurde mir gesagt, das sei unmöglich, bis ich vor ein paar Monaten das Gerücht hörte, dass es mit ESXi 5 eventuell funktionieren würde. Ich hatte auch gehört, dass ESXi 5, wenn es auf Intel Nehalem oder Intel Core i7 ausgeführt wird, verschachtelte Hypervisoren mit laufenden, verschachtelten virtuellen 64bit-Maschinen zulassen würde. Also sorgte ich zunächst dafür, dass mein nächster neuer Laptop über diese Intel-Architektur oder einen gleichwertigen AMD-Prozessor verfügen würde. Es gelang mir außerdem, ein Labor mit der gleichen Architektur zu erstellen, die ich unterwegs für Veranstaltungen nutzen will.

Via Twitter schickte mir jemand einen Link zu einigen Blogs, die mir geholfen haben, meine Suche zu starten:

http://www.vcritical.com/2011/07/vmware-vsphere-can-virtualize-itself/#comment-12442

http://www.virtuallyghetto.com/2011/07/how-to-enable-support-for-nested-64bit.html

Als ich endlich soweit war, die Sache auszuprobieren, war ESXi schon in der GA-Version erhältlich. Die oben genannten Blogs enthielten einige gute Hinweise, aber wenn ich diesen Anweisungen folgte, erschien bloß ein leerer schwarzer Bildschirm, wie es auch ein paar andere Leute berichtet hatten. Egal, welche zusätzlichen Informationen ich eingab, es funktionierte einfach nicht. Unbeirrt von diesem Misserfolg beschloss ich, etwas anderes zu versuchen. Ich installierte VMware Workstation 8 statt ESXi 5 und schaffte es, eine verschachtelte virtuelle Hyper-V-Maschine zum Laufen zu bringen. Jetzt wusste ich, dass meine Hardware mit der Verschachtelung von Hyper-V kompatibel sein würde. Laut der oben erwähnten Blogbeiträge liegt der Schlüssel zum Erfolg in einer Funktion namens Intel EPT in der CPU bzw. im BIOS Ihres Rechners. Wenn ich das richtig verstehe, müssten Sie über Intel EPT verfügen, wenn Sie mit Nehalem/Core i7 arbeiten; die Blogposts schlagen vor, es über das BIOS zu aktivieren. Allerdings habe ich diese Option in keinem meiner System-BIOS gefunden.

Während ich ausprobierte, was funktionieren würde, beschloss ich, Windows 2008 R2 Standard zu verwenden und Hyper-V als Funktion zu aktivieren, anstatt das eigenständige Hyper-V-Produkt zu installieren. Ich habe das nur gemacht, um mir das Leben zu erleichtern, aber die Stand-Alone-Lösung von Hyper-V ist ebenfalls eine gute Option.

Verschachteln einer virtuellen Hyper-V-Maschine in VMware Workstation 8

Im Folgenden beschreibe ich also die notwendigen Schritte, um eine virtuelle Microsoft Hyper-V-Maschine zu erstellen, die in VMware Workstation 8 läuft. Später werde ich Ihnen außerdem zeigen, wie es in ESXi 5 funktioniert:

1. Erstellen Sie eine neue virtuelle Maschine (VM) mit Version 8 Hardware.

clip_image002

2. Statten Sie diese mit 4 GB RAM und 2 x vCPUs mit ca. 80-100 GB Speicherplatz aus, je nachdem, wie viele VMs Sie unter Hyper-V verschachteln möchten.

3. Die Anleitungen vermitteln Ihnen den Eindruck, dass Sie eine VMware ESX-Option als Gastbetriebssystem auswählen sollten … STOP! TUN SIE DAS NICHT! Wählen Sie Windows 2008 R2 x64.

clip_image004

4. Wenn Sie fertig sind, fügen Sie der VM, die als virtuelle Hyper-V-Netzwerk verwendet wird, auf jeden Fall eine weitere Netzwerkkarte (NIC) hinzu.

5. Stellen Sie in den Einstellungen der VM > CPU sicher, dass Sie die Möglichkeit haben, das Intel VT-x/EPT-Feature durchzuschleifen.

clip_image006

6. Vergewissern Sie sich, dass Sie die VM so konfiguriert haben, dass sie vom Windows 2008 R2 x64 Media-ISO bootet.

7. Vor dem Booten sollten Sie die config-Datei .vmx bearbeiten und den folgenden Parameter einfügen: hypervisor.cpuid.v0 = “FALSE”

clip_image008

8. Booten und installieren Sie nun Windows 2008 R2 x64.

9. Sobald Sie fertig sind, öffnen Sie den Server Manager und klicken auf “Add Role”.

clip_image010

10. Wählen und installieren Sie die Hyper-V-Option. Spätestens an dieser Stelle wird sich zeigen, ob Ihr System richtig funktioniert und die Intel EPT-Funktion durchschleift, denn wenn dies nicht der Fall ist, werden Sie nicht mehr weiterkommen.

clip_image012

11. Sie müssen außerdem den Netzwerkadapter auswählen, der für das virtuelle Netzwerk benutzt wird.

clip_image014

12. Installieren Sie jetzt Hyper-V, was einen Neustart erfordern wird.

13. Nachdem dies abgeschlossen ist, öffnen Sie den Server Manager, gehen Sie auf Hyper-V und stellen Sie eine Verbindung zum lokalen Server her.

clip_image016

14. Jetzt erstellen und installieren Sie eine virtuelle Maschine.

clip_image018

Ist das erledigt, sollte es möglich sein, diese Maschine normal zu benutzen, wenn auch langsam.

Verschachteln einer virtuellen Hyper-V-Maschine auf ESXi 5

Auf ESXi-5 ist das gleiche Verfahren ein wenig komplizierter, obwohl einige der Schritte dieselben sind.

1. Bevor Sie beginnen, müssen Sie einen Eintrag in der /etc/vmware/config-Datei vornehmen, die Sie im Tech-Support-Modus auf Ihrem ESXi 5 finden. Ich habe SSH über das Sicherheitsprofil im vSphere-Client aktiviert. Dann nutzte ich PuTTY SSH, um auf das ESXi-System zuzugreifen.

2. Von dort habe ich den folgenden Befehl ausgeführt, der benötigt wird, um verschachtelte Hypervisoren zuzulassen:

# echo 'vhv.allow = "TRUE" ' >> /etc/vmware/config

Beachten Sie die Verwendung von einfachen und doppelten Anführungszeichen in der Befehlszeile

3. Erstellen Sie nun eine virtuelle Maschine mit Hardware Version 8, 4 GB (oder so viel, wie Sie entbehren können), 2 x vCPUs, 2 oder mehr vNICs und einer virtuellen Festplatte mit 100GB.

4. Vor dem Hochfahren der VM und der Installation von Hyper-V müssen Sie zwei Zeilen in die config-Datei .vmx der virtuellen Maschine einfügen.

Sie können dies über den vSphere-Client in den Einstellungen der virtuellen Maschine > Konfigurationsparameter versuchen. Allerdings hatte ich mehr Glück über die Befehlszeile.

clip_image020

clip_image022

Um die Zeilen über die Befehlszeile einzufügen, gehen Sie zurück zu SSH > wechseln Sie in das Verzeichnis, in dem Ihre virtuelle Hyper-V-Maschine installiert ist.

# echo 'vhv.allow = "TRUE" ' >> /etc/vmware/config

In meinem Beispiel heißt die Config-Datei Hyper-V.vmx. Geben Sie die folgenden Befehle ein:

# echo 'monitor.virtual_exec = "hardware" ' >> Hyper-V.vmx
# echo 'hypervisor.cpuid.v0 = "FALSE" ' >> Hyper-V.vmx

5. Nun zurück in den Options > CPU/MMU Virtualization stellen Sie sicher, dass Sie die Möglichkeit haben, das Intel-EPT-Feature durchzuschleifen.

clip_image024

6. Klicken Sie nun im Options area > CPUID Mask auf Advanced.

clip_image026

7. Fügen Sie der CPU-Maske für Level ECX Folgendes hinzu: —- —- —- —- —- —- –H- —-

clip_image028

8. Installieren Sie nun Hyper-V oder Windows 2008 R2 und aktivieren Sie die Hyper-V-Funktion.

9. Fertig!

Häufige Fehler/Tipps

Hier sind ein paar Tipps von Ricky, um Stolpersteine zu vermeiden, die möglicherweise auftreten können:

  • Im Systemteil meines Weges durch die Installation von Microsoft Hyper-V erforderte das Betriebssystem einen Neustart . Wenn Sie dies tun, nachdem Hyper-V installiert wurde, stürzt das Betriebssystem mit Blue Screen ab … KEINE PANIK, denn das passiert nicht, wenn Hyper-V tatsächlich verwendet wird.
  • Bei meinen beiden Servern und bei meinem Laptop hatte ich keine Möglichkeit festzustellen, ob meine Systeme über Intel EPT verfügten oder nicht. Ich musste einfach ausprobieren, ob VMware Intel EPT ohne Fehlermeldung durchschleifen konnte und ob Hyper-V es erkannte. Ein sicheres Zeichen war für mich auch, als ich VMware Workstation getestet hatte und es auf Anhieb funktionierte. Ich habe unglaublich viel zu diesem Thema gelesen, aber mein Bauchgefühl sagt mir, man braucht Nehalem oder Core i7 und ein Motherboard, das Intel VT unterstützt. Das ist meiner Meinung nach eine sichere Option. Ich habe gelesen, man bräuchte Intel VT -x2, was ich nicht habe (glaube ich zumindest nicht), das war also irreführend … Sobald ich die Informationen zu diesem Thema besser einordnen kann, werde ich diesen Beitrag aktualisieren.
  • Denken Sie daran: Das Verschachteln eines Hypervisors bedeutet, er wird sehr, sehr langsam laufen… Aber die Installation des verschachtelten Hypervisors in einem Datenspeicher, der sich auf SSD-Festplatten befindet, ist hier enorm hilfreich.
  • Die zwei oben verlinkten Blogs präsentieren zwei Methoden für das Erstellen der VM mit der Hardware von Version 7/4 oder Version 8. Ich versuchte es zunächst mit Version-8-Hardware und hatte wenig Freude. Alles, was ich erreichte, war ein leerer schwarzer Bildschirm. Ich probierte es mit einer Kombination aus den Feineinstellungen in beiden Methoden und das hat bei mir funktioniert.
  • Die Portgruppe, auf der sich die verschachtelte Hyper-V-Maschine befindet, sollte in den Promiscuous-Modus gesetzt werden: Bestätigen
  • In einem der Blogs wurde vorgeschlagen, die Einträge in den Config-Dateien manuell vorzunehmen (anstatt die GUI zu nutzen), weil das stabiler wäre. Diese Erfahrung habe ich auch gemacht. Ich änderte also die Konfigurationsdateien in einer Shell-Sitzung mit PuTTY.

Download free Veeam Backup & Replication for Hyper-V

Stay up to date on the latest tips and news
Durch das Abonnieren unserer Blog-Updates erklären Sie sich mit der Verwaltung Ihrer Daten gemäß der Datenschutzrichtlinie von Veeam einverstanden.
You're all set!
Watch your inbox for our weekly blog updates.
OK