1) Pour commencer nous allons arrêter le domaine que nous souhaitons migrer
virsh shutdown nom_VM
ou si elle ne repond pas
virsh destroy nom_VM
2) Sur l’hyperviseur source, nous allons exporter la configuration du domaine dans un fichier xml:
virsh dumpxml nom_VM > nom_VM.xml
3 ) Toujours sur l’hyperviseur source, on copie le ou les fichiers disques du domaine que l’on souhaite migrer, depuis son emplacement dans /var/lib/libvirt/images vers le même répertoire sur l’hyperviseur de destination.
scp -p /var/lib/libvirt/images/nom_VM.qcow2 hyperviseur_destination:/var/lib/libvirt/images/
Utilise -r si tu as un répertoire entier, ou rsync pour plus de fiabilité :
rsync -avz --progress /var/lib/libvirt/images/nom_VM.qcow2 hyperviseur_destination:/var/lib/libvirt/images/
Si le chemin du disque est différent sur l’hyperviseur de destination, il faudra le modifier le fichier xml générer dans l’étape précédente pour que cela pointe au bon endroit.
4 ) On copie également notre fichier XML sur l’hyperviseur de destination
scp -p nom_VM.xml hyperviseur_destination:/tmp/
5) On intègre le domaine dans KVM à l’aide de notre fichier xml:
virsh define /tmp/nom_VM.xml
6) Il ne reste plus qu’a démarrer notre domaine
virsh start nom_VM
virsh list # VM running sur la destination virsh list --all # VM absente ou "shut off" sur la source (tu peux l’undefine après)
virsh undefine nom_VM rm nom_VM.xml /var/lib/libvirt/images/nom_VM.qcow2