Welcome 微信登录

首页 / 数据库 / MySQL / Zabbix 的 MySQL 监控客户端配置

Zabbix监控的方式有四个大方向:1,Zabbix Agent类型
2,SNMP类型
3,JMX类型
4,IMPI类型 用的多的基本上就两种,Agent类型 和 SNMP类型。Agent类型的item是使用部署在服务端的Agent来获取数据,可以分为主动和被动模式。SNMP是监控服务器以外设备的非常好的方式,比如可以监控网络设备,打印机等,只要是有SNMP功能的,zabbix都可以监控。今天我们要说的MySQL监控是基于Agent类型的监控。我们来看看服务端的默认模板:item 有14个,根据这14个item生成有2个图形类型。第一个item的信息如图,监控类型为zabbix agent,key为mysql.version ,输出类型为字符串,更新周期默认为 3600秒。值的保存日期为7天。。。。被监控端安装好zabbix agent后,添加好MySQL监控模板,然后在Zabbix_server端查看日志的后你会发现提示监控可以值在被监控端不受支持。所以我们还需要修改被监控端的 zabbix_agentd.conf 手动添加对应key所执行的数据采集语句(多用SHELL语句编写)。客户端添加自定义监控项的方法为:在配置文件后面添加语句为 UserParameter=app.key,/some/shell/output比如:监控mysql.version的话 语句为mysql.version,mysqladmin -u -p version | grep "Server version" | awk "{printf "MySQL Server Version: "$3}"输出的值为 MySQL Server Version: 5.1.73所以添加到配置文件最后就添加好一条监控项了。根据上图所示,mysql的值有许多,这些值一般都在 mysqladmin status | mysqladmin extended-status 里面。所以只需要写一个shell脚本就可以吧剩下的全部监控起来。我这里提供一个shell脚本示例#!/bin/bashcase $1 inUptime)        mysqladmin -u -p status | awk "{print$2}"        ;;Com_update)        mysqladmin -u -p extended-status | grep "Com_update "  | awk "BEGIN{FS="|"}{print $3}"        ;;Slow_queries)        mysqladmin -u -p extended-status | grep "Slow_queries"  | awk "BEGIN{FS="|"}{print $3}"        ;;Com_select)        mysqladmin -u -p extended-status | grep "Com_select"  | awk "BEGIN{FS="|"}{print $3}"        ;;Com_rollback)        mysqladmin -u -p extended-status | grep "Com_rollback "  | awk "BEGIN{FS="|"}{print $3}"        ;;Questions)        mysqladmin -u -p extended-status | grep "Questions"  | awk "BEGIN{FS="|"}{print $3}"        ;;Com_insert)        mysqladmin -u -p extended-status | grep "Com_insert "  | awk "BEGIN{FS="|"}{print $3}"        ;;Com_delete)        mysqladmin -u -p extended-status | grep "Com_delete "  | awk "BEGIN{FS="|"}{print $3}"        ;;Com_commit)        mysqladmin -u -p extended-status | grep "Com_commit"  | awk "BEGIN{FS="|"}{print $3}"        ;;Bytes_sent)        mysqladmin -u -p extended-status | grep "Bytes_sent"  | awk "BEGIN{FS="|"}{print $3}"        ;;Bytes_received)        mysqladmin -u -p extended-status | grep "Bytes_received"  | awk "BEGIN{FS="|"}{print $3}"        ;;Com_begin)        mysqladmin -u -p extended-status | grep "Com_begin"  | awk "BEGIN{FS="|"}{print $3}"        ;;*)        echo "Please choise one optinon ( Uptime|Com_update|Slow_queries|Com_select|Com_rollback|Questions|Com_insert|Com_delete|Com_commit|Bytes_sent|Bytes_received|Com_begin )"        ;;esaczabbix_agentd.conf里面的监控项为↓UserParameter=mysql.version,mysqladmin -u -p version | grep "Server version" | awk "{printf "MySQL Server Version: "$3}"UserParameter=mysql.status[*],bash /usr/local/zabbix/etc/check_mysql_status_per.sh $1UserParameter=mysql.ping,mysqladmin -u -p status > /dev/null 2>&1  && echo 1 || echo 0添加好后我们可以到zabbix上点开 Monitoring→Latest data 选择主机已经陆续获取到响应的值了。稍等就可以完整监控了。相关文件下载:------------------------------------------分割线------------------------------------------免费下载地址在 http://linux.linuxidc.com/用户名与密码都是www.linuxidc.com具体下载目录在 /2015年资料/8月/17日/Zabbix 的 MySQL 监控客户端配置/下载方法见 http://www.linuxidc.com/Linux/2013-07/87684.htm------------------------------------------分割线------------------------------------------一些Zabbix相关教程集合:Ubuntu 14.04下Zabbix2.4.5 源码编译安装  http://www.linuxidc.com/Linux/2015-05/117657.htm安装部署分布式监控系统Zabbix 2.06 http://www.linuxidc.com/Linux/2013-07/86942.htm《安装部署分布式监控系统Zabbix 2.06》 http://www.linuxidc.com/Linux/2013-07/86942.htmCentOS 6.3下Zabbix安装部署 http://www.linuxidc.com/Linux/2013-05/83786.htmZabbix分布式监控系统实践 http://www.linuxidc.com/Linux/2013-06/85758.htmCentOS 6.3下Zabbix监控apache server-status http://www.linuxidc.com/Linux/2013-05/84740.htmCentOS 6.3下Zabbix监控MySQL数据库参数 http://www.linuxidc.com/Linux/2013-05/84800.htm64位CentOS 6.2下安装Zabbix 2.0.6   http://www.linuxidc.com/Linux/2014-11/109541.htmZABBIX 的详细介绍:请点这里
ZABBIX 的下载地址:请点这里本文永久更新链接地址