监控 IO 时 dstat 命令的输出值代表什么含义?

监控 IO 时 dstat 命令的输出值代表什么含义?

我正在监控备份服务器中某个进程的 IO 和 SWAP 使用情况。我执行了该命令dstat -rs 5,以下是示例输出:

--io/total- ----swap---
 read  writ| used  free
92.0  57.3 |3228k  514M
 289   104 |3468k  514M
 270   202 |3472k  514M
 363   184 |3612k  514M
 237   124 |3740k  514M
 377   302 |4168k  514M
 113  24.6 |4916k  513M
 153   118 |4992k  513M
 263  32.6 |6088k  512M
 295   242 |6332k  511M

列中的值swap非常简单。但这些值是什么io/total意思?使用的是什么单位,测量范围是多少?

答案1

来自手册页

-r,--io

启用 I/O 请求统计(读取、写入请求)

这些是向系统中所有块设备发出的读写请求:

Dstat 的独特之处在于它可以让您聚合一组接口的特定磁盘集或网络带宽的块设备吞吐量,即,您可以查看组成单个文件系统或存储系统的所有块设备的吞吐量。

请求仅仅是一个计数,因此它们没有 MB/s、扇区/s 等单位。对于这些数字,请尝试iostat

至于范围,这完全取决于相关设备和请求类型。通常,我发现请求是流量的良好指标,但其他指标则不然。作为替代方案,dstat使用-c标志可以查看 CPU 的等待百分比,即 CPU 等待 IO 请求返回的时间,就对系统/工作负载的影响而言,这是一个更具体的指标。

相关内容