Zabbix Lab

Contexto y motivación

En mi trabajo implanté la monitorización con Zabbix, y quería poder reproducir ese tipo de montaje sin depender de la memoria ni de clicks manuales. Aquí está todo versionado en texto y se levanta con un solo comando.

El laboratorio levanta con `vagrant up` un servidor Zabbix completo (PostgreSQL + frontend con Nginx y PHP-FPM), un agente Linux y, opcionalmente, un Windows Server y un controlador de dominio, todos en una red host-only.

La configuración de hosts, triggers y notificaciones no la toco desde la interfaz. La defino en ficheros JSON y la aplico con scripts Python contra la API de Zabbix.

Tecnologías

VagrantDebian 12PostgreSQLPythonNginx

Características principales

  • Aprovisionamiento automático completo con un solo `vagrant up`
  • Hosts, triggers y alertas definidos como código (JSON + API de Zabbix)
  • Detección de caída de agentes, disco >85%, carga de CPU y memoria
  • Chequeo de conectividad de PostgreSQL
  • Alertas por email capturadas con Mailpit (sin SMTP real) y canal opcional de Telegram
  • Monitorización de hosts Windows y controladores de dominio vía WinRM

Galería

Conclusión

Es un entorno de laboratorio, no de producción, y está documentado como tal. Las credenciales son triviales a propósito y los problemas conocidos tienen su workaround anotado.

Me sirvió para coger la parte de Zabbix que ya manejaba en el trabajo y llevarla a infraestructura como código. Una cosa es saber configurar algo y otra saber automatizarlo.

Enlaces

Ver código en GitHub