zabbix使用 Percona Monitoring Plugins 插件来监控mysql
percona 的官网:https://www.percona.com
zabbix集成mysql网址:
https://www.percona.com/doc/percona-monitoring-plugins/LATEST/index.html
1. 系统需求
Client上安装 zabbix-agent, php, php-mysql
2. 安装percona-zabbix-templates
wget 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
rpm -ivh percona-zabbix-templates-1.1.8-1.noarch.rpm
cp /var/lib/zabbix/percona/templates/userparameter_percona_mysql.conf /usr/local/zabbix/etc/zabbix_agentd.conf.d/
重启zabbix_agent。
(2)创建 .cnf 文件指定 MySQL 用户名和密码
cat /var/lib/zabbix/percona/scripts/ss_get_mysql_stats.php.cnf
$mysql_user ='zabbixmoniter';
$mysql_pass ='123456';
(3)测试脚本
/var/lib/zabbix/percona/scripts/get_mysql_stats_wrapper.sh gg
2488 (正常是会返回一个值)
3. 配置zabbix_server
cd /var/lib/zabbix/percona/templates 目录
通过 Zabbix Web 界面 (Configuration -> Templates -> Import) 导入 XML 模板,注意要另外选择上 Screens.
配置主机关联上 Percona MySQL Server Template 模板。
注释:再倒入模板的时候如果出错,可以把模板导入zabbix2.4中,之后在导出,然后在重新导入zabbix3.0中。
4. 配置salve的监控
先在mysql slave的agent里面需要check下看是否生效:
sh /var/lib/zabbix/percona/scripts/get_mysql_stats_wrapper.sh running-slave
0
5. 在zabbix_server端进行验证
/usr/local/zabbix/bin/zabbix_get -s 172.21.0.13 -p10050 -k "MySQL.Threads-connected"
/usr/local/zabbix/bin/zabbix_get -s 172.21.0.13 -p10050 -k "MySQL.Handler-commit"
出现有值说明是正确的。
显示缺少权限则加权限:chown -R zabbix.zabbix /tmp/localhost-mysql_cacti_stats.txt
----------------------------------------------------------------------------------------------------------------------------------------------
安装完之后,默认目录:/var/lib/zabbix/percona
/var/lib/zabbix/percona/scripts/ 这里面的两个文件,sh的脚本是监控获取MySQL状态的,php文件是配置连接数据库用户名密码的。用shell来调用PHP。
/var/lib/zabbix/percona/templates/ 这里面的两个文件,conf文件是要放在agent端/etc/zabbix/zabbix_agentd.d/下面的,XML文件是模版文件。
报错:PHP Warning: Module 'bcmath' already loaded in Unknown on line 0
使用:php --ini 查看有哪些文件引用了,找到对应的文件注释掉即可。