Estoy tratando de hacer una instantánea en vivo usando KVM según este procedimiento .
Debo haberme equivocado en algún momento porque estoy en un estado que no entiendo.
Mi VM se llama prod
. Fue creado en archivo /srv/vm/prod.qcow2
.
Aparentemente, no hay una instantánea en ejecución: estoy trabajando en el archivo base. Puedo adivinar porque la fecha de modificación del archivo /srv/vm/prod.qcow2
cambia cada minuto más o menos. Además, este comando lo confirma:
# virsh domblklist prod
Target Source
------------------------------------------------
vda /srv/vm/prod.qcow2
Y no hay nada que bloquear:
# virsh blockcommit prod vda --active --pivot
error: invalid argument: top '/srv/vm/prod.qcow2' in chain for 'vda' has no backing file
Sin embargo, libvirt mantiene el rastro de una foto antigua:
# virsh snapshot-list prod
Name Creation Time State
------------------------------------------------------------
snap 2015-06-09 12:11:33 +0200 disk-snapshot
Su archivo descriptor es /var/lib/libvirt/qemu/snapshot/prod/snap.xml
:
<domainsnapshot>
<name>snap</name>
<state>disk-snapshot</state>
<creationTime>1433844693</creationTime>
<memory snapshot='no'/>
<disks>
<disk name='vda' snapshot='external' type='file'>
<driver type='qcow2'/>
<source file='/srv/vm/snap.qcow2'/>
</disk>
</disks>
[...]
El archivo fuente /srv/vm/snap.qcow2
fue eliminado.
Teniendo en cuenta el método que estoy tratando de implementar, es muy probable que esta instantánea se haya creado con el siguiente comando:
virsh snapshot-create-as --domain prod snap --diskspec vda,file=/srv/vm/snap.qcow2 --disk-only --atomic
No puedo eliminarlo:
# virsh snapshot-delete prod snap
error: Failed to delete snapshot snap
error: unsupported configuration: deletion of 1 external disk snapshots not supported yet
Así que estoy en un estado donde se creó una instantánea, aparentemente ya no se usa y no se puede eliminar.
¿Hay algo que pueda hacer al respecto?
¿Debería importarme o puedo ignorarlo?
Editar
Acabo de eliminar el descriptor del archivo de instantánea.
# systemctl stop libvirt
# mv /var/lib/libvirt/qemu/snapshot/prod/snap.xml /home/jerome
# systemctl start libvirt
Mi VM está funcionando nuevamente y ya no veo ninguna referencia a la instantánea.
# virsh snapshot-list prod
Name Creation Time State
------------------------------------------------------------
Nada en virt-manager tampoco.
¿Estoy bien o todavía hay algo de limpieza que hacer?
Editar 2
Aparentemente, pasar -–no-metadata
a virsh snapshot-create-as
evitaría este problema al no crear el archivo .xml, sin dejar rastro de la instantánea.
qemu-img info /srv/vm/prod.qcow2
. Pero no estoy seguro de cómo eliminar ese rastro yo mismo ...