linux下使用性能分析工具nmon

一 簡介
nmon 工具可以幫助在一個屏幕上顯示所有重要的性能優化信息,並動態地對其進行更新。這個高效的工具可以工作於任何啞屏幕、telnet 會話、甚至撥號線路。另外,它並不會消耗大量的 CPU 週期,通常低於百分之二。在更新的計算機上,其 CPU 使用率將低於百分之一。
使用啞屏幕,在屏幕上對數據進行顯示,並且每隔兩秒鐘對其進行更新。然而,您可以很容易地將這個時間間隔更改爲更長或更短的時間段。如果您拉伸窗口,並在X WindowsVNCPuTTY 或類似的窗口中顯示這些數據,nmon 工具可以同時輸出大量的信息。
nmon 工具還可以將相同的數據捕獲到一個文本文件,便於以後對報告進行分析和繪製圖形。輸出文件採用電子表格的格式 (.csv)。
nmon 工具可以爲 AIX  Linux 性能專家提供監視和分析性能數據的功能,其中包括:
  • CPU 使用率
  • 內存使用情況
  • 內核統計信息和運行隊列信息
  • 磁盤 I/O 速度、傳輸和讀/寫比率
  • 文件系統中的可用空間
  • 磁盤適配器
  • 網絡 I/O 速度、傳輸和讀/寫比率
  • 頁面空間和頁面速度
  • CPU 和 AIX 規範
  • 消耗資源最多的進程
  • IBM HTTP Web 緩存
  • 用戶自定義的磁盤組
  • 計算機詳細信息和資源
  • 異步 I/O,僅適用於 AIX
  • 工作負載管理器 (WLM),僅適用於 AIX
  • IBM TotalStorage® Enterprise Storage Server® (ESS) 磁盤,僅適用於 AIX
  • 網絡文件系統 (NFS)
  • 動態 LPAR (DLPAR) 更改,僅適用於面向 AIX 或 Linux 的 pSeries p5 和 OpenPower
還包括一個用來從 nmon 的輸出生成圖形並創建可以在 Web 站點顯示的 .gif 文件的新工具。

二 獲取
    或者直接從這獲取,還包含分析工具 nmon_linux_14g + analyser.zip

三 使用
解壓後,可以看到各個平臺的文件,我們只需要使用適合的即可,一般是nmon_linux_x86_64。
$ cp nmon_linux_x86_64 nmon
$./nmon 
首次使用會提示“./nmon: Permission denied”
執行  chnod 777 ./nmon 即可
成功後,會看到這樣的界面
上面顯示了具體的用法,比如輸入'n',就會顯示網絡I/O,'d'顯示磁盤信息,'m'顯示內存信息,等等;

四 其他選項
一般我們用-s ,-c -f選項比較多,比如 
$./nmon -s 1 -c 3600 -f
輸出頻率爲1秒1次,總共3600次,即1小時,文件名以<hostname>_YYYYMMDD_HHMM.nmon的形式保存,如localhost_140625_1614.nmon
生成文件後,轉化成*.csv文件,便於分析工具進行分析。
$sort localhost_140625_1614.nmon > localhost_140625_1614.csv 

五  生成報告
    上面的工具包已經包含nmon analyser v33g.xls,
打開
點擊 ‘選項’
選擇顯示此內容,然後點擊'analyse nmon data',找到對應的csv文件,便會生成xlsx文件,如localhost_140625_1614.xlsx,裏面便是詳細的報告。

六 nmon報告分析
報告生成後,會生成各種數據以及詳細的表格數據,包括網絡,磁盤,CPU等等,詳細參數以及說明請查看
nmon分析文件指標詳解.xls
以NET選項爲例,此報告是以一個輕量級的網絡庫進行的測試,使用epoll模型,10000個連接,每個連接以10 packet/sec的頻率發送,每個包大小約100bytes,代碼源自https://github.com/yuyunliuhen/tinynet 。
監測分2段,第一段爲連接的前一個小時直到全部連接成功;第二段爲穩定運行12小時後的一小時。
第一段:
從17:11開始,隨着連接數的增加,網絡流量線性增長;17:26時,趨於平穩。因爲是echo模型,所以讀寫基本一致,穩定後均值在10M/sec左右。
第二段:
流量均值還是在10M/sec左右,讀最大值50M/sec,寫最大值38M/sec。
對於1000Mb網卡來說,10M遠低於1000Mb/8=125M,帶寬流量不存在瓶頸。
其他的性能數據圖表與上類似,在此不一一列舉了!
參考:




發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章