Esta página fue traducida automáticamente. Si detectas un error, selecciónalo y presiona Ctrl+Enter para informarlo a los editores.

2 Balanceo de carga de proxy y alta disponibilidad

Descripción general

Los proxies de Zabbix pueden organizarse en grupos de proxies para habilitar el balanceo de carga y la alta disponibilidad de proxies.

El balanceo de carga y la alta disponibilidad de proxies es la redistribución automática de equipos entre proxies dentro de un grupo de proxies:

  • Si un proxy se desconecta, sus equipos se moverán a otros proxies, manteniendo así una alta disponibilidad de proxies.
  • Si un proxy tiene un número mucho mayor/menor de equipos que otros proxies, sus equipos se moverán a otros proxies para equilibrar la carga de los proxies.

La redistribución de equipos solo funciona entre proxies en un grupo que cumplan las siguientes condiciones:

  • Los proxies ejecutan Zabbix 7.0 o posterior.
  • La versión del proxy coincide con la versión del servidor Zabbix. Si se utiliza el agente Zabbix (pasivo), la versión del proxy debe coincidir con la versión del agente. Los agentes activos solo requieren Zabbix 7.0 o posterior.
  • El grupo de proxies tiene un estado en línea.
  • Los equipos están configurados para ser monitorizados por un grupo de proxies en lugar de por proxies individuales.

La salud del grupo de proxies puede ser monitorizada con comprobaciones internas por cualquier equipo asignado a un grupo de proxies. Sin embargo, para monitorizar la salud de un único proxy en un grupo, asigne el equipo a ese proxy; de lo contrario, los resultados pueden ser inconsistentes.

Redistribución de equipos

El balanceo de carga y la alta disponibilidad de los proxies son gestionados por el servidor Zabbix a través del gestor de grupos de proxies, que monitoriza continuamente el estado de todos los proxies en cada grupo de proxies y su distribución de equipos.

La alta disponibilidad de los proxies dentro de un grupo se garantiza mediante la conmutación por error de proxies: cuando un proxy se desconecta, sus equipos se redistribuyen inmediatamente a otros proxies. También se produce el balanceo de carga de los proxies, ya que los equipos se reasignan a los proxies con menos equipos asignados.

Además, el balanceo de carga de los proxies se activa cuando el número de equipos de un proxy difiere del promedio del grupo en al menos 10 equipos y un factor de 2 (exceso o déficit de equipos). Si el desequilibrio persiste después de un período de gracia (10 x retardo de conmutación por error), el grupo de proxies se pone en cola para la redistribución de equipos.

El gestor de grupos de proxies redistribuye los equipos utilizando la siguiente lógica:

  1. Calcular el número promedio de equipos por proxy.
  2. Para los proxies con exceso de equipos: mover los equipos excedentes al grupo de proxies no asignados.
  3. Para los proxies con déficit de equipos: calcular cuántos equipos se necesitan para alcanzar el equilibrio.
  4. Eliminar el número requerido de equipos de los proxies con más equipos.
  5. Mover los equipos no asignados a los proxies con menos equipos.

Ejemplos de redistribución de equipos:

Equipos en el proxy Promedio del grupo Reasignación de equipos
100 50
60 50 No
40 50 No
25 50
15 5
10 5 No

Tener menos de 10 equipos monitorizados por un grupo de proxies puede provocar una distribución desigual de equipos entre los proxies del grupo.

Configuración de un grupo de proxies

Para configurar un grupo de proxies en la interfaz de Zabbix:

  1. Vaya a Administración > Grupos de proxies
  2. Haga clic en Crear grupo de proxies

Parámetro Descripción
Nombre Nombre del grupo de proxies.
Período de conmutación por error Período en segundos durante el cual un proxy del grupo debe comunicarse con el servidor Zabbix para ser considerado en línea (por defecto: 1m; rango: 10s–15m). Si el proxy no se comunica dentro de este período, el estado del proxy cambia a Desconectado y sus equipos se redistribuyen inmediatamente a otros proxies. El balanceo de carga de proxies comienza después de 10 x este período.
Admite sufijos de tiempo (por ejemplo, 30s, 1m) y macros de usuario.
Número mínimo de proxies Número mínimo de proxies en línea requeridos para mantener el grupo de proxies en línea (por defecto: 1; rango: 1–1000).
Admite macros de usuario.

Este valor debe ser menor que el número total de proxies en el grupo. Por ejemplo, en un grupo de 10 proxies, establecer el mínimo en 10 hará que el grupo se desconecte si falla algún proxy. Tenga en cuenta que los proxies en línea en un grupo desconectado continúan funcionando normalmente, pero no se realizará balanceo de carga/alta disponibilidad.
Descripción Descripción del grupo de proxies.
Proxies Muestra una lista de hasta cinco proxies (como enlaces o en texto plano, dependiendo de los permisos del usuario sobre los proxies) al editar un grupo con proxies.

Configuración del balanceo de carga de proxy

Para utilizar el balanceo de carga de proxy, debe configurar un grupo de proxies en la interfaz de Zabbix (ver arriba) y asegurarse de que los equipos estén monitorizados por un grupo de proxies, no por proxies individuales (puede usar la actualización masiva de equipos para mover equipos de proxies a un grupo de proxies).

Si utiliza el agente Zabbix, configúrelo también de la siguiente manera:

  • Para comprobaciones pasivas, enumere todos los proxies del grupo de proxies en el parámetro Server.
  • Para comprobaciones activas, se recomienda enumerar todos los proxies del grupo de proxies o el servidor Zabbix en el parámetro ServerActive. Tenga en cuenta que solo el agente Zabbix 7.0 (o posterior) funcionará con grupos de proxies en su modo activo.

Si el parámetro ServerActive incluye solo un proxy de un grupo de proxies (o el servidor Zabbix), el agente aún podrá conectarse al proxy correcto. Cuando el servicio del agente se inicia y se conecta al proxy especificado, el agente recibirá y almacenará en caché la lista completa de IPs de los proxies y su carga actual dentro del grupo. Luego, las comprobaciones activas se redirigirán al proxy en línea correcto para el equipo, según la asignación actual de proxy-equipo dentro del grupo de proxies.

Tener solo un proxy especificado en el parámetro ServerActive del agente Zabbix puede provocar la pérdida de datos de monitorización si el agente se inicia/reinicia mientras el proxy especificado está fuera de línea.

Al utilizar Zabbix sender, las solicitudes de datos también se redirigen al proxy en línea correcto para el equipo, según la asignación actual de proxy-equipo dentro del grupo de proxies. Sin embargo, si está enviando valores de varios equipos desde un archivo de entrada, utilice la opción -g para evitar enviar datos al proxy incorrecto.

El agente Zabbix también debe poder conectarse a todos los proxies del grupo de proxies a través del cortafuegos. De lo contrario, las comprobaciones activas pueden quedarse colgadas o fallar durante la redirección o conmutación por error. Por ejemplo:

  • Durante las comprobaciones activas, un proxy puede redirigir el agente a otro proxy. Si ese proxy está bloqueado por un cortafuegos, la comunicación se quedará colgada mientras espera una respuesta.
  • En configuraciones estables de alta disponibilidad sin reequilibrio reciente, los agentes pueden no contactar nunca con los proxies de respaldo. Si las reglas del cortafuegos cambiaron y no se probaron, la conmutación por error puede fallar.
Prueba del balanceo de carga de proxies

Para probar el balanceo de carga de proxies:

  1. Configure un grupo de proxies.
  2. Asegúrese de que el grupo de proxies tenga un estado en línea.
  3. Asegúrese de que los equipos estén monitorizados por un grupo de proxies, no por proxies individuales (puede utilizar la actualización masiva de equipos para mover equipos de proxies a un grupo de proxies).
  4. Espere unos segundos para que se actualice la configuración y se distribuyan los equipos entre los proxies del grupo. Observe el cambio actualizando la lista de equipos en Administración > Proxies.
Notas importantes
  • Trampas SNMP no son compatibles con los proxies en un grupo de proxies.
  • Las comprobaciones que dependen de una configuración externa (por ejemplo, scripts para comprobaciones externas o configuración ODBC para comprobaciones de base de datos) deben tener la misma configuración en todos los proxies del grupo de proxies.
  • Comprobaciones de base de datos requieren permisos extendidos en el objeto/servidor de base de datos.
  • Los hosts VMware monitorizados por un grupo de proxies se distribuirán aleatoriamente entre los proxies del grupo. Esto provoca que cada proxy almacene en caché todos los datos de VMware, lo que resulta en una carga adicional en vCenter.
  • Los hosts creados a partir de datos de autorregistro de un proxy en un grupo de proxies se configuran para ser monitorizados por ese grupo de proxies. Sin embargo, los hosts creados a partir de datos de descubrimiento de red de un proxy en un grupo de proxies se configuran para ser monitorizados por ese proxy.