Ci sono voluti circa due anni e 5 versioni RC agli sviluppatori di ZFS on Linux (in breve ZoL) per rilasciare una versione di grande importanza: ZFS-0.8.0.
Nuove funzionalità:
- Crittografia 'nativa' sia per i file system che per le partizioni. Per impostazione predefinita, viene utilizzato l'algoritmo aes-256-ccm. Le chiavi per il dataset sono gestite tramite il comando 'zfs load-key' e i relativi sotto-comandi.
- Crittografia durante il zfs send/receive. Consente di memorizzare backup su servizi non fidati senza possibilità di compromissione.
- Rimozione di un dispositivo dal pool tramite il comando 'zpool remove'. Tutti i dati vengono copiati in background sui restanti dispositivi di livello superiore, e la capacità del pool diminuisce di conseguenza.
- Il sotto-comando 'zpool checkpoint' consente di salvare tutto lo stato del pool e, se lo si desidera, tornare a quello stato esatto. Questo può essere visto come uno snapshot avanzato del pool. È utile durante l'esecuzione di operazioni amministrative complesse che altrimenti sarebbero irreversibili (ad esempio, l'attivazione di una nuova funzione, la distruzione di un dataset, e così via).
- TRIM per dispositivi del pool. Consente di utilizzare più efficacemente i dischi a stato solido e di prevenire la diminuzione delle loro prestazioni e/o della loro vita utile. È possibile eseguire trim sia come comando separato "zpool trim", sia abilitando l'opzione discard — una nuova proprietà del pool "autotrim".
- Inizializzazione del pool. Il sottocomando "zpool initialize" scrive il proprio pattern su tutto lo spazio non allocato. Questo elimina il primo calo delle prestazioni di accesso che può esistere in alcuni storage virtualizzati (ad esempio, VMware VMDK).
- Supporto per il monitoraggio dei progetti e delle quote. Questa funzione aggiunge il monitoraggio dell'uso dei progetti e delle quote alle funzionalità esistenti di monitoraggio dello spazio e delle quote. Le quote di progetto aggiungono una dimensione supplementare alle tradizionali quote degli utenti/ gruppi. I sottocomandi "zfs project" e "zfs projectspace" sono stati aggiunti per gestire i progetti, impostare limiti delle quote e report di utilizzo.
- Programmi dei canali. Il sottocomando "zpool program" consente di utilizzare script LUA per eseguire azioni amministrative. Gli script vengono eseguiti in una "sandbox" con limiti di tempo e memoria.
- Pyzfs. Nuova libreria Python per garantire un'interfaccia stabile per l'amministrazione di ZFS. Questo wrapper fornisce una corrispondenza uno a uno per le funzioni API libzfs_core, ma le firme e i tipi sono più naturali per il dialetto Python.
- Compatibilità con Python3. Gli strumenti 'arcstat', 'arcsummary' e 'dbufstat' sono stati aggiornati per la compatibilità con Python3
- Direct IO. Aggiunta la supporto per l'uso di output diretto (O_DIRECT).
Accelerate anche i sottocomandi scrub/resilver/list/get, aggiunta la possibilità di estrarre metadati su un dispositivo separato (ad esempio, SSD ad alte prestazioni di piccole dimensioni), aumentata la performance di ZIL grazie a caching e ottimizzazione, aggiunta la supporto per l'accelerazione hardware delle checksum SHA256 e la crittografia AES utilizzando Intel QAT (Quick Assist Technology).
Nuclei Linux supportati: 2.6.32 — 5.1 (l'accelerazione SIMD non è ancora supportata nei nuclei 5.0 e superiori)
Completo elenco delle modifiche
I valori predefiniti dei parametri del modulo sono stati scelti per garantire un carico ottimale per la maggior parte dei carichi di lavoro e configurazioni. Per un elenco completo delle opzioni — man 5 zfs-module-parameters
Fonte: linux.org.ru
