Veeam: Active Full Backup vs Synthetic Full Backup

[Total: 12    Average: 3.6/5]
Hola a todos!  Hoy vengo nuevamente a hablarles de Veeam, en donde realizaremos una comparación entre realizar un Active Full Backup vs Synthetic Full Backup.   En esta comparación revisaremos que diferencia ambos métodos de backup desde el punto de vista de la capacidad, y del impacto de la performance en el Storage de producción y en el Repositorio de Backup.
En primer lugar veamos como funciona cada método de Backup

Active Full Backup

Cada vez que ustedes configuran un Job de backup con Veeam, independiente del método de respaldo configurado, la primera ejecución de dicho Job siempre generará un respaldo Full de las VM asociadas al Job, el cual corresponde más específicamente a un respaldo Active Full.
Del mismo modo, cuando configuramos un Job de Backup con el método Forward Incremental, podemos configurar un Full Backup periódico de manera de evitar que la cadena de respaldos sea demasiado extensa, y así además facilitar la aplicación de las políticas de retención configuradas (Ver post anterior que habla en detalle sobre estas políticas).
Un respaldo Active Full produce un respaldo completo de una o más VM, en donde Veeam obtiene los datos para este respaldo completamente desde el Storage de Producción en el cual está hospedada la VM a respaldar.  Estos datos son luego comprimidos, deduplicados y almacenados en el Repositorio seleccionado, en un archivo con extension .VBK.
NOTA: Un respaldo de tipo Active Full genera solo escrituras secuenciales en el Repositorio de Respaldo, por lo que es un buen método de Backup cuando la performance del Repositorio es limitada.
Veamos ahora como se lleva a cabo la creación de un Active Full Backup en un Job con respaldos incrementales diarios, y Active Full Backup los días Sábado:
  • La primera ejecución del Backup Job generará un Active Full Backup, obteniendo toda la data desde el Storage de Producción.

  • Durante los siguientes dias, el Job generará respaldos incrementales según lo configurado en el Job.

  • El dia sábado, según lo programado, se genera un nuevo Active Full Backup, obteniendo nuevamente toda la data desde el Storage de Producción.

Un punto que tienen que tener también en consideración, es que cada vez que ustedes lanzan un respaldo Active Full en un Backup Job, la cadena de respaldos incremental actual es reseteada.  Es decir, todos los nuevos respaldos incrementales que se generen a partir de la creación del Active Full Backup utilizarán este respaldo como un nuevo punto inicial en la cadena de respaldos.   La cadena de respaldo previa (Respaldo Full + Incrementales) permanecerán en el Repositorio hasta que sea eliminada automáticamente según la política de retención configurada en el Backup Job.
Ustedes pueden configurar un Backup Job para ejecutar un Active Full Backup de manera periódica.  Del mismo modo, ustedes pueden solicitar la creación de un nuevo Active Full Backup para un Backup Job en cualquier momento, ejecutándolo de forma manual desde la consola de Veeam Backup Server.

Synthetic Full Backup

Ya vimos que en un Active Full Backup, toda la data de la VM a respaldar es obtenida desde el Storage de Producción (Datastore).    En algunas ocasiones, ejecutar un Active Full Backup de manera periódica no es una opción debido principalmente a que genera un uso intensivo de los recursos de la infraestructura productiva, además de consumir una cantidad importante de ancho de banda en la red SAN o LAN (dependiendo del método de transporte utilizado)
Por otro lado, un Synthetic Full Backup utiliza la data que ya se encuentra en un Repositorio de Respaldo para “sintetizar” un respaldo Full, sin tener que recurrir al Storage de Producción (Datastores) para obtener toda la data requerida para crear el respaldo.   En este caso, Veeam accede a la cadena de respaldo existente (Full Backup + respaldos incrementales) en el Repositorio, consolida los datos de la o las VMs a partir de esta cadena de respaldo, y escribe los datos consolidados en un nuevo archivo de Backup (VBK).
Si lo vemos desde el punto de vista de los datos respaldados, un Synthetic Full Backup es idéntico a un Active Full Backup, de hecho en ambos casos obtendremos un archivo .VBK que contendrá toda la data de la o las VMs respaldadas.  La diferencia entre un Synthetic Full y un Active Full se limita básicamente a la forma en que los datos a ser respaldados son obtenidos.
NOTA: El primer respaldo de cualquier Backup Job, es SIEMPRE un Active Full Backup, independiente de la configuración de Synthetic Full Backup periódicos.
El uso de Synthetic Full Backup tiene algunas consideraciones:
  • Debido a que la mayor parte de los datos son obtenidos de los respaldos ya existentes en el Repositorio, se reduce el uso de los recursos de red SAN o LAN.   Recordemos que un Active Full Backup obtiene los datos de las VM desde el Datastore usando la red SAN o LAN dependiendo del modo de transporte utilizado.
  • Del mismo modo, al no tener que obtener los datos desde el Storage Productivo, se reduce el impacto en este Storage durante las operaciones de Backup, debido a que los datos en su mayoría no serán obtenidos desde este Storage.
  • Por otro lado, un respaldo Synthetic Full genera un mayor impacto en el Repositorio de Respaldo, por lo que si la performance (IOPS) del dispositivo de almacenamiento utilizado para respaldos es limitada (lo cual ocurre con mucha frecuencia), la creación de un Synthetic Full podría tomar un tiempo considerable (Ver post sobre Impacto de métodos de backup en la performance) y afectar la performance de otros Backup Jobs que se estén ejecutando al mismo tiempo que el Synthetic Full.
  • Así mismo no se recomienda el uso de Synthetic Full en appliance de Deduplicación, debido a que estos appliances no están optimizados para operaciones de lectura, y los Synthetic Full Backup requieren leer los archivos de respaldo anteriores para “sintetizar” un nuevo respaldo full.
    • En un appliance de Deduplicación, para poder leer un bloque de datos, este debe ser re-hidratado, es decir se debe deshacer el proceso de deduplicación aplicado sobre este bloque de datos.
    • Esto genera una mayor latencia en operaciones de lectura, y como consecuencia, el tiempo de ejecución de un Synthetic Full aumenta dramáticamente.
  • La excepción son los Appliance de Deduplicación con integración con Veeam:
    • EMC Data Domain con DDBoost
    • HPE StoreOnce con Catalyst
    • Exagrid.
Veamos ahora como se lleva a cabo la creación de un Synthetic Full Backup en un Job con respaldos incrementales diarios, y Synthetic Full Backup los días Sábado.
  • El dia en que esté programado el Synthetic Full Backup (Sábado), Veeam va a ejecutar el Backup Job de manera regular para generar el respaldo incremental programado para el mismo dia.
    • Durante la ejecución del Job, Veeam creará este respaldo incremental de la manera normal, es decir obteniendo los datos desde el Storage de Producción (Datastore), creando un nuevo respaldo incremental en la cadena de respaldo (VIB).
    • Este respaldo incremental permite a Veeam asegurar que el Synthetic Full backup incluya los últimos cambios en la VM que estamos respaldando.

  • Una vez que finaliza la ejecución del Job, Veeam construirá un nuevo Synthetic Full Backup usando los archivos de respaldo que ya están disponibles en el Repositorio, sumando además los datos obtenidos como parte del respaldo incremental indicado en el punto anterior.

  • En este paso además, el archivo de respaldo incremental (VIB) es eliminado, y en su lugar solo queda el Synthetic Full Backup (VBK), lo cual crea una nueva cadena de respaldo.

  • Los nuevos respaldos incrementales creados por el Backup Job son asociados a este Synthetic Full en la misma cadena de respaldo, hasta que se cree un nuevo respaldo full de tipo Active Full o Synthetic Full
Veeam trata a los Synthetic Full Backup de la misma manera que un Active Full Backup.  De esta manera, cuando solicitamos un Synthetic Full Backup en un Job, esto va a resetear la cadena de backup, lo cual implica que todos los respaldos incrementales siguientes estarán asociados a este nuevo respaldo Full creado de manera “Sintetica”.  La cadena de respaldo previa (Respaldo Full + Incrementales) permanecerán en el Repositorio hasta que sea eliminada automáticamente según la política de retención configurada en el Backup Job.
Para crear un Synthetic Full Backup, basta con habilitar la opción “Create synthetic full backups periodically” en un Backup Job, indicando además la periodicidad (schedule) en que este respaldo debe ser creado.

Conclusiones

Como hemos podido apreciar, ambos tipos de respaldo nos permiten generar un Full Backup, conteniendo exactamente la misma información de las VM respaldadas, y reseteando la cadena de respaldos.   La diferencia radica en como los datos son obtenidos, y en el impacto que esto genera en el almacenamiento, ya sea en el Storage de Producción o en el Backup Repository.
Los respaldos Active Full Backup son buenos en ocasiones donde:
  • La performance del Repositorio de respaldos es limitada, por lo que la carga adicional generada por la creación de un Synthetic Full Backup genera un impacto negativo en el Repositorio y en los tiempos requeridos para completar las operaciones de backup.
  • El repositorio de respaldos corresponde a un Appliance de Deduplicación, y que no corresponda a aquellos con integración con Veeam (EMC Data Domain con DDBost, HPE StoreOnce con Catalyst, y Exagrid)
Por contrapartida, un Synthetic Full Backup tiene ventajas en otras situaciones donde:
  • La performance del Storage de Producción es una preocupación importante, por lo que se debe minimizar el impacto de la ejecución de los respaldos para no generar problemas en los servicios productivos de la compañía.
  • El ancho de banda disponible en la red SAN o LAN (Dependiendo del modo de transporte utilizado) es reducido, por lo cual se requiere reducir la cantidad de datos transmitidos durante las operaciones de Backup.
    • Este punto también es importante cuando se deben realizar respaldos a una ubicación remota, donde el ancho de banda es limitado,.
En conclusion, ambas son alternativas validas a la hora de realizar un respaldo Full, pero se debe elegir adecuadamente el método a utilizar dependiendo de las características de la plataforma que estamos protegiendo, y de la infraestructura de respaldo implementada.
Espero que les haya sido de interés!!!

About the Author:

EnglishPortugueseSpanish