3Ware matriz RAID6 algumas vezes suspensa. Disco quebrado não detectado?

13

Temos um servidor Debian com o controlador RAID 3Ware 9650SE de 8 unidades, com matriz RAID6 de 5 discos, atuando como host de máquina virtual, todo Linux. Os problemas continuam ocorrendo e eu suspeito que um disco quebrado não detectado.

Tivemos várias falhas agora, onde o host e todos os convidados estão dizendo que o sistema de IO foi bloqueado por 120 segundos ou mais. Suspeitamos de um controlador RAID com defeito, mas o substituímos por um idêntico por um firmware idêntico, que não foi corrigido. Eu não pensei que seria, porque um segundo array RAID1 continuava funcionando corretamente.

Quase uma semana atrás (domingo), quando isso acontecia, a verificação automática era de 66%. Ontem à noite (sexta-feira de manhã) foi de 67%. Antes e depois da inicialização, e ambos ao experimentar problemas. Quando desliguei a verificação com tw_cli /c0/u0 stop verify, as coisas se tornaram responsivas novamente.

Eu suspeito que ele ficou preso em uma falha de disco em cerca de 66%. Uma verificação automática começa no sábado:

# tw_cli /c0 show verify
/c0 basic verify weekly preferred start: Saturday, 12:00AM

e normalmente seria feito na sexta-feira. Como o domingo era de 66% e a sexta-feira de 67%, é improvável que seja coincidência.

'smartctl -a -d 3ware, 0 / dev / twa0' e 'smartctl -t long' (autoteste longo SMART) em todas as unidades não revelaram erros. Nem faz tw_cli /c0 show alarms.

Suspeitei que um disco estivesse quebrado de uma maneira difícil de detectar, mas tirei cada unidade da matriz uma por uma, criei uma matriz 'única' e criei zeros. Nenhum disco mostrou erros.

Ou algum outro conselho?

Editar:

este é o layout:

# tw_cli /c0 show

Unit  UnitType  Status         %RCmpl  %V/I/M  Stripe  Size(GB)  Cache  AVrfy
------------------------------------------------------------------------------
u0    RAID-6    OK             -       -       256K    5587.9    RiW    OFF    
u1    SPARE     OK             -       -       -       1863.01   -      OFF    
u2    RAID-1    OK             -       -       -       1862.63   RiW    ON     

VPort Status         Unit Size      Type  Phy Encl-Slot    Model
------------------------------------------------------------------------------
p0    OK             u0   1.82 TB   SATA  0   -            ST32000542AS        
p1    OK             u0   1.82 TB   SATA  1   -            ST32000542AS        
p2    OK             u0   1.82 TB   SATA  2   -            ST32000542AS        
p3    OK             u0   1.82 TB   SATA  3   -            ST32000542AS        
p4    OK             u0   1.82 TB   SATA  4   -            ST32000542AS        
p5    OK             u1   1.82 TB   SATA  5   -            WDC WD2002FYPS-02W3 
p6    OK             u2   1.82 TB   SATA  6   -            WDC WD2002FYPS-02W3 
p7    OK             u2   1.82 TB   SATA  7   -            WDC WD2002FYPS-02W3 

Name  OnlineState  BBUReady  Status    Volt     Temp     Hours  LastCapTest
---------------------------------------------------------------------------
bbu   On           Yes       OK        OK       OK       0      xx-xxx-xxxx

A unidade em questão é u0.

edit2:

tw_cli / c0 show diag mostra algo interessante (edit3: isso é inofensivo, descobri que é causado pela chamada de smartctl -a -d 3ware,X /dev/twa0onde X é uma porta inválida):

QueueAtaPassthrough() called with invalid TargetHandle: 0x17, portHandle: 0xFF

Legacy opcode=0xB1 error=0x10E

E=010E T=14:15:51     : Invalid operation for specified port
E=010E T=14:15:51 U=0 : Return error status to host
Error, Unit 23: Invalid operation for specified port
(EC:0x10e, SK=0x05, ASC=0x24, ASCQ=0x00, SEV=01, Type=0x70)
No additional sense data
Error, Unit 23: 0x10E OVERRIDDEN due to invalid sense buffer descriptor
sense buffer: len=0, address=0x414ca2c7c
Send AEN (code, time): 0031h, 06/21/2013 14:26:16
Synchronize host/controller time
(EC:0x31, SK=0x00, ASC=0x00, ASCQ=0x00, SEV=04, Type=0x71)

Eu recebo toneladas disso. Eu não tenho idéia do que isso significa. Não consigo nem perceber qual unidade ou porta é. (edit3: Eu sei agora, é inofensivo).

Dada a minha edição3, estou de volta à estaca zero. Nada indica que um disco está quebrado, exceto que a verificação trava em 66% e faz com que a matriz seja interrompida, o que às vezes também acontece aleatoriamente. Desejo que a verificação encontre a falha ...

Halfgaar
fonte
Quais HDDs? Eles são oficialmente suportados?
grs
Eu adicionei o layout. Os discos são ST32000542AS. Eles são suportados, mas, mais ainda, o servidor funcionou bem por 3 anos.
precisa saber é o seguinte
Eu tive um problema com algumas unidades WD que se tornaram verrryyyy lentas em algum momento. apenas um hdparm (infelizmente não é possível aqui) me mostrou uma taxa de processamento de ~ 300 KB / s (sim K!) em vez dos habituais 80 ~ 100 MB / s.
Benjamin Sonntag
1
a diferença entre a empresa e os discos das unidades de desktop é que eles resolvem os bugs. Se as unidades Enterprise encontrarem algum erro, o disco sairá do ataque. (como em empresas sensíveis aos riscos de armazenar dados e dispostas a pagar por isso) Se uma unidade de desktop atender à falha, ela tentará durar até que todos os tempos limite terminem. (Como os usuários dirigem, e com os dados que precisam acessar e, se cairem discos de uma vez, o fabricante será muito doloroso), aparentemente o ST32000542AS é um disco silencioso e econômico na versão para desktop. por exemplo goo.gl/rWb5lj
Rainbow-
Na verdade, apenas recentemente, esse servidor parou de repente, de maneira diferente e mais severa do que o problema original, e os logs mostraram um tempo limite em uma porta RAID. O tempo limite estava em uma das unidades corporativas (das quais este servidor possui mais agora).
Halfgaar 9/09/14

Respostas:

1

2 coisas que não foram levantadas até agora:

  1. Este é um controlador SATA RAID? Nesse caso, os cabos SATA são propensos a envelhecer e substituí-los pode resolver esses problemas facilmente. Na maioria das vezes, isso pode ser tentado quando ocorrem erros no disco, atrasos e tempos limite, mas os valores SMART estão todos ok e a unidade passa em todos os autotestes. Infelizmente, é difícil encontrar um bom vendedor de cabos SATA.
  2. Os controladores RAID 3Ware são antigos e não são suportados atualmente. Você não receberá atualizações de firmware nem peças de reposição. Caso seu controlador morra, o RAID pode ser irrecuperável sem o controlador E o firmware correspondentes. Uma recuperação de dados dispendiosa é então necessária.
flohack
fonte
0

Esse problema pode ocorrer devido a um dos discos encontrar um erro de leitura e bloquear toda a matriz até conseguir realocar o setor ou o controlador RAID assumir que a unidade está inoperante e a inicializa da matriz, marcando-a como "Degradada" (isso depende completamente do controlador em questão). Isso pode acontecer com frequência se um disco está começando a morrer, mas ainda passa pelo SMART. A maioria dos discos de consumo continuará tentando a leitura para sempre.

Esse problema foi resolvido em algumas unidades destinadas ao RAID usando algo chamado Controle de recuperação de erros . A WD chama isso de TLER. Do site:

RAID-specific time-limited error recovery (TLER) - Pioneered by WD, this feature prevents drive fallout caused by the extended hard drive error-recovery processes common to desktop drives.

Basicamente, diz a um disco que, se não conseguir ler um setor, desistirá após x segundos. Isso é ótimo em um RAID, pois os dados podem ser recuperados de outro disco.

Pelo que li, o ST32000542AS não implementa nenhuma forma de ERC; portanto, qualquer um deles pode bloquear toda a matriz. Na verdade, o WD2002FYPS implementa o TLER da WD para que não causem esse problema.

succulent_headcrab
fonte
0

Apenas para ter certeza, qual é a sua versão de firmware?

Houve um problema que tive - que se parece muito com o que você está descrevendo - quando os seguintes requisitos são atendidos:

  • Controlador da série 3ware 96xx
  • RAID 6
  • 256k Stripe Size
  • Versão do firmware <v4.10.00.021 *

Na época, não havia correção de firmware disponível, então migrei do tamanho de faixa de 256k para 64k, o que também resolveu o problema. Você pode tentar como solução alternativa, embora certamente demore alguns dias para concluir.

Mais tarde, tentei o novo firmware (* 4.10.00.021, acho que tinha a correção) com 256k e funcionou como um encanto. 4.10.00.027 é a versão mais recente.

Acrklor
fonte
Não temos mais o problema. A verificação sempre teve êxito. No entanto, tivemos um travamento completo do servidor há alguns meses (após um longo período sem problemas). Dmesg disse que o disco x atingiu o tempo limite. Não sei por que o controlador não o chutou, mas mesmo que não tenha sido explicitamente marcado como degradado, eu o substituí. E, outros discos foram substituídos desde então também. Portanto, é provável que tenha sido um problema de disco.
Halfgaar 25/10
0

Eu costumava ter problemas com um controlador 3ware e unidades da Seagate. Há uma incompatibilidade sutil de firmware. Eu mudei para unidades Samsung, problema resolvido.

Zdenek
fonte