OpenZFS 2.0 include il supporto per FreeBSD, zstd e altro

Dopo un anno e mezzo di sviluppo, Lancio del progetto OpenZFS 2.0 che sviluppa l'implementazione del file system ZFS per Linux e FreeBSD.

Il progetto divenne noto come "ZFS su Linux" e in precedenza era limitato allo sviluppo di un modulo per il kernel Linux, ma dopo il trasferimento del supporto per FreeBSD, è stato riconosciuto come l'implementazione principale di OpenZFS ed è stato rimosso dalla menzione di Linux nel nome. Tutta l'attività di sviluppo ZFS per i sistemi Linux e BSD è ora concentrata in un progetto e sviluppata in un repository comune.

OpenZFS già utilizzato nell'upstream di FreeBSD (TESTA) ed è incluso con le distribuzioni Debian, Ubuntu, Gentoo, Sabayon Linux e ALT Linux. I pacchetti con la nuova versione saranno presto pronti per tutte le principali distribuzioni Linux, incluse Debian, Ubuntu, Fedora, RHEL / CentOS.

In FreeBSD, il codice è sincronizzato con la base di codice OpenZFS attuale. OpenZFS è stato testato con i kernel Linux da 3.10 a 5.9 (kernel compatibili con l'ultima versione 2.6.32) e con i rami FreeBSD 12.2, stable / 12 e 13.0 (HEAD).

Informazioni su OpenZFS

OpenZFS fornisce un'implementazione dei componenti di ZFS relativo sia al file system che al gestore dei volumi. In particolare, vengono implementati i seguenti componenti: SPA (Storage Pool Allocator), DMU (Data Management Unit), ZVOL (ZFS Emulated Volume) e ZPL (ZFS POSIX Layer).

Inoltre, il progetto oOffre la possibilità di utilizzare ZFS come backend per il file system in cluster Lustre. Il lavoro del progetto si basa sul codice ZFS originale importato dal progetto OpenSolaris e migliorato con miglioramenti e correzioni dalla comunità Illumos. Il progetto è in fase di sviluppo con la partecipazione di personale del Livermore National Laboratory sotto contratto con il Dipartimento dell'Energia degli Stati Uniti.

Il codice è distribuito sotto la licenza CDDL gratuita, che è incompatibile con GPLv2, che non consente di integrare OpenZFS nel kernel Linux a monte, poiché non è consentito mescolare il codice con le licenze GPLv2 e CDDL. Per risolvere questa incompatibilità di licenza, è stato deciso di distribuire l'intero prodotto sotto la licenza CDDL come modulo scaricabile separato fornito separatamente dal kernel. La stabilità della base di codice OpenZFS è considerata paragonabile ad altre FS per Linux.

Principali novità di OpenZFS 2.0

Tra i principali cambiamenti, quello che risalta di più è supporto per la piattaforma FreeBSD e la base di codice è unificata per supportare diversi sistemi operativi. Tutte le modifiche correlate con FreeBSD sono ora in fase di sviluppo nel repository principale di OpenZFS e questo progetto è considerato l'implementazione primaria di ZFS per le future versioni di FreeBSD.

a parte quello spostare FreeBSD su OpenZFS ha rimosso molte delle condizioni di gara e problemi di blocco e ha portato nuove funzionalità a FreeBSD, come un sistema di quote esteso, crittografia del set di dati, classi di allocazione separate, uso di istruzioni del processore vettoriale per accelerare l'implementazione di RAIDZ e calcoli di checksum, supporto per l'algoritmo di compressione ZSTD, modalità host multipla ( MMP, Multiple Modifier Protection) e strumenti a riga di comando migliorati.

Un altro cambiamento importante è quello è stata implementata la modalità di esecuzione sequenziale del comando "resilver" (sequential resilver), che ricostruisce la distribuzione dei dati tenendo conto delle modifiche nella configurazione del drive.

Il nuovo modo consente di ricostruire un mirror vdev guasto molto più velocemente rispetto a un recuperatore tradizionale: in primo luogo, la ridondanza persa nell'array viene ripristinata il più rapidamente possibile e solo allora viene avviata automaticamente l'operazione di "pulizia" per verificare tutti i checksum dei dati. La nuova modalità si avvia quando si aggiunge o si sostituisce un'unità con i comandi «zpool replace | allegare "con l'opzione" -s ".

È stato implementato una persistente cache di secondo livello (L2ARC), in cui i dati di un dispositivo collegato per la memorizzazione nella cache vengono salvati tra i riavvii del sistema, ovvero la cache dopo l'avvio rimane "calda" e le prestazioni raggiungono immediatamente i valori nominali, bypassando la fase iniziale di riempimento della cache.

Aggiunto supporto per l'algoritmo di compressione zstd (Zstandard), che dimostra una velocità di compressione 3-5 volte più veloce rispetto a zlib / Deflate e una decompressione due volte più veloce, migliorando il livello di compressione del 10-15%.

a parte quello fornire vari livelli di compressione, Offrono un diverso equilibrio tra efficienza di compressione e prestazioni.

fonte: https://github.com


Lascia un tuo commento

L'indirizzo email non verrà pubblicato. I campi obbligatori sono contrassegnati con *

*

*

  1. Responsabile del trattamento: AB Internet Networks 2008 SL
  2. Scopo dei dati: controllo SPAM, gestione commenti.
  3. Legittimazione: il tuo consenso
  4. Comunicazione dei dati: I dati non saranno oggetto di comunicazione a terzi se non per obbligo di legge.
  5. Archiviazione dati: database ospitato da Occentus Networks (UE)
  6. Diritti: in qualsiasi momento puoi limitare, recuperare ed eliminare le tue informazioni.