Btrfs

Hvordan sette opp Btrfs RAID

Hvordan sette opp Btrfs RAID
Btrfs er et moderne Copy-on-Write (CoW) filsystem med innebygd RAID-støtte. Så, du trenger ikke noen tredjepartsverktøy for å lage RAID-programvare på et Btrfs-filsystem.

Btrfs-filsystemet holder filsystemets metadata og data separat. Du kan bruke forskjellige RAID-nivåer for dataene og metadataene samtidig. Dette er en stor fordel med Btrfs-filsystemet.

Denne artikkelen viser deg hvordan du konfigurerer Btrfs RAID i RAID-0, RAID-1, RAID-1C3, RAID-1C4, RAID-10, RAID-5 og RAID-6 konfigurasjoner.

Forkortelser

Forutsetninger

For å prøve eksemplene i denne artikkelen:

I min Ubuntu-maskin har jeg lagt til fire harddisker (sdb, sdc, sdd, sde). Hver av dem er 20 GB i størrelse.

$ sudo lsblk -e7

Merk: HDDene / SSD-ene dine kan ha andre navn enn mine. Så husk å erstatte dem med dine fra nå av.


For hjelp med å installere Btrfs-filsystemet i Ubuntu, sjekk ut artikkelen Installer og bruk Btrfs på Ubuntu 20.04 LTS.

For hjelp med å installere Btrfs-filsystemet i Fedora, se artikkelen Installer og bruk Btrfs på Fedora 33.

Btrfs-profiler

En Btrfs-profil brukes til å fortelle Btrfs-filsystemet hvor mange kopier av dataene / metadataene som skal beholdes og hvilke RAID-nivåer som skal brukes til dataene / metadataene. Btrfs-filsystemet inneholder mange profiler. Å forstå dem vil hjelpe deg å konfigurere en Btrfs RAID akkurat slik du vil.

De tilgjengelige Btrfs-profilene er som følger:

enkelt: Hvis enkelt profilen brukes til dataene / metadataene, vil bare én kopi av dataene / metadataene bli lagret i filsystemet, selv om du legger til flere lagringsenheter i filsystemet. Så, 100% av diskplass på hver av lagringsenhetene som er lagt til filsystemet, kan benyttes.

dup: Hvis dup profilen brukes til data / metadata, vil hver av lagringsenhetene som legges til i filsystemet beholde to kopier av dataene / metadataene. Så, 50% av diskplass på hver av lagringsenhetene som er lagt til filsystemet, kan benyttes.

raid0: I raid0 profil, vil data / metadata bli delt jevnt over alle lagringsenhetene som er lagt til filsystemet. I dette oppsettet vil det ikke være overflødige (dupliserte) data / metadata. Så, 100% av diskplass på hver av lagringsenhetene som er lagt til filsystemet, kan brukes. Hvis en av lagringsenhetene i alle fall mislykkes, vil hele filsystemet bli ødelagt. Du trenger minst to lagringsenheter for å konfigurere Btrfs-filsystemet i raid0 profil.

raid1: I raid1 profil, lagres to kopier av dataene / metadataene på lagringsenhetene som er lagt til filsystemet. I dette oppsettet kan RAID-arrayet overleve en stasjonsfeil. Men du kan bare bruke 50% av den totale diskplassen. Du trenger minst to lagringsenheter for å konfigurere Btrfs-filsystemet i raid1 profil.

raid1c3: I raid1c3 profil lagres tre kopier av dataene / metadataene på lagringsenhetene som er lagt til filsystemet. I dette oppsettet kan RAID-arrayet overleve to stasjonsfeil, men du kan bare bruke 33% av den totale diskplassen. Du trenger minst tre lagringsenheter for å konfigurere Btrfs-filsystemet i raid1c3 profil.

raid1c4: I raid1c4 profil, lagres fire kopier av dataene / metadataene på lagringsenhetene som er lagt til filsystemet. I dette oppsettet kan RAID-arrayet overleve tre stasjonsfeil, men du kan bare bruke det 25% av den totale diskplassen. Du trenger minst fire lagringsenheter for å konfigurere Btrfs-filsystemet i raid1c4 profil.

raid10: I raid10 profil, lagres to kopier av dataene / metadataene på lagringsenhetene som er lagt til filsystemet, som i raid1 profil. Dataene / metadataene vil også bli delt over lagringsenhetene, som i raid0 profil.

De raid10 profilen er en hybrid av raid1 og raid0 profiler. Noen av lagringsenhetene dannes raid1 arrays og noen av disse raid1 arrays brukes til å danne en raid0 array. I en raid10 oppsett, kan filsystemet overleve en enkelt stasjonsfeil i hver av raid1 arrays.

Du kan bruke 50% av den totale diskplassen i raid10 konfigurasjon. Du trenger minst fire lagringsenheter for å konfigurere Btrfs-filsystemet i raid10 profil.

raid5: I raid5 profil, vil en kopi av dataene / metadataene bli delt over lagringsenhetene. En enkelt paritet vil bli beregnet og distribuert mellom lagringsenhetene i RAID-arrayet.

I en raid5 konfigurasjon, kan filsystemet overleve en enkelt stasjonsfeil. Hvis en stasjon mislykkes, kan du legge til en ny stasjon i filsystemet, og de tapte dataene blir beregnet fra den distribuerte pariteten til de kjørende stasjonene.

Du kan bruke 100x (N-1) / N% av de totale diskplassene i raid5 konfigurasjon. Her, N er antall lagringsenheter som er lagt til filsystemet. Du trenger minst tre lagringsenheter for å sette opp Btrfs-filsystemet i raid5 profil.

raid6: I raid6 profil, vil en kopi av dataene / metadataene bli delt over lagringsenhetene. To pariteter vil bli beregnet og distribuert mellom lagringsenhetene i RAID-arrayet.

I en raid6 konfigurasjon, kan filsystemet overleve to stasjonsfeil samtidig. Hvis en stasjon mislykkes, kan du legge til en ny stasjon i filsystemet, og de tapte dataene blir beregnet fra de to distribuerte paritetene til de kjørende stasjonene.

Du kan bruke 100x (N-2) / N% av den totale diskplassen i raid6 konfigurasjon. Her, N er antall lagringsenheter som er lagt til filsystemet. Du trenger minst fire lagringsenheter for å konfigurere Btrfs-filsystemet i raid6 profil.

Opprette et monteringspunkt

Du må opprette en katalog for å montere Btrfs-filsystemet du oppretter i de neste avsnittene i denne artikkelen.

For å opprette katalog / monteringspunkt / data, kjør følgende kommando:

$ sudo mkdir -v / data

Sette opp RAID-0

I denne delen lærer du hvordan du konfigurerer en Btrfs RAID i RAID-0-konfigurasjonen ved hjelp av fire harddisker (sdb, sdc, sdd og sde). HDDene er 20 GB store.

$ sudo lsblk -e7

For å lage en Btrfs RAID i RAID-0-konfigurasjonen ved hjelp av fire harddisker (sdb, sdc, sdd, og sde) kjør følgende kommando:

$ sudo mkfs.btrfs -L data -d raid0 -m raid0 -f / dev / sdb / dev / sdc / dev / sdd / dev / sde

Her,

Btrfs-filsystemet data i RAID-0-konfigurasjonen skal nå opprettes, som du kan se på skjermbildet nedenfor.

Du kan montere Btrfs RAID ved hjelp av hvilken som helst HDD / SSD du brukte til å lage RAID.

For eksempel brukte jeg harddiskene sdb, sdc, sdd, og sde for å opprette Btrfs RAID i RAID-0-konfigurasjonen.

Så jeg kan montere Btrfs-filsystemet data i /data katalogen ved hjelp av harddisken sdb, som følger:

$ sudo mount / dev / sdb / data

Som du kan se, er Btrfs RAID montert i /data katalog.

$ sudo df -h / data

For å finne filsystemets bruksinformasjon for data Btrfs filsystem montert i /data katalog, kjør følgende kommando:

$ sudo btrfs filsystembruk / data

Som du kan se,

RAID-størrelsen (Enhetsstørrelse) er 80 GB (4 × 20 GB per harddisk).

Om 78.98 GB (Gratis (estimert)) av 80 GB diskplass kan brukes i RAID-0-konfigurasjonen.

Bare en kopi av dataene (Dataforhold) og en kopi av metadataene (Metadata-forhold) lagres i Btrfs-filsystemet i RAID-0-konfigurasjonen.

Mens Btrfs RAID fungerer, kan du demontere den fra /data katalog, som følger:

$ sudo umount / data

Sette opp RAID-1

I denne delen vil du lære hvordan du konfigurerer en Btrfs RAID i RAID-1-konfigurasjonen ved hjelp av fire harddisker (sdb, sdc, sdd, og sde). HDDene er 20 GB store.

$ sudo lsblk -e7

For å lage en Btrfs RAID i RAID-1-konfigurasjonen ved hjelp av fire harddisker (sdb, sdc, sdd, og sde), kjør følgende kommando:

$ sudo mkfs.btrfs -L data -d raid1 -m raid1 -f / dev / sdb / dev / sdc / dev / sdd / dev / sde

Her,

Btrfs-filsystemdataene i RAID-1-konfigurasjonen skal nå opprettes, som du kan se på skjermbildet nedenfor.

Du kan montere Btrfs RAID ved hjelp av hvilken som helst HDD / SSD du brukte til å lage RAID.

For eksempel brukte jeg harddiskene sdb, sdc, sdd, og sde for å lage Btrfs RAID i RAID-1-konfigurasjonen.

Jeg kan montere Btrfs-filsystemet data i /data katalogen ved hjelp av harddisken sdb, som følger:

$ sudo mount / dev / sdb / data

Som du kan se, er Btrfs RAID montert i / data-katalogen.

$ sudo df -h / data

For å finne informasjon om filsystemets bruk av dataene Btrfs-filsystemet montert i /data katalog, kjør følgende kommando:

$ sudo btrfs filsystembruk / data

Som du kan se,

RAID-størrelsen (Enhetsstørrelse) er 80 GB (4 × 20 GB per harddisk).

Om 38.99 GB (Gratis (estimert)) av 80 GB diskplass kan brukes i RAID-1-konfigurasjonen.

I RAID-1-konfigurasjonen, to kopier av dataene (Dataforhold) og to kopier av metadataene (Metadata-forhold) lagres i Btrfs-filsystemet.

Mens Btrfs RAID fungerer, kan du demontere den fra /data katalog, som følger:

$ sudo umount / data

Sette opp RAID-1C3

I denne delen vil du lære hvordan du konfigurerer en Btrfs RAID i RAID-1C3-konfigurasjonen ved hjelp av fire harddisker (sdb, sdc, sdd og sde). HDDene er 20 GB store

$ sudo lsblk -e7

Å lage en Btrfs RAID i RAID-1C3-konfigurasjonen ved hjelp av de fire harddiskene sdb, sdc, sdd, og sde, kjør følgende kommando:

$ sudo mkfs.btrfs -L data -d raid1c3 -m raid1c3 -f / dev / sdb / dev / sdc / dev / sdd / dev / sde

Her,

Btrfs-filsystemet data i RAID-1C3-konfigurasjonen skal nå opprettes, som du kan se på skjermbildet nedenfor.

Du kan montere Btrfs RAID ved hjelp av hvilken som helst HDD / SSD du brukte til å lage RAID.

For eksempel brukte jeg harddiskene sdb, sdc, sdd, og sde for å lage Btrfs RAID i RAID-1C3-konfigurasjonen.

Så jeg kan montere Btrfs-filsystemet data i /data katalogen ved hjelp av harddisken sdb, som følger:

$ sudo mount / dev / sdb / data

Som du kan se, er Btrfs RAID montert i /data katalog.

$ sudo df -h / data

For å finne filsystemets bruksinformasjon for data Btrfs filsystem montert i /data katalog, kjør følgende kommando:

$ sudo btrfs filsystembruk / data

Som du kan se,

RAID-størrelsen (Enhetsstørrelse) er 80 GB (4 × 20 GB per harddisk).

Om 25.66 GB (Gratis (estimert)) av 80 GB diskplass kan brukes i RAID-1C3-konfigurasjonen.

I RAID-1C3-konfigurasjonen, tre kopier av dataene (Dataforhold) og tre kopier av metadataene (Metadata-forhold) lagres i Btrfs-filsystemet.

Mens Btrfs RAID fungerer, kan du demontere den fra /data katalog, som følger:

$ sudo umount / data

Sette opp RAID-1C4

I denne delen lærer du hvordan du konfigurerer en Btrfs RAID i RAID-1C4-konfigurasjonen ved hjelp av de fire harddiskene sdb, sdc, sdd, og sde. HDDene er 20 GB store.

$ sudo lsblk -e7

Å lage en Btrfs RAID i RAID-1C4-konfigurasjonen ved hjelp av de fire harddiskene sdb, sdc, sdd, og sde, kjør følgende kommando:

$ sudo mkfs.btrfs -L data -d raid1c4 -m raid1c4 -f / dev / sdb / dev / sdc / dev / sdd / dev / sde

Her,

Btrfs-filsystemet data i RAID-1C4-konfigurasjonen skal nå opprettes, som du kan se på skjermbildet nedenfor.

Du kan montere Btrfs RAID ved hjelp av hvilken som helst HDD / SSD du brukte til å lage RAID.

For eksempel brukte jeg harddiskene sdb, sdc, sdd, og sde for å lage Btrfs RAID i RAID-1C4-konfigurasjonen.

Så jeg kan montere Btrfs-filsystemet data i /data katalogen ved hjelp av harddisken sdb, som følger:

$ sudo mount / dev / sdb / data

Som du kan se, er Btrfs RAID montert i /data

$ sudo df -h / data

For å finne filsystemets bruksinformasjon for data Btrfs filsystem montert i /data

$ sudo btrfs filsystembruk / data

Som du kan se,

RAID-størrelsen (Enhetsstørrelse) er 80 GB (4 × 20 GB per harddisk).

Om 18.99 GB (Gratis (estimert)) av 80 GB diskplass kan brukes i RAID-1C4-konfigurasjonen.

I RAID-1C4-konfigurasjonen, fire kopier av dataene (Dataforhold) og fire kopier av metadataene (Metadata-forhold) lagres i Btrfs-filsystemet.

Mens Btrfs RAID fungerer, kan du demontere den fra /data katalog, som følger:

$ sudo umount / data

Sette opp RAID-10

I denne delen vil du lære hvordan du konfigurerer en Btrfs RAID i RAID-10-konfigurasjonen ved hjelp av de fire harddiskene sdb, sdc, sdd, og sde. HDDene er 20 GB store.

$ sudo lsblk -e7

Å lage en Btrfs RAID i RAID-10-konfigurasjonen ved hjelp av de fire harddiskene sdb, sdc, sdd, og sde, kjør følgende kommando:

$ sudo mkfs.btrfs -L data -d raid10 -m raid10 -f / dev / sdb / dev / sdc / dev / sdd / dev / sde

Her,

Btrfs-filsystemet data i RAID-10-konfigurasjonen skal nå opprettes, som du kan se på skjermbildet nedenfor.

Du kan montere Btrfs RAID ved hjelp av hvilken som helst HDD / SSD du brukte til å lage RAID.

For eksempel brukte jeg harddiskene sdb, sdc, sdd, og sde for å lage Btrfs RAID i RAID-10-konfigurasjonen.

Så jeg kan montere Btrfs-filsystemet data i /data katalogen ved hjelp av harddisken sdb, som følger:

$ sudo mount / dev / sdb / data

Som du kan se, er Btrfs RAID montert i /data katalog.

$ sudo df -h / data

For å finne informasjon om filsystemets bruk av dataene Btrfs-filsystemet montert i /data katalog, kjør følgende kommando:

$ sudo btrfs filsystembruk / data

Som du kan se,

RAID-størrelsen (Enhetsstørrelse) er 80 GB (4 × 20 GB per harddisk).

Om 39.48 GB (Gratis (estimert)) av 80 GB diskplass kan brukes i RAID-10-konfigurasjonen.

I RAID-10-konfigurasjonen, to kopier av dataene (Dataforhold) og to kopier av metadataene (Metadata-forhold) lagres i Btrfs-filsystemet.

Mens Btrfs RAID fungerer, kan du demontere den fra /data katalog, som følger:

$ sudo umount / data

Sette opp RAID-5

I denne delen lærer du hvordan du konfigurerer en Btrfs RAID i RAID-5-konfigurasjonen ved hjelp av de fire harddiskene sdb, sdc, sdd, og sde. HDDene er 20 GB store.

$ sudo lsblk -e7

Å lage en Btrfs RAID i RAID-5-konfigurasjonen ved hjelp av de fire harddiskene sdb, sdc, sdd, og sde, kjør følgende kommando:

$ sudo mkfs.btrfs -L data -d raid5 -m raid5 -f / dev / sdb / dev / sdc / dev / sdd / dev / sde

Her,

Btrfs-filsystemet data i RAID-5-konfigurasjonen skal nå opprettes, som du kan se på skjermbildet nedenfor.

Du kan montere Btrfs RAID ved hjelp av hvilken som helst HDD / SSD du brukte til å lage RAID.

For eksempel brukte jeg harddiskene sdb, sdc, sdd, og sde for å lage Btrfs RAID i RAID-5-konfigurasjonen.

Så jeg kan montere Btrfs-filsystemet data i /data katalogen ved hjelp av harddisken sdb, som følger:

$ sudo mount / dev / sdb / data

Som du kan se, er Btrfs RAID montert i /data katalog.

$ sudo df -h / data

For å finne informasjon om filsystembruk for dataene Btrfs-filsystemet montert i /data katalog, kjør følgende kommando:

$ sudo btrfs filsystembruk / data

Som du kan se,

RAID-størrelsen (Enhetsstørrelse) er 80 GB (4 × 20 GB per harddisk).

Om 59.24 GB (Gratis (estimert)) av 80 GB diskplass kan brukes i RAID-5-konfigurasjonen.

I RAID-5-konfigurasjonen, 1.33 kopier av dataene (Dataforhold) og 1.33 eksemplarer av metadataene (Metadata-forhold) lagres i Btrfs-filsystemet.

Mens Btrfs RAID fungerer, kan du demontere den fra /data katalog, som følger:

$ sudo umount / data

Sette opp RAID-6

I denne delen vil du lære hvordan du konfigurerer en Btrfs RAID i RAID-6-konfigurasjonen ved hjelp av de fire harddiskene sdb, sdc, sdd, og sde. HDDene er 20 GB store.

$ sudo lsblk -e7

Å lage en Btrfs RAID i RAID-6-konfigurasjonen ved hjelp av de fire harddiskene sdb, sdc, sdd, og sde, kjør følgende kommando:

$ sudo mkfs.btrfs -L data -d raid6 -m raid6 -f / dev / sdb / dev / sdc / dev / sdd / dev / sde

Her,

Btrfs-filsystemet data i RAID-6-konfigurasjonen skal nå opprettes, som du kan se på skjermbildet nedenfor.

Du kan montere Btrfs RAID ved hjelp av hvilken som helst HDD / SSD du brukte til å lage RAID.

For eksempel brukte jeg harddiskene sdb, sdc, sdd, og sde for å lage Btrfs RAID i RAID-6-konfigurasjonen.

Så jeg kan montere Btrfs-filsystemet data i /data katalogen ved hjelp av harddisken sdb, som følger:

$ sudo mount / dev / sdb / data

Som du kan se, er Btrfs RAID montert i /data katalog.

$ sudo df -h / data

For å finne filsystemets bruksinformasjon for data Btrfs filsystem montert i /data katalog, kjør følgende kommando:

$ sudo btrfs filsystembruk / data

Som du kan se,

RAID-størrelsen (Enhetsstørrelse) er 80 GB (4 × 20 GB per harddisk).

Om 39.48 GB (Gratis (estimert)) av 80 GB diskplass kan brukes i RAID-6-konfigurasjonen.

I RAID-6-konfigurasjonen, to kopier av dataene (Dataforhold) og to kopier av metadataene (Metadata-forhold) lagres i Btrfs-filsystemet.

Mens Btrfs RAID fungerer, kan du demontere den fra /data katalog, som følger:

$ sudo umount / data

Problemer med Btrfs RAID-5 og RAID-6

De innebygde Btrfs RAID-5- og RAID-6-konfigurasjonene er fremdeles eksperimentelle. Disse konfigurasjonene er veldig ustabile, og du bør ikke bruke dem i produksjonen.

For å forhindre datakorrupsjon implementerte ikke Ubuntu-operativsystemet RAID-5 og RAID-6 for Btrfs-filsystemet. Så du vil ikke kunne lage en Btrfs RAID i RAID-5 og RAID-6-konfigurasjonene ved hjelp av den innebygde RAID-funksjonen i Btrfs-filsystemet på Ubuntu. Derfor har jeg vist deg hvordan du lager en Btrfs RAID i RAID-5 og RAID-6-konfigurasjonene i Fedora 33, i stedet for Ubuntu 20.04 LTS.

Montere en Btrfs RAID automatisk ved oppstart

For å montere en Btrfs RAID automatisk ved oppstart ved hjelp av / etc / fstab-filen, må du vite UUID for Btrfs-filsystemet.

Du finner UUID for et Btrfs-filsystem med følgende kommando:

$ sudo blkid --match-token TYPE = btrfs

Som du kan se, er UUID for lagringsenhetene som legges til Btrfs-filsystemet for å konfigurere RAID det samme.

I mitt tilfelle er det det c69a889a-8fd2-4571-bd97-a3c2e4543b6b. Det vil være annerledes for deg. Så husk å erstatte denne UUID med din fra nå av.

Nå åpner du / etc / fstab fil med nano-teksteditoren, som følger:

$ sudo nano / etc / fstab

Legg til følgende linje på slutten av / etc / fstab fil.

UUID =c69a889a-8fd2-4571-bd97-a3c2e4543b6b / data btrfs er standard 0 0

Når du er ferdig, trykker du på + X etterfulgt av Y og for å redde / etc / fstab fil.

For at endringene skal tre i kraft, må du starte datamaskinen på nytt som følger:

$ sudo omstart

Som du kan se, er Btrfs RAID riktig montert i /data katalog.

$ df -h / data

Som du kan se, monterte Btrfs RAID i /data katalog fungerer bra.

$ sudo btrfs filsystembruk / data

Konklusjon

Denne artikkelen forklarte forskjellige Btrfs RAID-profiler i detalj. Artikkelen viste deg hvordan du setter opp en Btrfs RAID i RAID-0, RAID-1, RAID-1C3, RAID-1C4, RAID-10, RAID-5 og RAID-6 konfigurasjoner. Du har også lært om noen av problemene med Btrfs RAID-5 og RAID-6-konfigurasjonene, samt hvordan du monterer Btrfs RAID automatisk ved oppstart.

Referanser

Vulkan for Linux-brukere
Med hver nye generasjon grafikkort ser vi spillutviklere skyve grensene for grafisk troskap og komme et skritt nærmere fotorealisme. Men til tross for...
OpenTTD vs Simutrans
Å lage din egen transportsimulering kan være morsom, avslappende og ekstremt fristende. Derfor må du sørge for at du prøver så mange spill som mulig f...
OpenTTD Tutorial
OpenTTD er et av de mest populære forretningssimuleringsspillene der ute. I dette spillet må du lage en fantastisk transportvirksomhet. Du begynner im...