当前位置 博文首页 > 江晓龙的博客:zabbix使用percona插件监控mysql数据库(十九)

    江晓龙的博客:zabbix使用percona插件监控mysql数据库(十九)

    作者:[db:作者] 时间:2021-07-30 08:48

    zabbix使用percona插件监控mysql数据库

    监控MySQL一般最常用的插件就是percona,percona一开始是cacti监控MySQL的插件,后来觉得还不错就打包了zabbix的版本

    percona插件下载地址为:https://downloads.percona.com/downloads/percona-monitoring-plugins/percona-monitoring-plugins-1.1.8/binary/redhat/7/x86_64/percona-zabbix-templates-1.1.8-1.noarch.rpm

    监控思路:

    1.首先准备好模板文件,进行导入

    2.将配置文件cp到对应的配置文件目录

    3.准备好脚本

    4.应用模板

    1.安装percona插件

    [root@zabbix-server ~]# rpm -ivh percona-zabbix-templates-1.1.8-1.noarch.rpm 
    警告:percona-zabbix-templates-1.1.8-1.noarch.rpm: 头V4 DSA/SHA1 Signature, 密钥 ID cd2efd2a: NOKEY
    准备中...                          ################################# [100%]
    正在升级/安装...
       1:percona-zabbix-templates-1.1.8-1 ################################# [100%]
    
    Scripts are installed to /var/lib/zabbix/percona/scripts
    Templates are installed to /var/lib/zabbix/percona/templates
    
    模板路径:/var/lib/zabbix/percona/templates
    脚本路径:/var/lib/zabbix/percona/scripts
    
    由于模板都是非常老的版本了,都不兼容zabbix4.0了,因此我们再这个
    模板还有rpm都在此链接
    链接:https://pan.baidu.com/s/1MIcHUokduErdjkI6wOnzyw 
    提取码:45h1 
    复制这段内容后打开百度网盘手机App,操作更方便哦
    

    2.导入监控模板

    点击配置—模板—导入

    在这里插入图片描述

    3.配置zabbix_agent

    这些文件都在rpm包中有准备

    1.准备配置文件
    [root@zabbix-server ~]# cp /var/lib/zabbix/percona/templates/userparameter_percona_mysql.conf /etc/zabbix/zabbix_agentd.d/
    
    2.准备脚本文件
    [root@zabbix-server ~]# ls /var/lib/zabbix/percona/scripts/
    get_mysql_stats_wrapper.sh  ss_get_mysql_stats.php
    
    3.重启zabbix_agent
    [root@zabbix-server ~]# systemctl start zabbix-agent
    
    

    4.修改ss_get_mysql_stats.php脚本

    由于是基于cacti打包的,因此这里非常坑,如果不改执行脚本会没有任何输出

    [root@zabbix-server ~]# /var/lib/zabbix/percona/scripts/get_mysql_stats_wrapper.sh ij

    原因:这时由于php脚本中的数据库用户写的不对

    解决方法:

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

    $mysql_user = ‘zabbix’;
    $mysql_pass = ‘123456’;

    再次执行即可获取值

    [root@zabbix-server ~]# /var/lib/zabbix/percona/scripts/get_mysql_stats_wrapper.sh ij
    21

    使用zabbix_get测试

    [root@zabbix-server ~]# zabbix_get -s 127.0.0.1 -k MySQL.Open-files
    21

    测试完一定要删除文件

    [root@zabbix-server scripts]# rm -rf /tmp/localhost-mysql_cacti_stats.txt

    5.修改get_mysql_stats_wrapper.sh脚本

    默认获取主从状态使用root去登陆的,但是我们的php脚本用的是zabbix用户,因此需要改一下

    修改下面这一行
    RES=`HOME=~zabbix mysql -e 'SHOW SLAVE STATUS\G' | egrep '(Slave_IO_Running|Slave_SQL_Running):' | awk -F: '{print $2}' | tr '\n' ','`
    为
    RES=`HOME=~zabbix mysql -u zabbix -e 'SHOW SLAVE STATUS\G' | egrep '(Slave_IO_Running|Slave_SQL_Running):' | awk -F: '{print $2}' | tr '\n' ','`
    

    6.应用刚刚导入的mysql模板

    配置—主机—模板—添加模板

    在这里插入图片描述

    瞬间就多了好多监控项

    在这里插入图片描述

    7.查看监控数据

    在这里插入图片描述

    cs