Esta página le guía a través de los pasos necesarios para comenzar la monitorización básica de un servidor MySQL.
Para monitorizar un servidor MySQL, existen varios enfoques: agente Zabbix, agente Zabbix 2 o el estándar Open Database Connectivity (ODBC). El enfoque principal de esta guía es la monitorización de un servidor MySQL con el agente Zabbix 2, que es el enfoque recomendado debido a su sencilla configuración en diferentes entornos. Sin embargo, esta página también ofrece instrucciones para los otros enfoques, así que siéntase libre de elegir el que mejor se adapte a sus necesidades.
Para quién es esta guía
Esta guía está diseñada para nuevos usuarios de Zabbix y contiene el conjunto mínimo de pasos necesarios para habilitar la monitorización básica de un servidor MySQL. Si busca opciones de personalización avanzadas o requiere una configuración más avanzada, consulte la sección Configuración del manual de Zabbix.
Prerrequisitos
Antes de continuar con esta guía, debe descargar e instalar el servidor Zabbix, el frontend de Zabbix y el agente 2 de Zabbix siguiendo las instrucciones para su sistema operativo.
Según su configuración, algunos de los pasos de esta guía pueden diferir ligeramente. Esta guía se basa en la siguiente configuración:
Para monitorizar un servidor MySQL, Zabbix requiere acceso a él y a sus procesos. Su instalación de MySQL ya tiene un usuario con el nivel de acceso requerido (el usuario "zabbix" que se creó al instalar Zabbix), sin embargo, este usuario tiene más privilegios de los necesarios para una simple monitorización (privilegios para eliminar bases de datos, borrar entradas de tablas, etc.). Por lo tanto, es necesario crear un usuario MySQL con el propósito de solo monitorizar el servidor MySQL.
1. Conéctese al cliente MySQL, cree un usuario "zbx_monitor" (reemplace <password> para el usuario "zbx_monitor" por una contraseña de su elección), y CONCEDA los privilegios necesarios al usuario:
mysql -u root -p
# Introduzca la contraseña:
mysql> CREATE USER 'zbx_monitor'@'%' IDENTIFIED BY '<password>';
mysql> GRANT REPLICATION CLIENT,PROCESS,SHOW DATABASES,SHOW VIEW ON *.* TO 'zbx_monitor'@'%';
mysql> quit;
Una vez creado el usuario, puede pasar al siguiente paso.
1. Inicie sesión en la interfaz web de Zabbix.
2. Cree un equipo en la interfaz web de Zabbix:
3. Haga clic en Añadir para añadir el equipo. Este equipo representará su servidor MySQL.
¡Felicidades! En este punto, Zabbix ya está monitorizando su servidor MySQL.
Para ver las métricas recopiladas, navegue a la sección de menú Monitorización → Equipos y haga clic en Cuadros de mando junto al equipo.
Esta acción le llevará al cuadro de mando del equipo (configurado a nivel de plantilla) con las métricas más importantes recopiladas del servidor MySQL.
Alternativamente, desde la sección de menú Monitorización → Equipos, puede hacer clic en Últimos datos para ver todas las métricas recopiladas más recientes en una lista. Tenga en cuenta que la métrica MySQL: Calculated value of innodb_log_file_size se espera que no tenga datos, ya que el valor se calculará a partir de los datos de la última hora.
Zabbix puede notificarle sobre un problema en su infraestructura utilizando una variedad de métodos. Esta guía proporciona los pasos básicos de configuración para enviar alertas por correo electrónico.
1. Vaya a Configuración de usuario → Perfil, cambie a la pestaña Medios y agregue su correo electrónico.
2. Siga la guía para Recibir una notificación de problema.
La próxima vez que Zabbix detecte un problema, debería recibir una alerta por correo electrónico.
Para probar su configuración, podemos simular un problema real actualizando la configuración del equipo en la interfaz de Zabbix.
1. Abra la configuración del equipo de su servidor MySQL en Zabbix.
2. Cambie a la pestaña Macros y seleccione Macros heredadas y del equipo.
3. Haga clic en Cambiar junto al valor de la macro configurada previamente {$MYSQL.USER}, por ejemplo, y establezca un nombre de usuario de MySQL diferente.
4. Haga clic en Actualizar para actualizar la configuración del equipo.
5. En unos momentos, Zabbix detectará el problema "MySQL: El servicio está caído", porque no podrá conectarse al servidor MySQL. El problema aparecerá en Supervisión → Problemas.
Si las alertas están configuradas, también recibirá la notificación del problema.
6. Cambie el valor de la macro a su valor anterior para resolver el problema y continuar monitorizando el servidor MySQL.
En lugar de monitorizar un servidor MySQL con Zabbix agent 2, también puede utilizar Zabbix agent o el estándar Open Database Connectivity (ODBC). Aunque se recomienda utilizar Zabbix agent 2, puede haber algunas configuraciones que no sean compatibles con Zabbix agent 2 o que requieran un enfoque personalizado.
La diferencia clave entre Zabbix agent y ODBC radica en el método de recopilación de datos: Zabbix agent se instala directamente en el servidor MySQL y recopila datos utilizando su funcionalidad incorporada, mientras que ODBC depende de un controlador ODBC para establecer una conexión con el servidor MySQL y recuperar datos utilizando consultas SQL.
Aunque muchos de los pasos de configuración son similares a la monitorización de un servidor MySQL con Zabbix agent 2, existen algunas diferencias significativas: debe configurar Zabbix agent u ODBC para poder monitorizar un servidor MySQL. Las siguientes instrucciones le guiarán a través de estas diferencias.
Para monitorizar un servidor MySQL con el agente Zabbix, debe descargar e instalar el servidor Zabbix, el frontend de Zabbix y el agente Zabbix siguiendo las instrucciones para su sistema operativo.
Una vez que haya instalado correctamente los componentes necesarios de Zabbix, debe crear un usuario MySQL como se describe en la sección Crear usuario MySQL.
Después de haber creado el usuario MySQL, debe configurar el agente Zabbix para que pueda establecer una conexión con el servidor MySQL y monitorizarlo. Esto incluye configurar múltiples parámetros de usuario para ejecutar comprobaciones personalizadas del agente, así como proporcionar al agente Zabbix las credenciales necesarias para conectarse al servidor MySQL como el usuario "zbx_monitor" creado previamente.
Configurar el agente Zabbix
1. Navegue al directorio de configuraciones adicionales del agente Zabbix.
El directorio de configuraciones adicionales del agente Zabbix debe estar ubicado en el mismo directorio que su archivo de configuración del agente Zabbix (zabbix_agentd.conf). Dependiendo de su sistema operativo y la instalación de Zabbix, este directorio puede tener una ubicación diferente a la especificada en esta guía. Para ubicaciones por defecto, consulte el parámetro Include
en el archivo de configuración del agente Zabbix.
En lugar de definir todos los parámetros de usuario necesarios para monitorizar el servidor MySQL en el archivo de configuración del agente Zabbix, estos parámetros se definirán en un archivo separado en el directorio de configuraciones adicionales.
2. Cree un archivo template_db_mysql.conf en el directorio de configuraciones adicionales del agente Zabbix.
3. Copie el contenido del archivo template_db_mysql.conf (ubicado en el repositorio de Zabbix) al archivo template_db_mysql.conf que creó y guarde.
4. Reinicie el agente Zabbix para actualizar su configuración.
Una vez que haya configurado los parámetros de usuario del agente Zabbix, puede continuar para configurar las credenciales que permitirán al agente Zabbix acceder al servidor MySQL.
5. Vaya al directorio principal del agente Zabbix (si no existe en su sistema, debe crearlo; por defecto: /var/lib/zabbix).
6. Cree un archivo .my.cnf en el directorio principal del agente Zabbix.
7. Copie el siguiente contenido en el archivo .my.cnf (reemplace <password> por la contraseña del usuario "zbx_monitor").
Configure la interfaz web de Zabbix y pruebe su configuración
Para configurar la interfaz web de Zabbix, siga las instrucciones de la sección Configurar la interfaz web de Zabbix con los siguientes ajustes:
Una vez que haya configurado la interfaz web de Zabbix, puede ver las métricas recopiladas y configurar alertas de problemas.
Para probar su configuración, siga las instrucciones de la sección Probar su configuración con los siguientes ajustes:
Para monitorizar un servidor MySQL con ODBC, necesita descargar e instalar el servidor Zabbix y el frontend de Zabbix.
Una vez que haya instalado correctamente los componentes requeridos de Zabbix, debe crear un usuario MySQL como se describe en la sección Crear usuario MySQL.
Después de haber creado el usuario MySQL, debe configurar ODBC. Esto incluye instalar una de las implementaciones de API ODBC de código abierto más utilizadas - unixODBC - y un controlador unixODBC, así como editar el archivo de configuración del controlador ODBC.
Configurar ODBC
1. Instale unixODBC. La forma sugerida de instalar unixODBC es utilizar los repositorios de paquetes predeterminados del sistema operativo Linux.
2. Instale el controlador de base de datos MariaDB unixODBC. Aunque tiene una base de datos MySQL, se utiliza el controlador MariaDB unixODBC por cuestiones de compatibilidad.
3. Verifique la ubicación de los archivos de configuración de ODBC odbcinst.ini y odbc.ini.
El resultado de ejecutar este comando debería ser similar al siguiente.
unixODBC 2.3.9
DRIVERS............: /etc/odbcinst.ini
SYSTEM DATA SOURCES: /etc/odbc.ini
FILE DATA SOURCES..: /etc/ODBCDataSources
...
4. Para configurar el controlador ODBC para monitorizar una base de datos MySQL, necesita el nombre del controlador, que se encuentra en el archivo odbcinst.ini. En el siguiente ejemplo de archivo odbcinst.ini, el nombre del controlador es "MariaDB Unicode".
[MariaDB Unicode]
Driver=libmaodbc.so
Description=MariaDB Connector/ODBC(Unicode)
Threading=0
UsageCount=1
5. Copie el siguiente contenido en el archivo odbc.ini (reemplace <password> por la contraseña del usuario "zbx_monitor"). Esta guía utiliza "127.0.0.1" (localhost) como la dirección del servidor MySQL para monitorizar un servidor MySQL que está instalado en la misma máquina que el controlador ODBC. Tenga en cuenta el nombre de la fuente de datos (DSN) "test", que será necesario cuando configure la interfaz web de Zabbix.
[test]
Driver=MariaDB Unicode
Server=127.0.0.1
User=zbx_monitor
Password=<password>
Port=3306
Database=zabbix
Configurar el frontend de Zabbix y probar su configuración
Para configurar el frontend de Zabbix, siga las instrucciones en la sección Configurar el frontend de Zabbix con los siguientes ajustes:
Una vez que haya configurado el frontend de Zabbix, puede ver las métricas recopiladas, configurar alertas de problemas y probar su configuración.