Que el operador comprenda cómo opera el Zabbix Agent, cuáles son sus modos de funcionamiento (activo y pasivo), cómo se configura, qué rol cumple en el monitoreo, cómo se comunica con el Server o el Proxy, y cómo identificar fallos típicos derivados de errores de configuración o conectividad.
El Zabbix Agent es el programa que vive dentro del host monitoreado.
Es quien recoge información del sistema operativo (CPU, RAM, disco, procesos, logs, puertos, etc.) y la envía a Zabbix.
Sin agente, no hay monitoreo local detallado.
🧠 El agente es fundamental cuando:
Se necesita visibilidad de bajo nivel (procesos, logs, recursos)
No se usa SNMP o el sistema operativo no expone datos por otros medios
Se requiere validar archivos, sockets, servicios, ejecutables o contadores internos
El Zabbix Server (o Proxy) envía una solicitud directa al agente usando el puerto 10050.
El agente solo responde si se le pregunta.
Es el modo más clásico.
[Zabbix Server/Proxy]
↓ solicita dato (ej. CPU)
[Zabbix Agent en host]
↑ responde el valor
zabbix_get -s <IP_HOST> -k system.cpu.load
Requiere que el puerto 10050 esté abierto desde el Server.
El agente inicia la conexión hacia el Server (o Proxy), por el puerto 10051.
No espera a que lo consulten: envía de forma periódica todos los ítems marcados como “activos”.
Útil cuando:
* El Server no puede entrar al host (NAT, redes cerradas, VPN)
* Se requiere mayor control desde el host (push controlado)
[Zabbix Agent en host]
↓ envía datos a
[Zabbix Server/Proxy]
tail -f /var/log/zabbix/zabbix_agentd.log
El agente pide ítems al Server → recolecta → envía
| Característica | Modo pasivo | Modo activo |
| --------------------------- | ------------------------------------ | --------------------------------------------- |
| Inicia la conexión | Zabbix Server/Proxy | Zabbix Agent |
| Puerto usado | 10050 (en host) | 10051 (del server) |
| Firewall necesario | Abrir 10050 hacia el host | Solo salida permitida desde el host |
| Detección de red caída | Inmediata (Zabbix ve si no responde) | Lenta (si el host deja de enviar) |
| Configuración compleja | Baja | Media (requiere Hostname
correcto) |
| Diagnóstico con zabbix_get | ✅ Sí | ❌ No |
| Ideal para… | Entornos locales, sin restricciones | Ambientes remotos, con NAT, entornos cerrados |
Archivo del agente:
/etc/zabbix/zabbix_agentd.conf
Parámetros clave:
## En modo pasivo:
Server=10.250.8.178,10.105.9.0/24,10.102.53.0/24
## En modo activo NUNCA SE USA EN IPICYT:
ServerActive=10.100.1.1
Hostname=servidor-backend-01
| Síntoma operativo | Posible causa | Diagnóstico |
| ------------------------------------------ | ------------------------------------------------------------- | -------------------------- |
| “ZBX” en rojo en GUI | El Server no puede contactar al agente (puerto 10050 cerrado) | zabbix_get
falla |
| Datos no se actualizan en ítems activos | Agente no puede resolver nombre o IP del Server Active | Revisa logs del agente |
| Error “received invalid response” | Hostname mal configurado (no coincide con el de la GUI) | Hostname=
incorrecto |
| “Active check configuration error” en logs | El Server no reconoce al agente activo | No está definido en GUI |
| Intervalos de datos erráticos | Red intermitente, NAT no establecida, DNS mal | Validar logs, traceroute
|
Síntoma:
Zabbix GUI muestra “No data” en todos los ítems activos.
El host está en línea y responde ping.
Causa:
Hostname=VM-Linux-001
en zabbix_agentd.conf
Pero en Zabbix GUI el host fue dado de alta como vm-linux-001
.
→ No hay coincidencia exacta → Zabbix ignora los datos entrantes.
Solución:
Unificar el valor del Hostname=
con el nombre del host en la GUI.
El campo Hostname
no es decorativo, es la clave de enlace de datos activos.
Síntoma:
Todos los ítems pasivos muestran “ZBX” gris, sin valores actualizados.
Pero el host está encendido.
Causa:
El firewall del host tiene cerrado el puerto TCP 10050 → Zabbix no puede hacer polling.
Solución:
Agregar regla:
sudo firewall-cmd --permanent --add-port=10050/tcp
sudo firewall-cmd --reload
Síntoma:
El agente parece estar corriendo, pero en logs aparece:
cannot resolve [zabbix-server.infra.local]
active checks are not getting any data
Causa:
El valor en ServerActive=
está mal escrito o no resolvible por el agente.
Solución:
Agregar la IP o corregir DNS en /etc/hosts
o /etc/resolv.conf
Se entrega un entorno simulado con 2 hosts:
webserver01
(modo pasivo)
appserver02
(modo activo)
Tareas del operador:
Verificar con zabbix_get
que webserver01
responde en 10050
Leer log de appserver02
y validar si hay errores de conexión
Confirmar si Hostname=
de ambos coincide con GUI
Indicar qué tipo de fallo puede estar presente si system.cpu.load
muestra No data
*“Un agente que responde no es garantía de que esté reportando correctamente.
Hay que validar: ¿qué modo usa?, ¿qué hostname tiene?, ¿a qué servidor se conecta?, ¿el firewall lo permite?”*
El operador distingue entre agente activo y pasivo
Sabe identificar fallos comunes de configuración
Puede diagnosticar problemas usando herramientas básicas (zabbix_get
, logs, ping, netstat)
Entiende que la configuración del agente es crítica y sensible a detalles
| Ítem | Cumplido |
| ----------------------------------------------------------------------- | -------- |
| Distingue el modo pasivo y activo del agente | ✅ / ❌ |
| Sabe usar zabbix_get
para pruebas de modo pasivo | ✅ / ❌ |
| Puede interpretar errores comunes en logs del agente | ✅ / ❌ |
| Identifica síntomas de puerto bloqueado, hostname incorrecto, o DNS mal | ✅ / ❌ |
| Realiza diagnóstico básico de conectividad y configuración | ✅ / ❌ |