ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

iostat命令介绍

2021-07-10 21:31:47  阅读:260  来源: 互联网

标签:kB KB iostat 介绍 每秒 命令 时间 CPU


1. 概述

iostat主要用于输出磁盘IO和CPU的统计信息,是一个实时监控的命令。

2. 用法

  • 命令格式:
    iostat [选项] [时间间隔] [次数]

  • 比如:
    iostat [选项] 1 5,意思是每秒输出5次执行选项的结果。

  • 选项参数:

    • -c: 显示CPU使用情况
    • -d: 显示磁盘使用情况
    • -N: 显示磁盘阵列(LVM) 信息
    • -n: 显示NFS 使用情况
    • -k: 以 KB 为单位显示
    • -m: 以 M 为单位显示
    • -t: 报告每秒向终端读取和写入的字符数和CPU的信息
    • -V: 显示版本信息
    • -x: 显示详细信息
    • -p:显示磁盘和分区的情况

3. 示例

3.1 不加选项

不加任何选项和时间,执行iostat命令,执行结果如下所示,命令执行结果是系统开机到现在各项性能指标的平均值。

[root@localhost01 ~]# iostat
Linux 3.10.0-957.el7.x86_64 (localhost01) 	2021年07月10日 	_x86_64_	(4 CPU)

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           0.21    0.00    0.72    0.13    0.00   98.94

Device:            tps    kB_read/s    kB_wrtn/s    kB_read    kB_wrtn
scd0              0.00         0.05         0.00       1050          0
sda               1.64        34.05         2.98     722346      63264

介绍一下每一部分的意义:

  • 第一部分:系统版本、主机名、当前日期、CPU数;
  • 第二部分avg-cpu :表示总体CPU使用情况统计信息,对于多核CPU,这里为所有CPU的平均值,时间范围为从开机到当前时刻的系统CPU信息,具体每列意义如下:
    • %user CPU在用户态执行进程的时间百分比
    • %nice CPU在用户态模式下,用于nice操作,所占用CPU总时间的百分比
    • %system CPU处在内核态执行进程的时间百分比
    • %iowait CPU用于等待I/O操作占用CPU总时间的百分比
    • %steal 管理程序(hypervisor)为另一个虚拟进程提供服务而等待虚拟CPU的百分比
    • %idle CPU空闲时间百分比
  • 第三部分:
    • device 磁盘名称
    • tps 每秒钟发送到的I/O请求数
    • kB_read/s 每秒读的数量,以KB为单位
    • kB_wrtn/s 每秒写的数量,以KB为单位
    • kB_wrtn/s 取样时间间隔内读的总数量,以KB为单位
    • kB_read 取样时间间隔内写的总数量,以KB为单位

注意

  • (kb_writn+kb_read)/tps=每个IO大小,如果计算值大于60K,一般认为属于大IO;
  • 小IO用IOPS(每秒处理IO数目)衡量,大IO用带宽衡量;
  • 一般情况下,若user%+sys%<70%,认为系统性能较好,若>=90%则认为性能非常不好,若处于中间范围,认为系统性能不好。

3.2 指定采样信息、采样时间间隔与次数

  • iostat 1 5 间隔1秒,总共显示5次
  • iostat -d 2 每隔2秒,显示一次磁盘使用情况统计信息
  • iostat -x sda 2 3 每隔2秒显示一次sda设备的扩展统计信息,共输出3次
  • iostat -m以M为单位显示所有信息
  • iostat -d -x -k 1 1 每隔1秒采样,共采样1次,输出磁盘的详细信息,以KB为单位,查询信息如下:
    在这里插入图片描述
    上图的每列属性如下;
  • rrqm/s: 每秒进行 merge 的读操作数目。即 rmerge/s;
  • wrqm/s: 每秒进行 merge 的写操作数目。即 wmerge/s;
  • r/s: 每秒完成的读 I/O 设备次数。即 rio/s;
  • w/s: 每秒完成的写 I/O 设备次数。即 wio/s;
  • rkB/s: 每秒读K字节数。是 rsect/s 的一半,因为每扇区大小为512字节;
  • wkB/s: 每秒写K字节数。是 wsect/s 的一半;
  • avgrq-sz: 平均每次设备I/O操作的数据大小 (扇区);
  • avgqu-sz: 平均I/O队列长度;
  • rsec/s: 每秒读扇区数。即 rsect/s;
  • wsec/s: 每秒写扇区数。即 wsect/s;
  • r_await:每个读操作平均所需的时间,不仅包括硬盘设备读操作的时间,还包括了在kernel队列中等待的时间;
  • w_await:每个写操作平均所需的时间,不仅包括硬盘设备写操作的时间,还包括了在kernel队列中等待的时间;
  • await: 平均每次设备I/O操作的等待时间 (毫秒);
  • svctm: 平均每次设备I/O操作的服务时间 (毫秒);
  • %util: 一秒中有百分之多少的时间用于 I/O 操作,即被io消耗的cpu百分比。

标签:kB,KB,iostat,介绍,每秒,命令,时间,CPU
来源: https://blog.csdn.net/weixin_45727931/article/details/118640153

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有