
Eu tenho uma configuração raid5 de 4 discos de 5 TB em que um disco mostra sinais de que está indo pelo ralo. Ele está relatando erros de mídia e no dmesg posso ver que vários erros de leitura foram corrigidos. smartctl relata "notificações", mas sem pânico até agora. Como os novos discos são bastante caros no momento, estou começando a ponderar exatamente o quão robusta é a camada MD do Linux.
Eu apreciaria se alguém pudesse esclarecer como o MD realmente lida com erros de disco. Por exemplo, como o md lida com erros de gravação e leitura - o que é (realmente) necessário para que o disco seja rejeitado de uma matriz. Eu também li que recentemente o MD obteve suporte para mapear blocos defeituosos. Isso significa que os erros de leitura que tive teriam sido mapeados se eu estivesse executando o kernel> 3.1 ou ainda tentaria "trabalhar neles" para torná-los utilizáveis.
Responder1
Se você se preocupa com seus dados, troque o disco agora. Cada subsistema faz tudo o que pode para evitar a perda de dados, mas não consegue fazer muito. Até ele pode mapear blocos defeituosos: quando houver um, haverá outros
Você recebeu avisos massivos sobre problemas iminentes: ignorá-los é simplesmente uma irresponsabilidade com os dados de seus clientes.
Edite, pois é muito longo para um comentário:
Não tenho ideia de qual é realmente a sua pergunta? Quer saber se os avisos são graves? Sim, eles estão. Você precisa de algo sobre isso? Sim, e agora.
Quando alguns relatórios do subsistema apresentam erros, eles estão lá e são importantes. Mesmo que o sistema ainda seja capaz de corrigi-los, há uma boa chance de que esse não seja mais o caso daqui a dois minutos e o disco seja marcado como com falha e colocado offline.
Linux md raid é pelo menos tão confiável quanto qualquer implementação de RAID de hardware, mas eu consideraria um RAID5 uma escolha perigosa na melhor das situações. O problema é que você ficará desprotegido durante uma restauração, o que é uma situação muito desgastante para um RAID5. Considero-o mais confiável do que alguns sistemas RAID de hardware, pois você receberá avisos avançados quando um disco estiver prestes a falhar, enquanto um RAID de hardware poderá informá-lo somente após o fato. Existem algumas desvantagens em um RAID de software, principalmente relacionadas a problemas de desempenho, mas a confiabilidade não é uma delas.
De qualquer forma, independentemente disso, a abordagem profissional para situações como a sua é substituir o disco imediatamente, e essa também seria minha reação para minha matriz de disco privada (tenho um disco sobressalente disponível para esse tipo de situação).
Responder2
Isso vem de uma experiência de cerca de 6 anos com um de nossos servidores Dell: naquela época não usávamos ataques de hardware, pois não havia possibilidade de detectar falhas de disco remotamente.
Então usamos o software raid 1 (md). Pouco tempo depois, o ataque se degradou. Olhando para /var/log/messages vi que havia uma lista de erros de IO relacionados a uma determinada partição.
Adicionei novamente a partição ao ataque e pouco tempo depois ela foi descartada novamente.
Enviei ao suporte da Dell a saída /var/log/messages e recebi um novo disco imediatamente. Este era um tipo de Linux sem suporte e apenas com o nível de suporte mais básico.
Tínhamos algumas outras máquinas configuradas e nunca mais tivemos esses problemas (ou seja, os discos nunca falharam). Para mim, esta é uma prova de que você pode confiar no MD.
Acho que isso ainda vale para o kernel 3.1 (ainda não tenho nenhum deles).
Responder3
Pelo que eu sei, o mdadm é uma implementação robusta de software RAID que com HD em bom estado raramente gera erros de qualquer tipo, tenho vários servidores com mdadm configurados e nunca recebi erros de leitura nos arquivos de log.
Verifique o status do seu array com:
mdadm --detail /dev/mdX
Porém eu sugiro fortemente que você substitua a unidade responsável pelos erros ...