原文:https://blog.csdn.net/yanggd1987/article/details/79656771

简介

之前主要使用nagios监控mysql,本文主要介绍使用percona-monitoring-plugins监控mysql,percona监控插件是php开发,因此要在agent安装php环境。

配置安装

一.zabbix-agent端操作

1.安装软件依赖

yum install php php-mysql -y
  • 1

2.安装percona插件

#centos 6
rpm -Uvh 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
#centos 7
rpm -Uvh https://www.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
  • 3
  • 4

3.复制配置文件至zabbix_agent相关目录下

cp /var/lib/zabbix/percona/templates/userparameter_percona_mysql.conf /etc/zabbix/zabbix_agentd.d/
#重启生效
service zabbix-agent restart
  • 1
  • 2
  • 3

4.数据库添加只读账户

grant process,super,replication client on *.* to 'zabbix'@'localhost' identified by 'zabbix';
  • 1

由于监控mysql需要使用show processlist 及主从相关命令,因此需要给zabbix权限以process,super,replication client等权限。

5.修改脚本参数

vim  /var/lib/zabbix/percona/scripts/ss_get_mysql_stats.php
$mysql_user = 'zabbix';
$mysql_pass = 'zabbix';
$mysql_port = 3306;
$mysql_socket = '/tmp/mysql.sock';
$mysql_flags = 0;
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

以上参数需要根据实际情况填写

6.修改日志权限

chown -R zabbix.zabbix /tmp/localhost-mysql_cacti_stats.txt 
  • 1

7.测试

#在zabbix agent上测试MySQL.Threads-connected
[root@test83 scripts]# bash /var/lib/zabbix/percona/scripts/get_mysql_stats_wrapper.sh iu
77
#在zabbix server上测试
[root@test250 ~]# /App/zabbix/bin/zabbix_get -s 10.10.5.83 -k MySQL.Threads-connected
77
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

若输出正常,则表明percona-monitoring-plugins配置成功。下一步我们需要安装模板。

二.zabbix-server端操作 
1.导入监控模板 

导入”zabbix_agent_template_percona_mysql_server_ht_2.0.9-sver1.1.8.xml”报如上错误,原因原来的模板在3.x 使用有问题,需要将模板导入到2.4中再到处即可。 
2.给客户端添加模板,在此我们不多做说明了。

解决方案:

手动修改模板文件解决报错比较麻烦,有人提到可以将此模板导入 Zabbix 2.X 系列后,再导出到 Zabbix 3.0。
这里我们直接使用现成可用的 Zabbix 3.X 的 percona-zabbix-templates 
zbx_percona_mysql_template.xml 模板地址

三.监控mysql主从 
在slave节点上操作: 
1.权限需提升

#若只分配select权限,需进一步提升权限
grant process,super,replication client on *.* to 'zabbix'@'localhost' identified by 'zabbix';
  • 1
  • 2

2.修改脚本

vim /var/lib/zabbix/percona/scripts/get_mysql_stats_wrapper.sh
RES=`HOME=~zabbix mysql -uzabbix -pzabbix -e 'SHOW SLAVE STATUS\G' | egrep '(Slave_IO_Running|Slave_SQL_Running):' | awk -F: '{print $2}' | tr '\n' ','`
#修改后测试
[root@test83 ~]# bash /var/lib/zabbix/percona/scripts/get_mysql_stats_wrapper.sh running-slave
Warning: Using a password on the command line interface can be insecure.
1
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

我们看到会输出”Warning: Using a password on the command line interface can be insecure.” 
因此我们需要需要在/etc/my.cnf中添加如下:

[client]
port = 3306
socket = /tmp/mysql.sock
user = zabbix
password = zabbix
  • 1
  • 2
  • 3
  • 4
  • 5

然后再次将脚本更改为:

vim /var/lib/zabbix/percona/scripts/get_mysql_stats_wrapper.sh
RES=`HOME=~zabbix mysql -e 'SHOW SLAVE STATUS\G' | egrep '(Slave_IO_Running|Slave_SQL_Running):' | awk -F: '{print $2}' | tr '\n' ','`
#测试
[root@test83 ~]# bash /var/lib/zabbix/percona/scripts/get_mysql_stats_wrapper.sh running-slave
1
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

经如上更改后,zabbix就会监控mysql主从,当然我们需要在master节点上将模板中的关于slave的监控项禁用,以便只监控slave节点的同步情况即可。

(转)zabbix3.4使用percona-monitoring-plugins监控mysql的更多相关文章

  1. Zabbix 3.x中使用Percona Monitoring Plugins监控MySQL

    1.下载安装percona-zabbix-templates-1.1.7-2.noarch.rpm 下载地址:https://www.percona.com/downloads/percona-mon ...

  2. Zabbix 中使用 Percona Monitoring Plugins 监控 MySQL

    1.先安装agent客户端 tar zxvf zabbix-3.2.6.tar.gz cd zabbix-3.2.6 ./configure --prefix=/data/zabbix --enabl ...

  3. 用percona monitoring plugins 监控mysql

    下载:http://www.percona.com/redir/downloads/percona-monitoring-plugins/1.1.1/percona-zabbix-templates- ...

  4. Docker部署Zabbix监控MariaDB主从同步(Percona Monitoring Plugins for Zabbix)

    一.安装Docker并部署Zabbix 建议先配置清华大学的docker-ce yum源,速度有保障:清华大学repo源 1.Zabbix Server节点配置 部署环境: [root@server0 ...

  5. Zabbix 3.2.6-Mysql多实例监控-Percona Monitoring Plugins自动发现

    mysql多实例监控实录   系统环境: cat /etc/redhat-release CentOS Linux release 7.3.1611 (Core) 内核版本: uname -r 3.1 ...

  6. 修正Percona Monitoring Plugins for Zabbix的一处脚本Bug

    今天小试了一把Percona Monitoring Plugins for Zabbix模板,自己辛辛苦苦写的那一大堆Python脚本,貌似用这个模板全都覆盖到了.但是,我也发现最新的版本percon ...

  7. zabbix4.0 percona插件实现监控mysql

    percona是一款能够详细监控zabbix MySQL的插件 官方下载percona插件 wget https://www.percona.com/downloads/percona-monitor ...

  8. Download Percona Monitoring Plugins

    https://www.percona.com/downloads/percona-monitoring-plugins/LATEST/

  9. 关于 percona monitoring plugins插件报slave is stoped on ip地址

    思路:肯定是某个item触发了触发器 去看触发器,找到 slave is stoped,如下图 看到键是mysql.running-slave ,然后去定义key的文件中查看该键对应的脚本,修改脚本. ...

  10. zabbix3.2使用自带模板监控MySql

    一.zabbix自带MySql模板监控项 Zabbix3.0之后已经有MySql监控模板了,所以我们只要引用ZabbixServer自带的模板即可.zabbix默认有14个监控项 我们只需获取监控项需 ...

随机推荐

  1. linux 下 WebSphere日志中文乱码

    管理控制台--->服务器--->应用程序服务器--->server1--->java和进程管理--->进程定义--->java虚拟机--->将通用jvm参数设 ...

  2. Chrome Console API 参考

    https://developers.google.com/web/tools/chrome-devtools/console/command-line-reference

  3. markdown你的生活 | markdown编辑器简介

    前言 你是否有这样的困扰?希望找一个笔记本记录东西,window自带的notepad(记事本)?,轻量但是功能太有限.word文档?功能虽多,但是很沉重,我们需要花很多时间去想如何排版会更记录会清晰, ...

  4. Linux 基础教程 35-软件包管理-YUM

    YUM基础     使用RPM在Linux中安装.卸载软件或服务进会经常碰到RPM包的依赖,而我们在安装软件A时,提示依赖于软件B,安装软件B时又会出现提示依赖于软件C等一系列的依赖关系.这时大家会提 ...

  5. C#之Dictionary 与 C++之map

    最近重学二叉查找树,顺便就好好看了看C#里Dictionary和C++的map的实现原理. 首先简单说明两个基本数据结构: 1. 散列表 散列表是一个key-value数据结构,可根据key值直接访问 ...

  6. [Elixir005] 查看指定数据的详细信息 i helper

    elixir在1.2后增加了一个新的特性i helper. 在iex shell中使用i可以查看任意数据的数据类型和详细描述 #查看变量描述 iex(1)> i {:test, "Th ...

  7. C++ 模板和 C# 泛型之间的区别(C# 编程指南)

    C# 泛型和 C++ 模板都是用于提供参数化类型支持的语言功能. 然而,这两者之间存在许多差异. 在语法层面上,C# 泛型是实现参数化类型的更简单方法,不具有 C++ 模板的复杂性. 此外,C# 并不 ...

  8. “全栈2019”Java多线程第十四章:线程与堆栈详解

    难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java多 ...

  9. hadoop1.0.4运行程序出现“Java heap Space”错误

    根据虾皮博客中教程,成功搭建了一个12台电脑的Hadoop云平台,而且成功运行了软件自带的wordcount程序,处理10M数据. 但是当程序处理40M时候,却出错了.出错提示“Java Heap S ...

  10. openpyxl读写Excel文件

    安装 pip install openpyxl 一个简单的实例: 最初的表格 #!/usr/bin/env python # -*- coding:utf-8 -*- import openpyxl ...