LizardFS 3.13.0-rc2 klastri failisüsteemi värskendus

Pärast aastat kestnud arenguseisakut jätkati töötades tõrketaluva hajutatud failisüsteemi uue haru kallal SisalikF 3.13 и avaldatud teine ​​vabastamiskandidaat. Hiljuti juhtus LizardFSi arendava ettevõtte omanike vahetus, võeti vastu uus juhtkond ja vahetati välja arendajad. Viimased kaks aastat on projekt kogukonnast eemale tõmbunud ega ole sellele piisavalt tähelepanu pööranud, kuid uus meeskond kavatseb taaselustada senise suhte kogukonnaga ja luua sellega tihedat suhtlust. Projekti kood on kirjutatud C ja C++ keeltes ning jaotatud GPLv3 litsentsi alusel.

SisalikFS see on hajutatud klastri failisüsteem, mis võimaldab jagada andmeid erinevate serverite vahel, kuid annab neile juurdepääsu ühe suure partitsiooni kujul, millega töötatakse sarnaselt traditsiooniliste kettasektsioonidega. LizardFS-iga ühendatud partitsioon toetab POSIX-i failiatribuute, ACL-e, lukke, pistikupesasid, torusid, seadmefaile, sümboolseid ja kõvalinke. Süsteemil ei ole ühte rikkepunkti, kõik komponendid on üleliigsed. Toetatud on andmetoimingute paralleelsus (mitu klienti pääseb korraga juurde failidele).

Veataluvuse tagamiseks jagatakse andmed koopiateks, mis jaotatakse liiasusega erinevate sõlmede vahel (eri sõlmedesse paigutatakse mitu koopiat), sõlmede või draivide rikke korral jätkab süsteem tööd ilma infokaota ja jagab andmed automaatselt ümber. võttes arvesse ülejäänud sõlme. Salvestusruumi laiendamiseks piisab, kui ühendate sellega uued sõlmed ilma hooldustööd katkestamata (süsteem ise replikeerib osa andmetest uutesse serveritesse ja tasakaalustab salvestusruumi uute serveritega). Sama saate teha ka klastri suuruse vähendamiseks – saate lihtsalt keelata vananenud seadmed, mida süsteemist eemaldatakse.

Andmeid ja metaandmeid hoitakse eraldi. Töötamiseks on soovitatav paigaldada kaks ülem-alluv režiimis töötavat metaandmeserverit ja vähemalt kaks andmesalvestusserverit (tükiserver). Lisaks saab metaandmete varundamiseks kasutada logiservereid metaandmete muudatuste kohta teabe salvestamiseks ja kõigi olemasolevate metaandmete serverite kahjustamise korral töö taastamiseks. Iga fail on jagatud plokkideks (juppideks), suurusega kuni 64 MB. Plokid jaotatakse salvestusserverite vahel vastavalt valitud replikatsioonirežiimile: standardne (eri sõlmedesse paigutatavate koopiate arvu selgesõnaline määramine, sealhulgas üksikute kataloogide puhul - oluliste andmete puhul saab koopiate arvu suurendada ja ebaolulisi andmeid vähendatud), XOR (RAID5 ) ja EC (RAID6).

Salvestusruum võib ulatuda petabaitideni. Kasutusvaldkonnad hõlmavad arhiveerimist, virtuaalmasina kujutiste, multimeediumiandmete salvestamist, varukoopiaid, kasutamist DRC-na (Daster Recovery Center) ja salvestusruumina suure jõudlusega andmetöötlusklastrites. LizardFS pakub igas suuruses failidele väga suurt lugemiskiirust ja kirjutamisel näitab see head jõudlust tervete suurte ja keskmise suurusega failide kirjutamisel, kui puudub pidev muutmine, intensiivne töö avatud failidega ja ühekordsed toimingud hunnik väikseid faile.

LizardFS 3.13.0-rc2 klastri failisüsteemi värskendus

FS-i funktsioonide hulgas võib märkida ka hetktõmmiste toe olemasolu, mis kajastab failide olekut teatud ajahetkel, ja sisseehitatud prügikasti (faile ei kustutata kohe ja need on saadaval taastumine mõneks ajaks). Juurdepääsu partitsioonile saab piirata IP-aadressi või parooliga (sarnaselt NFS-ile). On olemas kvoodi- ja teenusekvaliteedi haldusmehhanismid, mis võimaldavad piirata teatud kasutajakategooriate suurust ja ribalaiust. Võimalik on luua geograafiliselt hajutatud salvestusruumid, mille segmendid asuvad erinevates andmekeskustes.

LizardFS projekt asutati 2013. aastal kahvlina MooseFS, ja erineb peamiselt Reed-Solomoni veaparanduskoodidel põhineva replikatsioonirežiimi olemasolu (analoogne raidzN-ga), laiendatud ACL-toe, Windowsi platvormi kliendi olemasolu, täiendavate optimeerimiste (näiteks kliendi ja salvestusserver, plokid saadetakse võimaluse korral praeguse sõlmega ja metaandmed salvestatakse mällu), paindlikum konfiguratsioonisüsteem, andmete ettelugemise tugi, kataloogikvootide ja sisemise ümbertöötamise tugi.

LizardFS 3.13.0 peaks välja tulema detsembri lõpus. LizardFS 3.13 peamine uuendus on konsensusalgoritmi kasutamine tõrketaluvuse tagamiseks (peaserverite vahetamine tõrke korral) Parv (kasutab meie enda rakendust uRaft, mida varem kasutati kommertstoodetes). uRafti kasutamine lihtsustab konfigureerimist ja vähendab rikete taastamise viivitusi, kuid nõuab vähemalt kolme töötavat sõlme, millest ühte kasutatakse kvoorumi jaoks.

Muud muudatused: FUSE3 alamsüsteemil põhinev uus klient, vigade parandamisega seotud probleemid, nfs-ganesha plugin on ümber kirjutatud C-keeles. Värskendus 3.13.0-rc2 parandab mitu kriitilist viga, mis muutsid haru 3.13 varasemad testversioonid kasutuskõlbmatuks (haru 3.12 parandusi pole veel avaldatud ja värskendus 3.12-lt 3.13-le põhjustab endiselt andmete täielikku kadumist).

2020. aastal keskendutakse töö arendamisele
Agama, uus täielikult ümber kirjutatud LizardFS-i kernel, mis arendajate sõnul suurendab jõudlust kolm korda võrreldes haruga 3.12. Agama läheb üle sündmustepõhisele arhitektuurile, mis põhineb asünkroonsel sisendil/väljundil asio, töötavad eelkõige kasutajaruumis (et vähendada sõltuvust kerneli vahemällu salvestamise mehhanismidest). Lisaks pakutakse uut silumise alamsüsteemi ja võrgutegevuse analüsaatorit, mis toetab jõudluse automaatset häälestamist.

LizardFS-i klient lisab täieliku toe versioonide kirjutamise operatsioonidele, mis parandab katastroofi taastamise usaldusväärsust, lahendab probleeme, mis tekivad, kui erinevad kliendid jagavad juurdepääsu samadele andmetele, ja võimaldab jõudlust oluliselt parandada. Klient viiakse üle tema enda võrgu alamsüsteemi, mis töötab kasutajaruumis. Agamal põhineva LizardFS-i esimene töötav prototüüp plaanitakse valmis saada 2020. aasta teises kvartalis. Samal ajal lubavad nad juurutada tööriistu LizardFS-i integreerimiseks Kubernetese platvormiga.

Allikas: opennet.ru

Lisa kommentaar