Esta Guía Rápida presenta técnicas y estrategias para la restauración granular instantánea de sólo algunos archivos de hosts de VMware ESXi usando el complemento Single-Item Restore de Bacula Enterprise.
Instalación
Paquetes para el complemento Restauración de archivo único de VMware están disponibles para plataformas compatibles, entre en contacto con nosotros para recibirlos.
El plug-in debe instalarse en la misma máquina que su servidor de almacenamiento Daemon y algún espacio en disco es necesario para que el Bacula monte los archivos de copia de seguridad de la máquina virtual durante la restauración. Sin embargo, sólo copias de seguridad almacenadas en disco son compatibles con técnicas de recuperación instantánea (cintas magnéticas no).
Además, para usar la GUI de bweb con el plug-in Single-Item, también debe instalarse en este mismo host pero está fuera del alcance de esta guía.
Es aconsejable utilizar los repositorios de paquetes exclusivos de Bacula Enterprise para la instalación de dependencias si aún no están configurados (reemplaza xxx por el código de URL secreta del cliente Bacula Systems):
yum install -y yum-plugin-priorities # cat /etc/yum.repos.d/baculasystems.repo [single_file_restore_vmware] name = Red Hat Enterprise - RPMFORGE baseurl = https://www.baculasystems.com/dl/<xxx>/rpms/single-item-restore/10.2.2/rhel7-64/enabled = 1 protect = 0 gpgcheck = 0 [dag] name = Red Hat Enterprise - RPMFORGE baseurl = https://www.baculasystems.com/dl/DAG/rhel7-64 enabled = 1 protect = 0 gpgcheck = 0 priority =1 #Note: This last repository is required on RHEL7: [Bacula-Enterprise-Edition-DAG-Guestfish] name = Bacula Enterprise Edition - DAG for Guestfish baseurl = https://www.baculasystems.com/dl/DAG/rhel7-64/guestfish/ enabled = 1 protect = 0 gpgcheck = 0 priority = 1
Sin embargo, para el Redhat, será necesario instalar el paquete perl-JSON desde el rpmforge y el paquete libguestfs-winsupport. En Redhat 7.x, debe instalar una versión personalizada del paquete libguestfs y el paquete ntfs-3g del repositorio EPEL para admitir dispositivos NTFS. Para instalar el repositorio EPEL, siga las instrucciones oficiales en el sitio web de EPEL para instalar el paquete «epel-release» aquí: https://fedoraproject.org/wiki/EPEL. Por ejemplo.:
yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm yum -y install libguestfs ntfs-3g
Una vez que los repositorios están configurados, es posible instalar el paquete del plugin Single-Item con el yum. El gestor de paquetes garantizará que su versión de Bacula Enterprise Edition sea compatible con el complemento VMware Single File Restore e instalará dependencias:
yum install bacula-enterprise-single-item-restore perl-JSON
Alternativamente, descargue el paquete del plugin e instálelo usando el gestor de paquetes de la siguiente manera:
rpm -ivh bacula-enterprise-single-item-restore*.rpm
Reinicie bacula-sd y bweb, si está instalado:
service bacula-sd restart service bweb restart
Preparar el Usuário bacula de Linux
Todos los comandos Single-Item Plugin en este documento utilizan la cuenta del sistema operativo «bacula» para ejecutar.
En Redhat, la cuenta «bacula» de Unix se bloquea de forma predeterminada. Esto significa que, de forma predeterminada, no se puede ejecutar un comando como «su-bacula».
Para desbloquear la cuenta unix «bacula» y usar «su -» con un comando como:
root@storage# chsh -s /bin/bash bacula root@storage# su - bacula bacula@storage# whoami bacula
Para probar o utilizar la restauración Single-Item en la línea de comandos, puede utilizar el usuario bacula con:
root@storage# sudo -u bacula /opt/bacula/bin/bconsole
Compartir Samba (SMB)
El complemento de restauración de archivo único de VMware de Bacula Enterprise Edition puede configurar automáticamente los recursos compartidos SMB de Samba desde el programa de consola o BWeb Management Suite para que el usuario final pueda acceder directamente a los archivos montados.
Para activar los recursos compartidos de red del SMB de Samba, es obligatorio instalar y configurar el paquete «samba». Ejecute el script install-single-item-restore.sh.
root@storage# /opt/bacula/scripts/install-single-item-restore.sh install Do you want to initialise Samba smb.conf [yes/No]: yes Choose a Workgroup [BACULA]: root@storage# cat /etc/samba/smb.conf [global] workgroup = BACULA include = /etc/samba/conf.d/all
En este punto, es posible modificar el /etc/samba/smb.conf para agregar sus propias directivas de configuración.
Plugin de Backup de VMware
El Bacula necesita montar el disco de la máquina virtual seleccionada en el sistema para restauración granular. Estos pasos generalmente son bastante rápidos, pero el tiempo depende mucho de la configuración utilizada. Los índices se crean y se mantienen durante esta fase para acelerar cualquier otra solicitud de restauración. Para crear el índice durante la fase de copia de seguridad, se puede utilizar el índice de la opción FileSet Vmware Backup Plugin. Por ejemplo:
Plugin = "vsphere: host=myhost index"
Configuración
En el servidor host de Daemon de almacenamiento, el programa bconsole debe configurarse correctamente para permitir que el usuario «bacula» se conecte al Director con /opt/bacula/etc/bconsole.conf. Debe estar configurado ya es la misma máquina del director.
El paquete Plugin también contiene una secuencia de comandos para probar la conexión con el Director y probar si el sistema puede montar correctamente el sistema de archivos virtuales.
bacula@storage# /opt/bacula/scripts/install-single-item-restore.sh check I: Try to restart the script with sudo... I: Found catalog MyCatalog I: bacula-fused started on /tmp/bee-bfuse.XXXXX I: MyCatalog found I: 10 Client(s) found I: /tmp/bee-bfuse.XXXXX unmounted I: bacula-fused (rw) started on /tmp/bee-bfuse.XXXXX I: MyCatalog found I: 10 Client(s) found I: /tmp/bee-bfuse.XXXXX unmounted OK: All tests are good.
El sistema Virtual File System no está diseñado para ser utilizado por los usuarios finales para buscar o restaurar archivos directamente. Si intenta acceder y navegar por el punto de montaje, es posible que no vea ningún archivo o archivo puede tener permisos, propiedades y tamaños extraños y será inaccesible incluso para el usuario root.
Restauración
Uso de bweb
La opción Restaurar un solo archivo VMware en BWeb Management Suite es un asistente que facilita la restauración de archivos desde una máquina virtual de VMware.
Como se muestra en la Figura 1, utilice el menú Restaurar> Restaurar elemento único para iniciar el proceso. A continuación, seleccione el cliente no como una tarea de copia de seguridad de vSphere ha finalizado.
Figura 1. Pantalla de Restauración Single-Item de Vmware
Como se muestra en la Figura 2, el administrador debe seleccionar un trabajo de copia de seguridad de VMware para restaurar.
Figura 2. Selección de Restauración del Trabajo de Copia de Seguridad
En este punto, el Bacula necesita construir una imagen virtual de la máquina virtual seleccionada. El tiempo depende mucho de la configuración utilizada, y los índices de VMware Plugin se pueden habilitar para acelerar este proceso, explicado anteriormente.
Como se muestra en la Figura 3, los archivos de la máquina virtual seleccionada se mostrarán en un navegador de archivos, en el que puede seleccionar archivos o directorios que se van a restaurar.
Figura 3. Seleção de Arquivo
El administrador puede entonces elegir generar un archivo ZIP o TAR. El archivo se generará automáticamente y se almacenará en /opt/bacula/working. Se generará un vínculo de descarga HTTP seguro y el administrador puede proporcionar este vínculo al usuario final.
Si BWeb Management Suite está configurado para usar la autenticación HTTP, debe configurar el lighttpd adecuadamente para permitir que los usuarios «anónimos» descarguen sus archivos.
Como se muestra en la Figura 4, para cada selección, el administrador puede elegir cómo recuperar los archivos directamente, comprimidos como un archivo tar o zip.
Figura 4. Acceso a los Archivos Restaurados
Una vez que se produzca la restauración, es importante cerrar la sesión de restauración para liberar recursos.
Con Interfaz de Consola Texto
El complemento VMware Single File Restore proporciona un programa de consola simple que proporciona acceso a archivos dentro de las máquinas virtuales. Por ejemplo:
bacula@storage# /opt/bacula/bin/mount-vmware Automatically Selected Catalog: MyCatalog Client list: 1: 127.0.0.1-fd 2: win2008-fd 3: rhel7-fd Select a Client: 1 Selected Client: 127.0.0.1-fd Job list: 1: NightlySave.2015-09-01_10.49.18_39 2: pluginTest.2015-09-01_10.40.20_04 3: pluginTest.2015-09-01_10.46.19_08 Select a Job: 2 Selected pluginTest.2015-09-01_10.40.20_04 Virtual Machine: 1: squeeze2 (5) 2: win2008 (6) 3: rhel7 (7) Select a Virtual Machine: 1 Selected squeeze2 (5) Actions list: 1: Mount guest filesystem locally 2: Export guest filesystem through SMB 3: Cleanup Select a Actions: 1 Selected Mount guest filesystem locally I: Files are available under /opt/bacula/working/vmware/5 I: Press enter to finish and cleanup the session
En este paso, el sistema de archivos de la máquina virtual se monta localmente (en el ejemplo anterior, los archivos están disponibles en /opt/bacula/working/vmware/5. Puede buscar directorios y copiar archivos (con cp, scp, ftp) como con un sistema de archivos predeterminado de otra sesión de terminal con las cuentas «root» y «bacula» del sistema operativo. Si necesita utilizar otra cuenta para operar en archivos, utilice la opción «-o allow_other» al iniciar la secuencia de comandos mount-vmware .
bacula@storage# ls /opt/bacula/working/vmware/5 bin dev home lib media opt root selinux sys usr vmlinuz boot etc initrd.img lost+found mnt proc sbin srv tmp var
Para limpar a sessão, basta pressionar “Enter” na sessão de terminal em que o script mount-vmware foi iniciado.
A partir do Bacula Enterprise versão 8.4.8, é possível limitar a lista de trabalhos do programa mount-vmware com as seguintes opções de linha de comando:
- -s = <days> Limitar la lista de trabajos a los últimos días
- -l = <number> Limita la lista de trabajos al último número de entradas
- -f = <filtro> Especifica un filtro avanzado basado en el nombre del trabajo, en el nombre de FileSet o en el JobId.
Ejemplos:
# Limit the job output to the last 100 jobs bacula@storage# /opt/bacula/bin/mount-vmware -l 100 # Limit the job output to the last 30 days bacula@storage# /opt/bacula/bin/mount-vmware -s 30 # Limit the job output to jobs that start with ``MyVMware'' bacula@storage# /opt/bacula/bin/mount-vmware -f 'jobname=MyVMware*' # BAD USAGE for the filter option, it will search for a job named ``MyVMware'' bacula@storage# /opt/bacula/bin/mount-vmware -f 'jobname=MyVMware' # Limit the job output to jobs that start with ``MyVMware'' # and that use the FileSet Test1 bacula@storage# /opt/bacula/bin/mount-vmware -f 'jobname=MyVMware* fileset=Test1' # Limit the job to the jobid XX bacula@storage# /opt/bacula/bin/mount-vmware -f jobid=XX
En algunos casos, la detección del dispositivo no funciona correctamente. Puede utilizar la opción -m para montar discos reconocidos de manera sencilla. La opción se establece automáticamente cuando sólo se selecciona un disco durante la restauración.
bacula@storage# /opt/bacula/bin/mount-vmware -m
Soporte
La secuencia de comandos install-single-item-restore.sh puede recoger registros y trazas automáticamente cuando se está ejecutando una sesión de mount-vmware.
root@storage# /opt/bacula/scripts/install-single-item-restore.sh support
Referencia
VMware Single File Restore Bacula Enterprise Edition – http://baculasystems.com
Disponível em: Português (Portugués, Brasil)English (Inglés)Español