Cómo instalar Zabbix en Ubuntu 18.04
Zabbix está diseñado para monitorear el rendimiento del servidor, la disponibilidad de un servidor, dispositivos de red y otros componentes de red. Podemos realizar fácilmente un seguimiento del estado de cualquier aplicación, sistema y dispositivo de red usando esto.
En este artículo, explicaré cómo instalar Zabbix 3.4, una herramienta de monitoreo de código abierto en nuestro último servidor Ubuntu 18.04 y le mostraré cómo agregar servidores remotos para monitorear.
El núcleo de Zabbix está integrado con Java y C, pero viene con una interfaz de interfaz fácil de usar construida en PHP que facilita el seguimiento y monitoreo de los sistemas.
Prerrequisitos
- Un servidor Ubuntu 18.04 recién instalado con privilegios de usuario root.
- Un servidor LAMP bien configurado.
Instalación del servidor LAMP
Antes de instalar el servidor Zabbix, necesitamos configurar correctamente un servidor LAMP. Primero, podemos instalar Apache y PHP junto con algunos de los módulos PHP requeridos usando este comando a continuación:
#apt update -y #apt install apache2 libapache2-mod-php7.2 php7.2 php7.2-xml php7.2-bcmath php7.2-mbstring -y
Una vez instalados todos los componentes, necesitamos instalar MariaDB. Zabbix usa MySQL, Oracle y PostgreSQL para almacenar sus datos. Aquí instalamos MariaDB para almacenar sus datos. La última versión de este software está disponible en nuestro repositorio predeterminado de Ubuntu 18.04. Por lo tanto, simplemente podemos ejecutar este comando para instalarlo.
#apt install mariadb-server -y
A continuación, podemos iniciar y habilitar todos los servicios para que se inicien en el momento del arranque:
#systemctl start apache2 #systemctl enable apache2 #systemctl start mysql #systemctl enable mysql
Por lo tanto, hemos terminado con nuestro servidor LAMP. A continuación, podemos comenzar nuestra instalación de Zabbix.
Instalación y configuración del servidor Zabbix
Dependiendo de la plataforma y los requisitos de nuestro sistema operativo, debemos elegir / instalar el último repositorio compatible de Zabbix en nuestro servidor.
Paso 1: Descargue e instale Zabbix Repository con MySQL
Podemos descargar e instalar el último repositorio de Zabbix 3.4 para nuestro servidor Ubuntu 18.04 con los siguientes comandos:
# wget https://repo.zabbix.com/zabbix/3.4/ubuntu/pool/main/z/zabbix-release/zabbix-release_3.4-1+bionic_all.deb # dpkg -i zabbix-release_3.4-1+bionic_all.deb # apt update
Paso 2: instale el servidor Zabbix, la interfaz y el agente Zabbix
En segundo lugar, necesitamos instalar nuestro servidor Zabbix, Frontend y Zabbix Agent desde el repositorio de Zabbix que instalamos. Ejecute este comando para instalarlo de la siguiente manera:
# apt install zabbix-server-mysql zabbix-frontend-php zabbix-agent
Paso 3: Cree la base de datos inicial de Zabbix
Una vez instalados todos los componentes anteriores, podemos crear una base de datos para nuestro usuario de Zabbix:
~# mysql -uroot -p Enter password: Welcome to the MariaDB monitor. Commands end with ; or g. Your MariaDB connection id is 41 Server version: 10.1.29-MariaDB-6 Ubuntu 18.04 Copyright (c) 2000, 2017, Oracle, MariaDB Corporation Ab and others. Type 'help;' or 'h' for help. Type 'c' to clear the current input statement. MariaDB [(none)]> CREATE DATABASE zabbix character set utf8 collate utf8_bin; Query OK, 1 row affected (0.01 sec) MariaDB [(none)]> grant all privileges on zabbix.* to zabbix@localhost identified by 'password'; Query OK, 0 rows affected (0.00 sec) MariaDB [(none)]> quit
Ahora puede importar el esquema y los datos iniciales a nuestra base de datos Zabbix recién creada. Se le pedirá que ingrese su contraseña de usuario de base de datos durante el proceso de importación.
# zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p zabbix
Paso 4: configurar la base de datos para el servidor Zabbix
En esta etapa, debe actualizar correctamente la contraseña de la base de datos en el archivo de configuración de Zabbix en /etc/zabbix/zabbix_server.conf
como a continuación:
# grep -i DBpassword /etc/zabbix/zabbix_server.conf # For SQLite3 path to database file must be provided. DBUser and DBPassword are ignored. ### Option: DBPassword DBPassword=password
Debe descomentar la opción de contraseña de DB y proporcionarle la contraseña de usuario de Zabbix DB exacta según sea necesario.
Paso 5: Configuración de PHP para la interfaz de Zabbix
Necesitamos configurar PHP y establecer la zona horaria adecuada para llevar a cabo la instalación de Zabbix Frontend sin problemas. En primer lugar, puede establecer la zona horaria adecuada en su archivo de configuración PHP ubicado en /etc/php/7.2/apache2/php.ini
y modifíquelo según su zona horaria preferida. Lo he actualizado de la siguiente manera:
# grep -i timezone /etc/php/7.2/apache2/php.ini ; Defines the default timezone used by the date functions ; http://php.net/date.timezone date.timezone = Europe/Riga
A continuación, necesitamos actualizar el archivo de configuración de Zabbix en /etc/zabbix/apache.conf
con la misma zona horaria que se muestra a continuación:
# grep timezone /etc/zabbix/apache.conf php_value date.timezone Europe/Riga
Descomentaría php_value para la zona horaria en la sección Módulo PHP 7 en el archivo de configuración mencionado y actualizaría con la zona horaria exacta como antes.
Paso 6: Inicie los procesos del agente y el servidor Zabbix
Finalmente, podemos iniciar y habilitar todos los servicios necesarios de Zabbix y Apache2 con los siguientes comandos:
# systemctl restart zabbix-server zabbix-agent apache2 # systemctl enable zabbix-server zabbix-agent apache2
¡Eso es todo! Ahora nuestro servidor Zabbix estará en funcionamiento. Puede comprobar que funciona accediendo a la URL >>>http://Server-IP/zabbix
Instalación / configuración de Zabbix Frontend
Una vez que tenemos nuestro servidor Zabbix en funcionamiento, podemos acceder a nuestra interfaz Zabbix recién instalada con la URL >> http://Server-IP or hostname/zabbix.
Esto abrirá el asistente de instalación de frontend. Para que sea completamente funcional, debemos completar el proceso de configuración para Zabbix Frontend.
Naveguemos por cada proceso de configuración uno por uno. Puede hacer clic Next Step
para comprobar los requisitos previos. En esta etapa, debemos asegurarnos de que nuestro servidor cumpla con todos los requisitos previos de software que se enumeran a continuación. Puede hacer clic en Siguiente paso para continuar una vez que haya terminado.
En esta etapa, asegúrese de actualizar los detalles para conectarse a nuestra base de datos Zabbix para garantizar una conexión DB adecuada y continuar con la configuración del servidor Zabbix, incluido el host y el puerto 10051 destinado para ello.
Finalmente, podemos verificar una vez más todas las configuraciones realizadas en las etapas anteriores en el Resumen de preinstalación y hacer clic en Next Step
para completar la instalación.
Si todo va bien, recibirá el mensaje anterior que indica una instalación exitosa de la interfaz de Zabbix. Ahora puede hacer clic en la pestaña Finalizar para salir del asistente de instalación.
Acceder al panel de Zabbix
¡Viva! nuestro Zabbix Frontend está listo. Puede acceder a él utilizando las credenciales de inicio de sesión predeterminadas de Zabbix con nombre de usuario "Admin"
y contraseña "zabbix"
en la URL >>>http://Server-IP/zabbix.
Cambiar la contraseña de administrador
Una vez que haya iniciado sesión con éxito en Zabbix Frontend Panel con las credenciales de inicio de sesión de administrador predeterminadas, es obligatorio modificar las credenciales de administrador por razones de seguridad. Puede modificar su contraseña de administrador navegando por la ruta: Administration > Users > Admin > Password > Change Password
como en las capturas de pantalla a continuación:
Agregar un host de monitoreo
Dado que nuestro servidor Zabbix está listo para usar, podemos probar su funcionamiento agregando nuestro primer host objetivo de monitoreo, que es nuestro servidor Zabbix. Puede hacer esto navegando por la ruta: Configuration >> Hosts
como en las capturas de pantalla.
Como puede ver, nuestro estado de host está configurado en estado deshabilitado de forma predeterminada. Necesitamos hacer clic en el botón deshabilitado para permitir que el agente Zabbix en este servidor monitoree el host. Como se ve en la captura de pantalla, el Status
se convierte en enabled
y el servidor ahora está siendo monitoreado.
Solo espere unos minutos para que nuestro servidor Zabbix tome los datos de monitoreo del servidor y actualice los gráficos. Ahora puede ver los gráficos de host navegando por la ruta: Monitoring > Screens > Server Name
como en la instantánea.
Agregar un host remoto
En primer lugar, necesitamos instalar / habilitar Zabbix Agent en nuestro host remoto. El trabajo del agente Zabbix es recopilar datos como el uso de la CPU, la memoria, el disco y la interfaz de red de un dispositivo. El agente de Zabbix puede realizar comprobaciones tanto pasivas (sondeo) como activas (captura). Estas verificaciones se pueden realizar a intervalos o en función de horarios específicos. Veamos cómo instalar / habilitar el agente Zabbix en un nodo Ubuntu 18.04.
Instalación de Zabbix Agent
Inicialmente, necesita SSH en nuestro nuevo servidor host y descargar el Repositorio Zabbix 3.4 para nuestra configuración de host Ubuntu 18.04 e instalar el Agente Zabbix desde allí.
#wget http://repo.zabbix.com/zabbix/3.4/ubuntu/pool/main/z/zabbix-release/zabbix-release_3.4-1+bionic_all.deb #dpkg -i zabbix-release_3.4-1+bionic_all.deb #apt install zabbix-agent
Configuración del agente Zabbix
Ahora, puede configurar nuestro agente Zabbix para iniciar las conexiones adecuadas con el servidor Zabbix. Usamos claves precompartidas (PSK) para asegurar la conexión entre el servidor y el agente. La configuración del agente Zabbix se encuentra en /etc/zabbix/zabbix_agentd.conf
.
Paso 1: Generar la clave PSK y configurarla.
En primer lugar, necesitamos generar la clave PSK. Esto se puede obtener ejecutando el comando:
#sh -c "openssl rand -hex 32 > /etc/zabbix/zabbix_agentd.psk"
Puede guardar esta clave que se utilizará durante la configuración del Agente.
# cat /etc/zabbix/zabbix_agentd.psk abb6a14eace79044b9f3bab0c6cd26d50b4cfb3dc6fe2ef815b96216073b333b
Paso 2: Agregar el servidor Zabbix a la configuración del agente.
Ahora tienes que abrir el archivo de configuración de Zabbix Agent /etc/zabbix/zabbix_agentd.conf
y configurarlo para establecer una conexión segura entre los servidores. Primero, debe editar el número de línea ’95’ y ‘136’ con la IP del servidor Zabbix como se muestra a continuación. Aquí 172.104.210.183 es la IP de mi servidor Zabbix.
# sed -n '95 p' /etc/zabbix/zabbix_agentd.conf Server=172.104.210.183
A continuación, necesitamos editar la línea 136 con la información del servidor Zabbix.
# sed -n '136 p' /etc/zabbix/zabbix_agentd.conf ServerActive=172.104.210.183
Paso 3: configurar y habilitar la conexión segura de PSK
Para configurar una conexión segura entre los servidores, habilitamos la conexión TLS con soporte PSK. Necesitamos editar las siguientes líneas en la configuración del Agente Zabbix en consecuencia para que sea posible.
Modifique las siguientes líneas en /etc/zabbix/zabbix_agentd.conf desde:
# sed -n -e 324p -e 335p -e 385p -e 392p /etc/zabbix/zabbix_agentd.conf # TLSConnect=unencrypted # TLSAccept=unencrypted # TLSPSKIdentity= # TLSPSKFile= TO: # sed -n -e 324p -e 335p -e 385p -e 392p /etc/zabbix/zabbix_agentd.conf TLSConnect=psk TLSAccept=psk TLSPSKIdentity=PKI 001 TLSPSKFile=/etc/zabbix/zabbix_agentd.psk
Definiendo cada sección:
TLSConnect=psk
* // Esto habilita el soporte de claves precompartidas // *TLSAccept=psk
* // Esto permite aceptar todas las conexiones entrantes usando el soporte de PSK // *TLSPSKIdentity=PKI 001
* // Se le da un nombre único para identificar su clave precompartida de Agente // *TLSPSKFile=/etc/zabbix/zabbix_agentd.psk
* // Esto ayuda al agente Zabbix a identificar su archivo PSK creado. // *
Paso 4: Inicie Zabbix Agent
Ahora puede guardar estos cambios e iniciar el agente Zabbix y configurarlo para que se inicie en el momento del arranque con estos comandos a continuación:
~# systemctl start zabbix-agent # systemctl enable zabbix-agent Synchronizing state of zabbix-agent.service with SysV service script with /lib/systemd/systemd-sysv-install. Executing: /lib/systemd/systemd-sysv-install enable zabbix-agent
Nuestro agente Zabbix ahora está listo para enviar datos al servidor Zabbix. Pero para usarlo, tenemos que vincularlo a este Agente desde la consola web del servidor Zabbix.
Paso 5: Agregar nuestro nuevo host al servidor Zabbix
Hemos instalado / configurado con éxito Zabbix Agent en nuestro nuevo host. Ahora necesitamos registrar este nuevo nodo en nuestro servidor Zabbix a través de nuestra consola web. Puede iniciar sesión en la interfaz web de nuestro servidor Zabbix con la URL >>http://Zabbix_ServerIP/zabbix/
con las credenciales de inicio de sesión de administrador creadas. Ahora podemos navegar por el camino: Configuration > Hosts > Create Host
Esto abrirá la página de configuración del host, donde puede agregar el nombre del HOST y los detalles de IP del nuevo host. Además, puede elegir el grupo al que prefiere agregar este nuevo host. Puede crear un nuevo grupo según sus preferencias o puede agregarlo a los grupos preexistentes. Un anfitrión se puede incluir en varios grupos según nuestras preferencias. Aquí, estoy agregando nuestro nuevo nodo al predeterminado Linux Servers
grupo.
Después de agregar nuestro host, podemos modificar su configuración seleccionando nuestro nodo agregado de la lista Hosts. Elegí la plantilla predeterminada Template OS Linux
para mi nodo. Puede elegir cualquier plantilla que prefiera de las listas de Plantillas.
A continuación, debemos navegar a la pestaña Cifrado. Como hemos decidido, debemos elegir PSK tanto para las conexiones al host como para las conexiones desde el host. Entonces establece PSK identity
a PSK 001
, que es el valor de la TLSPSKIdentity
configuración que configuramos en Zabbix Agent al principio. Luego, establezca el valor de PSK en la clave que generó para el agente Zabbix. Es el que está almacenado en el archivo. /etc/zabbix/zabbix_agentd.psk
en la máquina del agente.
¡Eso es todo! Ahora verá su nuevo host con etiquetas verdes que indican que todo está funcionando bien y que la conexión está encriptada.
Para asegurarse de que todo funcione, incluso puede apagar su nuevo host y ver si Zabbix está alertando sobre el problema. En ese caso, informará un problema como se ve en la captura de pantalla.
De manera similar, puede agregar nuevos hosts a su servidor Zabbix instalando y configurando el Agente Zabbix allí y registrándolo en su servidor Zabbix. Espero que este artículo sea útil e informativo. Publique sus valiosas sugerencias y comentarios al respecto.