天天看点

Zabbix 监控MySQL

zabbix自带了一个监控mysql的模板,但是真正监控mysql的并不是zabbix自带的模板。而是

percona

公司的一个监控mysql模板

安装文档:https://www.percona.com/doc/percona-monitoring-plugins/LATEST/zabbix/index.html

percona

 利用的是php来获取

mysql

的相关信息,所以如果我们想使用

percona

插件监控

mysql

就需要在

agent

端安装

php

。在安装文档上有写哦

[[email protected] web]# yum install http://www.percona.com/downloads/percona-release/redhat/0.1-3/percona-release-0.1-3.noarch.rpm
[[email protected] web]# yum install percona-zabbix-templates php php-mysql -y
#percona插件是通过php去获取mysql的参数,所以我们要安装php和php-mysql
 
我们可以查看它都安装了那些软件
[[email protected] web]# 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脚本
/var/lib/zabbix/percona/scripts/ss_get_mysql_stats.php      #php获取mysql信息
/var/lib/zabbix/percona/templates
/var/lib/zabbix/percona/templates/userparameter_percona_mysql.conf #zabbix配置文件
/var/lib/zabbix/percona/templates/zabbix_agent_template_percona_mysql_server_ht_2.0.9-sver1.1.6.xml  #zabbix模板文件
在percona组成我们已经说过了,此处只是略微介绍
           

然后我们需要将模板通过

web

界面导入到zabbix中

Zabbix 监控MySQL

提示:如果出现错误,可能是zabbix 3.0版本的问题。我们这里提供了一个生产的模板

链接:https://pan.baidu.com/s/17g5YyuWKQHgegyP1_FpP2g 密码:x34x

然后从新上传即可

复制配置文件

1、下载并安装MySQL官方的 Yum Repository
wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm
yum -y install mysql57-community-release-el7-10.noarch.rpm
<br>2、安装mysql
yum -y install mysql-community-server<br><br>这步可能会花些时间,安装完成后就会覆盖掉之前的mariadb。



[[email protected] web]# cp /var/lib/zabbix/percona/templates/userparameter_percona_mysql.conf /etc/zabbix/zabbix_agentd.d/
[[email protected] web]# ls /etc/zabbix/zabbix_agentd.d/
#安装完软件包后会在/var/lib/zabbix/percona/templates/目录下产生一个配置文件,我们将它拷贝,因为在前面的博文中,我们已经修改过zabbix的配置文件[Include=/etc/abbix/zabbix_agentd.d/
] 所以将配置文件放在这个目录下,zabbix就会自己在这个目录下查找相关信息
[[email protected] web]# systemctl restart zabbix-agent.service 
重启一下!


# mysql -uroot -p
Enter password:

#如果需要设置简易密码可以先执行下边两条,否则略过

mysql> set global validate_password_policy=0;
mysql> set global validate_password_length=1;
#设置密码

mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'zabbix123456';

#为了安全,可以使用下边的授权方式

GRANT USAGE,PROCESS,SUPER,REPLICATION CLIENT,REPLICATION SLAVE ON *.* TO 'zabbixagentd'@'localhost' IDENTIFIED BY 'SWSHgzp3Pj3vcIdK';

flush privileges;
           

测试

查看是否可以获取到值,随便找一个测试

[[email protected] ~]# cat /var/lib/zabbix/percona/templates/userparameter_percona_mysql.conf
选择一个肯定有值的key
[[email protected] ~]# cat /var/lib/zabbix/percona/templates/userparameter_percona_mysql.conf|grep gm
UserParameter=MySQL.read-views,/var/lib/zabbix/percona/scripts/get_mysql_stats_wrapper.sh gm
测试结果如下:
[[email protected] ~]# cd /var/lib/zabbix/percona/scripts/
[[email protected] scripts]# ./get_mysql_stats_wrapper.sh gm
1
[[email protected] scripts]# ./get_mysql_stats_wrapper.sh gw
9736342
可以获取到值,说明没有问题