Cómo instalar Zabbix en Debian 9 Stretch

Cómo instalar Zabbix en Debian 9 Stretch

En esta entrada veremos cómo instalar Zabbix en Debian 9 Stretch paso a paso, uno de los sistemas de monitorización remota más afamados entre los entendidos del sector, que puedes usar para monitorear las máquinas de tu red local o incluso tu servidor o VPS Debian.

Antes de instalar Zabbix en Debian 9 Stretch

En el caso de que quieras completar esta guía de instalación y configuración de Zabbix en Debian 9 Stretch, debes partir de los siguientes puntos mínimos:

  • Una máquina Debian 9 Stretch actualizada.
  • Un entorno o pila tipo LAMP (con servidor web, PHP y servicio de bases de datos).
  • Acceso a línea de comandos con root o un usuario con permisos de sudo.
  • Conexión a Internet.

Si aún no tienes el entorno preparado, podrías consultar nuestra guía de instalación LAMP en Debian 9 Stretch. En esta guía usamos Apache y MariaDB/MySQL como base, pero podrías usar Nginx y PostgreSQL.

En un primer paso instalaremos:

  • El servidor Zabbix Server, que centraliza la información de las máquinas que monitoriza.
  • La interfaz Zabbix Frontend, aplicación web que conecta con el servidor Zabbix para configurarlo y mostrar la información.
  • El agente remoto Zabbix Agent, que recopila información del sistema y la envía al servidor.

Estos tres componentes formarán parte de un sistema que se monitoreará a sí mismo.

En un paso posterior añadiremos máquinas remotas Debian 9 a la monitorización.

Cómo instalar Zabbix en Debian 9 Stretch

A la hora de instalar Zabbix en Debian 9 Stretch podrías pensar en utilizar los paquetes presentes en la propia distribución. Sin embargo, mientras que el último lanzamiento estable de Zabbix es la versión 4.4, los repositorios de Debian 9 sólo ofrecen la versión 3.0. Por ello se hace necesario instalar los repositorios oficiales de Zabbix en nuestro sistema.

Cómo instalar el repositorio de Zabbix para Debian 9 Stretch

Descargaremos el paquete que configura el repositorio de la última versión de Zabbix para Debian 9 Stretch:

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

Una vez descargado el paquete, lo instalamos con dpkg:

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

Básicamente hemos añadido el fichero zabbix.list al directorio /etc/sources.list.d/.

Es buena ida actualizar las listas de paquetes de los repositorios del sistema, que incluirán el nuevo repositorio para Zabbix:

~$ sudo apt update

Cómo instalar el servidor Zabbix en Debian 9 Stretch

Dependiendo de los componentes de Zabbix que se quieran instalar en el sistema Debian 9, elegiremos unos paquetes u otros. En este tutorial preparamos una máquina con el servidor sobre el servicio de bases de datos MariaDB/MySQL y el servidor web Apache, por lo que los paquetes a instalar serán los siguientes:

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

Si en vez de usar Apache tenemos Nginx, sustituimos zabbix-apache-conf por zabbix-nginx-conf. Y si usamos PostgreSQL en vez de MariaDB/MySQL, cambiamos zabbix-server-mysql por zabbix-server-pgsql.

Terminada la instalación de los paquetes y sus dependencias, es necesario recargar la configuración del servidor web:

~$ sudo systemctl reload apache2

Además, se han creado dos servicios nuevos en Debian 9 Stretch tras la instalación de Zabbix, los servicios zabbix-server.service y zabbix-agent.service, o zabbix-server y zabbix-agent. En el caso del servicio Zabbix Agent este queda en funcionamiento tras la instalación, pero no ocurre lo mismo con Zabbix Server, que necesita configurarse antes de iniciarlo.

Preparación de la base de datos

Zabbix Server se apoya sobre el servicio de base de datos que tengamos instalado en Debian 9 Stretch, que puede ser MariaDB/MySQL o PostgreSQL. En cualquier caso, debemos crear manualmente la infraestructura de la base de datos para Zabbix.

En el caso de MariaDB/MySQL podemos conectar con el cliente de consola mysql y el usuario con el que administremos habitualmente:

~$ mysql -u root -p

Comenzaremos creando la base de datos:

> create database zabbix;

Para MySQL 5 y MariaDB creamos el usuario con la siguiente sentencia:

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

Pero para MySQL 8 especificamos además el plugin de autenticación:

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

Concedemos permisos al usuario sobre la base de datos:

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

Y salimos del cliente:

> exit

Debemos crear la estructura inicial de la base de datos desde un archivo preparado a tal efecto (se pedirá la contraseña del usuario zabbix de la base de datos):

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

Preparación de los servicios

Para que el servicio Zabbix Server pueda conectar con la base de datos necesitará conocer la contraseña del usuario zabbix, esto lo resolvemos editando su archivo de configuración:

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

Y buscamos la directiva DBPassword:

...
# DBPassword=
...

Está desactivada, lo que significa que por defecto intentaría conectar sin contraseña. Activamos la directiva eliminando el carácter # de inicio de línea y asignamos como valor la contraseña:

DBPassword=XXXXXXXX

Guardamos los cambios y cerramos el archivo.

Ahora que hemos terminado de configurarlo, podemos iniciar el servicio Zabbix:

~$ sudo systemctl start zabbix-server

Y también podemos habilitar o activar los servicios Zabbix Agent y Server para que inicien automáticamente cada vez que arranque el sistema Debian 9 Stretch:

~$ sudo systemctl enable zabbix-agent zabbix-server

Configurar el firewall UFW de Debian 9 para Zabbix Server

En el caso de tener activado el firewall UFW en Debian 9 y querer permitir las conexiones entrantes de las máquinas remotas al servicio Zabbix Server, debemos añadir una regla para el puerto 10051 TCP:

~$ sudo ufw allow 10051/tcp

Instalación vía web

Es el momento de empezar con la instalación de Zabbix Frontend en Debian 9 Stretch vía web, por lo que usaremos un navegador. Obtendremos la URL añadiendo el sufijo /zabbix a la dirección IP o dominio de la máquina Debian 9 que estamos configurando.

En este ejemplo, el servidor Zabbix es accesible desde el dominio debian9.local, por lo que la URL http://debian9.local/zabbix será la que empleemos:

como instalar zabbix en debian 9 stretch

Se nos muestra una página de bienvenida sin nada reseñable, por lo que directamente continuamos con la siguiente.

Aparece la lista de requisitos para instalar Zabbix Frontend:

instalar zabbix en debian 9 stretch

Si has seguido los pasos anteriores, todos los requisitos aparecerán marcados como OK, por lo que puedes continuar con la instalación.

Es el momento de introducir los datos de conexión a la base de datos:

instalacion de zabbix en debian 9 stretch

En la forma en que hemos realizado los pasos anteriores, todos los valores por defecto son correctos, por tanto sólo tenemos que introducir la contraseña.

En la siguiente sección especificamos los datos de conexión al servidor Zabbix:

Como estamos instalando el frontend en la misma máquina que el servidor Zabbix los datos por defecto son correctos. El campo Name lo puedes dejar en blanco y se asumirá el valor «Zabbix Server«.

Antes de terminar la instalación se nos presentará un pequeño resumen con los datos de conexión a la base de datos y al servidor Zabbix:

Finalmente termina la instalación, informándonos de que se ha creado el archivo de configuración en la ubicación /usr/share/zabbix/conf/zabbix.conf.php:

Tras finalizar se nos conduce a la pantalla de inicio de sesión para identificarnos antes de entrar en el recién instalado Zabbix Frontend:

zabbix para debian 9 stretch

El usuario y la clave por defecto son admin y zabbix, respectivamente. Recuerda cambiar la contraseña en cuanto puedas.

Al iniciar sesión accedemos directamente al panel de control de Zabbix:

Zabbix en Debian 9 Stretch

Ya está todo listo para explorar la interfaz web y comprobar el estado de la propia máquina, ya que el agente instalado en la máquina local ya está configurado, funcionando y enviando datos al servidor Zabbix, que podemos consultar.

Cómo instalar Zabbix Agent en una máquina remota Debian 9 Stretch

Trabajando ya sobre una máquina remota Debian 9 Stretch en la que ya debería estar instalado el repositorio de Zabbix, pasamos a instalar el agente Zabbix para Debian 9:

~$ sudo apt install -y zabbix-agent

Se instalan el paquete y sus dependencias creándose el servicio zabbix-agent.service, o zabbix-agent simplemente, que queda en ejecución, pero no habilitado para arrancar automáticamente con el inicio de Debian 9 Stretch.

Editamos la configuración de Zabbix Agent:

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

Buscaremos las siguientes directivas:

...
Server=127.0.0.1
...
ServerActive=127.0.0.1
...
Hostname=Zabbix server
...

La configuración por defecto asume que Zabbix Server se encuentra en la máquina local (por eso no configuramos el agente Zabbix en el servidor anteriormente), pero en este caso al tratarse de una máquina remota debemos especificar la dirección del servidor Zabbix:

...
Server=debian9.local
...
ServerActive=debian9.local
...
Hostname=Zabbix server
...

Cambiamos el valor 127.0.0.1 por la dirección IP o dominio del servidor Zabbix. Si no modificaste el nombre del servidor Zabbix, no debes cambiar el valor de la directiva Hostname.

Guardamos los cambios, cerramos el archivo, y reiniciamos el servicio zabbix-agent para que cargue la nueva configuración:

~$ sudo systemctl restart zabbix-agent

Si queremos que Zabbix Agent inicie de forma automática al arrancar Debian 9 Stretch, debemos habilitar el servicio:

~$ sudo systemctl enable zabbix-agent

Configurar el firewall UFW en Debian 9 para Zabbix Agent

Si tienes habilitado el firewall UFW en Debian 9 Stretch, deberías añadir una regla para permitir las conexiones entrantes desde el servidor al puerto en el que escucha el agente Zabbix, que es el puerto 10050 TCP:

~$ sudo ufw allow 10050/tcp

Cómo añadir una máquina remota a Zabbix Server en Debian 9

Para monitorear la máquina remota Debian 9 Stretch que acabamos de configurar, una vez iniciada sesión en Zabbix Frontend, nos dirigiremos a «Configuration» / «Hosts» y allí pulsaremos el botón «Create host».

como configurar zabbix en debian 9 stretch

Se nos presentará un formulario para introducir los datos de la máquina remota:

configurar zabbix en debian 9 stretch

Debemos introducir el nombre de la máquina y opcionalmente el nombre con el que la queramos ver en Zabbix Frontend. Además, hay que especificar un grupo obligatoriamente.

En «Agent interfaces» debes especificar la dirección IP y/o el dominio de la máquina, y seleccionar si prefieres que conecte por la IP o el nombre DNS.

En este ejemplo la máquina remota es accesible por su dominio o nombre DNS, debian92.local.

A continuación iremos a la solapa «Templates» del mismo formulario:

configuracion de zabbix en debian 9 stretch

Pulsaremos el pequeño enlace «Add» (ojo, no confundir con el botón con el mismo nombre) para que se muestre la lista de plantillas disponibles.

En este ejemplo seleccionamos «Template OS Linux by Zabbix agent«, pero puedes seleccionar más si sabes las que te interesan. Cuando hayas terminado de añadir plantillas puedes pulsar el botón «Add» (esta vez sí es el botón) para añadir el nuevo sistema.

Automáticamente se nos lleva a la sección «Configuration» / «Hosts«:

configurar maquinas remotas debian 9 stretch en zabbix

En la parte inferior de la página podrás ver los sistemas monitorizados, incluyendo el que acabas de añadir.

Al haber incluido una plantilla, ya puedes ver, por ejemplo, gráficas de servicios en «Monitoring» / «Graphs«, seleccionando en «Hosts» el nuevo sistema y eligiendo el tipo de gráfico:

Conclusión

Así de fácil es instalar y configurar Zabbix en Debian 9 Stretch, por lo que ya no tienes excusa para conocer en todo momento el estado de las máquinas de tu red local o incluso tus servidores o VPS Debian en Internet. Añadir nuevas máquinas remotas a Zabbix es cuestión de instantes.

Si tienes preguntas, dudas, sugerencias, etc. puedes dejar un comentario.

¡Ah! Y si gracias a esta guía de instalación y configuración de Zabbix en Debian 9 Stretch has conseguido monitorizar tus sistemas y estás tan satisfecho que deseas agradecérnoslo… ¡puedes invitarme a un café si quieres!

 

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