Quanto tempo leva para fsck um volume?

9

Estamos executando um site que atualmente veicula de 3 a 5 milhões de visualizações de página. Nosso site é um site de compartilhamento de arquivos e contém 250.000 arquivos e alguns milhares de links simbólicos.

O disco rígido é um disco SATA de 1500 GB.

Usando hdparm , descobrimos que a velocidade do nosso disco rígido foi reduzida para 15-20 MB / s, o que foi 80 MB / s.

Agora, queremos executar o fsck para corrigir o problema no disco.

  1. O fsck resolverá este problema?
  2. Quanto tempo fsck levará para concluir (apenas queremos calcular o tempo de inatividade que teremos)?
por khizar ansari 21.02.2012 / 17:23

4 respostas

7

A degradação da velocidade é esperada conforme o número de arquivos acessados simultaneamente aumenta. As unidades de disco rígido não gostam de ser acessadas em paralelo: toda vez que o cabeçote de leitura / gravação precisa alternar os cilindros, você perde vários milissegundos. Mesmo se dois arquivos estiverem no mesmo cilindro, ou mesmo na mesma faixa, talvez você ainda precise aguardar uma rotação para passar de um para outro. Se você medir o desempenho da unidade em megabits por segundo, espere que ela diminua exponencialmente à medida que o acesso paralelo aumenta.

fsck não ajudará com isso: repara apenas danos à estrutura de diretórios, não realiza otimização.

A solução ideal seria mudar para armazenamento em estado sólido, uma vez que não tem nenhuma das limitações físicas dos pratos giratórios. Mas isso é provavelmente proibitivo em termos de custos.

A próxima melhor seria usar um RAID otimizado para acesso paralelo. Tenha em mente que os RAIDs podem ser configurados para muitos perfis de desempenho diferentes, portanto, você precisará dedicar algum tempo para aprender as configurações de qualquer hardware e drivers RAID.

Você pode reduzir o problema usando o armazenamento em cache agressivo do sistema de arquivos. Se o seu sistema tem RAM suficiente, o Linux já deve estar fazendo isso bastante bem. Execute um programa como top para ver quanto de RAM livre existe. Mas se os arquivos mais usados não se encaixarem na RAM (ou qualquer RAM que você possa adquirir), isso não ajudará muito.

A solução alternativa para um pobre homem seria dividir seus arquivos em vários discos rígidos físicos diferentes (não apenas partições diferentes na mesma unidade). Isso não é realmente uma solução escalável de longo prazo e acabaria custando mais do que um RAID decente. Mas pode ser uma solução rápida se você tiver unidades por aí.

Para qualquer solução que envolva discos rígidos, verifique se eles têm uma velocidade de rotação rápida e baixa latência de busca.

Eu escrevi um artigo com algumas informações gerais sobre o desempenho do disco rígido aqui:

Dicas do UNIX - Sistemas de arquivos

    
por 21.02.2012 / 17:41
3

Eu esperaria 5 horas para o fsck completar.

Em vez disso, eu consideraria (isso significa: testar, testar e testar) uma migração para o reiserfs.

    
por 21.02.2012 / 22:34
2
  1. Não (o fsck pode consertar metadados do sistema de arquivos corrompidos, não um disco quebrado, nem é uma ferramenta de desfragmentação).
  2. Depende do sistema de arquivos. Com ext3, dolorosamente longo, eu reservaria várias horas. Sistemas de arquivos mais modernos, como ext4 ou xfs, podem ser facilmente mais rápidos.
por 21.02.2012 / 17:28
1

O hdparm faz uma leitura sequencial. Seu disco do servidor de arquivos deve estar fazendo muita busca, como os outros caras disseram.

Se você está recebendo erros de HD, eles devem aparecer em / var / log / em algum lugar.

Por que você não tenta "smartctl -t short / dev / sda" e depois "smartctl -t long / dev / sda" ?? ... Com a maior parte do novo HDD, você pode emitir este comando mesmo quando usando o HD. Inteligente lhe dará alguns resultados. Você pode ler a sua saúde no HDD usando "smartctl --all / dev / sda".

Se você estiver enviando um hdparm para o HDD montado com acesso simultâneo, essa pode ser a resposta para os resultados serem muito menores do que antes.

Eu devo mover seus dados para uma configuração RAID o mais rápido possível.

    
por 16.12.2015 / 03:34