Настройка мониторинга MySQL в Nagios средствами Percona Monitoring Plugins

1.Установка Percona Nagios Monitoring Plugins на Nagios-сервере
(будет использоваться удаленное подключение к MySQL для снятия статистики)
(в случае использования NRPE эти плагины необходимо установить на каждом клиенте, который будет мониториться)

 

2.Создание файла с учетными данными пользователя для удаленного доступа

 

3.Создание пользователя с необходимыми привилегиями

 

4.Тестирование плагинов с командной строки

Мониторинг удаления файлов, которые в данный момент использует MySQL-сервер
плагин pmp-check-mysql-file-privs

Предоставляем пользователя nagios, от которого выполняется команда, право использовать sudo без пароля для выполнения всех команд(с точки зрения безопасности лучше ограничить список выполняемых команд только теми, которые действительно нужны для успешной работы плагинов)

Отключаем требования использования терминала для пользователя nagios

Проверка корректных владельца и группы на каталог и файлы MySQL(например,пользователь и группа должны быть mysql) – плагин pmp-check-mysql-file-privs

Мониторинг времени выполнения транзакции, которая является блокирующей для других запросов и находится в состоянии idle
(по умолчанию дольше 60 секунд-Warning, дольше 600 секунд-Critical) (плагин check-mysql-innodb)

Мониторинг кол-ва транзакций,находящихся в статусе LOCK WAIT
(по умолчанию больше 10-Warning, больше 25-Critical)(плагин check-mysql-innodb)

Мониторинг времени выполнения транзакции(по умолчанию дольше 60 секунд-Warning, дольше 600 секунд-Critical) (плагин check-mysql-innodb)

Мониторинг наличия PID-файла процесса MySQL(плагин pmp-check-mysql-pidfile )

Мониторинг кол-ва процессов в различных состояниях
(по умолчанию 16-Warning, 32-Critical)(плагин pmp-check-mysql-processlist)

Мониторинг кол-ва пользовательских подключений (по умолчанию 90%-Warning, 95%-Critical)
(плагин pmp-check-mysql-processlist)

Мониторинг любых параметров из статуса SHOW GLOBAL STATUS и SHOW GLOBAL VARIABLES
(плагин pmp-check-mysql-status)
Синтаксис

Например,мониторинг параметра Threads_running

Оператор сравнения по умолчанию используется больше или равно

Для изменения оператора используем опцию

Допустимые значения оператора сравнения

Например, вывод Warning,если значение параметра Threads_running меньше 5, Critical-меньше3

 

5.Определение команд для проверки

 

6.Добавление хостов/групп на мониторинг для указанных проверок

Это лишь часть плагинов от Percona для Nagios
При наличии репликации также полезно ее мониторить плагинами

Я использовал удаленное подключение к MySQL с Nagios-сервера на хост,который нужно мониторить(при этом на клиентском хосте ограничил подключение к MySQL средствами как firewall(iptables), так и непосредственно средствами MySQL)

Если удаленный доступ к MySQL нежелателен/невозможен (даже с учетом ограничения доступа только с Nagios-сервера), то необходимо использовать NRPE-для выполнения этих команд локально на клиентском хосте.

Nagios-mysql-percona

7.Мониторинг репликации с локальным выполнением команд на клиентах через NRPE-плагин

Настройка Nagios-клиента
Добавляем описание команд

Создаем файл с логином/паролем для подключения к MySQL

Создем пользователя с логином/паролем указанном в файле с правом подключения с localhost

Предоставляем пользователя nagios, от которого выполняется команда, право использовать sudo без пароля для выполнения всех команд(с точки зрения безопасности лучше ограничить список выполняемых команд только теми, которые действительно нужны для успешной работы плагинов)

 

Настройка Nagios-сервера

Определение команд для проверки

Добавление хостов/групп на мониторинг для указанных проверок

Источник:
https://www.percona.com/doc/percona-monitoring-plugins/1.1/nagios/index.html
http://www.cyberciti.biz/faq/linux-unix-bsd-sudo-sorry-you-must-haveattytorun/

Комментирование и размещение ссылок запрещено.

Комментарии закрыты.

Яндекс.Метрика