用nmon監控Linux系統資源

下載相應 CPU 類型的版本:
http://nmon.sourceforge.net/pmwiki.php?n=Site.Download

wget http://sourceforge.net/projects/nmon/files/download/nmon_x86_12a.zip/download
unzip nmon_x86_12a.zip
Archive:  nmon_x86_12a.zip
  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

使用對應的操作系統文件:
chmod +x nmon_x86_ubuntu810
mv nmon_x86_ubuntu810 /usr/local/bin/nmon

對於 Debian 還要做以下操作(不做也同樣能運行):
apt-get install lsb-release
lsb_release -d | sed 's/Description:\t//' > /etc/debian_release

然後直接運行 nmon 即可。

採集數據並生成報表:
採集數據:
nmon -s10 -c60 -f -m /home/

參數解釋:
-s10 每 10 秒採集一次數據。
-c60 採集 60 次,即爲採集十分鐘的數據。
-f 生成的數據文件名中包含文件創建的時間。
-m 生成的數據文件的存放目錄。

這樣就會生成一個 nmon 文件,並每十秒更新一次,直到十分鐘後。
生成的文件名如: hostname_090824_1306.nmon ,"hostname" 是這臺主機的主機名。

生成報表:
下載 nmon analyser (生成性能報告的免費工具):
http://www.ibm.com/developerworks/wikis/display/Wikiptype/nmonanalyser

把之前生成的 nmon 數據文件傳到 Windows 機器上,用 Excel 打開分析工具 nmon analyser v33C.xls 。點擊 Excel 文件中的 "Analyze nmon data" 按鈕,選擇 nmon 數據文件,這樣就會生成一個分析後的結果文件: hostname_090824_1306.nmon.xls ,用 Excel 打開生成的文件就可以看到結果了。

如果宏不能運行,需要做以下操作:
工具 -> 宏 -> 安全性 -> 中,然後再打開文件並允許運行宏。

自動按天採集數據:
在 crontab 中增加一條記錄:
0 0 * * * root nmon -s300 -c288 -f -m /home/ > /dev/null 2>&1

300*288=86400 秒,正好是一天的數據。

參考資料:
nmon for Linux:
http://nmon.sourceforge.net/pmwiki.php

nmon 性能:分析 AIX 和 Linux 性能的免費工具:
http://www.ibm.com/developerworks/cn/aix/library/analyze_aix/index.html

nmon analyser —— 生成 AIX 性能報告的免費工具:
http://www.ibm.com/developerworks/cn/aix/library/nmon_analyser/index.html

 

------------------------------------------------------------------------------------------------------------------------

 

Nmon 工具是 IBM 提供的免費的監控 AIX 系統與 Linux 系統資源的工具。該工具可將服務器的系統資源耗用情況收集起來並輸出一個特定的文件,並可利用 excel 分析工具進行數據的統計分析,非常利用 UNIX 或者 Linux 系統的性能數據分析。Nmon 工具使用起來非常簡單,下面將分步驟介紹如何使用該工具。

一、安裝 nmon
首先我們在 IBM 的官方網站上下載 nmon 工具,下載時需注意要下載對應的系統版本。我們這裏以 debian31 爲例,下載的是 nmon_x86_11f.zip 版本,該版本支持 ubuntu。下載後解壓,改名爲 nmon 並上傳到 Linux 中。在 Linux 的終端中輸入 ls 可以看到:
slg@slg-desktop:~/桌面/GVS項目/nmon$ ls
nmon_x86_debian31 nmon_x86_knoppix5 nmon_x86_rhel3 nmon_x86_sles10
nmon_x86_fedora5 nmon_x86_rhel2 nmon_x86_rhel4 nmon_x86_sles9

爲了能夠正常的使用 nmon 工具,我們需要修改相關文件的權限。我們這裏所使用的 Linux 系統是 ubuntu,所以,我們僅修改”nmon_x86_debian31”文件
的權限即可。爲了方便,直接改爲 777,命令如下:chmod 777 nmon_x86_debian31修改完成後,我們就完成了 nmon 工具的安裝,接下來介紹一下該工具的使用。

二、使用 nmon
nmon 工具使用非常簡單。首先我們啓動該工具,在 nmon 目錄下,輸入 ./nmon_x86_debian31 打開界面,根據提示信息即可進行操作,
┌nmon─11f─────────────────────Hostname=slg-desktop──Refresh= 2secs ───10:12.08──────────────────────────────────────────────┐
│ │
│ ------------------------------ For help type H or ... │
│ # # # # #### # # nmon -? - hint │
│ ## # ## ## # # ## # nmon -h - full │
│ # # # # ## # # # # # # │
│ # # # # # # # # # # To start the same way every time │
│ # ## # # # # # ## set the NMON ksh variable │
│ # # # # #### # # │
│ ------------------------------ │
│ │
│ Use these keys to toggle statistics on/off: │
│ c = CPU l = CPU Long-term - = Faster screen updates │
│ m = Memory j = Filesystems + = Slower screen updates │
│ d = Disks n = Network V = Virtual Memory │
│ r = Resource N = NFS v = Verbose hints │
│ k = kernel t = Top-processes . = only busy disks/procs │
│ h = more options q = Quit │
│───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────│
│ 
如輸入c顯示cpu信息;
CPU Utilisation ──────────────────────────────────────────────────────────────────────────────────────────────────────────│
│ +-------------------------------------------------+ │
│CPU User% Sys% Wait% Idle|0 |25 |50 |75 100| │
│ | Please wait gathering data │
│ +-------------------------------------------------+ │
│──────────────────────────────────────────────────────────────────────────────────────────


三、輸出文件


上面所講的只是在服務器監控,我們真正需要的是如何收集這些數據並處理分析它們。nmon 提供了一個 nmon_analyser 的分析工具,可利用 excel 進行統計結果的分析。在測試的時候,我們可使用下列命令進行數據的輸出:
./ nmon_x86_debian31 –fT –s 5 –c 5
上面命令的含義是,-f 輸出文件,-T 輸出最耗資源的進程,-s 收集數據的時間間隔,-c 收集次數。比如,我們測試場景需要執行 20 分鐘,那麼我們需要每隔 10 秒監控 Linux系統資源就可以寫成:
./ nmon_x86_debian31 –fT –s 10 –c 120
120 是次數,也就是 20 分鐘/10 秒=120 次。完成後會在當前目錄生成一個.nmon 的文
件。如圖:
slg@slg-desktop:~/桌面/GVS項目/nmon$ ls
nmon_x86_debian31 nmon_x86_knoppix5 nmon_x86_rhel3 nmon_x86_sles10 slg-desktop_090113_1024.nmon
nmon_x86_fedora5 nmon_x86_rhel2 nmon_x86_rhel4 nmon_x86_sles9
nmon 輸出文件的命名方式是服務器名_日期時間.nmon,我們在測試結束後,可到相應的目錄下提取這些文件。


四、分析數據

打開nmon analyser v334
設置宏的安全級別是低 ,之後點擊 Analyser NMON data 按鈕 輸入文件 保存成excel格式即可。

 

----------------------------------------------------------------------------------------------------------------------------

 

 

在Aix下游topas命令可以檢測系統運行狀況,在linux下只有一個top,但是不是很友好。今天發現了一個開源工具numon,可以監控linux、aix下資源佔用情況界面要比top號很多,還有分析工具,功能很強悍。好東西分享一下:

 

一、下載使用

nmon下載地址:

http://www.ibm.com/developerworks/wikis/display/WikiPtype/nmon

選擇自己需要的版本:

比如我使用的redhat E 5.3,所以我選擇下面的“nmon for Linux Download”下的下載點。點擊後探出“nmon for Linux”首頁,選擇detail裏的“For the pre-compiled versions - click on Download ”(這裏選擇的是預編譯好的二進制文件,如果你想研究一下源代碼,也是可以的~),打開下載頁面:

 

根據cpu類型選擇下載點,這裏選擇32位的redhat5.3下的nmon。

下載後解壓縮,如下

選中的就是我們需要的文件!

然後執行這個文件 ./nmon_x86_rhel52,界面如下:

 

看,是不是和aix下的topas很像?nmon提供了一些選項,方便我們查看,例如按c查看cpu,按d查看磁盤io,按n查看網絡情況等。

nmon選項:

 

二、數據分析

nmon還提供數據分析功能。

# ./nmon  –f  -s 30 –c 100
說明:每隔30秒檢測一次、共檢測100次,並將結果輸出到默認的文件中。

-f 以文件的形式輸出,默認輸出是機器名+日期.nmon的格式,也可以用-F指定輸出的文件名,例如:

# ./nmon_x86_rhel4 –F test.nmon  -s 30 –c 100
-s是採樣頻率,隔多長時間收集一次,這裏我指定的是30秒一次;

-c是採樣次數,一共要收集多少次,這裏我指定的是100次。
注意:這裏單次收集的文件大小最多不能超過65K行(EXCEL裏的限制),大約是在nmon中 –c的值不超過330次就OK。
./nmon -f -s 10 -c 150
nmon生成的文件比較大,建議每次收集的次數不要太多,若需要收集很長時間的數據,建議分開收集,也就是生成多個文件,LINUX裏可以用建多個job 的方式進行,例如:
先創建一個腳本,例如命名爲nmon.sh,如下:
#! /bin/sh
./nmon_x86_rhel4  -F 6326081116_6AM.nmon -s 60 -c 240
給這個文件授權:
#chmod 777 nmon.sh
然後建一個job:
# at –f nmon.sh 6:00 January 16

 

生成的文件用分析器打開後會自動分析出結果,把結果保存到一個excel中就可以了,分析結果如下 :: 分析器,需要調整excel的宏安全級別

 

 

 

 

三、資源文件 http://sosuny.iteye.com/blog/686160

發佈了32 篇原創文章 · 獲贊 2 · 訪問量 8萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章