Cacti: Мониторинг Mysql

Cacti MySQL Command Counters

Cacti шаблон для мониторинга MySQL сервера посредством протокола SNMP, применимо в тех случаях когда вы не можете по каким либо причинам работать напрямую с базой по порту 3306.

Установка:

1) Все необходимые скрипты, темплейты, инструкции и примеры графиков находятся на GitHub: https://github.com/spions/cacti-mysql/

2) Для начала создаем mysql пользователя, на хосте который мы собираемся мониторить.

 
   [monitoring-server]# mysql -uroot -p
	CREATE USER 'monitor'@'localhost' IDENTIFIED BY 'secret';
	GRANT PROCESS ON *.* TO 'monitor'@'localhost';
	FLUSH PRIVILEGES;

MariaDB можете создать пользователя с пустым паролем. Для нормальной работы пароль желательно все-таки поставить.

	SET PASSWORD FOR 'monitor'@'localhost' = PASSWORD('secret');

3) Созданного выше пользователя прописываем в конфигурационном файле: /etc/snmpd/mysql-stats.conf

        cd /etc/snmp/
	wget https://raw.github.com/spions/cacti-mysql/master/mysql-stats.conf

4) Создаем директорию для кеширования, скачиваем непосредственно скрипт мониторинга и вносим изменения в конфигурационый файл snmpd.conf

        cd /etc/snmp/
	mkdir /etc/snmp/mysql_cache
	chmod 777 /etc/snmp/mysql_cache
       
	wget https://raw.github.com/spions/cacti-mysql/master/mysql-stats
        chmod 755 mysql-stats

Вносим следующие экстенды в /etc/snmp/snmpd.conf и рестартуем демона snmpd.

	extend mysqlqcache /etc/snmp/mysql-stats /etc/snmp/mysql_cache/cache _qcache_miss_ratio _qcache_hit_ratio qcache_hits qcache_inserts qcache_total_blocks qcache_free_blocks _qcache_used_blocks query_cache_size qcache_free_memory _qcache_used_memory qcache_queries_in_cache
	extend mysqlbufferpool /etc/snmp/mysql-stats /etc/snmp/mysql_cache/cache _innodb_buffer_pool_miss_ratio _innodb_buffer_pool_hit_ratio innodb_buffer_pool_reads innodb_buffer_pool_read_requests innodb_buffer_pool_write_requests
	extend mysqlbufferpoolstat /etc/snmp/mysql-stats /etc/snmp/mysql_cache/cache innodb_buffer_pool_pages_total innodb_buffer_pool_pages_data innodb_buffer_pool_pages_free innodb_buffer_pool_pages_dirty innodb_buffer_pool_pages_misc
	extend mysqlinnodbrows /etc/snmp/mysql-stats /etc/snmp/mysql_cache/cache innodb_rows_read innodb_rows_deleted innodb_rows_updated innodb_rows_inserted
	extend mysqlkeycache /etc/snmp/mysql-stats /etc/snmp/mysql_cache/cache _key_miss_ratio _key_hit_ratio key_reads key_read_requests
	extend mysqlcomm /etc/snmp/mysql-stats /etc/snmp/mysql_cache/cache questions com_select com_delete com_insert com_update com_replace com_load com_delete_multi com_insert_select com_update_multi com_replace_select
	extend mysqlsort /etc/snmp/mysql-stats /etc/snmp/mysql_cache/cache sort_rows sort_range sort_merge_passes sort_scan
	extend mysqlselects /etc/snmp/mysql-stats /etc/snmp/mysql_cache/cache select_full_join select_full_range_join select_range select_range_check select_scan

5) Непосредственно на Cacti добавляем новый шаблон «cacti_host_template_mysql.xml«.

Это можно сделать двумя способами:

Через web интерфейс: во вкладке «Console -> Import/Export -> Import Templates«, добавляем ранее скаченный файл в «Import Template from Local File» и делаем «Import».

Через CLI интерфейс cacti:

wget https://raw.github.com/spions/cacti-mysql/master/cacti_host_template_mysql.xml

php /dir_to_cacti/cacti/cli/import_template.php --filename=/dir_to_template/cacti_host_template_mysql.xml --with-user-rras='1:2:3:4'

		using RRA Daily (5 Minute Average)
		using RRA Weekly (30 Minute Average)
		using RRA Monthly (2 Hour Average)
		using RRA Yearly (1 Day Average)
		Read 234723 bytes of XML data
		** GPRINT Preset
		...

6) Если мы все сделали правильно, то в «Host Template» у хоста, толжен появиться новая группа шаблонов под названием «Mysql».

cacti_mysql_template2

Выбрав его, мы сможем добавить новые графики:

cacti_mysql_template1

Шаблон для скачивания: https://github.com/spions/cacti-mysql/archive/master.zip

Вы можете оставить комментарий ниже.