zoukankan      html  css  js  c++  java
  • Linux性能监控分析命令(三)—iostat命令介绍


    性能监控分析的命令包括如下:

    1、vmstat

    2、sar

    3、iostat

    4、top

    5、free

    6、uptime

    7、netstat

    8、ps

    9、strace

    10、lsof


    命令介绍:

    iostat是对系统的磁盘I/O操作进行监控,它的输出主要是显示磁盘读写操作的统计信息,同时给出CPU的使用情况。同vmstat一样,iostat不能对某个进程进行深入分析,仅对操作系统的整体情况进行分析。

    常用格式:

    iostat [-c | -d ] [-k | -m ] [-t] [-V] [-x] [device[…] | ALL] [-p [device | ALL ] ] [ interval [count] ]

    参数解释:

    -c:仅显示CPU统计信息,与-d选项互斥

    -d:仅显示磁盘统计信息,与-c选项互斥

    -k:以K为单位显示每秒的磁盘请求数,默认单位块。

    -p:device | ALL     

    与-x选项互斥,用于显示块设备及系统分区的统计信息,也可以在-p后指定一个设备名,如:iostat -p had

    或者显示所有的设备,如:iostat -p ALL

    -t:在输出数据时,打印搜集数据的时间

    -V:打印版本号和帮助信息

    -x 设备名:输出指定要统计的磁盘设备的扩展参数,默认为所有磁盘设备

    interval:指两次统计间隔时间

    -count:按照interval指定的时间间隔统计的次数


    常用监控场景:

    1、磁盘监控-扩展参数
    #iostat -x //显示所有磁盘信息
    #iostat -x 磁盘名 //显示指定磁盘的信息
    显示结果如下:

    各字段值解释:
    rrqm/s:每秒进行merge的读操作数目,即delta(rmerge)/s。
    wrqm/s:每秒进行merge的写操作数据,即delta(wmerge)/s.
    r/s:每秒完成的读I/O设备次数,即delta(rio)/s。
    w/s:每秒完成的写I/O设备次数,即delta(wio)/s。
    rsec/s:每秒读扇区数,即delta(rsect)/s
    wsec/s:每秒写扇区数,即delta(wsect)/s
    rkB/s:每秒读K字节数,是rsect/s的一半,因为每扇区大小为512字节
    wkB/s:每秒写K字节数,是wsect/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队列是非空的,即delta(use)/s/1000(因为use的单位为毫秒)
    2、CPU监控
    每个3秒监控一次,总共监控3次
    #iostat -c 3 3
    显示结果如下:

    各参数解释:

    %usr:用户进程消耗的CPU时间百分比

    %nice:运行正常进程消耗的CPU时间百分比

    %system:系统进程消耗的CPU时间百分比

    %iowait:I/O等待所占CPU时间百分比

    %steal:在内存紧张环境下,pagein强制对不同的页面进行的steal操作

    %idle:CPU空闲状态的时间百分比

    3、磁盘监控

    #iostat

    显示结果如下:

    各参数解释:
    tps:每秒从物理磁盘I/O的次数,多个逻辑请求会被合并为一个I/O磁盘请求,一次传输的大小是不确定的。
    Blk_read/s:每秒读取的数据块数
    Blk_wrtn/s:每秒写入的数据块数
    Blk_read:读取的所有块数
    Blk_wrtn:写入的所有块数
    4、常见用法
    iostat -d -k 1 10 #查看TPS和吞吐量信息
    iostat -d -x -k 1 10 #查看设备使用率(%util)、响应时间(await)
    iostat -c 1 10 # 查看CPU状态
    注意:
    1代表每隔多少秒检查一次;10代表检查的次数


    参考文档:

    https://www.cnblogs.com/ggjucheng/archive/2013/01/13/2858810.html

  • 相关阅读:
    利用百度轻松语音合成,语音识别
    python圆周率计算小程序(非常慢)
    python成语接龙小游戏
    在数组添加元素时报错:IndexError: list index out of range
    Redis-jedis的使用
    Shiro整合SpringMVC简单实例(一)
    容器
    防重提交功能(Token技术的引入)
    PageUtil
    单例设计模式
  • 原文地址:https://www.cnblogs.com/beginner-boy/p/8797001.html
Copyright © 2011-2022 走看看