físicas vs transações de disco lógicas

2

Estou tentando analisar os requisitos do servidor para um conjunto de máquinas virtuais. Estamos usando o LVM neles, portanto o iostat mostra números para o volume lógico e o disco físico, e eles geralmente não correspondem no nível da transação, e eu estou tentando decidir qual métrica é importante: tps ou total de blocos lidos + escrito, e para o drive físico ou lv? Meu palpite é blocos totais de unidade física, mas tps levará em conta as buscas que os blocos não farão, o que será importante, pois a principal decisão é se podemos ou não executar essas tarefas em uma série de discos giratórios em vez do flash. drives que eles estão atualmente (estamos prestes a dobrar o armazenamento).

Saída "iostat 10":

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
       2.38    1.35    1.40    0.69    0.00   94.19

Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
sdb             225.48      2922.30      3511.65 79987371570 96118589648
sda               1.92        11.86        39.47  324647920 1080458180
dm-0              5.00        10.57        38.62  289229114 1057115528
dm-1              0.27         1.29         0.85   35343720   23342584
dm-3            414.45      1501.13      3393.89 41087911850 92895186296

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
       7.74    0.06    4.88    0.63    0.00   86.69

Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
sdb             259.54       527.47     28098.30       5280     281264
sda               1.20         0.00        20.78          0        208
dm-0              2.60         0.00        20.78          0        208
dm-1              0.00         0.00         0.00          0          0
dm-3           3515.48       527.47     28097.50       5280     281256

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
       3.00    0.04    0.56    0.43    0.00   95.98

Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
sdb              96.20       893.69      2175.78       8928      21736
sda               0.70         0.80        19.22          8        192
dm-0              2.40         0.00        19.22          0        192
dm-1              0.10         0.80         0.00          8          0
dm-3            267.77       893.69      2175.78       8928      21736

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
       2.80    0.01    0.64    0.73    0.00   95.83

Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
sdb             110.50      1284.80      2376.00      12848      23760
sda               0.80         0.00        15.20          0        152
dm-0              1.90         0.00        15.20          0        152
dm-1              0.00         0.00         0.00          0          0
dm-3            272.30      1284.80      2376.00      12848      23760
    
por abatie 22.12.2016 / 05:05

2 respostas

0

Esta resposta diz que o kernel do linux otimiza as transações antes de irem para o volume físico (PV), portanto, um valor diferente de tps .

Diretrizes de requisitos de desempenho de armazenamento (para a maioria dos sistemas - não para todos!):

  • picos devem ser identificados na escala de um mês ou até um ano; ferramentas como iostat, sar precisam de algum script para lidar com isso; Os gráficos do Zabbix funcionariam melhor
  • a taxa de IOps aleatória é geralmente crucial; é aproximadamente tps , quando você olha para PVs ( sda , não dm-3 )
  • A taxa de transferência de leitura
  • ( Blk_read/s ) é mais relevante para o backup completo
  • taxa de transferência ( Blk_wrtn/s ) é mais relevante para restaurar a partir do backup; geralmente invisível em ferramentas de coleta
por 22.12.2016 / 10:30
0

A soma do TPS dos volumes físicos se aproxima do IOPS. IOPS aleatória, já que cada VM está fazendo IO para diferentes partes do armazenamento subjacente. Você pode obter 100 IOPS aleatórios fora do fuso, com custo menor por GB. Muito mais do armazenamento em estado sólido, com menor custo por IOPS.

O que você pode fazer é depender das suas necessidades de desempenho e capacidade, restritas por coisas como quantos discos cabem em sua matriz e quanto você quer gastar com isso.

Se você quiser, digamos, tempos de resposta menores que 1 ms, isso significa estado sólido. Mesmo os melhores spindle arrays têm dificuldade em obter tempos de resposta baixos de um dígito para um erro de cache.

    
por 27.12.2016 / 17:19