Citrix ADC

Cómo configurar la persistencia en GSLB

La persistencia garantiza que una serie de solicitudes de cliente para un nombre de dominio determinado se envíe al mismo centro de datos en lugar de equilibrarse la carga. Si la persistencia está configurada para un dominio determinado, tiene prioridad sobre el método GSLB configurado. Puede utilizar la persistencia para implementaciones en las que una información relacionada con una transacción de cliente se almacena localmente en una instancia, que ha servido las solicitudes iniciales. Por ejemplo, las implementaciones para comercio electrónico que utiliza un carrito de compras, donde el servidor necesita mantener el estado de la conexión para realizar el seguimiento de la transacción. El dispositivo Citrix ADC selecciona un centro de datos para procesar una solicitud de cliente. Con la persistencia habilitada, reenvía la misma dirección IP del centro de datos seleccionado para todas las solicitudes posteriores del Sistema de nombres de dominio (DNS). Si una sesión de persistencia apunta a un centro de datos que está DESACTIVADO, el dispositivo Citrix ADC utiliza el método GSLB configurado para seleccionar un nuevo centro de datos. A continuación, se vuelve persistente para solicitudes posteriores del cliente. Para la persistencia en GSLB, se debe configurar el mismo conjunto de identificadores de persistencia (PersisID) en los servidores virtuales GSLB en todos los centros de datos. El módulo GSLB utiliza el identificador de persistencia para identificar de forma única un servidor virtual GSLB. Cuando la persistencia de IP de origen está habilitada en el servidor virtual GSLB, las sesiones de persistencia también se intercambian como parte del intercambio de métricas. Para que el dispositivo Citrix ADC admita la persistencia entre sitios, la configuración relacionada con la persistencia debe realizarse en todos los sitios GSLB participantes. Citrix recomienda la persistencia en GSLB para aplicaciones con estado, lo que requiere que los clientes se reconecten a la misma instancia de aplicación para las solicitudes posteriores.

Puede lograr la persistencia en GSLB de las siguientes maneras:

  • Persistencia en el servidor virtual GSLB
  • Persistencia del sitio en los servicios GSLB

Persistencia en el servidor virtual GSLB

La persistencia en el servidor virtual GSLB se utiliza durante las solicitudes DNS. La dirección IP de origen de la solicitud DNS se utiliza para crear una sesión de persistencia entre el cliente y el centro de datos. Los clientes DNS son generalmente el DNS local (LDNS) o las puertas de enlace DNS que sirven como proxy de un conjunto de clientes que están detrás de ellos (en ISP). La persistencia en un servidor virtual GSLB es independiente del protocolo de aplicación. En general, se configuran varias puertas de enlace DNS o Servidores de nombres de dominio local (LDNS) en la red cliente. Citrix recomienda configurar una máscara de persistencia adecuada porque para las solicitudes DNS posteriores, independientemente de los dispositivos LDNS ascendentes utilizados para conectarse al dispositivo ADC, el cliente puede persistir en el mismo centro de datos, que había servido las solicitudes anteriores. Después de crear la sesión de persistencia para una dirección IP LDNS, todos los clientes finales que se conectan con ese LDLN reciben la misma dirección IP del centro de datos.

Persistencia del sitio en los servicios GSLB

La persistencia del sitio se hace efectiva mientras se procesan las solicitudes de aplicación. La persistencia del sitio solo funciona para el tráfico HTTP y HTTPS porque la persistencia se logra mediante la cookie HTTP. Como las cookies se mantienen en clientes HTTP (exploradores web), da visibilidad a los clientes que se encuentran detrás de las puertas de enlace DNS. Cuando utiliza cookies para lograr la persistencia de los clientes, no se consumen recursos en el dispositivo ADC para cada cliente entrante. Cuando introduce un servicio GSLB DOWN con un tiempo de retardo, el servicio entra en la transición al estado fuera de servicio (TROFS). La persistencia se admite siempre y cuando el servicio esté en estado ACTIVO o TROFS. Es decir, si el mismo cliente envía una solicitud para el mismo servicio dentro del tiempo de demora especificado después de que un servicio se marca TROFS, el mismo sitio GSLB (centro de datos) presta servicios a la solicitud.

Si accede a una aplicación a través de un alias, asegúrese de que el registro CNAME también está configurado en el dispositivo Citrix ADC. En una topología principal-secundario, la persistencia del sitio no funciona cuando se accede a una aplicación a través de un alias.

Nota

Si el proxy de conexión se especifica como método de persistencia del sitio y también quiere configurar la persistencia en servidores virtuales LB, no se recomienda la persistencia de IP de origen. Cuando se realiza el proxy de la conexión, se utiliza una dirección IP propiedad del dispositivo ADC, y no la dirección IP real del cliente. Configure una persistencia adecuada, que no utilice la IP de origen de la solicitud HTTP (S) para identificar al cliente, por ejemplo, la persistencia de cookies o la persistencia basada en reglas.

Configurar la persistencia en función de la dirección IP de origen

Si la persistencia IP de origen está configurada en el servidor virtual GSLB, se crean sesiones de persistencia para la dirección IP de origen de la solicitud DNS. Dependiendo de la función Subred de cliente extendido (ECS), la dirección IP de origen de la solicitud DNS se toma de cualquiera de las siguientes opciones:

Las sesiones de persistencia de un cliente duran hasta el tiempo de espera de persistencia. Una vez expirado el período de tiempo de espera, se borran las sesiones de persistencia existentes. Para solicitudes posteriores, se toma una nueva decisión GSLB y se puede seleccionar una dirección IP de servicio GSLB diferente. La persistencia de IP de origen en el servidor virtual GSLB y la persistencia del sitio en el servicio GSLB se complementa entre sí. Si la persistencia de IP de origen está inhabilitada en el servidor virtual GSLB, ese servidor elige un servicio GSLB diferente cada vez que el DNS intenta hacer la resolución. El cliente también se conecta a un servicio GSLB diferente y al centro de datos que recibe la solicitud de aplicación proxy la conexión al centro de datos que sirvió primero al cliente. Esto podría agregar algo de latencia. Por lo tanto, al habilitar la persistencia IP de origen en el servidor virtual GSLB puede evitar frecuentes tales saltos múltiples para solicitudes de aplicaciones. Si la sesión de persistencia de IP de origen ha caducado y el cliente se vuelve a conectar después de eso, la persistencia del sitio conecta al cliente de nuevo al centro de datos, que había servido al cliente inicialmente. Además, si el cliente se conecta de nuevo a través de una puerta de enlace DNS, que no está dentro del rango de máscara de persistencia configurado, la persistencia del sitio también ayuda a los clientes a adherirse al centro de datos que sirvió la primera solicitud.

Para configurar la persistencia basada en la dirección IP de origen mediante la CLI

En el símbolo del sistema, escriba:

set gslb vserver <name> -persistenceType (SOURCEIP|NONE) -persistenceId <positive_integer> [-persistMask <netmask>] –[timeout <mins>]

Ejemplo:

set gslb vserver vserver-GSLB-1 -persistenceType SOURCEIP -persistenceId 23 -persistMask 255.255.255.255 –timeout 2

Para configurar la persistencia basada en la dirección IP de origen mediante la GUI

  1. Vaya a Administración de tráfico > GSLB > Servidores virtuales y haga doble clic en el servidor virtual GSLB cuyo método desea cambiar (por ejemplo, vServer-GSLB-1).
  2. Haga clic en la sección Persistencia y, en la lista desplegable Persistencia, seleccione SOURCEIP y establezca los siguientes parámetros:
    • ID de persistencia: ID de persistencia
    • Tiempo de espera: Tiempo de espera
    • Máscara de red IPv4 o longitud de máscara IPv6: Máscara persistente

Configurar la persistencia del sitio basado en cookies HTTP

La persistencia del sitio se logra mediante cookies HTTP (conocidas como “cookie del sitio”) para volver a conectar el cliente al mismo servidor. Cuando el dispositivo GSLB responde a una solicitud DNS de cliente enviando la dirección IP del sitio GSLB seleccionado, el cliente envía una solicitud HTTP a ese sitio GSLB. El extremo de la aplicación en ese sitio GSLB agrega una cookie de sitio al encabezado HTTP y la persistencia del sitio está en vigor. Si el cliente envía una consulta DNS después de que caduque la caché del cliente, la solicitud DNS puede dirigirse a un sitio GSLB diferente. El nuevo sitio GSLB utiliza la cookie del sitio presente en el encabezado de solicitud del cliente para implementar la persistencia. La función de persistencia del sitio se activa en las siguientes condiciones:

  • Cuando el nombre de dominio en el encabezado de host coincide con uno de los dominios GSLB
  • Cuando se habilita la persistencia del sitio en el servicio GSLB que representa el servidor virtual que recibe el tráfico de la aplicación.

La cookie del sitio contiene información sobre el servicio GSLB seleccionado en el que el cliente tiene una conexión persistente. Si el servicio GSLB apuntado por la cookie está DOWN o se elimina de la configuración GLSB, el servidor virtual que recibe el tráfico continuará procesando el tráfico. La caducidad de las cookies se basa en el tiempo de espera de las cookies configurado en el dispositivo Citrix ADC. Si los nombres de servidor virtual no son idénticos en todos los sitios, debe utilizar el identificador de persistencia. Las cookies insertadas cumplen con RFC 2109.

Citrix ADC admite dos tipos de persistencia del sitio:

  • Proxy de conexión
  • redirección HTTP

Proxy de conexión

En el modo Proxy de conexión de persistencia del sitio, el centro de datos que recibe la solicitud de aplicación posterior realiza las siguientes tareas para establecer una conexión:

  1. Crea una conexión con el sitio GSLB que insertó la cookie del sitio.
  2. Proxies la solicitud del cliente al sitio original.

    Nota:

    El servidor proxy establece la conexión con el sitio original mediante los siguientes detalles:

    • El SNIP del nuevo sitio es la dirección IP de origen.
    • La dirección IP pública del servicio GSLB del sitio original es la dirección IP de destino.
    • Un puerto efímero es el puerto de origen y el puerto de servicio GSLB es el puerto de destino.
    • Utiliza protocolos HTTP o HTTPS dependiendo del tipo de servicio GSLB.
  3. Recibe una respuesta del sitio GSLB original.
  4. Retransmite esa respuesta al cliente.
  5. Cierra la conexión.

redirección HTTP

Si la configuración de GSLB utiliza persistencia de redireccionamiento HTTP, el nuevo sitio redirige la solicitud al sitio que insertó originalmente la cookie. El nombre de dominio en la URL de redirección es el dominio del sitio. Asegúrese de que tanto las cookies como los certificados SSL sean aplicables tanto al dominio GSLB como al dominio del sitio. Para aplicar cookies tanto para GSLB como para el dominio del sitio, el dominio de cookies debe ser el sitio al dominio GSLB. Para aplicar certificados SSL tanto a GSLB como al dominio de sitio, el certificado enlazado al servidor virtual SSL debe ser un certificado comodín.

El proxy de conexión se produce cuando se cumplen las siguientes condiciones:

  • Las solicitudes se envían para un dominio que participa en GSLB. El dominio se obtiene del encabezado URL/host.
  • El servicio GSLB local tiene habilitado el proxy de conexión.
  • La solicitud incluye una cookie válida que contiene la dirección IP de un servicio GSLB remoto activo.

Nota

En una configuración principal-secundario de GSLB, el proxy de conexión funciona como se pretende incluso cuando un servicio GSLB no está configurado en un sitio secundario. Sin embargo, si tiene configuración adicional, como autenticación de cliente, inserción de direcciones IP de cliente u otro requisito específico de SSL, debe agregar un servicio GSLB explícito en el sitio y configurarlo en consecuencia.

Para obtener más información acerca de la topología principal-secundario, consulte Implementación de topología principal-secundario mediante el protocolo MEP.

Para establecer la persistencia basada en cookies HTTP mediante el uso de la CLI

En el símbolo del sistema, escriba:

set gslb service <serviceName> -sitePersistence (ConnectionProxy [-sitePrefix <prefix>] | HTTPredirect -sitePrefix <prefix>)

Ejemplo:

set gslb service service-GSLB-1 -sitePersistence ConnectionProxy
set gslb service service-GSLB-1 -sitePersistence HTTPRedirect -sitePrefix vserver-GSLB-1

Para establecer la persistencia basada en cookies mediante el uso de la GUI

  1. Vaya a Administración de tráfico > GSLB > Servicios y seleccione el servicio que desea configurar para la persistencia del sitio (por ejemplo, Service-GSLB-1).
  2. Haga clic en la sección Persistencia del sitio y establezca la persistencia en función de las cookies.
Cómo configurar la persistencia en GSLB