安裝
yum install -y sysstat
sar -d 1 1
字段 | 說明 |
---|---|
rrqm/s | 每秒進行 merge 的讀操作數目。即 delta(rmerge)/s |
wrqm/s | 每秒進行 merge 的寫操作數目。即 delta(wmerge)/s |
r/s | 每秒完成的讀 I/O 設備次數。即 delta(rio)/s |
w/s | 每秒完成的寫 I/O 設備次數。即 delta(wio)/s |
rsec/s | 每秒讀扇區數。即 delta(rsect)/s |
wsec/s | 每秒寫扇區數。即 delta(wsect)/s |
rkB/s | 每秒讀K字節數。是 rsect/s 的一半,因為每扇區大小為512字節。(需要計算) |
wkB/s | 每秒寫K字節數。是 wsect/s 的一半。(需要計算) |
avgrq-sz | 平均每次設備I/O操作的數據大小 (扇區)。delta(rsect+wsect)/delta(rio+wio) |
avgqu-sz | 平均I/O隊列長度。即 delta(aveq)/s/1000 (因為aveq的單位為毫秒)。 |
await | 平均每次設備I/O操作的等待時間 (毫秒)。即 delta(ruse+wuse)/delta(rio+wio) |
svctm | 平均每次設備I/O操作的服務時間 (毫秒)。即 delta(use)/delta(rio+wio) |
%util | 一秒中有百分之多少的時間用于 I/O 操作,或者說一秒中有多少時間 I/O 隊列是非空的。即 delta(use)/s/1000 (因為use的單位為毫秒) |
如果 %util 接近 100%,說明產生的I/O請求太多,I/O系統已經滿負荷,該磁盤
可能存在瓶頸。
idle小于70% IO壓力就較大了,一般讀取速度有較多的wait.
同時可以結合vmstat 查看查看b參數(等待資源的進程數)和wa參數(IO等待所占用的CPU時間的百分比,高過30%時IO壓力高)
另外還可以參考
svctm 一般要小于 await (因為同時等待的請求的等待時間被重復計算了),svctm 的大小一般和磁盤性能有關,CPU/內存的負荷也會對其有影響,請求過多也會間接導致 svctm 的增加。await 的大小一般取決于服務時間(svctm) 以及 I/O 隊列的長度和 I/O 請求的發出模式。如果 svctm 比較接近 await,說明 I/O 幾乎沒有等待時間;如果 await 遠大于 svctm,說明 I/O 隊列太長,應用得到的響應時間變慢,如果響應時間超過了用戶可以容許的范圍,這時可以考慮更換更快的磁盤,調整內核 elevator 算法,優化應用,或者升級 CPU。
隊列長度(avgqu-sz)也可作為衡量系統 I/O 負荷的指標,但由于 avgqu-sz 是按照單位時間的平均值,所以不能反映瞬間的 I/O 洪水。
在命令行方式下,如何查看CPU、內存的使用情況,網絡流量和磁盤I/O?
Q: 在命令行方式下,如何查看CPU、內存的使用情況,網絡流量和磁盤I/O?
A: 在命令行方式下,
命令 | 說明 |
---|---|
vmstat 5 | 查看CPU使用情況的命令,每5秒刷新一次,最右側有CPU的占用率的數據 |
top | top 然后按Shift+P,按照進程處理器占用率排序 |
free | 查看內存使用情況的命令,top 然后按Shift+M, 按照進程內存占用率排序 |
iptraf -g | 查看網絡流量,可以用工具iptraf工具, |
date; ifconfig eth1 | 針對某個Interface的網絡流量可以通過比較兩個時間網絡接口的RX和TX數據來獲得 |
date; ifconfig eth1 date; ifconfig eth1 | 針對某個Interface的網絡流量可以通過比較兩個時間網絡接口的RX和TX數據來獲得 |
iostat -d -x /dev/sdc3 2 | 4. 查看磁盤i/o |
vmstat 2 | 用iostat查看磁盤/dev/sdc3的磁盤i/o情況,每兩秒刷新一次 |
用vmstat查看io部分的信息procs:
命令 | 說明 |
---|---|
r–> | 在運行隊列中等待的進程數 |
b–> | 在等待io的進程數 |
w–> | 可以進入運行隊列但被替換的進程 |
memoy
swap–>;現時可用的交換內存(k表示)
free–>;空閑的內存(k表示)
pages
re--》回收的頁面
mf--》非嚴重錯誤的頁面
pi--》進入頁面數(k表示)
po--》出頁面數(k表示)
fr--》空余的頁面數(k表示)
de--》提前讀入的頁面中的未命中數
sr--》通過時鐘算法掃描的頁面
disk 顯示每秒的磁盤操作。 s表示scsi盤,0表示盤號
fault 顯示每秒的中斷數
in--》設備中斷
sy--》系統中斷
cy--》cpu交換
cpu 表示cpu的使用狀態
cs--》用戶進程使用的時間
sy--》系統進程使用的時間
id--》cpu空閑的時間
其中:
如果 r經常大于 4 ,且id經常少于40,表示cpu的負荷很重。
如果pi,po 長期不等于0,表示內存不足。
如果disk 經常不等于0, 且在 b中的隊列 大于3, 表示 io性能不好。