安装|percona zabbix 监控mysql

percona zabbix 功能原理

percona zabbix 是percona 下的一个用于zabbix监控mysql的一个工具,主要是通过zabbix 执行shell脚本 get_mysql_stats_wrapper.sh,这个脚本中调用了ss_get_mysql_stats.php,把采集到数据存入临时文件(/tmp/localhost-mysql_cacti_stats.txt),通过命令行传入的参数在临时文件中过滤出需要的数据,给到zabbix,进行展示和监控。

准备工作

用到了php,所以这里需要安装php,而且需要安装php 的mysqli,这里我zabbix已经在用,所有没有zabbix安装介绍。
(实际这个脚本从percona cacti 改过来的)

wget https://www.percona.com/downloads/percona-monitoring-plugins/percona-monitoring-plugins-1.1.8/binary/redhat/6/x86_64/percona-zabbix-templates-1.1.8-1.noarch.rpm
yum -y install php php-pdo  percona-zabbix-templates-1.1.8-1.noarch.rpm

配置

安装好的默认目录结构 /var/lib/zabbix,zabbix目录在 /usr/local/zabbix

.
└── percona
    ├── scripts
    │   ├── get_mysql_stats_wrapper.sh
    │   ├── ss_get_mysql_stats.php
    └── templates
        ├── userparameter_percona_mysql.conf
        └── zabbix_agent_template_percona_mysql_server_ht_2.0.9-sver1.1.8.xml

复制zabbix agent需要的配置文件,以及修改对应配置

cp /var/lib/zabbix/percona/templates/userparameter_percona_mysql.conf /usr/local/zabbix/etc/zabbix_agentd.conf.d/
vim /var/lib/zabbix/percona/scripts/ss_get_mysql_stats.php.cnf

通过手动调用进行测试是否OK

/var/lib/zabbix/percona/scripts/get_mysql_stats_wrapper.sh gg

注意我这边遇到一个报错找不到mysql sock文件,所以我修改了ss_get_mysql_stats.php 33行

ERROR: Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock'
vim /var/lib/zabbix/percona/scripts/ss_get_mysql_stats.php
  $mysql_socket = '/tmp/mysql.sock';

最后记得删除/tmp/ 下一个存放数据的临时文件,因为我们手动调用过,所以,文件拥有者和组都是root,zabbix agent调用写入时会没有权限。

rm -f localhost-mysql_cacti_stats.txt

最后导入模板 zabbix_agent_template_percona_mysql_server_ht_2.0.9-sver1.1.8.xml

注意次模板我是在zabbix 2.4.7版本使用。默认还不支持zabbix 3.0,看网上解决方案是在zabbix2.x导入,然后在导出,在导入到zabbix3.x

你可能感兴趣的:(安装|percona zabbix 监控mysql)