Zabbix 7.0 LTS llega con cambio de licencia, mejoras y mas
Se ha dado a conocer el lanzamiento de la nueva versión de «Zabbix 7.0», la cual llega como una versión de período extendido de soporte oficial (LTS, por sus siglas en inglés) y que a partir de esta versión 7.0, el código del proyecto se distribuye ahora bajo la licencia AGPLv3, en lugar de la licencia GPLv2, ya que se menciona que una distintiva de la AGPLv3 es la introducción de restricciones adicionales para las aplicaciones que prestan servicios de red.
Al utilizar componentes AGPL en la prestación de servicios de red, el desarrollador está obligado a proporcionar al usuario el código fuente de todos los cambios realizados en estos componentes, incluso si el software subyacente del servicio no se distribuye y se utiliza exclusivamente en la infraestructura interna para organizar el funcionamiento del servicio.
Principales novedades de Zabbix 7.0
En esta nueva versión que se presenta de Zabbix 7.0 se destaca la introduccion de un modo de «monitoreo sintético de sitios y aplicaciones web» que emplea un motor de navegador y scripts complejos y permite la creación de capturas de pantalla del estado del sitio, la visualización del rendimiento y la monitorización de datos específicos de las aplicaciones web.
Otra de las novedades de Zabbix 7.0, es el soporte para clústeres de proxy y balanceo de carga en varios servidores, así como la utilización de equilibradores para asegurar configuraciones de alta disponibilidad en Zabbix. La escalabilidad de las soluciones existentes basadas en Zabbix se ha mejorado mediante la implementación de servidores proxy adicionales.
Se ha incrementado la escalabilidad y la velocidad de la recolección de datos mediante un sondeo asincrónico, que permite solicitar la próxima métrica sin tener que esperar a que se procese la solicitud anterior. Cada recolector admite hasta 1000 verificaciones paralelas. Esta funcionalidad asincrónica puede aplicarse a agentes y controladores que utilizan SNMP y HTTP.
Además de ello, se han incluido nuevos widgets para visualizar métricas y el estado de la infraestructura, también se ha implementado la navegación dinámica de widgets en modo panel, mediante interacciones que afectan a la visualización de la información entre los widgets. Además, se añade la capacidad de actualizar automáticamente los widgets al cambiar la fuente de datos. Todos los widgets son compatibles con las plantillas de host y muchos de ellos admiten valores agregados.
En Zabbix 7.0 LTS se han añadido configuraciones centralizadas de tiempo de espera, accesibles a través de la interfaz gráfica de usuario y la API, que permiten definir tiempos de espera individuales en relación con elementos específicos o anular los tiempos de espera a nivel de proxy.
De los demás cambios que se destacan:
- La velocidad para determinar la disponibilidad de hosts en las redes ha aumentado significativamente, hasta 100 veces más rápido, gracias a la paralelización de las comprobaciones.
- Se ha integrado el soporte para autenticación de dos factores mediante contraseñas de un solo uso (TOTP, Time-based One-Time Password).
- Se ha optimizado el rendimiento y la eficiencia del proxy al guardar las métricas recolectadas en la RAM sin necesidad de almacenamiento intermedio en disco.
- Se ha introducido un esquema híbrido que permite almacenar datos en memoria y disco.
- Verificación de la exactitud de los archivos de configuración.
- Mayor flexibilidad para el descubrimiento de hosts en entornos complejos como VMware y Kubernetes.
- Mejoras de rendimiento del frontend al cambiar la lógica para verificar los derechos de acceso.
- Ampliación significativa de las capacidades de monitoreo de DNS.
- Transferencia de informes PDF generados automáticamente a la categoría estable, con soporte implementado para paneles de varias páginas para informes en PDF.
- Estabilización de la capacidad de transmisión para enviar métricas y eventos a sistemas externos.
- Adición de la capacidad de pausar la recopilación de datos de elementos perdidos durante la detección automática.
- Inserción de la capacidad de ejecutar scripts en el agente activo, así como soporte para tipos de datos binarios y nuevas funciones de activación.
- Aceleración significativa del trabajo con datos de Prometheus.
Finalmente si estás interesado en poder conocer más al respecto, puedes consultar los detalles en el siguiente enlace.
¿Cómo instalar Zabbix en Ubuntu y derivados?
Para los interesados en poder instalar la nueva versión, es importante mencionar que para actualizar desde versiones anteriores, solo necesita instalar nuevos binarios (servidor y proxy) y una nueva interfaz. Zabbix actualizará automáticamente la base de datos. No es necesario instalar nuevos agentes.
Si quieres instalar esta utilidad en tu sistema, podrás hacerlo abriendo una terminal (puedes utilizar la combinación de teclas Ctrl + Alt + T) y en ella vas a teclear lo siguiente:
wget https://repo.zabbix.com/zabbix/7.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_7.0-1%2Bubuntu24.04_all.deb sudo dpkg -i zabbix-release_7.0-1%2Bubuntu24.04_all.deb sudo apt update sudo apt -y install zabbix-server-mysql zabbix-frontend-php zabbix-apache-conf zabbix-agent
Para el caso de otras versiones de Ubuntu puedes usar alguno de los siguientes paquetes. Ubuntu 22.04:
wget https://repo.zabbix.com/zabbix/7.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_7.0-1%2Bubuntu22.04_all.deb
Ubuntu 20.04
wget https://repo.zabbix.com/zabbix/7.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_7.0-1%2Bubuntu20.04_all.deb
Ubuntu 18.04
wget https://repo.zabbix.com/zabbix/7.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_7.0-1%2Bubuntu18.04_all.deb
Ubuntu 16.04
wget https://repo.zabbix.com/zabbix/7.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_7.0-1%2Bubuntu16.04_all.deb
Zabbix hace uso de una base de datos para almacenar información, por lo que debes contar con alguna de las soportadas ya instalada en tu sistema, además de hacer uso de Apache, por lo que te recomiendo la instalación de Lamp. Hecha la instalación ahora debemos crear una base de datos para Zabbix, esto lo podemos hacer tecleando:
sudo mysql -uroot -p password mysql> create database zabbix character set utf8 collate utf8_bin; mysql> grant all privileges on zabbix.* to zabbix@localhost identified by 'contraseña'; mysql> quit
En donde ‘contraseña’ es la contraseña de tu base de datos que debes recordar o anotar para posteriormente colocarla en un archivo de configuración.
Ahora vamos a importar lo siguiente:
zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p zabbix
Y vamos a editar el siguiente archivo, en donde vamos a colocar el password de la base de datos:
sudo nano /etc/zabbix/zabbix_server.conf
Y vamos a buscar la linea “DBPassword=” en donde vamos a colocar la contraseña de la base de datos.
Ahora vamos a editar el archivo /etc/zabbix/apache.conf:
Y buscamos la linea “php_value date.timezone” la cual vamos a descomentar (quitando el #) y vamos a colocar nuestra zona horaria (en mi caso México):
php_value date.timezone America/Mexico
Finalmente reiniciamos el servicio con:
sudo systemctl restart zabbix-server zabbix-agent apache2 sudo systemctl enable zabbix-server zabbix-agent apache2
Para acceder a Zabbix, lo puedes hacer desde tu navegador web dirgiendote a la ruta (en caso de un servidor) http://server_ip_or_name/zabbix o en un equipo local localhost/zabbix