zabbix 通过percona对mysql 进行监控,zabbix+percona+mysql 详细流程

percona:专门针对数据库进行自动化维护工具

通过zabbix监控Mysql步骤

准备agent端安装percona

[root@localhost ]# wget 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
--2021-12-09 19:06:57--  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
正在解析主机 downloads.percona.com (downloads.percona.com)... 162.220.4.222, 74.121.199.231, 162.220.4.221
正在连接 downloads.percona.com (downloads.percona.com)|162.220.4.222|:443... 已连接。
已发出 HTTP 请求,正在等待回应... 200 OK
长度:28296 (28K) [application/octet-stream]
正在保存至: “percona-zabbix-templates-1.1.8-1.noarch.rpm”

100%[=================================================================================================================================================>] 28,296       130KB/s 用时 0.2s   

2021-12-09 19:06:59 (130 KB/s) - 已保存 “percona-zabbix-templates-1.1.8-1.noarch.rpm” [28296/28296])


[root@localhost ]# ls
opt  pear  pear.conf  percona-zabbix-templates-1.1.8-1.noarch.rpm  php.d  php-fpm.conf  php-fpm.d  php.ini  pki  pm  skel  sysconfig  X11  xdg  xinetd.d


[root@localhost ]# yum localinstall percona-zabbix-templates-1.1.8-1.noarch.rpm  -y
已加载插件:fastestmirror, langpacks
正在检查 percona-zabbix-templates-1.1.8-1.noarch.rpm: percona-zabbix-templates-1.1.8-1.noarch
percona-zabbix-templates-1.1.8-1.noarch.rpm 将被安装
正在解决依赖关系
--> 正在检查事务
---> 软件包 percona-zabbix-templates.noarch.0.1.1.8-1 将被 安装
--> 解决依赖关系完成

依赖关系解决

===========================================================================================================================================================================================
 Package                                          架构                           版本                               源                                                                大小
===========================================================================================================================================================================================
正在安装:
 percona-zabbix-templates                         noarch                         1.1.8-1                            /percona-zabbix-templates-1.1.8-1.noarch                         342 k

事务概要
===========================================================================================================================================================================================
安装  1 软件包

总计:342 k
安装大小:342 k
Downloading packages:
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  正在安装    : percona-zabbix-templates-1.1.8-1.noarch                                                                                                                                1/1 

Scripts are installed to /var/lib/zabbix/percona/scripts
Templates are installed to /var/lib/zabbix/percona/templates
  验证中      : percona-zabbix-templates-1.1.8-1.noarch                                                                                                                                1/1 

已安装:
  percona-zabbix-templates.noarch 0:1.1.8-1                                                                                                                                                

完毕!
[root@localhost rh-php72]# 

  • 文件结构介绍
[root@localhost ~]# rpm -ql percona-zabbix-templates
/var/lib/zabbix/percona     #程序目录
/var/lib/zabbix/percona/scripts   #插件脚本存放目录
/var/lib/zabbix/percona/scripts/get_mysql_stats_wrapper.sh #shell脚本,用于针对监控数据进行取值
#要想请求到数据库中的数据,需要动态请求或者动态解析的情况下,shell脚本如果获取数据,其实是里面调用了php脚本
/var/lib/zabbix/percona/scripts/ss_get_mysql_stats.php  #php脚本,真正获取Mysql数据的脚本
#结构:通过php脚本获取数据库的数据,
#再通过Shell脚本将php脚本获取的数据,转变为zabbix监控项语法结构中要求的取值类型,
#然后再由zabbix 进行配置
/var/lib/zabbix/percona/templates  
/var/lib/zabbix/percona/templates/userparameter_percona_mysql.conf  #zabbix agent客户端监控配置文件
/var/lib/zabbix/percona/templates/zabbix_agent_template_percona_mysql_server_ht_2.0.9-sver1.1.8.xml  #模板 percona 直接提供了模板,就是上面那些需要的脚本,配置
#模板:监控项+触发器+自动发现+web检测+图形化展示
[root@localhost ~]# 

agent端安装数据库

[root@localhost ~]# wget https://repo.mysql.com//mysql57-community-release-el7-11.noarch.rpm

[root@localhost ~]# ls mysql57-community-release-el7-11.noarch.rpm 
mysql57-community-release-el7-11.noarch.rpm

[root@localhost ~]# rpm -ivh mysql57-community-release-el7-11.noarch.rpm

[root@localhost ~]# yum -y install mysql-server    //安装Mysql
[root@localhost ~]# systemctl start mysqld
[root@localhost ~]# systemctl enable mysqld
#用日志查看数据库初始密码
[root@localhost ~]# grep 'root@localhost:' /var/log/mysqld.log
#最后:后面显示的是密码
 A temporary password is generated for root@localhost: P#KJz5uMu!
 [root@localhost ~]# mysql -hlocalhost -uroot -p
 mysql>Enter password
 #修改密码
 mysql> alter user root@"localhost" identified by "******"; 
 mysql> grant all on *.* to zabbix@"localhost" identified by "*******";
Query OK, 0 rows affected, 1 warning (0.03 sec)

mysql> flush privileges;
Query OK, 0 rows affected (0.11 sec)

 

执行percona模板

#测试一下,发现什么都没有取出来,进入到
[root@localhost ~]# zabbix_agentd  -t MySQL.Questions
ERROR:*****************************************
#这里会报错,原因是没有php,脚本里面需要/var/lib/php路径下有php


在这里插入图片描述
在这里插入图片描述

下载php之前需要修改一下配置文件

否则会无数据取出

[root@localhost ~]# zabbix_agentd  -t MySQL.Questions
MySQL.Questions                               [t|]
[root@localhost ~]# ^C
#没有数据取出来,
需要将下面这段php的配置文件放入到下main这个路径下的配置文件中
[root@localhost ~]# vi /etc/yum.repos.d/zabbix.repo 

添加的内容为下,直接粘贴进去;


[zabbix-frontend]
name=Zabbix Official Repository frontend - $basearch
baseurl=http://repo.zabbix.com/zabbix/5.0/rhel/7/$basearch/frontend
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591

下载php

[root@localhost ~]#rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
[root@localhost ~]# yum install php70w-common php70w-fpm php70w-opcache php70w-gd php70w-mysqlnd php70w-mbstring php70w-pecl-redis php70w-pecl-memcached php70w-devel
[root@localhost ~]# yum list |grep zabbix-web-mysql
zabbix-web-mysql.noarch                   5.0.18-1.el8                 zabbix   
zabbix-web-mysql-scl.noarch               5.0.18-1.el7                 zabbix-frontend
zabbix-web-mysql-scl-php73.noarch         5.0.18-1.el7                 zabbix-frontend
[root@localhost ~]# yum install zabbix-web
zabbix-web-deps-scl.noarch         zabbix-web-japanese.noarch         zabbix-web-mysql-scl-php73.noarch  zabbix-web-pgsql-scl.noarch        
zabbix-web-deps-scl-php73.noarch   zabbix-web-mysql.noarch            zabbix-web.noarch                  zabbix-web-pgsql-scl-php73.noarch  
zabbix-web-deps.x86_64             zabbix-web-mysql-scl.noarch        zabbix-web-pgsql.noarch            
[root@localhost ~]# yum install zabbix-web-mysql-scl-php73.noarch  -y
..........
.............
................(这里报错)
-> 解决依赖关系完成
错误:软件包:zabbix-web-deps-scl-php73-5.0.18-1.el7.noarch (zabbix-frontend)
          需要:rh-php73-php-mbstring
错误:软件包:zabbix-web-deps-scl-php73-5.0.18-1.el7.noarch (zabbix-frontend)
          需要:rh-php73-php-fpm
错误:软件包:zabbix-web-deps-scl-php73-5.0.18-1.el7.noarch (zabbix-frontend)
          需要:rh-php73-php-ldap
错误:软件包:zabbix-web-mysql-scl-php73-5.0.18-1.el7.noarch (zabbix-frontend)
          需要:rh-php73-php-mysqlnd
错误:软件包:zabbix-web-deps-scl-php73-5.0.18-1.el7.noarch (zabbix-frontend)
          需要:rh-php73-php-bcmath
错误:软件包:zabbix-web-deps-scl-php73-5.0.18-1.el7.noarch (zabbix-frontend)
          需要:rh-php73-php-gd
错误:软件包:zabbix-web-deps-scl-php73-5.0.18-1.el7.noarch (zabbix-frontend)
          需要:rh-php73
错误:软件包:zabbix-web-deps-scl-php73-5.0.18-1.el7.noarch (zabbix-frontend)
          需要:rh-php73-php-xml
 您可以尝试添加 --skip-broken 选项来解决该问题

[root@localhost ~]# yum install centos-release-scl -y

总计                                                                                                                                                       1.2 kB/s |  24 kB  00:00:20     
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  正在安装    : centos-release-scl-rh-2-3.el7.centos.noarch                                                                                                                            1/2 
  正在安装    : centos-release-scl-2-3.el7.centos.noarch                                                                                                                               2/2 
  验证中      : centos-release-scl-2-3.el7.centos.noarch                                                                                                                               1/2 
  验证中      : centos-release-scl-rh-2-3.el7.centos.noarch                                                                                                                            2/2 

已安装:
  centos-release-scl.noarch 0:2-3.el7.centos                                                                                                                                               

作为依赖被安装:
  centos-release-scl-rh.noarch 0:2-3.el7.centos                                                                                                                                            

完毕!
[root@localhost ~]# yum install zabbix-web-mysql-scl -y
已加载插件:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
 * base: mirrors.aliyun.com
 * centos-sclo-rh: mirrors.aliyun.com
 * centos-sclo-sclo: mirrors.aliyun.com
 * epel: mirrors.ustc.edu.cn
 * extras: mirrors.aliyun.com
 * updates: mirrors.aliyun.com
 * webtatic: us-east.repo.webtatic.com
..........................
..........................
[root@localhost ~]# which php
/usr/bin/php
[root@localhost ~]# 

[root@localhost ~]# php -v
PHP 7.0.33 (cli) (built: Dec  6 2018 22:30:44) ( NTS )
Copyright (c) 1997-2017 The PHP Group
Zend Engine v3.0.0, Copyright (c) 1998-2017 Zend Technologies
    with Zend OPcache v7.0.33, Copyright (c) 1999-2017, by Zend Technologies


[root@localhost ~]# /usr/bin/php -q /var/lib/zabbix/percona/scripts/ss_get_mysql_stats.php  --host localhost --items gg
ERROR: Access denied for user 'cactiuser'@'localhost' (using password: YES)[root@localhost ~]# 
#连接数据库,权限拒绝
因为用户是'cactiuser'

#修改该文件,将数据库的用户名和密码修改为之前配置的数据库和密码
[root@localhost ~]# vim /var/lib/zabbix/percona/scripts/ss_get_mysql_stats.php 

#修改完再次执行,执行成功
[root@localhost ~]# /usr/bin/php -q /var/lib/zabbix/percona/scripts/ss_get_mysql_stats.php  --host localhost --items gg
gg:18[root@localhost ~]# 


在这里插入图片描述

##再次执行测试语句,有数据
[root@localhost ~]# zabbix_agentd  -t MySQL.Questions
MySQL.Questions                               [t|12]
[root@localhost ~]#

客户端这边没有问题了

服务端

[root@localhost ~]# zabbix_get -s 192.168.1.129 -k MySQL.Questions
rm: 无法删除"/tmp/localhost-mysql_cacti_stats.txt": 不允许的操作
12
[root@localhost ~]# 
#也有数据

从客户端 将percona模板拿出来

[root@localhost templates]# sz zabbix_agent_template_percona_mysql_server_ht_2.0.9-sver1.1.8.xml 

在这里插入图片描述
在这里插入图片描述

进入web端进行配置

在这里插入图片描述
在这里插入图片描述

导入失败 标签无效 “/zabbix_export/date”: “YYYY-MM-DDThh:mm:ssZ” 预计。

报错!!!

percona只适用于zabbix3.0之前的版本,它没有更新,所以导入模板失败
!!!!
解决方法需要升级,

这里给个模板资源,下载下来可以直接用,或者自己在网上找找;

百度网盘:提取码:xukd
在这里插入图片描述
在这里插入图片描述
监控的是agent主机上的mysql,所以该主机关联模板;
在这里插入图片描述
在这里插入图片描述模板这里显示不支持,前面我们执行测试语句时,也报了这个错,原因是这个文件没有权限在这里插入图片描述

进入客户端添加权限

[root@localhost ~]# chown -R  zabbix:zabbix /tmp/localhost-mysql_cacti_stats.txt
[root@localhost ~]# systemctl restart zabbix-agent.service 
[root@localhost ~]# zabbix_agentd  -t MySQL.Questions
MySQL.Questions                               [t|6366]
[root@localhost ~]# 

再次查看web端,正常了,个别参数不支持是数据库本身就是空的,还没有那些参数
在这里插入图片描述
在这里插入图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值