天天看點

分布式監控系統Zabbix4.2添加自動發現磁盤IO(實操)

前言:

zabbix并沒有給我們提供這麼一個模闆來完成在Linux中磁盤IO的監控,是以我們需要自己來建立一個,在此還是在Linux OS中添加。

  由于一台伺服器中磁盤衆多,如果隻一兩台可以手動添加,但服務叢集達到幾十那就非常麻煩,是以需要利用 自動發現 這個功能,自動發現後自動添加對伺服器磁盤的監控,而且添加磁盤後也會自動添加到監控,實作自動化運維的效果,是以在這裡也示範一次自動發現的配置。

經測試無法自動發現多個磁盤,隻能手動把{#DISK_NAME} 改成要監控的磁盤 (例如sda、sdb,dm-*、bcache0等 虛看自己伺服器配置資訊)
           
分布式監控系統Zabbix4.2添加自動發現磁盤IO(實操)
如圖,我需要監控以上磁盤的三個重要名額           

部署詳細步驟:

一、在被監控裝置部署如下:

1、在被監控裝置上部署自動發現的腳本disk.sh,内容如下
#!/bin/bash
diskarray=(`iostat -d -x 1 1|awk '{print $1}'|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"
在裝置上測試腳本執行後的效果:
{
        "data":[
                {"{#DISK_NAME}":"Device:"},
                {"{#DISK_NAME}":"dm-0"},
                {"{#DISK_NAME}":"dm-1"},
                {"{#DISK_NAME}":"dm-2"},
                {"{#DISK_NAME}":"dm-3"},
                {"{#DISK_NAME}":"Linux"},
                {"{#DISK_NAME}":"sda"},
                {"{#DISK_NAME}":"sdb"},
                {"{#DISK_NAME}":"sdc"}
        ]
}

我這裡簡單粗暴過濾出來了執行iostat -d -x 1 1指令後輸出的第一行,可能部分不是磁盤名稱, 不過沒有關系,在後續zabbix頁面會進行過濾的           
2、腳本權重限
chmod 755 /opt/aspire/product/zabbix/bin/disk.sh
chown zabbix:zabbix /opt/aspire/product/zabbix/bin/disk.sh           
3、在zabbix_agentd.conf中加入自定義監控項
UserParameter=disk.vfs.dev.read.s[*],iostat -d -x 1 1 | egrep $1 | head -1 | awk '{print $$4}'
UserParameter=disk.vfs.dev.write.s[*], iostat -d -x 1 1 | egrep $1 | head -1 | awk '{print $$5}'
UserParameter=disk.vfs.dev.untl.s[*],iostat -d -x 1 1 | egrep $1 | head -1 | awk '{print $$14}'
UserParameter=disk.discovery,/opt/aspire/product/zabbix/bin/disk.sh           
4、重新開機zabbix_agent程序           

二、在zabbix頁面操作如下:

1、在zabbix頁面過濾你需要監控的磁盤名稱,伺服器中部分磁盤監控意義不大 ,全量監控影響伺服器性能,我這裡是過濾出名稱以sd、dm、bc開頭的磁盤。
           
分布式監控系統Zabbix4.2添加自動發現磁盤IO(實操)
2、打開Linux模闆,添加自動發現規則:           
分布式監控系統Zabbix4.2添加自動發現磁盤IO(實操)
這裡定義的鍵值需要與之前寫入配置檔案自動探索腳本key值一緻。           
關聯配置正規表達式           
3、配置監控項原型           
key值與上面寫進配置檔案的保持一緻           
三、檢驗結果:           

繼續閱讀