OpenZFS 2.2 väljalase, ZFS-i rakendused Linuxile ja FreeBSD-le

Pärast üle kahte aastat arendust on avaldatud OpenZFS 2.2 projekti versioon, mis arendab ZFS failisüsteemi rakendust Linuxile ja FreeBSD-le. Projekt saavutab tuntuse nime all "ZFS on Linux" ja piirdus varem ainult Linuxi tuuma mooduli arendamisega, kuid pärast FreeBSD toe lisamist tunnustati seda OpenZFSi peamise rakendusena ning see ümbernimetati.

OpenZFS töö on kontrollitud Linuxi kernelitega alates 3.10 kuni 6.5 ning kõigi FreeBSD harudega alates 12.2-RELEASE. Kood on jagatud avatud litsentsi CDDL alla. OpenZFS on juba kasutusel FreeBSD-s ning kuulub Debian, Ubuntu, Gentoo, Sabayon Linuxi ja ALT Linuxi distributsioonide koosseisu. Uue versiooni paketid valmistatakse peagi ette peamiste Linuxi distributsioonide jaoks, sealhulgas Debian, Ubuntu, Fedora, RHEL/CentOS.

OpenZFS pakub ZFS komponentide rakendust, mis on seotud nii failisüsteemi toimimise kui ka mahuhalduri funktsioneerimisega. Eelkõige on rakendatud järgmised komponendid: SPA (Storage Pool Allocator), DMU (Data Management Unit), ZVOL (ZFS Emulated Volume) ja ZPL (ZFS POSIX Layer). Lisaks on projekt võimaldanud ZFS-i kasutada Lustre'i klastrifailisüsteemi tagaplaanina. Projekti arendustööd põhinevad originaalkoodil ZFS, mis on imporditud OpenSolaris'i projektist ning täiustatud Illumose kogukonna parenduste ja parandustega. Projekti arendamine käib koostöös Livermore'i riikliku laboriga, USA Energiaosakonna lepingul.

Kood on levitatud CDDL vabatahtliku litsentsi alusel, mis ei ühildu GPLv2-ga, mistõttu ei ole võimalik saavutada OpenZFS integreerimist Linuxi põhiõuna. GPLv2 ja CDDL litsentsi alla kuuluva koodi segamine on keelatud. Selle litsentsi ühilduvuse vältimiseks on otsustatud levitada toodet täielikult CDDL litsentsi järgi eraldi allalaetava moodulina, mis tarnitakse eraldi tuumast. OpenZFS koodibaasi stabiilsus on võrreldav teiste Linuxi failisüsteemidega.

Peamised muudatused:

  • Lisatud blokikloneerimise mehhanism, mis võimaldab luua faili või selle osa koopia, ilma andmete dubleerimata, kasutades teistel koopiatel viiteid olemasolevatele andmeplokkidele originaalfailis ilma nende tegeliku kopeerimiseta. Kui originaalfailis või selle koopiates tehakse muudatusi, toimub plokkide kopeerimine ja muudatuste tegemine loodud koopiatele (failide tasemel kopeerimise-kirjutamise režiim). Kloneerimise mehhanismi põhjal on rakendatud reflink operatsioon, mida saab kasutada automaatsete kloonide loomiseks erinevates kopeerimisutiliitides, näiteks Linuxi uutes versioonides /bin/cp.
  • Lisatud tugi Linuxis kasutatavate konteinerite isolatsiooni tehnoloogiatele, nagu süsteemi kutse renameat, FS overlayfs, kasutaja identifikaatorite kaardistamine monteerimise ajal ja nimede ruumide delegeerimine konteineritele.
  • On loodud vigade logi, mille osas ilmnevad probleemid kontrollsummade (scrub) kontrollimise operatsioonide käigus. Käsku "zpool status" täites kuvatakse teavet kõigi FS, snäpitute ja kloonide kohta, mida kahjustatud blokk mõjutab. Tuntud kahjustatud blokkide kiireks taastamiseks saab kasutada käsku "zpool scrub -e".
  • Lisatud võimalus kasutada kontrollsummade jaoks krüptograafilist hash-funktsiooni BLAKE3, mis on tuntud väga kõrge hash-arvutuse efektiivsuse poolest (kolm korda kiirem kui Edon-R ning oluliselt kiirem kui sha256 ja sha512), tagades samas usaldusväärsuse SHA-3 tasemel.
  • On rakendatud käsk "zfs receive -c", mida saab kasutada kahjustatud andmete (mitte metainformatsiooni) taastamiseks FS, snäpitutes ja kloonides, juhul kui on olemas replitseeritud varukoopia, mis on eelnevalt salvestatud käsuga "zfs send".
  • Lisatud tugi virtuaalsete diskide vdev eraldi omaduste määramiseks ja lugemiseks.
  • Lisatud võimalus siduda vdev ja zpool suvaliste kasutajaomaduste juurde, sarnaselt zfs dataset'ide kasutajaomadustega.
  • Parendatud on adaptiivse vahemälu ARC (Adaptive Replacement Cache) teostust, mis suurendab lugemisoperatsioonide efektiivsust. ARC kohandub nüüd paremini suurte koormustega ja minimeerib vajadust käsitsi seadistuse optimeerimise järele.
  • Lisatud tugi SHA2 kontrollsummade arvutamise riistvarakiiresusmehhanismidele.
  • Edon-R kontrollsummade teostus on ümber kirjutatud ja optimeeritud.
  • Kasutades andmete pakkimiseks zstd algoritmi, on kiirendatud olukordade määramine, kus pakkimine on mõttetu (andmed ei ole pakkimiseks sobivad).
  • Viidud sisse täiustused eelhoiustamise mehhanismis (Prefetch), mis kiirendavad töötlust intensiivse sisendi/väljundi korral.
  • Tehtud on fraktsioon üldistest optimeerimistest, mis suurendavad efektiivsust.

Allikas: opennet.ru

Osta usaldusväärne veebihosting DDoS kaitsega, VPS VDS serverid 🔥 Osta usaldusväärne veebihosting DDoS kaitsega, VPS VDS serverid | ProHoster