01
Schrijf eerst de herstelvereiste
Definieer het faalmodel in gewone taal: één apparaat, twee apparaten, een controller, onbedoelde verwijdering of de hele server. RAID pakt alleen sommige apparaatstoringen aan. Stel een recovery-time-objective voor serviceherstel en een recovery-point-objective voor gegevensverlies vast, en identificeer vervolgens aan welke vereiste de lokale array kan voldoen en welke replicatie of back-up elders vereist.
Leg ook vast of het systeem tijdens een verslechterde toestand schrijfacties moet blijven accepteren. Een voornamelijk leesarchief, een schrijfintensieve database en wegwerpbare scratchruimte kunnen hetzelfde aantal schijven gebruiken maar hebben verschillende indelingen nodig. Capaciteitsefficiëntie is daarom één beperking, niet het eindoordeel.
02
Stem de indeling af op de workload en het aantal apparaten
Mirrors zijn eenvoudig voor een opstart- of dataset met twee apparaten en kunnen geschikt zijn voor willekeurige I/O waar onafhankelijke mirrorgroepen nuttig zijn. Parity-indelingen ruilen schrijfwerk en reconstructiecomplexiteit in voor meer capaciteit. Dubbele pariteit kan een extra foutmarge behouden in een brede HDD-set, terwijl RAID 10 de helft van de ruwe capaciteit inruilt voor mirrorparen. Dit zijn ontwerptendensen, geen prestatiegaranties; controller, bestandssysteem, queuediepte, recordgrootte en applicatiepatroon zijn allemaal van belang.
Gebruik de werkelijke catalogustopologie. De opslagservers met 12-schijven en 24-schijven bieden keuzes die niet beschikbaar zijn op een compute-server met twee NVMe-schijven. Neem het afzonderlijke NVMe-opstartpaar niet op in de berekening van de data-array en ga er niet van uit dat één zeer brede groep de voorkeur heeft boven meerdere groepen zonder foutdomeinen en I/O-gedrag te modelleren.
Stem de indeling af op de workload en het aantal apparaten| Workloadvraag | Indeling om te evalueren | Reden om te valideren |
|---|
| Twee lokale apparaten en continuïteit vereist | Spiegel | Capaciteit van één apparaat en een eenvoudige gedegradeerde toestand |
|---|
| Brede HDD pool met vereiste voor twee storingen | RAID 6 of RAIDZ2 | Pariteitsbreedte, rebuild-belasting en bestandssysteemrichtlijnen |
|---|
| Willekeurige schrijfacties en meerdere even schijfparen | RAID 10 of gespiegelde vdevs | Capaciteitsafweging en werkelijke workloadlatentie |
|---|
| Wegwerpgegevens met een reproduceerbare bron | RAID 0 kan worden overwogen | Verlies van een lid verliest de array |
|---|
03
Kies één laag om redundantie te bezitten
Bepaal of een hardwarecontroller, Linux MD of een bestandssysteem zoals ZFS eigenaar is van de indeling. Vermijd het stapelen van onafhankelijke RAID lagen zonder gedocumenteerde reden, omdat gezondheids- en vervangingsstatus dubbelzinnig kunnen worden. ZFS redundantie wordt uitgedrukt via mirrors of RAIDZ vdevs en vertrouwt op checksums; een verloren top-level vdev kan de pool verliezen, dus het toevoegen van een enkel niet-redundant apparaat aan een anders redundante pool verandert het faalmodel.
Bevestig de schijfidentiteit, vervangingsprocedure, opstartgedrag en wat het besturingssysteem kan waarnemen voordat u de array aanmaakt. Het later wijzigen van de topologie kan beperkt of verstorend zijn, met name voor pariteitsindelingen.
04
Plan het venster voor degradatie en reconstructie
Monitoring moet onderscheid maken tussen gezonde, gedegradeerde, reconstructie- en consistentiecontroletaken. Linux MD stelt acties bloot zoals resync, recover, check en repair; verzamel voortgang en mismatches in plaats van alleen te melden dat het volume is aangekoppeld. Een dirty en gedegradeerde RAID 5 of 6 kan een corruptierisico vormen, daarom mag geforceerde assemblage nooit een routinematige herstelomweg zijn.
Documenteer alertroutering, aanschaf van reserveonderdelen, identificatie van vervanging, throttling van werklast en het punt waarop een herstel veiliger is dan doorgaan. Beloof nooit een rebuild-duur zonder de geleverde apparaten, arraybelasting en controller te meten.
05
Leg de keuze en de beperkingen ervan vast
Het voltooide ontwerp moet de indeling, aannames voor gelijke schijven, schatting van bruikbare capaciteit, getolereerde fouten, monitoringbron en herstellocatie benoemen. Bewaar versiebeheerde gegevens in een ander faaldomein en test een herstel. Het verwachte resultaat is geen claim dat RAID verlies voorkomt; het is een array waarvan het faalgedrag en de herstelverantwoordelijkheid worden begrepen voordat productiegegevens arriveren.
Directe antwoorden
Vragen over deze gids
Is RAID 6 altijd de beste keuze voor een grote HDD server?
Nee. Het biedt tolerantie voor twee pariteiten, maar workload-I/O, vdev- of arraybreedte, controller- of bestandssysteemrichtlijnen, herbouwbewerkingen en het herstelddoel bepalen nog steeds de indeling.
Kan een hot spare een externe back-up vervangen?
Nee. Een spare kan de tijd verkorten voordat de reconstructie begint, maar blijft in dezelfde server en beschermt niet tegen verwijdering, compromittering, corruptie die door de stack wordt verspreid of locatieverlies.