Ngesonto eledlule ngiye engqungqutheleni ye-DUMP IT (https://dump-ekb.ru/) eYekaterinburg futhi ngifuna ukukutshela ukuthi yini okwaxoxwa ngayo esigabeni se-Backend ne-Devops, nokuthi izingqungquthela ze-IT zesifunda zikufanele yini ukunakwa.
Nikolay Sverchkov kusukela Evil Martians mayelana Serverless
Bekuyini kodwa?
Sekukonke, ingqungquthela yayinezigaba ezingu-8: I-Backend, Frontend, Mobile, Testing kanye ne-QA, i-Devops, i-Design, iSayensi kanye Nokuphatha.
Amahholo amakhulu kunawo wonke aseSayensi Nokuphathwa)) Kubantu abangu-350 ngalinye. I-Backend ne-Frondend ayimancane kakhulu. Igumbi le-Devops belilincane kunawo wonke, kodwa liyasebenza.
Ngilalele imibiko esigabeni se-Devops ne-Backend futhi ngakhuluma kancane nezikhulumi. Ngithanda ukukhuluma ngezihloko ezixoxwayo futhi ngibuyekeze lezi zigaba engqungqutheleni.
Abamele i-SKB-Kontur, DataArt, Evil Martians, Ekaterinburg web studio Flag, Miro (RealTimeBoard) bakhulume esigabeni se-Devops ne-Backend. Izihloko ezimbozwe nge-CI/CD, ukusebenza ngezinsizakalo zolayini, ukugawulwa kwemithi; Izihloko ezingenaseva nokusebenza ne-PostgreSQL ku-Go zahlanganiswa kahle.
Kwakukhona nemibiko ka-Avito, i-Tinkoff, i-Yandex, i-Jetstyle, i-Megafon, i-Ak Bars Bank, kodwa angizange ngibe nesikhathi sokuya kubo ngokomzimba (ukuqoshwa kwevidiyo namaslayidi emibiko akukakatholakali, bathembisa ukuyithumela phakathi kwamaviki angu-2. ku-dump-ekb.ru).
Isigaba se-Devops
Okwakumangaza ukuthi ingxenye yayiqhutshelwa ehholo elincane, elinezihlalo ezingaba ngu-50. Abantu bebeme ngisho emaphaseji :) Ngizokutshela ngemibiko engikwazile ukuyilalela.
I-Elastic enesisindo se-petabyte
Isigaba saqala ngombiko ka-Vladimir Lil (SKB-Kontur) mayelana ne-Elasticsearch e-Kontur. Zine-Elastic enkulu futhi elayishiwe (~800 TB yedatha, ~1.3 petabytes kucatshangelwa ukuphindaphindeka). I-Elasticsearch yazo zonke izinsiza ze-Kontur iyodwa, iqukethe amaqoqo angu-2 (amaseva angu-7 no-9), futhi ibaluleke kangangokuthi u-Kontur unonjiniyela okhethekile we-Elasticsearch (empeleni, u-Vladimir ngokwakhe).
UVladimir uphinde wabelana ngemicabango yakhe ngezinzuzo ze-Elasticsearch kanye nezinkinga ezizilethayo.
Zuza:
- Wonke amalogi asendaweni eyodwa, ukufinyelela kalula kuwo
- Ukugcina izingodo unyaka futhi siwahlaziye kalula
- Isivinini esikhulu sokusebenza nezingodo
- Ukubukwa kwedatha okupholile ngaphandle kwebhokisi
Izinkinga:
- umthengisi womlayezo kumele ube nawo (ku-Kontur indima yakhe idlalwa u-Kafka)
- izici zokusebenza ne-Elasticsearch Curator (yakha umthwalo ophezulu ngezikhathi ezithile ovela emisebenzini evamile ku-Curator)
- akukho ukugunyazwa okwakhelwe ngaphakathi (kuphela imali ehlukene, enkulu impela, noma njengama-plugin omthombo ovulekile wamazinga ahlukahlukene okulungela ukukhiqizwa)
Kube nezibuyekezo ezinhle kuphela mayelana ne-Open Distro ye-Elasticsearch :) Inkinga efanayo yokugunyazwa ixazululiwe lapho.
Ivelaphi i-petabyte?Amanodi abo ahlanganisa amaseva ane-12*8 Tb SATA + 2*2 Tb SSD. Isitoreji esibandayo ku-SATA, i-SSD yenqolobane eshisayo kuphela (isitoreji esishisayo).
7+9 amaseva, (7 + 9) * 12 * 8 = 1536 Tb.
Ingxenye yesikhala ibekwe eceleni, ibekelwe ukuphinda isetshenziswe, njll.
Amalogi asuka kuzicelo ezingaba ngu-90 athunyelwa ku-Elasticsearch, okuhlanganisa zonke izinsiza zokubika ze-Kontur, Elba, njll.
Izici zokuthuthukiswa ku-Serverless
Okulandelayo umbiko kaRuslan Serkin ovela ku-DataArt mayelana ne-Serverless.
U-Ruslan ukhulume ngokuthi yikuphi ukuthuthukiswa kwendlela ye-Serverless ngokuvamile, nokuthi yiziphi izici zayo.
I-Serverless iyindlela yokuthuthukisa lapho abathuthukisi bengathinti ingqalasizinda nganoma iyiphi indlela. Isibonelo - i-AWS Lambda Serverless, i-Kubeless.io (I-Serverless ngaphakathi kwe-Kubernetes), i-Google Cloud Functions.
Uhlelo lokusebenza oluhle lwe-Serverless lumane luwumsebenzi othumela isicelo kumhlinzeki we-Serverless nge-API Gateway ekhethekile. I-microservice ekahle, kuyilapho i-AWS Lambda iphinde isekele inani elikhulu lezilimi zokuhlela zesimanje. Izindleko zokugcina kanye nokuphakelwa kwengqalasizinda ziba ziro uma kwenzeka kubahlinzeki bamafu, ukusekela izinhlelo zokusebenza ezincane nakho kuzobiza kakhulu (AWS Lambda - $0.2 / 1 million izicelo ezilula).
Ukukala kwesistimu enjalo cishe kukuhle - umhlinzeki wamafu uzinakekela ngokwakhe, i-Kubeless ikala ngokuzenzakalelayo ngaphakathi kweqoqo le-Kubernetes.
Kukhona ukungalungi:
- ukwakha izinhlelo zokusebenza ezinkulu kuba nzima kakhulu
- kunobunzima bokwenza iphrofayela yezinhlelo zokusebenza (amalogi kuphela atholakalayo kuwe, kodwa hhayi ukwenza iphrofayela ngendlela evamile)
- akukho ukwenza inguqulo
Uma ngikhuluma iqiniso, ngezwa nge-Serverless eminyakeni embalwa edlule, kodwa yonke le minyaka kwakungacacile kimi ukuthi ngingayisebenzisa kanjani ngendlela efanele. Ngemuva kombiko kaRuslan, ukuqonda kwavela, futhi ngemva kombiko kaNikolai Sverchkov (Ama-Martians amabi) kusukela esigabeni se-Backend, kwahlanganiswa. Akubanga yize ukuthi ngiye engqungqutheleni :)
I-CI eyabampofu, noma ingabe kufanelekile ukubhala i-CI yakho yesitudiyo sewebhu?
UMikhail Radionov, inhloko ye-Flag web studio yaseYekaterinburg, ukhulume nge-CI/CD ezibhala yona.
Isitudiyo sakhe sisuke ku- “manual CI/CD” (ngena kuseva nge-SSH, yenza i-git pull, phinda izikhathi eziyi-100 ngosuku) ku-Jenkins nakwithuluzi elizibhalele wena elikuvumela ukuthi uqaphe ikhodi futhi wenze ukukhishwa okubizwa ngokuthi i-Pullkins. .
Kungani uJenkins engasebenzi? Ayizange inikeze ukuguquguquka okwanele ngokuzenzakalelayo futhi bekunzima kakhulu ukwenza ngendlela oyifisayo.
"Ifulegi" lithuthukiswa ku-Laravel (uhlaka lwe-PHP). Lapho ethuthukisa iseva ye-CI/CD, uMikhail nozakwabo basebenzisa izindlela ezakhelwe ngaphakathi zikaLaravel ezibizwa ngokuthi iTelescope ne-Envoy. Umphumela uba iseva eku-PHP (sicela uqaphele) ecubungula izicelo ze-webhook ezingenayo, ingakha i-frontend ne-backend, ithumele kumaseva ahlukene, futhi ibike ku-Slack.
Bese-ke, ukuze bakwazi ukwenza ukusebenzisa okuluhlaza okwesibhakabhaka/okuluhlaza futhi babe nezilungiselelo ezifanayo ezindaweni ze-dev-stage-prod, bashintshele ku-Docker. Izinzuzo zahlala zifana, amathuba okwenza imvelo ngendlela efanayo kanye nokuthunyelwa okungenamthungo angeziwe, futhi isidingo sokufunda i-Docker ukusebenza nayo ngendlela efanele sengeziwe.
Sinciphise kanjani inani lokubuyiselwa emuva kokukhishwa kweseva ngo-99%
Umbiko wokugcina esigabeni se-Devops ubuvela ku-Viktor Eremchenko, unjiniyela we-Lead devops kwa-Miro.com (owayekade eyi-RealTimeBoard).
I-RealTimeBoard, umkhiqizo ohamba phambili weqembu le-Miro, isuselwe kuhlelo lokusebenza lwe-Java ye-monolithic. Ukuyiqoqa, ukuyihlola nokuyisebenzisa ngaphandle kwesikhathi sokuphumula kuwumsebenzi onzima. Kulesi simo, kubalulekile ukukhipha inguqulo enjalo yekhodi ukuze kungadingeki ukuthi iphindiselwe emuva (kuyi-monolith esindayo).
Endleleni yokwakha uhlelo olukuvumela ukuba wenze lokhu, uMiro udlule endleleni ehlanganisa ukusebenza ekwakhiweni kwezakhiwo, amathuluzi asetshenziswa (i-Atlassian Bamboo, Ansible, njll), nokusebenza ngesakhiwo samaqembu (manje asenawo. iqembu elizinikele le-Devops + amaqembu amaningi ahlukene eScrum kusukela konjiniyela bamaphrofayili ahlukene).
Indlela yaba nzima futhi inameva, futhi uVictor wahlanganyela ubuhlungu obunqwabelene kanye nethemba elingapheli lapho.
Uwine incwadi yokubuza imibuzo
Isigaba esingemuva
Ngikwazile ukuya emibikweni emi-2 - evela ku-Nikolay Sverchkov (i-Evil Martians), futhi mayelana ne-Serverless, kanye ne-Grigory Koshelev (inkampani yaseKontur) mayelana ne-telemetry.
Ayinasiphakeli kubantu nje
Uma u-Ruslan Sirkin ekhuluma ngokuthi i-Serverless iyini, u-Nikolay wabonisa izinhlelo zokusebenza ezilula esebenzisa i-Serverless, futhi wakhuluma ngemininingwane ethinta izindleko nesivinini sezinhlelo zokusebenza ku-AWS Lambda.
Imininingwane ethokozisayo: ingxenye encane ekhokhelwe ingu-128 Mb wememori kanye ne-100 ms CPU, kubiza u-$0,000000208. Ngaphezu kwalokho, izicelo ezinjalo eziyisigidi esisodwa ngenyanga zimahhala.
Eminye yemisebenzi ka-Nikolai ivamise ukweqa umkhawulo ongu-100 ms (uhlelo lokusebenza oluyinhloko lwalubhalwe nge-Ruby), ngakho ukuyibhala kabusha kokuthi Go kunikeze ukonga okuhle kakhulu.
I-Vostok Hercules - yenza i-telemetry ibe yinhle futhi!
Umbiko wakamuva wesigaba se-Backend esivela ku-Grigory Koshelev (inkampani yaseKontur) mayelana ne-telemetry. I-Telemetry isho amalogi, amamethrikhi, ukulandelelwa kohlelo lokusebenza.
Ngale njongo, i-Contour isebenzisa amathuluzi azibhalele wona athunyelwe ku-Github. Ithuluzi elivela embikweni - u-Hercules,
Umbiko kaVladimir Lila esigabeni se-Devops uxoxe ngokugcina nokucubungula izingodo ku-Elasticsearch, kodwa kusenomsebenzi wokuletha izingodo ezivela ezinkulungwaneni eziningi zamadivayisi nezinhlelo zokusebenza, namathuluzi afana neVostok Hercules azixazulula.
Umjikelezo wawulandela indlela eyaziwa abaningi - ukusuka ku-RabbitMQ kuya e-Apache Kafka, kodwa akuyona yonke into elula)) Kwadingeka bengeze i-Zookeeper, i-Cassandra ne-Graphite kumjikelezo. Ngeke ngidalule ngokugcwele ulwazi olukulo mbiko (hhayi iphrofayela yami), uma unentshisekelo, ungalinda ama-slides namavidiyo kuwebhusayithi yenkomfa.
Iqhathaniseka kanjani nezinye izingqungquthela?
Angikwazi ukuyiqhathanisa nezingqungquthela eMoscow naseSt. Petersburg, ngingayiqhathanisa nezinye izenzakalo zase-Urals kanye ne-404fest eSamara.
I-DAMP ibanjwe ezigabeni ezingu-8, leli irekhodi lezingqungquthela zase-Ural. Izigaba zeSayensi Nokuphatha ezinkulu kakhulu, lokhu nakho akujwayelekile. Izilaleli eYekaterinburg zihleleke kahle - idolobha lineminyango emikhulu yentuthuko yeYandex, Kontur, Tinkoff, futhi lokhu kushiya uphawu lwalo emibikweni.
Elinye iphuzu elithakazelisayo ukuthi izinkampani eziningi zinezikhulumi ezingu-3-4 engqungqutheleni ngesikhathi esisodwa (lokhu kwakunjalo ngoKontur, Evil Martians, Tinkoff). Abaningi babo bebengabaxhasi, kodwa imibiko iyafana neminye, lena akuyona imibiko yokukhangisa.
Ukuhamba noma ukungahambi? Uma uhlala e-Urals noma eduze, unethuba futhi unesithakazelo ezihlokweni - yebo, kunjalo. Uma ucabanga ngohambo olude, ngingabheka izihloko zemibiko nemibiko yevidiyo yeminyaka edlule
Enye inzuzo yezingqungquthela ezifundeni, njengomthetho, ukuthi kulula ukuxhumana nesikhulumi ngemuva kwemibiko; bambalwa abafake izicelo zokuxhumana okunjalo.
Siyabonga ku-Dump nase-Ekaterinburg! )
Source: www.habr.com