Citrix ADC

Orden de prioridad para los servicios de GSLB

La función de orden de prioridad para los servicios le permite priorizar el orden de los servicios o grupos de servicios en función de las preferencias de selección de equilibrio de carga. Puede configurar el orden de prioridad si hace lo siguiente:

  • Enlaza un servicio a un servidor virtual GSLB.
  • Enlazar un grupo de servicios a un servidor virtual GSLB.
  • Enlazar un miembro del grupo de servicios al grupo de servicios GSLB.

Actualmente, puede configurar el orden de prioridad de los servicios mediante los siguientes enfoques. Sin embargo, estos enfoques tienen las siguientes limitaciones:  

  • Configuración de una cadena de servidores virtuales de reserva: El número de líneas de configuración es alto y debe ejecutar el comando show varias veces para conocer el estado de todos los servicios GSLB para cada servidor virtual.

  • Configuración de la ubicación preferida: debe crear entradas de ubicación para todos los puntos finales de la aplicación.

La función de orden de prioridad para los servicios aborda las limitaciones anteriores con menos comandos de configuración y le ayuda a realizar la configuración de ubicación preferida sin la necesidad de representar la ubicación de todas las direcciones IP de los servicios GSLB.

Configurar el orden de prioridad para los servicios GSLB

Para configurar el orden de prioridad de los servicios GSLB, el-order <number>parámetro se agrega a los comandos bind.

Nota:

El número de pedido más bajo tiene la prioridad más alta.

Comando:

bind gslb vserver <vservername> -servicename/servicegroupname <servicename/servicegroupname> -order <number>

Por ejemplo, considere un conjunto de servicios que están enlazados a un servidor virtual GSLB (gv1). Con el - order <number>parámetro, puede priorizar el orden de selección de los servicios de la siguiente manera:

  • Conjunto 1 (s1, s2) vinculado a gv1 — orden 1
  • Conjunto 2 (s3, s4) vinculado a gv1 — orden 2
  • Conjunto 3 (s5, s6) vinculado a gv1 — orden 3

Después de vincular los servicios a gv1 y cuando gv1 recibe el tráfico del cliente, el orden de selección de los servicios es el siguiente:

  • El servidor virtual (gv1) selecciona los servicios del conjunto 1 (s1 y s2) con el número de pedido 1, porque a este conjunto se le asigna el número de pedido más bajo. De forma predeterminada, el número de pedido más bajo tiene la prioridad más alta.
  • Si todos los servicios del conjunto 1 están ABAJO, gv1 selecciona el conjunto 2 (s3 y s4) con el número de pedido 2.
  • Si todos los servicios del conjunto 1 y el conjunto 2 están inactivos, gv1 selecciona el conjunto 3 (s5 y s6) con el número de pedido 3.

Configurar el orden de prioridad para los servicios GSLB mediante la CLI

Para configurar el orden de prioridad de los servicios GSLB, escriba los siguientes comandos en el símbolo del sistema:

  1. Agregue sitios GSLB.

    add gslb site site1 1.1.1.1

    add gslb site site2 1.1.1.2

  2. Agregue un servidor virtual GSLB.

    add gslb vserver gv1 HTTP

  3. Agregue los servicios de GSLB.

    add gslb service gsvc1 1.1.1.3 http 80 -sitename site1

    add gslb service gsvc2 1.1.1.4 http 80 -sitename site2

    add gslb service gsvc3 1.1.1.5 http 80 -sitename site1

    add gslb service gsvc4 1.1.1.6 http 80 -sitename site2

    add gslb service gsvc5 1.1.1.7 http 80 -sitename site1

    add gslb service gsvc6 1.1.1.8 http 80 -sitename site2

  4. Establezca el número de pedido y vincule los servicios al servidor virtual GSLB.

    bind gslb vserver gv1 gsvc1 -order 1

    bind gslb vserver gv1 gsvc2 -order 1

    bind gslb vserver gv1 gsvc3 -order 2

    bind gslb vserver gv1 gsvc4 -order 2

    bind gslb vserver gv1 gsvc5 -order 3

    bind gslb vserver gv1 gsvc6 -order 3

Configurar el orden de prioridad para los servicios GSLB mediante la interfaz gráfica de usuario

Requisitos previos:

  • Ha creado sitios GSLB.
  • Ha creado un servidor virtual GSLB.
  • Ha creado servicios GSLB.

Para configurar el orden de prioridad de los servicios GSLB y vincularlos al servidor virtual GSLB, haga lo siguiente:

  1. Vaya aAdministración del tráfico > GSLB > Servidores virtualesy haga doble clic en el servidor virtual GSLB.

  2. En Servidor virtual GSLB, en la sección ServiciosGSLB y enlace de grupos de servicios GSLB, haga clic en Enlaces de servidor virtual GSLB a serviciosGSLB.

  3. En el cuadro de diálogoServicios GSLB y enlace de grupos de servicios GSLB, haga clic enAgregar enlace.

  4. En el cuadro de diálogoEnlace de servicios GSLB, seleccione un servicio.

  5. Escriba un número en el campoPedidopara establecer el orden de prioridad del servicio.

    Configurar el orden de prioridad y vincular el servicio GSLB

  6. Haga clic en Vincular

  7. Repita los pasos del 1 al 6 para configurar un número de orden de prioridad diferente para diferentes servicios.

Configurar el orden de prioridad para los servicios GSLB mediante comandos de directiva LB

De forma predeterminada, el número de pedido más bajo tiene la prioridad más alta. Sin embargo, puede diferir este comportamiento predeterminado mediante los nuevos comandos de acción y directiva de LB. Puede configurar el orden de selección de servicios en función del tráfico de clientes entrantes o los datos de los clientes.

Por ejemplo, considere un conjunto de servicios que están enlazados a un servidor virtual GSLB (gv1). Con el- order <number>parámetro, ha configurado el orden de prioridad para los servicios de la siguiente manera:

  • Conjunto 1 (s1, s2) vinculado a gv1 — orden 1

  • Conjunto 2 (s3, s4) vinculado a gv1 — orden 2

  • Conjunto 3 (s5, s6) vinculado a gv1 — orden 3

De forma predeterminada, el número de pedido más bajo tiene la prioridad más alta. Por lo tanto, el orden de prioridad predeterminado es 1, 2 y 3 para los servicios del conjunto 1, conjunto 2 y conjunto 3, respectivamente. Sin embargo, para un tráfico de clientes específico, quiere cambiar el orden de prioridad a 3, 1 y 2. Para lograr esto, puede agregar una directiva LB y vincularla a gv1.

Un comando de directiva de LB consta de dos elementos: una regla y una acción. La regla se asocia a una acción, que se lleva a cabo si una solicitud coincide con la regla.

Nota:

Los comandos de directiva LB son comunes para la configuración LB y GSLB y se aplican a las solicitudes administradas por el dispositivo Citrix ADC.

Acción LB

**Expresión:**

add lb action <name> <type> <string>

**Ejemplo:**

add lb action act1 -type SELECTIONORDER -value 3 2 1

Parámetros:

  • name: Nombre de la acción.

  • type: Tipo de acción.

  • string: valor de la acción especificada.

Directiva de LB

**Expresión:**

add lb policy <name> <rule> <action> <undefaction>

**Ejemplo:**

add lb policy pol1 -rule CLIENT.IP.SRC.EQ(8.8.8.8) -action act1

Parámetros:

  • name: Nombre de la directiva.

  • rule: Una regla se compone de una o más expresiones. La regla se asocia a una acción, que se lleva a cabo si la solicitud coincide con la regla.

  • action: Se admiten DROP, NOLBACTION y RESET.

  • undefaction: El dispositivo Citrix ADC genera un evento indefinido (evento UNDEF) cuando una solicitud no coincide con una directiva. Puede usar el set lb param -undefAction <action>comando para establecer la acción indefinida. Puede asignar estas acciones a un evento indefinido: DROP, NOLBACTION y RESET.

Consideremos un ejemplo en el que agrega una acción LB, una directiva LB y vincula la directiva a un servidor virtual GSLB (gv1) de la siguiente manera:

add lb action act1 -type SELECTIONORDER -value 3 1 2

add lb policy pol1 -rule CLIENT.IP.SRC.EQ(8.8.8.8) -action act1

bind gslb vserver gv1 -policyName pol1 -priority 20 - gotoPriorityExpression END -type REQUEST

La regla selecciona el tráfico del cliente que coincide con la dirección IP y envía ese tráfico a gv1. 8.8.8.8 El tipo de acción LB (SELECTIONORDER) define el orden de selección de servicios. Después de vincular la directiva LB a gv1, y cuando gv1 recibe el tráfico del cliente desde la dirección IP8.8.8.8, los servicios se seleccionan en el siguiente orden:

  1. El servidor virtual (gv1) selecciona los servicios en el conjunto 3 (s5 y s6) con el orden de prioridad 3.

  2. Si todos los servicios del conjunto 3 están ABAJO, gv1 selecciona el conjunto 1 (s1 y s2) con el orden de prioridad 2.

  3. Si todos los servicios del conjunto 3 y el conjunto 2 están inactivos, el gv1 selecciona el conjunto 1 (s1 y s2) con el pedido 1.

Configurar el orden de prioridad para los servicios GSLB con comandos de directiva LB mediante la CLI

Para configurar el orden de prioridad de los servicios GSLB mediante comandos de directiva LB, escriba los siguientes comandos en el símbolo del sistema:

  1. Agregue una acción LB.

    add lb action act1 -type SELECTIONORDER -value 3 1 2

  2. Agregue una directiva de LB.

    add lb policy pol1 -rule CLIENT.IP.SRC.EQ(8.8.8.8) -action act1

  3. Agregue sitios GSLB.

    add gslb site site1 1.1.1.1

    add gslb site site2 1.1.1.2

  4. Agregue un servidor virtual GSLB.

    add gslb vserver gv1 HTTP

  5. Enlazar la directiva LB al servidor virtual GSLB.

    bind gslb vserver gv1 -policyName pol1 -priority 20 - gotoPriorityExpression END -type REQUEST

  6. Agregue los servicios de GSLB.

    add gslb service gsvc1 1.1.1.3 http 80 -sitename site1

    add gslb service gsvc2 1.1.1.4 http 80 -sitename site2

    add gslb service gsvc3 1.1.1.5 http 80 -sitename site1

    add gslb service gsvc4 1.1.1.6 http 80 -sitename site2

    add gslb service gsvc5 1.1.1.7 http 80 -sitename site1

    add gslb service gsvc6 1.1.1.8 http 80 -sitename site2

  7. Establezca el orden y vincule los servicios al servidor virtual GSLB.

    bind gslb vserver gv1 gsvc1 -order 1

    bind gslb vserver gv1 gsvc2 -order 1

    bind gslb vserver gv1 gsvc3 -order 2

    bind gslb vserver gv1 gsvc4 -order 2

    bind gslb vserver gv1 gsvc5 -order 3

    bind gslb vserver gv1 gsvc6 -order 3

Configurar el orden de prioridad para los servicios GSLB con los comandos de directiva LB mediante la interfaz gráfica de usuario

Requisitos previos:

  • Ha creado sitios GSLB.
  • Ha creado un servidor virtual GSLB.
  • Ha creado servicios.

Paso 1: crear una acción LB:

  1. Vaya a AppExpert > LB > Acciones.

  2. EnLB Actions, haga clic enAgregar.

  3. En el cuadro de diálogoCrear acciones LB, especifique los valores para los siguientes parámetros:

    • Nombre de acción: act1
    • Tipo: SELECTIONORDER
    • Valor: 3 1 2

      Nota:

      Los números del campo Valorestán separados por un espacio.

    Agregar acción LB

  4. Haga clic en Crear.

Paso 2: Cree una directiva de LB:

  1. Vaya a AppExpert > LB > Directivas.

  2. EnDirectivas de LB, haga clic enAgregar.

  3. En el cuadro de diálogoCrear directivas LB, especifique los valores para los siguientes parámetros:

    • Nombre: pol1
    • Acción: act1
    • Acción de resultado indefinido: NOLBACTION
    • Expresión: CLIENT.IP.SRC.EQ (8.8.8.8)

    Agregar directiva de LB

  4. Haga clic enCrear.

Paso 3: Enlazar la directiva LB al servidor virtual GSLB:

  1. Vaya aAdministración del tráfico > GSLB > Servidores virtualesy haga doble clic en el servidor virtual GSLB.

  2. En Servidor virtual GSLB, en la sección Configuración avanzada, haga clic enDirectivas.

  3. En la secciónDirectivas, haga clic en Enlace de directivas LB de servidor virtual GSLB.

  4. En el cuadro de diálogo Enlace de directivas, especifique los valores para los siguientes parámetros:

    • Seleccione la directiva: pol 1
    • Prioridad: 10
    • Expresión de Goto: END

    Directiva de enlace LB

  5. Haga clic en Bind.

Paso 4: Configurar el orden de prioridad para los servicios GSLB:

Para configurar el orden de prioridad para GSLB, consulte el procedimiento Configurar el orden de prioridad para los servicios GSLB mediante la interfaz gráfica de usuario.

Configuración de persistencia para los servicios

Si la persistencia está configurada para un servicio, siempre se da preferencia a la persistencia, de forma predeterminada.

Por ejemplo, considere un servicio con persistencia configurada y orden de prioridad 1. Si un servicio con orden de prioridad 0 está ACTIVO, entonces siempre se da preferencia al servicio con orden de prioridad 1.

Sin embargo, puede anular este comportamiento predeterminado con el siguiente comando de la CLI:

set gslb param -overridePersistencyforOrder<YES/NO>

Consideremos el siguiente ejemplo:

Un conjunto de servicios se enlaza a un servidor virtual GSLB (gv1) con el siguiente orden de prioridad:

  • Conjunto 1 (s1, s2) vinculado a gv1 — orden 1

  • Conjunto 2 (s3, s4) vinculado a gv1 — orden 2

Escriba el siguiente comando en el símbolo del sistema para anular la persistencia:

set gslb parameter -overridePersistencyforOrder YES

Si el conjunto 1 (los servicios con persistencia están configurados) está ABAJO, los servicios establecidos 2 gestionan todas las solicitudes hasta que los servicios del conjunto 1 estén ACTIVOS. Se crea una entrada de persistencia para la prioridad 2.

Supongamos que después de algún tiempo, los servicios del conjunto 1 están ACTIVOS. Ahora, los servicios set 1 y set 2 están ARRIBA para gestionar las solicitudes. En este caso, se toman nuevas decisiones de equilibrio de carga a medida que los servicios de orden superior están ACTIVOS. La entrada de persistencia se anula con una nueva entrada de equilibrio de carga.

Alternar prioridad

Con la función de alternancia de prioridad, puede alternar todo el tráfico a un servicio de baja prioridad durante la actualización de la versión para un servicio con un orden de prioridad más alto. Puede usar los siguientes comandos para alternar la prioridad:

  • set gslb vserver –toggleorder <Ascending/Descending>

  • set gslb vserver v1 -orderthreshold 80

Por ejemplo, consideremos que hay dos servicios con las siguientes prioridades:

  • Service 1- order 0 
  • Servicio 2 — pedido 1

De forma predeterminada, el servicio 1 gestiona todo el tráfico. Si el servicio 1 necesita actualizarse, entonces el tráfico debe reencaminarse al servicio 2.

En el símbolo del sistema, escriba los siguientes comandos para alternar la prioridad:

set gslb vserver –toggleorder Descending

De forma predeterminada, 0 tiene una prioridad más alta. Sin embargo, después de la conmutación de prioridades, 1 se considera una prioridad más alta. Si la entrada de persistencia está presente para el servicio, el comportamiento de preferencia de persistencia es el que se explica en la sección Configuración de persistencia para los servicios.