Zabbix监控磁盘IO

2016年6月20日

默认模板是没有磁盘 IO的监控的,这里介绍如何监控 当前磁盘 IO 。我完成的不是自动监控,但是写的方法可用于自动监控,自动监控的我没有测试成功 ,这里介绍算是指定 磁盘 监控。

第一步 : 添加监控

首先查看自己监控的机器的磁盘信息

df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/xvda        24G  2.0G   21G   9% /
tmpfs           994M  108K  994M   1% /dev/shm

添加 监控配置

vim /etc/zabbix/zabbix_agentd.d/disk_io.conf
UserParameter=custom.vfs.dev.read.ops[*],cat /proc/diskstats | grep $1 | head -1 | awk '{print $$4}'
UserParameter=custom.vfs.dev.read.ms[*],cat /proc/diskstats | grep $1 | head -1 | awk '{print $$7}'
UserParameter=custom.vfs.dev.write.ops[*],cat /proc/diskstats | grep $1 | head -1 | awk '{print $$8}'
UserParameter=custom.vfs.dev.write.ms[*],cat /proc/diskstats | grep $1 | head -1 | awk '{print $$11}'
UserParameter=custom.vfs.dev.io.active[*],cat /proc/diskstats | grep $1 | head -1 | awk '{print $$12}'
UserParameter=custom.vfs.dev.io.ms[*],cat /proc/diskstats | grep $1 | head -1 | awk '{print $$13}'
UserParameter=custom.vfs.dev.read.sectors[*],cat /proc/diskstats | grep $1 | head -1 | awk '{print $$6}'
UserParameter=custom.vfs.dev.write.sectors[*],cat /proc/diskstats | grep $1 | head -1 | awk '{print $$10}'

这么写主要是为了写自动监控的 可以模版没有配置成功

如果想查看 命令是否有值   将 $1 换成 “磁盘名称”  $$ 改成 $  示例 :

cat /proc/diskstats | grep xvda | head -1 | awk '{print $4}'
cat /proc/diskstats | grep xvda | head -1 | awk '{print $4}'
38021
重启 zabbix-agent
service  zabbix-agent restart

测试 数据

[root@monitoring ]#  zabbix_get -s 127.0.0.1  -k custom.vfs.dev.write.ops[xvda]
3590721

当可以得到结果时说明配置正确

第二 、 配置模板

模板呢已经改好(参考网络上的自行修改的)  导入即可

Template_Disk_IO_Stats_xvda

三 、 添加模板 关联被监控的主机

具体方法应该不用说吧

四, 介绍下如何更改 ”磁盘名称“

下面是一个改好的模板

Template_Disk_IO_Stats_sda

介绍下怎么修改 其实很简单 文字就可以说明了
首先克隆原模板  “全克隆”  更改下模板的名称 保存。 然后更改分类名 项目中的磁盘名称  还有图形的名称

 

没有评论

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注