Zabbix动态监控磁盘I O_zabbix监控磁盘io

需要监控每台服务器的磁盘I/O,由于每台服务器的磁盘名称可能不一样,所以需要用到Zabbix的LLD功能来发现磁盘并监控I/O。

一、客户端(被监控端)

1.发现磁盘的脚本(disk_discovery.sh)

#!/bin/bash

#written by lenwood

#mail:

diskarray=(`cat /proc/diskstats |grep -E "\b[sv]d[abcdefg]\b|\bxvd[abcdefg]\b"|grep -i "\b$1\b"|awk '{print $3}'|sort|uniq   2>/dev/null`)

length=${#diskarray[@]}

printf "{\n"

printf  '\t'"\"data\":["

for ((i=0;i<$length;i++))

do

printf '\n\t\t{'

printf "\"{#DISK_NAME}\":\"${diskarray[$i]}\"}"

if [ $i -lt $[$length-1] ];then

printf ','

fi

done

printf  "\n\t]\n"

 

printf "}\n"

我把这个脚本放到zabbix-agent的/etc/zabbix/os目录下

执行结果如下:

root@ubuntu:~# ./disk_discovery.sh
{
	"data":[
		{"{#DISK_NAME}":"sda"}
	]
}


说明:执行结果看到此台测试机上面只有一块磁盘sda

2.获取磁盘I/O信息

a.使用iostat收集磁盘I/O信息(这条指令是每隔一秒将磁盘信息内容写入到/tmp/iostat_output,并且后台运行)

 1.apt-get install sysstat(有些机器上面没有安装sysstat,如果有了可以忽略此步骤)

  安装完之后可以使用 iostat 展示信息如下:

root@ubuntu:~# iostat
Linux 4.4.0-21-generic (ubuntu) 	10/28/2019 	_x86_64_	(1 CPU)

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           0.74    0.00    0.55    0.74    0.00   97.97

Device:            tps    kB_read/s    kB_wrtn/s    kB_read    kB_wrtn
sda               2.68         8.19        52.80    1383496    8915276

root@ubuntu:~#

Zabbix官方动态监控磁盘I/O

安装
在zabbix-agent.conf中增加参数

#### enable Include in config
# /etc/zabbix/zabbix\_agentd.conf
echo "Include=/etc/zabbix-agent.d/\*.conf" >> /etc/zabbix/zabbix_agentd.conf

#### copy config 
mkdir -p /etc/zabbix-agent.d/ && cd /etc/zabbix-agent.d/
curl -O 'https://raw.githubusercontent.com/dusharu/ZBX\_Disk\_Stat/master/config\_zabbix-agent/Disk\_Stat.conf'

#### restart zabbix-agent
# RHEL/CentOS
systemctl restart zabbix-agentd
# Debian/Ubuntu
systemctl restart zabbix-agent
# Gentoo
/etc/init.d/zabbix-agentd restart

Zabbix官方模板

wgethttps://github.com/dusharu/ZBX_Disk_Stat/blob/master/Template_ZBX/ZBX_Disk_Stat.xml

调试命令

测试发现

zabbix_get -s <IP|Server_Name> -k custom.blkdev.discovery |jq .

获得统计量

zabbix_get -s <IP|Server_Name> -k custom.blkdev.all_stat[vg00-lv_root] | jq .

监控磁盘I/O官方脚本
https://github.com/dusharu/ZBX_Disk_Stat/blob/master/Develop/scripts/blkdev_discovery_awk.sh
https://github.com/dusharu/ZBX_Disk_Stat/blob/master/Develop/scripts/blkdev_get_param_awk.sh
https://github.com/dusharu/ZBX_Disk_Stat/blob/master/Develop/scripts/blkdev_show_stat.sh
官方监控模板
https://github.com/dusharu/ZBX_Disk_Stat/blob/master/Template_ZBX/ZBX_Disk_Stat.xml

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值