Método de carga personalizado

El equilibrio de carga personalizado se realiza en parámetros del servidor como el uso de CPU, la memoria y el tiempo de respuesta. Cuando se utiliza el método de carga personalizado, el dispositivo Citrix ADC suele seleccionar un servicio que no gestiona transacciones activas. Si todos los servicios de la configuración de equilibrio de carga gestionan transacciones activas, el dispositivo selecciona el servicio con la carga más pequeña. Un tipo especial de monitor, conocido como monitor de carga, calcula la carga en cada servicio de la red. Los monitores de carga no marcan el estado de un servicio, pero sí quitan los servicios de la decisión de equilibrio de carga cuando esos servicios no están UP.

Para obtener más información acerca de los monitores de carga, consulte Descripción de los monitores de carga. El siguiente diagrama ilustra cómo funciona un monitor de carga.

Imagen 1. Funcionamiento de los monitores de carga

CustomLoad_Working

El monitor de carga utiliza sondeos de Simple Network Management Protocol (SNMP) para calcular la carga en cada servicio mediante el envío de una solicitud SNMP GET al servicio. Esta solicitud contiene uno o más ID de objeto (OID). El servicio responde con una respuesta SNMP GET, con métricas correspondientes a los OID SNMP. El monitor de carga utiliza las métricas de respuesta que se describen a continuación para calcular la carga en el servicio.

El monitor de carga calcula la carga en un servicio mediante los siguientes parámetros:

  • Valores de métricas recuperados mediante sondeos SNMP que existen como tablas en el dispositivo Citrix ADC.
  • Valor de umbral establecido para cada métrica.
  • Peso asignado a cada métrica.

Por ejemplo, considere tres servicios, Service-HTTP-1, Service-HTTP-2 y Service-HTTP-3.

  • Service-HTTP-1 está mediante 20 megabytes (MB) de memoria.
  • Servicio-HTTP-2 está mediante 70 MB de memoria.
  • Service-HTTP-3 está mediante 80 MB de memoria.

Los servidores con equilibrio de carga pueden exportar métricas como CPU y uso de memoria a los servicios, lo que a su vez puede proporcionarlas al monitor de carga. El monitor de carga envía una solicitud SNMP GET que contiene los OID 1.3.6.1.4.1.5951.4.1.1.41.1.5, 1.3.6.1.4.1.5951.4.1.1.41.1.4 y 1.3.6.1.4.1.5951.4.1.1.41.1.3 a los servicios. No se admiten los OID SNMP de tipo STRING, porque no se puede calcular la carga mediante un OID STRING. Las cargas se pueden calcular mediante otros tipos de datos, como INT y gauge32. Los tres servicios responden a la solicitud. El dispositivo Citrix ADC compara las métricas exportadas y, a continuación, selecciona Service-HTTP-1 porque tiene más memoria disponible. El siguiente diagrama ilustra este proceso.

Imagen 2. Cómo funciona el método de carga personalizada

custom_working2

Si cada solicitud utiliza 10 MB de memoria, el dispositivo Citrix ADC entrega las solicitudes de la siguiente manera:

  • Service-HTTP-1 recibe la primera, segunda, tercera, cuarta y quinta solicitudes, porque este servicio tiene el valor N más bajo.
  • Service-HTTP-1 y Service-HTTP-2 ahora tienen la misma carga, por lo que el servidor virtual vuelve al método round robin para estos servidores. Por lo tanto, Service-HTTP-2 recibe la sexta solicitud y Service-HTTP-1 recibe la séptima solicitud.
  • Dado que Service-HTTP-1, Service-HTTP-2 y Service-HTTP-3 todos ahora tienen la misma carga, el servidor virtual vuelve al método de round robin para Service-HTTP-3 también. Por lo tanto, Service-HTTP-3 recibe la octava solicitud.

En la siguiente tabla se resume cómo se calcula N.

Solicitud recibida Servicio seleccionado Valor N Actual (Número de Transacciones Activas) Observaciones
Request-1 Servicio-HTTP-1; (N = 20) N = 30 Service-HTTP-3 tiene el valor N más bajo.
Request-2 Servicio-HTTP-1; (N = 30) N = 40 -
Request-3 Servicio-HTTP-1; (N = 40) N = 50 -
Request-4 Servicio-HTTP-1; (N = 50) N = 60 -
Request-5 Servicio-HTTP-1; (N = 60) N = 70 -
Request-6 Servicio-HTTP-1; (N = 70) N = 80 Service-HTTP-2 y Service-HTTP-3 tienen los mismos valores N.
Request-7 Service-HTTP-2; (N = 70) N = 80 Service-HTTP-3 tiene los mismos valores N.
Request-8 Servicio-HTTP-1; (N = 80) N = 90 Service-HTTP-1, Service-HTTP-2 y Service-HTTP-3 tienen los mismos valores N.

Si se asignan diferentes pesos a los servicios, el algoritmo de carga personalizado considera tanto la carga de cada servicio como el peso asignado a cada servicio. Se selecciona un servicio mediante el valor (Nw) en la siguiente expresión:

Nw = (N) * (10000/peso)

Como en el ejemplo anterior, supongamos que a Service-HTTP-1 se le asigna un peso de 4, Service-HTTP-2 se le asigna un peso de 3 y Service-HTTP-3 se le asigna un peso de 2. Si cada solicitud utiliza 10 MB de memoria, el dispositivo Citrix ADC entrega las solicitudes de la siguiente manera:

  • Service-HTTP-1 recibe la primera, segunda, tercera, cuarta, quinta, sexta, séptima y octava solicitudes, porque este servicio tiene el valor Nw más bajo.
  • Service-HTTP-2 recibe la novena solicitud, porque este servicio tiene el valor Nw más bajo.

Service-HTTP-3 tiene el valor Nw más alto y, por lo tanto, no se considera para el equilibrio de carga.

La siguiente tabla resume cómo se calcula Nw.

|Solicitud recibida|Servicio seleccionado|Valor Nw actual (Número de transacciones activas) * (10000/Peso)|Observaciones |-|-|-|-| |Request-1|Service-HTTP-1; (Nw = 50000)|Nw = 75000|Service-HTTP-1 tiene el valor Nw más bajo. |Request-2|Service-HTTP-1; (Nw = 5000)|Nw = 100000|-| |Request-3|Service-HTTP-1; (Nw = 15000)|Nw = 125000|-| |Request-4|Service-HTTP-1; (Nw = 20000)|Nw = 150000|-| |Request-5|Service-HTTP-1; (Nw = 23333.34)|Nw = 175000|-| |Request-6|Service-HTTP-1; (Nw = 25000)|Nw = 200000|-| |Request-7|Service-HTTP-1; (Nw = 23333.34)|Nw = 225000|-| |Request-8|Servicio-HTTP-1; (Nw = 25000) |Nw = 250000||-| |Request-9|Servicio-HTTP-2; (Nw = 233333.34) |Nw = 266666.67|Servicio-HTTP-2 tiene el valor Nw más bajo.

Service-HTTP-1 se selecciona para el equilibrio de carga cuando finaliza sus transacciones activas o cuando el valor Nw de otros servicios (Service-HTTP-2 y Service-HTTP-3) es igual a 400.000.

En el siguiente diagrama se muestra cómo el dispositivo Citrix ADC utiliza el método de carga personalizado cuando se asignan pesos.

Imagen 3. Cómo funciona el método de carga personalizada cuando se asignan pesos

pesos de carga personalizados

Para configurar el método de carga personalizado, consulte Configuración de un método de equilibrio de carga que no incluye una directiva.

Método de carga personalizado