percona zabbix mysql-plugin是percona发布的一个使用zabbix监控mysql数据库的工具,这款工具比zabbix自带的监控模板要强大的多,毕竟percona是Mysql的一个重要分支,专业做数据库的,所以,采集的数据比较全面。percona的监控插件是php编写的。通过php连接mysql来获取相关的数据,所以需要你在本地安装zabbix agent的同时,部署php和php-mysql

1、安装php php-mysql

[[email protected] ~]# yum install php php-mysql -y

2、下载安装percona-zabbix-templates

[[email protected] templates]# rpm -ivh https://www.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

安装完成会提示脚本和模板的位置

Scripts are installed to /var/lib/zabbix/percona/scripts

Templates are installed to /var/lib/zabbix/percona/templates

脚本目录下存放的脚本用于获取数据库的信息的

[[email protected] scripts]# pwd

/var/lib/zabbix/percona/scripts

[[email protected] scripts]# ls

get_mysql_stats_wrapper.sh  ss_get_mysql_stats.php

3、修改get_mysql_stats_wrapper.sh

[[email protected] scripts]# vim get_mysql_stats_wrapper.sh

19     RES=`HOME=~zabbix mysql -uroot -p123456 -e 'SHOW SLAVE STATUS\G' | egrep '(Slave_IO_Running|Slave    _SQL_Running):' | awk -F: '{print $2}' | tr '\n' ','`    #在19行中加入数据库用户名和密码

4、修改ss_get_mysql_stats.php

[[email protected] scripts]# vim ss_get_mysql_stats.php

30 $mysql_user = 'root';        #将第30和31行修改为数据库的用户名和密码

31 $mysql_pass = '123456';

5、拷贝自定义监控项的配置文件到/etc/zabbix/zabbix_agentd.d/目录

[[email protected] scripts]# cp userparameter_percona_mysql.conf /etc/zabbix/zabbix_agentd.d/

[[email protected] scripts]# ls /etc/zabbix/zabbix_agentd.d/

userparameter_mysql.conf  userparameter_percona_mysql.conf

配置文件中自定义了很多key

6、重启zabbix agent

[[email protected] scripts]# systemctl restart zabbix-agent.service

7、测试

在zabbix server上命令行测试获取某个key的值

[[email protected] ~]# zabbix_get -s 192.168.1.51 -k MySQL.Sort-scan

23

[[email protected] ~]# ls /tmp/        #取值成功后会在/tmp/目录下生成一个日志文件

localhost-mysql_cacti_stats.txt  systemd-private-c570caeba5d44f268cad220a4ab53d7f-mariadb.service-lgHRlT

8、web界面操作

8.1 导入模板

percona-zabbix-templates-1.1.8-1.noarch.rpm包里带的模板有点问题,从网上下载

8.2 主机链接模板

8.3 修改监控项的采集时间间隔

模板中的监控项采集时间间隔为5分钟,要想快速获取数据就需要批量修改监控项的采集时间间隔

全选点击批量更新

9、查看最新数据

至此,通过percona插件监控mysql成功