Dezvoltatorii ZFS on Linux (prescurtat ZoL) au avut nevoie de aproape doi ani și 5 versiuni RC pentru a lansa o versiune extrem de semnificativă - ZFS-0.8.0.
Funcționalități noi:
- Criptare „nativă” atât pentru sistemele de fișiere, cât și pentru partiții. Algoritmul aes-256-ccm este utilizat implicit. Cheile pentru dataset sunt gestionate prin comanda „zfs load-key” și subcomenzile asociate.
- Criptare la zfs send/receive. Permite stocarea de backup-uri pe servicii neîncrezătoare fără riscul de compromitere.
- Eliminarea dispozitivului din pool prin comanda „zpool remove”. Toate datele sunt copiate în fundal pe dispozitivele rămase de nivel înalt, iar capacitatea pool-ului este astfel diminuată.
- Subcomanda „zpool checkpoint” permete salvarea întregului stadiu al pool-ului și, dacă se dorește, revenirea la acest stadiu exact. Acesta poate fi considerat un snapshot extins al pool-ului. Este util în executarea unor acțiuni administrative complexe, care altfel ar fi ireversibile (de exemplu, activarea unei noi funcționalități, distrugerea unui set de date etc.).
- TRIM pentru dispozitivele pool-ului. Permite utilizarea mai eficientă a unităților SSD și previne scăderea performanței și/sau duratei lor de viață. Se poate efectua trim atât prin comanda separată „zpool trim”, cât și prin activarea opțiunii discard - noua proprietate a pool-ului „autotrim”.
- Inițializarea pool-ului. Subcomanda „zpool initialize” scrie un șablon pe tot spațiul nealocat. Acest lucru elimină prima scădere a performanței accesului, care poate exista în anumite stocări virtualizate (de exemplu, VMware VMDK).
- Suport pentru contabilizarea proiectelor și pentru cote.. Această funcționalitate adaugă contabilizarea utilizării proiectelor și cotelor la funcționalitățile existente de contabilizare a spațiului și cote. Cotelor proiectului adaugă o dimensiune suplimentară cotelor tradiționale pentru utilizatori/grupuri. Subcomenzile „zfs project” și „zfs projectspace” au fost adăugate pentru gestionarea proiectelor, stabilirea limitelor cotelor și raportarea utilizării.
- Programe de canale. Subcomanda „zpool program” permite folosirea scripturilor LUA pentru executarea acțiunilor administrative. Scripturile sunt rulate într-o „sandbox” cu limite de timp și memorie.
- Pyzfs. O nouă bibliotecă Python pentru asigurarea unei interfețe stabile pentru administrarea programatică a ZFS. Această învăluire oferă o corespondență unul la unul pentru funcțiile API libzfs_core, dar semnăturile și tipurile sunt mai naturale pentru dialectul Python.
- Compatibilitate cu Python3. Utilitarele «arcstat», «arcsummary» și «dbufstat» au fost actualizate pentru compatibilitate cu Python3
- Direct IO. A fost adăugată suportul pentru utilizarea ieșirii directe (O_DIRECT).
De asemenea, subcomenzile scrub/resilver/list/get au fost accelerate, a fost adăugată posibilitatea de a redirecționa metadatele pe un dispozitiv separat (de exemplu, un SSD de înaltă performanță de dimensiuni mici), a fost crescută performanța ZIL prin cache și optimizare, adăugând suport pentru accelerarea hardware a checksum-urilor SHA256 și criptarea AES folosind Intel QAT (Quick Assist Technology).
Nucleele Linux suportate: 2.6.32 — 5.1 (pe nuclee 5.0 și mai mari, accelerarea SIMD nu este suportată încă)
Lista completă a modificărilor
Valorile parametrilor modulelor au fost alese implicit pentru a oferi o încărcare optimă pentru majoritatea sarcinilor de lucru și configurațiilor. Pentru o listă completă de opțiuni — man 5 zfs-module-parameters
Sursa: linux.org.ru
