Citrix Application Delivery Management

Arquitectura

El siguiente diagrama ilustra la arquitectura de la función de Autoscale con DNS como distribuidor de tráfico.

AWS-autoscale-architecture-NLB

El siguiente diagrama ilustra la arquitectura de la función de escalado automático con NLB como distribuidor de tráfico.

AWS-autoscale-architecture-NLB

Citrix Application Delivery Management (ADM)

Citrix Application Delivery Management es una solución basada en web para administrar todas las implementaciones de Citrix ADC implementadas localmente o en la nube. Puede utilizar esta solución en la nube para administrar, supervisar y solucionar problemas de toda la infraestructura global de entrega de aplicaciones desde una única consola unificada y centralizada basada en la nube. Citrix Application Delivery Management (ADM) proporciona todas las capacidades necesarias para configurar, implementar y administrar rápidamente la entrega de aplicaciones en implementaciones de Citrix ADC y con análisis detallados del estado, el rendimiento y la seguridad de las aplicaciones.

Los grupos de Autoscale se crean en Citrix ADM y las instancias de Citrix ADC VPX se aprovisionan desde Citrix ADM. La aplicación se implementa a través de StyleBooks en Citrix ADM.

Distribuidores de tráfico (NLB o DNS/Route53)

NLB o DNS/Route53 se utiliza para distribuir tráfico a través de todos los nodos de un grupo de Autoscale. Consulte Modos de distribución de tráfico de Autoscale para obtener más información.

Citrix ADM se comunica con el distribuidor de tráfico para actualizar el dominio de la aplicación y las direcciones IP de los servidores virtuales de equilibrio de carga que frontend la aplicación.

Grupo de Autoscale de Citrix ADM

El grupo Autoscale es un grupo de instancias Citrix ADC que equilibran la carga de las aplicaciones como una sola entidad y activan el escalado automático en función de los valores de parámetros de umbral configurados.

Clústeres Citrix ADC

Un clúster de Citrix ADC es un grupo de instancias Citrix ADC VPX y cada instancia se denomina nodo. El tráfico del cliente se distribuye entre los nodos para proporcionar alta disponibilidad, alto rendimiento y escalabilidad.

Nota

  • Las decisiones de escalado automático se toman en el nivel de clúster y no en el nivel de nodo.
  • Los clústeres independientes se alojan en diferentes zonas de disponibilidad y, por lo tanto, la compatibilidad con algunas de las funciones de estado compartido es limitada.Las sesiones de

persistencia, como la persistencia de IP de origen y otras, excepto la persistencia basada en cookies, no se pueden compartir entre clústeres. Sin embargo, todas las funciones sin estado, como los métodos de equilibrio de carga, funcionan como se esperaba en las múltiples zonas de disponibilidad.

Grupos de escalado automático de AWS

El grupo de escalado automático de AWS es una colección de instancias de EC2 que comparten funciones similares y se tratan como una agrupación lógica para el escalado y la administración de instancias.

Zonas de disponibilidad de AWS

La zona de disponibilidad de AWS es una ubicación aislada dentro de una región. Cada región está formada por varias zonas de disponibilidad. Cada zona de disponibilidad pertenece a una sola región.

Modos de distribución de tráfico

A medida que mueve la implementación de aplicaciones a la nube, el escalado automático se convierte en parte de la infraestructura. A medida que las aplicaciones escalan horizontalmente o escalan con escalado automático, estos cambios deben propagarse al cliente. Esta propagación se logra mediante el escalado automático basado en DNS o en NLB.

Autoscale basada en NLB

En el modo de implementación basado en NLB, la capa de distribución para los nodos del clúster es el equilibrador de carga de red de AWS.

En el escalado automático basado en NLB, solo se ofrece una dirección IP estática por zona de disponibilidad. Esta es la dirección IP pública que se agrega a route53 y las direcciones IP de back-end pueden ser privadas. Con esta dirección IP pública, cualquier nueva instancia de Citrix ADC aprovisionada durante el escalado automático funciona mediante direcciones IP privadas y no requiere direcciones IP públicas adicionales.

NLB solo admite el equilibrio de carga basado en TCP. Si quiere admitir el tráfico UDP, puede elegir el escalado automático basado en DNS.

Escalado automático basado en DNS

En el escalado automático basado en DNS, DNS actúa como la capa de distribución para los nodos del clúster de Citrix ADC. Los cambios de escala se propagan al cliente actualizando el nombre de dominio correspondiente a la aplicación. Actualmente, el proveedor DNS es AWS Route53.

Nota

En el escalado automático basado en DNS, cada instancia de Citrix ADC requiere una dirección IP pública.

Cómo funciona el escalado automático

El siguiente diagrama de flujo ilustra el flujo de trabajo de Autoscale.

Autoscale-workflow

Citrix ADM recopila estadísticas (uso de CPU, uso de memoria, rendimiento) de los clústeres aprovisionados de Autoscale en un intervalo de tiempo de un minuto.

Las estadísticas se evalúan con respecto a los umbrales de configuración. Dependiendo de si las estadísticas exceden el umbral máximo o estén operando por debajo del umbral mínimo, se activará la escalabilidad horizontal o la escalación de entrada respectivamente.

  • Si se activa un escalamiento horizontal;

    • Se aprovisionan nuevos nodos.
    • Los nodos están conectados al clúster y la configuración se sincroniza desde el clúster al nuevo nodo.
    • Los nodos se registran con Citrix ADM.
    • Las nuevas direcciones IP de nodo se actualizan en DNS/NLB.

Cuando se implementa la aplicación, IPSet se crea en clústeres de cada zona de disponibilidad y el dominio y las direcciones IP de instancia se registran con DNS/NLB.

  • Si se activa una escala en escala;
    • Se eliminan las direcciones IP de los nodos identificados para su eliminación.
    • Los nodos se separan del clúster, se desaprovisionan y, a continuación, se anulan el registro de Citrix ADM.

Cuando se quita la aplicación, el dominio y las direcciones IP de instancia se anulan del registro de DNS/NLB y se elimina el IPSet.

Ejemplo

Tenga en cuenta que ha creado un grupo de Autoscale denominado asg_arn en una sola zona de disponibilidad con la siguiente configuración.

  • Parámetro Umbral: Uso de memoria

  • Límite mínimo: 40

  • Límite máximo: 85

  • Tiempo de reloj: 3 minutos.

  • Período de recarga: 10 minutos

  • Tiempo de espera de la conexión de drenaje: 10 minutos

  • Tiempo de espera TTL: 60 segundos

Después de crear el grupo de Autoscale, las estadísticas se recopilan del grupo de Autoscale. La directiva de Autoscale también evalúa si hay algún evento de Autoscale en curso y si se está realizando una Autoscale, espera a que se complete ese evento antes de recopilar las estadísticas.

Autoscale-example

Secuencia de eventos:

  • T1 y T2: El uso de memoria supera el límite máximo del umbral.

  • T3: El uso de memoria está por debajo de los límites máximos de umbral.

  • T6, T5, T4: El uso de memoria ha excedido consecutivamente el límite máximo de umbral durante tres duraciones de tiempo de reloj.

    • Se activa un escalamiento horizontal.

    • Se produce el aprovisionamiento de nodos.

    • El periodo de tiempo de reutilización está en vigor.

  • T7-T16: La evaluación de Autoscale se omite para esta zona de disponibilidad de T7 a T16 ya que el período de enfriamiento está en vigor.

  • T18, T19, T20: El uso de memoria ha excedido consecutivamente el límite mínimo de umbral durante tres duraciones de tiempo de reloj.

    • Se activa la ampliación de escala.

    • El tiempo de espera de la conexión de drenaje está en vigor.

    • Las direcciones IP se liberan del DNS/NLB.

  • T21-T30: La evaluación de Autoscale se omite para esta zona de disponibilidad de T21 a T30 ya que el tiempo de espera de la conexión de drenaje está en vigor.

  • T31

    • Para el escalado automático basado en DNS, TTL está en vigor.

    • Para el escalado automático basado en NLB, se produce el desaprovisionamiento de las instancias.

  • T32

    • Para el Autoscale basado en NLB, se inicia la evaluación de las estadísticas.

    • Para el escalado automático basado en DNS, se produce el desaprovisionamiento de las instancias.

  • T33: Para el Autoscale basado en DNS, se inicia la evaluación de las estadísticas.