Мини-интервју са Олегом Анастасјевим: толеранција грешака у Апацхе Цассандра

Мини-интервју са Олегом Анастасјевим: толеранција грешака у Апацхе Цассандра

Одноклассники је највећи корисник Апацхе Цассандре на РуНету и један од највећих на свету. Почели смо да користимо Цассандру 2010. за чување оцена фотографија, а сада Цассандра управља петабајтима података о хиљадама чворова, у ствари, чак смо развили и сопствене НевСКЛ трансакцијска база података.
12. септембра у нашој канцеларији у Санкт Петербургу одржаћемо други састанак посвећен Апачи Касандри. Главни говорник догађаја биће главни инжењер Одноклассника Олег Анастасјев. Олег је стручњак у области дистрибуираних система отпорних на грешке, ради са Касандром више од 10 година и више пута говорили о карактеристикама коришћења овог производа на конференцијама.

Уочи сусрета, разговарали смо са Олегом о толеранцији кварова дистрибуираних система са Касандром, питали о чему би он причао на састанку и зашто је вредело присуствовати овом догађају.

Олег је своју програмерску каријеру започео давне 1995. године. Развио је софтвер у банкарству, телекомуникацијама и транспорту. Од 2007. ради као водећи програмер у Одноклассники у тиму за платформу. Његове одговорности укључују развој архитектуре и решења за системе високог оптерећења, велика складишта података и решавање проблема перформанси и поузданости портала. Он такође обучава програмере унутар компаније.

- Олег, здраво! маја одржано први сусрет, посвећен Апачи Касандри, учесници кажу да су дискусије трајале до касно у ноћ, реците ми, молим вас, какви су ваши утисци са првог сусрета?

Програмери са различитим искуством из различитих компанија дошли су са својим болом, неочекиваним решењима проблема и невероватним причама. Већину састанка смо успели да спроведемо у формату дискусије, али је било толико дискусија да смо успели да дотакнемо само трећину планираних тема. Велику пажњу смо посветили томе како и шта пратимо на примеру наших стварних производних услуга.

Био сам заинтересован и стварно ми се допало.

- Судећи по најави, други сусрет ће бити у потпуности посвећен толеранцији грешака, зашто сте изабрали ову тему?

Цассандра је типичан заузет дистрибуирани систем са огромном количином функционалности осим директног сервисирања корисничких захтева: оговарање, откривање грешака, пропагирање промена шеме, проширење/смањење кластера, антиентропија, прављење резервних копија и опоравак, итд. Као иу сваком дистрибуираном систему, како се количина хардвера повећава, повећава се вероватноћа кварова, тако да рад Цассандра производних кластера захтева дубоко разумевање његове структуре да би се предвидело понашање у случају кварова и радње оператера. Након што смо Касандру користили дуги низ година, ми стекли значајну експертизу, које смо спремни да поделимо, а такође желимо да разговарамо о томе како колеге у радњи решавају типичне проблеме.

— Када је у питању Касандра, шта подразумевате под толеранцијом грешака?

Пре свега, наравно, способност система да преживи типичне хардверске кварове: губитак машина, дискова или мрежне везе са чворовима/центрима података. Али сама тема је много шира и посебно укључује опоравак од кварова, укључујући кварове за које су људи ретко спремни, на пример, грешке оператера.

— Можете ли да дате пример најоптерећенијег и највећег кластера података?

Један од наших највећих кластера је кластер поклона: више од 200 чворова и стотине ТБ података. Али није најоптерећенији, јер је покривен дистрибуираним кешом. Наши најпрометнији кластери обрађују десетине хиљада РПС-а за писање и хиљаде РПС-а за читање.

- Вау! Колико често се нешто поквари?

да сво време! Укупно имамо више од 6 хиљада сервера, а сваке недеље се мења пар сервера и неколико десетина дискова (не узимајући у обзир паралелне процесе надоградње и проширења флоте машина). За сваку врсту квара постоје јасна упутства шта и којим редоследом радити, све је аутоматизовано кад год је то могуће, тако да су кварови рутински и у 99% случајева настају непримећени од стране корисника.

— Како се носите са таквим одбијањима?

Од самог почетка рада Цассандре и првих инцидената, радили смо на механизмима за прављење резервних копија и опоравак од њих, изградили процедуре распоређивања које узимају у обзир стање Цассандра кластера и, на пример, не дозвољавају поновно покретање чворова ако је могућ губитак података. О свему томе планирамо да разговарамо на састанку.

— Као што сте рекли, не постоје апсолутно поуздани системи. За које врсте неуспеха се припремате и у стању сте да преживите?

Ако говоримо о нашим инсталацијама Цассандра кластера, корисници неће ништа приметити ако изгубимо неколико машина у једном ДЦ-у или једном целом ДЦ-у (ово се десило). Са повећањем броја ДЦ-а, размишљамо о томе да почнемо да обезбеђујемо оперативност у случају квара два ДЦ-а.

— Шта мислите, шта Касандри недостаје у смислу толеранције грешака?

Цассандра, као и многе друге ране НоСКЛ продавнице, захтева дубоко разумевање своје унутрашње структуре и динамичких процеса који се дешавају. Рекао бих да му недостаје једноставност, предвидљивост и уочљивост. Али биће занимљиво чути мишљења других учесника састанка!

Олег, хвала вам пуно што сте одвојили време да одговорите на питања!

Очекујемо све који желе да комуницирају са стручњацима из области рада Апацхе Цассандра на митапу 12. септембра у нашој канцеларији у Санкт Петербургу.

Дођите, биће занимљиво!

Региструјте се за догађај.

Извор: ввв.хабр.цом

Додај коментар