使用percona plugin 监控mysql

之前我们通过自定监控项来监控mysql或mariadb的状态,但是如果我们需要有更详细的监控类型,或者不想自己创建一系列的监控项目的话,我们可以使用percona plugin中自带的监控项来实现mysql的监控,这样省去了我们大量的手工操作。

安装php环境和 percona plugin:

yum install php php-mysql –y
rpm -ivh 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

插件安装完成之后会有如下提示:

Scripts are installed to /var/lib/zabbix/percona/scripts
Templates are installed to /var/lib/zabbix/percona/templates

在templates目录下会有两个文件:

[root@temp-test ~]# cd /var/lib/zabbix/percona/templates
[root@temp-test templates]# ll
total 284
-rw-r--r-- 1 root root  18866 Dec 10  2016 userparameter_percona_mysql.conf
-rw-r--r-- 1 root root 269258 Dec 10  2016 zabbix_agent_template_percona_mysql_server_ht_2.0.9-sver1.1.7.xml

其中userparameter文件需要我们拷贝到对应的zabbx agent 配置中指定的目录。默认为 /etc/zabbix/zabbix_agentd.d/

模板文件需要我们导入到zabbix的模板中,上面定义了所有的监控规则。

在scripts中,也有两个文件:

[root@temp-test scripts]# ll
total 64
-rwxr-xr-x 1 root root  1251 Dec 10  2016 get_mysql_stats_wrapper.sh
-rwxr-xr-x 1 root root 59998 Nov 13 15:55 ss_get_mysql_stats.php

这里需要修改php文件中所指定的数据库的账号,密码和sock文件路径,默认的是null值,指向的是/var/lib/mysql/mysql.sock,如果不是默认,需要修改:

$mysql_user = 'root';
$mysql_pass = '123456';
$mysql_port = 3306;
$mysql_socket = '/data/mariadata/mysql/mysql.sock';

测试命令是可用:

[root@temp-test scripts]# ./get_mysql_stats_wrapper.sh gg
48

web 界面导入模板即可,如果监控项目过多可以删除不需要的监控项。附上监控模板http://down.51cto.com/data/2340474  。