服務器性能監控,nmon的下載安裝與使用分析報告

一、概述:

  監控,在檢查系統問題或優化系統性能工作上是一個不可缺少的部分。通過操作系統監控工具監視操作系統資源的使用情況,間接地反映了各服務器程序的運行情況。根據運行結果分析可以幫助我們快速定位系統問題範圍或者性能瓶頸點。

  nmon是一種在AIX與各種Linux操作系統上廣泛使用的監控與分析工具,相對於其它一些系統資源監控工具來說,nmon所記錄的信息是比較全面的,它能在系統運行過程中實時地捕捉系統資源的使用情況,並且能輸出結果到文件中,然後通過nmon_analyzer工具產生數據文件與圖形化結果。

nmon所記錄的數據包含以下一些方面(也是我們在尋找問題過程中所關注的資源點):

● cpu佔用率

●內存使用情況

●磁盤I/O速度、傳輸和讀寫比率

●文件系統的使用率

●網絡I/O速度、傳輸和讀寫比率、錯誤統計率與傳輸包的大小

●消耗資源最多的進程

●計算機詳細信息和資源

●頁面空間和頁面I/O速度

●用戶自定義的磁盤組

●網絡文件系統

另外在AIX操作系統上,nmon還能監控到其他的一些信息,如異步I/O等。

關於這個工具的更加詳細的說明請看IBM官方網站的說明:

1、nmon工具:

http://www.ibm.com/developerworks/cn/aix/library/nmon_analyser/

2、nmon analyser工具:

http://www.ibm.com/developerworks/cn/aix/library/nmon_analyser/

 

2、下載nmon軟件包:

1,wget方式下載,地址:  https://nchc.dl.sourceforge.net/project/nmon/nmon16d_x86.tar.gz

 

2,官網手動下載,地址:http://nmon.sourceforge.net/pmwiki.php?n=Site.Downlo ,翻譯了下,如下圖

因爲CentOS就是 RedHat 的免費版本(上面內核版本 2.6.32-431.el6.x86_64),所以對應系統是RHEL 6.5,選擇右邊包含RedHat 6.5的下載。

三、解壓安裝配置:

tar -zxvf nmon16d_x86.tar.gz

配置啓動命令

在解壓的文件夾目錄下

  cp nmon_x86_64_centos7 /usr/local/bin/

四、測試:

Nmon工具使用比較簡單,在nmon目錄下,輸入./nmon_x86_64_centos7

或者添加了啓動直接輸入nmon

輸入nmon命令啓動Nmon,如下圖

在上面的交互式窗口中,可以使用nmon 快捷鍵來顯示不同的系統資源統計數據:

  • q : 停止並退出 Nmon
  • h : 查看幫助
  • c : 查看 CPU 統計數據
  • m : 查看內存統計數據
  • d : 查看硬盤統計數據
  • k : 查看內核統計數據
  • n : 查看網絡統計數據
  • N : 查看 NFS 統計數據
  • j : 查看文件系統統計數據
  • t : 查看高耗進程
  • V : 查看虛擬內存統計數據
  • v : 詳細模式

按下c,m,d後如下圖,CPU、內存、磁盤的消耗情況都直觀的展現出來了,按q鍵可以退出。

五,數據採集

性能測試時,需要根據測試場景的執行情況,分析一段時間內系統資源的變化,這時需要nmon採集數據並保存下來,以下是常用的參數:

      -f 參數:生成文件,文件名=主機名+當前時間.nmon

     -T 參數:顯示資源佔有率較高的進程

     -s 參數:-s 10表示每隔10秒採集一次數據

     -c 參數:-s 10表示總共採集十次數據

     -m 參數:指定文件保存目錄

具體的參數學習可參考博客:https://www.cnblogs.com/iclk/p/4456311.html

如每隔5秒採集一次,一共採集12次,就是1分鐘的數據(生成的文件已標紅):

[qgc@localhost nmon16d]$ nmon -f -s 5 -c 12 -m /home/qgc/Desktop/
[qgc@localhost nmon16d]$ nmon -f -T -s 5 -c 12 -m /home/qgc/Desktop/
[qgc@localhost Desktop]$ ls
lmon16g.c                   localhost_180827_2318.nmon  nmon16d_x86.tar.gz
localhost_180827_2317.nmon  nmon16d                     Test

數據採集完畢後,如需關閉nmon進程,需要獲取nmon的pid(已標紅)

[qgc@localhost Desktop]$ ps -ef | grep nmon
qgc        4455(pid)   4349(ppid)  0 23:40 pts/0    00:00:00 nmon
qgc        4491   4429  0 23:40 pts/1    00:00:00 grep nmon

再安全殺掉該進程:kill -9 pid

[qgc@localhost Desktop]$ kill -9 4455
[qgc@localhost Desktop]$ ps -ef | grep nmon
qgc        4493   4429  0 23:40 pts/1    00:00:00 grep nmon

 

通過sort命令可以將nmon結果文件轉換爲csv文件:

1

# sort -A  hostname_timeSeries.nmon> hostname_timeSeries.nmon.csv

六,數據分析

1,下載nmon analyser

藉助nmon analyser可以把nmon採集的數據生成直觀的Excel表,nmon analyser可以在IBM的官網下載,https://www.ibm.com/developerworks/community/wikis/home?lang=en#!/wiki/Power+Systems/page/nmon_analyser

 

在windows上下載後解壓,有word和exce兩個文檔,Word是說明文檔,包括更新日誌,詳細參數等,其中的Excel就是nmon analyser工具了。

2,打開nmon analyser

雙擊打開nmon analyser v54.xlsm,點擊Analyze nmon data按鈕:

 注:因爲我用的個人免費版WPS(10.1),沒有包含宏,需要安裝宏插件(VBA for WPS),Excel是自帶宏插件的,如果宏不能運行,需要做以下操作:
工具 -> 宏 -> 安全性 -> 中,然後再打開文件並允許運行宏。

 3,下載VBA for WPS

地址:https://pan.baidu.com/s/1QzW4ebQxYQtxgVfkTmxVJw,下載VBA7.0.1590_For WPS(中文).exe後,先退出WPS,再直接安裝就行,再次打開nmon analyser,啓用宏

4,使用nmon analyser生成圖表

成功打開nmon analyser後,點擊Analyze nmon data按鈕,選擇nmon數據文件,會再次提示另存爲,選擇地址保存即可。 

 

 下圖就是nmon生成的數據報告截圖,底部可以切換其他資源信息。

 

 

 

 

   以上就是nmon的簡單描述與使用介紹,大家可以根據自己所採集到的結果分析系統的情況。點擊在EXCEL工具下的標籤可以看見不同的性能報告,參考如下:

sheet名稱

sheet含義

SYS_SUMM

系統彙總,藍線爲cpu佔有率變化情況,粉線爲磁盤IO的變化情況;

AAA

關於操作系統以及nmon本身的一些信息;

BBBB

系統外掛存儲容量以及存儲類型;

BBBC

系統外掛存儲位置、狀態以及描述信息;

BBBD

磁盤適配器信息;(包含磁盤適配器名稱以及描述)

BBBE

包含通過lsdev命令獲取的系統設備及其特徵,顯示vpaths和hdisks之間的映射關係;

BBBG

顯示磁盤組詳細的映射關係;

BBBL

邏輯分區(LPAR)配置細節信息;

BBBN

網絡適配器信息;

BBBP

vmtune, schedtune, emstat和lsattr命令的輸出信息;

CPUnn

顯示執行之間內CPU佔用情況,其中包含user%、sys%、wait%和idle%;

CPU_ALL

所有CPU概述,顯示所有CPU平均佔用情況,其中包含SMT狀態;

CPU_SUMM

每一個CPU在執行時間內的佔用情況,其中包含user%、sys%、wait%和idle%;

DGBUSY

磁盤組每個hdisk設備平均佔用情況;

DGREAD

每個磁盤組的平均讀情況;

DGSIZE

每個磁盤組的平均讀寫情況(塊大小);

DGWRITE

每個磁盤組的平均寫情況;

DGXFER

每個磁盤組的I/O每秒操作;

DISKBSIZE

執行時間內每個hdisk的傳輸塊大小;

DISKBUSY

每個hdisk設備平均佔用情況;

DISKREAD

每個hdisk的平均讀情況;

DISKWRITE

每個hdisk的平均寫情況;

DISKXFER

每個hdisk的I/O每秒操作;

DISKSERV

本sheet顯示在每個收集間隔中hdisk的評估服務時間(未響應時間)

DISK_SUMM

總體disk讀、寫以及I/O操作;

EMCBSIZE/FAStBSIZE

執行時間內EMC存儲的傳輸塊大小;

EMCBUSY/FAStBUSY

EMC存儲設備平均佔用情況;

EMCREAD/FAStREAD

EMC存儲的平均讀情況;

EMCWRITE/FAStWRITE

EMC存儲的平均寫情況;

EMCXFER/FAStXFER

 

EMCSERV/FAStSERV

 

ESSBSIZE

本sheet記錄在系統中每個vpaths下讀寫操作的平均數據傳輸大小(blocksize) Kbytes

ESSBUSY

本sheet記錄使用ESS系統的每個vpaths下的設備繁忙情況

ESSREAD

本sheet記錄在系統中每個vpaths下讀取操作的  data rate (Kbytes/sec)

ESSWRITE

本sheet記錄在系統中每個vpaths下寫入操作的  data rate (Kbytes/sec)

ESSXFER

本sheet記錄在系統中每個vpaths下每秒的IO操作

ESSSERV

本sheet顯示在每個收集間隔中vpaths的評估服務時間(未響應時間)

FILE

本sheet包含nmon內核內部的統計信息的一個子集,跟sar報告的值相同

FRCA

 

IOADAPT

對於BBBCsheet每個IO適配器列表,包含了數據傳輸速度爲讀取和寫入操作(千字節/秒)和I / O操作執行的總數量

JFSFILE

本sheet顯示對於每一個文件系統中,在每個間隔區間正在被使用的空間百分比

JFSINODE

本sheet顯示對於每一個文件系統中,在每個間隔區間正在被使用的inode百分比

LARGEPAGE

本圖表顯示Usedpages和Freepages隨着時間的變化

LPAR

 

MEM

本sheet主圖上顯示空閒實存的數量

MEMUSE

除  %comp參數外,本sheet包含的所有項都和vmtune命令的報告中一樣

MEMNEW

本sheet顯示分配的內存片信息,分三大類:用戶進程使用頁,文件系統緩存,系統內核使用頁

NET

本sheet顯示系統中每個網絡適配器的數據傳輸速率(千字節/秒)

NETPACKET

本sheet統計每個適配器網絡讀寫包的數量;這個類似於netpmon –O dd 命令

NFS sheets

 

PAGE

本sheet統計相關頁信息的記錄

PROC

本sheet包含nmon內核內部的統計信息。其中RunQueue和Swap-in域是使用的平均時間間隔,其他項的單位是比率/秒

PROCAIO

本sheet包含關於可用的和active的異步IO進程數量信息.

TOP

 

UARG

 

WLM sheets

 

ZZZZ

本sheet自動轉換所有nmon的時間戳爲現在真實的時間,方便更容易的分析

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