Cómo instalar Zabbix en Debian 10 Buster

Cómo instalar Zabbix en Debian 10 Buster

En este artículo vamos a ver cómo instalar Zabbix en Debian 10 Buster paso a paso, de modo que podremos monitorizar cualquier servidor o VPS Debian gracias a este potente conjunto de herramientas. Al final de esta guía serás capaz de montar Zabbix Server, Zabbix Frontend y Zabbix Agent en la misma máquina Debian 10 Buster y, por supuesto, monitorizar otras máquinas remotas.

Antes de instalar Zabbix en Debian 10 Buster

Para completar esta guía de instalación de Zabbix en Debian 10 Buster necesitas partir de estos requisitos mínimos:

  • Un sistema Debian 10 Buster actualizado.
  • Una pila tipo LAMP, o sea, servidor web con PHP y base de datos (MariaDB/MySQL o PostgreSQL).
  • Acceso a consola como root o un usuario con permisos de sudo.
  • Conexión a Internet.

En esta guía usaremos Apache como servidor web y MariaDB como base de datos. Si aún no tienes este tipo de entorno puedes consultar  la guía de instalación LAMP en Debian 10 Buster.

Si está todo listo, puedes abrir una consola de comandos y empezamos con el trabajo.

Inicialmente montaremos Zabbix Frontend, Zabbix Server y Zabbix Agent en la misma máquina Debian 10, para después instalar Zabbix Agent en una segunda máquina Debian 10 que quieras monitorizar remotamente desde la primera.

Cómo instalar Zabbix en Debian 10 Buster

Para instalar Zabbix en Debian 10 Buster tendremos que instalar el repositorio oficial de Zabbix, ya que mientras la última versión estable lanzada es la 4.4, los repositorios de Debian sólo ofrecen la 4.0. Por lo tanto, el primer paso es instalar el repositorio de Zabbix 4.4 para Debian 10 Buster, que podemos obtener en la página oficial:

como descargar zabbix 4.2 en debian 10 buster

Cómo instalar el repositorio de Zabbix para Debian 10

Vamos a instalar el repositorio de Zabbix para Debian 10 Buster. Repite la instalación de este paso tanto en el servidor Zabbix como en las máquinas remotas Debian 10 que quieras monitorizar con el servidor.

El repositorio se instala a través de un paquete .deb que podemos descargar desde consola:

~$ wget https://repo.zabbix.com/zabbix/4.4/debian/pool/main/z/zabbix-release/zabbix-release_4.4-1+buster_all.deb

El paquete se descarga enseguida y lo siguiente es instalarlo:

~$ sudo dpkg -i zabbix-release_4.4-1+buster_all.deb

Ahora tendremos el archivo zabbix.list en el directorio de repositorios de apt, por lo que debemos actualizar la información de las listas de paquetes:

~$ sudo apt update

Si quieres saber de qué paquetes de Zabbix disponemos ahora, puedes hacer una búsqueda:

~$ apt search ^zabbix

Y podrás ver todos los paquetes cuyo nombre empiecen por zabbix.

Cómo instalar el servidor Zabbix en Debian 10

Este paso lo haremos en la máquina que actuará como Server y Frontend Zabbix, que además se monitoreará a sí misma.

Necesitamos como mínimo tres componentes:

  • El agente, que recopila y envía datos de la máquina que se monitoriza.
  • El servidor, basado en el servicio de bases de datos que tengamos en nuestro sistema.
  • El frontend, que nos permitirá visualizar los datos.

Como en el ejemplo de esta guía usamos MariaDB como motor de bases de datos instalaremos los paquetes zabbix-server-mysql, zabbix-frontend-php, zabbix-agent:

~$ sudo apt install -y zabbix-server-mysql zabbix-frontend-php zabbix-agent zabbix-apache-conf

Debido a la modificación de la configuración de Apache y a la instalación de algunas extensiones de PHP, será necesario recargar la configuración del servidor web:

~$ sudo systemctl reload apache2

Se crean dos nuevos servicios, zabbix-agent.service y zabbix-server.service, a los que también podemos referirnos por los nombres cortos, zabbix-agent y zabbix-server.

El servicio Zabbix Agent queda iniciado tras la instalación, pero no está habilitado para iniciar con Debian 10 Buster.

El servicio Zabbix Server no está iniciado y tampoco habilitado, pero no debemos iniciarlo hasta terminar la configuración inicial.

Preparativos de la base de datos

Zabbix necesita una base de datos y un usuario con permisos sobre ella, así que el siguiente paso es crearlos. Podemos usar el cliente de consola mysql:

~$ sudo mysql

En primer lugar creamos la base de datos:

> create database zabbix;

En MariaDB o MySQL 5 creamos el usuario como de costumbre:

> create user zabbix@localhost identified by 'XXXXXXXX';

Pero en MySQL 8 es mejor asegurarse de que el usuario se crea con el plugin de autenticación compatible:

> create user zabbix@localhost identified with mysql_native_password by 'XXXXXXXX';

En cualquier caso, acto seguido otorgamos al usuario los permisos sobre la base:

> grant all privileges on zabbix.* to zabbix@localhost;

Refrescamos los permisos de la base y salimos del cliente:

> flush privileges;
> exit

En otras aplicaciones es el propio instalador el que crea la estructura incial de la base de datos y la puebla con los datos iniciales. Sin embargo, en Zabbix el proceso lo haremos de forma manual, importando un archivo preparado al efecto:

~$ zcat /usr/share/doc/zabbix-server-mysql/create.sql.gz | mysql zabbix -u zabbix -p

Configuración de Zabbix Server

Editamos la configuración de Zabbix Server a través de su archivo principal de configuración, que en Debian 10 es /etc/zabbix/zabbix_server.conf:

~$ sudo nano /etc/zabbix/zabbix_server.conf

Buscaremos la directiva DBPassword:

...
### Option: DBPassword
#       Database password.
#       Comment this line if no password is used.
#
# Mandatory: no
# Default:
# DBPassword=
...

Está desactivada, así que la activamos y especificamos la contraseña que creamos:

DBPassword=XXXXXXXX

Guardamos y cerramos el archivo.

Preparación de los servicios

Habíamos dejado los servicios de Zabbix apartados tras la instalación. Ha llegado el momento de dejarlos funcionando.

En primer lugar iniciamos zabbix-server, ahora que ya puede conectar a la base de datos:

~$ sudo systemctl start zabbix-server.service

Y ahora podemos reiniciar zabbix-agent, que podrá conectar con Zabbix Server:

~$ sudo systemctl restart zabbix-agent.service

Podemos comprobar el estado de ambos servicios con el comando systemctl status zabbix-agent zabbix-server:

instalar zabbix agent y server en debian 10 buster

Finalamente, si queremos que tanto el agente como el servidor Zabbix inicien automáticamente cada vez que arranque Debian 10 Buster, deberemos habilitarlos:

~$ sudo systemctl enable zabbix-agent zabbix-server

Preparación del firewall

En el caso de que vayas a monitorizar máquinas remotas y uses firewall, debes añadir una excepción que permita a las máquinas remotas conectar con el puerto 10051 TCP de Zabbix Server.

Por ejemplo, si usas UFW:

~$ sudo ufw allow 10051/tcp

O si quieres permitir la conexión únicamente a la máquina remota:

~$ sudo ufw allow from XXX.XXX.XXX.XXX to any port 10051 proto tcp

Instalación vía web

Vamos a instalar Zabbix Frontend en Debian 10 Buster mediante su instalador web. Para acceder al fronted de Zabbix debemos añadir el sufijo /zabbix a la dirección IP o dominio de la máquina Debian 10.

En la máquina de este ejemplo, el servidor Debian 10 es accesible mediante el dominio debian10.local, por lo tanto podríamos usar la URL http://debian10.local/zabbix para acceder mediante el navegador.

Accederemos a la página de bienvenida del instalador:

como instalar zabbix 4.4 en debian 10 buster

En la siguiente página se nos mostrará una lista de pre-requisitos que deben cumplirse antes de proseguir con la instalación:

como instalar zabbix en debian 10 buster

Si estás siguiendo los pasos de esta guía todos los requisitos deberían estar cumplidos, por lo que podemos continuar.

En la siguiente página configuramos la conexión a la base de datos:

instalar zabbix 4.4 en debian 10 buster

En principio vienen todos los campos rellenos con los valores por defecto, excepto la clave del usuario que creamos para manejar la base de datos.

Introducimos la contraseña y continuamos con la pantalla de conexión de Zabbix Frontend con Zabbix Server:

instalar zabbix en debian 10 buster

Normalmente el servidor Zabbix y el frontend se encuentran en la misma máquina (desde luego en este ejemplo es así), así que los valores por defecto son los correctos. No es necesario poner un nombre a la instalación.

Continuamos y se nos mostrará un resumen de la configuración:

instalación de zabbix 4.4 en debian 10 buster

Continuamos y en un instante estaremos en la pantalla final de la instalación:

como instalar zabbix server en debian 10 buster

Además de felicitarnos por conseguir terminar el proceso de instalación, el instalador nos informa que la configuración de Zabbix Frontend se ha guardado correctamente en /usr/share/zabbix/conf/zabbix.con.php.

Al finalizar se nos presenta la página de inicio de sesión de Zabbix Frontend:

instalar zabbix server en debian 10 buster

Si te preguntas en qué momento creaste un usuario y contraseña para acceder a Zabbix Frontend, la respuesta es que no lo hiciste. El usuario por defecto es admin y su contraseña es zabbix

Al inciar sesión, por fin entramos a la interfaz de Zabbix:

como instalar zabbix frontend en debian 10 buster

Cómo añadir una máquina remota Debian 10

Hasta ahora hemos instalado el agente que envía datos, el servidor que los procesa y el frontend que los muestra todo en una misma máquina Debian 10. En esta parte del tutorial vamos a añadir una máquina remota.

Si has seguido el tutorial hasta aquí, ya deberías tener instalado el repositorio de Zabbix 4.4 para Debian 10 Buster en las máquinas remotas, así que ahora instalaremos el agente Zabbix:

~$ sudo apt install -y zabbix-agent

El servicio zabbix-agent queda en ejecución, pero no habilitado para el inicio automático, así que lo habilitamos:

~$ sudo systemctl enable zabbix-agent

Ahora vamos a configurar Zabbix Agent para que pueda comunicarse con el servidor Zabbix. Editaremos el archivo de configuración del agente Zabbix:

~$ sudo nano /etc/zabbix/zabbix_agentd.conf

Buscaremos la directiva Server:

...
Server=127.0.0.1
...

Por defecto viene configurado como servidor la máquina local (por eso no hubo que configurar el agente Zabbix del servidor Zabbix), así que cambiaremos ese valor por el dominio o dirección IP del servidor Zabbix:

Server=debian10.local

Haremos lo mismo con la directiva ServerActive:

ServerActive=debian10.local

En la directiva Hostname deberemos especificar el nombre que tiene configurado el servidor Zabbix. En el ejemplo de esta guía no lo cambiamos, así que podemos dejar el valor por defecto:

Hostname=Zabbix server

Guardamos los cambios y cerramos el archivo.

Si tienes firewall activado, tendrás que añadir una excepción para permitir las conexiones al puerto 10050 TCP. Por ejemplo, si usas UFW:

~$ sudo ufw allow 10050/tcp

Ahora hay que reiniciar Zabbix Agent para que empiece a comunicarse con el servidor Zabbix:

~$ sudo systemctl restart zabbix-agent

Listo, hemos terminado con la máquina remota. Vamos a configurar el servidor Zabbix para incluirla en su monitorización.

Configurar una máquina remota en Zabbix Frontend

Con la sesión iniciada en Zabbix Frontend, visitamos la sección «Configuration«/ «Hosts«:

como configurar zabbix en debian 10 buster

Al pulsar el botón «Create host» se abre un formulario en el que introduciremos los datos de la máquina remota que vamos a monitorizar:

configurar zabbix en debian 10 buster

Introducimos el nombre del sistema, un nombre «visible» que actuará como nombre fácil de recordar e identificar, uno o varios grupos a los que pertenecerá el sistema remoto y la dirección IP y/o dominio de la máquina y el método preferido de conexión (IP o DNS).

Cuando hayas terminado, pasa a la solapa «Templates» de este mismo formulario:

configuracion de zabbix en debian 10 buster

Pulsaremos el pequeño enlace «Add» (el enlace, no el botón) y elegiremos una o varias de las plantillas disponibles. En este ejemplo hemos usado la plantilla «Template OS Linux by Zabbix Agent«, pero puedes añadir más si sabes cuáles te interesan. Cuando hayas acabado pulsa (esta vez sí) el botón «Add«.

Automáticamente volveremos a la sección «Configuration» / «Hosts«:

Ahora puedes ver en la parte inferior de la página los sistemas monitorizados por Zabbix, encabezados por el que acabamos de añadir.

El hecho de haber incluido una o más plantillas hace que ya tengamos acceso, por ejemplo, a gráficas de uso de la máquina remota. Si vamos a la sección «Monitoring» / «Graphs» ya podremos elegir la máquina remota Debian 10 en el desplegable y la gráfica que queremos ver:

Conclusión

Ahora que sabes cómo instalar Zabbix en Debian 10 Buster ya puedes monitorizar tus sistemas remotos con una de las herramientas más interesantes e intuitivas que puedes encontrar. Nuestro trabajo está hecho, ahora tú decides qué quieres controlar y cómo quieres verlo.

Si tienes alguna duda, pregunta, sugerencia, notificación, etc. puedes dejar un comentario.

Y si gracias a esta guía de instalación de Zabbix en Debian 10 Buster has conseguido salir de un callejón sin salida y te apetece agradecérmelo, ¡puedes invitarme a un café!

 

1 estrella2 estrellas3 estrellas4 estrellas5 estrellas (1 votos, promedio: 5,00 de 5)
Cargando…

Deja un comentario

Cerrar menú

Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de las mencionadas cookies y la aceptación de nuestra política de cookies, pinche el enlace para mayor información

ACEPTAR
Aviso de cookies