Как настроить мониторинг MySQL в Zabbix?

В примере используется Zabbix 5.0

1. Создаем пользователя с паролем разрешения:

mysql -uroot -p
> CREATE USER 'zbx_monitor'@'%' IDENTIFIED BY 'ndR44242RRgLed';
> GRANT USAGE,REPLICATION CLIENT,PROCESS,SHOW DATABASES,SHOW VIEW ON *.* TO 'zbx_monitor'@'%';
> quit

2. Необходимо добавиит новые параметры в агенте. Создаем конфигурационный файл /etc/zabbix/zabbix_agentd.d/template_db_mysql.conf с содержанием:

UserParameter=mysql.ping[*], mysqladmin -h"$1" -P"$2" ping
UserParameter=mysql.get_status_variables[*], mysql -h"$1" -P"$2" -sNX -e "show global status"
UserParameter=mysql.version[*], mysqladmin -s -h"$1" -P"$2" version
UserParameter=mysql.db.discovery[*], mysql -h"$1" -P"$2" -sN -e "show databases"
UserParameter=mysql.dbsize[*], mysql -h"$1" -P"$2" -sN -e "SELECT COALESCE(SUM(DATA_LENGTH + INDEX_LENGTH),0) FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA='$3'"
UserParameter=mysql.replication.discovery[*], mysql -h"$1" -P"$2" -sNX -e "show slave status"
UserParameter=mysql.slave_status[*], mysql -h"$1" -P"$2" -sNX -e "show slave status" 

Чтобы избежать несостыковок по домашней папке, где должен находиться .my.cnf, указываем принудительно /var/lib/zabbix.

3. Создадим папку, если её нет, и файл .my.cnf

mkdir /var/lib/zabbix
nano /var/lib/zabbix/.my.cnf

Содержание .my.cnf:

[client]
user='zbx_monitor'
password='Passsw0rd'

4. Назначим права:

chown -R zabbix. /var/lib/zabbix
chmod 400 /var/lib/zabbix/.my.cnf

5. Перезапустим Zabbix Agent:

sudo systemctl restart zabbix-agent

6. В Zabbix переходим в настройки конкретного узла -> Шаблоны. Для быстрого поиска вбиваем Mysql в строке «Присоединение новых шаблонов» и находим шаблон «Template DB MySQL by Zabbix agent». Выбираем и обновляем настройки.

В разделе Мониторинг -> Последние данные можно посмотреть полученную информацию.

Категории: Мониторинг

Метки:

- 05.07.2023           Просмотры: 176

Заметки в Telegram

Добавить комментарий

Ваш электронный адрес не будет опубликован и он необязателен