Linux; Defina o tamanho do bloco RAID5 como 4 kB para corresponder ao tamanho do bloco FS e ao tamanho do setor do disco físico

3

Existem muitas discussões e sites que explicam o processo de configuração de um RAID de software Linux com mdadm com o tamanho do bloco de um novo RAID como 128kBs ou 512Kbs. Serverfault não é exceção.

Agora estou construindo um novo NAS de mídia e não vejo uma boa razão para não usar um tamanho de bloco de 4kB. Cada um dos quatro discos físicos no 'RAID-5-to-be' tem setores 4KB. Certamente, um tamanho de chuck de 4kB faz mais sentido mapear um relacionamento 1: 1 do volume RAID para os setores do disco? Então em cima que cria o sistema de arquivos (que será EXT4) com um tamanho de bloco de 4kB?

Como um tamanho de bloco de 128kB (por exemplo) se torna mais benéfico quando os discos têm apenas setores de 4kB?

    
por jwbensley 03.03.2014 / 12:44

1 resposta

2

Isso está relacionado à leitura antecipada. As unidades rotativas sofrem com um tempo de acesso de acesso extremamente lento, portanto, você deseja minimizar o tempo de acesso e ler sequencialmente o máximo possível. Para conseguir isso, o Linux usa um valor padrão de leitura de 128 KB, o que significa que toda vez que você solicitar um bloco de 1 KB, 128 KB serão realmente lidos e armazenados em cache.

Verifique sua configuração de leitura antecipada com

cat /sys/block/sda/queue/read_ahead_kb 

Na verdade, esse valor de 128KB é extremamente conservador e está melhor adaptado para unidades ATA antigas há dez anos com cache de 512 KB. Para unidades de cache modernas de 64 MB, um valor de 1 ou 2 MB provavelmente seria um ajuste melhor. Para RAID de hardware com caches grandes, valores de 64MB ou mais devem ser preferidos.

Não se esqueça de jogar com as configurações de leitura antecipada para ver como elas afetam seu desempenho:

echo 1024 > /sys/block/sda/queue/read_ahead_kb 
    
por 21.03.2014 / 17:14