Tim dhukungan panyimpenan Bloomberg gumantung ing sumber terbuka lan SDS

Tim dhukungan panyimpenan Bloomberg gumantung ing sumber terbuka lan SDS

TL; DR: Tim Teknik Panyimpenan Bloomberg nggawe panyimpenan awan kanggo panggunaan internal sing ora ngganggu infrastruktur lan bisa nahan beban volatilitas dagang sajrone pandemi.

Mattew Leonard, nalika ngomong babagan pakaryane minangka manajer teknis ing tim Teknik Panyimpanan Bloomberg, asring nggunakake tembung "nantang" lan "nyenengake." Tantangan kasebut muncul saka ruang lingkup panyimpenan sing akeh, saka susunan SAN basis NVMe paling anyar nganti panyimpenan sing ditetepake piranti lunak sumber terbuka ing DevOps. Iki ngendi "kesenangan" diwiwiti (ndeleng avatarku ing Habré, kira-kira. penerjemah).

Leonard lan tim 25 kolega ngawasi luwih saka 100 petabyte kapasitas lan awan internal kanggo 6000 engineers ngembangaken aplikasi kanggo Terminal Bloomberg, teknologi sing digawe Michael Bloomberg milyarder. Tim ngrancang, mbangun lan njaga sistem panyimpenan kanggo Teknik Bloomberg.

Kaya profesi IT liyane, 2020 minangka taun sing ora biasa kanggo anggota tim Teknik Panyimpanan amarga COVID-19 meksa dheweke kerja adoh. Leonard ujar manawa pandemi kasebut mengaruhi "tim sing rajutan" kanthi sosial amarga interaksi langsung diilangi, nanging staf wis adaptasi kanthi cepet kanggo kerja ing omah ing laptop lan konferensi video.

Sing nggumunake, aku pengin ujar manawa iki ora nggawe kahanan luwih elek. Ana wektu adaptasi sing cendhak - ora kabeh wong siap kerja saka omah. Sawise seminggu utawa rong minggu kabeh wong ngerti iki. Kita bisa nemokake cara supaya awake dhewe sibuk, tuku lan nganyarke peralatan, lan nambah biaya kanggo ndhukung perusahaan sajrone wektu kasebut. Kita kudu kreatif, nanging ora lara

Tantangan paling gedhe bisa uga wis ana sadurunge puncak COVID-19. Iki amarga perdagangan pasar sing molah malih amarga kuwatir babagan pengaruh pandemi ing ekonomi global. Volume data sing mili menyang terminal Bloomberg saka pasar modal global meh tikel kaping pindho, nganti 240 milyar informasi ing sawetara dina ing pungkasan Maret. Iki minangka tes serius kanggo sistem panyimpenan.

Yen sampeyan langsung tikel kaping pindho syarat panyimpenan sajrone sedina, mula nggawe masalah sing menarik. Kita bisa ngatasi iki lan mesthekake yen tim pangembangan aplikasi diwenehi papan lan kinerja sing dibutuhake. Umume iki ana hubungane karo cara kita mikir babagan sistem panyimpenan. Dina iki kita ora nggawe apa-apa. Kita ora ngomong, "Kita nggunakake ABC, supaya kita bakal mbangun infrastruktur kanggo ABC." Kita nindakake apa sing diarani "penganggaran data" karo tim kanggo ngramal panggunaan, nganalisa tren panggunaan lan kinerja, lan uga ndeleng keamanan. Jinis perencanaan, pamikiran, lan tekun amarga metodis iki ngidini kita tumindak drastis ing lonjakan tanpa kringet. Mesthi wae aku gugup, nanging aku rumangsa kepenak ana ing papanku.

Leonard bubar ngomong karo SearchStorage kanthi rinci babagan ngatur panyimpenan kanggo bisnis sing didorong data. Dheweke ngrembug babagan apa sing bakal ditindakake kanggo nawakake solusi panyimpenan maya pribadi, kanthi kemampuan kanggo nyedhiyakake fitur AWS kanggo pangguna nalika nyimpen data apa wae ing pusat data Bloomberg.

Yen ora ana pandemi maneh, apa kangelan para insinyur Bloomberg nalika ngatur panyimpenan?

Kita duwe akeh kabutuhan, kita mung ambruk ing arah sing beda. Dadi, kita kudu nyedhiyakake macem-macem jinis produk ing tingkat SLA sing beda-beda kanggo mbantu pangembang aplikasi fokus ing tugase tinimbang kuwatir babagan panyimpenan kasebut.

Lan strategi apa sing sampeyan tindakake kanggo iki?

Bagéyan saka apa sing kita nyoba kanggo nambah kinerja panyimpenan. Coba model AWS ing ngendi insinyur pangembangan mlebu, menet tombol, banjur "klik" kanthi ajaib entuk jinis panyimpenan sing tepat kanggo ngatasi masalah kasebut.

Kaya apa infrastruktur panyimpenan sampeyan?

Amarga kita duwe ekosistem sing maneka warna lan akeh pangembang, kita ora bisa menehi produk siji. Kita duwe panyimpenan obyek, file lan blok. Iki minangka produk sing beda-beda lan kita nawakake macem-macem jinis teknologi kanggo ngirim. Kanggo blok kita nggunakake SAN. Kita uga duwe SDS, sing nyedhiyakake pilihan panyimpenan blok liyane kanthi macem-macem syarat kinerja. Kanggo file kita nggunakake NFS. SDS uga digunakake kanggo panyimpenan obyek. Bagian blok lan obyek mbentuk awan pribadi internal kanggo komputasi lan panyimpenan.

Dadi sampeyan ora nggunakake panyimpenan awan umum?

Bener. Sawetara tim pangembangan duwe idin kanggo nggunakake awan umum. Nanging amarga sifat bisnis kita, kita luwih seneng ngontrol barang-barang sing ninggalake tembok kita. Dadi ya, kita duwe awan dhewe sing dikontrol. Iki minangka peralatan sing ana ing pusat data sing dikelola.

Ing pusat data, kita luwih seneng strategi multi-vendor. Dheweke minangka pemasok gedhe, nanging kita ora bakal ujar sapa sing tepat (kabijakan Bloomberg ora nyetujoni supplier apa wae, kira-kira. penerjemah).

Apa sampeyan nggunakake infrastruktur hyperconverged kanggo mbangun awan pribadi?

Ora. Kita ing Bloomberg milih arah sing ora pindhah menyang hiperkonvergensi. Kita nyoba ngilangi komputasi saka panyimpenan supaya bisa skala kanthi mandiri. Arah sing kita tindakake, utamane karo awan, yaiku supaya kita bisa misahake rong entitas kasebut. Lan kabeh amarga sawetara perkara ing negara kita mbutuhake petungan sing intensif, dene liyane mbutuhake panyimpenan. Yen sampeyan ngukur kanthi rata, sampeyan bakal kelangan sumber daya, ora preduli dhuwit, utawa papan ing pusat data, utawa kanthi tuku kapasitas sing ora dibutuhake. Pramila kita seneng duwe antarmuka umum ing antarane rong entitas kasebut, nanging duwe sistem sing beda lan dikelola dening tim sing beda.

Rintangan apa sing kudu diatasi kanggo nggawe awan pribadi?

Masalah skala. Kaya umume, setan ana ing rincian. Yen sampeyan mikir babagan cara kerjane, carane nggawe dheweke tahan banting, cara nangani beban operasional, kepiye komunikasi karo tim aset fisik, mula dadi menarik. Tantangan kasebut yaiku golek cara kanggo nggawe kabeh produk sing bisa diukur lan bisa didhukung sing pengin digunakake dening pangembang aplikasi, supaya bisa nambah set fitur nalika tetep ana ing sisih ndhuwur apa sing ditindakake awan umum. Lan uga kanggo nggabungake kabeh supaya terus bisa. Iki minangka masalah utama - kita kerja ing kabeh area bisnis, nyoba nyukupi kabeh kabutuhan, nanging ora nglirwakake kabutuhan liyane.

Apa sampeyan butuh fitur paling anyar sing kasedhiya ing AWS lan awan umum liyane?

Kasunyatan sing paling nyenengake babagan S3 yaiku standar urip saya ganti, fitur-fitur anyar tansah ditambahake. Kaya dolanan anyar. Yen ana sing ndeleng fitur anyar ing rilis anyar, dheweke pengin. Ora kabeh fitur AWS bisa ditrapake ing lingkungan kita, mula penting lan menarik kanggo ngerti apa sing bakal mbantu para pangembang lan carane entuk ing omah.

Apa piranti panyimpenan sing sampeyan gunakake?

Kita nggunakake peralatan paling anyar. Awan internal kita adhedhasar NVMe Flash, sing ndadekake sistem kasebut kuat banget. Iku ndadekake urip kita sethitik luwih gampang, lan iku uga fitur becik kanggo pangembang amarga padha ora perlu sumelang ing bab kinerja panyimpenan.

Apa sampeyan nggunakake panyimpenan obyek?

Kita duwe 6000 pangembang sing nggarap infrastruktur, ora digabung karo kasus panggunaan. Sembarang pilihan sampeyan bisa mikir, kita mbokmenawa duwe ing panyimpenan obyek. Sawetara tim digunakake kanggo panyimpenan arsip sing adhem, sawetara kanggo transfer data, lan liya-liyane sing digunakake kanggo aplikasi transaksional. Kabeh kasus panggunaan iki mbutuhake tingkat SLA sing beda-beda, supaya sampeyan bisa ndeleng, kita duwe macem-macem jinis lalu lintas, kabeh jinis kabutuhan kanggo pangguna sing beda saka infrastruktur kita. Iki dudu kasus panggunaan homogen sing ana ing ndhuwur panyimpenan, sing jelas nggawe kahanan luwih rumit.

Sepira gedhene peran Kubernetes lan kontaner kanggo sampeyan, lan kepiye pengaruhe panyimpenan?

Kita nyurung produktivitas panyimpenan kanggo nggawe rasa awan, rasa soko-minangka-layanan, sing ana tombol kanggo pangembang kanggo nyepetake kerajinan lan mbusak infrastruktur ing dalan.

Editor n.b.: 15 Oktober 2020 bakal siap Kursus video Ceph. Sampeyan bakal sinau teknologi panyimpenan jaringan Ceph kanggo digunakake ing proyek sampeyan kanggo nambah toleransi kesalahan.

Kita duwe telung tim, sing pertama yaiku tim API panyimpenan. Dheweke nggawe akses terprogram, titik pungkasan, lan alur kerja sing wis ditemtokake kanggo klien pangembangan aplikasi ing Bloomberg. Iki minangka tim pangembang web tumpukan lengkap, padha nggunakake node.js, python, teknologi open source, kayata Apache Airflow, supaya padha sinau containerization lan virtualisasi.

Kita uga duwe rong tim teknis sing bener mindhah bit lan bita. Padha luwih langsung related kanggo peralatan. Kita duwe akeh peralatan, lan tim kasebut ora nggunakake virtualisasi lan wadhah.

Kita nyoba nglacak apa sing kedadeyan ing industri, nyinaoni driver Kubernetes CSI, lan uga kerja sama karo tim sing ngetrapake Kubernetes ing Bloomberg kanggo netepake apa kita bisa nggawe panyimpenan Kubernetes kanthi konsisten karo teknologi sing kita duwe, lan kita duwe. iku dianggo. Kita nggunakake SDS kanggo ndhukung Kubernetes sing disambungake menyang panyimpenan sing terus-terusan. Kita wis sukses ngembangake teknologi iki, lan diskusi terus ing antarane rong tim babagan carane nggawe iki kasedhiya kanggo kabeh wong ing Bloomberg. Kita wis nuduhake manawa iki bisa ditindakake.

Apa piranti lunak open source liyane sing sampeyan gunakake, utamane kanggo panyimpenan?

Kita nggunakake Apache Airflow, HAProxy kanggo mbatesi lalu lintas aplikasi. Kita uga nggunakake Ceph, platform kanggo SDS. Kanthi, sampeyan bisa duwe siji sistem kanggo printah, nanging nyedhiyani sawetara antarmuka kanggo klien. Salah sawijining platform virtualisasi mbukak ing OpenStack - kita kerja bareng karo tim iki. Kita duwe platform virtualisasi open source sing nggunakake platform SDS open source kanggo panyimpenan. Iku lucu.

Apa teknologi panyimpenan sing sampeyan pikirake sajrone rong nganti telung taun sabanjure?

Kita mesthi nggoleki prekara-prekara anyar liyane sing kedadeyan ing industri panyimpenan. Iki minangka bagean saka karya kita, dudu "kene SAN sampeyan, atur ing kene, lan iki NFS sampeyan, atur ing kana." Kita nyoba kanggo komunikasi karo klien kita, i.e. dening pangembang aplikasi kita. Kita kerja bareng kanggo mangerteni masalah apa sing arep dirampungake lan kepiye pengaruhe marang klien Bloomberg eksternal - bank lan liya-liyane sing nggunakake piranti lunak kita. Banjur kita bali menyang jagad panyimpenan data kanggo golek kesempatan kanggo mbantu nggayuh tujuane. Kepiye carane bisa mbantu dheweke nemokake teknologi panyimpenan sing cocog karo SLA utawa apa sing ditindakake? Amarga akeh insinyur sing nindakake perkara sing apik, mula ora bakal bosen.

Saiki kita nggoleki cara kanggo nambah kinerja kanggo SDS sing bisa digunakake ing server tujuan umum. Dadi, kita nggarap NVMe liwat TCP, iki minangka inisiatif sing menarik lan keren, salah siji saka akeh. Kita uga nggarap wong-wong penting ing industri lan sawetara supplier sing wis ana kanggo ngerteni apa sing ditawakake lan apa kinerja nyata, apa kita bisa miwiti nggunakake ing produksi ing perusahaan. Iki mbukak cakrawala anyar sing sadurunge ora bisa diakses.

A bantuan sethitik ing PS

PS Yen bisa, aku pengin ngelingake sampeyan yen tanggal 28-30 September bakal dianakake Pangkalan Kubernetes intensif, kanggo sing ora ngerti Kubernetes, nanging pengin njaluk kenalan karo lan miwiti nggarap.

Source: www.habr.com

Tuku hosting sing dipercaya kanggo situs kanthi proteksi DDoS, server VPS VDS 🔥 Tuku hosting situs web sing bisa dipercaya nganggo proteksi DDoS, server VPS VDS | ProHoster