Una configurazione del disco RAID 4 può arrestarsi in modo anomalo se si verifica un guasto solo a 1 disco rigido? [chiuso]


9

Sono uno sviluppatore web. Non ho molta esperienza nell'hardware. Per questo motivo, utilizzo server gestiti.

Questa mattina, una delle unità nella nostra installazione non è riuscita. Tuttavia, l'intero sito è andato giù. Ho chiesto al mio host web cosa è successo e lui ha risposto che il disco rigido non funzionava in modo tale che il controller RAID non potesse funzionare correttamente. L'array è stato impostato come RAID 4.

Ragazzi l'hai mai visto prima? È possibile?

Grazie per l'aiuto su questo ragazzi. Devo sapere se il mio host web è onesto con me.


Se più di un disco in un array muore, il RAID non funzionerà (anche se dipende dalla configurazione del RAID).
Rhys Evans,

Per farla breve, il tuo provider è un ****** e funziona in modo economico. Ciò potrebbe essere perfettamente accettabile fintanto che tu come cliente sei stato avvertito che la sua infrastruttura non è tollerante ai guasti e causa guasti.
Luke404,

Aggiorna la domanda con il tipo di incursione (es. Incursione 0,1,4,5,6, ecc.).
Trevor Boyd Smith,

Risposte:


22

Molto probabilmente il tuo provider utilizza dischi rigidi che non sono pensati per essere utilizzati in RAID. Le normali unità SATA consumer rientrano in questa categoria.

Il probabile problema è che l'unità ha iniziato a riscontrare errori di lettura non corretti (URE). Quando ciò accade in un'unità consumer, l'unità si trova lì e riprova l'operazione di lettura (in genere per 30-60 secondi) fino a quando non si arrende. Il RAID attenderà che l'unità riporti l'errore (i 30-60) secondi. Pertanto, una semplice richiesta per alcuni settori può facilmente arrestare il server mentre l'unità guasta esegue le operazioni di ripetizione della lettura.

Le unità destinate agli array RAID hanno il recupero degli errori limitato nel tempo (per le unità SATA). TLER segnala rapidamente gli errori ai controller, in modo che il controller possa rispondere in modo intelligente a tali errori (principalmente in modo intelligente; si spera). SCSI (anche SAS) funziona in modo leggermente diverso. Il set di comandi SCSI consente al controller di specificare vari limiti di sforzo di recupero sugli azionamenti (MODE SELECT: RW ERR RECOVERY). Un controller RAID dovrebbe impostare le unità in modo che si guastino rapidamente, il controller può quindi verificare se l'unità pensa che funzioni correttamente con il comando TUR, guastare l'unità dall'array se esiste una condizione di controllo.


Buona spiegazione
sbrattla

11

Sì, questo è possibile, anche in scenari in cui si potrebbe pensare che l'array sia sopravvissuto al fallimento.

Alcune possibilità sul perché un array fallisce:

  • Più unità guaste di quanto potrebbero essere sostenute dalla modalità RAID. Per esempio:
    • RAID 0 (striping) non può sopravvivere a guasti dell'unità.
    • RAID 1 può sopravvivere a guasti di tutte le unità tranne 1.
    • RAID 4/5 può sopravvivere a 1 guasto dell'unità.
    • RAID 6 può sopravvivere a 2 guasti dell'unità.
    • RAID 10 può sopravvivere al guasto fino al 50% delle unità, a seconda delle unità guaste.
  • Un bug nel software RAID o nel firmware del controller.
  • Errore utente.
    • Qualcuno ha tirato troppe unità.
    • Qualcuno ha estratto un'unità e non l'ha mai sostituita e successivamente un'altra unità si è guasta.
    • L'array non è stato monitorato, consentendo il guasto di più unità di quante ne potessero sopravvivere.
  • I controller economici con unità consumer sono comunemente noti per fallire anche in scenari altrimenti sopravvissuti.
    • Un'unità a livello di consumatore tenterà quasi indefinitamente di leggere un settore danneggiato fino a quando non ottiene una buona lettura. Un controller economico attenderà quasi indefinitamente che tale unità restituisca un risultato. L'attesa può essere così lunga che il sistema operativo si arrende. Quindi al riavvio le unità non rispondono abbastanza rapidamente al controller e si presume che l'array sia guasto.
    • D'altra parte, un'unità a livello aziendale si arrenderà rapidamente, consentendo al controller di estrarre i dati da un'altra unità. Inoltre, un buon controller segnerà un'unità che impiega troppo tempo a rispondere come guasta e ad andare avanti.

1
RAID 1 dovrebbe sopravvivere alla morte di tutte le unità tranne una nell'array. Certo, la maggior parte delle persone probabilmente esegue configurazioni RAID 1 a due unità, il che significa che può sopravvivere solo alla morte di una singola unità, ma ciò non è inerente a RAID 1.
un CVn

Interessante quindi se un disco in un RAID 10 fallisce dovresti rompere un altro disco perché non sopravviverà se si rompe solo un disco :-) Penso che dovresti modificare il tuo post.
VOLA il

@ MichaelKjörling buon punto. Ho modificato il mio post.
collo lungo,

@FLY hai ragione, ho superato questo punto. modificato.
collo lungo,

RAID4 dovrebbe essere RAID3. RAID3 è lo striping dei byte con parità; RAID4 era un'implementazione ECC che richiedeva un numero enorme di unità che AFAIK non era mai stato implementato.
Dan Fiddling By Firelight,

8

Se si trattava di un'implementazione RAID 0, allora sicuramente quando una singola unità si guasta perderai l'array e tutti i dati con essa.


È un'implementazione RAID 4
Steve Rodrigue,

11
hahaha - mi hai quasi fatto lì, che cos'è veramente?
Chopper3,

3
@ Chopper3 NetApp utilizza RAID4. Quindi non è del tutto inaudito, anche se mi ha fatto ridere anche io. Forse è questo il modo in cui l'host afferma di avere un NetApp Filer o qualcosa del genere.
HopelessN00b,

1
@SteveRodrigue Sei sicuro che sia RAID 4?
MDMarra,

1
Se è effettivamente RAID4 e solo 1 unità è guasta, allora dovrebbe essere possibile installare una nuova unità e ricostruire l'array, almeno in linea di principio. Forse l'host web ha significato che una delle unità rimanenti si è guastata mentre cercava di farlo?
user3490,

2

Ho visto che i bug del firmware eliminano l'intero RAID quando un disco si guasta o quando inizia a segnalare un guasto imminente. Mi dispiace, non ho nulla di specifico su cui puntare, ma sì, può succedere. Non come parte delle specifiche RAID, ovviamente, è sicuramente un bug.


1

Si è possibile. Non dovrebbe succedere, ma certamente può. Immettere gli URE (errore di lettura irreversibile), i guasti del controller, i bug del firmware e simili.

Senza ulteriori informazioni (che il tuo host probabilmente non ti darà), non è possibile dire in un modo o nell'altro, ma chiunque abbia lavorato con molti array RAID ha avuto esperienze in cui un intero array è stato perso o arrestato in modo anomalo quando non avrei dovuto.

(E, a proposito, RAID4 non è un livello RAID molto comunemente usato, ma dovrebbe resistere alla perdita di qualsiasi unità . Non significa che lo farà sempre, comunque.)


1

Ho avuto molti guasti all'HDD in cui non si sono guastati la meccanica, ma l'elettronica che compone l'interfaccia di comunicazione. A causa delle loro dimensioni ridotte, molti componenti elettronici sono molto sensibili anche a piccole irregolarità elettriche (ciò può accadere quando i grandi motori A / C nelle vicinanze sono accesi / spenti, ecc. E l'alimentazione è un po 'economica).

Quando i convertitori di potenza interni o i condensatori (buffer di accumulo di energia) dell'inverter bruciano i segnali elettrici generati dai connettori esterni dell'HDD possono e si sposteranno fuori specifica. Poiché l'unità è collegata al controller tramite fili di rame e spesso nei server molte unità condividono una connessione via cavo per facilitare l'installazione e ridurre il disordine, ciò può facilmente interrompere o persino distruggere permanentemente un numero qualsiasi di componenti adiacenti.

A proposito, questo ha ben poco a che fare con i prezzi. È vero che controller e azionamenti costosi POSSONO utilizzare parti più tolleranti a condizioni anomale o con una schermatura migliore e che con componenti di bilancio è più probabile ottenere parti non standard. Ma ho trovato regolarmente condensatori identici su un drive da $ 50 e un drive da $ 500. E se un HDD guasto indirizza direttamente 12 Volt dall'alimentatore al connettore SATA perché qualcosa è andato in corto circuito, il tuo controller RAID verrà frastagliato, indipendentemente da quante cifre avesse il prezzo.

Non è ciò che accade di solito, ma sicuramente non è inaudito nella mia esperienza.


"spesso nei server molte unità condividono una connessione via cavo" Non nei moderni ambienti SAS o SATA. È abbastanza improbabile dal punto di vista astronomico che il tuo scenario sia quello che è successo qui; Non credo di aver mai sentito parlare dell'elettronica di un'unità che muore e porta con sé altri componenti. Mentre 12v friggerebbe sicuramente un controller SATA o SAS, i componenti logici sono collegati molto raramente al 12v in alcun modo, poiché abbassare la tensione da 12 a 3,3 o meno è molto complicato rispetto alle fonti 5v o 3.3v. Sono curioso di sapere dove potresti avere la testa di questo genere di cose che accadono; se sei disposto a condividere?
Chris S,

1

Sì, immagino che l'intero raid possa fallire dopo un singolo guasto dell'unità. La prima unità guasta verrà messa offline dal controller e il raid continuerà a funzionare correttamente. Ma quando viene sostituita l'unità guasta, il controller inizia a ricostruire il raid. Se si verifica un problema di lettura latente non scoperto su una delle altre unità rimanenti, una ricostruzione dell'unità guasta potrebbe causare la disconnessione di più unità (quando vengono rilevati problemi di lettura durante la ricostruzione del raid) causando nuovamente l'intero raid fallire.


Questo è il motivo per cui gli array RAID devono essere puliti regolarmente, per scoprire problemi di lettura o scrittura.
Chris S,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.