Release van OpenZFS 2.4.0, de implementatie van ZFS voor Linux en FreeBSD

Na 11 maanden ontwikkeling is de release van het OpenZFS-project 2.4.0 gepresenteerd, dat de implementatie van het bestandssysteem ZFS voor Linux en FreeBSD verder ontwikkelt. Het project kreeg bekendheid als 'ZFS on Linux' en was eerder beperkt tot de ontwikkeling van een module voor de Linux-kernel, maar na de integratie met code uit FreeBSD werd het erkend als de belangrijkste implementatie van OpenZFS en hernoemd.

De werking van OpenZFS is getest met Linux-kernels van 4.18 tot 6.18 en met alle versies van FreeBSD, beginnend met 13.3. De code wordt verspreid onder de vrije licentie CDDL. OpenZFS wordt al gebruikt in FreeBSD en maakt deel uit van de distributies Debian, Ubuntu, Gentoo, NixOS en ALT Linux. Pakketten met de nieuwe versie zullen binnenkort worden voorbereid voor de belangrijkste Linux-distributies, waaronder Debian, Ubuntu, Fedora, RHEL/CentOS.

OpenZFS biedt een implementatie van ZFS-componenten die zowel verband houden met de werking van het bestandssysteem als met de werking van de volumemanager. Geïmplementeerde componenten zijn: SPA (Storage Pool Allocator), DMU (Data Management Unit), ZVOL (ZFS Emulated Volume) en ZPL (ZFS POSIX Layer). Het project stelt ook in staat om ZFS te gebruiken als backend voor het clusterbestandssysteem Lustre. De ontwikkelingen van OpenZFS zijn gebaseerd op de originele ZFS-code, geïmporteerd uit het OpenSolaris-project en uitgebreid met verbeteringen en correcties van de Illumos-gemeenschap. Het project wordt ontwikkeld met deelname van medewerkers van het Lawrence Livermore National Laboratory onder contract met het Amerikaanse Ministerie van Energie.

De code wordt verspreid onder de open source-licentie CDDL, die incompatibel is met GPLv2, wat integratie van OpenZFS in de hoofdbranch van de Linux-kernel belemmert, aangezien het mengen van code onder de GPLv2- en CDDL-licenties niet is toegestaan. Om deze licentie-incompatibiliteit te omzeilen, is besloten om het product voor Linux volledig onder de CDDL-licentie te verspreiden als een afzonderlijk te downloaden module, die apart van de kernel wordt geleverd. De stabiliteit van de OpenZFS-codebasis wordt beoordeeld als vergelijkbaar met andere bestandssystemen voor Linux.

Belangrijkste wijzigingen:

  • De mogelijkheid om standaardquota voor gebruikers, groepen en projecten in te stellen is geïmplementeerd. In vorige versies konden quota alleen afzonderlijk voor elke gebruikersidentificator worden ingesteld. In de nieuwe versie is er de mogelijkheid om een standaardwaarde in te stellen die wordt toegepast als er geen quota voor een specifieke gebruiker is ingesteld.
  • De mogelijkheid is toegevoegd om de modus voor directe invoer/uitvoer (O_DIRECT, Direct I/O) terug te laten vallen op het gebruik van een lichtgewicht mechanisme voor niet-cacheerbare invoer/uitvoer (Uncached I/O) voor verzoeken die niet zijn uitgelijnd op de paginagrens in het geheugen, wat niet wordt ondersteund in Direct I/O.
  • Een nieuw uniform algoritme voor het beperken van de snelheid van schrijfoperaties en het plaatsen van blokken is voorgesteld, dat de fragmentatie van vdev (Virtual Device) vermindert door meerdere schrijfoperaties te aggregeren en grotere aaneengeschakelde vrije gebieden te gebruiken in plaats van de resultaten van enkele schrijfoperaties in kleine vrije gebieden te plaatsen.
  • De prestaties van encryptie zijn verbeterd door het gebruik van AVX2-instructies in de implementatie van het AES-GCM-algoritme. In de uitgevoerde tests wordt tot 80% versnelling bereikt.
  • Het is nu toegestaan om ZIL-blokken (ZFS Intent Log) niet alleen op normale vdev of een aparte SLOG-apparaat te plaatsen, maar ook op speciale vdev. Als de normale vdev verbonden is met een harde schijf en de speciale vdev met een SSD, maakt deze wijziging situaties mogelijk waarin gegevens op de SSD worden geschreven, terwijl de bijbehorende ZIL-blokken op de harde schijf worden geplaatst, waardoor onnodige vertragingen ontstaan.
  • Het is toegestaan om de eigenschap special_small_blocks in te stellen voor secties (ZVOL), niet alleen voor bestandssystemen, wat het mogelijk maakt om kleine blokken te organiseren op een aparte speciale vdev, bijvoorbeeld op een SSD-schijf.
  • De herschrijfmodus 'zfs rewrite -P' is toegevoegd, die, waar mogelijk, de logische creatietijd onveranderd laat, waardoor blokken die eenvoudig naar de pool zijn verplaatst, kunnen worden onderscheiden van blokken die daadwerkelijk door de gebruiker zijn gewijzigd.
  • Voor de commando's 'zpool trim', 'zpool scrub' en 'zpool initialize' is de optie '-a' (—all) geïmplementeerd, waarmee deze commando's onmiddellijk voor alle geïmporteerde pools kunnen worden uitgevoerd.
  • De opdracht 'zpool scrub -S -E' is toegevoegd voor het uitvoeren van een controle op de gegevenschecksums die binnen de opgegeven tijdsintervallen vallen.
  • Nieuwe optimalisaties voor het deduplicatieproces zijn toegevoegd.

Bron: opennet.ru

Koop betrouwbare webhosting met bescherming tegen DDoS, VPS VDS servers 🔥 Koop betrouwbare webhosting met bescherming tegen DDoS, VPS VDS servers | ProHoster