Linux系統sar命令解析


安裝

如果系統沒有該命令請安裝:

apt-get install sysstat
yum install sysstat

安裝完畢:

vi /etc/default/sysstat
ENABLED="true"

啟動這個工具來收集系統性能數據:

/etc/init.d/sysstat start

sar參數說明

-A 匯總所有的報告
-a 報告文件讀寫使用情況
-B 報告附加的緩存的使用情況
-b 報告緩存的使用情況
-c 報告系統調用的使用情況
-d 報告磁盤的使用情況
-g 報告串口的使用情況
-h 報告關於buffer使用的統計數據
-m 報告IPC消息隊列和信號量的使用情況
-n 報告命名cache的使用情況
-p 報告調頁活動的使用情況
-q 報告運行隊列和交換隊列的平均長度
-R 報告進程的活動情況
-r 報告沒有使用的內存頁面和硬盤塊
-u 報告CPU的利用率
-v 報告進程、i節點、文件和鎖表狀態
-w 報告系統交換活動狀況
-y 報告TTY設備活動狀況

sar使用建議

懷疑CPU存在瓶頸 

sar -u 
sar -q 

懷疑內存存在瓶頸 

sar -B
sar -r
sar -W 

懷疑I/O存在瓶頸

sar -b
sar -u
sar -d 

查看CPU使用率

sar -u 1 3

打印cpu使用率情況每秒打印一次,打印3次結束。

[root@IT-2 bin]# sar -u 1 3
Linux 2.6.32-504.el6.x86_64 (IT-2)      2015年11月05日  _x86_64_        (1 CPU)

17時13分28秒     CPU     %user     %nice   %system   %iowait    %steal     %idle
17時13分29秒     all      6.12      0.00      3.06      0.00      0.00     90.82
17時13分30秒     all      5.10      0.00      3.06      0.00      0.00     91.84
17時13分31秒     all      7.14      0.00      2.04      0.00      0.00     90.82
平均時間:     all      6.12      0.00      2.72      0.00      0.00     91.16

各列的指標分別是:
%user
用戶模式下消耗的CPU時間的比例;
%nice
通過nice改變了進程調度優先級的進程,在用戶模式下消耗的CPU時間的比例
%system
系統模式下消耗的CPU時間的比例;
%iowait
CPU等待磁盤I/O導致空閑狀態消耗的時間比例;
%steal
利用Xen等操作系統虛擬化技術,等待其它虛擬CPU計算占用的時間比例;
%idle
CPU空閑時間比例;

查看平均負載

sar -q

查看運行隊列中的進程數、系統上的進程大小、平均負載。

[root@IT-2 bin]# sar -q 1 3
Linux 2.6.32-504.el6.x86_64 (IT-2)      2015年11月05日  _x86_64_        (1 CPU)

17時16分42秒   runq-sz  plist-sz   ldavg-1   ldavg-5  ldavg-15
17時16分43秒         4       338      0.00      0.00      0.00
17時16分44秒         4       338      0.00      0.00      0.00
17時16分45秒         4       338      0.00      0.00      0.00
平均時間:         4       338      0.00      0.00      0.00

runq-sz:運行隊列的長度(等待運行的進程數)
plist-sz:進程列表中進程(processes)和線程(threads)的數量
ldavg-1:最后1分鍾的系統平均負載
ldavg-5:過去5分鍾的系統平均負載
ldavg-15:過去15分鍾的系統平均負載

查看內存使用狀況

sar -r
可查看物理內存使用狀況。

[root@IT-2 bin]# sar -r 1 3
Linux 2.6.32-504.el6.x86_64 (IT-2)      2015年11月05日  _x86_64_        (1 CPU)

17時18分11秒 kbmemfree kbmemused  %memused kbbuffers  kbcached  kbcommit   %commit
17時18分12秒    328708   1593664     82.90     35708    254300   2193348     26.70
17時18分13秒    328708   1593664     82.90     35716    254296   2193348     26.70
17時18分14秒    328708   1593664     82.90     35716    254300   2193348     26.70
平均時間:    328708   1593664     82.90     35713    254299   2193348     26.70

kbmemfree:這個值和free命令中的free值基本一致,所以它不包括buffer和cache的空間.
kbmemused:這個值和free命令中的used值基本一致,所以它包括buffer和cache的空間.
%memused:物理內存使用率,這個值是kbmemused和內存總量(不包括swap)的一個百分比.
kbbuffers和kbcached:這兩個值就是free命令中的buffer和cache.
kbcommit:保證當前系統所需要的內存,即為了確保不溢出而需要的內存(RAM+swap).
%commit:這個值是kbcommit與內存總量(包括swap)的一個百分比.

查看頁面交換發生狀況

sar -W
頁面發生交換時,服務器的吞吐量會大幅下降;服務器狀況不良時,如果懷疑因為內存不足而導致了頁面交換的發生,可以使用這個命令來確認是否發生了大量的交換;

[root@IT-2 bin]# sar -W 1 3
Linux 2.6.32-504.el6.x86_64 (IT-2)      2015年11月05日  _x86_64_        (1 CPU)

17時18分55秒  pswpin/s pswpout/s
17時18分56秒      0.00      0.00
17時18分57秒      0.00      0.00
17時18分58秒      0.00      0.00
平均時間:      0.00      0.00

pswpin/s:每秒系統換入的交換頁面(swap page)數量
pswpout/s:每秒系統換出的交換頁面(swap page)數量

 


免責聲明!

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



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