OpenZFS 2.1 -projekti, joka kehittää ZFS-tiedostojärjestelmän toteutuksen Linux ja FreeBSD. Projektista tuli tunnetuksi nimellä "ZFS on Linux" ja aiemmin se rajoittui kehittämään moduulia kernelille Linux, mutta tuen siirron jälkeen FreeBSD tunnustettiin OpenZFS:n päätoteutukseksi eikä sitä mainittu Linux otsikossa.
OpenZFS:n toiminta on varmistettu ytimillä Linux 3.10 - 5.13 ja kaikki FreeBSD:n haarat alkaen versiosta 12.2-RELEASE. Koodi jaetaan vapaalla CDDL-lisenssillä. OpenZFS:ää käytetään jo FreeBSD:ssä ja se sisältyy jakeluihin. Debian, Ubuntu, Gentoo, Sabayon Linux ja ALT LinuxUuden version sisältävät paketit valmistellaan pääjakeluihin pian. Linuxmukaan lukien Debian, Ubuntu, Fedora, RHEL/CentOS.
OpenZFS tarjoaa ZFS-komponenttien toteutuksen, jotka liittyvät sekä tiedostojärjestelmään että taltiohallintaan. Erityisesti toteutetaan seuraavat komponentit: SPA (Storage Pool Allocator), DMU (Data Management Unit), ZVOL (ZFS Emulated Volume) ja ZPL (ZFS POSIX Layer). Lisäksi projekti tarjoaa mahdollisuuden käyttää ZFS:ää taustana Luster-klusteritiedostojärjestelmälle. Projektin työ perustuu alkuperäiseen ZFS-koodiin, joka on tuotu OpenSolaris-projektista ja jota on laajennettu Illumos-yhteisön parannuksilla ja korjauksilla. Hanketta kehitetään yhdessä Livermoren kansallisen laboratorion työntekijöiden kanssa Yhdysvaltain energiaministeriön kanssa tehdyn sopimuksen mukaisesti.
Koodi jaetaan ilmaisella CDDL-lisenssillä, joka on yhteensopiva GPLv2:n kanssa ja estää OpenZFS:n integroinnin pääytimeen. Linux, koska GPLv2- ja CDDL-lisenssin alaisen koodin sekoittaminen on mahdotonta hyväksyä. Tämän lisensointiristiriidan kiertämiseksi päätettiin jakaa koko tuote CDDL-lisenssillä erikseen ladattavana moduulina, joka jaetaan erillään ytimestä. OpenZFS-koodikannan vakautta pidetään verrattavissa muihin tiedostojärjestelmäalustoihin. Linux.
Suurimmat muutokset:
- Lisätty tuki dRAID-teknologialle (Distributed Spare RAID), joka on muunnos RAIDZ:stä, jossa on integroitu hajautettu lohkokäsittely kuumavaraosia varten. dRAID perii kaikki RAIDZ:n edut, mutta mahdollistaa merkittävän lisäyksen tallennusnopeudessa uudelleen hopeoinnissa ja redundanssin palauttamisessa taulukossa. Virtuaalinen tallennustila dRAID muodostuu useista sisäisistä RAIDZ-ryhmistä, joista jokainen sisältää laitteita tietojen tallentamiseen ja laitteita pariteettilohkojen tallentamiseen. Nämä ryhmät on jaettu kaikille asemille käytettävissä olevan levyn kaistanleveyden optimaalista käyttöä varten. Erillisen kuumapalautusaseman sijaan dRAID käyttää kuuman palautuslohkojen loogisen jakautumisen konseptia kaikille ryhmän asemille.

- Otettu käyttöön "yhteensopivuus"-ominaisuuden ("zpool create -o compatibility=off|legacy|file[,file...] pool vdev"), jolloin järjestelmänvalvoja voi valita joukon ominaisuuksia, jotka tulee ottaa käyttöön poolissa. luoda kannettavia pooleja ja ylläpitää yhteensopivuutta eri OpenZFS-versioiden ja eri alustojen välillä.
- On mahdollista tallentaa tilastot poolin toiminnasta InfluxDB DBMS -muodossa, joka on optimoitu tietojen tallentamiseen, analysointiin ja käsittelyyn aikasarjan muodossa (parametriarvojen viipaleet tietyin väliajoin). InfluxDB-muotoon viemistä varten ehdotetaan komentoa "zpool influxdb".
- Lisätty tuki muistin ja prosessorin lisäämiselle.
- Uudet komennot ja valinnat:
- "zpool create -u" - poista automaattinen asennus käytöstä.
- "zpool history -i"—heijastaa toimintojen historiassa kunkin komennon suorittamisen kestoa.
- "zpool status" - lisätty varoitusviesti levyistä, joiden lohkokoko ei ole optimaalinen.
- "zfs send —skip-missing|-s" — jättää puuttuvat tilannevedokset huomioimatta lähetettäessä streamia replikoitavaksi.
- "zfs rename -u" - nimeää tiedostojärjestelmän uudelleen ilman uudelleenasennusta.
- Arcstat lisäsi tuen L2ARC-tilastoihin ja lisäsi "-a" (kaikki) ja "-p" (jäsenneltävä) vaihtoehdot.
- Optimoinnit:
- Parannettu interaktiivinen I/O-suorituskyky.
- Esihakua on nopeutettu rinnakkaiseen tiedonkäyttöön liittyvissä työkuormissa.
- Parannettu skaalautuvuus vähentämällä lukkokiistaa.
- Uima-altaan tuontiaikaa on lyhennetty.
- Vähentynyt ZIL-lohkojen pirstoutuminen.
- Rekursiivisten operaatioiden suorituskyvyn parantaminen.
- Parannettu muistinhallinta.
- Ydinmoduulin latausta on nopeutettu.
Lähde: opennet.ru

