阅读 143

zabbix 添加mysql监控总结

一、背景

因为业务需求,需要对服务器所部署的mysql进行监控,以监控mysql性能及时处理问题。

二、步骤

1.此项目基于zabbix所完成,因此需要搭建zabbix监控,此处使用线上zabbix,要是有问题可自己搭建zabbix,详情见链接。
https://www.centos.bz/2017/11/centos-7%E5%AE%89%E8%A3%85zabbix-3-4/。
  • 1

2.下载并安装percona-zabbix-templates。
rpm -ivh https://www.percona.com/downloads/percona-monitoring-plugins/percona-monitoring-plugins-1.1.7/binary/redhat/7/x86_64/percona-zabbix-templates-1.1.7-2.noarch.rpm
  • 1

3.安装php及php-mysql。
yum -y install php-cli php-mysql
  • 1

4.创建MySQL监控账号。
mysql> GRANT USAGE,PROCESS,REPLICATION CLIENT,REPLICATION SLAVE ON *.* TO zabbix@localhost IDENTIFIED BY ‘zabbix’;
  • 1

备注:此处localhost(主机名)和zabbix密码自定义修改。
5.修改php脚本中的账号密码。
vi /var/lib/zabbix/percona/scripts/ss_get_mysql_stats.php$mysql_user = ‘zabbix’;    # MySQL用户名$mysql_pass = ‘zabbix’;    # MySQL密码$mysql_port = 3306;    # MySQL服务端口$mysql_socket = ‘/tmp/mysql.sock’;    # 默认为NULL,若需要指定socket文件需修改该参数值
  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

6.测试脚本,执行未报错且输出为一串数字则表面测试通过
/var/lib/zabbix/percona/scripts/get_mysql_stats_wrapper.sh gg5146
  • 1

  • 2

  • 3

7.配置/etc/zabbix/.my.cnf,添加用户名密码
vi ~zabbix/.my.cnf

[client]
user = zabbix
password = zabbix
  • 1

  • 2

  • 3

  • 4

  • 5

8.测试脚本,执行未报错且输出为0或1则表面测试通过.
sudo -u zabbix -H /var/lib/zabbix/percona/scripts/get_mysql_stats_wrapper.sh running-slave0
  • 1

  • 2

  • 3

备注:若遇到以下报错信息,请修改脚本中的mysql命令为mysql命令的绝对路径或者使用环境变量。报错信息:
/var/lib/zabbix/percona/scripts/get_mysql_stats_wrapper.sh: line 19: mysql: command not found
编辑/var/lib/zabbix/percona/scripts/get_mysql_stats_wrapper.sh

RES=`HOME=~zabbix mysql 改为 RES=`HOME=~zabbix /usr/local/mysql/bin/mysql
  • 1

  • 2

  • 3

9.复制zabbix agent配置文件(这里的zabbix agent配置文件的目录为/etc/zabbix/zabbix_agentd.d/)
cp /var/lib/zabbix/percona/templates/userparameter_percona_mysql.conf /etc/zabbix/zabbix_agentd.d/
  • 1

10.重启zabbix agent。
systemctl restart zabbix-agent
  • 1

11.测试完成后会生成/tmp/$hostname-mysql_cacti_stats.txt缓存文件,需要删除该文件,才能进行正常监控,否则监控会报错。
rm -f /tmp/$hostname-mysql_cacti_stats.txt
  • 1

12.进入zabbix 配置项->主机,添加需要监控主机,此处选择测试主机。

这里写图片描述

13.此处使用percona监控mysql,percona是一款免费的,完全兼容的,增强型,开放源代替MySQL的替代品,提供多项监控项,可以保证监控mysql的正常运行。此处省略下载步骤,直接将模板提供,见附件。
14.导入模板。如下图所示,即添加模板成功。

这里写图片描述
这里写图片描述

15.为主机添加模板。

这里写图片描述

16.进入检测中->最新数据 查看监控项是否正常存在数据。如下图,即模板已生效。点击图中数据右侧图形,查看图形是否正常显示。

这里写图片描述
这里写图片描述

17.若最新数据组,无数据库则说明配置项未生效,建议检查配置。排查方法为重启agent,或是查看/tmp目录下是否存在$hostname-mysql_cacti_stats.txt,且权限为zabbix.zabbix。此目录为zabbix读取mysql数据,若权限错误,会导致无法正常读取数据。此处主机名为192.168.137.158。

这里写图片描述

18.除了以上方法,还可以修改配置项数据类型。

这里写图片描述

这里写图片描述

这里写图片描述

19.选取配置项,查看图形实时数据。

这里写图片描述

percona插件介绍:Percona Server forMySQL®是一款免费的,完全兼容的,增强型,开放源代替MySQL的替代品,可提供卓越的性能,可扩展性和仪器。 Percona Server for MySQL的自调整算法和超高性能硬件支持的下载量超过4,400,000多个,可提供卓越的性能和可靠性。Percona Server for MySQL受到成千上万的企业的信赖,可为其要求最苛刻的工作负载提供比其他MySQL服务器更好的性能和并发性,并为MySQL服务器用户提供更优质的性能,更高的可伸缩性和可用性,增强的备份和更高的可见性。Percona Server for MySQL现已在Debian 9上提供。该支持仅涵盖amd64体系结构。


文章分类
后端
文章标签
版权声明:本站是系统测试站点,无实际运营。本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 XXXXXXo@163.com 举报,一经查实,本站将立刻删除。
相关推荐