Como recuperar de uma falha de unidade em uma configuração RAID 5?

13

Esta manhã, uma unidade falhou em nosso servidor de banco de dados. A matriz da unidade (3 discos) está configurada em uma configuração RAID 5.

Enquanto esperamos por uma substituição de unidade, estamos nos preparando para uma estratégia de recuperação. Os usuários continuam trabalhando no sistema, embora muito lentamente (não sei por quê).

Como se instala a nova unidade - os dados desta unidade serão automaticamente reconstruídos a partir da paridade ou há outro processo que devemos seguir?

Edit: Este é um controlador RAID de hardware. (Obrigado pelas respostas até agora, apreciado)

    
por Philip Fourie 25.09.2008 / 10:07

6 respostas

13

O sistema está rodando muito devagar porque ele precisa reconstruir os dados que faltam, o que envolve CPU e E / S adicionais.

Se você tiver um disco ausente em uma configuração RAID-5, não há estratégia de recuperação . Se outro disco cair , você perderá seus dados . Corra, não ande, até o fornecedor mais próximo do qual você pode obter uma peça compatível coberta pela garantia do fabricante enviada por um mensageiro urgente no mesmo dia. Se o fornecedor do qual você comprou a matriz já estiver no processo de obtenção da peça, pegue ambas as peças e guarde a outra como sobressalente.

Se você tem um RAID-5 sendo usado para um sistema de produção, deve considerar deixar um disco sobressalente no array como um hot spare.

Adicionado - Se os seus logs não estiverem em um volume separado (discos fisicamente separados), mova-os para um conjunto separado de discos, mesmo que seja apenas um único par espelhado. Isso também será um ganho de desempenho se seu banco de dados tiver alguma carga significativa, pois a contenção nos volumes de log tem um efeito desproporcionalmente ruim no desempenho.

Se isso for possível, você também pode tornar seu banco de dados mais robusto, fazendo o seguinte:

  1. Encerre o banco de dados.
  2. Backup do banco de dados.
  3. Mova os logs para um conjunto fisicamente separado de discos (certifique-se de reconfigurar o banco de dados para saber onde os logs foram movidos).
  4. Reinicie o banco de dados e o aplicativo.

Se você tiver os logs em um volume separado, poderá restaurar e avançar a partir do backup se, e somente se, uma falha no disco não comprometer os logs. Os logs de banco de dados devem estar em um volume de disco separado para (entre outros) os seguintes motivos:

  • Padrões de uso de logs são predominantemente sequenciais, anexando entradas de log no final do arquivo (o arquivo é, na verdade, um buffer de anel). Isso significa que um grande número de entradas de log pode ser gravado rapidamente, pois há pouca atividade de busca na cabeça do disco.

  • Se eles estiverem compartilhando discos físicos com uma carga de trabalho de acesso altamente aleatório (por exemplo, tabelas e índices transacionais), eles serão retardados desproporcionalmente à medida que a atividade de busca principal interromper as gravações sequenciais.

  • Ter os logs em um volume separado é quase sempre uma conquista de desempenho e só precisa de um único par espelhado para que os logs suportem uma carga de trabalho bastante pesada. Isso significa que o hardware para fazer isso é muito barato, então há um pequeno custo para um grande desempenho e confiabilidade.

  • Se o seu array de dados ficar inativo, os logs não serão perdidos. Se você tiver uma estratégia de backup adequada, poderá restaurar a partir do backup e passar dos logs. Isso significa que uma matriz inteira pode ficar no servidor sem ser um único ponto de falha. As matrizes de log e de dados precisam falhar simultaneamente para causar perda de dados.

por 25.09.2008 / 10:19
5

1) Backup.

Neste momento, nenhum dado foi perdido. Se seus backups não estiverem atualizados, faça o backup agora.

2) Leia o manual, ligue para o vendedor, etc.

Diferentes sistemas RAID têm diferentes etapas para substituir um disco, e feito errado, você corre o risco de destruir todo o array. Sem saber que tipo de hardware / software RAID você tem, podemos apenas adivinhar os passos necessários.

Além disso, o desempenho lento é porque o RAID 5 em um estado degradado (ou seja, um disco morto) tem desempenho de leitura horrível. Quão horrível depende de como a paridade é armazenada e de qual disco morreu, mas a "boa" novidade é que o desempenho lento com um disco descartado é um problema conhecido e não causa de pânico.

    
por 25.09.2008 / 10:20
4

Primeiro, eu leria o manual do hardware / software que você está usando - a seção para recuperação de falhas :)

Deve ser uma questão simples de substituir o disco e reconstruir o array.

O ponto mais importante em tais casos é que o disco deve ser substituído o mais rápido possível, pois se outro disco falhar, você provavelmente perderá dados. Além disso, você deve abordar a causa da falha - foi porque o disco estava ficando velho? Você deve substituir os outros também? Ou foi por causa de uma oscilação de energia, calor ou vibração?

    
por 25.09.2008 / 10:14
1

Tanto quanto eu entendo RAID5, quando o seu substituir a unidade com falha, ele é automaticamente reconstruído, a partir de informações armazenadas nos outros dois. Se você pode 'hot-swap' a nova unidade no lugar depende do seu sistema - você pode ter que desligar primeiro. De qualquer maneira, considerando o custo relativamente baixo dos drives, e a importância de seus dados (refletido pela sua decisão de usar o RAID5 em primeiro lugar), você realmente deveria ter uma unidade sobressalente, sentado em uma gaveta, pronto para tal eventualidade. .

Eu criei recentemente um novo PC de desenvolvimento e configurei as principais unidades de dados sob o RAID5. Eu pedi mais uma unidade do que o necessário, para que eu tenha o sobressalente pronto para esse momento de emergência (que eu espero que não aconteça)

Agora que você fez a pergunta, acho melhor ler mais sobre o assunto.

    
por 25.09.2008 / 10:17
0

Totalmente dependente do sistema. O que dizem os manuais? Seu hardware suporta completamente novas unidades hotplugging do controlador para o compartimento da unidade? Você tem backups recentes?

    
por 25.09.2008 / 10:17
0

O post do NXC resume bem. Apenas no caso de você não substituir a unidade defeituosa antes da segunda falha, ainda há uma boa chance de ter quase tudo (às vezes tudo) recuperado pelo serviço de recuperação especializado. Os dados ainda estão lá em discos, e o disco defeituoso geralmente pode ser revivido em laboratório especializado com equipamento adequado. No entanto, o preço deste serviço é bastante elevado. Ter um disco sobressalente e backups adequados (conforme a sugestão do NXC) é definitivamente o caminho a percorrer no futuro.

    
por 05.12.2008 / 00:11