我這裡主要是通過分析/proc/diskstats檔案,來對io的效能進行監控。
客戶端配置
1、編輯zabbix配置檔案,新新增乙個配置檔案userparameter_disk.conf
vi /etc/zabbix/zabbix_agentd.d/userparameter_disk.conf
unsafeuserparameters=1 userparameter=custom.vfs.dev.read.ops[*],cat /proc/diskstats | grep $1 | head -1 | awk '' userparameter=custom.vfs.dev.read.ms[*],cat /proc/diskstats | grep $1 | head -1 | awk '' userparameter=custom.vfs.dev.write.ops[*],cat /proc/diskstats | grep $1 | head -1 | awk '' userparameter=custom.vfs.dev.write.ms[*],cat /proc/diskstats | grep $1 | head -1 | awk '' userparameter=custom.vfs.dev.io.active[*],cat /proc/diskstats | grep $1 | head -1 | awk '' userparameter=custom.vfs.dev.io.ms[*],cat /proc/diskstats | grep $1 | head -1 | awk '' userparameter=custom.vfs.dev.read.sectors[*],cat /proc/diskstats | grep $1 | head -1 | awk '' userparameter=custom.vfs.dev.write.sectors[*],cat /proc/diskstats | grep $1 | head -1 | awk ''
引數解釋:
userparameter=custom.vfs.dev.read.ops[*],cat /proc/diskstats | grep $1 | head -1 | awk ''磁碟完成讀的次數
userparameter=custom.vfs.dev.read.ms[*],cat /proc/diskstats | grep $1 | head -1 | awk ''磁碟讀花費的毫秒數
userparameter=custom.vfs.dev.write.ops[*],cat /proc/diskstats | grep $1 | head -1 | awk ''磁碟完成寫的次數
userparameter=custom.vfs.dev.write.ms[*],cat /proc/diskstats | grep $1 | head -1 | awk ''磁碟寫花費的毫秒數
userparameter=custom.vfs.dev.io.active[*],cat /proc/diskstats | grep $1 | head -1 | awk ''磁碟i/o當前進度
userparameter=custom.vfs.dev.io.ms[*],cat /proc/diskstats | grep $1 | head -1 | awk ''磁碟i/o花費的毫秒數
userparameter=custom.vfs.dev.read.sectors[*],cat /proc/diskstats | grep $1 | head -1 | awk ''磁碟讀扇區次數(乙個扇區等於512b)
userparameter=custom.vfs.dev.write.sectors[*],cat /proc/diskstats | grep $1 | head -1 | awk ''磁碟寫扇區次數(乙個扇區等於512b)
2、確認zabbix-agentd.conf的include路徑(yum裝的agent預設開啟此項)
cat /etc/zabbix/zabbix_agentd.conf | grep include=
include=/etc/zabbix/zabbix_agentd.d/*.conf
3、重啟zabbix-agent
/etc/init.d/zabbix-agent restart
服務端配置
1、服務端測試,如果上述配置正確的話會返回乙個值
zabbix_get -s 目標伺服器ip -p 10050 -k custom.vfs.dev.write.ops[sda]
2、zabbix監控項配置
我這裡配置了磁碟讀扇區次數和磁碟寫扇區次數,以及cpu等待磁碟io操作的時間,也就是top命令中的wa引數
名稱:cpu $2 time
鍵值:system.cpu.util[,iowait]
資訊型別:浮點數
單位:%
名稱:disk:$1:read:bytes/sec磁碟讀扇區次數
鍵值:custom.vfs.dev.read.sectors[sda]
單位:b/sec
使用自定義倍數:4096
儲存值:差量(每秒速率)
名稱:disk:$1:write:bytes/sec磁碟寫扇區次數
鍵值:custom.vfs.dev.write.sectors[sda]
單位:b/sec
使用自定義倍數:4096
儲存值:差量(每秒速率)
ps:以下幾項根據情況自行設定
名稱:disk:$1:read:ms磁碟讀花費的毫秒數
鍵值:custom.vfs.dev.read.ms[sda]
單位:ms
儲存值:差量(每秒速率)
名稱:disk:$1:write:ms磁碟寫花費的毫秒數
鍵值:custom.vfs.dev.write.ms[sda]
單位:ms
儲存值:差量(每秒速率)
名稱:disk:$1:read:ops per second磁碟完成讀的次數
鍵值:custom.vfs.dev.read.ops[sda]
單位:ops/second
儲存值:差量(每秒速率)
名稱:disk:$1:write:ops per second磁碟完成寫的次數
鍵值:custom.vfs.dev.write.ops[sda]
單位:ops/second
儲存值:差量(每秒速率)
3、設定圖形
ps:關於自定義倍數的說明,網上文章寫的都是512,如果自定義倍數用了512,那麼這個值應該和iotop差不多。
zabbix3 2監控linux磁碟IO
我這裡主要是通過分析 proc diskstats檔案,來對io的效能進行監控。客戶端配置 1 編輯zabbix配置檔案,新新增乙個配置檔案userparameter disk.conf vi etc zabbix zabbix agentd.d userparameter disk.conf un...
分布式監控系統Zabbix3 2監控資料庫的連線數
在 分布式監控系統zabbix3.2跳坑指南 和 分布式監控系統zabbix3.2給異常新增郵件報警 已經介紹了如何安裝以及報警。此篇通過介紹監控資料庫的3306埠連線數來了解如何監控其它埠和配置自定義監控項的過程。在要監控的客戶端上新建指令碼 usr local zabbix alertscrip...
分布式監控系統Zabbix3 2監控資料庫的連線數
在 分布式監控系統zabbix3.2跳坑指南 和 分布式監控系統zabbix3.2給異常新增郵件報警 已經介紹了如何安裝以及報警。此篇通過介紹監控資料庫的3306埠連線數來了解如何監控其它埠和配置自定義監控項的過程。在要監控的客戶端上新建指令碼 usr local zabbix alertscrip...