ADC

Cómo configurar la persistencia en GSLB

La persistencia garantiza que una serie de solicitudes de clientes para un nombre de dominio concreto se envíen al mismo centro de datos en lugar de equilibrar la carga. Si la persistencia está configurada para un dominio concreto, tiene prioridad sobre el método GSLB configurado. Puede utilizar la persistencia para implementaciones en las que la información relacionada con una transacción de cliente se almacena localmente en una instancia que ha atendido las solicitudes iniciales. Por ejemplo, las implementaciones para el comercio electrónico que utilizan un carrito de compras, donde el servidor necesita mantener el estado de la conexión para rastrear la transacción. El dispositivo NetScaler selecciona un centro de datos para procesar la solicitud de un 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á INACTIVO, el dispositivo NetScaler utiliza el método GSLB configurado para seleccionar un nuevo centro de datos. A continuación, se vuelve persistente para las solicitudes posteriores del cliente. Para la persistencia en GSLB, se debe configurar el mismo conjunto de identificadores de persistencia (PersistID) en los servidores virtuales de GSLB de todos los centros de datos. El módulo GSLB usa el identificador de persistencia para identificar de forma exclusiva un servidor virtual GSLB. Cuando la persistencia de la 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 NetScaler admita la persistencia en todos los sitios, la configuración relacionada con la persistencia debe realizarse en todos los sitios GSLB participantes. Citrix recomienda la persistencia en GSLB para las aplicaciones con estado, lo que requiere que los clientes se vuelvan a conectar 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 de GSLB

Persistencia en el servidor virtual GSLB

La persistencia en el servidor virtual GSLB se utiliza durante las solicitudes de DNS. La dirección IP de origen de la solicitud de DNS se utiliza para crear una sesión de persistencia entre el cliente y el centro de datos. Los clientes DNS suelen ser el DNS local (LDNS) o las puertas de enlace DNS que envían proxy a un conjunto de clientes que se encuentran detrás de ellos (en los ISP). La persistencia en un servidor virtual GSLB es independiente del protocolo de la aplicación. En general, se configuran varias puertas de enlace DNS o servidores de nombres de dominio locales (LDNS) en la red del cliente. Citrix recomienda configurar una máscara de persistencia adecuada, ya que para las solicitudes de DNS posteriores, independientemente de los dispositivos LDNS ascendentes que se utilicen para conectarse al dispositivo ADC, el cliente puede persistir en el mismo centro de datos en el que se habían atendido las solicitudes anteriores. Una vez creada la sesión de persistencia para una dirección IP de LDNS, todos los clientes finales que se conectan mediante ese LDNS reciben la misma dirección IP del centro de datos.

Persistencia del sitio en los servicios de GSLB

La persistencia del sitio se hace efectiva al procesar las solicitudes de la aplicación. La persistencia del sitio solo funciona para el tráfico HTTP y HTTPS porque la persistencia se logra mediante una cookie HTTP. Como las cookies se mantienen en los clientes HTTP (navegadores), permiten ver 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 por cada cliente entrante. Cuando introduce un servicio GSLB DOWN con un tiempo de demora, el servicio entra en la transición al estado fuera de servicio (TROFS). Se admite la persistencia siempre que 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 marque como TROFS, el mismo sitio GSLB (centro de datos) atiende 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 NetScaler. En una topología padre-hijo, la persistencia del sitio no funciona cuando se accede a una aplicación mediante un alias.

Nota

Si el proxy de conexión se especifica como método de persistencia del sitio y también desea configurar la persistencia en los servidores virtuales de LB, no se recomienda la persistencia de la IP de origen. Cuando la conexión se realiza mediante proxy, 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 cookie o la persistencia basada en reglas.

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

Si la persistencia de la 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 de DNS. Según la función de subred de cliente extendida (ECS), la dirección IP de origen de la solicitud de DNS se obtiene de cualquiera de las siguientes opciones:

Las sesiones de persistencia de un cliente duran hasta el tiempo de espera de persistencia. Una vez transcurrido el período de tiempo de espera, se borran las sesiones de persistencia existentes. Para las solicitudes posteriores, se toma una nueva decisión de GSLB y se puede seleccionar una dirección IP de servicio GSLB diferente. La persistencia de la IP de origen en el servidor virtual GSLB y la persistencia del sitio en el servicio GSLB se complementan entre sí. Si la persistencia de la IP de origen está inhabilitada en el servidor virtual GSLB, el servidor virtual GSLB elige un servicio GSLB diferente cada vez que el DNS intenta realizar la resolución. El cliente también se conecta a un servicio GSLB diferente y al centro de datos que recibe el proxy de solicitud de aplicación se conecta al centro de datos que atendió primero al cliente. Esto podría añadir algo de latencia. Por lo tanto, al habilitar la persistencia de la IP de origen en el servidor virtual GSLB, se pueden evitar frecuentes saltos múltiples para las 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 vuelve a conectar al cliente con el centro de datos, que había prestado servicio al cliente inicialmente. Además, si el cliente se vuelve a conectar a través de una puerta de enlace DNS, que no se encuentra dentro del rango de máscaras de persistencia configurado, la persistencia del sitio también ayuda a los clientes a permanecer en el centro de datos que atendió la primera solicitud.

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

En la línea de comandos, escriba:

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

Ejemplo:

set gslb vserver vserver-GSLB-1 -persistenceType SOURCEIP -persistenceId 23 -persistMask 255.255.255.255 –timeout 2
<!--NeedCopy-->

Para configurar la persistencia en función de la dirección IP de origen mediante la interfaz gráfica

  1. Vaya a Administración del tráfico > GSLB > Servidores virtuales y haga doble clic en el servidor virtual GSLB cuyo método desee cambiar (por ejemplo, vServer-GSLB-1).
  2. Haga clic en la sección Persistencia y, en la lista desplegable Persistencia, seleccione SOURCEIP y defina 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: PersistMask

Configurar la persistencia del sitio en función de cookies HTTP

La persistencia del sitio se logra mediante cookies HTTP (conocidas como “cookie de sitio”) para volver a conectar el cliente al mismo servidor. Cuando el dispositivo GSLB responde a una solicitud de DNS del cliente enviando la dirección IP del sitio GSLB seleccionado, el cliente envía una solicitud HTTP a ese sitio GSLB. El punto final de la aplicación de ese sitio GSLB añade una cookie de sitio al encabezado HTTP y la persistencia del sitio está activa. Si el cliente envía una consulta de DNS después de que la memoria caché del cliente haya caducado, es posible que la solicitud de DNS se dirija a un sitio GSLB diferente. El nuevo sitio de GSLB utiliza la cookie del sitio presente en el encabezado de la 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 del encabezado del host coincide con uno de los dominios GSLB
  • Cuando la persistencia del sitio está habilitada 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 al que apunta la cookie está INACTIVO o se elimina de la configuración de GLSB, el servidor virtual que recibe el tráfico continúa procesando el tráfico. La caducidad de la cookie se basa en el tiempo de espera de las cookie configurado en el dispositivo NetScaler. Si los nombres de los servidores virtuales no son idénticos en todos los sitios, debe utilizar el identificador de persistencia. Las cookies insertadas cumplen con la RFC 2109.

NetScaler admite dos tipos de persistencia de sitios:

  • Proxy de conexión
  • Redireccionamiento HTTP

Proxy de conexión

En el modo Connection Proxy 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. Envía por proxy 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 los protocolos HTTP o HTTPS según el tipo de servicio GSLB.
  3. Recibe una respuesta del sitio original de la GSLB.
  4. Transmite esa respuesta al cliente.
  5. Cierra la conexión.

Redireccionamiento HTTP

Si la configuración de GSLB utiliza la persistencia del redireccionamiento HTTP, el nuevo sitio redirige la solicitud al sitio que insertó originalmente la cookie. El nombre de dominio de la URL de redireccionamiento 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 a la GSLB como al dominio del sitio, el dominio de la cookie debe ser el dominio de sitio a GSLB. Para aplicar certificados SSL tanto a la GSLB como al dominio del 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 el proxy de conexión activado.
  • 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 e secundaria de GSLB, el proxy de conexión funciona según lo previsto incluso cuando un servicio de 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 sobre la topología principal-secundaria, consulte Implementación de topología principal-secundaria mediante el protocolo MEP.

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

En la línea de comandos, escriba:

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

Ejemplo:

set gslb service service-GSLB-1 -sitePersistence ConnectionProxy
set gslb service service-GSLB-1 -sitePersistence HTTPRedirect -sitePrefix vserver-GSLB-1
<!--NeedCopy-->

Para configurar la persistencia en función de las cookies mediante la interfaz gráfica de usuario

  1. Vaya a Administración del 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 configure la persistencia en función de las cookies.
Cómo configurar la persistencia en GSLB