nmon監控及分析(轉)


轉自:http://blog.csdn.net/on_my_way20xx/article/details/19406061

  性能測試中,各個服務器資源占用統計分析是一個很重要的組成部分,通常我們使用nmon這個工具來進行監控以及監控結果輸出。

一. 在監控階段使用類似下面的命令

     ./nmon -f write_3s_20vu.nmon -t -s 30 -c 100  進行監控.

      -f  這是nmon必選參數,並且必須放在第一個,就是輸出文件的意思;通常我們指定一個當前場景的簡寫,方便后期統計;

      -s 表示nmon采樣的頻率單位為秒;

      -c 表示nmon采樣的次數;

      -t 輸出top process

  二. 分析階段 我們通常需要 CPU(%)、MEM(%)、DISKBUSY(%)、NET(MB)幾個相關數值

      1. 關於有效行

       由於nmon啟動時間未必是應用平穩的時間,同時nmon監控時間段也許比應用施壓的要長;所以nmon的結果里常常存在一些明顯不合理的數據--比如前幾次結果的CPU等占用明顯低於中段的平均數據,或者后面幾次采樣結果很小;對於這樣的數據我們在分析的時候要予以過濾;

      2. CPU 占用

       CPU_ALL 表,的CPU%列取平均值即可---注意下圖中紅框中就是無效數據;

          

  2. DISKBUSY  

    DISKBUSY表,對於單磁盤服務器直接對SDA列取平均即可;多服務器的話看情況而定--若果只有一個磁盤有壓力那么就選擇那個磁盤即可,要是兩個磁盤均有則要合起來取個平均;

3. MEM% 

  在MEM表里面使用如下公式計算出每行的內存使用率並進行取平均:

    (Memtotal - Memfree - cached - buffers)/Memtotal  * 100即( =(B2-F2-K2-N2)/B2*100)

通過分析內存使用率的趨勢,可定位是否內存泄露情況。

有人看到內存使用率是99%,就認為內存用滿了,並沒有區分內存分頁是什么類型,這樣武斷的說內存用滿了是不科學的。在AIX上主要關注的是計算內存占整個物理內存的百分比,linux上主要關注的是active內存占整個物理內存的百分比。

 

4. NET(MB) 網絡占用是唯一需要轉換為MB的而不是%

找到eth0-total eth1-total中不為0的那列,取平均並除以1024。

注意此處的write 相當於 nmon時時監控(直接執行並按n鍵)中的TRANS(OUT),read相當於RECVS(IN)

 

要留心數據的變化規律和有效性,靈活的過濾掉無效的數據,一般用CPU來過濾無效行,並在其他三項中統一用有效行數來計算;

 

Shell腳本查看linux系統性能瓶頸 文中有已寫的shell腳本,從腳本中可看出從linux命令中如何獲取服務器各項資源的值。可以與nmon結合一塊分析。

 

http://nmon.sourceforge.net/pmwiki.php

 


免責聲明!

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



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