ZFS

Concetti ed esercitazioni ZFS

Concetti ed esercitazioni ZFS

 ZFS: concetti e tutorial

Nella tua ricerca dell'integrità dei dati, l'utilizzo di OpenZFS è inevitabile. In effetti, sarebbe piuttosto sfortunato se utilizzi qualcosa di diverso da ZFS per archiviare i tuoi dati preziosi.  Tuttavia, molte persone sono riluttanti a provarlo. Il motivo è che un filesystem di livello aziendale con una vasta gamma di funzionalità integrate, ZFS deve essere difficile da usare e amministrare.  Niente può essere più lontano dalla verità. Usare ZFS è semplicissimo is. Con una manciata di terminologie e ancora meno comandi sei pronto per utilizzare ZFS ovunque: dall'azienda al NAS di casa/ufficio.

Nelle parole dei creatori di ZFS:  "Vogliamo rendere l'aggiunta di spazio di archiviazione al tuo sistema facile come aggiungere nuovi stick RAM."

Vedremo più avanti come si fa. Userò FreeBSD 11.1 per eseguire i test di seguito, i comandi e l'architettura sottostante sono simili per tutte le distribuzioni Linux che supportano OpenZFS.

L'intero stack ZFS può essere disposto nei seguenti livelli:

Zpool crea

Per cominciare, iniziamo con una configurazione in cui abbiamo sei dischi da 20 GB ada[1-6]

$ls -al /dev/ada?

Il ada0 è dove è installato il sistema operativo. Il resto sarà utilizzato per questa dimostrazione.

I nomi dei dischi possono variare a seconda del tipo di interfaccia utilizzata being. Esempi tipici includono: da0, ada0, acd0 e CD.  guardando dentro/devvi darà un'idea di ciò che è disponibile.

UN zpool è creato da zpool creare comando:

$zpool create OurFirstZpool ada1 ada2 ada3 # E poi esegui il seguente comando: $zpool status 

Vedremo un output accurato che ci fornisce informazioni dettagliate sul pool:

Questo è lo zpool più semplice senza ridondanza o tolleranza agli errori... Ogni disco è il suo vdev.

Tuttavia, otterrai comunque tutta la bontà di ZFS come i checksum per ogni blocco di dati archiviato in modo da poter almeno rilevare se i dati che hai archiviato vengono danneggiati.

Filesystem, a.K.un set di dati, ora può essere creato in cima a questo pool nel modo seguente:

$zfs crea OurFirstZpool/dataset1 

Ora usa il tuo familiare df -h comando o esegui:

$zfs lista

Per vedere le proprietà del filesystem appena creato:

Notare come l'intero spazio offerto dai tre dischi (vdev) è disponibile per il filesystem. Questo sarà vero per tutti i filesystem che crei nel pool, a meno che non specifichiamo diversamente.

Se vuoi aggiungere un nuovo disco (vdev), ada4, puoi farlo eseguendo:

$zpool aggiungi OurFirstZpool ada4

Ora, se vedi lo stato del tuo filesystem

La dimensione disponibile è ora aumentata senza ulteriori problemi di crescita della partizione o di backup e ripristino dei dati sul filesystem.


Dispositivi virtuali - Vdevs

I Vdev sono gli elementi costitutivi di uno zpool, la maggior parte della ridondanza e delle prestazioni dipendono dal modo in cui i tuoi dischi sono raggruppati in questi, cosiddetti, vdev . Diamo un'occhiata ad alcuni dei più importanti tipi di vdev:

1. RAID 0 o strisce

Ogni disco funge da proprio vdev. Nessuna ridondanza dei dati e i dati si diffondono su tutti i dischi. Conosciuto anche come striping. L'errore di un singolo disco significherebbe che l'intero zpool è reso inutilizzabile. Lo spazio di archiviazione utilizzabile è uguale alla somma di tutti i dispositivi di archiviazione disponibili.

Il primo zpool che abbiamo creato nella sezione precedente è un RAID 0 o array di archiviazione con striping.

2. RAID 1 o Mirror

I dati sono speculari tra ndischi. La capacità effettiva del vdev è limitata dalla capacità raw del disco più piccolo in quanto n-array di dischi. I dati sono speculari tra n dischi, questo significa che puoi resistere al guasto di n-1 dischi.

Per creare un array con mirroring usa la parola chiave mirror:

$zpool crea il mirror del serbatoio ada1 ada2 ada3

I dati scritti su carro armato zpool verrà rispecchiato tra questi tre dischi e lo spazio di archiviazione effettivamente disponibile è uguale alla dimensione del disco più piccolo, che in questo caso è di circa 20 GB.

In futuro, potresti voler aggiungere più dischi a questo pool e ci sono due possibili cose che puoi fare. Ad esempio, zpool carro armato ha tre dischi che rispecchiano i dati come un singolo vdev mirror-0:

Potresti voler aggiungere un disco extra, ad esempio ada4, per rispecchiare gli stessi dati. Questo può essere fatto eseguendo il comando:

$zpool attacca il serbatoio ada1 ada4

Ciò aggiungerebbe un disco extra al vdev che ha già il disco ada1 in esso, ma non aumentare lo spazio di archiviazione disponibile.

Allo stesso modo, puoi scollegare le unità da un mirror eseguendo:

$zpool stacca serbatoio ada4

D'altra parte, potresti voler aggiungere un vdev extra per aumentare la capacità di zpool. Questo può essere fatto usando il comando zpool add:

$zpool aggiungi specchio serbatoio ada4 ada5 ada6


La configurazione di cui sopra consentirebbe lo striping dei dati su vdevs mirror-0 e mirror-1. Puoi perdere 2 dischi per vdev, in questo caso, e i tuoi dati saranno ancora intatti. Lo spazio utilizzabile totale aumenta a 40 GB.

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

Se un vdev è di tipo RAID-Z1 deve utilizzare almeno 3 dischi e il vdev può tollerare la scomparsa di uno solo di quei dischi. Le configurazioni RAID-Z non consentono di collegare i dischi direttamente su un vdev. Ma puoi aggiungere più vdev, usando zpool add, tale che la capacità della piscina possa continuare ad aumentare.

RAID-Z2 richiede almeno 4 dischi per vdev e può tollerare fino a 2 guasti del disco e se il terzo disco si guasta prima che i 2 dischi vengano sostituiti, i tuoi preziosi dati vengono persi. Lo stesso segue per RAID-Z3, che richiede almeno 5 dischi per vdev, con un massimo di 3 dischi di tolleranza ai guasti prima che il ripristino diventi senza speranza.

Creiamo un pool RAID-Z1 e lo cresciamo:

$zpool crea tank raidz1 ada1 ada2 ada3

Il pool utilizza tre dischi da 20 GB che ne rendono disponibili 40 GB per l'utente.

L'aggiunta di un altro vdev richiederebbe 3 dischi aggiuntivi:

$zpool aggiungi tank raidz1 ada4 ada5 ada6


I dati utilizzabili totali ora sono 80 GB e puoi perdere fino a 2 dischi (uno per ogni vdev) e avere ancora una speranza di recupero.

Conclusione

Ora conosci abbastanza ZFS per importare tutti i tuoi dati in esso con sicurezza. Da qui in poi puoi cercare varie altre funzionalità fornite da ZFS come l'utilizzo di NVM ad alta velocità per le cache di lettura e scrittura, l'utilizzo della compressione integrata per i tuoi set di dati e invece di essere sopraffatto da tutte le opzioni disponibili, cerca solo ciò di cui hai bisogno per il tuo caso d'uso particolare.

Nel frattempo ci sono alcuni suggerimenti più utili sulla scelta dell'hardware che dovresti seguire:

  1. Non usare mai controller RAID hardware con ZFS.
  2. La RAM per la correzione degli errori (ECC) è consigliata, ma non obbligatoria
  3. La funzione di deduplicazione dei dati consuma molta memoria, usa invece la compressione.
  4. La ridondanza dei dati non è un'alternativa al backup. Avere più backup, archiviarli utilizzando ZFS!
Recensione del mouse wireless Microsoft Sculpt Touch
Ho letto di recente del Microsoft Scolpisci il tocco mouse wireless e ho deciso di acquistarlo. Dopo averlo usato per un po', ho deciso di condividere...
Trackpad e puntatore del mouse su schermo AppyMouse per tablet Windows
Gli utenti di tablet spesso mancano il puntatore del mouse, soprattutto quando sono abituati a usare i laptop laptop. Gli smartphone e i tablet touchs...
Il pulsante centrale del mouse non funziona in Windows 10
Il tasto centrale del mouse ti aiuta a scorrere lunghe pagine web e schermate con molti dati. Se si ferma, finirai per usare la tastiera per lo scorri...