É estranho que não pareça haver um padrão para a medição de IOPS no Linux. Essas perguntas surgem frequentemente quando as pessoas são solicitadas a fornecer uma estimativa de IOPS para planejamento de capacidade ou dimensionamento de armazenamento. Eu acabo usando várias ferramentas para obter essa informação. Primeiro, você precisará gerar uma carga usando o método de sua escolha; um carregamento de aplicativo representativo ou algo parecido com o teste da iozone que você tinha acima.
Em outra janela, rastreie o IOPS usando iostat -dxk 1
, somando as colunas r / s e w / s OU usando Ferramenta nmon da IBM com a opção D
para rastrear a coluna Xfers
(que é essencialmente a soma dos r / s e w / s do iostat).
Aqui está a saída nmon
de uma leitura sequencial pesada usando bonnie++ -u root -n 64:100000:16:64
(executada a partir do diretório de destino). Neste ponto, estamos exibindo ~ 3200 IOPS durante a leitura em cerca de 258 Megabytes / segundo em uma matriz RAID 1 + 0 de 6 discos de unidades SAS de 15k RPM.
- Disk I/O -----(/proc/diskstats)------- all data is Kbytes per second ---------------------------------------------
|DiskName Busy Read Write Xfers Size Peak% Peak-RW InFlight |
|iss/c0d0 100% 264571.1 112.3KB/s 3238.7 81.0KB 100% 340584.5KB/s 2 |
|s/c0d0p1 0% 0.0 0.0KB/s 0.0 0.0KB 0% 2.0KB/s 0 |
|s/c0d0p2 0% 0.0 0.0KB/s 0.0 0.0KB 99% 1022.4KB/s 0 |
|s/c0d0p3 0% 0.0 0.0KB/s 0.0 0.0KB 100% 3636.5KB/s 0 |
|s/c0d0p4 0% 0.0 0.0KB/s 0.0 0.0KB 0% 0.0KB/s 0 |
|s/c0d0p5 0% 0.0 0.0KB/s 0.0 0.0KB 0% 0.0KB/s 0 |
|s/c0d0p6 0% 0.0 0.0KB/s 0.0 0.0KB 0% 0.0KB/s 0 |
|s/c0d0p7 0% 0.0 41.9KB/s 7.5 5.0KB 100% 16103.5KB/s 0 |
|s/c0d0p8 0% 0.0 0.0KB/s 0.0 0.0KB 79% 147.8KB/s 0 |
|s/c0d0p9 100% 264571.1 64.4KB/s 3230.2 81.0KB 100% 340538.5KB/s 2 |
--------------------------------------------------------------------------------------------------------------------