En este artículo veremos cómo instalar Zabbix en openSUSE Leap 15 paso a paso, incluyendo los módulos Zabbix Server, Zabbix Frontend y Zabbix Agent, para poder monitorizar máquinas y sistemas remotos desde la cómoda interfaz web de Zabbix.
Contenido
Antes de instalar Zabbix en openSUSE Leap 15
Si tienes intención de completar los pasos de esta guía de instalación de Zabbix en openSUSE Leap 15 es importante cumplir con los siguientes requerimientos mínimos:
- Un sistema openSUSE Leap 15.1, 15.2 ó 15.3 actualizado.
- Una pila o entorno tipo LAMP (servicio web con 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 no dispones aún del entorno necesario, es recomendable consultar previamente nuestra guía de instalación LAMP en openSUSE Leap 15.1.
Cómo instalar el repositorio de Zabbix para openSUSE Leap 15
Vamos a instalar el repositorio de Zabbix para openSUSE Leap 15, de modo que dispongamos de paquetes actualizados. Para ello instalaremos un paquete oficial que configurará el repositorio en el sistema:
~> sudo rpm -Uvh --nosignature https://repo.zabbix.com/zabbix/5.4/sles/15/x86_64/zabbix-release-5.4-1.sles15.noarch.rpm
Una vez instalado el repositorio, actualizaremos las listas de paquetes, indicando que se importen las claves públicas necesarias (en este caso para comprobar las firmas del repositorio de Zabbix para openSUSE Leap 15):
~> sudo zypper --gpg-auto-import-keys refresh
Este paso lo realizaremos en todas las máquinas openSUSE Leap 15 que queramos monitorizar y también en la máquina en la que instalaremos Zabbix Server y Zabbix Frontend.
Cómo instalar Zabbix en openSUSE Leap 15
Para instalar Zabbix en openSUSE Leap 15 utilizaremos los paquetes necesarios para cada uno de los distintos componentes. Podemos elegir distintos paquetes de Zabbix según las características de nuestro sistema:
- Zabbix Server, del que disponemos de versiones para MariaDB/MySQL, paquete zabbix-server-mysql, o para PostgreSQL, paquete zabbix-server-pgsql.
- Zabbix Frontend, del que igualmente disponemos versiones de MariaDB/MySQL y PostgreSQL, paquetes zabbix-web-mysql y zabbix-web-pgsql, respectivamente.
- Configuración del servicio web, paquetes zabbix-apache-conf y zabbix-nginx-conf.
- Zabbix Agent, el agente que recopila la información de la máquina para enviarla al servidor Zabbix, paquete zabbix-agent.
Instalamos los paquetes que necesitamos, en este tutorial usaremos MariaDB/MySQL como servicio de bases de datos y Apache como servicio web:
~> sudo zypper install -y zabbix-server-mysql zabbix-web-mysql zabbix-sql-scripts zabbix-apache-conf zabbix-agent
Base de datos
Una vez instalado Zabbix habrá que crear el sorporte necesario sobre el servicio de base de datos, MariaDB/MySQL en este tutorial. Conectamos con el servicio mediante el cliente mysql:
~> mysql -u root -p
Creamos la base de datos para Zabbix:
> create database zabbix character set utf8 collate utf8_bin;
En MariaDB o MySQL 5 creamos el usuario para Zabbix de la forma habitual:
> create user zabbix@localhost identified by 'XXXXXXXX';
Pero en MySQL 8 es importante indicar el plugin de autenticación compatible con PHP:
> create user zabbix@localhost identified with mysql_native_password by 'XXXXXXXX';
Concedemos al usuario los permisos necesarios sobre la base:
> grant all privileges on zabbix.* to zabbix@localhost;
Y cerramos la conexión:
> exit
Ahora inicializaremos la base de datos para Zabbix con la estructura que se nos ofrece en un archivo provisto al efecto:
~> zcat /usr/share/doc/packages/zabbix-sql-scripts/mysql/create.sql.gz | mysql -u zabbix -p zabbix
Se nos pedirá la contraseña que creamos para el usuario de la base de datos de Zabbix que acabamos de crear momentos atrás.
Configurar Zabbix
Editaremos el archivo de configuración de Zabbix para indicar los datos de conexión al servicio de bases de datos:
~> sudo nano /etc/zabbix/zabbix_server.conf
Hemos creado el usuario y la base de datos con los valores por defecto:
... DBName=zabbix ... DBUser=zabbix ...
Pero la contraseña debemos especificarla, ya que la directiva DBPassword está desactivada:
... # DBPassword= ...
Eliminaremos el carácter # al inicio de línea y añadiremos la contraseña que especificamos para el usuario:
... DBPassword=XXXXXXXX ...
Guardamos los cambios, cerramos el archivo y ya podemos iniciar Zabbix Server y habilitarlo para que inicie automáticamente en cada arranque de openSUSE Leap 15:
~> sudo systemctl enable --now zabbix-server
Si además has instalado el agente Zabbix para monitorizar la propia máquina Zabbix Server, habrá que iniciar y habilitar el servicio del agente:
~> sudo systemctl enable --now zabbix-agent
La configuración por defecto de Zabbix Agent funciona perfectamente para trabajar con el servidor Zabbix local, no es necesario realizar ajustes especiales.
Servicio web
Recargamos el servicio para que entren en funcionamiento las configuraciones para el servidor web:
~> sudo systemctl reload apache2
Instalador web
Accedemos al instalador web de Zabbix en openSUSE Leap 15 añadiendo la ruta /zabbix a la dirección IP o dominio del servidor. Por ejemplo, en este tutorial trabajamos sobre un servidor accesible en el dominio opensuse15.local.lan, por lo que usaremos http://opensuse15.local.lan/zabbix como URL de acceso:
Tras la página de bienvenida al instalador de Zabbix en openSUSE Leap 15 continuamos con la página de requisitos del sistema:
Si has seguido los pasos anteriores, todo debería estar en orden, por lo que podemos continuar con el proceso.
Pasaremos a la configuración de la conexión de Zabbix Frontend con el servicio de bases de datos:
Indicaremos la base de datos, el usuario y la contraseña tal como los creamos anteriormente.
Continuamos con la configuración de Zabbix Server:
Podemos establecer un nombre para el servidor, pero el valor por defecto funciona bien, así que podemos dejarlo en blanco.
Tendremos la oportunidad de confirmar la zona horaria del servidor y elegir el tema de la interfaz web:
Si la zona horaria está correctamente configurada en openSUSE 15 y en PHP no debería ser necesario modificarla.
A continuación se mostrará un resumen de la configuración de la instalación:
Puedes realizar cambios si lo consideras necesario retrocediendo o saltando a las páginas anteriores. Si todo es correcto podemos continuar.
La instalación ha finalizado, podemos salir del instalador pulsando el botón «Finish«.
Se mostrará la página de inicio de sesión:
El usuario administrador por defecto es Admin y su contraseña es zabbix.
Al iniciar sesión se nos presenta la vista global de indicadores de Zabbix:
Podemos comprobar que hay información sobre el propio servidor, enviada por el agente local. De hecho si seguimos el enlace «All dashboards» se mostrará una lista en la que podremos pinchar en «Zabbix server health» para ver un resumen de información detallada:
Cómo configurar una máquina remota openSUSE Leap 15 con Zabbix Agent
Para monitorizar una máquina remota openSUSE Leap 15 será necesario instalar en la misma Zabbix Agent. Teniendo en cuenta que ya deberíamos haber instalado el repositorio oficial de Zabbix y actualizado las listas de paquetes tal como hicimos al principio del tutorial, sólo quedará instalar el paquete zabbix-agent:
~> sudo zypper install -y zabbix-agent
Terminada la descarga e instalación del agente Zabbix se crea un nuevo servicio en openSUSE Leap 15, el servicio zabbix-agent.service o zabbix-agent, que no queda habilitado para iniciar automáticamente ni queda tampoco en ejecución, ya que debemos configurarlo previamente para conectar con Zabbix Server, que se estará ejecutando en la máquina servidor.
Editaremos la configuración de Zabbix Agent:
~> sudo nano /etc/zabbix/zabbix_agentd.conf
Buscaremos la directiva Server:
... Server=127.0.0.1 ...
El valor por defecto busca el servidor Zabbix en la propia máquina local, por eso no tuvimos que configurar Zabbix Agent en el servidor. Sin embargo, en las máquinas remotas tendremos que eliminar el valor por defecto y sustituirlo por la dirección IP o nombre DNS del servidor Zabbix:
... Server=opensuse15.local.lan ...
Igualmente ocurre con la directiva ServerActive:
... ServerActive=127.0.0.1 ...
Que también cambiaremos:
... ServerActive=opensuse15.local.lan ...
Sólo en el caso de que al instalar Zabbix Server cambiásemos el nombre del servidor, buscaremos la directiva Hostname:
... Hostname=Zabbix server ...
Y cambiaremos su valor por defecto por el nombre del servidor Zabbix.
Guardados los cambios y cerrado el archivo, habilitamos e iniciamos el servicio zabbix-agent:
~> sudo systemctl enable --now zabbix-agent
Y abriremos el puerto en el que Zabbix Agent espera conexiones, que es el 10050 TCP:
~> sudo firewall-cmd --permanent --add-port=10050/tcp
Y aplicamos la nueva excepción:
~> sudo firewall-cmd --reload
Hemos terminado la instalación y configuración de Zabbix Agent en la máquina remota openSUSE Leap 15.
Cómo añadir máquinas remotas en Zabbix Server
Hemos preparado el servidor Zabbix y ya tenemos una máquina remota con el agente Zabbix funcionando. Ahora volveremos a Zabbix Server para añadir la nueva máquina remota al sistema de monitorización.
Con la sesión iniciada, nos dirigiremos a la sección «Configuration / Hosts«, donde utilizaremos el botón «Create host«:
Se abrirá un formulario donde daremos de alta la máquina remota que acabamos de configurar:
Daremos un nombre para la máquina en «Host name«, la incluiremos en el grupo que nos interese en «Groups«. También añadiremos una interfaz de agente, en este caso del tipo «Agent» y estableceremos el método de conexión, por dirección IP o por nombre DNS. En este ejemplo hemos elegido el método de conexión por nombre DNS, así que indicamos el nombre DNS de la máquina remota que acabamos de configurar.
El formulario consta de varias solapas, así que pasaremos de la solapa «Host» en la que estamos a la solapa «Templates«:
Seleccionaremos la plantilla o plantillas que nos parezcan relevantes, y que contienen gráficos y otros ajustes predeterminados que nos ahorrarán trabajo.
Por ejemplo, podemos elegir el grupo «Templates/Operating Systems» y dentro de este «Linux by Zabbix Agent«.
Terminada la configuración mínima de la máquina remota, la añadimos a la configuración de Zabbix Server mediante el botón «Add«.
Regresaremos a la página «Configuration / Hosts» donde podremos ver en la parte inferior de la página el listado de máquinas monitorizadas, donde ya aparece la máquina remota que acabamos de añadir.
Ya podemos consultar el estado de la máquina remota, por ejemplo mediante la consulta de gráficos. Visitaremos la sección «Monitoring / Hosts«, en la lista de máquinas supervisadas pincharemos sobre el nombre de la máquina remota, apareciendo un menú contextual sobre el que elegiremos la opción «Graphs«, que nos llevará a la página de gráficas correspondiente:
Podremos repetir el proceso con otras máquinas remotas, instalándoles Zabbix Agent y dándolas de alta en Zabbix Frontend tal y como acabamos de hacer.
Conclusión
Ahora que sabes cómo instalar Zabbix en openSUSE Leap 15, tanto Zabbix Server como Zabbix Frontend y Zabbix Agent, ya puedes monitorizar las máquinas y sistemas de tu red local o incluso servidores y sistemas VPS en Internet de forma sencilla y visual.
En caso de dudas, preguntas, alguna sugerencia de mejoras, notificar algún error, etc. lo mejor suele ser dejar un comentario.
¡Apoya comoinstalar.me!
¿Ya estás empezando a monitorizar tus sistemas en red gracias a esta guía de instalación de Zabbix en openSUSE Leap 15? Si es así y te apetece mostrarnos tu agradecimiento, siempre puedes colaborar con una mínima aportación que ayudará mucho al mantenimiento de este sitio y la creación de otros tutoriales. Puedes hacerlo dejando 1 $ de propina desde PayPal:
O, si te sientes especialmente agradecido, invitándonos a un café:
¡Gracias!