Cuando lanzamos la versión 6 de Veeam Backup & Replication, una de las más grandes “novedades” fue la escalabilidad que le brindamos a las empresas a través de nuestra arquitectura distribuida y balanceo de carga inteligente automático. La incorporación de la arquitectura basada en proxy/repositorio fue un gran paso para nosotros, porque anteriormente todas las actividades de backup se ejecutaban a través de un solo servidor de backup. Había diferentes motivos para evolucionar a esta arquitectura…
- Distribuir los procesos de backup en múltiples servidores proxy para que escalar la implementación de B&R sea una tarea más sencilla
- Alcanzar mayor disponibilidad y redundancia: si un proxy se cae, otro puede completar la tarea; sin más puntos únicos de fallo
- Reducir el impacto de los backups sobre la infraestructura de producción a través del balanceo de carga inteligente automático
- Simplificar radicalmente la programación de trabajos (mediante el control automático de la concurrencia de tareas deseadas)
- Controlar la saturación del almacenamiento de backup (para cuando el almacenamiento de backup sea demasiado lento)
Con balanceo de carga inteligente automático, Veeam Backup & Replication elige el mejor servidor proxy (el mejor en materia de conectividad con los datos de la VM, así como el menos cargado con otras tareas) para que realice el backup para una VM cada vez que se ejecuta el trabajo. Con v7 lo habíamos mejorado aún más incorporando procesamiento paralelo, lo que significa que una VM con varios discos virtuales podría obtener backup a través de más de un proxy al mismo tiempo. En pocas palabras, es el orden de prioridad que utiliza un servidor de backup para determinar el mejor proxy para procesar un disco virtual de VMware:
- Direct SAN (acceso a almacenamiento directo, sin impacto sobre los hosts de producción)
- Hot add (acceso a almacenamiento directo a través de la pila E/S de ESXi)
- Network Block Device (NBD) (los datos de la VM se recuperan de la red a través de la interfaz de administración ESXi)
Cuando se configura un proxy de Veeam para VMware, puede elegir manualmente los modos de conexión y datastores, o dejar que el proxy los detecte automáticamente. También tiene la opción de configurar la cantidad máxima de tareas concurrentes para el proxy:
El servidor de backup también tiene en cuenta la carga actual (máximo de tareas concurrentes) para asegurarse de que no se sobrecargue la infraestructura. Con la v7 también mejoramos nuestros algoritmos de compresión para reducir radicalmente el uso de la CPU, para que cada proxy pueda hacer más trabajo. A medida que los clientes actualizaban a la v7 y comenzaban a ponerlo en marcha, una cosa se volvió evidente… ¡éramos demasiado rápidos!
Para muchos de nuestros clientes dejar los trabajos de backup y los proxy en modo completamente automático no representaba un problema. Los trabajos de backup se completaban a tiempo y no había quejas. Pero ciertos clientes, especialmente aquellos con cargas de trabajo las 24 horas, los 7 días de la semana (el negocio always-on) y con demasiados proxy de backup implementados, tenían problemas con el impacto que la sobrecarga de trabajos de backup generaba sobre la disponibilidad del almacenamiento de producción. Las aplicaciones disminuían su capacidad de respuesta durante las tareas de backup y algunas incluso tenían alarmas en sus sistemas de monitorización. El problema era que las IOPS (operaciones de entrada/salida por segundo) no eran suficientes. El backup puede provocar una operativa de E/S muy intensa y si tiene algunas VM realizando otras operaciones intensas de E/S en paralelo con el backup, entonces puede tener problemas.
Para resolver este problema, primero tomamos el camino “fácil” y sencillamente establecimos límites en las bases de datos (“No más de x tareas por datastore a la vez” en uno de los primeros parches de v7), pero esta solución era demasiado difícil de manejar…¿Qué sucedería si alguien colocaba un nuevo servidor SQL en un datastore, lo cargaría hasta el límite y sobrepasaría la planificación echa con anterioridad y que se había realizado con tanto cuidado? Y si establece el límite demasiado bajo y moderadamente, es posible que no tenga tiempo suficiente en su ventana de backup para completar los backups. Se hizo evidente que los límites manuales no iban a ser suficientes en infraestructuras virtuales altamente dinámicas.
Por eso con v8, presentamos el control de E/S del backup (que aún no ha sido patentado), una nueva funcionalidad en Veeam Backup & Replication v8. El control de E/S del backup es un nuevo parámetro global que le permite establecer límites sobre el nivel de latencia aceptable para cualquier datastore de VMware o Hyper-V. Piense en esto como un acuerdo a nivel de servicio para sus datastores.
La idea es bastante sencilla y viene en dos partes. La primera configuración, “Dejar de asignar nuevas tareas al datastore:”, significa que cuando el servidor de backup asigne un proxy para el disco virtual, ahora tendrá en cuenta la latencia (IOPS). El trabajo de backup esperará para que el datastore esté “no demasiado ocupada” antes de comenzar el backup. La segunda configuración, “Limite las E/S de una tarea existente en:”, sirve cuando un trabajo de backup ya está en ejecución y la latencia se convierte en un problema debido a una carga externa. Por ejemplo, si un proceso de mantenimiento de SQL comenzara a ejecutarse en una VM y usara el mismo datastore que el trabajo de backup, entonces, el trabajo de backup limitaría automáticamente su E/S de lectura del datastore adecuadamente para que la latencia descienda por debajo de la configuración seleccionada. En este caso, el trabajo de backup podría tardar un poco más, pero al menos no afectaría las aplicaciones.
Puede ver un ejemplo de esta configuración en acción en el gráfico que se muestra a continuación, donde el control de E/S se encuentra activado:
La línea verde en la imagen es la latencia de lectura y se puede ver que una vez que se ha activado el control de E/S del backup, la latencia de lectura desciende por debajo de 20ms y luego, cuando se desactiva, vuelve a salirse de las manos nuevamente.
En Veeam Backup & Replication v8, el control de E/S del backup es una configuración global en nuestra edición Enterprise. En el caso de los valores predeterminados, hemos decidido optar por límites ligeramente reducidos, que reflejan los niveles de Advertencia y Error que normalmente vemos en los clientes que utilizan nuestras soluciones de monitorización. Sin embargo, estos son completamente personalizables.
Si tiene nuestra edición Enterprise+, entonces utiliza el control de E/S del backup para establecer la latencia según el datastore, en lugar de una configuración global única. Esto es especialmente útil si tiene datastores que necesitan configuraciones más altas/bajas según la carga de trabajo o la importancia, por ejemplo, mayor latencia generalmente es aceptable para las cargas de trabajo de prueba/desarrollo.
Como siempre, en Veeam nos encontramos constantemente respondiendo a las necesidades de nuestros clientes, y la evolución de esta funcionalidad no es una excepción. Gracias a la presentación de servidores proxy y procesamiento distribuido en v6 y del procesamiento paralelo en v7, fuimos capaces de permitir a nuestros clientes escalar más fácilmente y maximizar el procesamiento de backup en el proceso. Ahora, con la integración del control de E/S del backup en v8, nuestros clientes pueden personalizar mejor cuánto maximizan el proceso del backup, lo que les permite el máximo rendimiento posible de backup al mismo tiempo que reducen el impacto sobre las cargas de trabajo de producción y satisfacen mejor los requisitos del negocio always-on.