1時間あたりの合計ディスクI / Oを測定する方法

1時間あたりの合計ディスクI / Oを測定する方法

クラウドサーバーがあり、ディスクIOの使用料も支払う必要があります。以下は統計の例です。

04/Sep/2013 07:24:19
04/Sep/2013 08:24:19
0,5 GB / 1 vCPU (0,08 Kr. per hour): Charge for 44.7578125GB disk I/O

したがって、1時間あたり約45 GBのディスクI / Oの料金が請求されます。

これは私にトラフィックが多いように聞こえ、確認するために直接監視したいと思います。私はこのようなツールを知っていますが、dstat1sysstat時間(または他の時間範囲)の合計を表示する例が見つかりませんでした。ほとんどの例では、次のコマンドのように結果の平均を取得します。

dstat -tdD total 60

ここでは60秒のディスクI / O測定を示していますが、これは平均です。そのため、大きなファイルをコピーすると、コピー中に数字が増えることがわかりますが、コピーが完了すると数字が再び減少します。つまり、その期間の実際の合計は出ません。

特定の期間に合計ディスクI / Oを記録する方法は?

ベストアンサー1

このツールを使用すると、iostatディスク使用率情報を収集できます。スイッチを含むいくつかのパラメータが必要です-d

   -d     Display the device utilization report.

また、再実行する必要がある頻度間隔である秒単位のパラメーターも必要です。値は36001時間の秒数です。

はい

$ iostat -d 3600
Linux 2.6.35.14-106.fc14.x86_64 (grinchy)   09/04/2013  _x86_64_    (4 CPU)

Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
sda              20.53        71.86      1259.61   20308334  356000380
dm-0              4.92        39.02        28.81   11027610    8143376
dm-1              0.54         0.93         3.38     261472     954912
dm-2            156.65        31.87      1227.42    9006394  346902056

このコマンドの出力はファイルにリダイレクトできます。

$ iostat -d 3600 >> iostat_hrly.log

単位の意味

マニュアルページを確認すると、iostatユニットの説明がよくわかります。

抜粋

   Blk_read/s
         Indicate the amount of data read from the device expressed in a 
         number of blocks per second. Blocks are equivalent to sectors with
         kernels 2.4 and later and  therefore have a size of 512 bytes. With
         older kernels, a block is of indeterminate size.

  Blk_wrtn/s
         Indicate the amount of data written to the device expressed in a 
         number of blocks per second.

  Blk_read
         The total number of blocks read.

  Blk_wrtn
         The total number of blocks written.

したがって、ブロックは512バイトなので、デバイスのBlk_read / s(MB)はsda71.86 * 512バイト= 36.79232キロバイト/秒です。

出力の単位を自動的に変更する別のスイッチがあります。

iostatマニュアルページから抜粋

-h     Make the NFS report displayed by option -n easier to read by a human.

-k     Display statistics in kilobytes per second instead of blocks per 
       second.  Data displayed are valid only with kernels 2.4 and later.

-m     Display statistics in megabytes per second instead of blocks or 
       kilobytes per second.  Data displayed are valid only with kernels 
       2.4 and later.

はい(KB/秒)

したがって、スループットを KB/s 単位で表示すると、より便利です。

$ iostat -dk 3600
Linux 2.6.35.14-106.fc14.x86_64 (grinchy)   09/05/2013  _x86_64_    (4 CPU)

Device:            tps    kB_read/s    kB_wrtn/s    kB_read    kB_wrtn
sda              20.85        47.25       663.81   15475096  217427086
dm-0              5.01        20.00        14.43    6549301    4725068
dm-1              0.54         0.58         1.60     189064     524872
dm-2            165.30        26.65       647.78    8730281  212177124

おすすめ記事