linux 自动发现新硬盘,zabbix自动发现硬盘并监控其IO

在使用zabbix监控Linux主机的时候,我们希望zabbix能够自动发现Linux主机上有多少块硬盘,而不是我们手动去添加。

实验目的:

让zabbix能够自动发现Linux服务器的磁盘,并能够监控磁盘IO且绘出图形

实验设备:

zabbix-server: 172.17.5.230

zabbix-client:  172.17.5.219

实验环境:

linux centos 6.6

zabbix-2.4.6

实验步骤

1. 在zabbix客户端的安装目录,如/usr/local/zabbix/bin/目录下添加名为diskiocheck.sh的脚本

2. 进入/usr/local/zabbix/bin/目录

3. 创建新文件touch diskiocheck.sh

4. 编写vim diskiocheck.sh#!/bin/sh

#disk_io monitor

disk=$2

function disk_count {

diskarray=(`cat /proc/diskstats | grep -E "\bsd[a-z]\b| \

\bxvd[a-z]\b|cciss/c[0-9]d[0-9]\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

printf '\n\t\t{'

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

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

printf ','

fi

done

printf "\n\t]\n"

printf "}\n"

}

function qps {

qps=$(iostat $disk -x 1 2 | grep -E "^sd|^cciss" | awk '{if(NR==2)print $NF}')

echo $qps

}

$1

为了zabbix能够读取执行结果,需要把它输出为json格式。如下所示执行脚本里函数disk_countsh /usr/local/zabbix/bin/disk_io_check.sh disk_count

输出如下:{

"data":[

{"{#DISK_NAME}":"sda"},

{"{#DISK_NAME}":"sdb"},

{"{#DISK_NAME}":"sdc"},

{"{#DISK_NAME}":"sdd"}

]

}

脚本执行验证通过,我们还需要修改zabbix-client端,修改zabbix_agentd.conf配置文件vim /usr/local/zabbix/etc/zabbix_agentd.conf

添加(没有注销的是新增的,把注销的也写出来主要是为了方便查看在什么位置添加)如下所示# Include=/usr/local/etc/zabbix_agentd.userparams.conf

# Include=/usr/local/etc/zabbix_agentd.conf.d/

# Include=/usr/local/etc/zabbix_agentd.conf.d/*.conf

Include=/usr/local/zabbix/etc/zabbix_agentd.conf.d/

然后在/usr/local/zabbix/etc/zabbix_agentd.conf.d/目录底下创建文件,名字可以随便起个,在这里文件名为:zabbixd.conf 编辑文件cd /usr/local/zabbix/etc/zabbix_agentd.conf.d/

vim zabbixd.conf

在文件中添加zabbix监控项目的key值,文件内容如下UserParameter=iostat.count[*],/usr/local/zabbix/bin/disk_io_check.sh disk_count $1

UserParameter=iostat.util[*],/usr/local/zabbix/bin/disk_io_check.sh qps $1

添加完毕后重启 zabbix_agentd/etc/init.d/zabbix_agentd

到此在服务器端配置完成,接下来需要打开zabbix服务器端web页面进行配置在浏览器中打开点configuration--->templates----->create tempalte如果有现有的模版也可以直接编辑现有的模版,这里我们直接编辑一个现有的模版如下图所示:

0bc4f51d4860dd926a2574bfad59676e.png

然后再点击右上角的create item prototype

eaaf0c259cac0dce28c50b01ec826128.png

这个key值写iostat.count,填写完这个后保存,然后点击item prototypes 如下图所示

d4cca60527701dc454f637d813444e24.png

然后再点击右上角的create item prototype

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值