Bloombergi salvestusruumi tugimeeskond tugineb avatud lähtekoodile ja SDS-ile

Bloombergi salvestusruumi tugimeeskond tugineb avatud lähtekoodile ja SDS-ile

TL; DR: Bloomberg Storage Engineeringi meeskond lõi sisekasutuseks mõeldud pilvesalvestusruumi, mis ei sega infrastruktuuri ja talub pandeemia ajal suuri kauplemisvolatiilsusest tulenevaid koormusi.

Mattew Leonard kasutab oma tööst Bloomberg Storage Engineeringi meeskonna tehnilise juhina rääkides sageli sõnu „väljakutsuv” ja „lõbus”. Väljakutsed tulenevad laiast salvestusruumist, alates uusimatest NVMe-põhistest SAN-massiividest kuni avatud lähtekoodiga tarkvaraga määratletud salvestusruumini DevOpsis. Siit algab "lõbu" (vaata minu Habré avatari, u. tõlkija).

Leonard ja tema 25 kolleegist koosnev meeskond jälgivad enam kui 100 petabaiti mahtu ja sisemist pilve 6000 insenerile, kes arendavad rakendusi Bloombergi terminali jaoks – tehnoloogia, mis tegi Michael Bloombergist miljardäri. Meeskond kavandab, ehitab ja hooldab Bloomberg Engineeringu salvestussüsteeme.

Sarnaselt ülejäänud IT-valdkonnaga oli 2020. aasta Storage Engineeringi meeskonna liikmete jaoks ebatavaline aasta, kuna COVID-19 sundis neid kaugtööd tegema. Leonard ütles, et pandeemia mõjutas tema "tihedat meeskonda" sotsiaalselt, kuna näost näkku suhtlemine kaotati, kuid töötajad olid väga kiiresti kohanenud kodus töötama sülearvutite ja videokonverentsidega.

Hämmastavalt tahan öelda, et see ei teinud asja hullemaks. Kohanemisperiood oli lühike – kõik polnud valmis kodus töötama. Nädala või paari pärast said kõik sellest aru. Suutsime leida viise, kuidas end hõivatud hoida, osta ja uuendada seadmeid ning suurendada kulusid ettevõtte toetamiseks sel ajal. Pidime olema loomingulised, kuid me ei saanud haiget

Suurim väljakutse võis olla enne COVID-19 haripunkti. Selle põhjuseks oli ebastabiilne turu kauplemine, mis oli tingitud murest pandeemia mõju pärast maailmamajandusele. Globaalsetelt kapitaliturgudelt Bloombergi terminalidesse suunduvate andmete maht peaaegu kahekordistus, ulatudes märtsi lõpus mõnel päeval 240 miljardi teabeni. See on salvestussüsteemide tõsine test.

Kui kahekordistate oma salvestusvajadust ühe päevaga, tekitab see huvitavaid probleeme. Saime sellest üle ja tagada, et rakenduste arendusmeeskonnad said vajaliku ruumi ja jõudluse. Suurem osa sellest on seotud sellega, kuidas me salvestussüsteemidest mõtleme. Täna me ei loo midagi. Me ei ütle: "Me kasutame ABC-d, nii et me ehitame ABC infrastruktuuri." Teeme oma meeskondadega seda, mida me nimetame "andmete eelarveks", et prognoosida kasutust, analüüsida kasutus- ja jõudlustrende ning vaadata ka turvalisust. Seda tüüpi planeerimine, läbimõtlemine ja metoodiline hoolsus võimaldab meil hüppeliselt hüppeliselt hüppeliselt tegutseda. Muidugi olin närvis, aga tundsin end mugavalt oma kohal olles.

Leonard rääkis hiljuti SearchStorage'iga üksikasjalikult andmepõhiste ettevõtete salvestusruumi haldamise kohta. Ta arutas, mida oleks vaja privaatse pilvesalvestuslahenduse pakkumiseks, mis võimaldaks pakkuda kasutajatele AWS-i funktsioone, hoides samal ajal andmeid Bloombergi andmekeskustes.

Kui pandeemiat enam ei ole, siis milliseid raskusi on Bloombergi inseneridel salvestusruumi haldamisel?

Meil on palju vajadusi, oleme lihtsalt eri suundades rebitud. Seega peame pakkuma palju erinevat tüüpi tooteid erinevatel SLA tasemetel, et aidata meie rakenduste arendajatel salvestusruumi enda pärast muretsemise asemel oma ülesannetele keskenduda.

Ja millist strateegiat te selle jaoks järgite?

Üks osa sellest, mida me püüame teha, on salvestusruumi jõudluse parandamine. Mõelge AWS-i mudelile, kus arendusinsener astub sisse, vajutab nuppu ja seejärel saab "klõps" võluväel oma probleemi lahendamiseks õige salvestustüübi.

Kuidas teie salvestustaristu välja näeb?

Kuna meil on väga mitmekesine ökosüsteem ja palju erinevaid arendajaid, ei saa me pakkuda ühte toodet. Meil on objektide, failide ja plokkide salvestusruum. Need on erinevad tooted ja pakume nende tarnimiseks erinevat tüüpi tehnoloogiaid. Plokkide jaoks kasutame SAN-i. Meil on ka SDS, mis pakub teistsuguste jõudlusnõuetega plokkide salvestamise võimalust. Failide jaoks kasutame NFS-i. SDS-i kasutatakse ka objektide hoidmiseks. Ploki- ja objektiosad moodustavad sisemise privaatse pilve arvutamiseks ja salvestamiseks.

Nii et te ei kasuta avalikku pilvesalvestust?

See on õige. Mõnel arendusmeeskonnal on luba kasutada avalikke pilvi. Kuid meie ettevõtte olemuse tõttu eelistame omada rohkem kontrolli asjade üle, mis meie seintelt lahkuvad. Nii et jah, meil on oma pilved, mis on meie kontrolli all. See on meie hallatavas andmekeskuses asuv seade.

Oma andmekeskustes eelistame mitme tarnija strateegiat. Nad on suured tarnijad, kuid me ei ütle, kes täpselt (Bloombergi poliitika on mitte toetada ühtegi tarnijat, u. tõlkija).

Kas kasutate oma privaatpilve loomiseks hüperkonvergeeritud infrastruktuuri?

Ei. Meie Bloombergis valime suuna, kus me ei liigu hüperkonvergentsi poole. Püüame arvutusi salvestusruumist lahti siduda, et saaksime neid iseseisvalt skaleerida. Suund, kuhu me liigume, eriti pilvega, on see, et suudaksime need kaks olemit eraldada. Ja kõik sellepärast, et mõned asjad meie riigis nõuavad intensiivseid arvutusi, teised aga ladustamist. Kui skaleerite need ühtlaselt, kaotate ressursse, olenemata rahast või ruumist andmekeskustes või ostes võimsust, mida te ei vaja. Seetõttu meeldib meile, et kahe olemi vahel oleks ühine liides, kuid need oleksid täiesti erinevad süsteemid ja mida haldavad erinevad meeskonnad.

Milliseid takistusi tuleb privaatpilve ehitamiseks ületada?

Mastaabiprobleem. Nagu enamiku asjade puhul, peitub kurat detailides. Kui mõelda, kuidas need asjad toimivad, kuidas need vastupidavaks muuta, kuidas operatiivset koormust taluda, kuidas suhelda füüsiliste varade meeskondadega, läheb asi veidi huvitavaks. Väljakutse on leida viis, kuidas muuta kõik skaleeritavaks ja toetatavaks tooteks, mida meie rakenduste arendajad sooviksid kasutada, olles võimelised rikastama funktsioonide komplekti, jäädes samal ajal avaliku pilve tegemiste tipptasemel. Ja ka see kõik kokku viia, et see toimiks edasi. See on meie peamine probleem – töötame kõikides ärivaldkondades, püüdes rahuldada kõiki vajadusi, kuid mitte eirates muid vajadusi.

Kas arvate, et vajate AWS-is ja muudes avalikes pilvedes saadaolevaid uusimaid funktsioone?

Kõige lõbusam fakt S3 juures on see, et elatustase muutub pidevalt, aina lisandub uusi funktsioone. See on nagu uus mänguasi. Kui keegi näeb uues versioonis uut funktsiooni, soovib ta seda. Kõik AWS-i funktsioonid ei ole meie keskkonnas rakendatavad, seega on oluline ja huvitav teada, mis aitab arendajaid ja kuidas seda ettevõttesiseselt hankida.

Milliseid salvestusseadmeid kasutate?

Kasutame uusimat tehnikat. Meie sisemine pilv põhineb täielikult NVMe Flashil, mis muudab need süsteemid väga võimsaks. See muudab meie elu veidi lihtsamaks ja on ka meie arendajatele tore funktsioon, sest nad ei pea muretsema salvestusruumi jõudluse pärast.

Milleks kasutate objektide hoidmist?

Meil töötab infrastruktuuri kallal 6000 arendajat, neid ei ühenda ükski kasutusjuhtum. Ükskõik milline võimalus, mida saate mõelda, on see tõenäoliselt objektide laos. Mõned meeskonnad kasutavad seda külma arhiivi salvestamiseks, mõned andmete edastamiseks ja teised, kes kasutavad seda tehingurakenduste jaoks. Kõik need kasutusjuhtumid nõuavad erineval tasemel SLA-d, nii et nagu näete, on meil erinevat tüüpi liiklust ja igasuguseid vajadusi meie infrastruktuuri erinevate kasutajate jaoks. See ei ole homogeenne kasutusjuhtum, mis töötab ühegi meie salvestusruumi peal, mis muudab asjad ilmselgelt keerulisemaks.

Kui suurt rolli mängivad teie jaoks Kubernetes ja konteinerid ning kuidas see mõjutab salvestamist?

Rõhutame salvestusruumi tootlikkust, et luua pilvetunne, millegi-teenusena tunnetus, kus on nupp, mille abil arendajad saavad oma tööd kiirendada ja infrastruktuuri eemaldada.

Toimetaja nr.: 15. oktoober 2020 saab valmis Cephi videokursus. Õpid Cephi võrgusalvestustehnoloogiat kasutama oma projektides, et parandada tõrketaluvust.

Meil on kolm meeskonda, esimene on ladustamise API meeskond. Nad loovad Bloombergi rakenduste arendusklientide jaoks programmilise juurdepääsu, lõpp-punktid ja eelmääratletud töövood. See on täiskomplekti veebiarendajate meeskond, kes kasutab node.js-i, pythoni ja avatud lähtekoodiga tehnoloogiaid, nagu Apache Airflow, et uurida konteineriseerimist ja virtualiseerimist.

Meil on ka kaks tehnilist meeskonda, kes tegelikult bitte ja baite liigutavad. Need on otsesemalt seotud seadmetega. Meil on palju seadmeid ja need meeskonnad ei kasuta virtualiseerimist ja konteinereid.

Oleme püüdnud olla kursis selles valdkonnas toimuvaga, uurinud Kubernetese CSI draivereid ja teinud tihedat koostööd Kubernetese juurutava meeskonnaga Bloombergis, et hinnata, kas suudame Kubernetese salvestusruumi meie olemasolevate tehnoloogiatega sujuvalt tööle panna. see töötab. Püsisalvestusega ühendatud Kubernetesi toetamiseks kasutame SDS-i. Oleme selle tehnoloogia edukalt välja töötanud ja kahe meeskonna vahel jätkuvad arutelud selle üle, kuidas saaksime selle Bloombergis kõigile teistele kättesaadavaks teha. Oleme näidanud, et see on täiesti võimalik.

Millist muud avatud lähtekoodiga tarkvara te kasutate, eriti salvestamiseks?

Rakenduste liikluse piiramiseks kasutame Apache Airflow, HAProxy. Kasutame ka Cephi, SDS-i platvormi. Sellega saate käskude jaoks kasutada ühte süsteemi, kuid pakkuda klientidele mitut liidest. Üks virtualiseerimisplatvormidest töötab OpenStackis – teeme selle meeskonnaga tihedat koostööd. Meil on avatud lähtekoodiga virtualiseerimisplatvorm, mis kasutab salvestamiseks avatud lähtekoodiga SDS-i platvormi. See on naljakas.

Milliseid salvestustehnoloogiaid kaalute järgmise kahe kuni kolme aasta jooksul?

Uurime pidevalt muid lahedaid uusi asju, mis laotööstuses toimuvad. See on osa meie tööst, see pole "siin on teie SAN, halda siin ja siin on teie NFS, halda seal." Püüame oma klientidega suhelda, st. meie rakenduste arendajate poolt. Teeme koostööd, et mõista, milliseid probleeme nad lahendada püüavad ja kuidas see mõjutab meie väliseid Bloombergi kliente – panku ja teisi, kes meie tarkvara kasutavad. Ja siis läheme tagasi andmete salvestamise maailma, et leida võimalusi, mis aitavad neil oma eesmärki saavutada. Kuidas saame aidata neil leida õige salvestustehnoloogia, mis sobib nende SLA-ga või sellega, mida nad üritavad teha? Kuna meil on nii palju insenere, kes teevad lahedaid asju, ei hakka kunagi igav.

Otsime praegu võimalusi parandada SDS-i jõudlust, mis võiks potentsiaalselt töötada üldotstarbelistes serverites. Nii et töötame NVMe kallal TCP kaudu, see on väga huvitav ja lahe algatus, üks paljudest. Samuti teeme koostööd valdkonna võtmeisikute ja mõne olemasoleva tarnijaga, et välja selgitada, mida nad pakuvad ja milline on tegelik jõudlus, kas saame hakata seda ettevõttes tootmises kasutama. See avab uued horisondid, millele varem ligi ei pääsenud.

Väike abi PS-is

PS Kui tohib, tuletan meelde, et 28.-30. september intensiivne Kubernetese baas, neile, kes Kubernetest ei tunne, kuid soovivad sellega tutvuda ja sellega tegelema hakata.

Allikas: www.habr.com

Lisa kommentaar