Chinaunix首页 | 论坛 | 博客
  • 博客访问: 33015
  • 博文数量: 20
  • 博客积分: 185
  • 博客等级: 入伍新兵
  • 技术积分: 195
  • 用 户 组: 普通用户
  • 注册时间: 2010-03-04 09:37
文章分类

全部博文(20)

文章存档

2015年(5)

2014年(7)

2012年(3)

2011年(5)

我的朋友

分类: 系统运维

2015-06-10 17:01:10

默认的 Zabbix 监控模板中,对于磁盘主要是剩余空间之类的监控,对于 IO 方面却没有,好在 Zabbix 提供了丰富的定制功能,可自行添加想要监控的任意内容。具体步骤如下:

1、在被监控服务器的配置文件(/etc/zabbix/zabbix_agentd.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}'

可以先测试看其是否生效,使用如下命令,看是否正常返回数字。注意在命令行运行时,grep 那里的 $1 需根据自己磁盘设定修改为 sda 或 sdb,awk 那里需去除一个 $ 符号。
cat /proc/diskstats | grep sda | head -1 | awk '{print $4}'

/etc/init.d/zabbix_agentd_ctl restart

2、被监控主机重启 agent

3、在 zabbix server 上测试能否接收数据,将其中的 AgentServerIP 修改为被监控服务器的IP,注意这里是在运行 zabbix 服务端的机器上执行此操作。如果返回的是一串数字则正确,如果返回 ZBX_NOTSUPPORTED ,请检查确认被监控主机的 agent 是否有重启,网络端口是否开放。

zabbix_get -s AgentServerIP -p 10050 -k custom.vfs.dev.write.ops[sda]
 
4、在 zabbix web 配置界面的模板中,导入这里。并将此模板关联到要监控的服务器主机上,很快就可以在 Latest data 中看到获取的数据并可画出趋势图了

阅读(1561) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~