Los beneficios y propiedades de los ADC (Application Delivery Controllers)

vADC

La virtualización de servidores ha proliferado para alcanzar un grado que podríamos definir como masivo en los ambientes organizacionales. Los departamentos de IT, presionados desde el ángulo de los costos, aprovecharon el primer estadio de beneficios que ofrece la tecnología de virtualización: la capacidad de consolidar servidores. A este beneficio inicial, se suma el de la mayor agilidad que surge a través de la provisión de máquinas virtuales (VM) y su capacidad de ser movidas de un servidor físico a otro, ya sea que esté en un mismo o en diferente centro de datos. Y además, sin interrupción.

Desafortunadamente, con la infraestructura física no siempre ocurre lo mismo y en el caso de necesitarse una reconfiguración, pueden pasar algunos minutos. Este problema ha sido solucionado en algunas arquitecturas y formaciones de clusters.

Dentro de una infraestructura capaz de soportar VMs tenemos al controlador de entrega de aplicaciones (ADC, por Application Delivery Controller). Los ADCs han sido utilizados en la mejora de la performance de aplicaciones.

¿Cómo funcionan los ADCs? Los ADC se ubican frente a una formación o granja de servidores y les entregan los requerimientos de servicios siguiendo criterios como el de reconocer la carga que cada servidor está procesando. Los ADC también mejoran el rendimiento de las aplicaciones ocupándose de tareas de computación intensiva como procesamiento SSL (Secure Socket Layer) o TCP.

Un ADC también puede acelerar la performance de aplicaciones que funcionan en una WAN (Wide Area Network) ya que implementan técnicas de optimización como compresión o reverse caching. La compresión reduce el volumen de tráfico en la WAN y reverse caching los nuevos requerimientos de objetos Web dinámicos o estáticos pueden a menudo ser enviados desde un cache del ADC en lugar de tener que ser regenerados por los servidores.

ADCAlgunos ADCs atienden funcionalidad más avanzada tal como scritping, permitiendo que la gente de IT clasifique o modifique en forma directa el tráfico de las aplicaciones basadas en IP. Otra funcionalidad avanzada de algunos ADCs incluyen monitoreo de tiempos de respuesta de las aplicaciones y funciones de seguridad tales como firewalls para la capa de la aplicación.

La selección de un ADC

Lo primero a verificar será sin duda que se trate de un ADC que funcione bien en el entorno en el que será implementado. También será importante considerar metas que pueden ser conflictivas. Por ejemplo, que se cuente con toda la funcionalidad necesaria al menor costo posible. También habrá que asegurarse de que el ADC tenga la performance que hace falta cuando se le habilita alguna capacidad como seguridad, por ejemplo. Pero también habrá que contemplar futuras posibles demandas para que el ADC no se torne obsoleto  porque no ofrece la funcionalidad, ni la performance que harán falta en el futuro. Uno de los caminos para eludir esa perspectiva de obsolescencia, es el de los ADC virtuales

Los ADC Virtuales

ADC virtual tiene diversas interpretaciones. Por un lado, significa que se trata de una cantidad de pequeños ADCs que han sido creados para operar como si fueran un ADC grande. Si no se quiere pagar más de lo que hace falta y tampoco correr el riesgo de obsolescencia, esta es la solución. Utilizando ADC virtuales de esta clase, se puede agregar performance agregando ADCs adicionales. De esta forma se minimizan los costos de la funcionalidad ADC  y se incurre en ellos cuando hace falta más performance.

ADC virtual también significa tener software ADC en una máquina virtual y no en un appliance dedicado basado en hardware.

Una de las ventajas que se  le atribuye a un ADC virtual (vADC) es el ahorro de costos. Muchos proveedores manifiestan que un vADC cuesta un 30% menos que uno tradicional basado en hardware. Esta diferencia variará según el proveedor, por lo que es un tema que formará parte de las evaluaciones en los departamentos de IT.

Otra ventaja de vADC es la agilidad que provee. Se pueden mover vADC entre servidores físicos de la misma forma en que se mueven VMs. También se instala un vADC más rápidamente que uno tradicional, sin dejar de lado que se pueden instalar en lugares donde los otros no. Por ejemplo, en el centro de datos del proveedor de un servicio de computación cloud.

Lo que no puede ser dejado de lado, es el verificar que el vADC tenga toda la funcionalidad requerida y que sí ofrecen los appliances ADC. Tampoco hay que olvidarse del hypervisor que soporta el vADC ni de la performance que realmente alcanza. Existen muchos tests de terceras partes que son usados por los proveedores para demostrar si un vADC funciona o no tan bien como uno tradicional. La única forma que tienen los departamentos de IT para  asegurarse, es probando el vADC en sus propios entornos de producción.

Nueva generación de ADCs

Dependiendo de la ubicación del centro de datos, los ADCs pueden servir como Gateway para las aplicaciones de la empresa. En ese papel, ADC se convierte en un punto único de control que puede determinar los requerimientos de seguridad de aplicaciones y proveer control, monitoreo y AAA (Authtentication, Authorization Accounting) de aplicaciones.

En cuanto a los entornos mobile, tenemos que los ADC intrínsecamente comprenden la diferencia entre aplicaciones como así también las de tráfico desde el layer 2 al 7, los ADC son capaces de ofrecer funcionalidad de seguridad que puede cambiar dinámicamente basándose en el usuario, dispositivo, red, aplicación y hasta en el mismo tipo de tráfico.

Por ejemplo, la inteligencia de los ADC permite aplicar una determinada política de seguridad a un usuario que accede a una aplicación desde un Smartphone y la misma será diferente a la de otro usuario que accede desde una laptop. También puede aplicar diferentes políticas de seguridad a diferentes usuarios aunque accedan de un mismo tipo de dispositivo.

Los ADC y Cloud Computing

El equilibrio de carga en entornos donde se integra actividad cloud son un nuevo desafío para las empresas. El equilibrio cloud (Cloud Balancing) tiene que ver con el ruteo de requerimientos de servicio entre múltiples centros de datos. Los objetivos pueden ser diversos, tales como ahorrar dinero, mejorar la performance, aumentar la disponibilidad o bien cumplir con requerimientos reguladores. En general, uno o más centros de datos están bajo el control del departamento de IT de la empresa y uno o más centros de datos son controlados por uno o más proveedores de cloud computing.

Cloud balancing puede ser visto como una extensión lógica de GSLB (Global Server Load Balancing), cuya misión es soportar alta disponibilidad y máxima performance. Una solución de cloud balancing toma decisiones de ruteo que en parte utilizan el mismo criterio que una solución GSLB, aunque son más enfocadas en criterios del negocio. Por ejemplo, una solución de cloud balancing puede tomar decisiones de ruteo usando criterios como el costo de ejecutar una transacción en una determinada nube. Esta capacidad de cloud balancing funcionará mejor si existe una arquitectura consistente a lo largo de los diferentes centros de datos cloud. Y una forma de mantener esa consistencia entre nubes públicas y privadas, son los vADC, ya que pueden ser instalados en máquinas virtuales en las diferentes nubes que conforman la infraestructura cloud híbrida. La empresa usuaria puede entonces estandarizar sobre una misma arquitectura en todo su entorno de cloud balancing, en la medida en que los virtual appliances soporten los hypervisors que utilizan sus proveedores IaaS (Infrastructure as a Service). Una de las ventajas de esta consistencia es que cada sitio cloud podrá entregar la información para la toma de decisiones de ruteo globales a todas las nubes.

La importancia de los ADCs seguirá aumentando ya que permiten la implementación de políticas de seguridad granulares respecto a usuarios y aplicaciones. Los vADC aportan a ese crecimiento por su facilidad de ser implementados en entornos cloud públicos. Una vez implementado en esos entornos, los vADC pueden proveer funcionalidad de monitoreo que no estaría disponible de otra manera.

Este artículo es extracto del paper escrito por el Dr. Jim Metzler, reconocido especialista en tecnología de redes y aplicaciones empresariales. Metzler tiene un Ph. D en Análisis Numérico de la Universidad de Boston y es co-autor del libro “Layer 3 Switching: A guide for IT Professionals.” El Dr. Metzler es miembro y asesor del State of the Art Program in Networking de Northeastern University y ha sido asesor de numerosos proveedores del mercado de IT.