ubuntuusers.de

QEMU/KVM: Export/Import

Status: Gelöst | Ubuntu-Version: Ubuntu 24.04 (Noble Numbat)
Antworten |

cocht

Anmeldungsdatum:
15. November 2010

Beiträge: 33

Hallo, ich versuche gerade eine QEMU/KVM VM (Ubuntu 24.04.) von einem Host auf den anderen zu kopieren und es gelingt mir nicht. Die beiden Hosts haben identische Hardware auf beiden läuft Ubuntu 24.04. LTS. Die Pfade zur VM HD und zur VM xml sind auf beiden Hosts gleich. Die kopierte VM will nicht starten. Ich lande immer im Bios der VM. Offenbar findet virt-manager die EFI Partion nicht. Auf dem Host auf dem die VM läuft wird mir die EFI Partion im Bios der VM zum booten angeboten auf dem Host der die kopierte VM ausführen soll taucht sie nicht im Bios der VM auf. Die xml Dateien der beiden VM sind exakt gleich. Im virt-manager wird der Pfad zur HD richtig angezeigt.

Ich habe vor einiger Zeit eine Ubuntu 20.04. VM zwischen den gleichen Hosts hin und her kopiert. Das hat geklappt. Allerdings habe ich das ohne die xml Datei gemacht. Ich habe die VM HD .qcow2 über den virt-manager importiert und die Details der VM über den virt-manager so eingestellt wie auf dem Ursprungs-Host. Das habe ich mit der 24.04. VM auch versucht, klappt aber nicht. Dann hab ich gedacht das secure-boot dazwischen funkt. Standardmäßig installiert virt-manager Ubuntu im UEFI Modus anscheinend immer mit secure-boot, hab ich aber in allen VM ausgeschaltet. Ändert aber nichts daran das die kopierte 24.04. VM nicht booten will.

micneu

Avatar von micneu

Anmeldungsdatum:
19. Januar 2021

Beiträge: 684

Wohnort: Hamburg

  1. Genau beschreiben, wie du vorgegangen bist, dann können wir drauf aufbauen

  2. Bitte die terminal ein/Ausgabe als cordeblock

  3. Bitte genau angeben was für Hardware und sind BIOS/UEFI identisch konfiguriert?

  4. Bilden die beiden Rechner ein Cluster?

  5. War/Ist die VM vor dem Übertragen runtergefahren?

cocht

(Themenstarter)

Anmeldungsdatum:
15. November 2010

Beiträge: 33

zu 1. Ich kopiere die .qcow2 VD (bei mir in /daten/Qemu_VMs) und die XML der VM (/etc/libvirt/qemu) mit root Rechten auf eine USB Platte und trage diese zum neuen Host. Dort kopiere ich (wieder als Root) die VD und die XML dazu in die vorgenannten Verzeichnisse. Wie gesagt die Pfade sind auf beiden Hosts gleich. Dann starte ich (oder starte neu) den virt-manager (grafisch), mit dem starte ich dann die VM.

zu 2. Dabei nichts mit dem Terminal gemacht, alles auf der grafischen Oberfläche.

zu 3. Auf beiden Hosts: Board: Gigabyte B760M GAMING X AX mit Intel i5-14500 und 32GB Speicher. UEFI ist auf beiden Hosts gleich konfiguriert (soweit ich mich erinnere) in den beiden VM sowieso, ist ja eine Kopie.

Zu 4. Nein.

Zu 5. Ja.

micneu

Avatar von micneu

Anmeldungsdatum:
19. Januar 2021

Beiträge: 684

Wohnort: Hamburg

Keine Ahnung ob das in der GUI so klappt, ich bin eher der Typ Terminal. Kannst du es mal probieren übers Terminal zu machen, es gibt dafür extra Befehle

WICHTIG: die Dateien müssen auf beiden Rechner an der gleichen Stelle liegen!

cocht

(Themenstarter)

Anmeldungsdatum:
15. November 2010

Beiträge: 33

Hallo,

ich glaube ich hab's jetzt. Zumindest für meinen Fall funktioniert diese Anleitung: https://artofcode.wordpress.com/2021/02/24/off-line-migration-of-qemu-kvm-virtual-machine/

So habe ich es gemacht: Die zu kopierende VM ist heruntergefahren. Netzwerk stelle ich vorher auf NAT und auf dem neuen Host später auf das was ich da brauche.

Ich kopiere die dazu gehörende .qcow2 VD mit root Rechten auf den neuen Host.

Ich erzeuge die XML Definitionsdatei mit virsh im Terminal:

virsh dumpxml vm_name > kopierte_vm.xml

Die XML Datei (kopierte_vm.xml) liegt dann einfach im Homeverzeichnis. Die kopiere ich ins Home auf den neuen Host. Wenn der Pfad zur vorher kopierten VD nicht gleich ist, muss man den in der eben erzeugten XML Datei anpassen. Suche in der XML nach "disk" und dann nach "source file". Pfad anpassen und speichern. Auf dem neuen Host wieder im Terminal mit virsh:

virsh define kopierte_vm.xml

Eventuell den Virt-Manager //wiki.ubuntuusers.de/virt-manager/: neu starten. Damit die kopiert Maschine dort auftaucht und dann lässt sich die Maschine starten.

Antworten |