Rilascio di OpenZFS 2.1 con supporto dRAID

È stato pubblicato il rilascio del progetto OpenZFS 2.1, che sviluppa l'implementazione del file system ZFS per Linux e FreeBSD. Il progetto divenne noto come "ZFS su Linux" e in precedenza si limitava allo sviluppo di un modulo per il kernel Linux, ma dopo aver spostato il supporto, FreeBSD fu riconosciuto come l'implementazione principale di OpenZFS e fu liberato dalla menzione di Linux nel nome.

OpenZFS è stato testato con i kernel Linux da 3.10 a 5.13 e tutti i rami di FreeBSD a partire da 12.2-RELEASE. Il codice è distribuito con la licenza CDDL gratuita. OpenZFS è già utilizzato in FreeBSD ed è incluso nelle distribuzioni Debian, Ubuntu, Gentoo, Sabayon Linux e ALT Linux. I pacchetti con la nuova versione saranno presto preparati per le principali distribuzioni Linux, tra cui Debian, Ubuntu, Fedora, RHEL/CentOS.

OpenZFS fornisce un'implementazione di componenti ZFS relativi sia al file system che al gestore del volume. 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 offre la possibilità di utilizzare ZFS come backend per il file system del cluster Lustre. Il lavoro del progetto si basa sul codice ZFS originale, importato dal progetto OpenSolaris e ampliato con miglioramenti e correzioni dalla comunità Illumos. Il progetto è stato sviluppato con la partecipazione dei dipendenti del Livermore National Laboratory nell'ambito di un contratto con il Dipartimento dell'Energia degli Stati Uniti.

Il codice è distribuito sotto la licenza CDDL gratuita, che è incompatibile con GPLv2, che non consente l'integrazione di OpenZFS nel ramo principale del kernel Linux, poiché la miscelazione di codice sotto le licenze GPLv2 e CDDL è inaccettabile. Per aggirare questa incompatibilità di licenza, si è deciso di distribuire l'intero prodotto sotto la licenza CDDL come modulo scaricabile separatamente, che viene fornito separatamente dal kernel. La stabilità della codebase OpenZFS è valutata paragonabile ad altri FS per Linux.

Principali modifiche:

  • Aggiunto supporto per la tecnologia dRAID (Distributed Spare RAID), che è una variante di RAIDZ con elaborazione a blocchi distribuiti integrata per hot spare. dRAID eredita tutti i vantaggi di RAIDZ, ma consente un aumento significativo della velocità di resilvering dello storage e ripristino della ridondanza nell'array. Archiviazione virtuale dRAID è formato da diversi gruppi RAIDZ interni, ciascuno dei quali contiene dispositivi per l'archiviazione di dati e dispositivi per l'archiviazione di blocchi di parità. Questi gruppi sono distribuiti su tutte le unità per un utilizzo ottimale della larghezza di banda disponibile sul disco. Invece di un'unità di ripristino a caldo separata, dRAID utilizza il concetto di distribuzione logica dei blocchi di ripristino a caldo su tutte le unità dell'array.
    Rilascio di OpenZFS 2.1 con supporto dRAID
  • Implementata la proprietà "compatibilità" ("zpool create -o compatibilità=off|legacy|file[,file...] pool vdev"), consentendo all'amministratore di selezionare l'insieme di funzionalità che devono essere abilitate nel pool, in ordine per creare pool portatili e mantenere la compatibilità tra pool di diverse versioni di OpenZFS e piattaforme diverse.
  • È possibile salvare le statistiche sul funzionamento del pool nel formato DBMS InfluxDB, ottimizzato per l'archiviazione, l'analisi e la manipolazione dei dati sotto forma di serie temporali (sezioni di valori dei parametri a intervalli specificati). Per esportare nel formato InfluxDB viene proposto il comando “zpool influxdb”.
  • Aggiunto supporto per l'aggiunta a caldo di memoria e CPU.
  • Nuovi comandi e opzioni:
    • "zpool create -u" - disabilita il montaggio automatico.
    • "zpool History -i": riflette nella cronologia delle operazioni la durata dell'esecuzione di ciascun comando.
    • "zpool status": aggiunto un messaggio di avviso relativo ai dischi con dimensioni del blocco non ottimali.
    • "zfs send —skip-missing|-s" — ignora gli snapshot mancanti durante l'invio di un flusso per la replica.
    • "zfs rename -u" - rinomina il file system senza rimontarlo.
    • Arcstat ha aggiunto il supporto per le statistiche L2ARC e ha aggiunto le opzioni "-a" (tutti) e "-p" (parsable).
  • Ottimizzazione:
    • Prestazioni I/O interattive migliorate.
    • Il prelettura è stato accelerato per i carichi di lavoro relativi all'accesso parallelo ai dati.
    • Scalabilità migliorata riducendo il conflitto di blocchi.
    • Il tempo di importazione del pool è stato ridotto.
    • Ridotta frammentazione dei blocchi ZIL.
    • Miglioramento delle prestazioni delle operazioni ricorsive.
    • Gestione della memoria migliorata.
    • Il caricamento del modulo del kernel è stato accelerato.

Fonte: opennet.ru

Aggiungi un commento