OpenZFS è l'implementazione open source di ZFS che è una piattaforma di archiviazione avanzata e altamente scalabile. Sebbene ZFS sia stato originariamente progettato per Sun Solaris, è possibile utilizzare ZFS sulla maggior parte delle principali distribuzioni Linux con l'aiuto del progetto ZFS su Linux, una parte del progetto OpenZFS.
In questo articolo, ti mostrerò come impostare OpenZFS su CentOS 7. Inoltre, elencherò alcuni comandi di base relativi a ZFS per aiutarti a conoscere OpenZFS.
Prerequisiti
	- Una nuova istanza del server Vultr CentOS 7 con non meno di 2 GB di memoria. 8 GB o più di memoria forniranno le migliori prestazioni.
- Un'istanza di archiviazione a blocchi nella stessa area, collegata all'istanza del server precedente.
- Un utente sudo .
Passaggio 1: aggiornare il sistema
Accedi al tuo sistema Vultr CentOS 7 come utente sudo, quindi aggiorna il sistema all'ultimo stato stabile usando i seguenti comandi:
sudo yum install epel-release -y
sudo yum update -y
sudo shutdown -r now
Dopo il riavvio, utilizzare lo stesso utente sudo per accedere nuovamente.
Passaggio 2: installare OpenZFS
Per installare OpenZFS in modo semplice, è necessario installare il repository YUM OpenZFS:
sudo yum localinstall --nogpgcheck http://archive.zfsonlinux.org/epel/zfs-release$(rpm -E %dist).noarch.rpm
Utilizzare il comando seguente per verificare l'installazione:
gpg --quiet --with-fingerprint /etc/pki/rpm-gpg/RPM-GPG-KEY-zfsonlinux
L'impronta digitale sullo schermo dovrebbe essere esattamente la seguente:
pub  2048R/F14AB620 2013-03-21 ZFS on Linux <[email protected]>
      Key fingerprint = C93A FFFD 9F3F 7B03 C310  CEB6 A9D5 A1C0 F14A B620
sub  2048R/99685629 2013-03-21
Dato che stiamo usando un kernel fornito dalla distribuzione in questo articolo, puoi installare i kmod di tracciamento kABI invece dei pacchetti di stile DKMS predefiniti. Questa disposizione impedirà a ZFS di essere ricostruito dopo qualsiasi aggiornamento del kernel d'ora in poi.
sudo vi /etc/yum.repos.d/zfs.repo
Cambia la terza riga:
baseurl=http://archive.zfsonlinux.org/epel/7/$basearch/
per:
baseurl=http://archive.zfsonlinux.org/epel/7/kmod/$basearch/
Salva ed esci:
:wq!
Installa OpenZFS usando YUM:
sudo yum install zfs
Riavviare il sistema in modo che il kernel carichi i moduli relativi a ZFS:
sudo shutdown -r now
Dopo il riavvio, utilizzare il comando seguente per verificare l'installazione:
lsmod | grep zfs
L'output dovrebbe assomigliare a:
zfs                  2794866  3
zunicode              331170  1 zfs
zavl                   15236  1 zfs
zcommon                55411  1 zfs
znvpair                89086  2 zfs,zcommon
spl                    92029  3 zfs,zcommon,znvpair
Passaggio 3: alcuni comandi di base di OpenZFS
Per testare la funzionalità di OpenZFS, prima di tutto, è necessario preparare diversi dispositivi di archiviazione che possono essere dischi rigidi e / o partizioni di un disco rigido. Qui creeremo 6 partizioni sulla memoria a blocchi allegata /dev/vdbe le useremo per dimostrare alcuni comandi OpenZFS di base.
sudo parted -s /dev/vdb mklabel gpt
sudo parted -s /dev/vdb unit mib mkpart primary 0% 15%
sudo parted -s /dev/vdb unit mib mkpart primary 15% 30%
sudo parted -s /dev/vdb unit mib mkpart primary 30% 45%
sudo parted -s /dev/vdb unit mib mkpart primary 45% 60%
sudo parted -s /dev/vdb unit mib mkpart primary 60% 75%
sudo parted -s /dev/vdb unit mib mkpart primary 75% 90%
È possibile utilizzare i seguenti comandi per confermare le operazioni e le 6 partizioni sarà /dev/vdb1, /dev/vdb2, /dev/vdb3, /dev/vdb4, /dev/vdb5, e /dev/vdb6.
sudo parted -l
ls -l /dev/vdb*
OpenZFS ha due utilità principali: zpoole zfs. l' zpoolutilità è responsabile della creazione e della manutenzione dei pool ZFS mediante dispositivi di archiviazione e l' zfsutilità è responsabile della creazione e della manutenzione dei set di dati.
Esempi di utilizzo dell'utilità zpool:
1) Creare un pool ZFS
È possibile creare un pool ZFS "zfspool1" utilizzando uno o più dispositivi di archiviazione:
sudo zpool create zfspool1 vdb1
o
sudo zpool create zfspool2 vdb2 vdb3 vdb5
Verifica lo stato dei pool ZFS:
sudo zpool status
Prima di testare altri comandi OpenZFS, utilizzare i seguenti comandi per distruggere i pool ZFS impostati in precedenza:
sudo zpool destroy zfspool1
sudo zpool destroy zfspool2
2) Creare un pool ZFS e fare il mirroring di due o più dispositivi di archiviazione.
Utilizzare /dev/vdb1e /dev/vdb2per creare un pool ZFS ed entrambi sono configurati come mirror:
sudo zpool create zfspool3 mirror vdb1 vdb2
Se necessario, è anche possibile effettuare il mirroring di questi dispositivi di archiviazione a tre o più vie:
sudo zpool create zfspool4 mirror vdb3 vdb4 vdb5
Ancora una volta, conferma la tua configurazione usando il seguente comando:
sudo zpool status
Quindi distruggi i due pool ZFS:
sudo zpool destroy zfspool3
sudo zpool destroy zfspool4
3) Creare un pool ZFS e stabilire un array raidz utilizzando due o più dispositivi di archiviazione
sudo zpool create zfspool5 raidz vdb1 vdb2
Ancora una volta, conferma la configurazione e distruggi questo pool ZFS:
sudo zpool status
sudo zpool destroy zfspool5
Esempi di utilizzo dell'utilità zfs:
Prima di utilizzare l'utilità zfs, creare un pool ZFS composto da 3 dispositivi di archiviazione:
sudo zpool create zfspool6 vdb1 vdb3 vdb5
1) Aggiungi un dispositivo di archiviazione per il pool ZFS.
sudo zpool add zfspool6 vdb6
Nota : non è possibile rimuovere direttamente questi dispositivi di archiviazione dal pool perché sono partizioni anziché dischi rigidi.
2) Creare un filesystem per ciascuno di questi dispositivi di archiviazione.
sudo zfs create zfspool6/vdb1
sudo zfs create zfspool6/vdb3
sudo zfs create -o mountpoint=/test zfspool6/vdb5
sudo zfs create -o compression=gzip zfspool6/vdb6
Spiegazioni sui comandi sopra:
	- Il primo comando ha creato un filesystem ZFS "zfspool6 / vdb1" che è stato quindi montato nella posizione predefinita /zfspool6/vdb1.
- Il secondo comando è stato eseguito nello stesso modo: creando un filesystem ZFS "zfspool6 / vdb3" e montandolo su /zfspool6/vdb3.
- Il terzo comando ha creato un filesystem ZFS "zfspool6 / vdb5" che è stato quindi montato in una posizione specificata /test.
- Il quarto comando ha creato un file system ZFS compresso con gzip "zfspool6 / vdb6" che è stato quindi montato nella posizione predefinita /zfspool6/vdb6.
Successivamente, se si desidera modificare il punto di montaggio di un dispositivo di archiviazione:
sudo zfs set mountpoint=/vdb3 zfspool6/vdb3
Se si desidera impostare o modificare il metodo di compressione:
sudo zfs set compression=gzip zfspool6/vdb3
sudo zfs set compression=lz4 zfspool6/vdb6
Utilizzare il comando seguente per confermare il metodo di compressione:
sudo zfs get -r compression zfspool6/vdb3
Elenca tutti i filesystem ZFS sul tuo sistema:
sudo zfs list
Se un file system di archiviazione non è più necessario, è possibile distruggerlo utilizzando il comando seguente:
sudo zfs destroy zfspool6/vdb5
Questo conclude il nostro tutorial. I contenuti di questo articolo sono solo introduttivi e puoi saperne di più su OpenZFS dal suo sito ufficiale. Grazie per aver letto.