Zabbix模板自带一个MySQL监控模板,但监控的项目比较少,生产环境推荐使用percona的监控插件。
1
|
https:
//www
.percona.com
/doc/percona-monitoring-plugins/1
.1
/zabbix/index
.html
|
1.安装percona插件(agent端):
1
|
rpm -ivh http:
//www
.percona.com
/downloads/percona-release/redhat/0
.1-3
/percona-release-0
.1-3.noarch.rpm
|
2.percona是php写的,所以agent连接MySQL必须安装php和php-mysql
1
2
3
4
5
6
|
yum
install
php php-mysql -y
yum
install
percona-zabbix-templates -y
#编辑zabbix_agent配置文件,这步一般默认配置都完成了:
#vi /etc/zabbix/zabbix_agentd.conf
#include=/etc/zabbix_agentd.conf.d/
|
查看安装的percona:
1
2
3
4
5
6
7
8
|
rpm -ql percona-zabbix-templates
/var/lib/zabbix/percona
/var/lib/zabbix/percona/scripts
/var/lib/zabbix/percona/scripts/get_mysql_stats_wrapper
.sh
/var/lib/zabbix/percona/scripts/ss_get_mysql_stats
.php
/var/lib/zabbix/percona/templates
/var/lib/zabbix/percona/templates/userparameter_percona_mysql
.conf
/var/lib/zabbix/percona/templates/zabbix_agent_template_percona_mysql_server_ht_2
.0.9-sver1.1.7.xml
|
3.复制模板到该目录下:
1
|
cp
/var/lib/zabbix/percona/templates/userparameter_percona_mysql
.conf
/etc/zabbix/zabbix_agentd
.d/
|
4.让php可以连接到mysql上:
1
2
3
4
5
6
7
8
9
10
11
|
#在mysql上授权一个账号
grant
select
,process,replicationclient on *.* to jiankong@localhost identified by
"jiankong"
;
flush priveleges;
#process这个权限可以执行show processlist和kill这个命令。
#relicationclient权限可以查看master和slave的状态。
#编辑percona的配置文件
vi
/var/lib/zabbix/percona/scripts/ss_get_mysql_stats
.php
$mysql_user =
'root'
;
$mysql_pass =
'password'
;
$mysql_port = 3306;
|
5.测试并修改监控脚本:
1
|
/var/lib/zabbix/percona/scripts/get_mysql_stats_wrapper
.sh gg
|
6.修改监控脚本,默认监控MySQL主从的,测试是否能用,如果是从库返回值应该为1,如果出错的话此处需要手工修改:
1
|
/var/lib/zabbix/percona/scripts/get_mysql_stats_wrapper
.sh running-slave
|
7.导入zabbix模板:
1
2
|
cd
/var/lib/zabbix/percona/templates/
sz zabbix_agent_template_percona_mysql_server_ht_2.0.9-sver1.1.7.xml
|
8.下载到本地,然后在zabbix上导入
1
|
Configuration -> Templates-> Import
|
注意:导入模板的时候会出错:
Invalid XML tag "/zabbix_export/date": "YYYY-MM-DDThh:mm:ssZ" is expected
解决:下载个3.0的模板导入即可解决。
https://www.ttlsa.com/wp-content/uploads/2016/07/Percona-MySQL-Server-Template.zip
附件中我已上传,可以直接下载导入。
在生产环境中如果监控到主出现故障,则需要切换到从,则需要清除从库的信息。
1
2
|
stop slave;
reset slave all;
#清除从库的连接信息和二进制文件名位置,show slave status不再有效。
|
附件:http://down.51cto.com/data/2366611
本文转自 王家东哥 51CTO博客,原文链接:http://blog.51cto.com/xiaodongge/1919521