ZFS

ZFS Concepts and Tutorial

ZFS Concepts and Tutorial

 ZFS: Concepts and Tutorial

På din søken etter dataintegritet ved hjelp av OpenZFS er uunngåelig. Faktisk ville det være ganske uheldig hvis du bruker noe annet enn ZFS for å lagre verdifulle data.  Imidlertid er mange mennesker motvillige til å prøve det. Årsaken er at et forretningssystem med et bredt spekter av funksjoner innebygd i det, ZFS må være vanskelig å bruke og administrere.  Ingenting kan være lenger fra sannheten. Å bruke ZFS er så enkelt som det blir. Med en håndfull terminologier og enda færre kommandoer er du klar til å bruke ZFS hvor som helst - Fra bedriften til ditt hjem / kontor NAS.

Med ordene til skaperne av ZFS: “Vi vil gjøre det enkelt å legge til lagring i systemet ditt som å legge til nye RAM-pinner.”

Vi får se senere på hvordan det gjøres. Jeg skal bruke FreeBSD 11.1 for å utføre testene nedenfor, er kommandoene og den underliggende arkitekturen like for alle Linux-distribusjoner som støtter OpenZFS.

Hele ZFS-stakken kan legges ut i følgende lag:

Zpool lage

Til å begynne med kan vi starte med et oppsett hvor vi har seks 20 GB-disker ada [1-6]

$ ls -al / dev / ada?

De ada0 er der operativsystemet er installert. Resten vil bli brukt til denne demonstrasjonen.

Navnene på diskene dine kan variere avhengig av hvilken type grensesnitt som brukes. Typiske eksempler inkluderer: da0, ada0, acd0 og cd.  Ser innover/ devvil gi deg en ide om hva som er tilgjengelig.

EN zpool er skapt av zpool lage kommando:

$ zpool create OurFirstZpool ada1 ada2 ada3 # Og kjør deretter følgende kommando: $ zpool status 

Vi vil se en fin utgang som gir oss detaljert informasjon om bassenget:

Dette er den enkleste zpoolen uten redundans eller feiltoleranse ... Hver disk er sin egen vdev.

Imidlertid vil du fremdeles få all ZFS-godhet som kontrollsummer for hver datablokk som lagres, slik at du i det minste kan oppdage om dataene du lagret blir ødelagt.

Filsystemer, a.k.et datasett, kan nå opprettes på toppen av dette bassenget på følgende måte:

$ zfs oppretter OurFirstZpool / dataset1 

Bruk din kjente df -h kommando eller kjør:

$ zfs liste

Slik ser du egenskapene til det nyopprettede filsystemet:

Legg merke til hvordan hele plassen som tilbys av de tre diskene (vdevs) er tilgjengelig for filsystemet. Dette gjelder for alle filsystemene du oppretter i bassenget med mindre vi spesifiserer noe annet.

Hvis du vil legge til en ny disk (vdev), ada4, du kan gjøre det ved å løpe:

$ zpool legg til OurFirstZpool ada4

Nå, hvis du ser tilstanden til filsystemet ditt

Den tilgjengelige størrelsen har nå vokst uten ekstra problemer med å utvide partisjonen eller sikkerhetskopiere og gjenopprette dataene i filsystemet.


Virtuelle enheter - Vdevs

Vdevs er byggesteinene til en zpool, mesteparten av redundansen og ytelsen avhenger av måten diskene dine er gruppert i disse, såkalte vdevs . La oss se på noen av de viktigste typene vdevs:

1. RAID 0 eller striper

Hver disk fungerer som sin egen vdev. Ingen dataredundans, og dataene spres over alle diskene. Også kjent som striping. En enkelt disks feil vil bety at hele zpoolen blir gjort ubrukelig. Brukbar lagring er lik summen av alle tilgjengelige lagringsenheter.

Den første zpoolen vi opprettet i forrige seksjon er en RAID 0 eller stripet lagringsmatrise.

2. RAID 1 eller speil

Data speiles mellom ndisker. Den faktiske kapasiteten til vdev er begrenset av den rå kapasiteten til den minste disken i den n-disk array. Data speiles mellom n skiver, betyr dette at du tåler feilen på n-1 disker.

For å opprette et speilet utvalg, bruk nøkkelordet speil:

$ zpool lage tank speil ada1 ada2 ada3

Dataene skrevet til tank zpool vil bli speilet blant disse tre diskene, og den faktiske tilgjengelige lagringsplassen er lik størrelsen på den minste disken, som i dette tilfellet er omtrent 20 GB.

I fremtiden vil du kanskje legge til flere disker i dette bassenget, og det er to mulige ting du kan gjøre. For eksempel zpool tank har tre disker som speiler data som et enkelt vdev-speil-0:

Det kan være lurt å legge til ekstra disk, si ada4, å speile samme data. Dette kan gjøres ved å kjøre kommandoen:

$ zpool fest tank ada1 ada4

Dette vil legge til en ekstra disk til vdev som allerede har disken ada1 i den, men ikke øke tilgjengelig lagringsplass.

På samme måte kan du koble stasjoner fra et speil ved å kjøre:

$ zpool ta av tanken ada4

På den annen side vil du kanskje legge til en ekstra vdev for å øke kapasiteten til zpool. Det kan gjøres ved hjelp av kommandoen zpool add:

$ zpool add tank mirror ada4 ada5 ada6


Ovennevnte konfigurasjon vil tillate at data blir stripet over vdevs mirror-0 og mirror-1. Du kan miste to disker per vdev, i dette tilfellet, og dataene dine vil fortsatt være intakte. Total bruksplass øker til 40 GB.

3. RAID-Z1, RAID-Z2 og RAID-Z3

Hvis en vdev er av typen RAID-Z1, må den bruke minst 3 disker, og vdev kan tåle død av en av disse diskene. RAID-Z-konfigurasjoner tillater ikke å feste disker direkte til en vdev. Men du kan legge til flere vdevs ved å bruke zpool add, slik at bassengets kapasitet kan fortsette å øke.

RAID-Z2 vil kreve minst 4 disker per vdev og tåler opptil 2 diskfeil. Hvis den tredje disken mislykkes før de to diskene byttes ut, går dine verdifulle data tapt. Det samme følger for RAID-Z3, som krever minst 5 disker per vdev, med opptil 3 disker med feiltoleranse før utvinning blir håpløs.

La oss lage et RAID-Z1-basseng og utvide det:

$ zpool create tank raidz1 ada1 ada2 ada3

Bassenget bruker tre 20 GB-disker som gjør 40 GB tilgjengelig for brukeren.

Å legge til en annen vdev vil kreve 3 ekstra disker:

$ zpool add tank raidz1 ada4 ada5 ada6


De totale brukbare dataene er nå 80 GB, og du kan miste opptil 2 disker (en fra hver vdev) og fortsatt ha et håp om gjenoppretting.

Konklusjon

Nå vet du nok om ZFS til å importere alle dataene dine til den med tillit. Herfra kan du slå opp forskjellige andre funksjoner som ZFS tilbyr som å bruke NVMer med høy hastighet for lese- og skrivebuffer, bruke innebygd komprimering for datasettene dine, og i stedet for å bli overveldet av alle tilgjengelige alternativer, se etter det du trenger for din spesiell brukstilfelle.

I mellomtiden er det noen flere nyttige tips angående valg av maskinvare du bør følge:

  1. Bruk aldri RAID-kontroller for maskinvare med ZFS.
  2. Feilkorrigering av RAM (ECC) anbefales, men ikke obligatorisk
  3. Data deduplisering funksjonen bruker mye minne, bruk komprimering i stedet.
  4. Dataredundans er ikke et alternativ for sikkerhetskopiering. Ha flere sikkerhetskopier, lagre disse sikkerhetskopiene ved hjelp av ZFS!
Mus Kontroller og administrer musebevegelser mellom flere skjermer i Windows 10
Kontroller og administrer musebevegelser mellom flere skjermer i Windows 10
Dual Display Mouse Manager lar deg kontrollere og konfigurere musebevegelse mellom flere skjermer, ved å bremse bevegelsene nær grensen. Windows 10/8,...
Mus WinMouse lar deg tilpasse og forbedre musemarkørenes bevegelse på Windows PC
WinMouse lar deg tilpasse og forbedre musemarkørenes bevegelse på Windows PC
Hvis du vil forbedre standardfunksjonene til musepekeren, bruk freeware WinMouse. Det legger til flere funksjoner som hjelper deg å få mest mulig ut a...
Mus Mus venstreklikknapp fungerer ikke på Windows 10
Mus venstreklikknapp fungerer ikke på Windows 10
Hvis du bruker en dedikert mus med den bærbare eller stasjonære datamaskinen, men museklikk-knappen fungerer ikke på Windows 10/8/7 av en eller annen ...