通过Linux命令监控io案例
1.安装监控命令
yum install sysstat
2.输入iostat -d 3 5命令进行监控
如果KB_wrtn/s值很大,表示磁盘的写操作很频繁,可以考虑优化磁盘或者优化程序;如果KB_read/s值很大,表示磁盘直接读取操作很多,可以将读取的数据放入内存中进行操作。
3.输入iostat -d -x -k 1 1 命令进行监控
user: 在用户级行所使别运用的CPU的百分比. <60%
%nice: nice操作所使用的CPU的百分比.
%system: 在系统级别(kernel)运行所使用CPU的百分比. sy+us <80%
%iowait: IO等待所占用的cup时间(重要) <30% (不同功能的服务器不同)
%steal:丢失时间占用cpu 作为一个参考
%idle: CPU处于中断(空闲)状态的时间
注:一般来说%util持续游走在20%以下,瓶颈出现在cpu的性能层面。
%iowait高而%util在70%以上,瓶颈出现在i/o设备层面。
如果svctm比较接近await,说明I/O几乎没有等待时间;如果await远大于svctm,说明I/O队列太长,应用得到的响应时间变慢,如果响应时间超过了用户可以容许的范围,这时可以考虑更换更快的磁盘,md调整内核elevator算法,优化应用,或者升级CPU。