linux性能监控:IO性能监控命令之iostat命令

简介: linux性能监控:IO性能监控命令之iostat命令

640.jpg


内存监控命令之iostat命令


1概述:


iostat是I/O statistics(输入/输出统计)的缩写,iostat工具将对系统的磁盘操作活动进行监视。它的特点是汇报磁盘活动统计情况,同时也会汇报出CPU使用情况。iostat也有一个弱点,就是它不能对某个进程进行深入分析,仅对系统的整体情况进行分析


2安装方法:


iostat属于sysstat软件包。可以直接安装。  yum install sysstat


3常用命令格式

iostat [参数] [时间] [次数]


4命令参数:


-c 显示CPU使用情况 -d 显示磁盘使用情况 -k 以K为单位显示 -m 以M为单位显示 -N 显示磁盘阵列(LVM) 信息 -n 显示NFS使用情况 -p 可以报告出每块磁盘的每个分区的使用情况 -t 显示终端和CPU的信息 -x 显示详细信息

5使用实例:


01

实例1:

显示所有设备负载情况

命令:

iostat

输出:


640.png

说明:

avg-cpu段:
%user: 在用户级别运行所使用的CPU的百分比.
%nice: nice操作所使用的CPU的百分比.
%sys: 在系统级别(kernel)运行所使用CPU的百分比.
%iowait: CPU等待硬件I/O时,所占用CPU百分比.
%idle: CPU空闲时间的百分比.
Device段:
tps: 每秒钟发送到的I/O请求数.
KB_read /s: 每秒读取的数据量.
KB_wrtn/s: 每秒写入的数据量.
KB_read:   读入的数据总量.
KB_wrtn:  写入的数据总量.


注意:

如果%iowait的值过高,表示硬盘存在I/O瓶颈

如果%idle值高,表示CPU较空闲

如果%idle值高但系统响应慢时,可能是CPU等待分配内存,应加大内存容量。

如果%idle值持续低于10,表明CPU处理能力相对较低,系统中最需要解决的资源是CPU。


02

实例2:

定时显示所有信息

命令:每隔2秒刷新显示,显示4次

iostat 2 4

输出:

640.png

03

实例3:

显示指定磁盘信息

命令:

iostat -d /dev/sda

输出:

640.png

04

实例4:

查看设备使用率(%util)、响应时间(await)

命令:

iostat -d -x -k  1 1

输出:


640.png

说明:

rrqm/s:每秒这个设备相关的读取请求有多少被Merge了(当系统调用需要读取数据的时候,VFS将请求发到各个FS,如果FS发现不同的读取请求读取的是相同Block的数据,FS会将这个请求合并Merge);
wrqm/s:每秒这个设备相关的写入请求有多少被Merge了。
r/s:每秒读取的扇区数;
w/s:每秒写入的扇区数。
rKB/s:每秒向设备发出的读取请求数;wKB/s:每秒向设备发出的写请求数;
avgrq-sz: 平均请求扇区的大小
avgqu-sz: 是平均请求队列的长度。毫无疑问,队列长度越短越好。
r_await: io请求读取处理的平均时间
w_await:io请求写入处理的平均时间
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%,因为磁盘的并发能力,所以磁盘使用未必就到了瓶颈)。

05

实例5:

查看cpu状态

命令:

iostat -c 1 1

输出:


640.png

6常见用法: 

iostat -d -k 1 10   #查看TPS和吞吐量信息(磁盘读写速度单位为KB)
iostat -d -m 2      #查看TPS和吞吐量信息(磁盘读写速度单位为MB)
iostat -d -x -k 1 10 #查看设备使用率(%util)、响应时间(await)
iostat -c 1 10 #查看cpu状态


相关文章
|
2天前
|
监控 Linux Windows
50个必知的Linux命令技巧,你都掌握了吗?(下)
50个必知的Linux命令技巧,你都掌握了吗?(下)
|
2天前
|
Linux Shell Windows
Linux 常用基本命令
Linux 常用基本命令
|
3天前
|
Ubuntu Linux Shell
linux免交互登陆远程主机并执行命令(密钥对和Expect)
linux免交互登陆远程主机并执行命令(密钥对和Expect)
|
3天前
|
Linux
【Linux】常用命令
【Linux】常用命令
24 0
|
2月前
|
缓存 监控 Unix
性能监控之 Linux 命令 top、vmstat、iostat、free、iftop 基础
【2月更文挑战第9天】性能监控之 Linux 命令 top、vmstat、iostat、free、iftop 基础
60 5
性能监控之 Linux 命令 top、vmstat、iostat、free、iftop 基础
|
5月前
|
监控 Linux
Linux 安装性能监控检测工具sysstat
Linux 安装性能监控检测工具sysstat
54 0
|
8月前
|
监控 Linux Shell
Linux 服务器 性能监控脚本
Linux 性能监控 shell 脚本
231 0
|
8月前
|
存储 监控 网络协议
[Linux命令]21个Linux常用命令(磁盘存储、性能监控和优化、网络和其他命令)(下)
[Linux命令]21个Linux常用命令(磁盘存储、性能监控和优化、网络和其他命令)(下)
|
8月前
|
存储 监控 网络协议
[Linux命令]21个Linux常用命令(磁盘存储、性能监控和优化、网络和其他命令)(上)
[Linux命令]21个Linux常用命令(磁盘存储、性能监控和优化、网络和其他命令)
|
9月前
|
缓存 监控 关系型数据库
Linux性能监控与调优工具
Linux性能监控与调优工具
158 0