percona-monitoring-plugins的安装
一、安装zabbix agent
在被监控的服务器上需要先安装zabbix代理。如果你没有安装zabbix 代理,可以按照下述方法安装:
groupadd zabbix
useradd -g zabbix -M -s /sbin/nologin zabbix
tar zxvf zabbix-2.0.6.tar.gz
cd zabbix-2.0.6
./configure --enable-agent --prefix=//usr/local/zabbixagent/
make
make install
二、安装percona monitor for zabbix
2.1 下载percona monitor
登录
https://www.percona.com/software/mysql-tools/percona-monitoring-plugins
下载
percona-zabbix-templates-1.1.5-1.noarch.rpm
或者
percona-monitoring-plugins-1.1.5.tar.gz
2.2 在被监控的服务器上安装percona监控插件。
[root@787esrvhk02 soft]# rpm -ivh percona-zabbix-templates-1.1.5-1.noarch.rpm
warning: percona-zabbix-templates-1.1.5-1.noarch.rpm: Header V4 DSA/SHA1 Signature, key ID cd2efd2a: NOKEY
Preparing... ########################################### [100%]
1:percona-zabbix-template########################################### [100%]
Scripts are installed to /var/lib/zabbix/percona/scripts
Templates are installed to /var/lib/zabbix/percona/templates
安装完后,会生成 /var/lib/zabbix/percona目录。
[root@787esrvhk02 soft]# ls /var/lib/zabbix/percona
scripts templates
如果是下载的
percona-monitoring-plugins-1.1.5.tar.gz,解压后,手工创建
/var/lib/zabbix/percona/,并拷贝tar包里面的
scripts和
templates到
/var/lib/zabbix/percona/目录下。
2.3 拷贝参数文件userparameter_percona_mysql.conf到zabbix目录目录下
[root@787esrvhk02 zabbix_agentd.conf.d]# mkdir /usr/local/zabbixagent/conf/zabbix_agentd.conf.d
[root@787esrvhk02 zabbix_agentd.conf.d]# cp /var/lib/zabbix/percona/templates/userparameter_percona_mysql.conf /usr/local/zabbixagent/conf/zabbix_agentd.conf.d
2.4 让zabbix加载percona模板提供的key值
vi /usr/local/zabbixagent/conf/zabbix_agentd.conf
加入下面的一行:
Include=/usr/local/zabbixagent/conf/zabbix_agentd.conf.d
:wq
2.5 重启zabbix agent
/etc/init.d/zabbix_agnet restart
如果启动zabbix过程中有任何异常,请查看zabbix日志进行排查原因:
[root@787esrvhk02 ~]# tail -f /usr/local/zabbixagent/var/zabbix_agentd.log
2.6 安装php环境
需要在被监控的服务器上安装php环境。
[root@787esrvhk02 yum.repos.d]# yum -y install php
[root@787esrvhk02 yum.repos.d]# yum -y install php-mysql
2.7 创建用户和修改密码
mysql>grant super,process on *.* to zabbix_monitor @'localhost' identified by 'password';
mysql>flush privileges;
[root@787esrvhk02 yum.repos.d]#
vi /var/lib/zabbix/percona/scripts/ss_get_mysql_stats.php
$mysql_user = 'zabbix_monitor';
$mysql_pass = 'password';
根据具体情况修改。
ps: 当然,如果你不用localhost,想用本地ip地址,那就需要修改/var/lib/zabbix/percona/scripts/get_mysql_stats_wrapper.sh里面额HOST=localhost值了。
2.8 测试
[root@787esrvhk02 ~]# /var/lib/zabbix/percona/scripts/get_mysql_stats_wrapper.sh gg
1556749288
正常应该是返回一些数字。
我一开始执行就是不返回任何值,当时我就郁闷了,也没有任何报错提示。
那就研究一下这个php脚本:
[root@787esrvhk02 ~]# /usr/bin/php -q /var/lib/zabbix/percona/scripts/ss_get_mysql_stats.php
Required option --host is missing
Usage: php ss_get_mysql_stats.php --host --items [OPTION]
--host MySQL host
--items Comma-separated list of the items whose data you want
--user MySQL username
--pass MySQL password
--port MySQL port
--server-id Server id to associate with a heartbeat if heartbeat usage is enabled
--nocache Do not cache results in a file
--help Show usage
看到有提示,我们按照提示执行看一下:
[root@787esrvhk02 ~]# /usr/bin/php -q /var/lib/zabbix/percona/scripts/ss_get_mysql_stats.php --host localhost --items gg
ERROR 1045 (28000): Access denied for user 'zabbix_monitor'@'localhost' (using password: NO)
原因找到了,那就根据提示修改就行了。
还可以用下面的测试:
[root@787esrvhk02 ~]# sudo -u zabbix -H /var/lib/zabbix/percona/scripts/get_mysql_stats_wrapper.sh r
2982
0
62
0
2444878
0
1126977195
0
0
0
如果执行上述报错,按照下面的授权再执行就好了
chown zabbix.zabbix /tmp/localhost-mysql_cacti_stats.txt
这脚本是执行了stat,然后结果保存到/tmp/$HOST-mysql_cacti_stats.txt,最后进行分析绘图。
2.9 导入percona的模板到zabbix里
将/var/lib/zabbix/percona/templates/zabbix_agent_template_percona_mysql_server_ht_2.0.9-sver1.1.5.xml 这个文件下载下来,用zabbix web页面导入模板:
模板导入后,过一会就能在最新数据里面看到mysql的监控数据了。
完。
参考文档:
http://blog.chinaunix.net/uid-20776139-id-4060624.html
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/28916011/viewspace-1841775/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/28916011/viewspace-1841775/