Apagado estable de los servicios

Durante las interrupciones programadas de la red, como las actualizaciones del sistema o el mantenimiento del hardware, es posible que tenga que cerrar o inhabilitar algunos servicios. Más adelante, puede habilitar el servicio mediante el comando “enable service <name>.

Para evitar interrumpir las sesiones establecidas, puede colocar un servicio en el estado Transición Fuera del Servicio (TROFS) mediante una de las siguientes acciones:

  • Agregar un código o una cadena TROFS al monitor: Configure el servidor para que envíe un código o una cadena específicos en respuesta a un sondeo de monitor.
  • Inhabilite explícitamente el servicio y:
    • Establezca un retraso (en segundos).
    • Habilitar el apagado estable.

Adición de un código o cadena TROFS

Si vincula solo un monitor a un servicio y el monitor está habilitado para TROFS, puede colocar el servicio en el estado TROFS sobre la base de la respuesta del servidor a un sondeo de monitor. Esta respuesta se compara con el valor del parámetro TrofsCode para un monitor HTTP o el parámetro TrofsString para un monitor HTTP-ECV o TCP-ECV. Si el código coincide, el servicio se coloca en el estado TROFS. En este estado, continúa honrando las conexiones persistentes.

Si varios monitores están vinculados a un servicio, el estado efectivo del servicio se calcula sobre la base del estado de todos los monitores vinculados al servicio. Al recibir una respuesta TROFS, el estado del monitor habilitado para TRFS se considera UP a efectos de este cálculo. Para obtener más información acerca de cómo un dispositivo Citrix ADC designa un servicio como UP, consulte Establecimiento de un valor de umbral para los monitores enlazados a un servicio.

Importante:

  • Puede enlazar varios monitores a un servicio, pero no debe habilitar trofs-más de uno de ellos.
  • Puede convertir un monitor habilitado para TROFS en un monitor que no esté habilitado para TRFS, pero no viceversa.

Para configurar un código o una cadena TROFS en un monitor mediante la interfaz de línea de comandos

En el símbolo del sistema, escriba uno de los siguientes comandos:

add lb monitor <monitor-name> HTTP -trofsCode <respcode>

add lb monitor <monitor-name> HTTP-ECV  -trofsString <resp string>

add lb monitor <monitor-name> TCP-ECV  -trofsString <resp string>

Para modificar el código o la cadena TROFS mediante la interfaz de línea de comandos

En el símbolo del sistema, escriba uno de los siguientes comandos:

set lb monitor <trofs monitorname> HTTP -trofscode <newcode>

set lb monitor <trofs monitorname> HTTP-ECV -trofsstring <new string>

set lb monitor <trofs monitorname> TCP-ECV -trofsstring <new string>

Nota: Puede utilizar el comando set solo si se ha agregado anteriormente un monitor habilitado para TRFS. No puede utilizar este comando para establecer el código o la cadena TROFS para un monitor que no esté habilitado para TROFS.

Para configurar un código o una cadena TROFS en un monitor mediante la utilidad de configuración

  1. Vaya a Administración del tráfico > Equilibrio de carga > Monitores.
  2. En el panel Monitores, haga clic en Agregar y realice una de las acciones siguientes:
    • Seleccione Tipo como HTTP y especifique un código TROFS.
    • Seleccione Tipo como HTTP-ECV o TCP-ECV y especifique una cadena TROFS.

Desactivación de un servicio

Sin embargo, a menudo no se puede estimar la cantidad de tiempo necesario para que todas las conexiones a un servicio completen las transacciones existentes. Si una transacción no está terminada cuando caduca el tiempo de espera, el cierre del servicio puede provocar la pérdida de datos. En este caso, puede especificar el apagado estable para el servicio, de modo que el servicio solo se inhabilite cuando el servidor o el cliente cierran todas las conexiones de cliente activas actuales. Consulte la tabla siguiente para ver el comportamiento si especifica un tiempo de espera además de un apagado estable.

La persistencia se mantiene de acuerdo con el método especificado incluso si habilita el apagado estable. El sistema continúa sirviendo a todos los clientes persistentes, incluidas las nuevas conexiones de los clientes, a menos que el servicio esté marcado como DOWN durante el estado de apagado estable como resultado de las comprobaciones realizadas por un monitor.

En la siguiente tabla se describen las opciones de apagado estable.

Estado Resultados
El apagado estable está habilitado y se especifica un tiempo de espera. El servicio se cierra después de que se sirve la última de las conexiones de cliente activas actuales, incluso si el tiempo de espera no ha expirado. El dispositivo comprueba el estado de las conexiones una vez por segundo. Si el tiempo de espera expira, las sesiones abiertas se cerrarán.
El apagado estable está inhabilitado y se especifica un tiempo de espera. El servicio se cierra solo después de que expire el tiempo de espera, incluso si todas las conexiones establecidas se sirven antes de la expiración.
El apagado estable está habilitado y no se especifica tiempo de espera. El servicio se cierra solo después de que se sirve la última de las conexiones establecidas previamente, independientemente del tiempo que se tarda en servir a la última conexión.
El apagado estable está inhabilitado y no se especifica tiempo de espera. No hay apagado estable. El servicio se apaga inmediatamente después de que se elige la opción disable o se emite el comando disable. (El tiempo de espera predeterminado es cero segundos).

Para terminar las conexiones existentes cuando un servicio o un servidor virtual está marcado como DOWN, puede utilizar la opción Desactivar estado. Para obtener más información, consulte Habilitar la limpieza de conexiones de servidor virtual.

Para configurar el apagado estable para un servicio mediante la interfaz de línea de comandos

En el símbolo del sistema, escriba los siguientes comandos para cerrar un servicio correctamente y verificar la configuración:

disable service <name> [<delay>] [-graceFul (YES|NO)]

show service <name>

Ejemplo:

> disable service svc1 6000 -graceFul YES
Done
>show service svc1
svc1 (10.102.80.41:80) - HTTP
State: GOING OUT OF SERVICE (Graceful, Out Of Service in 5998 seconds)
Last state change was at Mon Nov 15 22:44:15 2010
Time since last state change: 0 days, 00:00:01.160
...
Down state flush: ENABLED

1 bound monitor:
1) Monitor Name: tcp-default
State: UP             Weight: 1
Probes: 13898    Failed [Total: 0 Current: 0]
Last response: Probe skipped - live traffic to service.
Response Time: N/A
Done

>show service svc1
svc1 (10.102.80.41:80) - HTTP
State: OUT OF SERVICE
Last state change was at Mon Nov 15 22:44:19 2010
Time since last state change: 0 days, 00:00:03.250
Down state flush: ENABLED

1 bound monitor:
1)  Monitor Name: tcp-default
State: UNKNOWN           Weight: 1
Probes: 13898    Failed [Total: 0 Current: 0]
Last response: Probe skipped - service state OFS.
Response Time: N/A
Done

Para configurar el apagado estable para un servicio mediante la utilidad de configuración

  1. Vaya a Gestión del Tráfico > Equilibrio de Carga > Servicios.
  2. Abra el servicio y, en la lista Acción, haga clic en Inhabilitar. Introduzca un tiempo de espera y seleccione Agraciado.