七、網(wǎng)絡(luò)流量監(jiān)測
網(wǎng)絡(luò)問題是影響系統(tǒng)性能的問題之一,診斷網(wǎng)絡(luò)問題最簡單的工具當(dāng)然是使用系統(tǒng)提供的命令netstat,常用選項(xiàng):-r :顯示路由信息,-i :顯示接口信息。另外可以“netstat -s”看我們關(guān)心的報(bào)文統(tǒng)計(jì)信息。
談到圖形化網(wǎng)絡(luò)流量監(jiān)控,相信大家都熟悉MRTG這個(gè)工具。這里介紹一個(gè)工具:ntop能夠更加直觀的將網(wǎng)絡(luò)使用量的情況和每個(gè)節(jié)點(diǎn)計(jì)算機(jī)的網(wǎng)絡(luò)帶寬使用詳細(xì)情況顯示出來。ntop提供以下一些功能:
1. 自動(dòng)從網(wǎng)絡(luò)中識(shí)別有用的信息;
2. 將截獲的數(shù)據(jù)包轉(zhuǎn)換成易于識(shí)別的格式;
3. 對網(wǎng)絡(luò)環(huán)境中的通訊失敗進(jìn)行分析;
4. 探測網(wǎng)絡(luò)環(huán)境下的通訊瓶頸;
5. 記錄網(wǎng)絡(luò)通信時(shí)間和過程。
ntop和MRTG相比它的安裝配置比較簡單,同時(shí)也可以和MRTG配合使用。目前市場上可網(wǎng)管型的交換機(jī)、路由器都支持SNMP協(xié)議,Ntop支持簡單網(wǎng)絡(luò)管理協(xié)議所以可以進(jìn)行網(wǎng)絡(luò)流量監(jiān)控。ntop幾乎可以監(jiān)測網(wǎng)絡(luò)上的所有協(xié)議: TCP/UDP/ICMP、(R)ARP、IPX、Telnet、DLC、Decnet、DHCP-BOOTP、AppleTalk、Netbios、TCP/UDP、FTP、HTTP、DNS、Telnet、SMTP/POP/IMAP、SNMP、NNTP、NFS、X11、SSH和基于P2P技術(shù)的協(xié)議eDonkey, Overnet, Bittorrent, Gnutella (Bearshare, Limewire,etc), (Kazaa, Imesh, Grobster)。Ntop在互動(dòng)模式下,ntop會(huì)將網(wǎng)絡(luò)的使用狀況顯示在使用者的終端機(jī)畫面上。在Web模式中,ntop會(huì)像Web Server一樣產(chǎn)生出內(nèi)含網(wǎng)絡(luò)使用狀況的網(wǎng)頁傳回到使用者的瀏覽器上。在http://www.ntop.org 可以下載最新的源代碼安裝使用。用ntop 監(jiān)測主機(jī)使用的網(wǎng)絡(luò)協(xié)議見圖5。
![]() |
圖5 圖形環(huán)境下監(jiān)測主機(jī)使用的網(wǎng)絡(luò)協(xié)議 |
總結(jié):本文從系統(tǒng)負(fù)載、進(jìn)程、內(nèi)存、中央處理器、IO、網(wǎng)絡(luò)、系統(tǒng)活動(dòng)以及整體性能。八個(gè)方面介紹了對Unix服務(wù)器進(jìn)行性能監(jiān)測的方法。雖然使用的操作系統(tǒng)是Solaris 10但是也可以應(yīng)用于其他Unix、BSD、Linux等操作系統(tǒng)。本文介紹了Unix系統(tǒng)的兩個(gè)最基本的問題:如何在不購買新硬件的條件下完成更多的工作?何時(shí)才真正需要添加硬件(更多的內(nèi)存,更快的磁盤、CPU以及網(wǎng)絡(luò)接口)?有時(shí)只需消除一些簡單的瓶頸即可解決許多性能問題 —— 但是要實(shí)現(xiàn)它,你必須充分了解自己的計(jì)算機(jī)和網(wǎng)絡(luò),從而找到真正的瓶頸所在。在預(yù)算短缺的今天,理解如何優(yōu)化系統(tǒng)性能比以往任何時(shí)候都重要。一味地投資并不是能夠讓人們接受的辦法 —— 并且也不一定生效。
2.mpstat
和top命令不同mpstat命令專門監(jiān)測CPU(包括多CPU)性能,下面是一個(gè)mpstat典型輸出:
![]() |
mpstat [-P {|ALL}] [internal [count]]
參數(shù)的含義如下:
-P {|ALL} 表示監(jiān)控哪個(gè)CPU, cpu在[0,cpu個(gè)數(shù)-1]中取值
internal 相鄰的兩次采樣的間隔時(shí)間
count 采樣的次數(shù),count只能和delay一起使用
當(dāng)沒有參數(shù)時(shí),mpstat則顯示系統(tǒng)啟動(dòng)以后所有信息的平均值。
八、使用GUI綜合工具
多數(shù)Linux和unix工程師都很熟悉sar、vmstat、iostat和netstat,另外還有一些針對專門廠商的工具也采用類似的格式。性能監(jiān)視器(sdtperfmeter)就是一種起源于Sun的著名工具。然而,要想使所有的資源在經(jīng)過線程優(yōu)化的并行應(yīng)用系統(tǒng)中具備順暢的響應(yīng)速度,就必須使用更為全面的性能監(jiān)控工具,而傳統(tǒng)的Unix工具集是不具備這一能力的。使用“性能監(jiān)視器”可以監(jiān)視工作站的活動(dòng)和性能。可以在該可定制窗口中以圖形方式顯示若干個(gè)性能參數(shù),如 CPU 利用率、磁盤活動(dòng)、網(wǎng)絡(luò)包,等等。您可以監(jiān)視本地主機(jī)或遠(yuǎn)程主機(jī)的性能,設(shè)置彩色的活動(dòng)閥值以在性能出現(xiàn)異常時(shí)向您發(fā)出警告,并將樣例記錄到文件中。
1.啟動(dòng)性能監(jiān)視器
單擊“前面板”上的“性能監(jiān)視器”控件。“性能監(jiān)視器”打開并顯示缺省圖表(CPU 和磁盤活動(dòng))。
2.選擇要顯示的主機(jī)和參數(shù)
選擇以進(jìn)行監(jiān)視的參數(shù)可能取決于: 所運(yùn)行的應(yīng)用程序類型;網(wǎng)絡(luò);您對 UNIX 進(jìn)程和系統(tǒng)裝入的了解程度。不熟悉系統(tǒng)參數(shù)的用戶通常選擇顯示 CPU 和磁盤使用情況。對于那些比較熟悉系統(tǒng)參數(shù)的用戶,典型設(shè)置是顯示 CPU 使用、磁盤使用、系統(tǒng)負(fù)載和包。如果擔(dān)心網(wǎng)絡(luò)通信擁塞,您可以顯示每秒鐘傳送的網(wǎng)絡(luò)包數(shù)目,并在運(yùn)行網(wǎng)絡(luò)密集型活動(dòng)(如因特網(wǎng)瀏覽或遠(yuǎn)程操作)時(shí)監(jiān)視此性能。如果“性能監(jiān)視器”指示 CPU 使用率很高,則可以使用“進(jìn)程管理器”來標(biāo)識(shí)和中止錯(cuò)誤的或 CPU 密集型的進(jìn)程。如果在運(yùn)行 CPU 密集型應(yīng)用程序時(shí)退出系統(tǒng),然后再登錄回系統(tǒng),則“性能監(jiān)視器”的 CPU 顯示可能表明 CPU 使用率非常高。意識(shí)到這一點(diǎn)后,可以使用“進(jìn)程管理器”來中止任何錯(cuò)誤的進(jìn)程。
3.指定要監(jiān)視的主機(jī)和參數(shù)
從“選項(xiàng)”菜單中選擇“設(shè)置”。“性能監(jiān)視器”顯示“設(shè)置”對話框。選擇“遠(yuǎn)程”單選按鈕以表明要鍵入遠(yuǎn)程主機(jī)的名稱。鍵入系統(tǒng)名稱(例如,jupiter)或遠(yuǎn)程主機(jī)的 IP 地址。數(shù)打開“查看”菜單以顯示可用參數(shù)的列表。每個(gè)參數(shù)都有一個(gè)復(fù)選框,用來表明當(dāng)前是否選定該參數(shù)以進(jìn)行顯示。選擇或撤消選擇相關(guān)的菜單項(xiàng)以顯示或移除任何參數(shù)。可以顯示任何參數(shù)組合。如圖6。
![]() |
圖6指定要監(jiān)視的主機(jī)和參數(shù) |
4.更改參數(shù)的閥值
從“選項(xiàng)”菜單中選擇“設(shè)置”。“性能監(jiān)視器”顯示“設(shè)置”對話框,對于每個(gè)參數(shù),該對話框中都包含一個(gè)“閥值“框。鍵入相關(guān)參數(shù)的新閥值,并單擊“應(yīng)用”。現(xiàn)在,底于新閥值的值將使用為低于閥值的值選擇的顏色來顯示,而高于該新閥值的值將使用為高于閥值的值選擇的顏色來顯示。表2是缺省閥值設(shè)置。
表 2缺省閥值設(shè)置
參數(shù) |
缺省閥值 |
CPU |
50% |
裝入 |
2 /秒 |
磁盤 |
20 /秒 |
頁 |
8 /秒 |
上下文 |
32 /秒 |
交換 |
2 /秒 |
中斷 |
50 /秒 |
包 |
16 /秒 |
沖突 |
2 /秒 |
錯(cuò)誤 |
2 /秒 |
![]() |
圖7顯示全部參數(shù)的性能監(jiān)視器 |
(結(jié)束)。