实战zabbix3.0.2 使用percona mysql插件监控mysql5.7
1.系统环境
[root@shard0 templates]# cat /etc/redhat-release
Red Hat Enterprise Linux Server release 7.2 (Maipo)
2.下载安装需要的软件 zabbix-agent php php-mysql
wget http://repo.zabbix.com/zabbix/3.2/rhel/7/x86_64/zabbix-agent-3.2.7-1.el7.x86_64.rpm
rpm -i zabbix-agent-3.2.7-1.el7.x86_64.rpm
yum install php php-mysql
[root@shard0 zabbix]# rpm -qa zabbix-agent php php-mysql
php-5.4.16-42.el7.x86_64
php-mysql-5.4.16-42.el7.x86_64
zabbix-agent-3.2.7-1.el7.x86_64
3.下载安装percona
wget https://www.percona.com/downloads/percona-monitoring-plugins/1.1.6/percona-zabbix-templates-1.1.6-1.noarch.rpm
rpm -i percona-zabbix-templates-1.1.6-1.noarch.rpm
#自动生成两个目录 scripts:脚本目录 templates:模板目录
[root@shard0 templates]# cd /var/lib/zabbix/percona
[root@shard0 percona]# ll
total 4
drwxr-xr-x. 2 root root 68 Mar 15 01:17 scripts
drwxr-xr-x. 2 root root 4096 Mar 15 01:17 templates
[root@shard0 percona]# ll scripts/
total 64
-rwxr-xr-x. 1 root root 1251 Jan 11 2016 get_mysql_stats_wrapper.sh
-rwxr-xr-x. 1 root root 59640 Jan 11 2016 ss_get_mysql_stats.php
[root@shard0 percona]# ll templates/
total 284
-rw-r--r--. 1 root root 18866 Jan 11 2016 userparameter_percona_mysql.conf
-rw-r--r--. 1 root root 269258 Jan 11 2016 zabbix_agent_template_percona_mysql_server_ht_2.0.9-sver1.1.6.xml
/var/lib/zabbix/percona/scripts/目录中,sh的脚本是监控获取MySQL状态的,php文件是配置连接数据库用户名密码的。
/var/lib/zabbix/percona/templates/目录中,conf文件是要放在agent端/etc/zabbix/zabbix_agentd.d/下面的,XML文件是模版文件。
4.创建监控mysql的管理账号
my3306->GRANT SELECT, PROCESS, SUPER, REPLICATION CLIENT ON *.* TO 'zabbix'@'localhost' IDENTIFIED BY "123456";
my3306->flush privileges;
Query OK, 0 rows affected (0.00 sec)
5.修改ss_get_mysql_stats.php配置文件
[root@shard0 scripts]# cd var/lib/zabbix/percona/scripts
[root@shard0 scripts]# vim ss_get_mysql_stats.php
6.修改监控脚本
#1 这里要先建好这个文件,否则会报rm权限错误
vim /tmp/localhost-mysql_cacti_stats.txt
chown -R zabbix.zabbix /tmp/$HOST-mysql_cacti_stats.txt
#2 如果MySQL端口非3306,则要修改端口脚本,以下为3317为例
vim /var/lib/zabbix/percona/scripts/get_mysql_stats_wrapper.sh
CACHEFILE="/tmp/$HOST-mysql_cacti_stats.txt "
换成:
CACHEFILE="/tmp/$HOST-mysql_zabbix_stats.txt:3317"
TIMEFLM=`stat -c %Y /tmp/$HOST-mysql_cacti_stats.txt`
换成:
TIMEFLM=`stat -c %Y /tmp/$HOST-mysql_zabbix_stats.txt:3317
#3 修改mysql执行命令路径,修改为对应MySQL命令的位置,本例的位置为 /u01/MySQL5.7/bin
#RES=`HOME=~zabbix mysql -e 'SHOW SLAVE STATUS\G' | egrep '(Slave_IO_Running|Slave_SQL_Running):' | awk -F: '{print $2}' | tr '\n' ','`
换成:
RES=`/u01/MySQL5.7/bin -u root -e 'SHOW SLAVE STATUS\G' | egrep '(Slave_IO_Running|Slave_SQL_Running):' | awk -F: '{print $2}' | tr '\n' ','`
7.修改参数文件 /etc/my.cnf
上面的步骤6中 如果 mysql -uroot 把密码带上 :
/u01/MySQL5.7/bin -u root -pxxxx -e 'SHOW SLAVE STATUS\G'
会出现附加提示,Warning: Using a password on the command line interface can be insecure.
此时zabbix会提示获取数据格式错误!
#解决方案:
vim /etc/my.cnf
[mysql]
user=your_backup_user_name
password=your_backup_password
8.拷贝参数文件
cp /var/lib/zabbix/percona/templates/userparameter_percona_mysql.conf /etc/zabbix/zabbix_agentd.d/
9.修改zabbix_agent配置文件
[root@shard0 zabbix]# cd /etc/zabbix/
[root@shard0 zabbix]# vi zabbix_agentd.conf
Server=172.253.32.79
ServerActive=172.253.32.79
Hostname=DESKTOP-4O8JRR9
参数说明:
Server: zabbix server的ip地址,
ServerActive: zabbix 主动监控server的ip地址,
其中Server和ServerActive都指定zabbix Server的IP地址,不同的是,前者是被动后者是主动。也就是说Server这个配置是用来允许
172.253.32.79这个ip来我这取数据。而ServerActive的172.253.32.79的意思是,客户端主动提交数据给他。
Hostname 主机名,必须唯一,区分大小写。Hostname必须和zabbix web上配置的一直,否则zabbix主动监控无法正常工作。
因为agent拿着这个主机名去问server,我有配置主动监控项吗?server拿着这个主机名去配置里面查询,然后返回信息。
zabbix agent检测分为主动(agent active)和被动(agent)两种形式,主动与被动的说法均是相对于agent来讨论的。
主动:agent请求server获取主动的监控项列表,并主动将监控项内需要检测的数据提交给server/proxy
被动:server向agent请求获取监控项的数据,agent返回数据。
10.重启zabbix_agent
[root@shard0 zabbix]# systemctl restart zabbix-agent
11.下载模板文件,并导入zabbix server端。
wget https://www.percona.com/downloads/percona-monitoring-plugins/1.1.6/percona-monitoring-plugins-1.1.6.tar.gz
12.导入报错
解决办法:
将zabbix_agent_template_percona_mysql_server_ht_2.0.9-sver1.1.7.xml导入zabbix2.4中再导出。之后将新的导出xml导入
到3.2中问题解决。
我将修改好的模版文件share下,地址是:https://download.csdn.net/download/chinesern/10472518
13.Received value [sh: /var/lib/zabbix/percona/scripts/get_mysql_stats_wrapper.sh: Permission denied] is not suitable for value type [Numeric (float)]
#解决方法
vi /etc/selinux/config文件
#SELINUX=enforcing 注释掉
添加SELINUX=disabled
SELINUXTYPE=targeted 注释掉
#使配置立即生效
setenforce 0
实战zabbix3.0.2 使用percona mysql插件监控mysql5.7的更多相关文章
- zabbix系列(二)zabbix3.0.4添加对mysql数据库性能的监控
zabbix3.0.4添加Mysql的监控 zabbix3.0 server已自带mysql的模板了,只需安装agent端,然后在web端给主机增加模板就行了. Agent端操纵 /etc/zabbi ...
- Zabbix-3.0.3使用自带模板监控MySQL
导读 Zabbix是一款优秀的,开源的,企业级监控软件,可以通过二次开发来监控你想要监控的很多服务,本文介绍使用Zabbix自带的模板监控MySQL服务. 配置userparameter_mysql. ...
- Zabbix3.0基础教程之一:系统监控,zabbix安装与基本配置
一.安装环境: 系统环境: 系统版本:CentOS Linux release 7.4.1708 (Core) 内核版本:3.10.0-693.el7.x86_64 关闭Firewall与SELinu ...
- 分布式监控系统Zabbix-3.0.3-完整安装记录(2)-添加mysql监控
Zabbix3.0 Server以后就自带了MySQL插件来监控mysql数据库的模板,只需要配置好agent客户端,然后在web端给主机增加模板就行了. 以下是公司线上的zabbix3.0环境下添加 ...
- 分布式监控系统Zabbix-3.0.3-完整安装记录(1)
分布式监控系统Zabbix-3.0.3的安装记录 环境说明zabbix-server:192.168.1.30 #zabbix的服务端(若要监控本机,则需要配置本机的Zabbix agent, ...
- Zabbix3.0源码安装
环境:nginx1.6.3 php-5.6.22 mysql-5.5.49 请参考前面的博文自行搭建 安装依赖并创建用户 [root@test88 ~]# yum install -y libxml2 ...
- zabbix3.0.4添加对指定进程的监控
zabbix3.0.4添加对进程的监控: 主要思路: 通过 ps -ef|grep sdk-push-1.0.0.jar |grep -v grep|wc -l 这个命令来判断进程sdk-push是否 ...
- zabbix3.0.4使用shell脚本和zabbix自带模板两种方法添加对指定进程和端口的监控
zabbix3.0.4添加对进程的监控: 方法一:通过自定义命令进行监控 主要思路: 通过 ps -ef|grep sdk-push-1.0.0.jar |grep -v grep|wc -l 这个命 ...
- zabbix系列~mysql进行监控
一 简介:zabbix进行数据库监控 二 目的:采用percona进行插件式安装监控 三 安装 环境 zabbix_agent 步骤 yum -y install php php-mysql yum ...
随机推荐
- bzoj-1009-dp+kmp处理转移矩阵幂
1009: [HNOI2008]GT考试 Time Limit: 1 Sec Memory Limit: 162 MBSubmit: 4723 Solved: 2940[Submit][Statu ...
- access_token和微信服务地址的获取
access_token的获取: //获取微信服务器地址:
- PHP:第五章——字符串与数组及其他函数
<?php header("Content-Type:text/html;charset=utf-8"); //1.str_split——将字符串转换为数组. /*$str= ...
- openGL之着色器程序的使用
#define GLEW_STATIC #include <GL\glew.h> #include <GLFW\glfw3.h> #include<iostream> ...
- query更多的筛选用法
比较操作符$eq : = 写法:db.class0.find({age:{$eq:18}},{name:1,_id:0}); 查找年龄等于18$lt :<$lte : <=$gt : & ...
- GIST特征描述符使用(转)
GIST特征描述符使用 一种场景特征描述 场景特征描述? 通常的特征描述符都是对图片的局部特征进行描述的,以这种思路进行场景描述是不可行的. 比如:对于“大街上有一些行人”这个场景,我们必须通过局部特 ...
- django 模板关闭特殊字符转化
默认情况下,在django admin管理界面和页面中,如果输出的对象中包含HTML特殊字符,在django中默认的处理方式是将对象中的HTML特殊字符转化,例如会将 "<" ...
- Nginx获取自定义头部header的值
http://blog.csdn.net/xbynet/article/details/51899286?_t=t http://shift-alt-ctrl.iteye.com/blog/23314 ...
- Intellij Idea上Spring Boot编译报错:Error:(3, 32) java: 程序包org.springframework.boot不存在
很尴尬,为了使用Spring Boot的Initializr,特意下了个Intellij Idea,刚按提示新建一个Spring Boot的Maven项目后,就出现红叉叉了.因为IDE是新的,开始是M ...
- Tomcat 性能优化(连接数、线程、JVM、dir)
Tomcat的server.xml中Context元素的以下参数应该怎么配合适 <Connector port="8080" maxThreads="150&quo ...