ADC

Configurar la persistencia según las reglas definidas por el usuario

Advertencia:

Se ha eliminado el uso de expresiones clásicas para la regla de persistencia en la función de equilibrio de carga y ya no está disponible para la regla de filtrado en el dispositivo NetScaler a partir de la versión 13.1. Citrix recomienda no utilizar estas expresiones de directiva a través de la interfaz de línea de comandos de NetScaler, la GUI de NetScaler o la automatización de Nitro. Para obtener más información, consulte la tabla 1 y la tabla 2 de la página de preguntas frecuentes sobre el desuso de directivas clásicas .

Cuando se configura la persistencia basada en reglas, el dispositivo NetScaler crea una sesión de persistencia basada en el contenido de la regla coincidente antes de dirigir la solicitud al servicio seleccionado mediante el método de equilibrio de carga configurado. Posteriormente, dirige todas las solicitudes que coinciden con la regla al mismo servicio. Puede configurar la persistencia basada en reglas para servicios de tipo HTTP, SSL, RADIUS, ANY, TCP y SSL_TCP.

La persistencia basada en reglas requiere una expresión de directiva clásica o avanzada. Puede utilizar una expresión clásica para evaluar los encabezados de solicitud o una expresión de directiva avanzada para evaluar los encabezados de solicitud, los datos de formularios web de una solicitud, los encabezados de respuesta o los cuerpos de respuesta. Por ejemplo, puede utilizar una expresión clásica para configurar la persistencia basada en el contenido del encabezado de host HTTP. También puede utilizar una expresión de directiva avanzada para configurar la persistencia en función de la información de sesión de la aplicación en una cookie de respuesta o en un encabezado personalizado. Para obtener más información sobre la creación y el uso de expresiones de directiva clásicas y avanzadas, consulte Directivas y expresiones.

Las expresiones que puede configurar dependen del tipo de servicio para el que está configurando la persistencia basada en reglas. Por ejemplo, determinadas expresiones específicas de RADIUS no están permitidas para protocolos distintos de RADIUS, y las expresiones basadas en opciones TCP no están permitidas para tipos de servicio distintos del tipo CUALQUIERA. Para los tipos de servicio TCP y SSL_TCP, puede utilizar expresiones que evalúen datos de protocolo TCP/IP, datos de capa 2, opciones TCP y cargas útiles TCP.

Nota: Para un caso de uso que implica configurar la persistencia basada en reglas basada en datos del protocolo Financial Information Exchange (“FIX”) transmitidos a través de TCP, consulte Configuración de la persistencia basada en reglas basada en un par nombre-valor en un flujo de bytes TCP.

La persistencia basada en reglas se puede utilizar para mantener la persistencia con entidades como dispositivos Citrix SD-WAN, complementos Citrix SD-WAN, servidores de caché y servidores de aplicaciones.

Nota: En un servidor virtual CUALQUIERA, no puede configurar la persistencia basada en reglas para las respuestas.

Para configurar la persistencia basada en una regla definida por el usuario, primero configure la persistencia como se describe en Configuración de tipos de persistencia que no requieren una reglay establezca el tipo de persistencia en RULE. A continuación, puede llevar a cabo los siguientes procedimientos. Puede configurar la persistencia basada en reglas mediante la utilidad de configuración o la CLI.

Para configurar la persistencia según reglas definidas por el usuario mediante la CLI

En el símbolo del sistema, escriba:

set lb vserver <vserverName> [-rule <expression>][-resRule <expression>]
<!--NeedCopy-->

Ejemplo:

set lb vserver vsvr_name –rule http.req.header("cookie").value(0).typecast_nvlist_t('=',';').value("server")

set lb vserver vsvr_name –resrule http.res.header("set-cookie").value(0).typecast_nvlist_t('=',';').value("server")

<!--NeedCopy-->

Para configurar la persistencia en función de reglas definidas por el usuario mediante la interfaz gráfica de usuario

  1. Vaya a Administración del tráfico > Equilibrio de carga > Servidores virtualesy abra el servidor virtual.
  2. En la sección Persistencia, elige el tipo de persistencia que cumpla tus requisitos. El tipo de persistencia más adecuado para el servidor virtual está disponible como botones de opción. En la lista Otros se pueden seleccionar otros tipos de persistencia aplicables al tipo de servidor virtual específico.

Nota

Antes de NetScaler versión 12.0 compilación 56.20, todos los tipos de persistencia están disponibles en una sola lista desplegable Persistencia sin botones de opción.

Ejemplo: expresión clásica para una carga útil de solicitud

La siguiente expresión clásica crea una sesión de persistencia basada en la presencia de un encabezado HTTP User-Agent que contiene la cadena “MyBrowser” y dirige cualquier solicitud de cliente posterior que contenga este encabezado y cadena al mismo servidor que se seleccionó para la solicitud inicial.

http header User-Agent contains MyBrowser
<!--NeedCopy-->

Ejemplo: expresión de directiva avanzada para un encabezado de solicitud

La siguiente expresión de directiva avanzada hace lo mismo que la expresión clásica anterior.

HTTP.REQ.HEADER(“User-Agent”).CONTAINS (“MyBrowser”)

La siguiente expresión examina las respuestas de las cookies de “servidor” y, a continuación, dirige cualquier solicitud que contenga esa cookie al mismo servidor que se seleccionó para la solicitud inicial.

HTTP.RES.HEADER(“SET-COOKIE”).VALUE(0).TYPECAST_NVLIST_T(‘=’,’;’).VALUE(“server”)

Configurar la persistencia según las reglas definidas por el usuario