西数超哥博客
运维经验教程分享

[原创]通过zabbix 使用改良自带模板Template App MySQL监控服务器上的mysql


zabbix默认自带mysql监控模板,但比较简单,这里就简单改良自带模板设置了几个常用自定义key传参数,进行一个当前mysql配置、运行状态以及mysql宕机、慢查询触发器报警的监控。
说明:当前只是一些简单的监控,达不到DBA的要求,不过原理是一样的,其他监控参数 可以自行添加监控项执行获取需要的参数。
1,下载监控模板并导入,这里文章更新采用的是zabbix 3.4。需要监控的主机添加这个模板。我自己改良的mysql监控模板下载地址:
http://download.21yunwei.com/zabbix/mysql/zab_mysql.tar.gz

2,要监控的服务器上创建可以登录mysql的用户

grant usage on *.* to 'zabbix'@'localhost' identified by 'zabbix';
flush privileges;

3,编写mysql采集脚本,这里我自己简单写了一个:

#!/bin/bash
#use zabbix to monitor mysql for single
#author: 21yunwei

mysql=/usr/bin/mysql
conf=$1
stat=$2
flag=$#
user=zabbix
password=zabbix

if [ $flag == 1 ] ;then
	#server  mysql_configure   info
	cmd_conf=`${mysql}  -u${user} -p${password} -e 'show variables '|grep "b${conf}b"|awk '{print $2}'` 
	echo $cmd_conf
elif [ $flag == 2 ];then
	#server  mysql_status   info
	cmd_status=`${mysql}  -u${user} -p${password} -e 'show global status'|grep -i -v 'Variable_name'|grep "b${stat}b"|awk '{print $2}'` 
        echo $cmd_status
fi

4,修改agent端配置文件,启用自定义参数。注意修改完以后需要重启agent才能生效

#mysql monitor
UserParameter=mysql.ping,/usr/bin/mysqladmin ping -uzabbix -pzabbix | grep -c alive
UserParameter=mysql.config[*], /home/yunwei/mysql_zbx.sh $1
UserParameter=mysql.status[*], /home/yunwei/mysql_zbx.sh $1 $2


看下效果:

制作了两个简单图形:

再次说明:当前只是一些简单的监控,监控的参数达不到DBA的要求,不过原理是一样的,其他监控参数 可以自行添加监控项执行获取需要的参数,比如show global status里边的innodb参数、mysql错误日志监控等等。

转载请注明:西数超哥博客www.ysidc.top» [原创]通过zabbix 使用改良自带模板Template App MySQL监控服务器上的mysql

https://www.ysidc.top 西数超哥博客,数据库,西数超哥,虚拟主机,域名注册,域名,云服务器,云主机,云建站,ysidc.top

赞(0)
声明:本站发布的内容(图片、视频和文字)以原创、转载和分享网络内容为主,若涉及侵权请及时告知,将会在第一时间删除。本站原创内容未经允许不得转载:西数超哥博客 » [原创]通过zabbix 使用改良自带模板Template App MySQL监控服务器上的mysql