1. 程式人生 > >Zabbix系列之七——新增磁碟IO監測

Zabbix系列之七——新增磁碟IO監測

zabbix給我們提供了一些較常用的監控模板,但現在我們如果想要監控我們磁碟的IO,這時候zabbix並沒有給我們提供這麼一個模板,所以我們需要自己來建立一個模板來完成磁碟IO的監控。1、

[[email protected] ~]# iostat
Linux 2.6.32-431.el6.x86_64 (pcidata-svr1)     2018年10月31日     _x86_64_    (4 CPU)

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           0.93    0.00    0.74    0.65    0.00   97.68

Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
scd0              0.00         0.00         0.00        360          0
sda              48.42        11.98      1768.03  128702020 18988493968

在linux系統中可以使用iostat命令檢視磁碟io效能,單獨執行iostat,顯示的結果為從系統開機到當前執行時刻的統計資訊。以上輸出中,除最上面指示系統版本、主機名和日期的一行外,另有兩部分:avg-cpu: 總體cpu使用情況統計資訊,對於多核cpu,這裡為所有cpu的平均值;Device: 各磁碟裝置的IO統計資訊.2、

[[email protected] ~]# iostat -dxkt
Linux 2.6.32-431.el6.x86_64 (pcidata-svr1)     2018年10月31日     _x86_64_    (4 CPU)

2018年10月31日 10時05分17秒
Device:         rrqm/s   wrqm/s     r/s     w/s    rkB/s    wkB/s avgrq-sz avgqu-sz   await  svctm  %util
scd0              0.00     0.00    0.00    0.00     0.00     0.00     8.00     0.00    1.07   1.07   0.00
sda               0.01   172.80    0.21   48.21     5.99   884.02    36.77     0.15    3.18   1.38   6.66

rrqm/s: 每秒對該裝置的讀請求被合併次數,檔案系統會對讀取同塊(block)的請求進行合併wrqm/s: 每秒對該裝置的寫請求被合併次數r/s: 每秒完成的讀次數w/s: 每秒完成的寫次數rkB/s: 每秒讀資料量(kB為單位)wkB/s: 每秒寫資料量(kB為單位)avgrq-sz:平均每次IO操作的資料量(扇區數為單位)avgqu-sz: 平均等待處理的IO請求佇列長度await: 平均每次IO請求等待時間(包括等待時間和處理時間,毫秒為單位)svctm: 平均每次IO請求的處理時間(毫秒為單位)%util: 採用週期內用於IO操作的時間比率,即IO佇列非空的時間比率3、接下來我們在agentd中新增自定義監控項在/etc/zabbix/zabbix_agentd.d下新增userparameter, 檔案內容如下:  

UserParameter=custom.vfs.dev.read.[*],cat /home/zabbix/disk.txt |grep $1 |tail -1 |awk '{print $$3}'
UserParameter=custom.vfs.dev.write.[*],cat /home/zabbix/disk.txt |grep $1 |tail -1 |awk '{print $$4}'

4、然後在後臺寫個指令碼生成的記錄儲存到disk.txt中。[[email protected] ~]$ cat IO_Status.sh #!/bin/bash iostat 20 >> disk.txt 5、配置zabbix模板  key值新增相應碟符:custom.vfs.dev.read.[sde]  6、最後呈現的圖形結果