md-RAID5 - Quão rápido deve ser ou onde está o gargalo?

1

Eu configurei um novo servidor com um RAID5 criptografado pelo LUKS. No antigo servidor, o gargalo era definitivamente a CPU, já que era um único núcleo de 7x e a carga subia para 100%.

Agora é diferente. Ainda tenho um desempenho ruim de gravação, mas não consigo ver onde está o gargalo.

Durante

root@home-le:/data# dd if=/dev/zero of=benchmark bs=100MB count=100
100+0 Datensätze aus
10000000000 Bytes (10 GB) kopiert, 775,726 s, 12,9 MB/s

Eu obtenho

root@home-le:/data# iostat
Linux 2.6.38-11-server (home-le)        23.09.2011      _x86_64_        (2 CPU)

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           0,22    3,58   10,02   13,56    0,00   72,61

Device:            tps    kB_read/s    kB_wrtn/s    kB_read    kB_wrtn
sda              66,63       795,46      8876,84  105325279 1175367302
sdc             244,12      8203,55      1523,39 1086218095  201709949
sdf             253,41      8219,63      1519,15 1088347371  201148053
sde             242,42      8172,09      1495,00 1082051932  197950373
md0             933,49        36,80      3937,60    4872631  521371476
dm-4            933,51        36,79      3938,19    4871328  521449348

A matriz está sincronizada

md0 : active raid5 sda1[5] sdc1[0] sde1[2] sdf1[4]
      2768292864 blocks super 1.2 level 5, 512k chunk, algorithm 2 [4/4] [UUUU]

e consiste em 4 partições de 950 GB de 4 1TB WD Caviar Green. (As outras parções nos discos não têm uma carga considerável.) O FS é ext4 com tamanho de bloco 4096.

Se você não souber sobre o gargalo, também agradecemos seus resultados de matrizes comparáveis.

    
por mcandril 23.09.2011 / 11:58

2 respostas

1

O RAID-5 tende a ter um desempenho de gravação muito baixo, mas admito que menos de 13 MB / s é insatisfatório.

Você pode testar apenas um único disco? Eu ouvi histórias de horror sobre a série WD Caviar Green ao longo dos anos. Não verificaram se as coisas melhoraram, mas há alguns anos o debate foi sobre os RPMs dos discos Caviar Green. Alguns suspeitavam que era em torno de 5400 RPM e não 7200 RPM, e isso fez com que o carro ficasse muito lento. A Western Digital, claro, teve sua própria explicação da situação:

"A fine-tuned balance of spin speed, transfer rate and caching algorithms designed to deliver both significant power savings and solid performance."

Err, certo.

Então, você pode comparar apenas um único disco com todas as camadas desnecessárias (LUKS, RAID) removidas e ver se ele é muito mais rápido?

    
por 23.09.2011 / 12:13
0

Posso chamar sua atenção para BAARF , que discute questões de desempenho de ataques de paridade detalhadamente?

Além disso, você realmente deve ter um cache de gravação ativado com qualquer tipo de conjunto de dados distribuído com paridade - caso contrário, qualquer carregamento aleatório (não importa quão pequeno seja) eliminará seu desempenho imediatamente.

hdparm -W 1 /dev/sd[acfe]

BTW: os discos rígidos são lentos no acesso aleatório. Quero dizer REALMENTE LENTO. Na maioria das vezes, ninguém percebe como é provável que as coisas sejam armazenadas em cache ou provavelmente sequenciais em um cenário de "um computador - um disco rígido". Mas todas as cargas intensivas de servidor de E / S sofrem desse problema. Posso ter uma matriz RAID10 de oito discos Cheetah 15K (indiscutivelmente os discos de médio porte mais rápidos disponíveis) saturados a 100% de utulização com filas cheias a menos de 10 MB / segundo se a carga for distribuída "direita" (ou seja, tamanhos de bloco pequenos, gravação aleatória / read-access) em um cenário de virtualização. Se você precisar de acesso aleatório, certifique-se de ter grandes caches (write-back). Se você precisar de muito acesso aleatório, obtenha armazenamento em camadas .

    
por 23.09.2011 / 15:59