linux----分析磁盘i/o---top iostat iotop

论坛 期权论坛 编程之家     
选择匿名的用户   2021-6-2 20:43   950   0

top命令

iostat

iotop

1. 用top命令查看:

分析:查看0.1%wa这里,IO等待所占用的CPU时间的百分比,高过30%时IO压力高

2,先用iostat查看磁盘io 是否读写负载很高

iostat -x 1 10 (10次)

如果 iostat 没有,要 yum install sysstat安装这个包,如果%util接近100%,表明I/O请求太多,I/O系统已经满负荷,磁盘可能存在瓶颈,一般%util大于70%,I/O压力就比较大,读取速度有较多的wait

其他的参数:

rrqm/s:每秒进行merge的读操作数目。即delta(rmerge)/s
wrqm/s:每秒进行merge的写操作数目。即delta(wmerge)/s
r/s:每秒完成的读I/O设备次数。即delta(rio)/s
w/s:每秒完成的写I/0设备次数。即delta(wio)/s
rsec/s:每秒读扇区数。即delta(rsect)/s
wsec/s:每秒写扇区数。即delta(wsect)/s
rKB/s:每秒读K字节数。是rsec/s的一半,因为每扇区大小为512字节

wKB/s:每秒写K字节数。是wsec/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队列是非空的

3,查找出使用io高的进程的工具 iotop

yum install iotop -y

直接执行 iotop 命令,然后看下图的显示,查看那个进程的读写,找出进程

注:DISK TEAD:n=磁盘读/每秒 DISK WRITE:n=磁盘写/每秒。

注:红框的可查看磁盘的读写速率,下面可以看到使用的io。


  • # 查看当前磁盘IO 读写
  • sar -b 1 10
  • 注:每1秒 显示 1次 显示 10次
19时54分35秒       tps      rtps      wtps   bread/s   bwrtn/s
19时54分36秒      0.00      0.00      0.00      0.00      0.00
19时54分37秒      0.00      0.00      0.00      0.00      0.00
平均时间:        0.00      0.00      0.00      0.00      0.00

分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:3875789
帖子:775174
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP