Veeam WAN Acceleration en profundidad

[Total: 2    Average: 5/5]
Hola a todos!  En este post vamos a hablar sobre Veeam WAN Acceleration, un componente de la arquitectura de Veeam Backup and Replication que permite facilitar y hacer más eficiente la transferencia de datos entre sitios remotos en tareas de Respaldo (aplica solo a jobs de Backup Copy, no a Jobs de Backup standard) y Replicación.
Esta característica nos permite enfrentar escenarios donde la conexión entre sitios remotos cuenta con un ancho de banda limitado, y la cantidad de información a transmitir es importante.    El objetivo de WAN Acceleration entonces es optimizar esta transferencia de datos sobre la WAN.
Para el funcionamiento de Veeam WAN Acceleration, se requiere el uso de servidores con el rol de WAN Accelerator, uno para cada sitio, los cuales serán responsables de gestionar el Cache Global y la Deduplicación.  Los WAN Accelerators se ubicarán entre los Data Movers de origen y destino (usualmente Proxy y/o Repositorios) como vemos en la imagen anterior.
Veeam WAN Acceleration es compatible además con Veeam Cloud Connect, lo que permite realizar operaciones de Backup Copy y de Replica utilizando proveedores de Cloud públicos.

Arquitectura

Para habilitar la aceleración WAN, debemos desplegar un par de WAN Accelerators en la infraestructura de Backup.
  • Un WAN Accelerator es desplegado en el sitio de origen, cerca del repositorio de backup (para Jobs de Backup Copy) o cerca del host de origen (para Jobs de Replicación).
  • El otro WAN Accelerator es desplegado en el sitio de destino, cerca del repositorio de backup (para Jobs de Backup Copy) o cerca del host de destino (para Jobs de Replicación).
Para crear un WAN Accelerator se necesita asignar este rol a una maquina especifica.  Se puede incluso asignar el rol de WAN Accelerator a un Proxy o Repositorio existente.  Los WAN Accelerator deben cumplir los siguientes requerimientos mínimos:
  • Debe ejecutar una version de 64-bits de Windows.
  • Puede ser una maquina física o virtual.
  • El servidor debe ser registrado en la consola de Veeam Backup and Replication como un servidor gestionado.
  • El servidor debe contar con espacio suficiente para almacenar los Digests y la data de Cache Global.
La relación entre WAN Accelerators puede ser de 1 a 1, o de 1 a muchos.  Es decir, el Cache Global puede ser usado por varios WAN Accelerators de origen simultáneamente.  Esto podría ser de utilidad, por ejemplo, si se tienen varias oficinas remotas que desean configurarse con WAN Acceleration, donde se puede configurar un WAN Accelerator de origen en cada uno de los sitios remotos, y un WAN Accelerator de destino en el sitio principal.
En este caso, el Cache Global contendrá un cache separado para cada WAN Accelerator de origen.  Para esto, el cache para cada WAN Accelerator de origen será almacenado en un subdirectorio dedicado en el Global Cache.
Cuando un WAN Accelerator de destino es usado por varios WAN Accelerators de origen, Veeam puede copiar bloques de datos entre el Cache de estos WAN Accelerators.  Por ejemplo:
  • Si tenemos un Backup Copy que desde el Sitio Remoto 1 respalda una VM con Windows 2012 hacia el Sitio Principal, después de un tiempo el Cache Global en el Sitio Principal contendrá datos para este Sistema Operativo en Particular.
  • Si tenemos un Backup Copy desde el Sitio Remoto 2 al Sitio Principal, y este también contiene una VM con Windows 2012, inicialmente el Global Cache utilizado para el Site Remoto 2 no tiene datos para este Sistema Operativo (al ejecutar el Backup Copy por primera vez).  Aun así, Veeam puede copiar los bloques de datos necesarios del Cache Global del Sitio Remoto 1, al Cache Global del Sitio Remoto 2, lo cual permite optimizar el trafico al no tener que transmitir a través de la WAN bloques de datos que ya existen en el Sitio Principal.
Nota: En una configuración 1 a muchos, se recomienda como máximo una configuración 4 a 1 (4 WAN Accelerators de origen y 1 WAN Accelerator de destino.   En caso de configuraciones ROBO (Remote Office / Branch Office) se recomienda una configuración maxima de 10 a 1.

Como funciona?

A continuación detallaremos el proceso de copia de datos utilizado entre sitios remotos cuando WAN Acceleration esta habilitado en un Job de Replica o de Backup Copy.
El objetivo de WAN Acceleration es enviar menos datos sobre la red, para lo cual utiliza el Global Cache y también utiliza el Global Data Deduplication.
Primera ejecución de un job de Backup Copy o de Replica
  1. En caso de tratarse de un job de Backup Copy, Veeam primero descomprime el archivo de respaldo para analizar su contenido.
  2. El WAN Accelerator en el sitio de origen analiza los bloques de datos del archivo que será transmitido, y crea un archivo con el Digest de estos bloques de datos.  Este archivo de Digests es almacenado en la carpeta VeeamWAN en el WAN Accelerator de origen.
  3. Veeam comprime el archivo de respaldo o la data de VM, dependiendo de si es un Backup Copy o una Replica, y los copia al sitio remoto.
    En este punto Veeam puede realizar deduplicación de bloques de datos idénticos en cada disco de VM.
  4. Durante el proceso de transferencia de datos, el WAN Accelerator de destino puebla el Global Cache con bloques de datos de los archivos copiados.  El Global Cache se ubica en la carpeta VeeamWAN en el WAN Accelerator de destino, aunque se puede definir otra carpeta durante la configuración del WAN Accelerator.
Siguientes ejecuciones de los Jobs de Backup Copy o de Replica.
  1. Durante la siguiente ejecución del Job, el WAN Accelerator en el sitio de origen analiza los bloques de datos en el archivo que debiera ser transferido, y crea los Digests para estos bloques de datos.
  2. Veeam usa su algoritmo de redundancia de datos para encontrar bloques de datos duplicados en la data que se espera transferir sobre la WAN.   Lo que hará Veeam es básicamente analizar los bloques de datos que se quieren transferir en el sitio de origen, y compararlos con los bloques de datos que ya han sido transferidos previamente.  Si se detectan bloques de datos duplicados, estos bloques entonces no son copiados sobre la WAN.  WAN Accelerator utiliza tres mecanismos para la Deduplicación de datos, y así copiar solamente bloques de datos únicos:
    1. Discos de VM: Veeam analiza los bloques de datos dentro del mismo disco virtual.  Si se detectan bloques idénticos, los duplicados no son enviados a través de la WAN.
    2. Puntos de restauración previos de la VM que esta siendo copiada:  Veeam analiza los puntos de restauración que han sido copiados previamente al sitio de destino.  Si se detectan bloques duplicados, Veeam no copia esos dichos bloques sobre la WAN, sino que los toma desde puntos de restauración copiados previamente.
    3. Global Cache: Como vimos anteriormente, Veeam crea un Global Cache  en el WAN Accelerator de destino que mantiene los bloques de datos que de forma repetida son enviados sobre la WAN.  WAN Accelerator entonces compara los Digest creados en esta ejecución del Job, con los Digests almacenados previamente en la carpeta VeeamWAN del WAN Accelerator de origen.  Si se detectan bloques de datos duplicados, estos bloques entonces no son copiados sobre la WAN.  En vez de esto, son tomados desde el Global Cache en el WAN Accelerator de destino, y escritos en el Repositorio o Datastore de destino (dependiendo si es un Backup Copy o una Replica).

Dimensionamiento

El dimensionamiento de los servidores que serán usados para WAN Acceleration, depende de si será usado como WAN Accelerator de origen o de destino, ya que ambos tienen distinto comportamiento en el uso de los recursos, por lo cual tienen distintas consideraciones.

WAN Accelerator de origen

Este WAN Accelerator tiene principalmente un mayor requerimiento de recursos de computo, CPU y Memoria, debido a que aquí es donde se realiza el análisis de los bloques de datos que están siendo enviados, y su comparación con bloques de datos enviados previamente, utilizando alguno de los mecanismos de deduplicacion.
La recomendación en cuanto recursos es la siguiente:
  • 4 Cores o vCPU
  • 8GB de RAM
  • 10GB en disco para archivos temporales, más un 2% de la data procesada por este WAN Accelerator

WAN Accelerator de destino

Este WAN Accelerator tiene principalmente mayor requerimiento desde el punto de vista de almacenamiento para poder contener el Global Cache.
Por defecto, el tamaño del Global Cache es de 100GB, el cual podemos modificar si es necesario.   Este Global Cache mantiene los bloques de datos que son enviados repetidamente desde el sitio de origen al sitio de destino, y es poblada con la primera ejecución de un job remoto (Backup Copy o Replica).  La prioridad en el Global Cache es para bloques que contengan datos del Sistema Operativo (Windows o Linux) y aplicaciones estándar como Microsoft Exchange.
El tamaño del Global Cache es especifico para cada WAN Accelerator de origen que envía datos a un unico WAN Accelerator de destino.   Por lo tanto, si se usa una configuración de uno a muchos (1 WAN Accelerator de destino y multiples WAN Accelerators de origen), la cantidad de espacio asignada al Global Cache es independiente para cada WAN Accelerator de origen, por lo que mientras más WAN Accelerators de origen se utilicen, mayor será el tamaño del Global Cache.
La recomendación es que el Global Cache cuente con al menos 10GB por cada Sistema Operativo que será copiado entre los sitios remotos.
  • Cada version de Windows cuenta como un Sistema Operativo distinto, por lo que cada una requiere 10GB para el Global Cache.
  • Las distintas versiones de Linux cuentan como un unico Sistema Operativo, por lo que se requiere 10GB para contener los bloques de datos de cualquier version de Linux en el Global Cache.
  • Adicionalmente se requieren al menos 20GB libres para archivos temporales.
La recomendación en cuanto recursos es la siguiente:
  • 2 Cores o vCPU
  • 8GB de RAM
  • Disco: Como se menciono previamente para cada Sistema Operativo.
Veeam mantiene el Global Cache en un estado actualizado constantemente, par esto monitorea permanentemente los bloques de datos que van sobre la WAN y los bloques en el Global Cache.
  • Si un bloque de datos nuevo es enviado constantemente sobre la WAN, es añadido al Global Cache.
  • Si un bloque de datos en el Global Cache no es enviado sobre la WAN y no es re-utilizado por un periodo de tiempo, es removido del Global Cache para hacer espacio para nuevos bloques de datos.

Implementación de Veeam WAN Acceleration

El deploy de Veeam WAN Acceleration es un proceso bastante sencillo, donde básicamente asignaremos el rol de WAN Accelerator a uno de los servidores Windows que hayamos registrado previamente en la consola de Veeam Backup and Replication.  A continuación veremos como crear un WAN Accelerator de origen y uno de destino:

Creación de un WAN Accelerator:

  • Registrar el servidor Windows como un Management Server en Veeam Backup and Replication.
  • En la sección Backup Infrastructure > WAN Accelerator, hacemos click en la opción “Add WAN Accelerator” del menú superior.
  • Esto abrirá un asistente, donde en primer lugar debemos seleccionar el servidor Windows (previamente registrado) que utilizaremos como WAN Accelerator.  Aquí también podemos personalizar el puerto que utilizará este servicio (por defecto TCP 6165), y la cantidad de streams que nos permitirá saturar la conexión WAN y hacer un uso más eficiente de esta (por defecto 5 streams).

  • A continuación especificamos la unidad de disco y el directorio que utilizaremos para el Global Cache.  Por defecto la carpeta utilizada será “VeeamWAN”, pero podemos modificarlo si lo deseamos.  Aquí podemos definir también el tamaño reservado para el Cache, recordando los parámetros de dimensionamiento indicados previamente.

  • Con esto completamos los pasos requeridos para crear un Veeam WAN Accelerator.

  • Podemos repetir los mismos pasos para registrar un segundo WAN Accelerator, y así contar con un WAN Accelerator de destino y otro de origen.  En este punto ya podemos comenzar a utilizar estos WAN Accelerators en Jobs de Backup Copy o de Replicación.

Uso de WAN Acceleration en un Job

El uso de WAN Acceleration en un Job de Backup Copy o de Replicación es bastante sencillo, donde de hecho solo debemos modificar unos pequeños parámetros en los Jobs correspondientes como veremos a continuación.

  • Podemos crear un nuevo job de Backup Copy (o Replica) o modificar uno existente.

  • En la sección Data Transfer debemos especificar si la transferencia será realizada de manera directa (directamente entre los Data Movers correspondientes) o a través de WAN Accelerators.
  • Seleccionamos la segunda opción, y especificamos un WAN Accelerator de origen y otro de destino, los cuales deben estar ubicados en los sitios correspondientes.

  • En caso de que el Global Cache del WAN Accelerator de destino este vacío, es decir, que nunca se haya realizado una transferencia de datos hacia dicho WAN Accelerator, aparecerá la siguiente advertencia.  Simplemente hacemos click y completamos la creación/modificación del Job.

Solo con este pequeño cambio en la configuración del Job, este ya comenzará a utilizar los WAN Accelerators y a aprovechar los beneficios que esta característica ofrece.  Desde este punto podemos ejecutar el Job y verificar que efectivamente está utilizando los WAN Accelerators para optimizar la transferencia a través de la WAN.


Poblar manualmente el Global Cache

Cuando acabamos de configurar WAN Acceleration, el Global Cache se encuentra vacío, por lo que durante la primera ejecución de un job remoto (Backup Copy o Replica), toda la data de la VM necesita ser transferida sobre la WAN.   Para poder reducir el impacto de este escenario, ustedes pueden previamente haber poblado la Global Cache de manera manual, de manera que el Global Cache ya contenga bloques de datos para deduplicación cuando se ejecute el Job por primera vez.

Algunas consideraciones:

  • Veeam no usa respaldos encriptados para poblar el Global Cache.
  • Se puede poblar un Global Cache sobre cualquier WAN Accelerator de destino, independiente de si existan o no Jobs ya configurados para usarlo.
  • Durante el proceso de poblado del Global Cache, mientras la tarea esta en ejecución, el WAN Accelerator de destino queda en estado bloqueado, por lo que no puede ser utilizado por ningún Job de Backup Copy o Replica durante ese periodo de tiempo.
  • En caso de que el Global Cache sufra una corrupción de datos, se debe limpiar el Cache antes de poblarlo nuevamente con datos validos, de lo contrario la tarea fallará.

 

Cuando se realiza un poblado manual del Global Cache, Veeam crea un “Default Cache” en el WAN Accelerator de destino.  Este es usado como un cache universal básico para cualquier nuevo Job remoto.

El proceso de poblado utiliza archivos de respaldo almacenados en Repositorios de Backup como fuente de datos, y copiara bloques de datos asociados al Sistema Operativo para poblar el Global Cache.   En este proceso no se consideran bloques de datos de aplicaciones.   El proceso de poblado del Global Cache trabaja de la siguiente manera:

  1. El usuario ejecuta la tarea Global Cache Population y selecciona los repositorios de respaldos desde los cuales se debieran obtener los bloques de datos.
  2. Veeam escanea los repositorios de respaldo y genera una lista de Sistemas Operativos cuyos bloques de datos están disponibles en los archivos de respaldo.
  3. Veeam copia los datos desde los repositorio de respaldo y los utiliza para poblar el Default Cache.
  4. Veeam puede usar estos Bloques de datos para deduplicacion, incluso a partir de la primera ejecución del job Remoto.

Procedimiento de Poblado de Global Cache

Para poder poblar el Global Cache manualmente, se deben seguir los siguientes pasos:
  • En la sección Backup Infrastructure > WAN Accelerator, hacemos click derecho sobre un WAN Accelerator de destino, y seleccionamos la opción “Populate Cache”.

  • A continuación seleccionamos los repositorios que deseamos sean utilizados para detectar Sistemas Operativos cuyos bloques de datos serán añadidos al Global Cache y hacemos click en OK

  • Una vez que el proceso se completa, ya podemos ejecutar Jobs de Backup Copy o Replica, utilizando el Global Cache desde la primera ejecución del job.

Conclusion

Como vemos, WAN Accelerator es un componente muy util dentro de la arquitectura de Veeam Backup and Replication, el cual puede ser utilizado para operaciones remotas con Backup Copy y Replication, incluso a proveedores de Cloud con Veeam Cloud Connect!
Veeam WAN Acceleration esta disponible en la licencia Enterprise Plus de Veeam Backup and Replication, pero también puede ser utilizado por clientes con licencia Enterprise si estos utilizan Veeam Cloud Connect.
Como vemos la arquitectura y el deploy es bastante sencillo, por lo cual no se añade complejidad adicional a la infraestructura.
Espero que haya sido de utilidad, y no duden en hacerme todas las consultas que tengan.  Nos vemos!!!

About the Author:

EnglishPortugueseSpanish