Wie man virtuelle Maschinen in Hyper-V importiert, exportiert und klont

Das Klonen von VMs in Hyper-V kann ziemlich knifflig sein, vor allem, weil Hyper-V im Gegensatz zu anderen Hypervisoren keine native Klonfunktion bietet. Man ist also auf Export/Import oder Tricks mit PowerShell angewiesen. Wenn Sie eine vollständige Kopie einer bestehenden VM zu Test- oder Sicherungszwecken erstellen möchten, kann Ihnen das richtige Vorgehen viel Ärger ersparen. Außerdem sollten Sie beim Klonen einer Windows-VM unbedingt Sysprep ausführen, um doppelte SIDs und mögliche Domänenkonflikte zu vermeiden. Das ist nicht gerade angenehm.

So klonen Sie eine Hyper-V-VM mithilfe von Export und Import

Exportieren Sie zuerst die VM – das ist oft der einfachste Weg.

  • Öffnen Sie den Hyper-V-Manager.
  • Klicken Sie mit der rechten Maustaste auf Ihre VM und wählen Sie Exportieren.
  • Wählen Sie einen Ordner aus, in dem die exportierten Dateien gespeichert werden sollen. Wählen Sie einfach einen unkomplizierten Ort wie z C:\HyperVExports\VMName. B..
  • Bei neueren Windows Server-Versionen kann sogar eine laufende VM exportiert werden, ohne sie herunterzufahren. Warum das so funktioniert, ist mir nicht ganz klar, etwas ungewöhnlich, aber in manchen Konfigurationen muss man sie möglicherweise trotzdem vorher herunterfahren, um Fehler zu vermeiden.

Nach dem Export liegt die VM als Paket vor, das importiert oder dupliziert werden kann. Sie können bestimmte Prüfpunkte exportieren, indem Sie mit der rechten Maustaste auf den Snapshot klicken und „Exportieren“ auswählen. Dies ist praktisch, wenn Sie einen bestimmten Wiederherstellungspunkt benötigen.

Importieren Sie die VM und erstellen Sie einen Klon.

  • Im Hyper-V-Manager die Option „Virtuelle Maschine importieren“ auswählen.
  • Wählen Sie den Ordner aus, in dem Ihre exportierte VM gespeichert ist.
  • Der Assistent zeigt Ihnen die Registrierungsoptionen an:
    • Registrieren Sie die virtuelle Maschine direkt – verknüpfen Sie sie einfach, ohne etwas zu ändern.
    • Stellen Sie die virtuelle Maschine wieder her – verwenden Sie dieselbe ID, kopieren Sie aber die Dateien an einen neuen Speicherort.
    • Kopieren Sie die virtuelle Maschine – dadurch wird eine Kopie mit einer neuen VM-ID erstellt, was in der Regel für einen Klon gewünscht ist.

Bei manchen Konfigurationen erhalten Sie eine Fehlermeldung zu doppelten IDs, wenn Sie versuchen, eine VM mit einer identischen ID wie eine bereits vorhandene zu importieren. Wählen Sie einfach die Option „Kopieren“ und geben Sie ein neues Ziel an. Der Assistent generiert eine neue ID, und Ihre geklonte VM wird in Hyper-V angezeigt.

Ein weiterer wichtiger Punkt ist der Speicherort der VM-Festplatten (die VHDX-Dateien ).Sie können beim Import einen neuen Ordner angeben oder den Standardordner beibehalten, der sich normalerweise in befindet C:\ProgramData\Microsoft\Windows\Hyper-V\Virtual Hard Disks\.

So klonen Sie Hyper-V-VMs mit PowerShell

Exportieren, dann importieren – so funktioniert’s mit PowerShell.

  • Um eine VM zu exportieren, führen Sie Folgendes aus:
  • Export-VM -Name VMName -Path 'C:\VHD\export'

  • Wenn Sie eine noch laufende VM exportieren möchten, empfiehlt es sich, deren Live-Status zu erfassen. Verwenden Sie dazu den Parameter `-CaptureLiveState`CaptureSavedState mit Optionen wie `–include` oder ` CaptureCrashConsistentState–include`.Beispiel:
  • Export-VM -Name VMName -Path 'C:\VHD\export' -CaptureLiveState CaptureCrashConsistentState

  • Um einen bestimmten Prüfpunkt zu exportieren, muss zunächst dessen Name ermittelt werden:
  • Get-VMSnapshot -VMName VMName

  • Exportieren Sie anschließend den Checkpoint mit:
  • Export-VMSnapshot -Name "CheckpointName" -VMName VMName -Path 'C:\VHD\export'

Um die VM als Klon mit einer neuen ID zu importieren, führen Sie Folgendes aus:

Import-VM -Path "C:\VHD\export\VMFolder\VMName.vmcx" -VhdDestinationPath "C:\VHD\newVMFolder" -VirtualMachinePath "C:\VHD\newVMFolder"

Ohne zusätzliche Optionen behält die VM ihre ID bei. Um eine neue zu generieren, fügen Sie -GenerateNewIdFolgendes hinzu:

Import-VM -Path "C:\VHD\export\VMFolder\VMName.vmcx" -VhdDestinationPath "C:\VHD\newVMFolder" -VirtualMachinePath "C:\VHD\newVMFolder" -GenerateNewId

Vergessen Sie nicht, nach dem Klonen die VM und ihre Festplatten umzubenennen und idealerweise die Netzwerkeinstellungen, einschließlich der MAC-Adresse, zu ändern. Verwenden Sie dazu Befehle wie `npm run dev` Rename-VMund ` npm run Set-VMNetworkAdapterdev`.

Umbenennen und neue Netzwerkinformationen einrichten

  • Zuerst die ID der neuen VM ermitteln:
  • Get-VM | Select Name, VMId

  • Benennen Sie die VM in einen eindeutigen Namen um:
  • Rename-VM -VMId "your-new-VM-ID" -NewName "MyClonedVM"

  • Ändern Sie die MAC-Adressen, um Konflikte zu vermeiden, insbesondere bei Verwendung von DHCP:
  • Set-VMNetworkAdapter -VMName MyClonedVM -DynamicMacAddress $true

  • Es empfiehlt sich, die Netzwerkeinstellungen und IP-Adressen anzupassen, um doppelte IP-Adressen in Ihrem Netzwerk zu vermeiden. Sie können sich sogar direkt über PowerShell verbinden, zum Beispiel so:
  • Enter-PSSession -ComputerName MyClonedVM -Credential (Get-Credential)

VMs mithilfe des Windows Admin Centers klonen

Wenn Sie die Kommandozeile umgehen möchten, können Sie in neueren Versionen des Windows Admin Centers (WAC v2009+) virtuelle Maschinen direkt über die Benutzeroberfläche klonen. Gehen Sie einfach zu „Virtuelle Maschinen“, wählen Sie Ihre VM aus und klicken Sie auf „Verwalten“ → „Klonen“. Geben Sie einen neuen Namen ein, wählen Sie einen Ordner und warten Sie. Die neue VM erhält eine neue ID – der Vorgang läuft in der Regel reibungslos ab.

Diese Methode ist wirklich einfach, besonders wenn Sie nicht so viel Erfahrung mit PowerShell haben. Vergessen Sie aber nicht den wichtigen Punkt: Überprüfen Sie bei Nicht-Windows-VMs immer die Klonoptionen, um sicherzustellen, dass Netzwerkeinstellungen und SIDs korrekt zurückgesetzt werden – denn Windows macht es einem manchmal unnötig schwer.

Zusammenfassung

Das Klonen in Hyper-V ist etwas umständlich, aber sobald man sich mit Export/Import oder PowerShell-Skripten vertraut gemacht hat, ist es machbar. Die Ausführung von Sysprep für Windows-VMs ist ein entscheidender Schritt, wenn Sie Domänen beitreten oder doppelte SIDs vermeiden möchten. Behalten Sie anschließend die VM-IDs und Netzwerkeinstellungen im Auge, um Überraschungen zu vermeiden.

Zusammenfassung

  • VM über den Hyper-V-Manager oder PowerShell exportieren
  • Verwenden Sie den Import mit der Kopieroption zum Klonen.
  • Benennen Sie geklonte VMs und Festplatten um, um Ordnung zu schaffen.
  • Führen Sie Sysprep auf Windows-Klonen aus, um die SID zurückzusetzen.
  • Passen Sie die Netzwerkkonfigurationen an, um Konflikte zu vermeiden.

Schlussgedanken

Dieser ganze Prozess mag etwas umständlich erscheinen, aber er funktioniert. Bei einer Konfiguration reichte Export/Import aus; bei einer anderen bot PowerShell mehr Kontrolle. Manchmal ist es echt nervig, aber man kann zumindest vollständige Kopien seiner VMs erstellen. Hoffentlich spart das jemandem ein paar Stunden.