011-通过安装percona插件监控MySQL

女生的网名这么多〃 提交于 2019-11-27 13:21:53

percona-monitoring-plugins是percona专门为MySQL监控的工具,支持Nagios,cacti,zabibx,本文主要介绍percona-monitoring-plugins在zabbix下使用的方法
Percona监控插件特性:

通过zabbix agent进行数据轮询采集
预定义的触发器
图形集中展现(Screen,聚合图形)
默认300秒轮询间隔,使用php脚本采集数据,并写入缓存文件,zabbix agent读取缓存文件收集数据。除特定用于触发器的健康检查项目外,在轮询间隔内,PHP脚本只进行一次采集

环境准备:以下实现监控zabbix服务端数据库

客户端安装PHP

# 安装时已完成,可略过
yum -y install php php-mysql

客户端安装percona插件

若下载失败可到文末底部GitHub链接下载再安装

rpm -ivh 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

查看安装后的文件

当装完percona插件之后,默认在/var/lib/zabbix/下会生成percona目录,查看如下

[root@gzyk201808 ~]# cd /var/lib/zabbix/
[root@gzyk201808 zabbix]# ll
总用量 0
drwxr-xr-x 4 root root 38 3月  16 16:49 percona
[root@gzyk201808 zabbix]# tree percona/
percona/
├── scripts
│   ├── get_mysql_stats_wrapper.sh
│   └── ss_get_mysql_stats.php
└── templates
    ├── userparameter_percona_mysql.conf
    └── zabbix_agent_template_percona_mysql_server_ht_2.0.9-sver1.1.8.xml

2 directories, 4 files

复制模板文件到zabbix客户端目录

cp /var/lib/zabbix/percona/templates/userparameter_percona_mysql.conf /etc/zabbix/zabbix_agentd.d/

客户端数据库添加zabbix账号

# 安装时已完成,可略过
grant all privileges on *.* to zabbix@localhost identified by "Zabbix@123";

修改ss_get_mysql_stats.php文件

[root@gzyk201808 zabbix]# vim /var/lib/zabbix/percona/scripts/ss_get_mysql_stats.php
# 依据mysql安装和数据库情况编辑
$mysql_user = 'zabbix';
$mysql_pass = 'Zabbix@123';
$mysql_port = 3306;
# 根据mysql安装配置修改
$mysql_socket = NUll;

模板1

修改get_mysql_stats_wrapper.sh脚本

模板

chmod +x /var/lib/zabbix/percona/scripts/get_mysql_stats_wrapper.sh

重启客户端并测试连通性

systemctl restart zabbix-agent
# 先检查是否存在 /tmp/localhost-mysql_cacti_stats.txt 文件,若不存在执行以下语句会生成该文件,默认存在该文件
/usr/bin/php -q /var/lib/zabbix/percona/scripts/ss_get_mysql_stats.php --host localhost --items gg
# 在Agent节点上配置和验证与127.0.0.1的MySQL连接,返回任何数字则表式连接成功
/var/lib/zabbix/percona/scripts/get_mysql_stats_wrapper.sh gg

修改客户端mysql配置文件 /etc/my.cnf ,添加如下并重启客户端数据库
模板2
测试脚本,执行未报错且输出为0或1则表明测试通过

sudo -u zabbix -H /var/lib/zabbix/percona/scripts/get_mysql_stats_wrapper.sh running-slave

配置权限

chown -R zabbix.zabbix /tmp/localhost-mysql_cacti_stats.txt
chmod 755 /tmp/localhost-mysql_cacti_stats.txt

服务端测试获取数据

zabbix_get -s 192.168.181.136 -p10050 -k "MySQL.Threads-connected"

添加percona插件MySQL模板

配置-模板-导入模板,这里提供完整模板,地址,自行选择模板类型,导入模板之后,选择相应的主机添加模板即可

 
 

percona-monitoring-plugins是percona专门为MySQL监控的工具,支持Nagios,cacti,zabibx,本文主要介绍percona-monitoring-plugins在zabbix下使用的方法
Percona监控插件特性:

通过zabbix agent进行数据轮询采集
预定义的触发器
图形集中展现(Screen,聚合图形)
默认300秒轮询间隔,使用php脚本采集数据,并写入缓存文件,zabbix agent读取缓存文件收集数据。除特定用于触发器的健康检查项目外,在轮询间隔内,PHP脚本只进行一次采集

环境准备:以下实现监控zabbix服务端数据库

客户端安装PHP

# 安装时已完成,可略过
yum -y install php php-mysql

客户端安装percona插件

若下载失败可到文末底部GitHub链接下载再安装

rpm -ivh 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

查看安装后的文件

当装完percona插件之后,默认在/var/lib/zabbix/下会生成percona目录,查看如下

[root@gzyk201808 ~]# cd /var/lib/zabbix/
[root@gzyk201808 zabbix]# ll
总用量 0
drwxr-xr-x 4 root root 38 3月  16 16:49 percona
[root@gzyk201808 zabbix]# tree percona/
percona/
├── scripts
│   ├── get_mysql_stats_wrapper.sh
│   └── ss_get_mysql_stats.php
└── templates
    ├── userparameter_percona_mysql.conf
    └── zabbix_agent_template_percona_mysql_server_ht_2.0.9-sver1.1.8.xml

2 directories, 4 files

复制模板文件到zabbix客户端目录

cp /var/lib/zabbix/percona/templates/userparameter_percona_mysql.conf /etc/zabbix/zabbix_agentd.d/

客户端数据库添加zabbix账号

# 安装时已完成,可略过
grant all privileges on *.* to zabbix@localhost identified by "Zabbix@123";

修改ss_get_mysql_stats.php文件

[root@gzyk201808 zabbix]# vim /var/lib/zabbix/percona/scripts/ss_get_mysql_stats.php
# 依据mysql安装和数据库情况编辑
$mysql_user = 'zabbix';
$mysql_pass = 'Zabbix@123';
$mysql_port = 3306;
# 根据mysql安装配置修改
$mysql_socket = NUll;

模板1

修改get_mysql_stats_wrapper.sh脚本

模板

chmod +x /var/lib/zabbix/percona/scripts/get_mysql_stats_wrapper.sh

重启客户端并测试连通性

systemctl restart zabbix-agent
# 先检查是否存在 /tmp/localhost-mysql_cacti_stats.txt 文件,若不存在执行以下语句会生成该文件,默认存在该文件
/usr/bin/php -q /var/lib/zabbix/percona/scripts/ss_get_mysql_stats.php --host localhost --items gg
# 在Agent节点上配置和验证与127.0.0.1的MySQL连接,返回任何数字则表式连接成功
/var/lib/zabbix/percona/scripts/get_mysql_stats_wrapper.sh gg

修改客户端mysql配置文件 /etc/my.cnf ,添加如下并重启客户端数据库
模板2
测试脚本,执行未报错且输出为0或1则表明测试通过

sudo -u zabbix -H /var/lib/zabbix/percona/scripts/get_mysql_stats_wrapper.sh running-slave

配置权限

chown -R zabbix.zabbix /tmp/localhost-mysql_cacti_stats.txt
chmod 755 /tmp/localhost-mysql_cacti_stats.txt

服务端测试获取数据

zabbix_get -s 192.168.181.136 -p10050 -k "MySQL.Threads-connected"

添加percona插件MySQL模板

配置-模板-导入模板,这里提供完整模板,地址,自行选择模板类型,导入模板之后,选择相应的主机添加模板即可

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!