ZFS

Hva er RAID-Z?

Hva er RAID-Z?
Filsystemer er eldre enn selve UNIX. Og helt siden vi begynte å digitalisere livene våre på bånd, disker og SSD-er, har en trussel vært fremtredende. Det er maskinvarefeil. Data lagret på disker er ofte dyrere enn selve diskene, og disse dataene trenger all overflødighet vi kan mønstre.

RAID-Z er et av de fineste verktøyene som vil sikre at dataene dine lever så feilfrie som mulig på selv den billigste samlingen av disker. Det er en del av OpenZFS. Du kan forstå det grunnleggende om OpenZFS i denne korte artikkelen hvis du ikke har hørt om det før. Det er et open source-filsystem for bedriftsklasse tilgjengelig på Linux, FreeBSD, Mac OS X, SmartOS, Illumos og andre store operativsystemer.

Men først ... hva er RAID?

RAID står for Redundant Array of Independent (Inexpensive) Disks. Dette refererer til bransjens vanlige praksis med å lagre data ikke bare på en disk, men på tvers av flere disker, slik at dataene kan rekonstrueres fra andre disker, selv når det er en feil i disken. Måten data blir spredt over disker er forskjellig for forskjellige typer permitteringer, og de heter RAID 0, RAID 1 osv. Vi kommer ikke til å håndtere dem her. Vi vil fokusere på en RAIDZ som er spesifikk for OpenZFS.

RAID (og også RAID-Z) er ikke det samme som å skrive kopier av data til en sikkerhetskopidisk. Når du har satt opp to eller flere disker i RAID, blir dataene skrevet til dem samtidig, og alle diskene er aktive og online. Dette er grunnen til at RAID er forskjellig fra sikkerhetskopier og enda viktigere hvorfor RAID er ikke en erstatning for sikkerhetskopier. Hvis hele serveren din brenner ut, kan alle nettdiskene gå med serveren, men sikkerhetskopier vil redde dagen din. Tilsvarende, hvis det er en enkelt diskfeil og noe ikke ble sikkerhetskopiert, fordi du ikke kan gjøre det hver dag, kan RAID hjelpe deg med å hente den informasjonen.

Sikkerhetskopier blir jevnlig tatt kopier av relevante data, og RAID er en redundans i sanntid. Det er flere måter data lagres i tradisjonelle RAID-systemer, men vi vil ikke gå inn på dem her. Her vil vi dykke dypt inn i RAIDZ, som er en av de kuleste funksjonene i OpenZFS.

En siste ting før vi setter i gang, oppfordrer tradisjonell RAID noen ganger å bruke dedikerte maskinvareenheter til å gjøre RAID. Dette gjør at operativsystemet og filsystemet ikke er klar over RAID-mekanismene som er på plass. Men ofte støter RAID-kortet (den dedikerte maskinvaren) på en feil som gjør at hele diskmatrisen din er ubrukelig.

For å unngå dette, du må alltid prøve å bruke OpenZFS uten noen RAID-kontroller for maskinvare.

RAID-Z1, RAID-Z2, RAID-Z3

ZFS kombinerer oppgavene til volumbehandling og filsystemer. Dette betyr at du kan spesifisere enhetsnodene for diskene dine mens du oppretter et nytt basseng, og ZFS vil kombinere dem i ett logisk basseng, og deretter kan du opprette datasett for forskjellige bruksområder som / home, / usr, etc på toppen av det volumet.

Å sette opp RAID-Z vil kreve minst 3 eller flere disker. Du kan ikke bruke mindre enn tre disker. Lagringsleverandøren kan være noe annet for nettverkstilkoblet lagring, virtuell blokkeringsenhet osv., Men la oss holde oss til tre disker av like størrelse som et enkelt eksempel.

De tre diskene kan kombineres til en virtuell enhet (vdev). Dette er byggesteinen til en zpool. Hvis du begynner med bare 3 disker, har du 1 vdev i zpoolen din. Du kan ha 2 vdevs med 6 disker og så videre.

Anta at du har en 1 GB fil som du vil lagre i dette bassenget. RAID-Z deler den i to like store deler på 512 MB og utfører deretter en matematisk operasjon mellom dem som genererer en tredje del på 512 MB (kalt paritetsblokk). De tre biter blir deretter skrevet i tre separate vdevs. Så filen ender med å ta 1.Totalt 5 GB plass.

Fordelen er imidlertid at hvis en av disken svikter, sier den første klumpen er tapt, så kan den andre klumpen og paritetsblokken brukes til å gjenskape den første. På samme måte, hvis den andre delen går tapt, kan den første og tredje brukes til å gjenskape andre.

Filene dine bruker 50% mer plass enn nødvendig, men du tåler feilen på en disk per vdev. Dette er RAID-Z1.

Men et ZFS-basseng kan vokse, og til slutt vil du trenge mer plass. Vel, du kan ikke legge til flere disker direkte til en vdev (den funksjonen er foreslått og kan godt være under utvikling akkurat nå). Du kan imidlertid legge til en vdev. Dette betyr at du kan legge til disker i sett med tre og behandle hvert nye sett som en enkelt logisk vdev.

Du kan nå tåle en enkelt diskfeil i denne nye vdev og en enkelt diskfeil i den eldre. Men hvis mer enn én disk mislykkes i en enkelt vdev, kan den ikke gjenopprettes. Hele bassenget ditt blir gjort ubrukelig selv de sunnere vdevene.

Dette er en veldig forenklet modell. Filer blir aldri delt nøyaktig i halvdeler, men data blir behandlet som blokker med faste lengder. Videre kan du bruke mer enn 3 disker (men 3 er minimum) per vdev og RAID-Z1 vil sikre at hver unike datablokk skrives slik at den kan gjenopprette fra feil på en enkelt disk i per vdev. Heldigvis trenger du ikke å bekymre deg for disse interne detaljene. Det er ZFS sitt ansvar. Når bassenget er satt opp, blir data automatisk spredt over det på den mest optimale måten.

Feiltoleransen er fremdeles begrenset til en diskfeil per vdev. For å gå utover det, må vi gå til RAID-Z2. RAID-Z2 fungerer på en lignende måte, men det skaper to paritetsblokker og to datablokker fra et enkelt stykke informasjon. Dette gjør at den tåler opptil to diskfeil per vdev. En vdev må også ha minst 4 disker hvis den skal implementere et RAID-Z2-oppsett.

Tilsvarende krever RAID-Z3 minst 5 disker per vdev og tåler feilen til 3 av dem. RAID-Z3 er ikke nesten like plasseffektiv som RAID-Z2, som ikke er like effektiv når det gjelder plass som RAID-Z1.

Konklusjon

Med RAID-Z ser vi en avveining mellom den brukbare plassen som tilbys av individuelle disker og påliteligheten som samlingen av slike disker kan tilby. Med større antall disker øker også sannsynligheten for at flere disker mislykkes samtidig.

Den beste måten å motvirke det på er å bruke en effektiv RAID-Z-strategi som gir pålitelighet så vel som det beste for pengene. Gi oss beskjed hvis du syntes denne veiledningen var nyttig, eller hvis du har spørsmål angående RAID-Z!

Mus Kartlegg museknappene på en annen måte for annen programvare med X-Mouse Button Control
Kartlegg museknappene på en annen måte for annen programvare med X-Mouse Button Control
Kanskje du trenger et verktøy som kan gjøre at musens kontroll endres med hvert program du bruker. Hvis dette er tilfelle, kan du prøve et program som...
Mus Microsoft Sculpt Touch Wireless Mouse Review
Microsoft Sculpt Touch Wireless Mouse Review
Jeg har nylig lest om Microsoft Sculpt Touch trådløs mus og bestemte meg for å kjøpe den. Etter å ha brukt den en stund bestemte jeg meg for å dele mi...
Mus AppyMouse Pekeplate og musepeker på skjermen for Windows-nettbrett
AppyMouse Pekeplate og musepeker på skjermen for Windows-nettbrett
Nettbrettbrukere savner ofte musepekeren, spesielt når de bruker vanlige bærbare datamaskiner. Berøringsskjermen Smarttelefoner og nettbrett har mange...