Linux磁盤監控工具說明


1.1 iostat

系統systat包里的工具,以kB/s為單位統計,2表示以2秒為頻率統計一次:
iostat –x –k 2 10000

 

 

 

rrqm/s:每秒這個設備相關的讀取請求有多少被Merge了(當系統調用需要讀取數據的時候,VFS將請求發到各個FS,如果FS發現不同的讀取請求讀取的是相同Block的數據,FS會將這個請求合並Merge);wrqm/s:每秒這個設備相關的寫入請求有多少被Merge了。
rsec/s:每秒讀取的扇區數;
wsec/:每秒寫入的扇區數。
rKB/s:The number of read requests that were issued to the device per second;
wKB/s:The number of write requests that were issued to the device per second;
avgrq-sz 平均請求扇區的大小
avgqu-sz 是平均請求隊列的長度。毫無疑問,隊列長度越短越好。    
await:  每一個IO請求的處理的平均時間(單位是微秒毫秒)。這里可以理解為IO的響應時間,一般地系統IO響應時間應該低於5ms,如果大於10ms就比較大了。這個時間包括了隊列時間和服務時間,也就是說,一般情況下,await大於svctm,它們的差值越小,則說明隊列時間越短,反之差值越大,隊列時間越長,說明系統出了問題。
svctm    表示平均每次設備I/O操作的服務時間(以毫秒為單位)。如果svctm的值與await很接近,表示幾乎沒有I/O等待,磁盤性能很好,如果await的值遠高於svctm的值,則表示I/O隊列等待太長,系統上運行的應用程序將變慢。
%util: 在統計時間內所有處理IO時間,除以總共統計時間。例如,如果統計間隔1秒,該設備有0.8秒在處理IO,而0.2秒閑置,那么該設備的%util = 0.8/1 = 80%,所以該參數暗示了設備的繁忙程度。一般地,如果該參數是100%表示設備已經接近滿負荷運行了(當然如果是多磁盤,即使%util是100%,因為磁盤的並發能力,所以磁盤使用未必就到了瓶頸)。

 

1.2 iotop

需單獨安裝 yum install iotop
用法:iotop -d 1 -o

 

 

-o:只顯示有io操作的進程 
-b:批量顯示,無交互,主要用作記錄到文件。 
-n NUM:顯示NUM次,主要用於非交互式模式。 
-d SEC:間隔SEC秒顯示一次。 
-p PID:監控的進程pid。 
-u USER:監控的進程用戶。

常用快捷鍵:

1 左右箭頭:改變排序方式,默認是按IO排序。 
2 r:改變排序順序。 
3 o:只顯示有IO輸出的進程。 
4 p:進程/線程的顯示方式的切換。 
5 a:顯示累積使用量。 
6 q:退出。

 

1.3 sar 

sar –p –d 2 1000

 

 

說明:
tps: 每秒向磁盤設備請求數據的次數,包括讀、寫請求,為rtps與wtps的和。出於效率考慮,每一次IO下發后並不是立即處理請求,而是將請求合並(merge),這里tps指請求合並后的請求計數。
rtps: 每秒向磁盤設備的讀請求次數
wtps: 每秒向磁盤設備的寫請求次數
bread: 每秒從磁盤讀的bytes數量
bwrtn: 每秒向磁盤寫的bytes數量
或者用:sar –b 2 1000

或者用:sar –b 2 1000

 

 

1.4 dstat

dstat命令是一個用來替換vmstat、iostat、netstat、nfsstat和ifstat這些命令的工具,是一個全能系統信息統計工具。與sysstat相比,dstat擁有一個彩色的界面,在手動觀察性能狀況時,數據比較顯眼容易觀察;而且dstat支持即時刷新,譬如輸入dstat 3即每三秒收集一次,但最新的數據都會每秒刷新顯示。和sysstat相同的是,dstat也可以收集指定的性能資源,譬如dstat -c即顯示CPU的使用情況。

 


常用選項

-c:顯示CPU系統占用,用戶占用,空閑,等待,中斷,軟件中斷等信息。 
-C:當有多個CPU時候,此參數可按需分別顯示cpu狀態,例:-C 0,1 是顯示cpu0和cpu1的信息。 
-d:顯示磁盤讀寫數據大小。 
-D hda,total:include hda and total。 
-n:顯示網絡狀態。 
-N eth1,total:有多塊網卡時,指定要顯示的網卡。 
-l:顯示系統負載情況。 
-m:顯示內存使用情況。 
-g:顯示頁面使用情況。 
-p:顯示進程狀態。 
-s:顯示交換分區使用情況。 
-S:類似D/N。 
-r:I/O請求情況。 
-y:系統狀態。 
--ipc:顯示ipc消息隊列,信號等信息。 
--socket:用來顯示tcp udp端口狀態。 
-a:此為默認選項,等同於-cdngy。 
-v:等同於 -pmgdsc -D total。 
--output 文件:此選項也比較有用,可以把狀態信息以csv的格式重定向到指定的文件中,以便日后查看。例:dstat --output /root/dstat.csv & 此時讓程序默默的在后台運行並把結果輸出到/root/dstat.csv文件中。

 

 

二、監控工具

 

說明一下,其實這些工具都是全能選手,cpu,內存,磁盤空間,網絡流量都可以監控,不僅僅是用來監控磁盤IOPS的。

 

2.1 nmon

Linux下安裝:

[root@iZ28jwgor8mZ ~]# wget http://sourceforge.net/projects/nmon/files/download/nmon_x86_12a.zip/download
[root@iZ28jwgor8mZ ~]# unzip download
Archive:  download
  inflating: nmon_x86_rhel45         
  inflating: nmon_x86_rhel52         
  inflating: nmon_x86_sles9          
  inflating: nmon_x86_sles10         
  inflating: nmon_x86_ubuntu810      
  inflating: nmon_x86_fedora10       
  inflating: nmon_x86_opensuse10
[root@iZ28jwgor8mZ ~]# yum install ld-linux.so.2; yum install libncurses.so.5
[root@iZ28jwgor8mZ ~]# chmod +x nmon_x86_rhel52
[root@iZ28jwgor8mZ ~]# mv nmon_x86_rhel52 /usr/local/bin/nmon
#在后台自動以10秒為單位采集60次的樣,即10分鍾
[root@iZ28jwgor8mZ ~]# nmon -s10 -c60 -f -m ./
#檢查后台進程
[root@iZ28jwgor8mZ ~]# ps -ef|grep -i nmon
root     16872     1  0 13:32 pts/0    00:00:00 nmon -s10 -c60 -f -m ./

分析工具:nmon_analyser
參考:
Nmon說明:
http://www.ibm.com/developerworks/cn/aix/library/analyze_aix/index.html
nmon_analyser的說明:
http://www.ibm.com/developerworks/cn/aix/library/nmon_analyser/index.html
分析也比較較單,啟用excel的宏,打開一個生成的nmon文件即可:
 

 

2.2 zabbix

Zabbix現在用的比較多了,其配置IOPS監控的模板有現成的,直接導入即可,出圖效果如下:
 

 

2.3 cacti

這里不是介紹cacti,cacti作為一個老牌工具,部署文檔網上比較成熟了。其IOPS模板下載地址:
http://forums.cacti.net/about8777.html
安裝步驟參見:
1.  Unzip Cacti_Net-SNMP_DevIO_v3.1.zip (5 Files) 
2. Copy net-snmp_devio.xml to <path_cacti>/resource/snmp_queries/net-snmp_devio.xml 
3. Import all *_TMPL.xml files via Cacti "Import Templates" interface- These templates should include all their dependancies 
4. Import the net-snmp_devIO-Data_query.xml file LAST 
5. Add "ucd/net - Get Device I/O" Data Query to your SNMP Enabled host using the "Index Count Changed" Re-index Method. 
6. Create Graphs for your desired Disk and/or Memory devices. 
完成后:


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM