Lëshimi OpenZFS 2.4.0, implementimi i ZFS për Linux dhe FreeBSD

Pas 11 muajsh zhvillimi, u publikua versione 2.4.0 e projektit OpenZFS, i cili zhvillon implementimin e sistemit të skedarëve ZFS për Linux dhe FreeBSD. Projekti fitoi njohje si "ZFS on Linux" dhe më parë ishte i kufizuar në zhvillimin e një module për bërthamën Linux, por pas bashkimit me kodin nga FreeBSD, u njoh si implementimi kryesor i OpenZFS dhe u riemërua.

Puna e OpenZFS është verifikuar me bërthama Linux nga 4.18 deri në 6.18 dhe të gjitha degët e FreeBSD, duke filluar nga 13.3. Kodi shpërndahet nën licencën e lirë CDDL. OpenZFS tashmë po përdoret në FreeBSD dhe është pjesë e shpërndarjeve Debian, Ubuntu, Gentoo, NixOS dhe ALT Linux. Paketat me versionin e ri do të përgatiten së shpejti për shpërndarjet kryesore të Linux, duke përfshirë Debian, Ubuntu, Fedora, RHEL/CentOS.

OpenZFS ofron implementimin e komponentëve ZFS, të lidhura me funksionimin e sistemit të skedarëve dhe menaxherit të volumit. Janë implementuar komponentët: SPA (Storage Pool Allocator), DMU (Data Management Unit), ZVOL (ZFS Emulated Volume) dhe ZPL (ZFS POSIX Layer). Projekti gjithashtu lejon përdorimin e ZFS si backend për sistemin e skedarëve klaster Lustre. Arritjet e OpenZFS janë të bazuara në kodin origjinal ZFS, të importuar nga projekti OpenSolaris dhe të zgjeruara me përmirësime dhe korrigjime nga komuniteti Illumos. Projekti zhvillohet me pjesëmarrjen e punonjësve të Laboratorit Kombëtar Livermore në një kontratë me Departamentin e Energjisë të SHBA.

Kodi shpërndahet nën një licencë të lirë CDDL, e cila është e papajtueshme me GPLv2, e cila nuk lejon integrimin e OpenZFS në degën kryesore të bërthamës Linux, pasi kombinimi i kodave nën licencat GPLv2 dhe CDDL është i papranueshëm. Për të anashkaluar papajtueshmërinë e licencës, u vendos të shpërndahet produkti për Linux tërësisht nën licencën CDDL si një modul që ngarkohet veçmas, i ofruar ndaras nga bërthama. Stabiliteti i bazës së kodit të OpenZFS vlerësohet si ngjashëm me sistemet e tjera të skedarëve për Linux.

Ndryshimet kryesore:

  • ËshtĂ« realizuar mundĂ«sia e caktimit tĂ« kuotave tĂ« paracaktuara pĂ«r pĂ«rdoruesit, grupet dhe projektet. NĂ« versionet e kaluara, kuotat mund tĂ« vendoseshin vetĂ«m individualisht pĂ«r çdo identifikues pĂ«rdoruesi. NĂ« versionin e ri, Ă«shtĂ« e mundur tĂ« vendosni njĂ« vlerĂ« fillestare qĂ« do tĂ« zbatohet nĂ«se pĂ«r njĂ« pĂ«rdorues tĂ« caktuar nuk Ă«shtĂ« vendosur kuota.
  • ËshtĂ« shtuar mundĂ«sia pĂ«r tĂ« kthyer nĂ« mĂ«nyrĂ« directe (O_DIRECT, Direct I/O) duke pĂ«rdorur njĂ« mekanizĂ«m tĂ« lehtĂ« tĂ« input/output tĂ« pakapshĂ«m (Uncached I/O) pĂ«r kĂ«rkesat qĂ« nuk janĂ« tĂ« pĂ«rputhura me kufirin e faqeve tĂ« memories, tĂ« cilat nuk suportohen nĂ« Direct I/O.
  • ËshtĂ« propozuar njĂ« algoritĂ«m i ri unifikues pĂ«r kufizimin e shpejtĂ«sisĂ« sĂ« operacioneve tĂ« shkruarjes dhe vendosjes sĂ« blloqeve, i cili redukton fragmentimin e vdev (Dispositivi Virtual) duke agreguar disa operacione tĂ« shkruarjes dhe duke pĂ«rdorur pĂ«r to zona mĂ« tĂ« mĂ«dha, tĂ« lĂ«vizshme tĂ« lirĂ« nĂ« vend qĂ« tĂ« vendosni rezultatet e operacioneve tĂ« vetme nĂ« zona tĂ« vogla tĂ« lira.
  • Ă«shtĂ« rritur performanca e enkriptimit pĂ«rmes pĂ«rdorimit tĂ« instruksioneve AVX2 nĂ« implementimin e algoritmit AES-GCM. NĂ« testet e kryera, pĂ«rshpejtimi arrin deri nĂ« 80%.
  • ËshtĂ« lejuar vendosja e blloqeve ZIL (ZFS Intent Log) jo vetĂ«m nĂ« vdev normal ose nĂ« njĂ« pajisje speciale SLOG, por edhe nĂ« vdev speciale. NĂ«se njĂ« vdev normal Ă«shtĂ« i lidhur me njĂ« hard disk, ndĂ«rsa njĂ« vdev special me njĂ« SSD, ky ndryshim lejon pĂ«rjashtimin e situatave kur tĂ« dhĂ«nat shkruhen nĂ« SSD, ndĂ«rsa blloqet pĂ«rkatĂ«se ZIL shkruhen nĂ« hard disk, duke shkaktuar vonesa tĂ« panevojshme.
  • ËshtĂ« lejuar caktimi i atributit special_small_blocks pĂ«r ndarjet (ZVOL), e cila lejon organizimin e vendosjes sĂ« blloqeve tĂ« vogla nĂ« njĂ« vdev special tĂ« veçantĂ«, pĂ«r shembull, nĂ« njĂ« SSD.
  • ËshtĂ« shtuar njĂ« mod i ri pĂ«r riparimin "zfs rewrite -P", qĂ« pĂ«r sa kohĂ« Ă«shtĂ« e mundur, lĂ« tĂ« pandryshuar kohĂ«n logjike tĂ« krijimit, duke lejuar dallimin e blloqeve qĂ« janĂ« thjesht zhvendosur nĂ« bass tĂ« blloqeve qĂ« janĂ« ndryshuar realisht nga pĂ«rdoruesi.
  • PĂ«r komandat "zpool trim", "zpool scrub" dhe "zpool initialize" Ă«shtĂ« realizuar njĂ« opsion "-a" (—all), i cili lejon ekzekutimin e kĂ«tyre komandave menjĂ«herĂ« pĂ«r tĂ« gjitha pulat e importuara.
  • ËshtĂ« shtuar komanda "zpool scrub -S -E" pĂ«r tĂ« kryer kontrollin e checksum-it tĂ« tĂ« dhĂ«nave qĂ« bien brenda intervaleve tĂ« caktuara.
  • JanĂ« shtuar optimizime tĂ« reja nĂ« procesin e deduplikimit.

Burimi: opennet.ru

Bleni hostim tĂ« besueshĂ«m pĂ«r faqe me mbrojtje nga DDoS, serverĂ« VPS VDS đŸ”„ Bleni hostim tĂ« besueshĂ«m pĂ«r faqe me mbrojtje nga DDoS, serverĂ« VPS VDS | ProHoster