Abierto
Cerca

Un programa para realizar copias de seguridad de máquinas virtuales VMware. Copia de seguridad gratuita de máquinas virtuales basada en VMware ESXi Configuración de parámetros de copia de seguridad para máquinas virtuales

Veamos y comparemos dos métodos para realizar copias de seguridad de máquinas virtuales VMware.

Datos iniciales

El banco de pruebas consta de dos hipervisores ESXi en un servidor Fujitsu Primergy BX2560 M2 conectados vía SAN (dos puertos de 8 Gbit/s) y LAN (dos puertos de 10 Gbit/s). ESXi y VSCA versión 6.5. Para ESXi, los discos fueron presentados por el sistema de almacenamiento Fujitsu ETERNUS DX8700 S2. Como sistema de almacenamiento de respaldo utilizamos un EMC Data Domain 6300 conectado vía SAN (cuatro puertos de 8 Gbit/s). Para realizar una copia de seguridad, para ahorrar tiempo, utilizaremos la herramienta Backup Exec ya preparada. El servidor de administración del sistema está instalado en un servidor físico HP ProLiant BL460c Gen8 y también tiene una conexión de red vía SAN y LAN con dos puertos.

Se crearon tres máquinas virtuales para las pruebas: VM1 (146 Gb), VM2 (157 GB) y VM3 (284 Gb). El procedimiento de prueba se verá así: realizaremos una copia de seguridad COMPLETA de cada sistema tres veces, después de lo cual calcularemos la velocidad promedio de copia de seguridad (Gb/min) para cada método.

El sistema Backup Exec tiene cuatro formas de acceder a los datos de la máquina virtual, para un servidor físico estas son SAN, LAN (NBD), NBDSSL y la cuarta, si el servidor Backup Exec está instalado en una máquina virtual, HotAdd. Probemos la opción cuando Backup Exec está instalado en un servidor físico separado y comparemos los pros y los contras de realizar copias de seguridad a través de SAN y LAN.

Configurar Backup Exec es bastante simple y consta de los siguientes pasos:

  1. Seleccione una tarea existente o cree una nueva para realizar una copia de seguridad de las máquinas virtuales
  2. Abrir propiedades para esta tarea
  3. Ir a la pestaña Máquinas virtuales > Subsección VMware
  4. Marque el método de conexión que necesitamos (está permitido activar los cuatro métodos a la vez y establecer su orden de uso)


MÉTODO UNO: RESPALDO DE MÁQUINAS VIRTUALES A TRAVÉS DE SAN


Para que Backup Server realice una copia de seguridad de las máquinas virtuales ESXi a través de una SAN, primero debe presentar los mismos LUN que se presentaron a ESXi. En este caso, Backup Server, utilizando la API de vStorage, solicita información de vCenter en qué LUN se encuentra el VMDK de la máquina virtual, toma una instantánea del disco y la recoge a través de SAN.

El resultado de este experimento es promedio.

MÉTODO DOS: RESPALDO DE MÁQUINAS VIRTUALES A TRAVÉS DE LAN (NBD)


En este modo, Backup Server solicita a vCenter información sobre en qué ESXi se encuentra la máquina virtual que necesitamos, toma una instantánea y la transfiere a través de la red local desde el servidor ESXi al Backup Server.

El resultado del segundo experimento es promedio.

CONCLUSIONES, PROS Y CONTRAS

Si construye una infraestructura moderna desde cero utilizando equipos de red con un ancho de banda de 10 Gbit/s, entonces usar una copia de seguridad en el modo de conexión a datos a través de una red local (NBD) probablemente será más rentable y rentable. En el caso de que la red entre ESXi y Backup Host sea de 1 Gbit/s y el equipo necesario para conectarse a través de SAN ya esté disponible, el primer método será más eficiente y rápido.

La principal ventaja de realizar una copia de seguridad a través de SAN es que la transferencia de datos no carga la red local y se realiza a una velocidad bastante alta, pero en el caso de una red de 10 Gbit/s esto ya no es una ventaja tan clara, ya que Incluso con volúmenes de información relativamente grandes, la ventana de copia de seguridad no lleva mucho tiempo.

La principal ventaja de realizar copias de seguridad a través de LAN es la posibilidad de utilizar equipos más económicos como sistema de almacenamiento de datos. Y como demostró la prueba, construir una red moderna con equipos de 10 Gbit/s proporcionará una copia de seguridad más rápida que una SAN de 8 Gbit/s.

La restauración de máquinas virtuales con discos gruesos a través de SAN se realiza con bastante rapidez, pero es mejor rechazar la recuperación con discos finos porque Esto a menudo termina con un error o una falla.

Desde la práctica general, podemos decir que para restaurar máquinas virtuales es mejor usar siempre una red local y no sobrescribir la máquina virtual anterior, sino intentar restaurarla en una nueva ubicación.

La información utilizada en el artículo está extraída de fuentes oficiales.

Para organizar un sistema de copia de seguridad automática para máquinas virtuales que se ejecutan en un servidor VMWare ESXi, utilizaremos una utilidad gratuita MKScopia de seguridad, que puede descargar (en el momento de escribir este artículo, la última versión disponible es MKSBackup 1.0.4 del 24 de enero de 2013). Esta utilidad es una especie de interfaz que se integra con varios scripts de respaldo, incluidos GuetoVCB(Script de copia de seguridad de VM escrito en Perl y mantenido por entusiastas). GhettoVCB le permite crear copias de seguridad en línea de máquinas virtuales en ejecución. Una copia de seguridad de VM se crea creando una instantánea de la misma.

Importante. GhettoVCB no funciona con máquinas virtuales que tengan sus propias instantáneas. Para realizar una copia de seguridad de una máquina virtual, se deben eliminar todas las instantáneas (por ejemplo, a través del Administrador de instantáneas).

MKSBackup es una de las pocas herramientas de respaldo que le permite realizar respaldos en línea de máquinas virtuales. MKSBackup se puede utilizar para realizar copias de seguridad de máquinas virtuales que se ejecutan tanto en ediciones comerciales de VMware ESXi como en VMware Hypervisor gratuito. La utilidad está desarrollada en Python y es multiplataforma. La utilidad MKSBackup no tiene una interfaz gráfica, funciona a través de la línea de comandos y se configura mediante archivos de configuración.

Naturalmente, la conveniencia y capacidad de administración de la solución para organizar copias de seguridad de máquinas virtuales VMWare basadas en MKSBackup es menor que la de los productos comerciales, pero se compensa en gran medida por su naturaleza gratuita, facilidad de configuración y velocidad de implementación.

Instalación del script de copia de seguridad MKSBackup

Configurar los ajustes de copia de seguridad de la máquina virtual

El siguiente paso es configurar los ajustes de copia de seguridad para las máquinas virtuales que se ejecutan en el servidor ESXi. La configuración se lleva a cabo editando el archivo de configuración mksbackup.ini (ubicado en la carpeta C:\Magik por defecto).

Abra el archivo mksbackup.ini en cualquier editor de texto. La estructura del archivo consta de varias secciones, el nombre de cada sección está entre corchetes.
Sección:

En esta sección puede configurar los parámetros de notificación por correo electrónico. Esto no nos interesa, así que lo dejaremos.

Siguiente sección. Esta sección representa la tarea de copia de seguridad y describe los diversos parámetros que garantizan el lanzamiento de una copia de seguridad de máquinas virtuales en el entorno Windows. En nuestro ejemplo, la tarea se ve así:

Programa=ghettovcb host=10.10.1.89 puerto=22 inicio de sesión=root contraseña=LI&f3ccc23 local=C:\magik\vmware global_conf=ghettoVCB.conf vm_list=vm1_https winXPtest destino=C:\magik\$(vm) scp_bin="D: \Instalar\Putty\pscp.exe" -scp -r

Echemos un vistazo más de cerca a los parámetros de la tarea:

programa– programa de copia de seguridad, dejar ghettovcb

anfitrión– nombre/ip del host ESXi en el que se ejecutan las máquinas virtuales

puerto– puerto de acceso (puerto predeterminado 22 – protocolo SSH)

acceso– nombre de usuario con derechos de acceso al servidor ESXi (por defecto es root, pero por motivos de seguridad es mejor crear un usuario separado en el servidor ESXi)

contraseña- contraseña de usuario

local– directorio local en el que se almacenan el script de copia de seguridad y su configuración

configuración_global– archivo con la configuración del script ghettoVCB

lista_vm– una lista de máquinas virtuales para las que necesita crear una copia de seguridad. Si necesita hacer una copia de seguridad de todas las máquinas virtuales, este parámetro debe dejarse vacío. Si necesita excluir algunas máquinas virtuales, utilice el parámetro vm_exclude.

destino– el parámetro permite especificar el tipo de operación a realizar. Podría ser

  • copia de seguridad: realice una copia de seguridad simple (no es necesario especificar un destino)
  • copiar: realiza una copia de seguridad y copia los archivos resultantes al directorio especificado
  • mover: realiza una copia de seguridad y mueve los archivos resultantes al directorio especificado

Centrémonos en la opción de movimiento, ya que es más óptima. En este caso, se crearán copias de seguridad locales de las máquinas virtuales en el host ESXi, que luego se transferirán a la computadora que ejecuta el script.

mon-sun – se supone que el script se puede ejecutar diariamente (lo dejaremos así, ya que estableceremos la frecuencia de ejecución de la copia de seguridad a través del programador de Windows).

Además, indicaremos el directorio al que se moverán las copias de seguridad de la VM (C:\magik). El parámetro $(vm) indica que se creará un directorio separado con su nombre para cada máquina virtual, donde se almacenarán los archivos de la máquina virtual.

Nota. En el sitio web del desarrollador se proporciona una descripción detallada de los ajustes de configuración del script y su sintaxis.

scp_bin– ruta a la utilidad scp

Importante. Asegúrese de que el demonio SSH esté habilitado en el servidor ESXi.

VM_BACKUP_VOLUME=/vmfs/volumes/msa2000/backup VM_BACKUP_ROTATION_COUNT=3

VM_BACKUP_VOLUME– un directorio en el servidor ESXi en el que se guardarán las copias de las máquinas virtuales (naturalmente, debería haber suficiente espacio libre en la partición VMFS)

VM_BACKUP_ROTATION_COUNT– el número de copias locales que se almacenarán (en nuestro ejemplo, se almacenarán las últimas 3 copias de seguridad)

Todo lo que queda es usar la utilidad plink (también incluida con Putty) para guardar la clave del host en el caché ssh local. Por ejemplo, así:

PLINK.EXE [correo electrónico protegido] ls /

Ejecutar una copia de seguridad de máquinas virtuales en un host VMWare ESXi

Probemos el script de respaldo. Para hacer esto, abra un símbolo del sistema con derechos de administrador y ejecute el comando:

C:\Magik\MKSBackup\mksbackup.exe -v -c C:\Magik\mksbackup.ini copia de seguridad VMWARE_FROM_WINDOWS

Dónde esta la llave –v indica que se debe mostrar información detallada, -C ruta al archivo de configuración mksbackup.ini, respaldo– significa que necesita iniciar una copia de seguridad, al final se indica el nombre de la tarea del archivo mksbackup.ini(en nuestro ejemplo, la tarea es VMWARE_FROM_WINDOWS).

Si todo está configurado correctamente, la utilidad comenzará a mostrar información detallada sobre el proceso de copia de seguridad en la consola (el proceso de copia de seguridad es bastante largo, por lo que no debes esperar que finalice rápidamente).

Se puede realizar un seguimiento del proceso de copia de seguridad mediante la aparición de eventos de creación/eliminación de instantáneas en la consola de VMware vSphere.

Durante la ejecución del script, las carpetas que contienen archivos de la máquina virtual aparecerán en el directorio de destino.

Después de realizar una copia de prueba, puede pasar a automatizar el proceso de copia de seguridad. Para hacer esto, creemos una nueva tarea del programador de Windows.

Creemos una tarea llamada “Backup ESXi”, que se ejecuta los viernes y ejecuta el comando: C:\Magik\MKSBackup\mksbackup.exe -v -c C:\Magik\mksbackup.ini backup VMWARE_FROM_WINDOWS

En la configuración de la tarea, no olvide especificar que debe ejecutarse con derechos de administrador (la opción "Ejecutar con los privilegios más altos").

Nota. Si la tarea se ejecutará con una cuenta diferente (no aquella con la que se realizaron las pruebas), debe recordar que el caché de la nueva cuenta no contendrá la clave requerida. Para resolver el problema, debe ejecutar el comando plink anterior desde una cuenta nueva.

Desventajas de este método determinado de realizar copias de seguridad de máquinas virtuales:

  • velocidad de respaldo bastante baja
  • Se requiere una gran cantidad de espacio libre para almacenar copias de seguridad de VM

Estas desventajas se compensan con su naturaleza gratuita, pero para soluciones grandes es preferible utilizar productos de copia de seguridad comerciales, como Veeam o HP DataProtector.

Surgió la tarea de organizar copias de seguridad de máquinas virtuales Hyper-V desde hosts de virtualización individuales (sin un clúster) en varios sitios remotos. Debido a que uno de los insumos de esta tarea es la presencia de canales de comunicación muy modestos e inestables, la idea de utilizar un único servidor de respaldo en un sitio central desapareció por sí sola. Porque una cosa es cuando se pueden consolidar copias de seguridad en una ubicación central, teniendo en cuenta los cambios de bloque, mientras se reduce la carga en la red, por ejemplo, con el mismo System Center DPM, y otra muy distinta si, en poco tiempo, debe realizar una recuperación completa de una máquina virtual en un momento determinado a través de estos mismos canales débiles. Por lo tanto, era necesario pensar en cómo organizar la copia de seguridad de las máquinas virtuales directamente en un sitio remoto, siempre que no hubiera un aumento en los costos continuos del software con licencia y del equipo existente.

Sucedió que en estos sitios remotos, además del host de virtualización, hay un servidor antiguo que anteriormente estaba fuera de servicio, pero que funciona bastante bien. Sistema IBM x3200, que se puede utilizar como servidor de archivos para almacenar copias de seguridad de máquinas virtuales. Surgió la idea de instalar discos adicionales en este servidor e implementarlo como sistema operativo base. linux con paquete QUADStor, con la ayuda del cual, a su vez, crea un disco virtual con soporte para deduplicación de bloques y utilizando el protocolo iSCSI presentar este disco al host de virtualización Hiper-V, y ya en el host de virtualización, utilizando el producto, configure la copia de seguridad "en caliente" de las máquinas virtuales en este mismo disco iSCSI. El resultado final debería ser “barato y alegre”. En esta nota describiré el procedimiento para configurar dicho diseño.

Preparando un servidor de archivos basado en Debian Linux con QUADStor

La cesta de discos de nuestro futuro servidor de archivos IBM System x3200 en la configuración existente no admite más de 4 unidades SAS/SATA de 3,5". Teniendo en cuenta que el controlador en este modelo de servidor también es muy modesto (LSI Logic SAS1064ET) y, en pocas palabras, , solo podemos "despojar" o "replicar", crearemos dos pares de discos reflejados: el primero en dos discos SATA de baja capacidad existentes para el sistema operativo Linux y el segundo en dos discos SATA de 1 TB de bajo costo instalados adicionalmente para almacenar copias de seguridad de VM (para el disco virtual QUADStor).

Entonces, sin adornos especiales, instalamos el sistema operativo en el primer par de discos reflejados. DebianGNU/Linux 8.6 (Jessie). Dejamos el segundo par de discos grandes reflejados sin asignar.

Pasemos a la instalación y configuración.

Procedimiento de instalación QUADStor para diferentes distribuciones de Linux se describe en el documentoInstalación/Actualización en RHEL/CentOS 5.x, 6.x, SLES 11 y Debian 6.x, 7.x . Partiendo de que en nuestro caso estamos usando Debian, instalamos los paquetes requeridos previamente:

# apto-obtener instalar uuid-runtime build-essential sg3-utils iotop sysstat lsscsi apache2 psmisc firmware-qlogic linux-headers-`uname -r`

Habilitar soporte CGI para servidor web apache:

# a2enmod cgi

Agregar una regla iptables, permitiendo conexiones entrantes al servidor web y guardando las reglas actuales:

# iptables-A ENTRADA -i eth0 -p tcp -m tcp --dport 80 -j ACEPTAR # iptables-guardar> /etc/iptables.conf

Reinicie el servidor y asegúrese de que el servicio del servidor web se inicie correctamente cuando se inicie el sistema:

# sistemactl estado apache2.servicio

Ahora descargue e instale el paquete principal. Virtualización del almacenamiento QUADStor(tome el enlace a la versión actual del paquete aquí:Descargas de virtualización de almacenamiento ):

# mkdir~/QUADStor-files # obtener http://www.quadstor.com/virtentdub3z/quadstor-virt-3.2.11-debian7-x86_64.deb-PAG~/QUADStor-files # dpkg-i ~/QUADStor-files/quadstor-virt-3.2.11-debian7-x86_64.deb ... Realizando postinstalación. Espere... Sincronizando el estado de quadstor.service con sysvinit usando update-rc.d... Ejecutando /usr/sbin/update-rc.d quadstor defaults Ejecutando /usr/sbin/update-rc.d quadstor enable Se requiere compilación módulos del kernel Ejecutando /quadstor/bin/builditf. Esto puede tomar unos pocos minutos. Activadores de procesamiento para systemd (215-17+deb8u5) ...

La instalación del paquete debería completarse sin errores.

Después de la instalación del servicio. quadtor no se iniciará, pero durante el proceso de instalación este servicio debería registrarse automáticamente en el inicio cuando se inicia el sistema. Reiniciamos el servidor y nos aseguramos de que después de que se inicie el sistema, el servicio se inicie automáticamente y con éxito:

# sistemactl estado quadstor.servicio

Comprobamos el acceso a la interfaz web siguiendo el enlace http://(servidor). El servidor web tendrá que redirigirnos al enlace http://(servidor)/cgi-bin/system.cgi

Una vez completada la instalación de QUADStor, realizamos la configuración inicial, que no es fundamentalmente diferente de, a saber:

  • Configurar restricciones de acceso al servidor web apache, y también, si es necesario, configuramos soporte HTTPS;
  • Ir a la interfaz de gestión web QUADStor y crear allí Grupo de almacenamiento;
  • Agregar un disco ( Almacenamiento físico) V. Grupo de almacenamiento(en este caso, como disco agregado utilizamos el segundo par de discos reflejados de discos grandes en nuestro servidor, que se presentan en el sistema como un solo dispositivo de disco);
  • Crear un disco virtual Disco virtual.

Una vez creado el disco virtual QUADStor, configuraremos el acceso al mismo mediante el protocolo iSCSI. En general, la información sobre cómo es posible acceder a los discos virtuales de QUADStor se puede encontrar en el documentoAcceso a discos virtuales (VDisks) .

Funcional Destino iSCSI implementado en QUADStor usando el servicio ietd, que se abre en el sistema tcp-oyente en el puerto 3260 , así que necesitamos iptables cree la regla de permiso apropiada:

# iptables-A ENTRADA -i eth0 -p tcp -m tcp --dport 3260 -j ACEPTAR # iptables-guardar> /etc/iptables.conf

Para establecer los ajustes de configuración iSCSI con respecto al disco virtual que creamos, vayamos a las propiedades de este disco en la consola web de QUADStor ( Discos virtuales > Modificar > Configuración iSCSI):

Aquí en el campo IQN Veremos el identificador de disco iSCSI generado automáticamente y para restringir el acceso a este disco configuraremos los valores del campo. Usuario entrante Y Contraseña entrante. En estos campos ingresaremos un nombre de usuario y contraseña arbitrarios que nuestro servidor de archivos solicitará al cliente iSCSI (Iniciador) al conectarse a este disco virtual QUADStor.

Conexión de un disco QUADStor a un host de virtualización en Windows Server

Dirigiéndose a nuestro host de virtualización basado en Hyper-V Servidor Windows 2012 R2, vamos a abrir Panel de control y encuentra el subprograma en él Iniciador iSCSI. La primera vez que acceda a este subprograma, el sistema le informará de la necesidad de iniciar un servicio del sistema necesario para el correcto funcionamiento del protocolo iSCSI. Aceptamos iniciar este servicio y transferirlo al estado de inicio automático al iniciar el sistema:

Después de iniciar el servicio, se abrirá el subprograma de administración iSCSI, donde en la pestaña Descubrimiento presionemos el botón Descubra el portal para agregar información sobre nuestro servidor de archivos basado en Linux

En la ventana que se abre, ingresa FQDN nombre o dirección IP Servidores Linux (deje el puerto predeterminado - 3260 ) y presione DE ACUERDO

Después de eso, en la parte tabular del campo. Objetivos descubiertos debería aparecer el mencionado anteriormente IQN de nuestro disco virtual QUADStor con el estado Inactivo. Es decir, el disco fue detectado exitosamente en el servidor Linux remoto y ahora, para conectar este disco, usaremos el botón Conectar.

Agregue esta conexión a la lista de objetivos favoritos Para que el disco se agregue a la lista de discos que se conectan automáticamente cuando se inicia el sistema, haga clic en el botón para configuración avanzada de conexión de disco - Avanzado

En la ventana que se abre, habilita la opción Habilitar el inicio de sesión CHAP y especifique el nombre de usuario y la contraseña para acceder al disco QUADStor que configuramos anteriormente.

Guarde la configuración realizada cerrando las ventanas con el botón DE ACUERDO

Si todo se hace correctamente, el estado del disco debería cambiar a Conectado.

vamos al marcador Objetivos favoritos y asegúrese de que el disco esté en la lista para conexión automática cuando se inicie el sistema operativo.

En este punto, se puede considerar completa la conexión del disco virtual QUADStor a través del protocolo iSCSI. Ahora necesita inicializar este disco en el sistema y crear una partición con un sistema de archivos. NTFS. Para ello vayamos al equipo. Gestión de discos(diskmgmt.msc), seleccione el disco conectado y póngalo en el estado En línea

Luego inicializaremos el disco. Inicializar disco

Se le pedirá que seleccione el tipo de partición del disco. Dado que estamos utilizando un disco virtual QUADStor, es probable que con el tiempo queramos aumentar el tamaño del disco y será más grande de lo que es ahora. Permítanme recordarles que el disco virtual QUADStor se puede aumentar en cualquier momento para 64TB, a pesar de que el tamaño real de los discos físicos en los que se encuentra este disco virtual será pequeño y/o seguirá siendo el mismo. Y dado el hecho de que en MBR hay un límite en el tamaño de las unidades lógicas en 2TB, entonces en nuestro caso tiene sentido elegir el tipo de marcado GPT:

Una vez que se haya inicializado el disco y se haya creado una tabla de particiones en él, crearemos una partición con un sistema de archivos en este disco. NTFS

Asignemos una letra separada a este disco, por ejemplo E:\, y esperemos a que se complete el proceso de formateo, que, dependiendo del tamaño del disco, puede llevar algún tiempo.

Al finalizar el proceso de formateo, nos aseguraremos de que el disco esté disponible para nosotros en el sistema, y ​​podamos crear, modificar y eliminar carpetas y archivos en él. Después de estas comprobaciones, reiniciaremos nuestro host de virtualización y nos aseguraremos de que durante el proceso de inicio del sistema el disco esté conectado automáticamente y sea totalmente accesible.

Instalación de Veeam Backup Edición gratuita 9.5

Para hacer una copia de seguridad de las máquinas virtuales Hyper-V usaremos el programa Veeam Backup Edición gratuita 9.5, lo que nos permitirá crear una copia de seguridad completa de la VM sin necesidad de apagarla.

Puede conocer las principales características de este producto en el documento. Descripción del producto.

Los requisitos del sistema se pueden encontrar descargando el documento. Notas de lanzamiento.

El CLUF está disponible aquíAcuerdo de licencia de software para usuario final de Veeam .

Ultima versión 9.5.0.711 , actualmente disponible, se puede descargar del sitio web de Veeam.

Archivo de imagen VeeamBackup&Replication_9.5.0.711.iso Con un tamaño de 1,5 GB después de la descarga, lo copiamos a nuestro host de virtualización basado en Windows Server y lo montamos en el sistema. Por ejemplo, usando Potencia Shell puedes hacerlo así:

Mount-DiskImage -ImagePath " C:\Temp\VeeamBackup&Replication_9.5.0.711.iso"

En el disco montado, ejecute el programa de instalación Setup.exe, lea y acepte el acuerdo de licencia, haga clic en Próximo

En el paso de ingresar la clave de licencia, dejamos todo sin cambios. Sin clave, el programa funcionará en modo Edición gratuita con funcionalidad limitada, que será suficiente para nuestra tarea.

Vale la pena señalar que, de hecho, se instala una copia completa en el sistema. Copia de seguridad y replicación de Veeam, y si no se especificó una clave de licencia durante la instalación inicial, puede agregarla a la aplicación más adelante y actualizar su modo operativo a ediciones Estándar, Empresa o Empresa Plus. Puede obtener más información sobre las diferencias entre las versiones gratuita y de pago en el documento. Veeam Backup: gratuito frente a pago

En el siguiente paso, sin cambiar el conjunto de componentes a instalar, haga clic nuevamente Próximo

Los componentes se instalan adicionalmente desde la distribución, por lo que no es necesario descargar nada por separado. Una vez implementados los componentes necesarios, comenzamos la verificación nuevamente usando el botón Repetición y pasar a la siguiente etapa de instalación - Próximo.

Aquí veremos una pantalla resumen de la configuración actual con la que se instalará la aplicación. Si habilitas la opción Déjame especificar diferentes configuraciones, entonces todas las configuraciones especificadas se pueden cambiar antes de comenzar el proceso de instalación real. Por ejemplo, en lugar de la instancia con nombre predeterminado Servidor SQL 2012 expreso, puede especificar la instalación en una instancia existente de SQL Server, cambiar el nombre de la base de datos, la cuenta de servicio, la ubicación del directorio o los números de puerto. En la mayoría de los casos, puede dejar la configuración propuesta en la configuración predeterminada y hacer clic en Instalar.

Durante el proceso de instalación, se implementará una instancia con nombre en nuestro host de virtualización. Microsoft SQL Server 2012 SP3 el personal editorial Expresar(VEEAMSQL2012) y en él se creará la base de datos VeeamBackup. Esperemos a que se complete el proceso de instalación.

Registrar un host de virtualización con Veeam Backup

Al final del proceso de instalación, inicie el acceso directo desde el escritorio o el menú de inicio Consola de respaldo y replicación de Veeam. Usamos como servidor de conexión. servidor local y puerto predeterminado 9392 . Habilitemos la opción para usar las credenciales del usuario actual. Usar autenticación de sesión de Windows y haga clic Conectar

En primer lugar, registremos nuestro host de virtualización en el programa para que sea posible realizar copias de seguridad de las máquinas virtuales ubicadas en este host. Para hacer esto, en la pestaña MAQUINAS VIRTUALES en el árbol de infraestructura seleccionamos Microsoft Hyper-V y en el menú contextual o en la cinta superior de botones seleccione Agregar servidor.

En el Asistente para agregar servidor que se abre, ingrese el nombre FQDN de nuestro servidor...

En movimiento Tipo seleccione el tipo de servidor Hyper-V. En nuestro caso, se trata de un host que funciona por separado. Ser único

En movimiento Cartas credenciales Deberá especificar una cuenta administrativa a través de la cual Veeam Backup se conectará al host de virtualización y accederá a las máquinas virtuales para las operaciones de respaldo. En mi opinión, para ello sería más correcto crear una cuenta de servicio separada. En este caso, puede utilizar una cuenta local creada en el host de virtualización o una cuenta de dominio. En nuestro ejemplo, seleccionamos una cuenta de dominio a la que se le otorgaron derechos administrativos en el host de virtualización.

Hacer clic Próximo y espere a que se complete la configuración de Veeam Backup y el host de virtualización conectado

Después de cerrar el Asistente para agregar host, la consola de Veeam Backup debería mostrar una lista de máquinas virtuales ubicadas en el host agregado.

Ahora puede pasar a comprobar la funcionalidad de copia de seguridad de las máquinas virtuales utilizando Veeam Backup.

Verificar la copia de seguridad de VM en Veeam Backup

En el disco que conectamos anteriormente mediante el protocolo iSCSI, crearemos un directorio en el que se colocarán copias de seguridad completas de las máquinas virtuales realizadas desde Veeam Backup. En nuestro caso, este será el directorio E:\VMBackups.

Luego, en la consola de Veeam Backup, seleccione alguna máquina virtual y llame al elemento del menú correspondiente. VeeamZIP

En la ventana que se abre, especifique la ruta al directorio recién creado para almacenar copias de seguridad, si es necesario, defina los parámetros para eliminar copias de seguridad antiguas y desactive la compresión. La compresión de las copias de seguridad de Veeam Backup es sin duda algo interesante, pero en nuestro caso, habilitar la compresión conducirá a bajas tasas de deduplicación en el disco QUADStor (probado en experimentos prácticos). Habiendo configurado todos los parámetros de la sesión de respaldo actual, haga clic en DE ACUERDO

El inicio de una tarea de copia de seguridad irá acompañado de una ventana de información con indicadores de estado de la tarea que se está realizando.

Durante la copia de seguridad también podremos ver qué hay en la consola Administrador de Hyper-V la máquina virtual asume el estado apropiado.

Como resultado de ejecutar la tarea de copia de seguridad, se creará una copia de seguridad completa de la VM en el directorio que especificamos en forma de archivo con la extensión VBK. Este tipo de archivo está asociado en el sistema a Veeam Backup y al hacer doble clic en él, automáticamente se iniciará la consola de Veeam Backup y en ella se abrirá un formulario, desde el cual podrá, si es necesario, realizar la operación de restauración tanto del máquina virtual completa y archivos individuales dentro de la VM ( Recuperación instantánea a nivel de archivos).

Por tanto, creemos que la copia de seguridad, como tal, nos funciona, pero ahora necesitamos solucionar otro problema importante. El caso es que la edición gratuita de Veeam Backup tiene limitaciones que no nos permiten configurar copias de seguridad programadas directamente desde la interfaz del programa. Sin embargo, Veeam Backup incluye un conjunto de cmdlets Potencia Shell, que puede utilizar para invocar una tarea de copia de seguridad en Veeam Backup. Y si combinas esta posibilidad con Programador de tareas de Windows (Programador de tareas), entonces, como resultado, podemos obtener una solución completamente viable al problema de automatizar el lanzamiento de copias de seguridad según un cronograma.

Automatización de la ejecución de copias de seguridad de VM

Puede obtener ayuda en línea para los cmdlets de Veeam Backup PS aquíVeeam Backup & Replication 9.5 - Referencia de PowerShell . Y un script de PowerShell listo para usar que explota los cmdlets de Veeam Backup, en particular Inicio-VBRZip , lo podemos encontrar en el artículoVeeam Backup Free Edition: ¡Ahora con PowerShell! . Modifiqué un poco este script para agregar la capacidad de notificar por correo electrónico solo si ocurría algún error durante el proceso de copia de seguridad.

# ############################ Variables definidas por el usuario ################### # ######### Nombres de las máquinas virtuales a respaldar separados por coma (obligatorio). Por ejemplo, $VMNames = “VM1”, “VM2”$VMNames = " KOM-AD01-WS305 " , " KOM-AD01-DEV03 "# Nombre de las máquinas virtuales host de Hyper-V en las que se realizará la copia de seguridad (obligatorio)$NombreHost = "KOM-AD01-VM14"# Directorio al que deben ir las copias de seguridad de la máquina virtual (obligatorio; por ejemplo, C:\Backup)$Directorio = "E:\VMBackups"# Nivel de compresión deseado (opcional; valores posibles: 0: ninguno, 4: compatible con deduplicación, 5: óptimo, 6: alto, 9: extremo)$Nivel de compresión = 0# Poner en modo inactivo la máquina virtual al tomar una instantánea (opcional; se requieren VMware Tools; valores posibles: $True/$False)$EnableQuiescencia = $Verdadero# Proteja la copia de seguridad resultante con una clave de cifrado (opcional; $True/$False)$EnableEncryption = $Falso# Clave de cifrado (opcional; ruta a una cadena segura)$Clave de cifrado = ""# Configuración de retención (opcional; de forma predeterminada, los archivos VeeamZIP no se eliminan y se mantienen en la ubicación especificada durante un período de tiempo indefinido. # Valores posibles: Nunca, Esta noche, MañanaNoche, In3days, In1Week, In2Weeks, In1Month)$Retención = "En1Semana"# ############################ Configuración de las notificaciones #################### ## ######## Habilitar notificación (opcional) # Valores posibles: 0 - Ninguno, 1 - Sólo advertencias y errores, 2 - Todas las notificaciones$EnableNotificación = " 1 "$SMTPServer = "KOM-SMTP.holding.com"$Correo electrónicoDe = " [correo electrónico protegido] " $correo electrónico a = " [correo electrónico protegido] " $EmailSubject = "Notificación de copia de seguridad de VEEAM"# ############################ Formato de correo electrónico #################### ## #######$estilo = " " # ############################ Variables definidas por el usuario final ################## #### ##########Asnp VeeamPSSnapin$Servidor = Get-VBRServer -nombre $NombreHost$MesssagyBody =@() foreach ($VMName en $VMNames) ( $VM = Buscar-VBRHvEntity -Nombre $VMName -Servidor $ServidorSi ($EnableEncryption) ( $Clave de cifrado = Agregar-VBREncryptionKey -Contraseña ( gato $Clave de cifrado | Convertir a cadena segura) $ZIPSession = Inicio-VBRZip -Entidad $VM -Carpeta $Directorio -Compresión $Nivel de compresión -DisableQuiesce:(! $EnableQuiescencia ) -AutoDelete $Retención -EncryptionKey $EncryptionKey } Demás( $ZIPSession = Inicio-VBRZip -Entidad $VM -Carpeta $Directorio -Compresión $Nivel de compresión -DisableQuiesce:(! $EnableQuiescencia ) -AutoDelete $Retención } Si ($EnableNotification -en " 1 ", " 2 ") ( $SesionesTarea = $ZIPSession.GetTaskSessions().logger.getlog().updatedrecords$Sesiones fallidas = $Sesiones de tareas | donde ( $_ .status -eq "EWarning" -o $_ .Status -eq "EFailed") Si ($Sesiones fallidas -ne $Nulo) ( $MesssagyBody = $MesssagyBody + ($ZIPSession | Select-Object @(n = " Nombre " ;e = (($_ .name).Substring(0 , $_ .name.LastIndexOf(" (" ))) ) ,@(n = " Hora de inicio " ;e = ($_ .CreationTime)),@(n = " Hora de finalización " ;e = ($_ .EndTime)),Resultado,@(n = " Detalles " ; e = ( $Sesiones fallidas.Título))) ) Más { $MesssagyBody = $MesssagyBody + ($ZIPSession | Seleccionar-Objeto @(n = " Nombre " ;e = (($_ .name).Substring(0 , $_ .name.LastIndexOf(" (" )))) , @(n = " Hora de inicio " ;e = ($_ .CreationTime)),@(n = " Hora de finalización " ;e = ( $_ .EndTime)),Resultado,@(n = " Detalles " ;e = (($Sesiones de tareas | ordenar tiempo de creación -Descendente | seleccionar -primero 1).Título))) ) ) ) Si ($EnableNotification -in " 1 ", " 2 ") ( Si (($EnableNotification -eq " 1 " ) -Y ($FailedSessions -eq $Null)) (salir) De lo contrario( $Mensaje = Nuevo objeto System.Net.Mail.MailMessage $EmailFrom, $EmailTo$Mensaje .Asunto = $Asunto de correo electrónico$Mensaje .IsBodyHTML = $Verdadero$mensaje .Cuerpo = $MesssagyBody | ConvertTo-Html -head $estilo | Fuera de cuerda$SMTP = Nuevo objeto Net.Mail.SmtpClient ($SMTPServer) $SMTP .Enviar($Mensaje) } }

Abra la consola con derechos de administrador. WindowsPowerShell y ejecute una ejecución de prueba del script ejecutando el comando:

& "C:\Herramientas\VeeamZip.ps1"

El script en ejecución mostrará el estado de la tarea de crear una copia de seguridad de las máquinas virtuales:

Una vez que estemos convencidos de que el script se ejecuta correctamente cuando se inicia manualmente, configuraremos el inicio periódico del script utilizando Programador de tareas Ventanas. Como comando ejecutado en la tarea del Programador, especificaremos el inicio powershell.exe con parámetros:

powershell.exe-NoProfile -comando "C:\Tools\VeeamZip.ps1"

La configuración de la copia de seguridad se puede considerar completa.

Comprobando el resultado

Entonces, en nuestro ejemplo, el script PS realiza una copia de seguridad programada (por la noche, una vez al día) de dos máquinas virtuales con eliminación automática de las copias de seguridad de más de siete días. Después de siete días, comprobaremos el resultado en nuestro host de virtualización.

Como puede ver, en realidad tenemos 7 copias de seguridad completas para cada una de las dos máquinas virtuales que especificamos en el script. El tamaño total utilizado por estas copias de seguridad es de aprox. 700GB. Al mismo tiempo, si miramos la consola web de QUADStor y observamos las propiedades del grupo de discos a partir del cual se creó el disco virtual, veremos que, teniendo en cuenta la deduplicación, se utiliza la capacidad real del disco físico. no más que 100GB.

En mi opinión, el resultado parece bastante bueno. Y en esta situación, si es necesario, podemos aumentar el periodo de almacenamiento de las copias de seguridad a dos semanas, o incluso hasta un mes. Solo recuerde que para esto necesitaremos aumentar el tamaño del disco virtual QUADStor y luego aumentar el disco lógico a través del complemento. Gestión de discos en el host de virtualización.

Copia de seguridad gratuita de máquinas virtuales basadas en VMware ESXi

Para VMware ESXi pregunta copia de seguridad de la máquina virtual es particularmente agudo. El software gratuito adicional es incómodo de usar debido a su funcionalidad limitada. Por lo tanto nuestro respaldo se basará en un script gratuito - guetoVCB. Esta es la mejor versión de los guiones existentes, aunque tiene un nombre tan divertido y todo el proyecto en su conjunto - www.virtuallyghetto.com, autor William Lam. Su algoritmo consiste en crear una instantánea y clonar una VM.

Para configurar un esquema de respaldo completo, necesitamos:

  • NFS servidor para almacenar archivos;
  • conexión a través de SSH a ESXi;
  • guion guetoVCB.sh agregado al servidor ESXi (a la raíz o carpeta de la futura copia de seguridad). Esto se hace a través de SFTP de cualquier forma que le resulte conveniente, por ejemplo, FileZilla;
  • otorgamos derechos para ejecutar el script copiado;

Ahora veamos cada punto con más detalle. Para aumentar el rendimiento y la tolerancia a fallos de un servidor de archivos/servidor de respaldo, es mejor utilizar RAID10. En este caso, se prefieren el sistema operativo Linux (Debian, Ubuntu, “conveniente para usted”) y el sistema de archivos. XFS, porque En esta configuración, la velocidad de escritura (la principal prioridad para una copia de seguridad rápida) será mayor.

Nosotros ya lo tenemos, pero también puedes hacer todo en cliente vSphere: Configuración > Software > Perfil de seguridad > Propiedades… > Soporte técnico remoto (SSH) > Opciones… > Iniciar o Detener.

Pasemos a la configuración del script. guetoVCB.sh, los principales parámetros que necesitamos:

VM_BACKUP_VOLUME: ruta a la carpeta de respaldo, en mi caso /vmfs/volumes/datastore1/backup
DISK_BACKUP_FORMAT: formato de disco, lo mejor para copias de seguridad es delgado
VM_BACKUP_ROTATION_COUNT: número de copias de seguridad almacenadas (para cada máquina virtual), tengo 3
ADAPTER_FORMAT - tipo de adaptador, en mi caso - lsilogic

Los parámetros restantes son responsables de copiar archivos a través de la red y notificaciones por correo electrónico. ¡Los parámetros de configuración más detallados se describen en el sitio web del desarrollador!

Si es necesario copiar no todas las máquinas virtuales, se crea un archivo con una lista de las máquinas virtuales incluidas en la copia de seguridad. Crea un archivo como este en vi:

  • vaya a la carpeta con el script - cd /ghettovcb o copia de seguridad
  • vi lista virtual
  • presione "a" e ingrese los nombres de las VM (cada nombre en una nueva línea)
  • presione "esc" y para guardar los cambios - ":wq" (sin guardar ":q")

Ejecutemos el script:

  • ./ghettovcb.sh -a -l ./log.txt: comienza a copiar todas las máquinas y escribe un archivo de registro en el mismo directorio
  • ./ghettovcb.sh -f ./vmlist -l ./log.txt: comienza a copiar las máquinas especificadas en el archivo vmlist, los registros se guardan en el mismo directorio
  • ./ghettovcb.sh -f ./vmlist -g ./ghettovcb.conf -l ./log.txt - similar, solo usando el archivo .conf

La ejecución correcta del script se indicará mediante una línea con la inscripción: “###### Estado final: ¡Todas las máquinas virtuales respaldadas correctamente! ######". Si este no es el caso, verifique los registros, la sintaxis de los comandos y las rutas de los archivos.

Para agregar una línea para que se ejecute según una programación (en cron), debe editar el archivo “/etc/rc.local.d/local.sh” haciendo lo siguiente:

  • vaya al directorio /etc/rc.local.d/local.sh
  • chmod u+w local.sh
  • abra el archivo con un editor - vi local.sh
  • habilitar la edición de las teclas “i” o “insertar”
  • agregue lo siguiente antes de la línea exit0:

/bin/kill $(cat /var/run/crond.pid)
/bin/echo 0 20 * * * /vmfs/volumes/datastore/script/ghettoVCB.sh -a -l /vmfs/volumes/backup/log/log.txt >> /var/spool/cron/crontabs/root
/bin/crond

  • Al mismo tiempo, indicamos el horario (la hora se indica en UTC, es decir, para MSK -3 horas), es decir. "00 20 * * * "
  • presione "esc" y guarde - "Shift+:" y "wq"
  • al final ejecutamos chmod u-w local.sh

Por lo tanto, a las 23:00 hora de Moscú, se realizará una copia de seguridad de los archivos de la máquina virtual. En nuestro caso quedarán 3 ejemplares.

Configurar una copia de seguridad para ESXi mediante guetoVCB.sh terminado.

Una pequeña prueba:
Red local: gigabit.
Para almacenamiento local (hardware RAID 10 de 4 discos de 10K): “time dd if=/dev/zero of=/vmfs/volumes/datastore/temp bs=1M count=1K” 8 segundos.
En almacenamiento “linux” (software RAID 0 de 3 discos de 7,5 K): “time dd if=/dev/zero of=/vmfs/volumes/linbackup/temp bs=1M count=1K” 12 segundos.
En almacenamiento de Windows (hardware RAID 5 de 10 discos de 10K): “time dd if=/dev/zero of=/vmfs/volumes/winbackup/temp bs=1M count=1K” 1 minuto 44 segundos (estoy sorprendido).

los resultados hablan por si mismos. Sí, el almacenamiento ganador tiene RAID 5, pero es poco probable que sea el único culpable de este resultado.

Hemos solucionado el sistema de almacenamiento, ahora necesitamos automatizar la copia de seguridad. La mejor herramienta gratuita es el script ghettoVCB; para utilizarlo es necesario acceder al host ESXi a través de SSH. Resulta que hay una forma muy sencilla de habilitar y deshabilitar el acceso directamente desde vShere Client: Configuración > Software > Perfil de seguridad > Propiedades… > Soporte técnico remoto (SSH) > Opciones… > Iniciar o Detener. Creo que quedará más claro con estas capturas de pantalla:

Descargue la última versión del script. Puede volverse "verdadero" haciendo lo que está escrito en la página del script en la sección "Configuración:", pero lo hice más simple: descomprimí el archivo en mi computadora, en lugar de editar el archivo de configuración, edité el script en sí, copié guárdelo en el almacenamiento local (a través de "Examinar almacén de datos").

Aquí están los principales parámetros:

VM_BACKUP_VOLUME - ruta a la carpeta de respaldo, en mi caso /vmfs/volumes/linbackup
DISK_BACKUP_FORMAT: formato de disco, lo mejor para copias de seguridad es delgado
VM_BACKUP_ROTATION_COUNT: número de copias de seguridad almacenadas (para cada máquina virtual), tengo 2
ADAPTER_FORMAT - tipo de adaptador, tengo lsilogic

No es necesario editar el resto de parámetros, pero si está interesado, todos los parámetros se describen en detalle en la página del script, aunque en inglés, casi todos los parámetros están escritos en ruso.

Entonces, el script se ha copiado al almacenamiento local, conéctese a través de ssh, mueva el script a algún lugar más cercano a la raíz, por ejemplo a /ghettovcb/ghettovcb.sh, si no necesita hacer una copia de seguridad de todas las máquinas virtuales, debe crear una archivo con una lista de máquinas virtuales de las que se realizará una copia de seguridad:
cd /ghettovcb
vi lista virtual
presione “a”, ingrese los nombres de las máquinas virtuales, cada una en una nueva línea, presione “esc” y para guardar los cambios “:wq” o salir sin guardar “:q”

Los saltos de línea deben ser “\n”; cuando lleva “\r\n”, el script generará un error, por lo que no debe crear una lista en el Bloc de notas y luego copiarla al almacenamiento si nunca ha usado Notepad+ o EmEditor y no lo hace. No sé qué es "\n" y "\r\n"; mejor cree una lista en vi.

Intentemos ejecutar el script:

./ghettovcb.sh -f ./vmlist -l ./log.txt

./ghettovcb.sh -f ./vmlist -g ./ghettovcb.conf -l ./log.txt
El script funciona y produce mucha información, si al final del resultado vemos “###### Estado final: ¡Todas las máquinas virtuales respaldadas están bien ######” entonces todo está bien, de lo contrario leemos! log.txt y descubrir qué no hicimos.
Ahora necesitamos crear un cronograma para las copias de seguridad.
cd /var/spool/cron/crontabs
chmod u+w raíz
raíz vi
presione “a”, escriba un horario, solo tenga en cuenta que la hora está indicada en UTC, es decir para Moscú esta es la hora local menos tres horas
00 20 * * * /ghettovcb/ghettovcb.sh -f /ghettovcb/vmlist -l /vmfs/volumes/linbackup/logs/`date +%F`.txt
o si creó un archivo de configuración
00 20 * * * /ghettovcb/ghettovcb.sh -f /ghettovcb/vmlist -g /ghettovcb/ghettovcb.conf -l /vmfs/volumes/linbackup/logs/`date +%F`.txt
presione "esc" y guarde ":wq"
en custodia
chmod u-w raíz

Ahora, todos los días a las 20:00 UTC (23:00 hora de Moscú) se iniciará el script, los registros sobre su ejecución se guardarán en la carpeta de registros, un registro separado para cada día.

Según los registros, me lleva unas 4 horas hacer una copia de seguridad, calculé la velocidad: unos 4 GB por minuto, es decir. Aproximadamente 70 MB por segundo, nada mal. 2,7 TB de almacenamiento son suficientes para almacenar dos copias de cada máquina virtual, esto es suficiente, además queda espacio libre y es necesario porque... Primero se realiza una tercera copia de seguridad y sólo después de su creación se elimina la copia más antigua.
Bueno, una cosa más en contra del almacenamiento de "Windows": intenté hacer copias de seguridad con un script, el almacenamiento simplemente se cayó y el script terminó con un error. Entiendo que el punto es que la grabación NFS se configuró incorrectamente, pero la configuración era predeterminada y realmente no quería entender el "ajuste".

El experimento fue exitoso, puede comprar un servidor con buenos discos, RAID 10 está planeado para 5 TB, esto debería ser suficiente para futuras máquinas virtuales.

Etiquetas: vmware, vsphere, esxi, copia de seguridad, copia de seguridad