
Así es como se ve mi configuración: ubuntu 14.04 ejecutando KVM con libvirt tiene un HW-Raid desde el que se ejecuta (/dev/sda) y otro HW-RAID (/dev/sdb) que es el PV de un LVM VG llamado "datavg " con máquinas virtuales instaladas en LV sin formato. Luego hice una copia de seguridad de la VM así:
- guardar la configuración de libvirt/virsh
- guardar el tamaño lv
- guarde los primeros 512 Bytes (MBR y GPT) usando dd
- crear una instantánea LVM del LV
- mapee las particiones (usando kpartx) y monte la partición raíz de la máquina virtual
- guarde el tipo fs y el uuid de esa partición
- use duplicidad para hacer una copia de seguridad incremental de todo (excluir /proc)
- desmontar y desasignar
- eliminar instantánea
Esto es lo que ejecuté en el "camino de regreso" para restaurarlo en una máquina virtual llamada "test-vm" en un LV "vm-test-lv":
crear LV con el mismo tamaño (desde la copia de seguridad)
lvcreate --name vm-test-lv --size 400.00G datavg
agregue el MBR y el GPT nuevamente al primer 512b al comienzo del LV
dd if=/data/backup/test/MBR-20141126T104236Z.raw of=/dev/datavg/vm-test-lv
mapear las particiones LV
kpartx -av /dev/datavg/vm-test-lv
formatéelo en el mismo FS con el mismo UUID (ambos desde la copia de seguridad)
mkfs.ext4 -U a5943cc4-6421-47a4-9613-30efd4dc44d4 /dev/mapper/datavg-vm--test--lv1
montar la partición recién formateada
mount /dev/mapper/datavg-vm--test--lv1 /data/mnt/
restaurar la copia de seguridad de duplicidad
duplicity restore --progress --restore-time 20141126T104236Z file:///data/backup/test /data/mnt
desmontarlo
umount /data/mnt
eliminar el mapeo
kpartx -d /dev/mapper/datavg-vm--test--lv
cree la máquina virtual (en este caso con un nombre y uuid diferente porque la original todavía existe pero está apagada)
virsh create /data/backup/test/virsh-20141126T104236Z.xml
intenta arrancar
Eso no funcionó y se bloquea, mirándolo a través de VNC a través de un túnel SSH dice "Arrancando desde el disco duro..." (captura de pantallaya que no puedo publicar imágenes en línea)
Luego intenté mapearlo nuevamente y hacer chroot en él para intentar hacerlo, grub-install
pero tampoco funcionó:
root@kvm-host:~# mkdir /data/mnt/proc
root@kvm-host:~# mount --bind /proc /data/mnt/proc
root@kvm-host:~# mount --bind /dev /data/mnt/dev
root@kvm-host:~# mount --bind /sys /data/mnt/sys
root@kvm-host:~# chroot /data/mnt
root@kvm-host:/# grub-install /dev/mapper/datavg-vm--test--lv
Installing for i386-pc platform.
grub-install: error: disk `lvmid/eLefkO-MKtH-kOcq-pt0b-4zzO-31xg-XIqDpY/AcNuFk-JY2r-V8x5-gNoV-UCoi-uQug-8R0ZWZ' not found.
Muestra los UUID correctos del VG y del LV, pero me temo que lo estoy usando mal... ¿Alguien puede ayudarme?