LizardFS 3.13.0-rc2 кластерлік файлдық жүйені жаңарту

Бір жылға созылған дамудағы тыныштықтан кейін қайта жалғасты қатеге төзімді таратылған файлдық жүйенің жаңа тармағында жұмыс істеу LizardF 3.13 и жарияланған екінші босату кандидаты. Жақында болды LizardFS әзірлеуші ​​компанияның иелері ауысты, жаңа менеджмент қабылданды және әзірлеушілер ауыстырылды. Соңғы екі жыл бойына жоба қоғамдастықтан алынып тасталды және оған жеткілікті назар аударылмады, бірақ жаңа ұжым қауымдастықпен бұрынғы қарым-қатынасты жандандырып, онымен тығыз қарым-қатынас орнатуды көздеп отыр. Жоба коды C және C++ тілдерінде жазылған және таралады GPLv3 лицензиясы бойынша.

LizardFS Бұл әртүрлі серверлер бойынша деректерді таратуға мүмкіндік беретін, бірақ дәстүрлі диск бөлімдеріне ұқсас түрде жұмыс істейтін бір үлкен бөлім түрінде оларға қол жеткізуді қамтамасыз ететін бөлінген кластерлік файлдық жүйе. LizardFS орнатылған бөлім POSIX файл атрибуттарын, ACL, құлыптарды, ұяшықтарды, құбырларды, құрылғы файлдарын, символдық және қатты сілтемелерді қолдайды. Жүйеде бір сәтсіздік нүктесі жоқ, барлық компоненттер артық. Деректер операцияларын параллелендіруге қолдау көрсетіледі (бір уақытта бірнеше клиент файлдарға қол жеткізе алады).

Ақауларға төзімділікті қамтамасыз ету үшін деректер репликаларға бөлінеді, олар артықшылығы бар әртүрлі түйіндерге таратылады (бірнеше көшірмелер әртүрлі түйіндерге орналастырылады); егер түйіндер немесе дискілер сәтсіз болса, жүйе ақпаратты жоғалтпай жұмысын жалғастырады және деректерді автоматты түрде қайта таратады. қалған түйіндерді ескере отырып. Жадты кеңейту үшін техникалық қызмет көрсету үшін жұмысты тоқтатпай оған жаңа түйіндерді қосу жеткілікті (жүйенің өзі деректердің бір бөлігін жаңа серверлерге қайталайды және жаңа серверлерді ескере отырып жадты теңестіреді). Кластердің өлшемін азайту үшін де дәл осылай жасауға болады - жүйеден жойылып жатқан ескірген жабдықты жай ғана өшіруге болады.

Деректер мен метадеректер бөлек сақталады. Жұмыс істеу үшін басты-құлдық режимінде жұмыс істейтін екі метадеректер серверін, сондай-ақ кемінде екі деректерді сақтау серверін (chunkserver) орнату ұсынылады. Сонымен қатар, метадеректердің сақтық көшірмесін жасау үшін журнал серверлері метадеректердегі өзгерістер туралы ақпаратты сақтау үшін пайдаланылуы мүмкін және барлық бар метадеректер серверлері зақымдалған жағдайда жұмысты қалпына келтіруге мүмкіндік береді. Әрбір файл блоктарға (бөлшектерге) бөлінген, көлемі 64 МБ дейін. Блоктар сақтау серверлері арасында таңдалған репликация режиміне сәйкес бөлінеді: стандартты (әртүрлі түйіндерге, оның ішінде жеке каталогтарға қатысты орналастырылатын көшірмелер санын нақты анықтау - маңызды деректер үшін көшірмелер санын көбейтуге болады, ал маңызды емес деректер азайтылды), XOR (RAID5 ) және EC (RAID6).

Жад петабайт өлшемдеріне дейін кеңейтілуі мүмкін. Қолдану салаларына мұрағаттау, виртуалды машина кескіндерін сақтау, мультимедиялық деректер, сақтық көшірмелер, DRC (апаттарды қалпына келтіру орталығы) және өнімділігі жоғары есептеу кластерлерінде сақтау ретінде пайдалану жатады. LizardFS кез келген өлшемдегі файлдар үшін өте жоғары оқу жылдамдығын қамтамасыз етеді және жазу кезінде ол бүкіл үлкен және орташа өлшемді файлдарды жазу кезінде, тұрақты өзгертулер болмаған кезде, ашық файлдармен қарқынды жұмыс және файлмен бір реттік операцияларды орындау кезінде жақсы өнімділікті көрсетеді. шағын файлдар жиынтығы.

LizardFS 3.13.0-rc2 кластерлік файлдық жүйені жаңарту

FS мүмкіндіктерінің ішінде белгілі бір уақыттағы файлдардың күйін көрсететін суреттерді қолдаудың болуын және «себеттің» кірістірілген іске асырылуын атап өтуге болады (файлдар дереу жойылмайды және олар үшін қол жетімді). біраз уақытқа қалпына келтіру). Бөлімге кіру IP мекенжайы немесе құпия сөз (NFS сияқты) арқылы шектелуі мүмкін. Пайдаланушылардың белгілі бір санаттары үшін өлшем мен өткізу қабілеттілігін шектеуге мүмкіндік беретін квота мен қызмет сапасын басқару тетіктері бар. Сегменттері әртүрлі деректер орталықтарында орналасқан географиялық бөлінген сақтау орындарын құруға болады.

LizardFS жобасы 2013 жылы шанышқы ретінде құрылған MooseFS, және негізінен Reed-Solomon қателерді түзету кодтарына негізделген репликация режимінің болуымен (raidzN аналогы), кеңейтілген ACL қолдауымен, Windows платформасы үшін клиенттің болуымен, қосымша оңтайландырулармен (мысалы, клиентті біріктіру кезінде және сақтау сервері, блоктар, мүмкін болса, ағымдағы түйінмен жіберіледі және метадеректер жадта кэштеледі), неғұрлым икемді конфигурация жүйесі, деректерді алдын ала оқуға қолдау көрсету, каталог квоталары және ішкі қайта өңдеу.

LizardFS 3.13.0 желтоқсан айының соңында шығарылады деп жоспарланған. LizardFS 3.13 негізгі инновациясы ақауларға төзімділікті қамтамасыз ету үшін консенсус алгоритмін пайдалану болып табылады (сәтсіздік жағдайында негізгі серверлерді ауыстыру) Рафт (бұрын коммерциялық өнімдерде қолданылған uRaf-ты өзіміздің іске асыруды пайдаланады). uRaf пайдалану конфигурацияны жеңілдетеді және ақауларды қалпына келтіру кідірістерін азайтады, бірақ кем дегенде үш жұмыс түйінін қажет етеді, олардың біреуі кворум үшін пайдаланылады.

Басқа өзгерістер: FUSE3 ішкі жүйесіне негізделген жаңа клиент, қателерді түзету мәселелерін шешеді, nfs-ganesha плагині Си тілінде қайта жазылды. 3.13.0-rc2 жаңартуы 3.13 тармағының алдыңғы сынақ шығарылымдарын жарамсыз еткен бірнеше маңызды қателерді түзетеді (3.12 тармағына арналған түзетулер әлі жарияланған жоқ және 3.12-ден 3.13-ке дейінгі жаңарту әлі де толық деректердің жоғалуына әкеледі).

2020 жылы жұмыс дамуға бағытталады
Агама, жаңа толығымен қайта жазылған LizardFS ядросы, әзірлеушілердің пікірінше, 3.12 тармағымен салыстырғанда өнімділікті үш есе арттыруды қамтамасыз етеді. Агама оқиғаға негізделген, асинхронды енгізу/шығару негізіндегі архитектураға ауысады азио, негізінен пайдаланушы кеңістігінде жұмыс істейді (ядро кэштеу механизмдеріне тәуелділікті азайту үшін). Сонымен қатар, өнімділікті автоматты реттеуге қолдау көрсететін жаңа жөндеу ішкі жүйесі және желілік белсенділік талдаушысы ұсынылады.

LizardFS клиенті апатты қалпына келтірудің сенімділігін жақсартатын, әртүрлі клиенттердің бірдей деректерге қатынасуын ортақ пайдаланған кезде туындайтын мәселелерді шешетін және өнімділікті айтарлықтай жақсартуға мүмкіндік беретін нұсқаларды жазу әрекеттеріне толық қолдауды қосады. Клиент пайдаланушы кеңістігінде жұмыс істейтін өзінің желілік ішкі жүйесіне ауыстырылады. Агама негізіндегі LizardFS бірінші жұмыс прототипі 2020 жылдың екінші тоқсанында дайын болады деп жоспарлануда. Сонымен бірге олар LizardFS-ті Kubernetes платформасымен біріктіру құралдарын енгізуге уәде береді.

Ақпарат көзі: opennet.ru

пікір қалдыру