Väljaanne Bcachefs 1.38.0. NASty distributsioon NAS'i rakendamiseks Bcachefs'i baasil

Kent Overstreet on avaldanud Bcachefs 1.38.0 failisüsteemi väljalaskmise. Väljalaskmine hõlmab kahte paketti: bcachefs-kernel-dkms, mille kernelimoodul koostatakse DKMS (Dynamic Kernel Module Support) süsteemi abil, ja bcachefs-tools, mis sisaldab kasutajapoolses ruumis töötavat bcachefs utiliiti, rakendades käsklusi failisüsteemi loomiseks (mkfs), mountimiseks, taastamiseks ja kontrollimiseks. Paketid on kokku pandud Debianile, Ubuntu’le ning oodatakse Arch Linuxile, Fedorale, openSUSE-le ja NixOS-ile. DKMS moodul toetab Linuxi kerneli, alustades versioonist 6.16.

Bcachefs projekt arendab failisüsteemi, mille eesmärk on ühendada Btrfs-i ja ZFS-i täiendavad omadused ning XFS-i tasemed jõudluses, usaldusväärsuses ja skaleeritavuses. Bcachefs toetab selliseid funktsioone nagu mitme seadme lisamine jagusse, kihilised salvestuslahendused (alumine kiht kiiresti kasutatavate andmete jaoks SSD-de põhjal ja ülemine kiht vähem nõutud andmete jaoks kõvaketaste põhjal), replikatsioon (RAID 1/10), vahemälude haldamine, automaatne andmete kokkusurutus (LZ4, gzip ja ZSTD režiimid), olekuseened (snapshooting), terviklikkuse kontrollimine kontrollsummadega, vigade parandamise koodid ja teabe salvestamine krüpteeritud kujul (kasutatakse ChaCha20 ja Poly1305).

Uues versioonis:

  • Btree-struktuuri need_discard, mida kasutatakse vabanevate plokkide koguste jälgimiseks, on muudetud järjestuse järgi indekseerimisele ajaloost, mitte seadme/plokkide paari (device/bucket) alusel. Muudatus on kiirendanud need_discard struktuuri tööd ja välistanud ummistuste tekkimise ajaloost taastamisel failisüsteemi mountimise ajal, kui vabad plokid metainformatsiooni jaoks on ebapiisavad.
  • Ajaloos kirjutamise toimingud on viidud eraldi fifo-joonesse ning ajaloos samaaegsete kirjutamisoperatsioonide maksimaalne arv on suurendatud 16-lt 256-le, mis on võimaldanud suurte salvestusbasseinide kiirendada tugeva kirjutuskoormuse korral.
  • Failisüsteemi mountimine suure arvu snapshot'idega on märkimisväärselt kiiruselt paranenud.

Lisaks tasub mainida projekti NASty 0.0.3 väljalaskmist, mis arendab võrgu salvestussüsteemide (NAS) distributsiooni standardvarustuse põhjal. Distributsioon põhineb NixOS'i pakendite baasil, kasutab Bcachefs failisüsteemi ja toetab failidele juurdepääsu läbi NFS ja SMB, samuti plokkseadmete ekspordiga iSCSI ja NVMe-oF kaudu. Juhtimist teostatakse veebiliidese kaudu. Installeeritava iso-pildi suurus on 1.9 GB. Projekti tööd jaotatakse GPLv3 litsentsi all. Veebiliides on kirjutatud TypeScript’is, kasutades SvelteKit raamistiku. Salvestussüsteemi ja süsteemi juhtimise mootor on kirjutatud Rusti keeles.

Uuendused laaditakse ja installitakse automaatselt. Süsteem uuendatakse aatomiliselt, võimaldades tagasipöördumist eelmisele olekule, kui uues versioonis ilmnevad probleemid. Veebiliideses on võimalusi failisüsteemide, snapshot'ide, alamsüsteemide, ketaste, virtuaalmasinate ja jagamise haldamiseks. Veebiliideses on integreeritud failihaldur ja terminali emulaator, mis töötavad brauseris. On võimalik luua reegleid tegevuste täitmiseks ja administraatori teavitamiseks, kui kettaruumi tarbimine on liiga suur, salvestusseadmetes esinevad talitlushäired või kui need üle kuumenevad.

Toetatakse isoleeritud keskkondade ja rakenduste käivitamist, kasutades virtualiseerimist QEMU/KVM baasil ja konteinerite isoleerimist k3s runtime abil (veebiliidese kaudu on võimalik otse installida Helm chart'e rakenduste konteineritesse käivitamiseks ja juurdepääsu suunamise seadistamiseks nginx ingress kaudu). Toetatakse integreerimist Kubernetes platvormiga, mille jaoks on olemas CSI draiver dünaamiliseks salvestusruumi eraldamiseks. Distributsioon saadab vaikimisi telemeetriat anonüümsete andmetega salvestusseadmete arvu ja mahtude kohta (telemeetriat saab välja lülitada sektsioonis "Settings → Telemetry").

Bcachefs valimise põhjuseks ZFS-i asemel on aktiivne arendustegevus, GPL litsentsi all tarnimine, lihtne failisüsteemide, alamsüsteemide ja snapshot'ide haldamise mudel (ilma keeruliste kontseptsioonideta, nagu dataset’id, zvol ja kõrgendatud poolid) ning olemasolu arenenud funktsioonidest, nagu vähe kasutatavate andmete automaatne liikumine aeglastele salvestusseadmetele, vigade paranduse koodid ja kahjustuste taastamine ilma failisüsteemi töötamise peatamata.

NASty 0.0.3 versiooni muudatustest võib välja tuua:

  • üleminek nix flake mehhanismi kasutamisele pakendamiseks ja sõltuvuste haldamiseks;
  • toetamine VPN Tailscale NVMe-oF edastamiseks VPN-i kaudu;
  • k3s runtime'i integreerimine; NUT (Network UPS Tools) lisamine UPS-seadmete jälgimiseks;
  • veebipaneel NFS, SMB ja iSCSI peenhäälestuseks (sealhulgas sisend-/väljunditajate, ajaloode ja metainformatsiooni varundamise valikute jaoks);
  • lisaseaded Bcachefs jaoks (vigade paranduse koodide haldamine, kontrollsummade algoritmi valik, online-taaskäivitamine jne);
  • Cachix vahemälu toetamine värskenduste edastamise kiirendamiseks;
  • generatsiooni võimalus TLS-sertifikaadid Let’s Encrypt kaudu;
  • iotop-c, btop, fwupd, rsync ja croc utiliitide hulka kuuluv.

Väljaanne Bcachefs 1.38.0. NASty distributsioon NAS'i rakendamiseks Bcachefs'i baasil

Allikas: opennet.ru

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