Backup de máquinas virtuales de Proxmox VE usando NFS como repositorio remoto

El cluster de Proxmox VE permite realizar copias de respaldo de todas las máquinas virtuales.
He seguido este manual de la wiki de proxmox para la copia y restauración, pero haré mi propio procedimiento, por motivos didácticos de mi implementación.  El cluster ya está en funcionamiento y en este momento tengo un equipo master y otro como nodo.

* NFS (Network File System) instalación en debian 6.

Lo primero es instalar y configurar nfs. Yo he usado debian 6 para 32 bits en una pc con dos discos, uno de 250 y otro de 500GB.


# apt-get install nfs-common nfs-kernel-server

El disco duro de 500GB lo he montado y agregado al fstab
# cat /etc/fstab
/dev/sdb1/ /vol1 ext3 errors=remount-ro 0 1

Esta instalación genera el archivo /etc/exports y yo lo tengo configurado de la siguiente manera:
root@medusa:/vol1# cat /etc/exports
/vol1/pve1 10.0.0.38(rw) 10.0.0.39(rw)
/vol1/pvebk1 10.0.0.38(rw) 10.0.0.39(rw)

Es importante que el archivo /etc/hosts.allow quede de la siguiente manera:

# /etc/hosts.allow
ALL:10.0.0.38
portmap: 10.0.0.38
ALL:10.0.0.39
portmap: 10.0.0.39

luego es necesario reiniciar los demonios de nfs para que sea público en la red y un nfs cliente pueda conectar.

# /etc/init.d/nfs-common restart
# /etc/init.d/portmap restart

Para verificar si ya se están exportando los directorios se ejecuta:

# exportfs
/vol1/pve1 10.0.0.38
/vol1/pve1 10.0.0.39
/vol1/pvebk1 10.0.0.38
/vol1/pvebk1 10.0.0.39
# netstat -puta| grep nfs
tcp 0 0 *:nfs *:* LISTEN -
udp 0 0 *:nfs *:*

De esta manera es posible conectar desde las IPs 10.0.0.38 y 10.0.0.39 en sus respectivos directorios y que está escuchando el puerto nfs (2049).
En la máquina que usará este recurso, digamos la ip 10.0.0.38, podemos hacer la prueba de montaje de estos directorios exportados.


# mount -t nfs 10.0.0.22:/vol1/pve1 /mnt/pve/backupPVE1

Y listo, se desmonta para que este proceso lo haga proxmox


# umount /mnt/pve/backupPVE1

Bien, ahora ya está en funcionamiento NFS, pasamos ahora a la parte web del cluster de virtualización.

*Configuración de backup para proxmox
Luego de hacer login ir a Storage

Luego seleccionar nuestro servidor de nfs, colocando el nombre del recurso NFS, el ip o nombre del servidor, seleccionando Scan y saldrán entre las opciones los directorios que el servidor exportó. Es importantísimo que sí el recurso es para backup se debe seleccionar para Contenido: VZDump Backups, sino, no funcionará. Las otras opciones son para alojar plantillas de sistemas o ISOs.


Luego será necesario ir a Configuración, Respaldo.

Al elegir Crear nueva tarea, seleccioné todas mis máquinas del cluster master, en mi caso se llama pve1 para que haga el backup a media noche y comprima los archivos.

De esta manera todas las máquinas virtuales creadas en la PVE1 irán a dar al directorio montado de NFS. No está de más recordar que la cantidad de disco en las máquinas es menor dado que lo que reporta proxmox es la cantidad declarada en el momento de la creación.
Si vemos los archivos en el directorio de montaje o en la máquina que hace de nfs server se ven así:

root@medusa:/vol1/pve1# ls -lh
total 634M
drwxr-xr-x 2 nobody nogroup 4.0K Jul 22 10:02 images
-rw-r--r-- 1 nobody nogroup 869 Jul 22 10:18 vzdump-qemu-103-2011_07_22-10_15_01.log
-rw-r--r-- 1 nobody nogroup 634M Jul 22 10:18 vzdump-qemu-103-2011_07_22-10_15_01.tgz
root@medusa:/vol1/pve1# ls -lh ../pve
pve1/ pvebk1/
root@medusa:/vol1/pve1# ls -lh ../pvebk1/
total 9.3G
-rw-r--r-- 1 nobody nogroup 781 Jul 22 10:49 vzdump-openvz-106-2011_07_22-10_15_02.log
-rw-r--r-- 1 nobody nogroup 9.3G Jul 22 10:48 vzdump-openvz-106-2011_07_22-10_15_02.tgz

Y listo, ya están creandose diariamente mis copias de respaldo en un directorio externo, con la ventaja de ser un sólo archivo y según el manual de fácil restauración.

* Restauración

Example1: Restore the backup of OpenVZ container CT 777 (backup file: vzdump-openvz-777.tar) to CT 600

vzrestore vzdump-openvz-777.tar 600

Example2: Restore the backup of KVM VM 555 (backup file: vzdump-qemu-555.tgz) to CT 500 in Storage with the Name local

qmrestore --storage local vzdump-qemu-555.tgz 500


El storage local hará que la máquina se restaure en /var/lib/vz/images/500/

Comentarios

  1. Gracias,
    Estamos publicando de ahora en adelante en http://noc.usac.edu.gt

    Saludos.

    ResponderEliminar
  2. COMETE UNA PAPA Y CARGA LA IMAGENES PIVE

    ResponderEliminar

Publicar un comentario

Entradas populares