Lo más conveniente es simplemente:
# virt-clone --connect=qemu://example.com/system -o this-vm -n that-vm --auto-clone
Que hará una copia de this-vm
, llamado that-vm
y se encarga de duplicar los dispositivos de almacenamiento. Nada nuevo aquí excepto el detalle.
Más concretamente, lo que dicen las preguntas frecuentes es que las descripciones de dominio XML no se pueden editar directamente, debe ir a través libvirt. Para completar los pasos dados por el virt-clone
comando, podría:
source_vm=vm_name
new_vm=new_vm_name
# You cannot "clone" a running vm, stop it. suspend and destroy
# are also valid options for less graceful cloning
virsh shutdown "$source_vm"
# copy the storage.
cp /var/lib/libvirt/images/{"$source_vm","$new_vm"}.img
# dump the xml for the original
virsh dumpxml "$source_vm" > "/tmp/$new_vm.xml"
# hardware addresses need to be removed, libvirt will assign
# new addresses automatically
sed -i /uuid/d "/tmp/$new_vm.xml"
sed -i '/mac address/d' "/tmp/$new_vm.xml"
# and actually rename the vm: (this also updates the storage path)
sed -i "s/$source_vm/$new_vm" "/tmp/$new_vm.xml"
# finally, create the new vm
virsh define "/tmp/$new_vm.xml"
virsh start "$source_vm"
virsh start "$new_vm"
Además de "virt-clone", puede duplicar la VM de esta manera:
- Asegúrese de que la máquina virtual existente (que se duplicará) esté apagada.
- haga un "sudo virsh dumpxml
" de la máquina virtual existente y guarde el archivo xml de salida. - Modifique la etiqueta
debajo de la etiqueta . - Use "uuidgen" para generar una nueva ID única y utilícela para modificar la etiqueta
existente. - Haga una copia de las imágenes virtuales qcow existentes que usa la máquina virtual (generalmente almacenadas en /var/lib/libvirt/images, pero para asegurarse, simplemente lea su archivo XML para conocer la ubicación exacta). El comando es "sudo cp /var/lib/libvirt/images/xxx.qcow2 yyyy.qcow2", y complete el nuevo archivo yyyy.qcow2 en el archivo XML.
- Inicie la nueva máquina virtual:sudo virsh define new.xml
- Inicie el nuevo domid:sudo virsh start
virsh
le permitirá editar, exportar e importar la definición XML para sus servidores. Yo usaría virt-clone
para generar un archivo de imagen clonado y exportar el XML. Para estar seguro, eliminaría la configuración de clonación del servidor original.