开发者社区> 科技小能手> 正文

zabbix:percona mysql监控插件使用方法

简介:
+关注继续查看

一、配置Zabbix Agent

1、插件安装及配置

    下载地址:https://www.percona.com/downloads/percona-monitoring-plugins/

    安装percona的监控mysql软件包:

1
rpm -ivh percona-zabbix-templates-1.1.7-1.noarch.rpm

    查看rpm安装的文件路径:

1
2
3
4
5
6
7
8
[root@zabbix ~]# rpm -ql percona-zabbix-templates-1.1.7-1.noarch
/var/lib/zabbix/percona
/var/lib/zabbix/percona/scripts
/var/lib/zabbix/percona/scripts/get_mysql_stats_wrapper.sh
/var/lib/zabbix/percona/scripts/ss_get_mysql_stats.php
/var/lib/zabbix/percona/templates
/var/lib/zabbix/percona/templates/userparameter_percona_mysql.conf
/var/lib/zabbix/percona/templates/zabbix_agent_template_percona_mysql_server_ht_2.0.9-sver1.1.7.xml

    其中get_mysql_stats_wrapper.sh和ss_get_mysql_stats.php是mysql监控脚本,供zabbix agent调用;userparameter_percona_mysql.conf是zabbix agent的配置文件,包含了mysql监控的自定义key;zabbix_agent_template_percona_mysql_server_ht_2.0.9-sver1.1.7.xml是zabbix模板文件,需要在zabbix web端导入。

    查看zabbix agent的Include目录:

1
2
[root@zabbix ~]# grep '^Include' /etc/zabbix/zabbix_agentd.conf
Include=/etc/zabbix/zabbix_agentd.d/

    复制配置文件到zabbix agent的Include目录:

1
cp /var/lib/zabbix/percona/templates/userparameter_percona_mysql.conf /etc/zabbix/zabbix_agentd.d/

    进入percona的脚本目录:

1
cd /var/lib/zabbix/percona/scripts

    修改脚本里的mysql连接地址:

1
2
vim get_mysql_stats_wrapper.sh
HOST=localhost

    创建mysql连接配置文件ss_get_mysql_stats.php.cnf,写入用户名和密码:

1
2
3
4
vim ss_get_mysql_stats.php.cnf
<?php
$mysql_user = 'root';
$mysql_pass = 's3cret';

    mysql主从监控的配置:

1
2
3
4
5
6
7
vim get_mysql_stats_wrapper.sh
# 找到下面一行,可以看到mysql命令后面没有连接参数,如果你的环境这样执行没有问题的话,可以不改
RES=`HOME=~zabbix mysql -e 'SHOW SLAVE STATUS\G' egrep '(Slave_IO_Running|Slave_SQL_Running):' awk -F: '{print $2}' tr '\n' ','`
# 在mysql命令后面加上连接参数:
RES=`HOME=~zabbix mysql -h localhost -uroot -ps3cret -e 'SHOW SLAVE STATUS\G' egrep '(Slave_IO_Running|Slave_SQL_Running):' awk -F: '{print $2}' tr '\n' ','`
# 如果脚本运行时出现提示“Warning: Using a password on the command line interface can be insecure.”,解决方法
RES=`HOME=~zabbix mysql -h localhost -uroot -ps3cret -e 'SHOW SLAVE STATUS\G' 2>&1 | egrep '(Slave_IO_Running|Slave_SQL_Running):' awk -F: '{print $2}' tr '\n' ','`

wKiom1mbuxrzo0TQAABcGSy1bak364.png-wh_50


2、测试脚本

    本地执行脚本测试:

1
2
/var/lib/zabbix/percona/scripts/get_mysql_stats_wrapper.sh gg
/var/lib/zabbix/percona/scripts/get_mysql_stats_wrapper.sh running-slave

    如果上面测试结果不正常,继续下面调试,查看错误原因:

1
/usr/bin/php -q /var/lib/zabbix/percona/scripts/ss_get_mysql_stats.php --host localhost --items gg

    正常输出:

wKiom1mbu8uQb-NpAAA8Z046dYQ917.png

    解决上面问题后,再用zabbix用户执行脚本,查看输出:

1
sudo -u zabbix -H /var/lib/zabbix/percona/scripts/get_mysql_stats_wrapper.sh gg

    如果遇到zabbix用户权限问题,解决方法:

1
2
rm -f /tmp/localhost-mysql_cacti_stats.txt
chown -R zabbix. /var/lib/zabbix

    正常输出:

wKioL1mbu82Ago3CAAAwrXIP3Ho725.png

    所有调试正常后,重启zabbix agent:

1
service zabbix-agent restart

    最后到zabbix server端远程测试一下:

1
zabbix_get -s 192.168.60.211 -k MySQL.Key-read-requests

    正常输出:

wKioL1mbu9fyAfkSAAAswEbXzfY902.png


二、配置Zabbix Web

1、zabbix web端导入模板文件

    模板文件(zabbix_agent_template_percona_mysql_server_ht_2.0.9-sver1.1.7.xml)在插件安装目录/var/lib/zabbix/percona/templates下,复制出来导入到zabbix web。

    导入后的模板名“Percona MySQL Server Template”,模板分组“Percona Templates”。

wKioL1mbvCDCGeCsAACKzhCW6gU819.png

    注意:官方安装包里的模板是在zabbix2.0.9版本下测试的,经测试可导入到zabbix2.0和2.2版本。

zabbix3.0版本环境不能直接导入,解决方法是:找个zabbix2.2版本环境中转一下,即从2.2版本中导出后,再导入到3.0版本。

2、zabbix web端创建主机

    创建一个主机,主机链接模板“Percona MySQL Server Template”,把主机剩余配置完成。等待5分钟左右后查看mysql监控数据。


    附percona网站链接:

https://www.percona.com/doc/percona-monitoring-plugins/LATEST/zabbix/index.html


本文转自 张斌_青岛 51CTO博客,原文链接:http://blog.51cto.com/qicheng0211/1958291


版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
MySQL故障排查与性能分析方法汇总
MySQL故障排查与性能分析方法汇总
87 0
MySQL 索引的用处和实现方法
MySQL 索引的用处和实现方法
28 0
MySql出现#1036 – Table ‘ ‘ is read only 错误解决方法
MySql出现#1036 – Table ‘ ‘ is read only 错误解决方法
149 0
mysql通过my.cnf修改默认字符集为utf-8的方法和注意事项
mysql通过my.cnf修改默认字符集为utf-8的方法和注意事项
104 0
Mysql 查看死锁,解除死锁的方法
Mysql 查看死锁,解除死锁的方法
76 0
mysql导出数据方法
mysql导出数据方法
40 0
mysql格式化字符串生成订单号的方法
mysql格式化字符串生成订单号的方法
29 0
MySQL误删恢复方法2
实际工作中总会发生数据误删除的场景,在没有备份情况下,如何快速恢复误删数据就显得非常重要。 本文基于MySQL的binlog日志机制,当日志格式设置为“binlog_format=ROW”时,记录一步一步手动解析binlog、恢复误删数据的全过程,供大家参考使用。
51 0
zabbix使用percona插件监控mysql数据库(十九)
zabbix使用percona插件监控mysql数据库 监控MySQL一般最常用的插件就是percona,percona一开始是cacti监控MySQL的插件,后来觉得还不错就打包了zabbix的版本 percona插件下载地址为:https://downloads.percona.com/downloads/percona-monitoring-plugins/percona-monitoring-plugins-1.1.8/binary/redhat/7/x86_64/percona-zabbix-templates-1.1.8-1.noarch.rpm
178 0
+关注
科技小能手
文章
问答
视频
文章排行榜
最热
最新
相关电子书
更多
《Zabbix 监控常用手册》
立即下载
好的 MySQL 兼容可以做到什么程度
立即下载
云数据库RDS MySQL从入门到高阶
立即下载