在性能測試過程中,對服務端的各項資源使用情況進行監(jiān)控是很重要的一環(huán)。這篇博客,介紹下服務端監(jiān)控工具:nmon的使用方法
一、認識nmon
1、簡介
nmon是一種在AIX與各種Linux操作系統(tǒng)上廣泛使用的監(jiān)控與分析工具,它能在系統(tǒng)運行過程中實時地捕捉系統(tǒng)資源的使用情況,記錄的信息比較全面,
并且能輸出結果到文件中,然后通過nmon_analyzer工具產(chǎn)生數(shù)據(jù)文件與圖形化結果。
2、nmon可監(jiān)控的數(shù)據(jù)類型
- 內(nèi)存使用情況
- 磁盤適配器
- 文件系統(tǒng)中的可用空間
- CPU使用率
- 頁面空間和頁面速度
- 異步I/O,僅適用于AIX
- 網(wǎng)絡文件系統(tǒng)(NFS)
- 磁盤I/O速度和讀寫比率
- 服務器詳細信息和資源
- 內(nèi)核統(tǒng)計信息
- 消耗資源最多的進程
- 運行隊列信息
3、特點
- 占用系統(tǒng)資源少(一般不到2%)
- 功能強大(監(jiān)控數(shù)據(jù)類型全面)
- 結合grafana之類的儀表圖,可以更直觀的實時展示所監(jiān)控的數(shù)據(jù)
- 移植性、兼容性較好
二、檢查安裝環(huán)境
# 查看操作系統(tǒng)的信息
uname -a
# 查看linux發(fā)行版本
lsb_release -a
如下圖,我的操作系統(tǒng)為64位,linux版本為CentOS7.4版本:
[root@izbp1jbg0c2bbcmcba0exoz ~]# uname -a
Linux izbp1jbg0c2bbcmcba0exoz 3.10.0-693.2.2.el7.x86_64 #1 SMP Tue Sep 12 22:26:13 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
[root@izbp1jbg0c2bbcmcba0exoz ~]# lsb_release -a
LSB Version: :core-4.1-amd64:core-4.1-noarch
Distributor ID: CentOS
Description: CentOS Linux release 7.4.1708 (Core)
Release: 7.4.1708
Codename: Core
三、nmon下載安裝
1、官方地址
http://nmon.sourceforge.net/pmwiki.php?n=Site.Download
根據(jù)我的操作系統(tǒng)和linux版本,選擇對應的支持版本,如下:

2、下載方式
- 下載到本地,通過FTP上傳到服務器
- 命令行
wget http://sourceforge.net/projects/nmon/files/nmon16e_mpginc.tar.gz
3、安裝
下載完成后,執(zhí)行以下命令:
# 新建一個nmon文件夾
mkdir nmon
# 解壓
tar xvfz nmon16e_mpginc.tar.gz
# 改名
mv nmon_x86_64_centos7 /root/nmon
# 給工具授權
chmod -x nmon 777
四、運行nmon
完成上面的操作后,執(zhí)行 ./nmon 命令,出現(xiàn)如下界面,說明安裝成功:

常用快捷命令說明:
# c
查看CPU相關信息
# m
查看內(nèi)存相關信息
# d
查看磁盤相關信息
# n
查看網(wǎng)絡相關信息
# t
查看相關進程信息
# h
查看幫助相關信息
輸入如上幾種命令,結果如下圖顯示:

五、采集數(shù)據(jù)
nmon通過命令行啟動監(jiān)控,捕獲服務器的各項數(shù)據(jù),命令如下:
./nmon -ft -s 10 -c 60 -m /root/nmon
# 參數(shù)說明
-f 監(jiān)控結果以文件形式輸出,默認機器名+日期.nmon格式
-F 指定輸出的文件名,比如test.nmon
-s 指的是采樣的頻率,單位為毫秒
-c 指的是采樣的次數(shù),即以上面的采樣頻率采集多少次
-m 指定生成的文件目錄
PS:一般來說不建議對穩(wěn)定性測試使用nmon監(jiān)控,因為生成的nmon文件超過10M時,分析工具會由于內(nèi)存不足導致報錯。
如果必須進行的話,建議加大采樣頻次,降低采樣次數(shù)(低于330次)。
六、監(jiān)控結果分析
1、下載分析工具
nmon監(jiān)控捕獲的信息,一般用nmon_analyser來進行分析。nmon_analyser 由IBM提供, 使用excel的宏命令分析加載生成excel圖表,展示資源占用的各項信息。
官網(wǎng)地址:nmon_analyser

下載你需要的版本,然后解壓,解壓后出現(xiàn)如下2個文件:

2、使用nmon analyser工具
打開.xlsm文件,點擊Analyze nmon data,打開你需要進行分析的nmon監(jiān)控文件:

PS:如果提示分析文件不可用,從“工具-宏-安全性”啟動宏,然后再次打開文件,即可使用該分析文件。
3、生成各種圖表數(shù)據(jù)
通過分析工具生成的監(jiān)控數(shù)據(jù)結果如下圖:

紅色標注區(qū)域為采集的監(jiān)控數(shù)據(jù),選擇自己需要的類型(比如cpu),然后篩選對應的服務Pid(比如1314),選擇對應的數(shù)據(jù)類型(比如CPU使用率占比),
通過excel提供的各種圖形生成工具,生成直觀的分析結果圖。比如:



以上,即監(jiān)控工具nmon的介紹和基本使用方法,更多的應用方式,請參考官網(wǎng)說明或自行探索。