Eu prefiro usar cd /dev; iostat -xk 3 sd? fio?
para assistir ao disco IO. Dê uma olhada neste trecho da amostra:
avg-cpu: %user %nice %system %iowait %steal %idle
1.20 0.00 4.58 0.00 0.00 94.22
Device: rrqm/s wrqm/s r/s w/s rkB/s wkB/s avgrq-sz avgqu-sz await svctm %util
sdg 0.00 0.00 6.67 238.00 3413.33 39774.67 353.04 0.25 1.02 0.37 9.17
sda 0.00 0.00 5.33 3570.67 2730.67 42230.50 25.15 0.44 0.12 0.07 25.20
sdc 0.00 0.00 10.33 795.00 3089.33 44510.00 118.21 0.40 0.47 0.16 12.83
sdf 0.00 0.00 6.67 254.67 3413.33 40318.67 334.68 0.24 0.93 0.35 9.07
sdh 0.00 0.00 14.33 338.00 3444.00 43286.67 265.26 0.27 0.78 0.29 10.23
sdi 0.00 0.00 8.67 906.33 4437.33 44533.17 107.04 0.36 0.40 0.15 14.17
sdb 0.00 0.00 4.67 2355.33 2389.33 44427.50 39.68 0.51 0.21 0.08 18.87
sdd 0.00 0.00 7.00 256.00 3414.67 40434.67 333.46 0.32 1.22 0.37 9.60
sde 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
fioa 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
Sua média de IOPS para esse intervalo é a soma de r/s
e w/s
e seu avgrq-sz
(tamanho médio da solicitação em setores) dá uma ideia se a carga de trabalho é aleatória ou sequencial.
Dê uma olhada em sdg
vs. sda
no exemplo acima. Ambos estão escrevendo em torno de 40MBps no disco, mas o tamanho da solicitação é muito menor para sda (carga de trabalho aleatória), resultando em um IOPS maior.
Se você quiser acompanhar IOPS (e outros desempenhos) por um período prolongado, sugiro usar nmon para coletar os dados e gerar gráficos bonitos.