• Linux iostat 命令用法


    # man iostat
    

    NAME

    iostat - Report Central Processing Unit (CPU) statistics and input/output statistics for devices and partitions.
    报告CPU及输入、输出设备及分区的状态。

    SYNOPSIS
    iostat [ -c ] [ -d ] [ -h ] [ -k | -m ] [ -N ] [ -t ] [ -V ] [ -x ] [ -y ] [ -z ] [ -j { ID | LABEL | PATH | UUID | ... } ] [ [ -T ] -g group_name ] [ -p [ device [,...] | ALL ] ] [ device
    [...] | ALL ] [ interval [ count ] ]


    实例:

    1、显示 CPU 及 I/O 设备相关信息(仅显示1次):

    # iostat
    

    2、每隔3秒钟显示一次 CPU 及 IO 设备相关信息,直到按 Ctrl+C 键终止。

    # iostat 3
    

    3、每隔3秒钟显示一次 CPU 及 IO 设备相关信息,显示2次后终止。

    # iostat 3 2
    

    4、显示 CPU 相关信息:

    # iostat -c
    

    参数释义:

    %user:用户程序消耗 CPU 资源的百分比。
    %nice:拥有最高优先级的用户程序,消耗 CPU 资源的百分比。
    %system:系统进程消耗 CPU 资源的百分比。
    %iowait:当硬盘有I/O请求等待时,空闲CPU的比例。
    %steal:当CPU管理程序处理一个虚拟CPU,其它的一个或者一组虚拟CPU无意识的消耗等待,所消耗的比例。
    %idle:当硬盘没有I/O请求时,空闲CPU的比例。


    5、显示 I/O 设备信息:

    # iostat -d
    # iostat -d vdb
    

    参数释义:

    tps(transfers per second):该设备每秒钟传输(I/O请求)的次数。
    kB_read/s:每秒从设备(drive expressed)读取的数据量(Kilobytes);
    kB_wrtn/s:每秒向设备(drive expressed)写入的数据量(Kilobytes);
    kB_read:读取的总数据量(Kilobytes);
    kB_wrtn:写入的总数量数据量(Kilobytes);

    6、显示 I/O 设备及子设备信息:

    # iostat -p
    # iostat -p vdb
    

    7、显示 I/O 设备扩展信息。

    # iostat -x
    # iostat -x vdb
    

    参数释义:

    rrqm/s:该设备每秒钟有多少读取请求被 Merge 处理。
    wrqm/s:该设备每秒钟有多少写入请求被 Merge 处理。
    当系统调用需要读取数据的时候,VFS将请求发到各个FS,如果FS发现不同的读取请求读取的是相同Block的数据,FS会将这个请求合并Merge
    r/s:该设备每秒钟有多少读请求(Merge处理之后的)处理完成。
    w/s:该设备每秒钟有多少写请求(Merge处理之后的)处理完成。
    rsec/s (rkB/s, rMB/s): 该设备每秒钟读取的扇区数(B/KB/MB)。
    rsec/s (rkB/s, rMB/s): 该设备每秒钟写入的扇区数(B/KB/MB)。
    avgrq-sz:平均请求扇区的大小
    avgqu-sz:是平均请求队列的长度。毫无疑问,队列长度越短越好。
    await:每一个IO请求的处理的平均时间(单位是毫秒)。
    这里可以理解为IO的响应时间,一般地系统IO响应时间应该低于5ms,如果大于10ms就比较大了。
    这个时间包括了队列时间和服务时间,也就是说,一般情况下,await大于svctm,它们的差值越小,则说明队列时间越短,反之差值越大,队列时间越长,说明系统出了问题。
    r_await:每一个读请求的处理的平均时间(单位是毫秒)。
    w_await:每一个写请求的处理的平均时间(单位是毫秒)。
    svctm:表示平均每次设备I/O操作的服务时间(以毫秒为单位)。
    如果svctm的值与await很接近,表示几乎没有I/O等待,磁盘性能很好,如果await的值远高于svctm的值,则表示I/O队列等待太长,系统上运行的应用程序将变慢。
    %util:在统计时间内所有处理IO时间,除以总共统计时间。
    例如,如果统计间隔1秒,该设备有0.8秒在处理IO,而0.2秒闲置,那么该设备的%util = 0.8/1 = 80%,所以该参数暗示了设备的繁忙程度。
    一般地,如果该参数是100%表示设备已经接近满负荷运行了(当然如果是多磁盘,即使%util是100%,因为磁盘的并发能力,所以磁盘使用未必就到了瓶颈)。

    扩展:查询 iostat 查询到的 dm-* 所对应的设备: 

    # ls -l /dev/mapper/
    total 0
    crw-rw---- 1 root root 10, 58 May 18 06:47 control
    lrwxrwxrwx 1 root root      7 Jun  8 12:15 mpatha -> ../dm-2
    lrwxrwxrwx 1 root root      7 May 18 06:47 vg_centos-lv_root -> ../dm-0
    lrwxrwxrwx 1 root root      7 May 18 06:47 vg_centos-lv_swap -> ../dm-1
    

      

    [THE END]

    参考文档:https://www.cnblogs.com/ggjucheng/archive/2013/01/13/2858810.html

  • 相关阅读:
    Windows:C:WindowsSystem32driversetchosts
    Quartz:Cron Expressions
    RabbitMQ:基本命令
    架构:一致性
    Javascript:自己写异步流程编程框架
    Python:Hello World级别的SimpleDb
    架构:互联网架构
    数据访问:三大范式
    数据访问:Implementing Efficient Transactions
    技术人生:special considerations that are very important
  • 原文地址:https://www.cnblogs.com/configure/p/15012173.html
Copyright © 2020-2023  润新知