„Bloomberg“ saugyklos palaikymo komanda remiasi atviruoju šaltiniu ir SDS

„Bloomberg“ saugyklos palaikymo komanda remiasi atviruoju šaltiniu ir SDS

Lt; DR: „Bloomberg Storage Engineering“ komanda sukūrė debesies saugyklą vidiniam naudojimui, kuri netrukdo infrastruktūrai ir gali atlaikyti didelę prekybos nepastovumo apkrovą pandemijos metu.

Mattew Leonardas, kalbėdamas apie savo, kaip techninio vadovo, darbą „Bloomberg Storage Engineering“ komandoje, dažnai vartoja žodžius „iššūkis“ ir „linksmas“. Iššūkių kyla dėl plačios saugyklos apimties – nuo ​​naujausių NVMe pagrįstų SAN masyvų iki atvirojo kodo programinės įrangos nustatytos saugyklos „DevOps“. Čia ir prasideda „linksmybės“ (žr. mano avatarą apie Habré, apytiksliai vertėjas).

Leonardas ir jo 25 kolegų komanda prižiūri daugiau nei 100 petabaitų talpos ir vidinį debesį, skirtą 6000 XNUMX inžinierių, kuriančių programas Bloomberg terminalui, technologijai, dėl kurios Michaelas Bloombergas tapo milijardieriumi. Komanda projektuoja, kuria ir prižiūri „Bloomberg Engineering“ saugojimo sistemas.

Kaip ir kiti IT profesijos atstovai, 2020-ieji buvo neįprasti metai saugojimo inžinerijos komandos nariams, nes COVID-19 privertė juos dirbti nuotoliniu būdu. Leonardas sakė, kad pandemija paveikė jo „glaudžią komandą“ socialiai, nes buvo pašalintas bendravimas akis į akį, tačiau darbuotojai labai greitai prisitaikė prie darbo namuose su nešiojamaisiais kompiuteriais ir vaizdo konferencijose.

Nuostabu, bet noriu pasakyti, kad tai nepablogino dalykų. Buvo trumpas adaptacinis laikotarpis – ne visi buvo pasirengę dirbti iš namų. Po savaitės ar dviejų visi tai suprato. Mums pavyko rasti būdų, kaip užsiimti, pirkti ir atnaujinti įrangą bei padidinti išlaidas, skirtas palaikyti įmonę šiais laikais. Turėjome būti kūrybingi, bet nenukentėjome

Didžiausias iššūkis galėjo būti prieš COVID-19 piką. Tai įvyko dėl nepastovios rinkos prekybos, kurią sukėlė susirūpinimas dėl pandemijos poveikio pasaulio ekonomikai. Į „Bloomberg“ terminalus iš pasaulinių kapitalo rinkų patenkančių duomenų kiekis išaugo beveik dvigubai ir kovo pabaigoje kai kuriomis dienomis pasiekė 240 mlrd. Tai rimtas saugojimo sistemų išbandymas.

Kai per vieną dieną iš karto padvigubinate saugyklos poreikius, kyla įdomių problemų. Mums pavyko tai įveikti ir užtikrinti, kad programų kūrimo komandoms būtų suteikta reikiama erdvė ir našumas. Dažniausiai tai susiję su tuo, kaip mes galvojame apie saugojimo sistemas. Šiandien mes nieko nekuriame. Mes nesakome: „Naudojame ABC, todėl sukursime ABC infrastruktūrą“. Su savo komandomis darome tai, ką vadiname „duomenų biudžetu“, siekdami prognozuoti naudojimą, analizuoti naudojimo ir našumo tendencijas, taip pat žiūrime į saugumą. Toks planavimas, mąstymas ir metodinis kruopštumas leidžia mums imtis drastiškų veiksmų dėl šuolių, neišliejant prakaito. Žinoma, jaudinuosi, bet jaučiausi patogiai būdamas savo vietoje.

Neseniai Leonardas išsamiai kalbėjo su „SearchStorage“ apie duomenų valdomų įmonių saugyklos valdymą. Jis aptarė, ko reikėtų norint pasiūlyti privataus debesies saugyklos sprendimą su galimybe teikti AWS funkcijas savo vartotojams, tuo pačiu išsaugant visus duomenis „Bloomberg“ duomenų centruose.

Jei pandemijos nebėra, kokių sunkumų Bloomberg inžinieriai turi tvarkydami saugyklą?

Turime daug poreikių, tiesiog esame suplėšyti į skirtingas puses. Taigi turime pateikti daug įvairių produktų skirtingais SLA lygiais, kad padėtume mūsų programų kūrėjams sutelkti dėmesį į savo užduotis, o ne nerimauti dėl pačios saugyklos.

Ir kokios strategijos laikotės šiuo klausimu?

Dalis to, ką mes stengiamės padaryti, yra pagerinti saugyklos našumą. Pagalvokite apie AWS modelį, kai įeina kūrimo inžinierius, paspaudžia mygtuką, o tada „spustelėkite“ stebuklingai gauna tinkamą saugyklos tipą, kad išspręstų jo problemą.

Kaip atrodo jūsų saugojimo infrastruktūra?

Kadangi turime labai įvairią ekosistemą ir daug skirtingų kūrėjų, negalime pasiūlyti vieno produkto. Turime objektų, failų ir blokų saugyklą. Tai skirtingi produktai ir mes siūlome įvairių tipų technologijas jiems pristatyti. Blokams naudojame SAN. Taip pat turime SDS, kuri suteikia dar vieną bloko saugojimo parinktį su skirtingais našumo reikalavimais. Failams naudojame NFS. SDS taip pat naudojamas objektų saugojimui. Bloko ir objekto dalys sudaro vidinį privatų debesį skaičiavimui ir saugojimui.

Taigi jūs nenaudojate viešosios debesies saugyklos?

Teisingai. Kai kurios kūrimo komandos turi leidimą naudoti viešuosius debesis. Tačiau dėl mūsų verslo pobūdžio mes norime labiau kontroliuoti dalykus, kurie palieka mūsų sienas. Taigi taip, mes turime savo debesis, kuriuos valdome. Tai mūsų valdomame duomenų centre esanti įranga.

Savo duomenų centruose pirmenybę teikiame kelių tiekėjų strategijai. Jie yra dideli tiekėjai, bet mes nepasakysime, kas tiksliai (Bloomberg laikosi politikos nepatvirtinti jokio tiekėjo, apytiksliai vertėjas).

Ar naudojate hiperkonverguotą infrastruktūrą, kad sukurtumėte savo privatų debesį?

Nr. Mes, Bloomberg, renkamės kryptį, kurioje nejudame link hiperkonvergencijos. Stengiamės atsieti skaičiavimus nuo saugyklos, kad galėtume juos pakeisti atskirai. Kryptis, kuria judame, ypač naudojant debesį, yra ta, kad galėtume atskirti šias dvi esybes. Ir viskas dėl to, kad kai kurie dalykai mūsų šalyje reikalauja intensyvių skaičiavimų, o kiti – saugojimo. Jei juos padidinsite tolygiai, prarasite išteklių, nesvarbu, pinigų ar vietos duomenų centruose, arba pirkdami nereikalingus pajėgumus. Štai kodėl mums patinka turėti bendrą sąsają tarp dviejų subjektų, tačiau jos būtų visiškai skirtingos sistemos ir valdomos skirtingų komandų.

Kokias kliūtis reikia įveikti norint sukurti privatų debesį?

Masto problema. Kaip ir daugumoje dalykų, velnias slypi detalėse. Kai pagalvoji, kaip šie dalykai veikia, kaip padaryti juos atsparesnius, kaip atlaikyti veiklos krūvį, kaip bendrauji su fizinio turto komandomis, viskas pasidaro šiek tiek įdomiau. Iššūkis yra rasti būdą, kaip viską paversti keičiamu ir palaikomu produktu, kurį norėtų naudoti mūsų programų kūrėjai, kad būtų galima praturtinti funkcijų rinkinį ir išlikti pažangiausiame viešajame debesyje. Ir taip pat visa tai sujungti, kad jis toliau veiktų. Tai yra pagrindinė mūsų problema – dirbame visose verslo srityse, stengiamės patenkinti visus poreikius, tačiau neignoruodami kitų poreikių.

Ar manote, kad jums reikia naujausių AWS ir kitų viešųjų debesų funkcijų?

Smagiausias faktas apie S3 yra tai, kad gyvenimo lygis nuolat keičiasi, vis pridedamos naujos funkcijos. Tai tarsi naujas žaislas. Jei kas nors pamato naują funkciją naujame leidime, jie to nori. Ne visos AWS funkcijos pritaikomos mūsų aplinkoje, todėl svarbu ir įdomu sužinoti, kas padės kūrėjams ir kaip tai gauti viduje.

Kokią saugojimo įrangą naudojate?

Naudojame naujausią įrangą. Mūsų vidinis debesis yra visiškai pagrįstas NVMe Flash, todėl šios sistemos yra labai galingos. Tai šiek tiek palengvina mūsų gyvenimą, be to, tai puiki funkcija mūsų kūrėjams, nes jiems nereikia jaudintis dėl saugyklos našumo.

Kam naudojate objektų saugojimą?

Mes turime 6000 kūrėjų, dirbančių infrastruktūros srityje, jų nevienija nė vienas naudojimo atvejis. Bet kokį variantą, kurį galite pagalvoti, tikriausiai turime objektų saugykloje. Kai kurios komandos jį naudoja šaltam archyvų saugojimui, kai kurios duomenims perduoti, o kitos naudoja operacijų programoms. Visiems šiems naudojimo atvejams reikalingi skirtingi SLA lygiai, todėl, kaip matote, turime skirtingus srauto tipus, įvairių mūsų infrastruktūros vartotojų poreikius. Tai nėra vienalytis naudojimo atvejis, veikiantis bet kurioje mūsų saugykloje, todėl viskas akivaizdžiai sudėtingėja.

Kokį svarbų vaidmenį jums atlieka „Kubernetes“ ir konteineriai ir kaip tai paveikia saugojimą?

Siekiame saugyklos produktyvumo, kad sukurtume debesies pojūtį, kažko kaip paslauga pojūtį, kai kūrėjams yra mygtukas, leidžiantis paspartinti savo darbą ir pašalinti infrastruktūrą.

Redaktoriaus n.b.: 15 m. spalio 2020 d. bus paruošta Ceph vaizdo kursas. Išmoksite Ceph tinklo saugojimo technologiją, kurią galite naudoti savo projektuose, kad pagerintumėte atsparumą gedimams.

Turime tris komandas, pirmoji yra saugyklos API komanda. Jie sukuria programinę prieigą, galinius taškus ir iš anksto nustatytas darbo eigas programų kūrimo klientams „Bloomberg“. Tai pilno krūvos žiniatinklio kūrėjų komanda, kuri naudoja node.js, python, atvirojo kodo technologijas, tokias kaip Apache Airflow, todėl studijuoja konteinerizavimą ir virtualizavimą.

Taip pat turime dvi technines komandas, kurios iš tikrųjų perkelia bitus ir baitus. Jie yra labiau susiję su įranga. Turime daug įrangos, o šios komandos nenaudoja virtualizacijos ir konteinerių.

Stengiamės neatsilikti nuo to, kas vyksta pramonėje, studijuojame Kubernetes CSI tvarkykles, taip pat glaudžiai bendradarbiaujame su Kubernetes diegiančia komanda Bloomberg, kad įvertintume, ar galime užtikrinti, kad Kubernetes saugykla veiktų nuosekliai su turimomis technologijomis. tai veikia. Naudojame SDS, kad palaikytume „Kubernetes“, prijungtą prie nuolatinės saugyklos. Sėkmingai sukūrėme šią technologiją ir tęsiasi diskusijos tarp dviejų komandų, kaip galėtume padaryti ją prieinamą visiems kitiems „Bloomberg“. Mes parodėme, kad tai visiškai įmanoma.

Kokią kitą atvirojo kodo programinę įrangą naudojate, ypač saugojimui?

Naudojame Apache Airflow, HAProxy, kad apribotume programų srautą. Taip pat naudojame Ceph, SDS platformą. Su juo galite turėti vieną komandų sistemą, tačiau klientams suteikti kelias sąsajas. Viena iš virtualizacijos platformų veikia „OpenStack“ – su šia komanda glaudžiai bendradarbiaujame. Turime atvirojo kodo virtualizacijos platformą, kurioje saugojimui naudojama atvirojo kodo SDS platforma. Tai juokinga.

Kokias saugojimo technologijas svarstote per ateinančius dvejus ar trejus metus?

Mes visada ieškome kitų įdomių naujų dalykų, vykstančių saugojimo pramonėje. Tai yra mūsų darbo dalis, o ne „čia jūsų SAN, tvarkyk čia, o štai jūsų NFS, tvarkyk ten“. Stengiamės bendrauti su savo klientais, t.y. mūsų programų kūrėjai. Dirbame kartu, kad suprastume, kokias problemas jie bando išspręsti ir kaip tai paveiks mūsų išorinius Bloomberg klientus – bankus ir kitus, kurie naudojasi mūsų programine įranga. Ir tada grįžtame į duomenų saugojimo pasaulį, kad rastume galimybių padėti jiems pasiekti savo tikslą. Kaip galime padėti jiems rasti tinkamą saugojimo technologiją, atitinkančią jų SLA arba ką jie bando daryti? Kadangi turime tiek daug inžinierių, kurie daro šaunius dalykus, niekada nepasidaro nuobodu.

Šiuo metu ieškome būdų, kaip pagerinti SDS, kuris galėtų veikti bendrosios paskirties serveriuose, našumą. Taigi mes dirbame su NVMe per TCP, tai labai įdomi ir šauni iniciatyva, viena iš daugelio. Taip pat bendradarbiaujame su pagrindiniais pramonės žmonėmis ir kai kuriais esamais tiekėjais, kad išsiaiškintume, ką jie siūlo ir kokie bus realūs rezultatai, ar galime pradėti jį naudoti gamyboje įmonėje. Tai atveria naujus horizontus, kurie anksčiau nebuvo prieinami.

Šiek tiek pagalbos PS

PS Jei galiu, noriu priminti, kad rugsėjo 28-30 d intensyvi Kubernetes bazė, tiems, kurie nepažįsta Kubernetes, bet nori su ja susipažinti ir pradėti dirbti.

Šaltinis: www.habr.com

Добавить комментарий