引言
Zabbix自帶的模板,幫助我們完成了一些比較常用的監控。但如果想要監控磁盤的IO,zabbix並沒有給我們提供這么一個模板,所以我們需要自己來創建一個模板來完成磁盤IO的監控。
操作步驟
1、添加userparameter_io.conf配置文件
在/etc/zabbix/zabbix_agentd.d下添加userparameter_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}' #花費在IO操作上的毫秒數 UserParameter=custom.vfs.dev.io.ms[*],cat /proc/diskstats | grep $1 | head -1 | awk '{print $$13}' #讀扇區的次數(一個扇區的等於512B) UserParameter=custom.vfs.dev.read.sectors[*],cat /proc/diskstats | grep $1 | head -1 | awk '{print $$6}' #寫扇區的次數(一個扇區的等於512B) UserParameter=custom.vfs.dev.write.sectors[*],cat /proc/diskstats | grep $1 | head -1 | awk '{print $$10}'
注:需確保 /etc/zabbix/zabbix_agentd.conf 中 Include=/etc/zabbix/zabbix_agentd.d/*.conf 沒有被注釋掉
2、重啟zabbix-agent服務
systemctl restart zabbix-agent
3、測試zabbix-server獲取數據
zabbix_get -s 目標服務器IP -p 10050 -k custom.vfs.dev.write.ops[sda]
4、配置zabbix-server模板
進入web界面—>配置—>模板—創建模板

5、配置監控項
模板->找到剛創建的模板->點擊監控項->創建監控項

配置第一個監控項
Name: Disk:$1:Read:Bytes/sec Key: custom.vfs.dev.read.sectors[sda] Units: B/sec Store value: speed per second //會進行差值計算
Use custom multiplier 512 //會對值乘以512,因為這里是一個扇區,轉換為字節為512B
以此類推......(注意自定義倍數和每秒更改的配置)
配置第二個監控項
Name:Disk:$1:Write:Bytes/sec Key: custom.vfs.dev.write.sectors[sda] Units: B/sec Store value: speed per second Use custom multiplier 512
配置第三個監控項
Name:Disk:$1:Read:ops per second Key: custom.vfs.dev.read.ops[sda] Units: ops/second Store value: speed per second
配置第四個監控項
Name: Disk:$1:Write:ops per second Key: custom.vfs.dev.write.ops[sda] Units: ops/second Store value: speed per second
配置第五個監控項
Name: Disk:$1:Read:ms Key: custom.vfs.dev.read.ms[sda] Units: ms Store value: speed per second
配置第六個監控項
Name:Disk:$1:Write:ms Key: custom.vfs.dev.write.ms[sda] Units: ms Store value: speed per second
6、添加圖形
返回到模板的列表頁面,找到我們創建的模板Template io 然后點擊后面的圖形—》創建圖形
點擊添加—》選擇我們配置的監控項


7、查看圖形

參考資料:https://blog.csdn.net/hao134838/article/details/57406028


