/proc/diskstats ディスク読み取り時間が 1 秒あたり 1 秒以上増加します。

/proc/diskstats ディスク読み取り時間が 1 秒あたり 1 秒以上増加します。

prometheus-node-exporter を使用してディスク使用率を監視および読み込みます。/proc/diskstats

私の期待は、ブロックデバイスが100%使用されている場合、フィールドは7 - 読み取った時間(ミリ秒)毎秒(ミリ秒)ごとに1000ずつ増加します。

ただし、現在のディスクが使用中の場合、増加は次のようになります。毎秒1200〜1800ミリ秒。

この問題の原因は何ですか?ありがとうございます。

13 - I/Oの実行に要した時間(ミリ秒)予想通り、増加幅は毎秒1000ミリ秒未満です。

the HDD is Seagate ST8000AS0022-1WL17Z Host-Aware SMR

Debian Bullseye, kernel version 5.4.0-4-amd64
32GB RAM i5 3570,

device structure:
sde -> loop1 -> dm-crypt -> Virtual machine Virtio -> ZFS
the loop device is used because otherwise dm-crypt doesn't work

scheduler mq-deadline

答え1

ディスク統計はCPUごとに追跡され、/proc/diskstatsすべてのCPUの統計合計が表示されます(「I / Oの実行に費やされた時間」などのティックベースの統計に加えて)。読み書きにかかる時間は、すべてのCPUのすべての読み取りおよび書き込み期間の合計であるため、複数のCPUがあるシステムでは、統計がリアルタイムより速く増加する可能性があります。

関連情報