Smáviðtal við Oleg Anastasyev: bilanaþol í Apache Cassandra

Smáviðtal við Oleg Anastasyev: bilanaþol í Apache Cassandra

Odnoklassniki er stærsti notandi Apache Cassandra á RuNet og einn sá stærsti í heiminum. Við byrjuðum að nota Cassandra árið 2010 til að geyma myndaeinkunnir og nú stjórnar Cassandra petabætum af gögnum á þúsundum hnúta, reyndar þróuðum við okkar eigin NewSQL viðskiptagagnagrunnur.
Þann 12. september á skrifstofu okkar í Sankti Pétursborg munum við halda annar fundur tileinkaður Apache Cassandra. Aðalfyrirlesari viðburðarins verður yfirverkfræðingur Odnoklassniki Oleg Anastasyev. Oleg er sérfræðingur á sviði dreifðra og bilanaþolinna kerfa; hann hefur unnið með Cassöndru í meira en 10 ár og ítrekað talaði um eiginleika þess að nota þessa vöru á ráðstefnum.

Í aðdraganda fundarins ræddum við við Oleg um bilanaþol dreifðra kerfa með Cassöndru, spurðum hvað hann myndi tala um á fundinum og hvers vegna það væri þess virði að mæta á þennan viðburð.

Oleg hóf forritunarferil sinn árið 1995. Hann þróaði hugbúnað í banka, fjarskiptum og flutningum. Hann hefur starfað sem leiðandi þróunaraðili hjá Odnoklassniki síðan 2007 í vettvangsteyminu. Ábyrgð hans felur í sér að þróa arkitektúr og lausnir fyrir mikið álagskerfi, stór gagnageymslur og leysa vandamál varðandi afköst og áreiðanleika gáttarinnar. Hann þjálfar einnig þróunaraðila innan fyrirtækisins.

- Oleg, halló! maí fór fram fyrsti fundur, tileinkað Apache Cassöndru, segja þátttakendur að umræður hafi staðið fram eftir nóttu, vinsamlegast segðu mér, hverjar eru tilfinningar þínar af fyrsta fundinum?

Hönnuðir með mismunandi bakgrunn frá mismunandi fyrirtækjum komu með eigin sársauka, óvæntar lausnir á vandamálum og ótrúlegar sögur. Okkur tókst að halda megnið af fundinum í umræðuformi, en það voru svo margar umræður að við náðum aðeins að snerta þriðjung af fyrirhuguðum efnisatriðum. Við lögðum mikla áherslu á hvernig og hvað við fylgjumst með með því að nota dæmi um raunverulega framleiðsluþjónustu okkar.

Ég hafði áhuga og líkaði mjög vel.

- Af tilkynningunni að dæma, annar fundur mun algjörlega helgast af umburðarlyndi, hvers vegna valdir þú þetta efni?

Cassandra er dæmigert annasamt dreift kerfi með gríðarlega mikið af virkni umfram það að þjóna beiðnum notenda beint: slúður, bilanagreining, útbreiðsla stefnubreytinga, þyrpingastækkan/fækkun, óreiðuvörn, öryggisafrit og endurheimt o.s.frv. Eins og í hvaða dreifðu kerfi sem er, eftir því sem magn vélbúnaðar eykst, aukast líkurnar á bilunum, þannig að rekstur Cassandra framleiðsluklasa krefst djúps skilnings á uppbyggingu þess til að spá fyrir um hegðun ef bilanir og aðgerðir rekstraraðila koma upp. Eftir að hafa notað Cassandra í mörg ár höfum við hafa safnað umtalsverðri sérfræðiþekkingu, sem við erum tilbúin að deila, og við viljum líka ræða hvernig samstarfsmenn í búðinni leysa dæmigerð vandamál.

— Þegar kemur að Cassöndru, hvað meinarðu með umburðarlyndi?

Fyrst af öllu, auðvitað, getu kerfisins til að lifa af dæmigerðar vélbúnaðarbilanir: tap á vélum, diskum eða nettengingu við hnúta/gagnaver. En viðfangsefnið sjálft er miklu víðtækara og nær einkum til bata eftir bilanir, þar á meðal bilanir sem fólk er sjaldan undirbúið fyrir, td villur í rekstraraðila.

— Geturðu nefnt dæmi um mest hlaðna og stærsta gagnaklasann?

Einn af stærstu þyrpingunum okkar er gjafaklasinn: meira en 200 hnútar og hundruð TB af gögnum. En það er ekki mest hlaðið, þar sem það er hulið af dreifðu skyndiminni. Uppteknustu klasarnir okkar sjá um tugþúsundir RPS til að skrifa og þúsundir RPS fyrir lestur.

- Vá! Hversu oft brotnar eitthvað?

Já allan tímann! Alls erum við með meira en 6 þúsund netþjóna og í hverri viku er skipt um nokkra netþjóna og nokkra tugi diska (án þess að taka tillit til samhliða uppfærslu og stækkunar vélaflotans). Fyrir hverja tegund bilunar eru skýrar leiðbeiningar um hvað á að gera og í hvaða röð, allt er sjálfvirkt þegar hægt er, þannig að bilanir eru venjubundnar og í 99% tilvika verða notendur óséðir.

— Hvernig bregst þú við slíkum synjun?

Frá upphafi reksturs Cassöndru og fyrstu atvikanna, unnum við að kerfi fyrir öryggisafrit og endurheimt úr þeim, byggðum uppsetningaraðferðir sem taka mið af ástandi Cassöndru þyrpinga og leyfa til dæmis ekki að endurræsa hnúta ef gagnatap er mögulegt. Við ætlum að tala um þetta allt á fundinum.

— Eins og þú sagðir, það eru engin algerlega áreiðanleg kerfi. Hvers konar mistök undirbýrðu þig og getur lifað af?

Ef við tölum um uppsetningar okkar á Cassandra þyrpingum munu notendur ekki taka eftir neinu ef við missum nokkrar vélar í einum DC eða einni heilu DC (þetta hefur gerst). Með aukningu á fjölda DC-véla erum við að hugsa um að byrja að tryggja rekstrarhæfni ef bilun verður á tveimur DC-stöðvum.

— Hvað heldurðu að Cassöndru skorti hvað varðar gallaþol?

Cassandra, eins og margar aðrar snemma NoSQL verslanir, krefst djúps skilnings á innri uppbyggingu þess og kraftmiklum ferlum sem eiga sér stað. Ég myndi segja að það vanti einfaldleika, fyrirsjáanleika og athuganleika. En það verður fróðlegt að heyra skoðanir annarra fundarmanna!

Oleg, þakka þér kærlega fyrir að gefa þér tíma til að svara spurningunum!

Við bíðum eftir öllum sem vilja eiga samskipti við sérfræðinga á sviði reksturs Apache Cassandra á fundinum 12. september á skrifstofu okkar í St. Pétursborg.

Komdu, það verður áhugavert!

Skráðu þig á viðburðinn.

Heimild: www.habr.com

Bæta við athugasemd