iotop und iostat sind sich nicht einig

8

Ich versuche zu verstehen, was mit den Festplatten meines Servers los ist. Es läuft unter Ubuntu 12.04LTS und ich bin es gewohnt iostatzu wissen, wann die Festplatte der Engpass ist. Aber iostat -xdsieht für mich so aus, als ob die Festplatte ziemlich untätig ist:

Linux 3.2.0-41-generic (loki)   07/05/2013  _x86_64_    (8 CPU)

Device:         rrqm/s   wrqm/s     r/s     w/s    rkB/s    wkB/s avgrq-sz avgqu-sz   await r_await w_await  svctm  %util
sda               0.16     1.23    0.69    1.49     9.94    37.03    43.05     0.52  239.02   14.16  343.06   3.65   0.80
sdb               0.00     0.00    0.00    0.00     0.00     0.00     8.10     0.00    0.25    0.25    0.00   0.25   0.00
dm-0              0.00     0.00    0.82    2.70     9.92    37.03    26.67     0.72  203.84   16.80  260.64   2.27   0.80
dm-1              0.00     0.00    0.00    0.00     0.00     0.00     7.99     0.00  198.63    9.33 1232.65  13.97   0.00
dm-2              0.00     0.00    0.00    0.00     0.00     0.00     7.99     0.00  497.11   14.27 1858.12  20.96   0.00

Während iotopein ganz anderes Bild erzählt:

Total DISK READ:      31.84 M/s | Total DISK WRITE:      19.55 M/s
  TID  PRIO  USER     DISK READ  DISK WRITE  SWAPIN     IO>    COMMAND                                                                                     
27472 be/4 mongodb    31.35 M/s    3.92 K/s  0.00 % 46.56 % mongod --config /etc/mongodb.conf
  318 be/3 root        0.00 B/s   94.06 K/s  0.00 % 44.52 % [jbd2/dm-0-8]
 1493 be/4 mongodb     0.00 B/s   48.88 M/s  0.00 %  9.13 % mongod --config /etc/mongodb.conf
    1 be/4 root        0.00 B/s    0.00 B/s  0.00 %  0.00 % init
    2 be/4 root        0.00 B/s    0.00 B/s  0.00 %  0.00 % [kthreadd]
    3 be/4 root        0.00 B/s    0.00 B/s  0.00 %  0.00 % [ksoftirqd/0]
    6 rt/4 root        0.00 B/s    0.00 B/s  0.00 %  0.00 % [migration/0]
    7 rt/4 root        0.00 B/s    0.00 B/s  0.00 %  0.00 % [watchdog/0]

mit dem mongodSchreiben von zehn Megabyte pro Sekunde.

Woher kommt die Diskrepanz und was soll ich glauben?

Leopd
quelle
1
Hallo! Mit einer Wartezeit von 343.06 würde ich nicht sagen, dass die Festplatte inaktiv ist. wahrscheinlich wird iotop IO% anders gemessen als iostat% util ...
Petter H

Antworten:

12

iostat -xdgibt Ihnen die Durchschnittswerte seit dem letzten Zurücksetzen des Zählers (normalerweise beim letzten Neustart des Systems), während iotopDurchschnittswerte der letzten Sekunde erzeugt werden. Wenn Sie vergleichbare Ergebnisse erzielen möchten, sollten Sie Ihrem iostatAnruf ein Aktualisierungszeitintervall hinzufügen

iostat -xdmy 5

über einen Zeitraum von 5 Sekunden zu mitteln.

the-wabbit
quelle
Vielen Dank! Ich dachte, der Schalter -m hat nur dazu geführt, dass er automatisch aktualisiert wird.
Leopd
@Leopd man iotop: -m
The-Wabbit