Zabbix 中使用 Percona Monitoring Plugins 监控 MySQL

1.安装zabbix agent

1
2
[root@szlinux01 ~] # rpm -ivh http://repo.zabbix.com/zabbix/3.2/rhel/7/x86_64/zabbix-agent-3.2.0-1.el7.x86_64.rpm
[root@szlinux01 ~] # yum install zabbix-agent

 

2.修改配置

1
[root@szlinux01 ~] # vim /etc/zabbix/zabbix_agentd.conf

Server=192.168.137.3

ServerActive=192.168.137.3

Hostname=szlinux01

 

3.启动代理

1
2
3
[root@szlinux01 ~] # systemctl enable zabbix-agent
[root@szlinux01 ~] # systemctl start zabbix-agent
[root@szlinux01 ~] # netstat -tunpl | grep 10050

 

4.在服务端测试数据获取

1
[root@szzabbix ~] # zabbix_get -s 192.168.137.3 -p 10050 -k system.uptime

 

5.安装php和php-mysql

1
2
3
4
[root@szlinux01 ~] # yum install epel-release
[root@szlinux01 ~] # rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7
[root@szlinux01 ~] # yum install php php-mysql
[root@szlinux01 ~] # rpm -qa zabbix-agent php php-mysql

 

6.安装配置percona-zabbix-templates

1
2
3
[root@szlinux01 ~] # yum install https://www.percona.com/downloads/percona-monitoring-plugins/percona-monitoring-plugins-1.1.7/binary/redhat/7/x86_64/percona-zabbix-templates-1.1.7-2.noarch.rpm
[root@szlinux01 ~] # cp /var/lib/zabbix/percona/templates/userparameter_percona_mysql.conf /etc/zabbix/zabbix_agentd.d/
[root@szlinux01 ~] # systemctl restart zabbix-agent

 

7.首先在被监控服务器szlinux01的mysql里添加权限,即本机使用zabbix账号连接本地的mysql

1
2
mysql>  grant  usage, process, replication client  on  *.*  to  'zabbix' @ 'localhost'  identified  by  'ABCabc!@#123' ;
mysql> flush  privileges ;

 

8.修改php文件的mysql用户名和密码

1
[root@szlinux01 ~] # vim /var/lib/zabbix/percona/scripts/ss_get_mysql_stats.php

$mysql_user = 'zabbix';

$mysql_pass = 'ABCabc!@#123';

 

9.测试脚本

1
[root@szlinux01 ~] # /var/lib/zabbix/percona/scripts/get_mysql_stats_wrapper.sh gg

 

10.配置~zabbix/.my.cnf

1
[root@szlinux01 ~] # vim ~zabbix/.my.cnf

[client]

user = zabbix

password = 'ABCabc!@#123'

注意:复杂密码需要引号。

 

11.zabbix用户测试脚本

1
[root@szlinux01 ~] # sudo -u zabbix -H /var/lib/zabbix/percona/scripts/get_mysql_stats_wrapper.sh running-slave

 

12.导入模板

将被监控服务器szlinux01上的/var/lib/zabbix/percona/templates/zabbix_agent_template_percona_mysql_server_ht_2.0.9-sver1.1.7.xml下载到本地,通过Zabbix页面导入到模板里。


配置->模板->导入

clip_image002

 

报错:

clip_image003

解决方法:

手动修改模板文件解决报错比较麻烦,有人提到可以将此模板导入 Zabbix 2.X 系列后,再导出到 Zabbix 3.X。

这里直接使用现成可用的 Zabbix 3.X 的 percona-zabbix-templates

zbx_percona_mysql_template.xml模板地址

 

clip_image005

 

13.添加主机并链接模板

clip_image007

 

发现没有最新的数据。于是,测试数据获取:

1
[root@szzabbix ~] # zabbix_get -s 192.168.137.3 -p 10050 -k "MySQL.max-connections"

 

报错:

rm: cannot remove `/tmp/localhost-mysql_cacti_stats.txt': Operation not permitted

解决方法:

在被监控服务器szlinux01上面执行如下操作即可

1
2
3
[root@szlinux01 ~] # rm -rf /tmp/localhost-mysql_cacti_stats.txt
[root@szlinux01 ~] # touch /tmp/localhost-mysql_cacti_stats.txt
[root@szlinux01 ~] # chown -R zabbix:zabbix /tmp/localhost-mysql_cacti_stats.txt

 再在zabbix上测试获取数据:

1
2
3
[root@szzabbix ~] # zabbix_get -s 192.168.137.3 -p 10050 -k "MySQL.max-connections"
[root@szzabbix ~] # zabbix_get -s 192.168.137.3 -p 10050 -k "MySQL.Threads-connected"
[root@szzabbix ~] # zabbix_get -s 192.168.137.3 -p 10050 -k "MySQL.running-slave"


数据也有了,过一会,就可以看到有图了。














本文转自UltraSQL51CTO博客,原文链接:http://blog.51cto.com/ultrasql/1926767,如需转载请自行联系原作者


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值