linux使用nmon監控、分析系統性能
一、概述
nmon是一種在AIX與各種Linux作業系統上廣泛使用的監控與分析工具,相對於其它一些系統資源監控工具來說,nmon所記錄的資訊是比較全面的,它能在系統執行過程中實時地捕捉系統資源的使用情況,並且能輸出結果到檔案中,然後通過nmon_analyzer工具產生資料檔案與圖形化結果。
nmon所記錄的資料包含以下一些方面(也是我們在尋找問題過程中所關注的資源點):
·cpu佔用率
·記憶體使用情況
·磁碟I/O速度、傳輸和讀寫比率
·檔案系統的使用率
·網路I/O速度、傳輸和讀寫比率、錯誤統計率與傳輸包的大小
·消耗資源最多的程序
·計算機詳細資訊和資源
·頁面空間和頁面I/O速度
·使用者自定義的磁碟組
·網路檔案系統
另外在AIX作業系統上,nmon還能監控到其他的一些資訊,如非同步I/O等。
二、下載安裝nmon
1、下載安裝包:http://nmon.sourceforge.net/pmwiki.php?n=Site.Download
選擇下載相應的版本,我下載的是 nmon16d_x86.tar.gz。解壓后里邊有很多版本的nmon,我用的是nmon_linux_x86_64,親測可用。
2、直接在window中將解壓好的nmon_linux_x86_64通過sftp上傳到要監控的linux系統中對應目錄下
3、執行授權命令:
# chmod +x nmon_x86_64_linux
4、執行./nmon_x86_64_linux,便可進入nmon的監控介面,如下圖:
三、實時監控
在完成配置後,只需要“#./nmon”命令即可執行程式,通過一些快捷鍵調取關心的系統資源指標進行顯示,如按鍵“C”可以檢視CPU相 關資訊;按鍵“D”可以檢視磁碟資訊;按鍵“T”可以檢視系統的程序資訊;“M”對應記憶體、“N”對應網路等等,完整的快捷鍵對應內容可以通過幫助(按鍵 “H”)檢視,可以顯示Linux系統CPU、記憶體、程序資訊,包括了CPU的使用者、系統、等待和空閒狀態值,可用記憶體、快取大小以及程序的CPU消耗等詳細指標。該種方式顯示資訊實時性強,能夠及時掌握系統承受壓力下的執行情況,每顆CPU利用率是多少、記憶體使用多少、網路流量多少、磁碟讀寫……這些資料均是實時重新整理,一目瞭然。
鍵入“c”檢視系統CPU使用情況
鍵入“m”檢視系統記憶體使用情況
鍵入“d”檢視系統磁碟I/O情況
鍵入“h”檢視幫助資訊
四、nmon資料採集
4.1資料採集
為了實時監控系統在一段時間內的使用情況並將結果記錄下來,我們可以通過執行以下命令實現:
#./nmon_x86_64_linux -f-t -s 30 -c 180 -m /home/
n -f:按標準格式輸出檔案:<hostname>_YYYYMMDD_HHMM.nmon;
n -t:輸出中包括佔用率較高的程序;
n -s 30:每30秒進行一次資料採集
n -c 180:一共採集180次
-m 生成的資料檔案的存放目錄。
輸入命令回車後,將在/home目錄生成一個hostname_timeSeries.nmon的檔案,如果hosname為test1,生產的檔案為:LS-HDP-MH-VM-173-188_161108_1412.nmon。
如果想停止該監控,需要通過“#ps –ef|grep nmon”查詢程序號,然後殺掉該程序以停止監控。
通過sort命令可以將nmon結果檔案轉換為csv檔案:
# sort -A LS-HDP-MH-VM-173-188_161108_1412.nmon> LS-HDP-MH-VM-173-188_161108_1412.csv
執行完sort命令後即可在當前目錄生產LS-HDP-MH-VM-173-188_161108_1412.csv檔案。
4.2生成圖形化結果
為了分析nmon監控獲得的結果,IBM還提供了相應的圖形化分析工具nmon_analyser,通過nmon analyser.xls工具可以把監控的結果檔案轉換成excel檔案,方便分析系統的各項資源佔用情況。
下載nmon_analyser(生成效能報告的免費工具):
https://www.ibm.com/developerworks/community/wikis/home?lang=en#!/wiki/Power%20Systems/page/nmon_analyser
nmon analyser.xls工具的使用方法如下:
(1)開啟nmonanalyser.xls工具;
(2)調整excel巨集安全性:工具-巨集-安全性
(修改安全級別與可靠發行商)
(選擇)安全級別:低
(勾上)信任所有安裝的載入項和模板
(勾上)信任對於“Visual Baisc專案”的訪問
(3)修改完後,確定-關閉nmon analyser.xls,重新開啟;
(4)點選Analyse nmondata按鈕,載入之前下載的LS-HDP-MH-VM-173-188_161108_1412.nmon檔案。
以下是分析結果的截圖:
五、結束nmon執行
nmon執行本身是會消耗系統資源,如需關閉nmon,直接kill掉
# ps -ef | grep nmon (得到pid)
# kill -9pid (安全kill)
六、定時任務
除配合效能測試的短期監控,我們也可以實現對系統的定期監控,作為運營維護階段的參考。定期監控實現如下:
1) 執行命令:#crontab -e
2) 在最後一行新增如下命令:
0 8 * * 1,2,3,4,5 /opt/nmon_x86_64_linux -f -N -m/nmon/log -s 30 -c 1200
表示:
週一到週五,從早上08點開始,監控10個小時(到18:00整為止),輸出到/nmon/log
七、nmon關鍵指標列表
4.1 系統彙總(對應excel標籤的‘SYS_SUMM’)
藍線為cpu佔有率變化情況;
粉線為磁碟IO的變化情況;
4.2磁碟讀寫情況彙總(對應excel標籤的‘DISK_SUMM’)
藍色為磁碟讀的速率KB/sec
紫色為磁碟寫的速率KB/sec
4.3記憶體情況彙總(對應excel標籤的‘MEM’)
轉載自:https://blog.csdn.net/qq_29234631/article/details/79650806