Percona Monitoring Plugins for Zabbix(MySQL)
这些模版主要来源于Cacti的模版,当前只提供MySQL template
Cacti and Zabbix templates的区别:
-
Zabbix 不支持Y轴,因此你会在某些图形会看到负值,这是为了解决这个问题,把它们看作正值
-
Zabbix不支持具有混合绘制样式的堆叠图形项目,因此有些图形不会像Cacti中那样好看,因为堆栈被替换成了线条
其它Zabbix中的特点:
-
通过Zabbix Agent轮询来填充items的值。
-
有预定义的triggers可供使用。
-
有一屏可以显示所有图形。
-
轮询间隔300秒-与Cacti中一致,现有的PHP脚本用于检索和缓存MySQL指标,除了一些特定于触发器的项目。由于要缓存结果,每个周期内PHP script只运行一次
系统要求
-
Zabbix 版本为 2.0.x. 已在 版本2.0.9中进行测试
-
被监控节点中安装Zabbix agent, php, php-mysql(yum install -y zabbix-agent php php-mysql)
安装
配置Zabbix Agent
1.安装 Percona Software Repositories(https://www.percona.com/software/percona-software-repositories-for-mysql)下载的包:
下载
yum install percona-zabbix-templates
或者
apt-get install percona-zabbix-templates
它将文件放在/ var / lib / zabbix / percona /下。 或者,您可以获取tarball并将文件夹zabbix / scripts /和zabbix / templates /复制到/ var / lib / zabbix / percona /。
2.复制 Zabbix Agent 配置:
mkdir -p /etc/zabbix/zabbix_agentd.d
cp /var/lib/zabbix/percona/templates/userparameter_percona_mysql.conf /etc/zabbix/zabbix_agentd.d/userparameter_percona_mysql.conf
3.确认/etc/zabbix/zabbix_agentd.conf中包含
Include=/etc/zabbix/zabbix_agentd.d/
4.重启Agent:
systemctl restart zabbix-agent
在Agent上配置MySQL连接
在这一步中,我们需要配置Agent到本机MySQL的连接和认证
-
创建 .cnf 文件 /var/lib/zabbix/percona/scripts/ss_get_mysql_stats.php.cnf
vi /var/lib/zabbix/percona/scripts/ss_get_mysql_stats.php.cnf
<?php
$mysql_user = 'root';
$mysql_pass = 's3cret';
-
测试脚本:
[[email protected] main]# /var/lib/zabbix/percona/scripts/get_mysql_stats_wrapper.sh gg405647
如果密码错误,将返回如下报错
[[email protected] ~]# /var/lib/zabbix/percona/scripts/get_mysql_stats_wrapper.sh ggERROR: run the command manually to investigate the problem: /usr/bin/php -q /var/lib/zabbix/percona/scripts/ss_get_mysql_stats.php --host localhost --items gg[[email protected] ~]# /usr/bin/php -q /var/lib/zabbix/percona/scripts/ss_get_mysql_stats.php --host localhost --items ggERROR: Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)[[email protected] ~]#
-
配置 ~zabbix/.my.cnf
Example:
[client]user = rootpassword = s3cret
-
测试脚本:
[[email protected] ~]# sudo -u zabbix -H /var/lib/zabbix/percona/scripts/get_mysql_stats_wrapper.sh running-slave0
应该返回0或者1,不应该是 “Access denied”错误。
配置Zabbix Server
-
从/var/lib/zabbix/percona/templates中获取模版
-
下载到本地
-
通过Zabbix UI导入XML模版 (Configuration -> Templates -> Import),增加“Screen”
导入时可能出现如下报错
原因:此模版适用于Zabbix 2版本,不适用与zabbix 3
解决方法:将该模版导入到Zabbix 2中,再导出,在Zabbix 3中重新导入
-
创建/编辑主机,连接到模版Percona MySQL Server Template
注意:
文件/tmp/localhost-mysql_cacti_stats.txt的属主需要调整成Zabbix的用户
chwon zabbix.zabbix /tmp/localhost-mysql_cacti_stats.txt