监控磁盘I/O指标
免费使用InfluxDB集成磁盘I/O是硬盘驱动器和RAM之间数据传输的速度。您可以通过监控磁盘的读写操作来实现,这用于测量存储设备的性能。
为什么使用DiskIO Telegraf插件?
DiskIO Telegraf插件将收集磁盘的读写操作,您可以将其与其他指标(如CPU使用率、可用磁盘空间等)结合,以全面了解您的基础设施。
如何使用DiskIO Telegraf插件
默认情况下,DiskIO Telegraf插件将收集包括磁盘分区在内的所有设备的指标。设置设备将限制统计信息到指定的设备,在支持此功能的情况下,可以通过标签的形式添加设备元数据。目前仅通过udev属性支持Linux,您可以通过运行以下命令查看设备的所有可用属性:udevadm info -q property -n /dev/sda
用于监控的关键DiskIO指标
您应积极监控的一些重要DiskIO指标包括
name
(设备名称)serial
(设备序列号)reads
(整数,计数器)writes
(整数,计数器)read_bytes
(整数,计数器,字节)write_bytes
(整数,计数器,字节)read_time
(整数,计数器,毫秒)write_time
(整数,计数器,毫秒)io_time
(整数,计数器,毫秒)weighted_io_time
(整数,计数器,毫秒)iops_in_progress
(整数,仪表盘)merged_reads
(整数,计数器)merged_writes
(整数,计数器)
关于收集的指标说明
reads
& writes
:当I/O请求完成时,这些值递增。
read_bytes
& write_bytes
:这些值计算从或写入此块设备的字节数。
read_time
& write_time
:这些值计算I/O请求在此块设备上等待的毫秒数。如果有多个I/O请求等待,这些值将以每秒1000次以上的速率增加;例如,如果有60个读取请求平均等待30毫秒,则read_time字段将增加60*30 = 1800。
io_time
:此值计算设备在I/O请求排队期间的毫秒数。
weighted_io_time
:此值计算I/O请求在此块设备上等待的毫秒数。如果有多个I/O请求等待,此值将增加为毫秒数乘以等待请求的数量的乘积(请参阅上面的read_time示例)。
iops_in_progress
:此值计算已向设备驱动程序发出但尚未完成的I/O请求数。它不包括在队列中但尚未向设备驱动程序发出的I/O请求。
merged_reads
& merged_writes
:相邻的读取和写入操作可能会为了效率而合并。因此,两个4K读取操作可能会在最终发送到磁盘之前合并为一个8K读取操作,因此它将只计为一个I/O操作。这些字段显示了这种操作发生的频率。