Назад | Перейти на главную страницу

Интерпретация результата IOstat

Ниже приведены результаты для iostats:

Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
sda             120.94     10201.14      4354.87 64513033284 27540653120
sdb              63.65      3968.03      4354.86 25094207680 27540569008
md0             615.82      7432.50      4350.45 47003864466 27512714296
sdc               0.76         1.39       138.88    8770432  878321976

Мои вопросы как ниже

  1. Я хотел бы знать, где iostat получает эту информацию от?
  2. Я также заметил, что Blk_read / s и Blk_wrtn / s для md0 представляется средним из двух значений. Это верно?
  3. Почему tps значительно отличается для md0 а другой жесткий диск?
  4. При работе с внутренним набором (iostat 1) чтение обычно происходит только с жесткого диска? Есть ли способ более равномерно распределять чтение по жестким дискам?
  5. При запуске iostat с установленным интервалом значения могут время от времени значительно отличаться. Почему я получаю это чтение? например В выводе ниже содержится запрос на чтение 12 для обоих sda / sdb и значение 190 для md0.

    Устройство: rrqm / s wrqm / sr / sw / s rsec / s wsec / s avgrq-sz avgqu-sz await svctm% util sda 5.00 185.00 46.00 12.00 11728.00 1547.00 228.88 0.56 9.71 4.34 25.20 sdb 0.00 185.00 0.00 12.00 0.00 1547.00 128.92 0.06 5.0 4,50 5,40 мд0 0,00 0,00 51,00 190,00 11728,00 1520,00 54,97 0,00 0,00 0,00 0,00 sdc 0,00 0,00 0,00 0,00 0,00 0,00 0,00 0,00 0,00 0,00 0,00 0,00

iostat читает из /proc/diskstats:

$ cat /proc/diskstats|grep xvd
 202       0 xvda 520666 4246 20785306 229576 7437051 9702824 137989688 9359030 0 1953230 9673210
 202      16 xvdb 13128 24069 297576 6090 22079 86786 870920 32713 0 15363 38740
 202      32 xvdc 497684 2427 23846898 258340 75265869 191974312 2137955584 80786246 0 11698503 81346596

Kernel.org имеет документация на чем все поля.

Кроме того, iostat Страница man содержит указатели на все источники данных:

FILES
       /proc/stat contains system statistics.

       /proc/uptime contains system uptime.

       /proc/diskstats contains disks statistics.

       /sys contains statistics for block devices.

       /proc/self/mountstats contains statistics for network filesystems.