Cómo Monitorear MySQL usando Zabbix

Este tutorial le mostrará todos los pasos necesarios para monitorear MySQL usando Zabbix 4.

Este tutorial fue probado en Ubuntu 18.04.

Este tutorial fue probado en Zabbix 4.0.3.

1. Configure un Usuario de MySQL para Zabbix

Zabbix requiere una cuenta para acceder al servidor MySQL y realizar el monitoreo de la base de datos.

En el servidor de base de datos MySQL, cree una cuenta para Zabbix.

Otorgue privilegios de uso sobre todas las bases de datos MySQL al usuario de Zabbix.

CREATE USER 'zabbix_monitor'@'%' IDENTIFIED BY 'kamisama123';
GRANT USAGE ON *.* TO 'zabbix_monitor'@'%';
FLUSH PRIVILEGES;
quit;

Tome nota del nombre de usuario y contraseña de MySQL creados.

2. Instale el Agente de Zabbix en el Servidor MySQL

Ahora, necesitamos instalar el agente Zabbix en la computadora que ejecuta el servicio MySQL.

En la consola de Linux, use los siguientes comandos para instalar los paquetes necesarios.

# groupadd zabbix
# useradd -g zabbix -s /bin/bash zabbix
# apt-get update
# apt-get install build-essential libpcre3-dev

Descarga el paquete de instalación de Zabbix.

# mkdir /downloads
# cd /downloads
# wget https://ufpr.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/4.0.3/zabbix-4.0.3.tar.gz

Extraiga el paquete de instalación de Zabbix, compile e instale el agente de Zabbix.

# tar -zxvf zabbix-4.0.3.tar.gz
# cd zabbix-4.0.3/
# ./configure --enable-agent
# make
# make install

Copie los scripts de inicio incluidos en el paquete Zabbix.

# cd /downloads/zabbix-4.0.3/
# cp misc/init.d/debian/zabbix-agent /etc/init.d/

Encuentre la ubicación del archivo de configuración zabbix_agentd.conf en su sistema.

# updatedb
# locate zabbix_agentd.conf
# vi /usr/local/etc/zabbix_agentd.conf

Aquí está el archivo original, antes de nuestra configuración.

LogFile=/tmp/zabbix_agentd.log
Server=127.0.0.1
ServerActive=127.0.0.1
Hostname=Zabbix server

Aquí está el nuevo archivo con nuestra configuración.

LogFile=/tmp/zabbix_agentd.log
Server=127.0.0.1,200.200.200.200
ServerActive=200.200.200.200
Include=/usr/local/etc/zabbix_agentd.conf.d/

En nuestro ejemplo, el agente de Zabbix está configurado para permitir la conexión desde el servidor Zabbix 200.200.200.200.

El servidor Zabbix con la dirección IP 200.200.200.200 puede solicitar y recibir información de este agente.

El Localhost, 127.0.0.1, puede solicitar y recibir información del agente.

Crea el directorio zabbix_agentd.conf.d.

# mkdir /usr/local/etc/zabbix_agentd.conf.d -p

Copie el archivo denominado userparameter_mysql.conf del paquete de instalación de Zabbix al directorio zabbix_agentd.conf.d.

# cd /downloads/zabbix-4.0.3/conf/zabbix_agentd
# cp userparameter_mysql.conf /usr/local/etc/zabbix_agentd.conf.d/

Cree el archivo de credenciales MySQL del agente Zabbix requerido.

El agente de Zabbix utilizará esta información para conectar el servidor MySQL.

# mkdir /var/lib/zabbix -p
# vi /var/lib/zabbix/.my.cnf

Aquí está nuestra configuración.

[client]

user = zabbix_monitor
password = kamisama123
host = localhost

En nuestro ejemplo, el agente de Zabbix monitoreará el servicio MySQL instalado en el host local.

Reinicie el agente de Zabbix.

# /etc/init.d/zabbix-agent restart

3. Zabbix Monitor MySQL

Ahora, necesitamos acceder al panel de control del servidor Zabbix y agregar la computadora Linux que ejecuta MySQL como host.

Abra su navegador e ingrese la dirección IP de su servidor web más / zabbix.

En nuestro ejemplo, la siguiente URL se ingresó en el navegador:

• http://200.200.200.200/zabbix

En la pantalla de inicio de sesión, use el nombre de usuario y la contraseña predeterminados.

• Nombre de usuario predeterminado: Admin
• Contraseña predeterminada: zabbix

Zabbix Login

Después de un inicio de sesión exitoso, se le enviará a Zabbix Dashboard.

Zabbix Dashboard

En la pantalla del tablero, acceda al menú Configuración y seleccione la opción Host.

Zabbix menu

En la parte superior derecha de la pantalla, haga clic en el botón Crear host.

Zabbix Create Host

Ingrese la siguiente informacion:

• Nombre de host: ingrese un nombre de host para identificar el servidor Linux que ejecuta MySQL.
• Nombre de host visible: repita el nombre de host.
• Grupo: seleccione el nombre de un grupo para identificar dispositivos similares.
• Interfaz de agente: ingrese la dirección IP del servidor Linux.

Aquí está la imagen original, antes de nuestra configuración.

Zabbix Add Host

Aquí está la nueva imagen con nuestra configuración.

Zabbix MySQL Host

A continuación, debemos asociar el host con una plantilla de monitor de red específica.

Por defecto, Zabbix viene con una gran variedad de plantillas de monitoreo.

Acceda a la pestaña Plantillas en la parte superior de la pantalla.

Haga clic en el botón Seleccionar y localice la plantilla llamada: Plantilla DB MySQL

Zabbix Template DB MySQL

Haga clic en la opción Agregar.

Haga clic en el botón Agregar.

Después de unos minutos, podrá ver el resultado inicial en el Tablero de Zabbix.

Para probar su configuración, acceda al menú Monitoreo y haga clic en la opción Gráficos.

Zabbix Graphs Menu

En la parte superior derecha de la pantalla, seleccione el grupo llamado ALL.

Seleccione el nombre de host de su computadora MySQL.

Seleccione la gráfica llamada: Operaciones MySQL.

Zabbix MySQL Graph

Debería poder ver el gráfico de la utilización de la CPU.

Zabbix MySQL Graph Example

¡Felicidades! Ha configurado el servidor Zabbix para monitorear MySQL.