配置环境:

centos 6.6 

zabbix server and agent:2.4.7

Percona Monitoring Plugins for Zabbix:1.1

前置条件 :zabbix agent已经安装 :   若用源码安装 请使用如下参数编译

configure --prefix=/ --enable-agent


1 安装依赖包php php-mysql
yum install -y php php-mysql
2 安装插件
wget https://www.percona.com/downloads/percona-monitoring-plugins/1.1.6/percona-zabbix-templates-1.1.6-1.noarch.rpm
 rpm -ivh percona-zabbix-templates-1.1.6-1.noarch.rpm
3 拷贝插件的监控项配置文件
mkdir -p /etc/zabbix_agentd.conf.d/
cp /var/lib/zabbix/percona/templates/userparameter_percona_mysql.conf /etc/zabbix_agentd.conf.d/userparameter_percona_mysql.conf
4 vi /etc/zabbix_agentd.conf 添加如下项
Include=/etc/zabbix_agentd.conf.d/
5 登陆mysql创建监控要用的账号
mysql>GRANT SELECT, PROCESS, SUPER, REPLICATION CLIENT ON *.* TO 'zabbixmoniter'@'localhost' IDENTIFIED BY "wertsdfg"

6 修改配置文件的数据库账号
vi /var/lib/zabbix/percona/scripts/ss_get_mysql_stats.php
$mysql_user = 'zabbixmoniter';
$mysql_pass = 'wertsdfg';
$mysql_port = 3001;

若mysql没有使用默端口,则还需要修改如下脚本文件,哥在这里被坑了好久
vi /var/lib/zabbix/percona/scripts/get_mysql_stats_wrapper.sh
CACHEFILE="/tmp/$HOST-mysql_cacti_stats.txt:3001"
TIMEFLM=`stat -c %Y /tmp/$HOST-mysql_cacti_stats.txt:3001`

7 创建zabbix用户 将如下文件授权所有者为zabbix
get_mysql_stats_wrapper.sh
ss_get_mysql_stats.php
/tmp/$HOST-mysql_cacti_stats.txt:3001

8 测试
客户端运行如下命令,测试插件是否正常工作。
/var/lib/zabbix/percona/scripts/get_mysql_stats_wrapper.sh gg
 

服务端运行如下命令测试,是否可以正常获取值
zabbix_get -s 客户端ip -p 10050 -k "MySQL.Threads-connected"


9 若需要监控slave节点还需要进行如下配置
进入zabbix的家目录创建".my.cnf" 隐藏文件,内容如下
[client]
user=zabbixmoniter
password="wertsdfg"  #注意:密码要用双引号

10 测试slave监控项
客户端运行如下命令:
sudo -u zabbix -H /var/lib/zabbix/percona/scripts/get_mysql_stats_wrapper.sh running-slave

11 服务端导入模板
模板文件位置如下:拷贝出来,浏览器登陆zabbix服务端 选择模板导入
cd /var/lib/zabbix/percona/templates
zabbix_agent_template_percona_mysql_server_ht_2.0.9-sver1.1.6.xml

12 服务端添加监控主机
Percona MySQL Server Template 一共有191个监控项

效果图:

Percona Monitoring Plugins for Zabbix 安装和配置_第1张图片

Percona Monitoring Plugins for Zabbix 安装和配置_第2张图片

Percona Monitoring Plugins for Zabbix 安装和配置_第3张图片