5. Zabbix Proxy - Cuándo usarlo, tipos y riesgos comunes

Objetivo pedagógico

Que el operador comprenda:

  • Qué es un Zabbix Proxy y para qué sirve

  • En qué casos debe o no debe usarse

  • Qué tipo de proxy (activo o pasivo) está en uso

  • Qué riesgos operativos y técnicos introduce

  • Cómo validar que un host realmente está enviando sus datos


🧩 ¿Qué es un Zabbix Proxy?

Un Zabbix Proxy es un intermediario.

Se encarga de recolectar, procesar y almacenar temporalmente los datos de monitoreo, para luego enviarlos al Zabbix Server.

Es útil cuando:

  • No hay conexión directa entre host y server

  • Hay muchas ubicaciones remotas (sucursales, nodos geográficamente separados)

  • Se requiere reducir la carga del Zabbix Server

  • Se necesita resiliencia ante desconexiones temporales


🧠 El Zabbix Proxy no es una simple “repetidora”.

Tiene las siguientes funciones críticas:

| Función del Proxy                       | Descripción operativa                                                        |

| --------------------------------------- | ---------------------------------------------------------------------------- |

| Recolección local de ítems          | Actúa como poller local para hosts que no pueden ser accedidos por el Server |

| Almacenamiento temporal (buffering) | Guarda los datos en una base local (SQLite o MySQL) cuando no hay conexión   |

| Procesamiento local de triggers     | Puede evaluar triggers si están activados en proxy (desde Zabbix 5.4+)       |

| Envía datos al Server               | En intervalos, reenvía los datos al Zabbix Server cuando hay conectividad    |


Tipos de Proxy: Activo vs Pasivo

| Tipo de Proxy | ¿Quién inicia la conexión?    | Características comunes                           | Usos comunes                     |

| ------------- | ----------------------------- | ------------------------------------------------- | -------------------------------- |

| Activo    | El Proxy se conecta al Server | Ideal para redes cerradas o NAT, fácil de escalar | Sucursales, ambientes remotos    |

| Pasivo    | El Server se conecta al Proxy | Requiere que el Server tenga acceso al Proxy      | Data centers, ambientes internos |

El tipo se configura en:

Zabbix GUI → Administration → Proxies → Mode: Active / Passive


Diagrama funcional comparativo


               [Host A]              [Host B]

                  ↓                    ↓

              (monitoreados por proxy)

         ┌──────────────────────────────┐

         │         Zabbix Proxy         │

         │   - Pollers                  │

         │   - Trappers                 │

         │   - Buffer local (SQLite)    │

         └──────────────────────────────┘

                    ↓

          Conexión (activa o pasiva)

                    ↓

         ┌──────────────────────────────┐

         │         Zabbix Server        │

         └──────────────────────────────┘

️ ¿Cuándo debes usar un proxy?

✅ Usa un proxy si:

  • No hay acceso desde el Server al host por firewall, NAT o VPN

  • Tienes miles de hosts y quieres distribuir la carga

  • Hay enlaces inestables: el proxy garantiza reenvío cuando vuelva la red

  • Necesitas aislar dominios administrativos (IMSS, empresas, campus, etc.)

❌ Evita usar proxy si:

  • Tienes solo unos pocos hosts con conexión directa al Server

  • No necesitas buffering ni segmentación lógica

  • No hay quien administre o supervise el proxy


Riesgos comunes en producción

| Riesgo                           | Descripción                                                           | Consecuencia operativa                          |

| -------------------------------- | --------------------------------------------------------------------- | ----------------------------------------------- |

| Buffer saturado              | Si la base local del proxy se llena, se pierden datos             | Pérdida de histórico, huecos en gráficas        |

| Desfase temporal             | Los datos llegan con minutos u horas de atraso                        | Alertas que aparecen después del problema       |

| Falla de reenvío             | El proxy no logra enviar al Server (error de red o configuración)     | Problemas sin visibilidad en la GUI             |

| Proxy caído, Zabbix no avisa | Si el proxy se apaga, los hosts monitoreados no alertan               | Falsa sensación de que "todo está bien"         |

| Datos no confiables          | El reloj del proxy no está sincronizado (NTP)                         | Tiempos erróneos, triggers imprecisos           |

| Hosts mal vinculados         | Un host está configurado como “monitoreado por proxy” pero no lo está | El Server intenta consultar algo que no le toca |


🧪 Validaciones operativas

1. ¿Qué hosts están monitoreados vía proxy?

GUI → Configuration → Hosts → columna "Monitored by proxy"

O con consulta directa vía SQL:


SELECT host, proxy_hostid FROM hosts WHERE status=0;

2. ¿El proxy está enviando datos?

GUI → Monitoring → Latest Data

Selecciona un host monitoreado por proxy y observa los últimos valores.

Si hay huecos de tiempo → proxy desconectado.

3. ¿El buffer está lleno?

Revisión en logs del proxy:


tail -f /var/log/zabbix/zabbix_proxy.log

Busca líneas como:


Zabbix Proxy: Cannot send data to server: queue is full

Caso real – Sucursal sin monitoreo durante 4 días

Contexto:

Un hospital tiene un proxy activo en una red con salida a internet intermitente.

El proxy recolecta datos de 250 hosts.

Un cambio de DNS impide la conexión con el Zabbix Server.

Problema:

No se recibió ninguna alerta durante 4 días.

Cuando se restablece la conexión, Zabbix muestra problemas antiguos como nuevos.

Causa:

  • El proxy seguía recolectando datos, pero no podía reenviar.

  • Nadie monitoreaba el estado del proxy.

  • El buffering (SQLite) tenía límite de 1 GB y truncó datos antiguos.

Lección:

Un proxy no sustituye al monitoreo. El proxy también debe ser monitoreado.


🧠 Actividad – “Evalúa el uso de proxy”

Situación 1:

Estás monitoreando una red en una planta industrial con firewall restrictivo y sin acceso desde el Server.

¿Usarías un proxy? ¿Qué tipo?

Situación 2:

Tienes 300 hosts en red local con buena conexión al Server. ¿Vale la pena usar un proxy? ¿Por qué?


✅ Resultado esperado

  • El operador reconoce si un host depende de un proxy

  • Puede distinguir entre proxy activo y pasivo

  • Sabe revisar logs y detectar problemas de sincronización

  • Entiende que los proxies deben ser monitoreados como cualquier otro host

  • Desarrolla pensamiento de flujo distribuido, no centralizado


Checklist de evaluación

| Ítem                                                           | Cumplido |

| -------------------------------------------------------------- | -------- |

| Puede explicar la diferencia entre proxy activo y pasivo       | ✅ / ❌    |

| Sabe cuándo usar (y cuándo no usar) un proxy                   | ✅ / ❌    |

| Identifica señales de fallo en proxies (logs, huecos, alertas) | ✅ / ❌    |

| Entiende el riesgo del buffering local saturado                | ✅ / ❌    |

| Puede validar si un host está monitoreado vía proxy            | ✅ / ❌    |


Material de apoyo sugerido

  • Diagrama comparativo Activo vs Pasivo

  • Lista de síntomas comunes por fallo en el proxy

  • Plantilla de evaluación de proxy por entorno

  • Guía de validación de estado de proxies (zabbix_proxy.log)

  • Caso práctico “Sucursal aislada con buffering crítico”

  • Consulta SQL para obtener lista de hosts por proxy