Linux 零碎中的 iostat 是 I /O statistics(输出 / 输入统计)的缩写,iostat 工具将对系统的磁盘操作流动进行监督。它的特点是汇报磁盘流动统计状况,同时也会汇报出 CPU 应用状况。同 vmstat 一样,iostat 也有一个弱点,就是它不能对某个过程进行深入分析,仅对系统的整体状况进行剖析。iostat 属于 sysstat 软件包。能够用 yum install sysstat 间接装置。
命令格局
iostat[参数][工夫][次数]
命令性能
通过 iostat 不便查看 CPU、网卡、tty 设施、磁盘、CD-ROM 等等设施的流动状况, 负载信息。
命令参数
- -C 显示 CPU 应用状况
- -d 显示磁盘应用状况
- -k 以 KB 为单位显示
- -m 以 M 为单位显示
- -N 显示磁盘阵列(LVM) 信息
- -n 显示 NFS 应用状况
- -p[磁盘] 显示磁盘和分区的状况
- -t 显示终端和 CPU 的信息
- -x 显示详细信息
- -V 显示版本信息
显示所有设施负载状况
> iostat
- %user:CPU 处在用户模式下的工夫百分比。
- %nice:CPU 处在带 NICE 值的用户模式下的工夫百分比。
- %system:CPU 处在零碎模式下的工夫百分比。
- %iowait:CPU 期待输入输出实现工夫的百分比。
- %steal:管理程序保护另一个虚构处理器时,虚构 CPU 的有意识等待时间百分比。
- %idle:CPU 闲暇工夫百分比。
如果
%iowait
的值过高,示意硬盘存在I/O
瓶颈,%idle
值高,示意 CPU 较闲暇,如果%idle
值高但零碎响应慢时,有可能是 CPU 期待分配内存,此时应加大内存容量。%idle
值如果继续低于 10,那么零碎的 CPU 解决能力绝对较低,表明零碎中最须要解决的资源是 CPU。
每隔 2 秒刷新显示,且显示 3 次
> iostat 2 3
显示指定磁盘信息
> df
文件系统 1K- 块 已用 可用 已用 % 挂载点
/dev/vda1 51474024 31149824 18018124 64% /
devtmpfs 1931252 0 1931252 0% /dev
tmpfs 1941016 24 1940992 1% /dev/shm
tmpfs 1941016 472 1940544 1% /run
tmpfs 1941016 0 1941016 0% /sys/fs/cgroup
tmpfs 388204 0 388204 0% /run/user/0
> iostat -d /dev/vda1
显示 tty 和 Cpu 信息
> iostat -t
以 M 为单位显示所有信息
> iostat -m
查看 TPS 和吞吐量信息
> iostat -d -k 1 1
tps:该设施每秒的传输次数(Indicate the number of transfers per second that were issued to the device.)。“一次传输”意思是“一次 I / O 申请”。多个逻辑申请可能会被合并为“一次 I / O 申请”。“一次传输”申请的大小是未知的。
- kB_read/s:每秒从设施(drive expressed)读取的数据量;
- kB_wrtn/s:每秒向设施(drive expressed)写入的数据量;
- kB_read:读取的总数据量;kB_wrtn:写入的总数量数据量;
查看设施使用率(%util)、响应工夫(await)
> iostat -d -k -x 1 1
- 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 的单位为毫秒)
如果
%util
靠近 100%,阐明产生的 I / O 申请太多,I/ O 零碎曾经满负荷,该磁盘可能存在瓶颈,idle 小于 70% IO 压力就较大了,个别读取速度有较多的 wait。同时能够联合 vmstat 查看查看 b 参数 (期待资源的过程数) 和 wa 参数(IO 期待所占用的 CPU 工夫的百分比,高过 30% 时 IO 压力高)。
只看 cpu 状态
> iostat -c 1 3
如果
%iowait
的值过高,示意硬盘存在 I / O 瓶颈,%idle
值高,示意 CPU 较闲暇,如果%idle
值高但零碎响应慢时,有可能是 CPU 期待分配内存,此时应加大内存容量。%idle
值如果继续低于 10,那么零碎的 CPU 解决能力绝对较低,表明零碎中最须要解决的资源是 CPU。
原文链接:https://rumenz.com/rumenbiji/…
微信公众号: 入门小站