使用iostat查看系统的I/O统计信息。
安装工具
在基于 Debian 的系统(如 Ubuntu)上安装:
bashsudo apt update
sudo apt install sysstat
在基于 Red Hat 的系统(如 CentOS 或 Fedora)上安装:
bashsudo yum install sysstat # 对于 CentOS 7 及以下版本
# 或者
sudo dnf install sysstat # 对于 CentOS 8、Fedora 或其他使用 dnf 的发行版
使用
iostat -d -x 1
这个命令会显示每个设备的详细统计信息,并每秒更新一次。
内容:
Device: rrqm/s wrqm/s r/s w/s rkB/s wkB/s avgrq-sz avgqu-sz await r_await w_await svctm %util
sda 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
scd0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
dm-0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
dm-1 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
dm-2 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
这些数据来自Linux的iostat
命令,它用于监控系统的输入/输出设备负载。每列都代表一个特定的统计指标,下面是对每一列的简单解释:
- Device: 这是正在被监控的磁盘设备名称。例如,
sda
可能是一个物理硬盘,而dm-X
通常是一个设备映射器设备(比如LVM逻辑卷或RAID设备)。 - rrqm/s: 每秒合并的读请求数量。这通常表示磁盘驱动器的合并能力,它可以将多个小的读请求合并成一个大的读请求,以提高效率。
- wrqm/s: 每秒合并的写请求数量。与
rrqm/s
相似,但针对写操作。 - r/s: 每秒完成的读请求数量。
- w/s: 每秒完成的写请求数量。
- rkB/s: 每秒读取的千字节数。
- wkB/s: 每秒写入的千字节数。
- avgrq-sz: 平均请求大小(以扇区为单位)。
- avgqu-sz: 平均队列长度。这表示在任意给定时间,有多少请求在等待处理。
- await: 平均等待时间(包括服务时间)。这是从请求被发出到请求完成所花费的平均时间(以毫秒为单位)。
- r_await: 读操作的平均等待时间。
- w_await: 写操作的平均等待时间。
- svctm: 平均服务时间(以毫秒为单位)。这表示请求在磁盘上实际花费的时间,不包括队列中的等待时间。
- %util: 磁盘的利用率。这表示磁盘在一段时间内被活动请求占用的百分比。