您的位置:首页 > 运维架构 > Linux

Linux之iostat命令详解

2017-10-25 10:00 791 查看

功能

  查看磁盘IO情况,只能查看系统整体的IO消耗,无法查看每个进程的IO消耗(iotop命令);

语法

  iostat [选项][参数]

常用选项:

-k:显示状态以千字节每秒为单位,而不使用块每秒;

-m:显示状态以兆字节每秒为单位;

-d:显示扩展参数;

参数:

间隔时间:每次报告的间隔时间(秒);

次数:显示报告的次数;

IO详情

  rrqm/s: 每秒对该设备的读请求被合并次数,文件系统会对读取同块(block)的请求进行合并;

  wrqm/s: 每秒对该设备的写请求被合并次数;

  r/s: 每秒完成的读次数;

  w/s: 每秒完成的写次数;

  rkB/s: 每秒读数据量(kB为单位);

  wkB/s: 每秒写数据量(kB为单位);

  avgrq-sz:平均每次IO操作的数据量(扇区数为单位);

  avgqu-sz: 平均等待处理的IO请求队列长度;

  await: 平均每次IO请求等待时间(包括等待时间和处理时间,毫秒为单位);

  svctm: 平均每次IO请求的处理时间(毫秒为单位);

  %util: 一个周期内用于IO操作的时间比率,即IO队列非空的时间比率;

问题分析

如果 %util 接近 100%,说明产生的I/O请求太多,I/O系统已经满负荷,该磁盘可能存在瓶颈;

如果 svctm 比较接近 await,说明 I/O 几乎没有等待时间;

如果 await 远大于 svctm,说明I/O 队列太长,io响应太慢,则需要进行必要优化;

如果avgqu-sz比较大,也表示有当量io在等待;

磁盘性能

  指标1: IOPS=r/s+w/s,即每秒读写次数;

  指标2: 吞吐量=rkB/s+wkB/s,即每秒读写数据量;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  linux 磁盘