sar(System Activity Reporter)是目前最全面的系統(tǒng)分析工具,可以全面的測評linux系統(tǒng)的文件的讀寫、系統(tǒng)調(diào)用、I/O、CPU效率、內(nèi)存使用、進(jìn)程活動及IPC有關(guān)的參數(shù)。 Linux sar命令安裝方法:一般我們使用的vps安裝包中是沒有安裝該組件的。 上述命令在centos中安裝。安裝后我們需要等待一段時間才可以有數(shù)據(jù)反映出來。使用下面的命令格式。 - sar [options] [-A] [-o file] t [n]
復(fù)制代碼其中:
t為采樣間隔,n為采樣次數(shù),默認(rèn)值是1;
-o file表示將命令結(jié)果以二進(jìn)制格式存放在文件中,file 是文件名。 options 為命令行選項,sar命令常用選項如下: -A:所有報告的總和
-u:輸出CPU使用情況的統(tǒng)計信息
-v:輸出inode、文件和其他內(nèi)核表的統(tǒng)計信息
-d:輸出每一個塊設(shè)備的活動信息
-r:輸出內(nèi)存和交換空間的統(tǒng)計信息
-b:顯示I/O和傳送速率的統(tǒng)計信息
-a:文件讀寫情況
-c:輸出進(jìn)程統(tǒng)計信息,每秒創(chuàng)建的進(jìn)程數(shù)
-R:輸出內(nèi)存頁面的統(tǒng)計信息
-y:終端設(shè)備活動情況
-w:輸出系統(tǒng)交換活動信息
范例之一,CPU性能測試:每10秒采樣一次,連續(xù)采樣3次 - [root@li413-187 /]# sar -u 10 3
- Linux 3.6.5-linode47 (li413-187) 12/25/2012 _i686_ (4 CPU)
- 02:28:14 PM CPU %user %nice %system %iowait %steal %idle
- 02:28:24 PM all 0.00 0.00 0.03 0.00 0.00 99.97
- 02:28:34 PM all 0.00 0.00 0.00 0.00 0.00 100.00
- 02:28:44 PM all 0.00 0.00 0.00 0.00 0.00 100.00
- Average: all 0.00 0.00 0.01 0.00 0.00 99.99
復(fù)制代碼說明內(nèi)容:
CPU:all 表示統(tǒng)計信息為所有 CPU 的平均值。
%user:顯示在用戶級別(application)運行使用 CPU 總時間的百分比。
%nice:顯示在用戶級別,用于nice操作,所占用 CPU 總時間的百分比。
%system:在核心級別(kernel)運行所使用 CPU 總時間的百分比。
%iowait:顯示用于等待I/O操作占用 CPU 總時間的百分比。
%steal:管理程序(hypervisor)為另一個虛擬進(jìn)程提供服務(wù)而等待虛擬 CPU 的百分比。
%idle:顯示 CPU 空閑時間占用 CPU 總時間的百分比。
1. 若 %iowait 的值過高,表示硬盤存在I/O瓶頸
2. 若 %idle 的值高但系統(tǒng)響應(yīng)慢時,有可能是 CPU 等待分配內(nèi)存,此時應(yīng)加大內(nèi)存容量
3. 若 %idle 的值持續(xù)低于1,則系統(tǒng)的 CPU 處理能力相對較低,表明系統(tǒng)中最需要解決的資源是CPU。 范例之二,I/O和傳送速率監(jiān)控:每10秒采樣一次,連續(xù)采樣3次,報告緩沖區(qū)的使用情況 [root@li413-187 /]# sar -b 10 3
Linux 3.6.5-linode47 (li413-187) 12/25/2012 _i686_ (4 CPU)
02:34:59 PM tps rtps wtps bread/s bwrtn/s
02:35:09 PM 0.00 0.00 0.00 0.00 0.00
02:35:19 PM 0.00 0.00 0.00 0.00 0.00
02:35:29 PM 0.00 0.00 0.00 0.00 0.00
Average: 0.00 0.00 0.00 0.00 0.00
輸出項說明:
tps:每秒鐘物理設(shè)備的 I/O 傳輸總量
rtps:每秒鐘從物理設(shè)備讀入的數(shù)據(jù)總量
wtps:每秒鐘向物理設(shè)備寫入的數(shù)據(jù)總量
bread/s:每秒鐘從物理設(shè)備讀入的數(shù)據(jù)量,單位為 塊/s
bwrtn/s:每秒鐘向物理設(shè)備寫入的數(shù)據(jù)量,單位為 塊/s
范例之三,進(jìn)程隊列長度和平均負(fù)載狀態(tài)監(jiān)控:每10秒采樣一次,連續(xù)采樣3次,監(jiān)控進(jìn)程隊列長度和平均負(fù)載狀態(tài) [root@li413-187 /]# sar -q 10 3
Linux 3.6.5-linode47 (li413-187) 12/25/2012 _i686_ (4 CPU)
02:36:46 PM runq-sz plist-sz ldavg-1 ldavg-5 ldavg-15
02:36:56 PM 0 98 0.00 0.01 0.05
02:37:06 PM 0 98 0.00 0.01 0.05
02:37:16 PM 0 98 0.00 0.01 0.05
Average: 0 98 0.00 0.01 0.05
輸出項說明:
runq-sz:運行隊列的長度(等待運行的進(jìn)程數(shù))
plist-sz:進(jìn)程列表中進(jìn)程(processes)和線程(threads)的數(shù)量
ldavg-1:最后1分鐘的系統(tǒng)平均負(fù)載(System load average)
ldavg-5:過去5分鐘的系統(tǒng)平均負(fù)載
ldavg-15:過去15分鐘的系統(tǒng)平均負(fù)載
因為我用的Linode測試的,這臺機器上沒有安裝網(wǎng)站,所以數(shù)據(jù)比較小,這里只演示命令,沒有對VPS性能進(jìn)行測評
|