Hyper-V: P2V mit Disk2VHD
Wer öfter mit VMware zu tun hat, kennt dort sicher den vCenter Converter, mit dem man physikalische Maschinen in virtuelle konvertieren kann. Unter Hyper-V sucht man ein solches Tool (wenn man nicht gerade System Center lizenziert hat) erst mal vergebens. Aber da gibt es einen Ausweg: Disk2VHD von Mark Russinovich and Bryce Cogswell.
Mit diesem Tool ist es ein Leichtes, Maschinen im laufenden Betrieb in virtuelle umzuwandeln, doch dabei sollte man einige Dinge beachten, so dass man nach der Virtualisierung keine Überraschungen erlebt.
Wie funktioniert’s?
Als erstes ladet ihr euch Disk2VHD von Sysinternals herunter und führt die entsprechende EXE auf dem zu virtualisierenden Server / Client aus. Dieser muss mindestens Windows XP oder Windows Server 2003 ausführen, ansonsten wird die Konvertierung nicht unterstützt.
Viel einzustellen gibt es im Tool selbst nicht, aber ohne die entsprechende Vor- und Nachbereitung kann so einiges schief gehen, also nicht einfach “Create” drücken und freuen, sondern erst mal weiterlesen 🙂 .
Ein kurzer Ausflug hinter die Kulissen: Disk2VHD erstellt auf dem System, auf dem es aufgerufen wurde, einen Snapshot anhand des Microsoft Volume Snapshot Copy Service (VSS). Damit sind alle Daten des Systems (solange sie VSS unterstützen) in einem konsistenten Zustand und wir haben keine korrupten Daten. Damit kann die so erzeugte virtuelle Festplattendatei (VHD oder VHDX) sogar auf dem Datenträger abgelegt werden, der gerade aufgezeichnet wird! Und: Disk2VHD behält die Partitionsinformationen des Quellsystems bei und erzeugt einen dynamisch erweiterbaren virtuellen Datenträger, der nur so viel Platz auf der Festplatte belegt, wie wirklich Daten auf der Platte sind.
Vor der Konvertierung
Bevor man eine Maschine in eine virtuelle umwandelt, sollte man diese entsprechend vorbereiten, bzw. herausfinden, ob eine Umwandlung überhaupt Sinn macht.
- P2V Migration unterstützt?
Nicht alle Maschinen sollten virtualisiert werden, das gilt vor allem für Domain Controller. In diesem Fall ist eine Neuinstallation mit nachfolgender Datenmigration der sinnvollere (und unterstützte) Weg. - Produktiv-Dienste stoppen
Bevor der Snapshot des Quellsystems erstellt wird, sollte sichergestellt werden, dass sich in der Zwischenzeit (zwischen Konvertierung und Inbetriebnahme als VM) keine Daten ändern. Deshalb müssen alle Dienste beendet werden, durch die Änderungen am System vorgenommen werden. - Hardwarenahe Dienste deaktivieren
Auf einigen Systemen sind Dienste für angeschlossene Peripherie, wie z.B. USV Systeme, installiert. Deren Startoption sollte auf “Deaktiviert” gestellt werden, so dass diese später in der VM nicht gestartet werden. - Platz schaffen
Damit die VHDX Datei nicht unnötig groß wird, sollte man alle TEMP-Ordner aufräumen, unnötige Profile entfernen und den Papierkorb leeren. - Netzwerkparameter sichern
Bei der Konvertierung gehen die Einstellungen der Netzwerkkarten verloren. Jetzt ist ein guter Zeitpunkt, diese für später zu notieren.
Konvertieren und VM erstellen
Die so vorbereitete Maschine kann nun in das VHDX Format konvertiert werden. Danach wird diese auf den Hyper-V Server kopiert und in eine neue virtuelle Maschine eingebunden. Denkt daran, genügend CPU, RAM und Netzwerkadapter zuzuweisen, um den Anforderungen der Maschine gerecht zu werden.
Wichtig: Das Boot-Volume muss an den IDE Controller der Hyper-V VM angeschlossen werden, nicht an SCSI. Alle weiteren Volumes können auch an den virtuellen SCSI Controller angeschlossen werden.
Nach der Konvertierung
Jetzt habe ich meine virtuelle Festplatte in Hyper-V eingebunden, dann bin ich fertig, oder? Nein. Nacharbeit muss sein, um eine stabile, saubere VM zu erhalten …
- Integrationsdienste aktualisieren
Wie beim VMware die VMware Tools hat auch Hyper-V ein Set an Treibern und Diensten, die den Betrieb der VM optimieren. Demnach sollten diese nach dem ersten Start der VM auch aktualisiert werden. - Software deinstallieren
Alle Software, die in der virtuellen Umgebung nicht mehr benötigt wird, kann deinstalliert werden. Dazu gehören Treiberpakete, Management Software, RAID Controller Software, usw. - IP-Adresse wiederherstellen
Da in der virtuellen Maschine eine andere Netzwerkkarte “verbaut” ist, als in der ursprünglichen Hardware, werden die IP Einstellungen nicht mit übernommen und müssen manuell nachgetragen werden. - Partitionen anpassen
Bei der Konvertierung wird die virtuelle Festplatte mit den ursprünglichen Partitionsgrößen erstellt. Das ist meistens (aufgrund der großen Festplatten in Servern) zu viel, demnach können nun die Partitionsgrößen angepasst werden. Das geht entweder mit der Datenträgerverwaltung oder den bekannten Drittanbietertools (GParted, etc.). Sollte das Ursprungssystem dynamische Datenträger (evtl. mit Software Raid) benutzt haben, kann man diese nun auch entfernen und in Basisdatenträger zurück konvertieren (hier steht, wie das funktioniert) - VHDX optimieren
Disk2VHD erstellt eine dynamisch erweiterbare virtuelle Festplatte, was von Microsoft nur für Testsysteme empfohlen wird. Deshalb sollte diese in eine VHDX mit fester Größe umgewandelt werden. Da wir aktuell noch einiges an freiem Platz durch das Verkleinern der Partition (aus 4.) haben können, sollte die VHDX Datei vor der Umwandlung verkleinert werden (diesen Vorgang muss ich auch mal noch in einem Beitrag beschreiben).
Damit sollte die nun virtualisierte Maschine bereit für den Einsatz sein. Es kann sein, dass sich die VM nicht mehr an der Domäne anmelden kann, dann muss entweder der Secure Channel zurückgesetzt werden (ist im TechNet sehr gut beschrieben) oder der Computer aus der Domäne entfernt und neu hinzugefügt werden.