O que o tw_cli da 3Ware significa com disco "DEGRADADO" versus "ECC-ERROR"?

O que o tw_cli da 3Ware significa com disco "DEGRADADO" versus "ECC-ERROR"?

Eu tenho uma matriz RAID triste em uma placa 3ware 9650SE-16ML. O que não sei dizer é se acabei de sofrer uma falha no disco duplo (que chatice!) ou se estou lendo isso errado. A saída relevante de /c0 show allé:

Port   Status           Unit   Size        Blocks        Serial
---------------------------------------------------------------
p0     DEGRADED         u0     931.51 GB   1953525168    5QJ07MAH            
p1     ECC-ERROR        u0     931.51 GB   1953525168    5QJ0DCW9            
p2     OK               u0     931.51 GB   1953525168    5QJ0DW9C            
p3     OK               u0     931.51 GB   1953525168    5QJ0CKXJ            

E a falha é (de show alarms):

Ctl  Date                        Severity  Alarm Message
------------------------------------------------------------------------------
c0   [Sun Nov 20 07:47:23 2011]  INFO      Rebuild started: unit=0
c0   [Sun Nov 20 08:20:12 2011]  ERROR     Drive ECC error reported: port=1, unit=0
c0   [Sun Nov 20 08:20:12 2011]  ERROR     Source drive error occurred: port=1, unit=0
c0   [Sun Nov 20 08:20:12 2011]  ERROR     Rebuild failed: unit=0
c0   [Sun Nov 20 08:20:12 2011]  INFO      Rebuild paused: unit=0

EUpensarque o que aconteceu foi que p0 falhou e então p1 teve um erro de ECC (ou seja, meus dados desapareceram). Mas... talvez não? Ele permanece 97% reconstruído, mas não consegue superar esse erro.

Pelo que sei, um administrador anterior desativou a verificação periódica, e foi isso que nos colocou nesse estado. Isso não é algo com que a maioria das pessoas deva se preocupar com seus RAIDs 3Ware!

Atualizar

Depois de trabalhar nele por alguns dias, fiz o bit IgnoreECC e ele o reconstruiu, mas meus dados estão perdidos. Desapontamento.

Responder1

Erro ECC significa que há pelo menos um setor ilegível na unidade. No entanto, se você tiver sorte, esse setor poderá não ser realmente usado pelo sistema de arquivos localizado nesse volume; portanto, você ainda poderá copiar seus dados da matriz nesse estado.

Existem também algumas opções para ignorar erros de ECC durante a reconstrução:

/cx/ux start rebuild disk=p [ignoreECC]
/cx/ux set ignoreECC=on|off

No entanto, usar essas opções significa que a faixa RAID afetada por um setor defeituoso será corrompida (não tenho certeza do que exatamente a placa fará neste caso - ela pode substituir toda a faixa por zeros, ou mesmo por dados aleatórios), portanto o “ recuperado” pode, na verdade, ter corrupção indetectável (se a faixa afetada estiver no meio de algum arquivo de dados). Copiar seus dados do array para algum outro lugar antes de tentar reconstruir pode ser mais seguro (pelo menos você deve obter erros ao tentar ler a área danificada).

Você deve configurar a verificação agendada da matriz para detectar setores ilegíveis mais cedo, para que possa substituir uma unidade que começou a apresentar problemas.

Responder2

Nunca experimentei uma unidade física (p0) entrar no status DEGRADADO, no entanto, você pode conseguir recuperar a unidade ECC-ERROR ou mesmo a unidade DEGRADADA removendo-os via

/c0 p1 remove

e, em seguida, emitindo uma nova varredura

/c0 rescan

coloque-os de volta na unidade de ataque via

maint rebuild c0 u0 p1

Unidades SATA que falharam com ECC-ERROR, consegui ressuscitar, mesmo que apenas por algumas horas, antes de falhar novamente.

Responder3

É muito provável que seus dados tenham desaparecido. Erro ECC significa um erro irrecuperável durante a leitura deste disco.

Se você não tiver um backup, poderá tentar despejar o estado atual do array. Isso pode ser possível porque o controlador não sabe se perdeu dados ou apenas uma área vazia (falta qualquer visão do sistema de arquivos).

informação relacionada