Jinsi ya kuhamia wingu kwa saa mbili shukrani kwa Kubernetes na automatisering

Jinsi ya kuhamia wingu kwa saa mbili shukrani kwa Kubernetes na automatisering

Kampuni ya URUS ilijaribu Kubernetes kwa aina tofauti: kupelekwa kwa kujitegemea kwenye chuma tupu, katika Google Cloud, na kisha kuhamisha jukwaa lake kwenye wingu la Mail.ru Cloud Solutions (MCS). Igor Shishkin anaelezea jinsi walivyochagua mtoaji mpya wa wingu na jinsi walivyoweza kuhamia kwake katika rekodi ya masaa mawili (t3 mbio), msimamizi mkuu wa mfumo huko URUS.

URUS inafanya nini?

Kuna njia nyingi za kuboresha ubora wa mazingira ya mijini, na mojawapo ni kuifanya kuwa rafiki wa mazingira. Hivi ndivyo kampuni ya URUS - Smart Digital Services inafanyia kazi. Hapa wanatekeleza ufumbuzi ambao husaidia makampuni ya biashara kufuatilia viashiria muhimu vya mazingira na kupunguza athari zao mbaya kwa mazingira. Sensorer hukusanya data kuhusu muundo wa hewa, kiwango cha kelele na vigezo vingine, na kisha kuzituma kwa jukwaa la umoja la URUS-Ekomon kwa uchambuzi na kutoa mapendekezo.

Jinsi URUS inavyofanya kazi kutoka ndani

Mteja wa kawaida wa URUS ni kampuni iliyoko au karibu na eneo la makazi. Hiki kinaweza kuwa kiwanda, bandari, bohari ya reli au kituo kingine chochote. Ikiwa mteja wetu tayari amepokea onyo, alipigwa faini kwa uchafuzi wa mazingira, au anataka kufanya kelele kidogo, kupunguza kiasi cha uzalishaji wa madhara, anakuja kwetu, na tayari tunampa suluhisho tayari kwa ufuatiliaji wa mazingira.

Jinsi ya kuhamia wingu kwa saa mbili shukrani kwa Kubernetes na automatisering
Grafu ya ufuatiliaji wa mkusanyiko wa H2S inaonyesha uzalishaji wa mara kwa mara wa usiku kutoka kwa mmea wa karibu

Vifaa tunavyotumia URUS vina vitambuzi kadhaa vinavyokusanya taarifa kuhusu maudhui ya gesi fulani, viwango vya kelele na data nyingine ili kutathmini hali ya mazingira. Idadi halisi ya sensorer daima imedhamiriwa na kazi maalum.

Jinsi ya kuhamia wingu kwa saa mbili shukrani kwa Kubernetes na automatisering
Kulingana na maalum ya vipimo, vifaa vilivyo na sensorer vinaweza kuwekwa kwenye kuta za majengo, miti na maeneo mengine ya kiholela. Kila kifaa kama hicho hukusanya maelezo, kuyakusanya na kuyatuma kwa lango la kupokea data. Huko tunahifadhi data kwa hifadhi ya muda mrefu na kuichakata mapema kwa uchanganuzi unaofuata. Mfano rahisi zaidi wa kile tunachopata kutokana na uchanganuzi ni faharasa ya ubora wa hewa, pia inajulikana kama AQI.

Sambamba, huduma zingine nyingi hufanya kazi kwenye jukwaa letu, lakini ni za asili ya huduma. Kwa mfano, huduma ya arifa hutuma arifa kwa wateja ikiwa kigezo chochote kinachofuatiliwa (kwa mfano, maudhui ya CO2) kinazidi thamani inayoruhusiwa.

Jinsi tunavyohifadhi data. Hadithi ya Kubernetes kwenye chuma tupu

Mradi wa ufuatiliaji wa mazingira wa URUS una maghala kadhaa ya data. Katika moja tunaweka data "mbichi" - tuliyopokea moja kwa moja kutoka kwa vifaa vyenyewe. Hifadhi hii ni mkanda wa "sumaku", kama kwenye kanda za zamani za kaseti, na historia ya viashiria vyote. Aina ya pili ya uhifadhi hutumiwa kwa data iliyochakatwa - data kutoka kwa vifaa, iliyoboreshwa na metadata kuhusu miunganisho kati ya vitambuzi na usomaji wa vifaa vyenyewe, uhusiano na mashirika, maeneo, n.k. Maelezo haya hukuruhusu kutathmini kwa nguvu jinsi kiashiria fulani kinavyo. ilibadilika kwa muda fulani. Tunatumia hifadhi ya data "mbichi", kati ya mambo mengine, kama hifadhi rudufu na kurejesha data iliyochakatwa, ikiwa hitaji kama hilo litatokea.

Tulipokuwa tunatafuta kutatua tatizo letu la kuhifadhi miaka kadhaa iliyopita, tulikuwa na chaguo mbili za mfumo: Kubernetes na OpenStack. Lakini kwa kuwa mwisho unaonekana kuwa mbaya sana (angalia tu usanifu wake ili kusadikishwa na hii), tulikaa Kubernetes. Hoja nyingine kwa niaba yake ilikuwa udhibiti rahisi wa programu, uwezo wa kukata kwa urahisi hata nodi za vifaa kulingana na rasilimali.

Sambamba na ujuzi wa Kubernetes yenyewe, pia tulisoma njia za kuhifadhi data, huku tukiweka hifadhi yetu yote katika Kubernetes kwenye maunzi yetu wenyewe, tulipokea utaalam bora. Kila kitu tulichokuwa tukiishi kwenye Kubernetes: uhifadhi wa hali ya juu, mfumo wa ufuatiliaji, CI/CD. Kubernetes imekuwa jukwaa la kila mmoja kwetu.

Lakini tulitaka kufanya kazi na Kubernetes kama huduma, na sio kujihusisha na usaidizi na maendeleo yake. Zaidi ya hayo, hatukupenda jinsi ilivyotugharimu kuitunza kwenye chuma tupu, na tulihitaji maendeleo kila mara! Kwa mfano, moja ya kazi za kwanza ilikuwa kuunganisha vidhibiti vya Kubernetes Ingress kwenye miundombinu ya mtandao ya shirika letu. Hili ni jukumu gumu, haswa ikizingatiwa kuwa wakati huo hakuna kitu kilikuwa tayari kwa usimamizi wa rasilimali za kiprogramu kama vile rekodi za DNS au ugawaji wa anwani za IP. Baadaye tulianza kujaribu kuhifadhi data ya nje. Hatukuwahi kuzunguka kutekeleza kidhibiti cha PVC, lakini hata hivyo ikawa wazi kuwa hii ilikuwa eneo kubwa la kazi ambalo lilihitaji wataalam waliojitolea.

Kubadilisha hadi Google Cloud Platform ni suluhisho la muda

Tuligundua kuwa hii haikuweza kuendelea, na tukahamisha data yetu kutoka kwa chuma tupu hadi kwenye Mfumo wa Wingu wa Google. Kwa kweli, wakati huo hapakuwa na chaguzi nyingi za kuvutia kwa kampuni ya Kirusi: badala ya Jukwaa la Wingu la Google, ni Amazon pekee inayotoa huduma kama hiyo, lakini bado tulitatua suluhisho kutoka kwa Google. Kisha ilionekana kwetu faida zaidi ya kiuchumi, karibu na Upstream, bila kutaja ukweli kwamba Google yenyewe ni aina ya PoC Kubernetes katika Uzalishaji.

Tatizo kuu la kwanza lilionekana kwenye upeo wa macho kadiri idadi ya wateja wetu inavyokua. Tulipokuwa na hitaji la kuhifadhi data ya kibinafsi, tulikabiliwa na chaguo: ama tufanye kazi na Google na kukiuka sheria za Urusi, au tunatafuta njia mbadala katika Shirikisho la Urusi. Chaguo, kwa ujumla, lilikuwa la kutabirika. πŸ™‚

Jinsi tulivyoona huduma bora ya wingu

Kufikia mwanzo wa utafutaji, tayari tulijua tunachotaka kupata kutoka kwa mtoa huduma wa wingu wa siku zijazo. Tulikuwa tunatafuta huduma gani:

  • Haraka na rahisi. Ili kwamba tunaweza kuongeza nodi mpya kwa haraka au kupeleka kitu wakati wowote.
  • Gharama nafuu. Tulikuwa na wasiwasi sana kuhusu suala la kifedha, kwa kuwa tulikuwa na rasilimali chache. Tayari tulijua kuwa tulitaka kufanya kazi na Kubernetes, na sasa kazi ilikuwa kupunguza gharama yake ili kuongeza au angalau kudumisha ufanisi wa kutumia suluhisho hili.
  • kiotomatiki. Tulipanga kufanya kazi na huduma kupitia API, bila wasimamizi na simu au hali ambapo tunahitaji kuinua nodi kadhaa katika hali ya dharura. Kwa kuwa michakato yetu mingi ni ya kiotomatiki, tulitarajia vivyo hivyo kutoka kwa huduma ya wingu.
  • Na seva katika Shirikisho la Urusi. Bila shaka, tulipanga kuzingatia sheria ya Kirusi na 152-FZ hiyo hiyo.

Wakati huo, kulikuwa na watoa huduma wachache wa Kubernetes aaS nchini Urusi, na wakati wa kuchagua mtoa huduma, ilikuwa muhimu kwetu si kuathiri vipaumbele vyetu. Timu ya Mail.ru Cloud Solutions, ambayo tulianza kufanya kazi nayo na bado tunashirikiana, ilitupatia huduma ya kiotomatiki kikamilifu, yenye usaidizi wa API na paneli ya kudhibiti inayojumuisha Horizon - kwayo tunaweza kuongeza idadi ya nodi kiholela.

Jinsi tulivyoweza kuhamia MCS baada ya saa mbili

Katika hatua hizo, makampuni mengi yanakabiliwa na matatizo na vikwazo, lakini kwa upande wetu hakukuwa na. Tulikuwa na bahati: kwa kuwa tayari tulikuwa tukifanyia kazi Kubernetes kabla ya uhamishaji kuanza, tulisahihisha faili tatu tu na kuzindua huduma zetu kwenye jukwaa jipya la wingu, MCS. Acha nikukumbushe kwamba kufikia wakati huo tulikuwa tumeacha chuma tupu na kuishi kwenye Jukwaa la Wingu la Google. Kwa hiyo, hatua yenyewe haikuchukua zaidi ya saa mbili, pamoja na muda kidogo zaidi (kama saa moja) ilitumiwa kunakili data kutoka kwa vifaa vyetu. Hapo zamani tulikuwa tayari tunatumia Spinnaker (huduma ya CD ya wingu nyingi kutoa Utoaji Unaoendelea). Pia tuliiongeza haraka kwenye nguzo mpya na tukaendelea kufanya kazi kama kawaida.

Shukrani kwa otomatiki ya michakato ya maendeleo na CI/CD, Kubernetes katika URUS inashughulikiwa na mtaalamu mmoja (na huyo ni mimi). Katika hatua fulani, msimamizi mwingine wa mfumo alifanya kazi nami, lakini ikawa kwamba tayari tumejiendesha kiotomatiki utaratibu wote kuu na kulikuwa na kazi zaidi na zaidi kwa upande wa bidhaa yetu kuu na ilikuwa na maana ya kuelekeza rasilimali kwa hili.

Tulipokea kile tulichotarajia kutoka kwa mtoaji wa huduma ya wingu, kwani tulianza ushirikiano bila udanganyifu. Ikiwa kulikuwa na matukio yoyote, yalikuwa ya kiufundi zaidi na yale ambayo yangeweza kuelezewa kwa urahisi na usafi wa kiasi wa huduma. Jambo kuu ni kwamba timu ya MCS huondoa haraka mapungufu na hujibu haraka maswali katika wajumbe.

Ikiwa nikilinganisha uzoefu wangu na Jukwaa la Wingu la Google, kwa upande wao sikujua hata kitufe cha maoni kilikuwa wapi, kwani hakukuwa na haja yake. Na ikiwa matatizo yoyote yalitokea, Google yenyewe ilituma arifa kwa upande mmoja. Lakini katika kesi ya MCS, nadhani faida kubwa ni kwamba wao ni karibu iwezekanavyo kwa wateja wa Kirusi - wote kijiografia na kiakili.

Jinsi tunavyoona kufanya kazi na mawingu katika siku zijazo

Sasa kazi yetu inaunganishwa kwa karibu na Kubernetes, na inafaa kabisa kutoka kwa mtazamo wa kazi za miundombinu. Kwa hivyo, hatuna mpango wa kuhama kutoka humo popote, ingawa tunatanguliza mazoea na huduma mpya kila wakati ili kurahisisha kazi za kawaida na kufanya kazi mpya kiotomatiki, kuongeza uthabiti na kutegemewa kwa huduma... Sasa tunazindua huduma ya Chaos Monkey (haswa. , tunatumia chaoskube, lakini hii haibadilishi dhana: ), ambayo iliundwa awali na Netflix. Chaos Monkey hufanya jambo moja rahisi: hufuta ganda la Kubernetes bila mpangilio kwa wakati nasibu. Hii ni muhimu ili huduma yetu iishi kama kawaida kulingana na idadi ya matukio n–1, kwa hivyo tunajizoeza kuwa tayari kwa matatizo yoyote.

Sasa naona matumizi ya suluhu za watu wengine - majukwaa yale yale ya wingu - kama jambo pekee linalofaa kwa makampuni ya vijana. Kwa kawaida, mwanzoni mwa safari yao, wana ukomo wa rasilimali, za kibinadamu na za kifedha, na kujenga na kudumisha kituo chao cha wingu au data ni ghali sana na ni kazi kubwa. Watoa huduma za wingu hukuruhusu kupunguza gharama hizi; unaweza kupata kutoka kwao rasilimali zinazohitajika kwa uendeshaji wa huduma hapa na sasa, na ulipe rasilimali hizi baada ya ukweli. Kuhusu kampuni ya URUS, tutabaki waaminifu kwa Kubernetes kwenye wingu kwa sasa. Lakini ni nani anayejua, tunaweza kulazimika kupanua kijiografia, au kutekeleza suluhisho kulingana na vifaa maalum. Au labda kiasi cha rasilimali zinazotumiwa kitahalalisha Kubernetes yako kwenye chuma-tupu, kama katika siku nzuri za zamani. πŸ™‚

Tulichojifunza kwa kufanya kazi na huduma za wingu

Tulianza kutumia Kubernetes kwenye chuma tupu, na hata huko ilikuwa nzuri kwa njia yake mwenyewe. Lakini nguvu zake zilifunuliwa haswa kama sehemu ya aaS kwenye wingu. Ukiweka lengo na kubinafsisha kila kitu iwezekanavyo, utaweza kuzuia kufuli kwa muuzaji na kusonga kati ya watoa huduma za wingu itachukua masaa kadhaa, na seli za neva zitabaki nasi. Tunaweza kushauri makampuni mengine: ikiwa ungependa kuzindua huduma yako (ya wingu), yenye rasilimali chache na kasi ya juu zaidi ya usanidi, anza sasa hivi kwa kukodisha rasilimali za wingu, na uunde kituo chako cha data baada ya Forbes kuandika kukuhusu.

Chanzo: mapenzi.com

Kuongeza maoni