Tags: Hyper-V, Migration, Storage
Microsoft führte in Windows Server 2008 R2 zwar die Live Migration ein, um VMs unterbrechungsfrei auf andere Hosts umzuziehen. Aber erst in Server 2012 kam die Möglichkeit hinzu, die zu einer VM gehörenden Dateien im laufenden Betrieb auf ein anderes Storage-System zu verschieben. Dieses Feature steht auch unter Windows 8.x zur Verfügung.
Bei der Live Migration geht es darum, Workloads ohne Downtime auf andere Hosts zu übertragen, etwa weil der ursprüngliche Hyper-V-Server wegen Wartungsarbeiten offline gehen soll oder um die Last zwischen den Hosts anders zu verteilen. Typischerweise bleiben die zu einer VM gehörenden Dateien bei diesem Vorgang auf einem Shared Storage.
Manuelle Lastverteilung durch Storage Migration
Storage Live Migration überträgt dieses Konzept auf Speichersysteme, indem sie virtuelle Laufwerke und sonstige VM-Dateien auf andere physikalische Datenträger verschiebt. Anlass für eine solche Operation kann neben der Wartung auch sein, dass auf dem ursprünglichen Storage nicht mehr genug Platz vorhanden oder dieses durch I/O-intensive Anwendungen ausgelastet ist.
Einer solchen manuellen Lastenverteilung zwischen Storage-Systemen kommt unter Hyper-V eine besondere Bedeutung zu, weil Microsoft bis dato kein Pendant zu VMware Storage DRS bietet. Dieses automatisiert in den größeren Editionen von vSphere die Migration von VMs zwischen Speichersystemen.
Umzug nur für virtuelle Laufwerke
Grundsätzlich lassen sich VMs zwischen allen Laufwerken oder Volumes verschieben, auf die ein Hyper-V-Host zugreifen kann. Als Ziel in Frage kommen also neben Shared Storage auch lokale Disks. Voraussetzung ist jedoch grundsätzlich, dass eine VM nur virtuelle Laufwerke und keine Passthrough-Disks verwendet.
Die Migration beginnt damit, dass Hyper-V auf dem Ziellaufwerk neue Dateien erstellt und den Inhalt der originalen VHD(X) und der Konfiguration dorthin kopiert. Lese- und Schreibzugriffe erfolgen während dieser Zeit noch auf dem Quellsystem. Nach Abschluss des Kopiervorgangs werden noch die zwischenzeitlich angefallenen Änderungen übertragen, bevor die VM auf das neue Speichersystem umschaltet. Abschließend löscht Hyper-V die Quelldateien auf dem ursprünglichen Storage.
Migration mit dem Hyper-V Manager
Gebräuchlichstes Tool für eine Storage Live Migration ist der Hyper-V Manager, in dem man die gewünschte VM auf einem lokalen oder entfernten Host auswählt. In Frage kommen sowohl Windows Server 2012 (R2) Hyper-V, der kostenlose Hyper-V Server 2012 (R2) sowie Windows 8.x Hyper-V. Letzterer unterstützt zwar keine normale Live Migration, aber eine solche der VM-Images auf andere Speichersysteme.
Den Umzug auf ein anderes Storage löst man aus, indem man aus dem Kontextmenü einer VM den Befehl Verschieben ausführt. Er startet einen Wizard, bei dem man sich im ersten Schritt zwischen einer normalen Live Migration und einer solchen für das Storage entscheiden muss.
Nachdem man sich hier auf Zweitere festgelegt hat, folgt im nächsten Dialog die Auswahl zwischen mehreren Optionen:
- Alle Daten des virtuellen Computers an einen einzelnen Computer verschieben: Dies ist die einfachste Variante, bei der sowohl virtuelle Laufwerke als auch Konfigurationsdateien unterhalb eines gemeinsamen Zielverzeichnisses landen.
- Daten des virtuellen Computers in andere Speicherorte verschieben: Gemeint ist damit, dass man gezielt auswählen kann, ob man nur VHD(X), Snapshots (die neuerdings Prüfpunkte heißen) oder Konfigurationsdateien umzieht. Möglich ist auch eine Kombination aus diesen Elementen. Diese Variante ist dann von Nutzen, wenn man die Bestandteile von VMs in getrennten Verzeichnissen ablegen möchte.
- Nur die virtuellen Festplatten des virtuellen Computers verschieben: Dabei handelt es sich um eine Sonderform der zweiten Option, welche nur die mit einer VM verbundenen VHD(X) zur Migration anbietet.
Nach der Festlegung auf eines der drei Verfahren gibt man zu Abschluss noch den neuen Speicherort an und startet den Vorgang. Dessen Dauer hängt von der verfügbaren Bandbreite und der Größe der VM ab.
Alternativ zum Hyper-V Manager kann man auch PowerShell verwenden, um die Dateien einer VM auf einen anderen Speicherort umzuziehen. Dafür zuständig ist das Cmdlet Move-VMStorage, das vor allem dann von Nutzen ist, wenn man mehrere VMs in einem Durchgang migrieren möchte. Es erlaubt zudem, die Ursprungsdateien beizubehalten.
Täglich Know-how für IT-Pros mit unserem Newsletter
Verwandte Beiträge
Weitere Links