Si estoy creando una imagen qcow2 new.qcow2 basada en un archivo de respaldo (llamado base.qcow2) y el archivo de respaldo está ubicado en un recurso compartido nfs. ¿Qué sucede si alguien intenta modificar, reemplazar o eliminar base.qcow2?
¿Existe algún mecanismo de bloqueo que lo impida? ¿Se copiarán todos los bloques a la imagen new.qcow2 antes de eliminar o modificar base.qcow2?
El escenario es el siguiente:
qemu-img create -f qcow2 -b /mnt/nfs/base.qcow2 /localdisk/new.qcow2
En el servidor nfs u otro cliente:
rm nfs/base.qcow2
¿Qué sucede con new.qcow2 creado a partir de base.qcow2?
Respuesta1
¿Qué sucede si alguien intenta modificar, reemplazar o eliminar base.qcow2?
Las imágenes basadas en la imagen base se vuelven irrelevantes/corrompidas/inútiles. Los clones completos seguirán funcionando, por supuesto.
¿Existe algún mecanismo de bloqueo que impida esto?
Integrado en qemu - no. Los sistemas de gestión como oVirt/RHEV los tendrán implementados.
¿Se copiarán todos los bloques a la imagen new.qcow2 antes de eliminar o modificar base.qcow2?
Sólo si haces manualmente un qemu-img rebase
. Si simplemente edita el archivo base o lo usa directamente con una máquina virtual en lugar de la última imagen derivada en una cadena de instantáneas, romperá todo el árbol de instantáneas.
En cuanto al escenario real, la -b
opción creará solo una imagen delta, que contendrá solo las diferencias entre la nueva instantánea y la imagen base. Si eliminas la base, la instantánea se vuelve inútil ya que no tiene referencia. Superalohttp://docs.fedoraproject.org/en-US/Fedora/13/html/Virtualization_Guide/sect-Virtualization-Tips_and_tricks-Using_qemu_img.htmlpara una mejor referencia.