linux下使用nmon工具對服務器性能進行檢測


1、nmon工具介紹:

nmon工具是linux系統下可以對服務器及系統性能進行監測,CPU信息、CPU占用、內存使用、網卡使用等。最大的好處是此工具會將結果以列表的形式或者是模擬圖形化的方式展示,不需要從繁瑣的數據結果中摳字眼。nmon 工具還可以將相同的數據捕獲到一個文本文件,便於以后對報告進行分析和繪制圖形。輸出文件采用電子表格的格式 (.csv)。

2、安裝nmon:

將nmon4aix_11e.tar.gz放入linux系統某目錄下,如:/opt下

1 [root@localhost opt]# tar –xvzf nmon4aix_11e.tar.gz                    --解壓縮壓縮文件
2 [root@localhost opt]# cd nmon4aix_11e                            --進入nmon目錄
3 [root@localhost nmon4aix_11e]# ./configure –prefix=/usr/local/nmon    --預編譯工具程序
4 [root@localhost nmon4aix_11e]# make&make install                    --鏈接程序及安裝

到此安裝完畢

3、使用方法:

打開nmon,直接./nmon_x86_rhel52即可

以上界面,可以看到,按對應的按鍵查看相應的信息。

q : 停止並退出Nmon

h : 查看幫助信息

c : 查看 CPU 統計信息

m : 查看內存統計信息

d : 查看磁盤統計信息

k : 查看內核統計信息

n : 查看網絡統計信息

N : 查看 NFS 統計信息

j : 查看文件系統統計信息

t : 查看 Top 進程統計信息

V : 查看虛擬內存統計信息

v : 詳細輸出模式

例如:

如果你想查看 CPU 性能信息,可以直接按 c 鍵:

如果你想查看 Top 進程統計信息,可以直接按 t 鍵:

4、NMON后台監控系統性能並生成報表

數據采集:

運行帶 -f 標志的 nmon 命令。有關詳細信息,請參閱 nmon -h。但是作為示例,可以嘗試運行下面的 nmon 命令來,告知 nmon 創建文件,並每隔 30 秒的時間進行一次數據收集,共采集 180 次(共計 1.5 個小時):

nmon -f -s 10 -c 60

-f 表示生成的數據文件名中有時間;

-s 10 表示每 10 秒采集一次數據;

        -c 60 表示采集 60 次,10*60=600 秒,

剛好是 10分鍾的數據,這樣運行一次這個程序就會生成一個采集 10分鍾數據的文件。該行命令將在當前目錄中創建輸出文件,其名稱為:<hostname>_date_time.nmon", hostname" 是這台主機的主機名。

例如:

1 [root@localhost source]# hostname
2 linux_test
3 [root@localhost source]# ./nmon -f -s 10 -c 60
4 [root@localhost source]# ps -ef | grep nmon
5 root 17815 1 0 08:22 pts/1 00:00:00 ./nmon -f -s 10 -c 60
6 root 17888 6977 0 08:22 pts/1 00:00:00 grep nmon
7 [root@localhost source]# ls linux_test_120724_0822.nmon
8 linux_test_120724_0822.nmon

當我們執行相關命令后,就在當前目錄生成了一個以本主機名linux_test開頭,以執行日期為規則,nmon結尾的文件,並且我們通過ps命令會看到相關的nmon進程,這里我們當10分鍾過去以后我們會發現相關nmon進程會消失的。

linux_test_120724_0822.nmon 就是我們所生成的數據文件,所有的信息都在linux_test_120724_0822.nmon記錄,而且我們通過more命令后發現都是我們看不懂的一些文本,這就需要我們把其轉化成我們能看懂的excel格式的文件。首先我們把linux_test_120724_0822.nmon文件導出到我們的windows本地。然后我們從http://www.ibm.com/developerworks/wikis/display/Wikiptype/nmonanalyser下載nmonanalyser軟件到windows本地。打開解壓縮文件后,我們會發現2個文件,一個是nmonanalyse的說明word格式的說明穩定,另一個是excel格式的nmonanalyse文件。

我們這里所需要的就是excel格式問文件,我們雙擊打開。

點解按鈕導入文本結果即可。

以下是效果的展示:

附錄:nmon分析文件各sheet含義

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的時間戳為現在真實的時間,方便更容易的分析



nmon分析文件詳細指標詳解

指標類型

指標名稱

指標含義

SYS_SUMM

CPU%

cpu占有率變化情況;

IO/sec

IO的變化情況;

AAA

AIX

AIX版本號;

build

build版本號;

command

執行命令;

cpus

CPU數量;

date

執行日期;

disks_per_line

 

hardware

被測主機處理器技術;

host

被測主機名;

interval

監控取樣間隔;(秒)

kernel

被測主機內核信息;

ML

維護等級;

progname

執行文件名稱;

runname

運行主機名稱;

snapshots

實際快照次數;

subversion

nmon版本詳情;

time

執行開始時間戳;

user

執行命令用戶名;

version

收集數據的nmon版本;

analyser

nmon analyser版本號;

environment

所用excel版本;

parms

excel參數設定;

settings

excel環境設置;

elapsed

生成excel消耗時間;

BBBB

name

存儲磁盤名稱;

size(GB)

磁盤容量;

disc attach type

磁盤類型;

BBBC

hdisknn

各個磁盤信息、狀態以及MOUNT位置;

BBBD

Adapter_number

磁盤適配器編號;

Name

磁盤適配器名稱;

Disks

磁盤適配器數量;

Description

磁盤適配器描述;

BBBE

   

BBBG

   

BBBL

   

BBBN

NetworkName

網絡名稱;

MTU

網絡上傳送的最大數據包,單位是字節;

Mbits

帶寬;

Name

名稱;

BBBP

 

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

CPUnn

CPU nn

執行間隔時間列表;

User%

顯示在用戶模式下執行的程序所使用的 CPU 百分比;

Sys%

顯示在內核模式下執行的程序所使用的 CPU 百分比;

Wait%

顯示等待 IO 所花的時間百分比;

Idle%

顯示 CPU 的空閑時間百分比;

CPU%

CPU總體占用情況;

CPU_ALL

CPU nn

執行間隔時間列表;

User%

顯示在用戶模式下執行的程序所使用的 CPU 百分比;

Sys%

顯示在內核模式下執行的程序所使用的 CPU 百分比;

Wait%

顯示等待 IO 所花的時間百分比;

Idle%

顯示 CPU 的空閑時間百分比;

CPU%

CPU總體占用情況;

Logical CPUs (SMT=on)

 

CPU_SUMM

CPU_SUMM

CPU編號;

User%

顯示在用戶模式下執行的程序所使用的 CPU 百分比;

Sys%

顯示在內核模式下執行的程序所使用的 CPU 百分比;

Wait%

顯示等待 IO 所花的時間百分比;

Idle%

顯示 CPU 的空閑時間百分比;

DGBUSY

   

DGREAD

   

DGSIZE

   

DGWRITE

   

DGXFER

   

DISKBSIZE

Disk Block Size Hostname

執行間隔時間列表;

hdisknn

磁盤傳輸速度時間間隔采樣;(讀和寫的總趨勢圖)

DISKBUSY

Disk %Busy Hostname

執行間隔時間列表;

hdisknn

每個磁盤執行采樣數據;(磁盤設備的占用百分比)

DISKREAD

Disk Read kb/s Hostname

執行間隔時間列表;

hdisknn

每個磁盤執行采樣數據;(磁盤設備的讀速率)

DISKWRITE

Disk Write kb/s Hostname

執行間隔時間列表;

hdisknn

每個磁盤執行采樣數據;(磁盤設備的寫速率)

DISKXFER

Disk transfers per second Hostname

執行間隔時間列表;

hdisknn

每秒鍾輸出到物理磁盤的傳輸次數;

DISKSERV

   

DISK_SUMM

Disk total kb/s Hostname

執行間隔時間列表;

Disk Read kb/s

每個磁盤執行采樣數據;(磁盤設備的讀速率)

Disk Write kb/s

每個磁盤執行采樣數據;(磁盤設備的寫速率)

IO/sec

每秒鍾輸出到物理磁盤的傳輸次數;

EMCBSIZE/FAStBSIZE

   

EMCBUSY/FAStBUSY

   

EMCREAD/FAStREAD

   

EMCWRITE/FAStWRITE

   

EMCXFER/FAStXFER

   

EMCSERV/FAStSERV

   

ESSBSIZE

   

ESSBUSY

   

ESSREAD

   

ESSWRITE

   

ESSXFER

   

ESSSERV

   

FILE

iget

在監控期間每秒鍾到節點查找例行程序的呼叫數

namei

在監控期間每秒鍾路徑查找例行程序的呼叫數(sar -a ).

dirblk

在監控期間通過目錄搜索例行程序每秒鍾掃描到的目錄塊數 (sar -a)

readch

在監控期間通過讀系統呼叫每秒鍾讀出的字節數(sar -c)

writech

在監控期間通過寫系統呼叫每秒鍾寫入的字節數(sar -c)

ttyrawch

在監控期間通過TTYs每秒鍾讀入的裸字節數(sar -y ).

ttycanch

終端輸入隊列字符 . 對於aix Version 4或者更后的版本這個值總是0

ttyoutch

終端輸出隊列字符. (sar -y ).

FRCA

   

IOADAPT

Disk Adapter Hostname(KB/s)

執行間隔時間列表;

Disk Adapter_read

磁盤適配器讀速率;

Disk Adapter_write

磁盤適配器寫速率;

Disk Adapter_xfer-tps

磁盤適配器傳輸速率;(該物理磁盤每秒的 IO 傳輸請求數量)

JFSFILE

JFS Filespace %Used Hostname

執行間隔時間列表;

file system/LV

文件系統以及mount磁盤設備已使用空間百分比;

JFSINODE

JFS Inode %Used Hostname

執行間隔時間列表;

file system/LV

文件系統以及mount磁盤設備的inode已使用空間百分比;

LARGEPAGE

   

LPAR

   

MEM

Memory Hostname

執行間隔時間列表;

Real Free %

實際剩余內存百分比;

Virtual free %

虛擬剩余內存百分比;

Real free(MB)

實際剩余內存大小;(MB)

Virtual free(MB)

虛擬剩余內存大小;(MB)

Real total(MB)

實際內存總體大小;(MB)

Virtual total(MB)

虛擬內存總體大小;(MB)

MEMUSE

%numperm

分配給文件頁的實際內存百分比

%minperm

mixperm的缺省值約為20%的物理內存.通常會不斷的運行,除非vmtune或rmss命令中使用收集

%maxperm

maxperm的缺省值約為80%的物理內存. 通常會不斷的運行,除非vmtune或rmss命令中使用收集

minfree

空閑頁面數的最小值

maxfree

空閑頁面數的最大值 指定的vmtune命令或系統默認

%comp

分配給計算頁的內存百分比,NMON分析器計算這個值 計算頁是可被 page space支持的,包括存儲和程序文本段 他們不包括數據,可執行的和共享的庫文件

MEMNEW

Process%

分配給用戶進程的內存百分比

FSCache%

分配給文件系統緩存的內存百分比

System%

系統程序使用的內存百分比

Free%

未被分配的內存百分比

User%

非系統程序使用的內存百分比

NET

read/write

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

NETPACKET

reads/s

統計每個適配器網絡讀包的數量

writes/s

統計每個適配器網絡寫包的數量

NFS sheets

   

PAGE

faults

每秒的page faults數

pgin

每秒鍾所讀入的頁數,包括從文件系統讀取的頁數

pgout

每秒鍾所寫出的頁數,包括寫到文件系統的頁數

pgsin

每秒鍾從頁面空間所讀取的頁數

pgsout

每秒鍾寫到頁面空間的頁數

reclaims

從nmon回收這項之前的10個,和vmstat報告的值是一樣的,代表了頁替換機制釋放的pages/sec的數量

scans

掃描頁替換機制的pages/sec的數量,和vmstat報告的值是一樣的,頁替換在空閑頁數量到達最小值時初始化,在空閑到達最大值時停止

cycles

周期 times/sec的數值,頁替換機制需要掃描整個頁表,來補充空閑列表。這和vmstat報告的cy數值一樣,只是vmstat報告的這個值是整形值,而nmon報告的是實型值

fsin

分析器計算的數據為pgin-pgsin的圖形處理所用

fsout

分析器計算的數據為pgout-pgsout的圖形處理所用

sr/fr

分析器計算的數據為scans/reclaims的圖形處理所用

PROC

RunQueue

運行隊列中的內核線程平均數(同sar -q中的runq-sz)

Swap-in

等待page in的內核線程平均數 (同sar -q中的swpq-sz)

pswitch

上下文開關個數 (同sar -w中的pswch/s)

syscall

系統調用總數.(同sar -c中的scall/s)

read

系統調用中read的數量. (同sar -c中的sread/s)

write

系統調用中write的數量. (同sar -c中的swrit/s)

fork

系統調用中fork的數量. (同sar -c中的 fork/s)

exec

系統調用中exec 的數量. (同sar -c中的 exec/s)

rcvint

tty接收中斷的數量. (同sar -y中的 revin/s)

xmtint

tty傳輸中斷的數量. (同sar -y中的 xmtin/s)

sem

IPC信號元的數量 創建,使用和消除). (同sar -m中的 sema/s)

msg

IPC消息元的數量 (發送和接收). (同sar -m中的 sema/s)

PROCAIO

   

TOP

PID

進程號

%CPU

CPU使用的平均數

%Usr

顯示運行的用戶程序所占用的CPU百分比

%Sys

顯示運行的系統程序所占用的CPU百分比

Threads

被使用在這個程序中的線程數

Size

對於這個程序一次調用分配給數據段的paging space平均值

ResText

對於這個程序一次調用分配給代碼段的內存平均值

ResData

對於這個程序一次調用分配給數據段的內存平均值

CharIO

通過讀寫系統調用的每秒字節數

%RAM

此命令所使用的內存百分比 ((ResText + ResData) / Real Mem)

Paging

此進程所有page faults的總數

Command

命令名稱

WLMClass

此程序已分配的 Workload Manager superclass名稱

IntervalCPU

詳細信息中顯示在時間間隔中所有調用命令所使用的CPU總數

WSet

詳細信息中顯示在時間間隔中所有調用命令所使用的內存總數

User

運行進程的用戶名

Arg

包含完整的參數字符串輸入命令

UARG

   

WLM sheets

   

ZZZZ

   
     




nmon關鍵指標列表

關鍵指標類型

關鍵指標名稱

關鍵指標含義

SYS_SUMM

CPU%

cpu占有率變化情況;

IO/sec

IO的變化情況;

AAA

AIX

AIX版本號;

cpus

CPU數量;

hardware

被測主機處理器技術;

host

被測主機名;

interval

監控取樣間隔;(秒)

kernel

被測主機內核信息;

CPU_ALL

User%

顯示在用戶模式下執行的程序所使用的 CPU 百分比;

Sys%

顯示在內核模式下執行的程序所使用的 CPU 百分比;

Wait%

顯示等待 IO 所花的時間百分比;

Idle%

顯示 CPU 的空閑時間百分比;

CPU%

CPU總體占用情況;

DISKBUSY

Disk %Busy Hostname

執行間隔時間列表;

hdisknn

每個磁盤執行采樣數據;(磁盤設備的占用百分比)

DISK_SUMM

Disk total kb/s Hostname

執行間隔時間列表;

Disk Read kb/s

每個磁盤執行采樣數據;(磁盤設備的讀速率)

Disk Write kb/s

每個磁盤執行采樣數據;(磁盤設備的寫速率)

IO/sec

每秒鍾輸出到物理磁盤的傳輸次數;

NET

read/write

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

JFSFILE

JFS Filespace %Used Hostname

執行間隔時間列表;

file system/LV

文件系統以及mount磁盤設備已使用空間百分比;

JFSINODE

JFS Inode %Used Hostname

執行間隔時間列表;

file system/LV

文件系統以及mount磁盤設備的inode已使用空間百分比;

MEM

Memory Hostname

執行間隔時間列表;

Real Free %

實際剩余內存百分比;

Virtual free %

虛擬剩余內存百分比;

Real free(MB)

實際剩余內存大小;(MB)

Virtual free(MB)

虛擬剩余內存大小;(MB)

Real total(MB)

實際內存總體大小;(MB)

Virtual total(MB)

虛擬內存總體大小;(MB)

PAGE

faults

每秒的page faults(頁錯誤)數;

pgin

每秒鍾所讀入的頁數,包括從文件系統讀取的頁數

pgout

每秒鍾所寫出的頁數,包括寫到文件系統的頁數

pgsin

每秒鍾從頁面空間所讀取的頁數

pgsout

每秒鍾寫到頁面空間的頁數

reclaims

從nmon回收這項之前的10個,和vmstat報告的值是一樣的,代表了頁替換機制釋放的pages/sec的數量

scans

掃描頁替換機制的pages/sec的數量,和vmstat報告的值是一樣的,頁替換在空閑頁數量到達最小值時初始化,在空閑到達最大值時停止

cycles

周期 times/sec的數值,頁替換機制需要掃描整個頁表,來補充空閑列表。這和vmstat報告的cy數值一樣,只是vmstat報告的這個值是整形值,而nmon報告的是實型值

fsin

分析器計算的數據為pgin-pgsin的圖形處理所用

fsout

分析器計算的數據為pgout-pgsout的圖形處理所用

sr/fr

分析器計算的數據為scans/reclaims的圖形處理所用


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM