Huduma za watoto yatima: upande wa chini wa (micro) usanifu wa huduma

Mkurugenzi wa Uendeshaji wa tovuti ya Banki.ru Andrey Nikolsky alizungumza katika mkutano wa mwaka jana DevOpsDays Moscow kuhusu huduma za watoto yatima: jinsi ya kumtambua yatima katika miundombinu, kwa nini huduma za watoto yatima ni mbaya, nini cha kufanya nazo, na nini cha kufanya ikiwa hakuna kinachosaidia.

Chini ya kata ni toleo la maandishi la ripoti.


Habari wenzangu! Jina langu ni Andrey, ninaongoza shughuli katika Banki.ru.

Tuna huduma kubwa, hizi ni huduma za monolithic, kuna huduma kwa maana ya classical zaidi, na kuna ndogo sana. Katika istilahi yangu ya wafanyikazi-wakulima, nasema kwamba ikiwa huduma ni rahisi na ndogo, basi ni ndogo, na ikiwa si rahisi sana na ndogo, basi ni huduma tu.

Faida za huduma

Nitapitia faida za huduma haraka.

Huduma za watoto yatima: upande wa chini wa (micro) usanifu wa huduma

Ya kwanza ni kuongeza. Unaweza haraka kufanya kitu kwenye huduma na kuanza uzalishaji. Umepokea trafiki, umeunda huduma. Una trafiki zaidi, umeiunda na kuishi nayo. Hii ni bonus nzuri, na, kwa kanuni, tulipoanza, ilionekana kuwa jambo muhimu zaidi kwetu, kwa nini tunafanya haya yote.

Huduma za watoto yatima: upande wa chini wa (micro) usanifu wa huduma

Pili, maendeleo ya pekee, unapokuwa na timu kadhaa za maendeleo, watengenezaji kadhaa tofauti katika kila timu, na kila timu huendeleza huduma yake.

Na timu kuna nuance. Watengenezaji ni tofauti. Na kuna, kwa mfano, watu wa theluji. Niliona hii kwanza na Maxim Dorofeev. Wakati mwingine watu wa theluji huwa kwenye timu fulani na sio kwa wengine. Hii inafanya huduma tofauti zinazotumiwa kote kwenye kampuni kutofautiana kidogo.

Huduma za watoto yatima: upande wa chini wa (micro) usanifu wa huduma

Angalia picha: huyu ni msanidi mzuri, ana mikono mikubwa, anaweza kufanya mengi. Tatizo kuu ni wapi mikono hii inatoka.

Huduma za watoto yatima: upande wa chini wa (micro) usanifu wa huduma

Huduma hufanya iwezekane kutumia lugha tofauti za programu ambazo zinafaa zaidi kwa kazi tofauti. Huduma zingine ziko kwenye Go, zingine ziko Erlang, zingine ziko Ruby, kuna kitu kwenye PHP, kuna kitu kwenye Python. Kwa ujumla, unaweza kupanua sana. Kuna nuances hapa pia.

Huduma za watoto yatima: upande wa chini wa (micro) usanifu wa huduma

Usanifu unaolenga huduma kimsingi unahusu devops. Hiyo ni, ikiwa huna otomatiki, hakuna mchakato wa kupeleka, ikiwa utaisanidi kwa mikono, usanidi wako unaweza kubadilika kutoka kwa mfano wa huduma hadi mfano, na lazima uende huko kufanya kitu, basi uko kuzimu.

Kwa mfano, una huduma 20 na unahitaji kupeleka kwa mkono, una consoles 20, na wakati huo huo bonyeza "ingiza" kama ninja. Sio nzuri sana.

Ikiwa una huduma baada ya kupima (ikiwa kuna kupima, bila shaka), na bado unahitaji kuimaliza na faili ili ifanye kazi katika uzalishaji, pia nina habari mbaya kwako.

Ikiwa unategemea huduma maalum za Amazon na kufanya kazi nchini Urusi, basi miezi miwili iliyopita pia ulikuwa na "Kila kitu karibu kinawaka, niko sawa, kila kitu kiko sawa."

Huduma za watoto yatima: upande wa chini wa (micro) usanifu wa huduma

Tunatumia Ansible kusambaza uwekaji kiotomatiki, Kikaragosi cha muunganisho, Mwanzi kuelekeza utumaji kiotomatiki, na Ushawishi kwa namna fulani kuelezea yote.

Sitakaa juu ya hili kwa undani, kwa sababu ripoti inahusu zaidi mazoea ya mwingiliano, na sio juu ya utekelezaji wa kiufundi.

Huduma za watoto yatima: upande wa chini wa (micro) usanifu wa huduma

Kwa mfano, tumekuwa na matatizo ambapo Puppet kwenye seva inafanya kazi na Ruby 2, lakini baadhi ya programu imeandikwa kwa Ruby 1.8, na haifanyi kazi pamoja. Kitu kitaenda vibaya hapo. Na wakati unahitaji kuendesha matoleo mengi ya Ruby kwenye mashine moja, kwa kawaida huanza kuwa na matatizo.

Kwa mfano, tunampa kila msanidi jukwaa ambalo kuna takriban kila kitu tulicho nacho, huduma zote zinazoweza kuendelezwa, ili awe na mazingira ya pekee, aweze kuivunja na kuijenga anavyotaka.

Inatokea kwamba unahitaji kifurushi maalum kilichojumuishwa na usaidizi wa kitu hapo. Ni ngumu sana. Nilisikiliza ripoti ambapo picha ya Docker ina uzito wa GB 45. Katika Linux, bila shaka, ni rahisi zaidi, kila kitu ni kidogo huko, lakini bado, hakutakuwa na nafasi ya kutosha.

Kweli, kuna utegemezi unaopingana, wakati kipande kimoja cha mradi kinategemea maktaba ya toleo moja, kipande kingine cha mradi kinategemea toleo lingine, na maktaba hazijasanikishwa pamoja.

Huduma za watoto yatima: upande wa chini wa (micro) usanifu wa huduma

Tuna tovuti na huduma katika PHP 5.6, tuna aibu kwao, lakini tunaweza kufanya nini? Hii ni tovuti yetu moja. Kuna tovuti na huduma kwenye PHP 7, kuna zaidi yao, hatuna aibu nao. Na kila msanidi ana msingi wake ambapo anaona kwa furaha.

Ikiwa utaandika katika kampuni katika lugha moja, basi mashine tatu za mtandaoni kwa kila msanidi zinasikika kuwa za kawaida. Ikiwa una lugha tofauti za programu, basi hali inakuwa mbaya zaidi.

Huduma za watoto yatima: upande wa chini wa (micro) usanifu wa huduma

Una tovuti na huduma kwenye hili, kwenye hili, kisha tovuti nyingine ya Go, tovuti moja ya Ruby, na Redis nyingine upande. Matokeo yake, yote haya yanageuka kuwa shamba kubwa kwa msaada, na wakati wote baadhi yake yanaweza kuvunja.

Huduma za watoto yatima: upande wa chini wa (micro) usanifu wa huduma

Kwa hivyo, tulibadilisha faida za lugha ya programu na matumizi ya mifumo tofauti, kwani mifumo ya PHP ni tofauti kabisa, ina uwezo tofauti, jamii tofauti, na usaidizi tofauti. Na unaweza kuandika huduma ili tayari una kitu tayari kwa ajili yake.

Kila huduma ina timu yake mwenyewe

Huduma za watoto yatima: upande wa chini wa (micro) usanifu wa huduma

Faida yetu kuu, ambayo imeangaza zaidi ya miaka kadhaa, ni kwamba kila huduma ina timu yake mwenyewe. Hii ni rahisi kwa mradi mkubwa, unaweza kuokoa muda kwenye nyaraka, wasimamizi wanajua mradi wao vizuri.

Unaweza kuwasilisha kazi kwa urahisi kutoka kwa usaidizi. Kwa mfano, huduma ya bima ilivunjika. Na mara moja timu inayohusika na bima inakwenda kurekebisha.

Vipengele vipya vinaundwa kwa haraka, kwa sababu unapokuwa na huduma moja ya atomiki, unaweza kupenyeza kitu ndani yake haraka.

Na unapovunja huduma yako, na hii itatokea bila kuepukika, haukuathiri huduma za watu wengine, na watengenezaji kutoka kwa timu zingine hawakuji mbio kwako na kusema: "Ay-ay, usifanye hivyo."

Huduma za watoto yatima: upande wa chini wa (micro) usanifu wa huduma

Kama kawaida, kuna nuances. Tuna timu imara, wasimamizi wamepigiliwa misumari kwenye timu. Kuna nyaraka wazi, wasimamizi hufuatilia kwa karibu kila kitu. Kila timu iliyo na meneja ina huduma kadhaa, na kuna hatua maalum ya uwezo.

Ikiwa timu zinaelea (pia wakati mwingine tunatumia hii), kuna njia nzuri inayoitwa "ramani ya nyota".

Huduma za watoto yatima: upande wa chini wa (micro) usanifu wa huduma

Una orodha ya huduma na watu. Nyota inamaanisha kuwa mtu huyo ni mtaalam katika huduma hii, kitabu kinamaanisha kuwa mtu huyo anasoma huduma hii. Kazi ya mtu ni kubadilisha kijitabu kwa nyota. Na ikiwa hakuna kitu kilichoandikwa mbele ya huduma, basi matatizo huanza, ambayo nitazungumzia zaidi.

Huduma za watoto yatima zinaonekanaje?

Huduma za watoto yatima: upande wa chini wa (micro) usanifu wa huduma

Tatizo la kwanza, njia ya kwanza ya kupata huduma ya yatima katika miundombinu yako ni kuwafukuza watu kazi. Je, kuna mtu yeyote amewahi kuwa na muda wa kutimiza biashara kabla ya kazi kutathminiwa? Wakati mwingine hutokea kwamba tarehe za mwisho ni ngumu na hakuna wakati wa kutosha wa nyaraka. "Tunahitaji kukabidhi huduma kwa uzalishaji, kisha tutaiongeza."

Ikiwa timu ni ndogo, hutokea kwamba kuna msanidi mmoja ambaye anaandika kila kitu, wengine wako kwenye mbawa. "Niliandika usanifu wa kimsingi, wacha tuongeze miingiliano." Kisha wakati fulani meneja, kwa mfano, anaondoka. Na katika kipindi hiki, wakati meneja ameondoka na mpya bado hajateuliwa, watengenezaji wenyewe huamua wapi huduma inakwenda na nini kinatokea huko. Na kama tunavyojua (hebu turudi nyuma slaidi chache), katika baadhi ya timu kuna watu wa theluji, wakati mwingine timu inayoongoza. Kisha anaacha, na tunapata huduma ya yatima.

Huduma za watoto yatima: upande wa chini wa (micro) usanifu wa huduma

Wakati huo huo, kazi kutoka kwa usaidizi na kutoka kwa biashara hazipotei; huishia kwenye kumbukumbu. Ikiwa kulikuwa na makosa yoyote ya usanifu wakati wa maendeleo ya huduma, pia huishia kwenye backlog. Huduma inazidi kuzorota polepole.

Jinsi ya kutambua yatima?

Orodha hii inaelezea hali vizuri. Nani alijifunza chochote kuhusu miundombinu yao?

Huduma za watoto yatima: upande wa chini wa (micro) usanifu wa huduma

Kuhusu kazi zilizoandikwa: kuna huduma na, kwa ujumla, inafanya kazi, ina mwongozo wa kurasa mbili juu ya jinsi ya kufanya kazi nayo, lakini hakuna mtu anayejua jinsi inavyofanya kazi ndani.

Au, kwa mfano, kuna aina fulani ya kifupisho cha kiungo. Kwa mfano, kwa sasa tuna vifupisho vitatu vya viungo vinavyotumika kwa madhumuni tofauti katika huduma tofauti. Haya ni matokeo tu.

Huduma za watoto yatima: upande wa chini wa (micro) usanifu wa huduma

Sasa nitakuwa nahodha wa dhahiri. Nini kifanyike? Kwanza, tunahitaji kuhamisha huduma kwa meneja mwingine, timu nyingine. Ikiwa kiongozi wa timu yako bado hajaacha, basi katika timu hii nyingine, unapoelewa kuwa huduma ni kama yatima, unahitaji kujumuisha mtu ambaye anaelewa angalau kitu kuihusu.

Jambo kuu: lazima uwe na taratibu za uhamisho zilizoandikwa katika damu. Kwa upande wetu, mimi hufuatilia hii kwa kawaida, kwa sababu ninahitaji yote kufanya kazi. Wasimamizi wanahitaji kuwasilishwa kwa haraka, na kile kitakachofanyika baadaye sio muhimu sana kwao.

Huduma za watoto yatima: upande wa chini wa (micro) usanifu wa huduma

Njia inayofuata ya kufanya yatima ni "Tutaifanya kwa kutumia rasilimali za nje, itakuwa haraka, kisha tutaikabidhi kwa timu." Ni wazi kwamba kila mtu ana mipango fulani katika timu, zamu. Mara nyingi mteja wa biashara anafikiri kwamba mtoaji atafanya kitu sawa na idara ya kiufundi ambayo kampuni ina. Ingawa wahamasishaji wao ni tofauti. Kuna masuluhisho ya ajabu ya kiteknolojia na suluhu za ajabu za algorithmic katika utaftaji wa nje.

Huduma za watoto yatima: upande wa chini wa (micro) usanifu wa huduma

Kwa mfano, tulikuwa na huduma iliyokuwa na Sphinx katika sehemu mbalimbali zisizotarajiwa. Nitakuambia baadaye nilichopaswa kufanya.

Wauzaji wa nje wana mifumo ya kujiandikia. Hii ni PHP tupu iliyo na nakala-kubandika kutoka kwa mradi uliopita, ambapo unaweza kupata kila aina ya vitu. Hati za upelekaji ni shida kubwa wakati unahitaji kutumia hati ngumu za Bash kubadilisha mistari kadhaa kwenye faili fulani, na hati hizi za upelekaji zinaitwa na hati ya tatu. Matokeo yake, unabadilisha mfumo wa kupeleka, chagua kitu kingine, hop, lakini huduma yako haifanyi kazi. Kwa sababu huko ilikuwa ni lazima kuweka viungo 8 zaidi kati ya folda tofauti. Au hutokea kwamba rekodi elfu hufanya kazi, lakini laki moja haifanyi kazi tena.

Nitaendelea nahodha. Kukubali huduma ya nje ni utaratibu wa lazima. Je, kuna mtu yeyote amewahi kuwa na huduma ya nje kufika na kutokubalika popote? Hii sio maarufu, kwa kweli, kama huduma ya watoto yatima, lakini bado.

Huduma za watoto yatima: upande wa chini wa (micro) usanifu wa huduma

Huduma inahitaji kuchunguzwa, huduma inahitaji kupitiwa, nywila zinahitajika kubadilishwa. Tulikuwa na kesi walipotupa huduma, kuna paneli ya msimamizi "ikiwa ingia == 'admin' && password == 'admin'...", imeandikwa moja kwa moja kwenye msimbo. Tunakaa na kufikiria, na watu wanaandika hii mnamo 2018?

Kujaribu uwezo wa kuhifadhi pia ni jambo la lazima. Unahitaji kuangalia nini kitatokea kwenye rekodi elfu mia, hata kabla ya kuweka huduma hii katika uzalishaji mahali fulani.

Huduma za watoto yatima: upande wa chini wa (micro) usanifu wa huduma

Haipaswi kuwa na aibu katika kutuma huduma kwa uboreshaji. Unaposema: "Hatutakubali huduma hii, tuna kazi 20, zifanye, basi tutakubali," hii ni kawaida. Dhamiri yako isiumizwe na ukweli kwamba unaanzisha meneja au kwamba biashara inapoteza pesa. Biashara basi itatumia zaidi.

Tulikuwa na kesi wakati tuliamua kutoa mradi wa majaribio.

Huduma za watoto yatima: upande wa chini wa (micro) usanifu wa huduma

Ilitolewa kwa wakati, na hiki kilikuwa kigezo pekee cha ubora. Ndiyo sababu tulifanya mradi mwingine wa majaribio, ambao haukuwa hata majaribio tena. Huduma hizi zilikubaliwa, na kupitia njia za kiutawala walisema, hapa kuna nambari yako, hii hapa timu, hapa ni meneja wako. Huduma hizo tayari zimeanza kupata faida. Wakati huo huo, kwa kweli, bado ni yatima, hakuna mtu anayeelewa jinsi wanavyofanya kazi, na wasimamizi wanajitahidi kukataa kazi zao.

Huduma za watoto yatima: upande wa chini wa (micro) usanifu wa huduma

Kuna dhana nyingine nzuri - maendeleo ya msituni. Wakati idara fulani, kwa kawaida idara ya uuzaji, inataka kujaribu nadharia tete na kuagiza huduma nzima kuuzwa nje. Trafiki inaanza kuingia ndani, wanafunga hati, wanasaini hati na mkandarasi, wanaanza kazi na kusema: "Jamani, tuna huduma hapa, tayari ina trafiki, inatuletea pesa, tuikubali." Tulikuwa kama, "Oppa, inawezaje kuwa hivyo."

Huduma za watoto yatima: upande wa chini wa (micro) usanifu wa huduma

Na njia nyingine ya kupata huduma ya yatima: wakati timu fulani inajikuta imejaa ghafla, usimamizi unasema: "Wacha tuhamishe huduma ya timu hii kwa timu nyingine, ina mzigo mdogo." Na kisha tutaihamisha kwa timu ya tatu na kubadilisha meneja. Na mwisho tuna yatima tena.

Je, watoto yatima wana shida gani?

Huduma za watoto yatima: upande wa chini wa (micro) usanifu wa huduma

Nani hajui, hii ni meli ya vita ya Wasa iliyolelewa nchini Uswidi, maarufu kwa ukweli kwamba ilizama dakika 5 baada ya kuzinduliwa. Na Mfalme wa Uswidi, kwa njia, hakumteua mtu yeyote kwa hili. Ilijengwa na vizazi viwili vya wahandisi ambao hawakujua jinsi ya kuunda meli kama hizo. Athari ya asili.

Meli inaweza kuzama, kwa njia, kwa njia mbaya zaidi, kwa mfano, wakati mfalme alikuwa tayari amepanda juu yake mahali fulani katika dhoruba. Na hivyo, alizama mara moja, kulingana na Agile ni vizuri kushindwa mapema.

Ikiwa tunashindwa mapema, kwa kawaida hakuna matatizo. Kwa mfano, wakati wa kukubalika ilitumwa kwa marekebisho. Lakini ikiwa tunashindwa tayari katika uzalishaji, wakati pesa imewekeza, basi kunaweza kuwa na matatizo. Matokeo, kama yanavyoitwa katika biashara.

Kwa nini huduma za watoto yatima ni hatari:

  • Huduma inaweza kuvunjika ghafla.
  • Huduma inachukua muda mrefu kukarabati au haijarekebishwa kabisa.
  • Matatizo ya usalama.
  • Matatizo na maboresho na masasisho.
  • Ikiwa huduma muhimu itavunjika, sifa ya kampuni inateseka.

Nini cha kufanya na huduma za watoto yatima?

Huduma za watoto yatima: upande wa chini wa (micro) usanifu wa huduma

Nitarudia cha kufanya tena. Kwanza, lazima kuwe na nyaraka. Miaka 7 huko Banki.ru ilinifundisha kwamba wanaojaribu hawapaswi kuchukua neno la watengenezaji, na shughuli hazipaswi kuchukua neno la kila mtu. Tunahitaji kuangalia.

Huduma za watoto yatima: upande wa chini wa (micro) usanifu wa huduma

Pili, ni muhimu kuandika michoro ya mwingiliano, kwa sababu hutokea kwamba huduma ambazo hazijapokelewa vizuri zina vyenye utegemezi ambao hakuna mtu alisema. Kwa mfano, wasanidi programu walisakinisha huduma kwenye ufunguo wao kwa baadhi ya Yandex.Maps au Data. Umeishiwa na kikomo cha bure, kila kitu kimevunjika, na hujui kilichotokea hata kidogo. Reki zote kama hizo lazima zielezewe: huduma hutumia Data, SMS, kitu kingine.

Huduma za watoto yatima: upande wa chini wa (micro) usanifu wa huduma

Tatu, kufanya kazi na deni la kiufundi. Unapofanya aina fulani ya magongo au kukubali huduma na kusema kwamba kitu kinahitaji kufanywa, unahitaji kuhakikisha kwamba imefanywa. Kwa sababu basi inaweza kugeuka kuwa shimo ndogo sio ndogo sana, na utaanguka kwa njia hiyo.

Pamoja na kazi za usanifu, tulikuwa na hadithi kuhusu Sphinx. Moja ya huduma ilitumia Sphinx kuingiza orodha. Orodha tu ya paginated, lakini ilikuwa re-indexed kila usiku. Ilikusanywa kutoka kwa faharisi mbili: moja kubwa ilikuwa indexed kila usiku, na pia kulikuwa na index ndogo ambayo ilikuwa screwed kwa hilo. Kila siku, kukiwa na uwezekano wa 50% wa kulipuliwa au la, faharasa ilianguka wakati wa kukokotoa, na habari zetu ziliacha kusasishwa kwenye ukurasa mkuu. Mara ya kwanza ilichukua dakika 5 kwa index kuonyeshwa tena, kisha index ilikua, na wakati fulani ilianza kuchukua dakika 40 ili kurejesha tena. Tulipokata hili, tulipumua kwa utulivu, kwa sababu ilikuwa wazi kwamba muda kidogo zaidi ungepita na index yetu itaonyeshwa tena wakati wote. Hii itakuwa kutofaulu kwa portal yetu, hakuna habari kwa masaa nane - ndivyo hivyo, biashara imesimama.

Panga kufanya kazi na huduma ya watoto yatima

Huduma za watoto yatima: upande wa chini wa (micro) usanifu wa huduma

Kwa kweli, hii ni ngumu sana kufanya, kwa sababu devops ni juu ya mawasiliano. Unataka kuwa na uhusiano mzuri na wenzako, na unapopiga wenzako na wasimamizi juu ya kichwa na kanuni, wanaweza kuwa na hisia zinazopingana na watu hao wanaofanya hivi.

Mbali na pointi hizi zote, kuna jambo lingine muhimu: watu maalum wanapaswa kuwajibika kwa kila huduma maalum, kwa kila sehemu maalum ya utaratibu wa kupeleka. Wakati hakuna watu na inabidi kuvutia watu wengine kusoma suala hili zima, inakuwa ngumu.

Huduma za watoto yatima: upande wa chini wa (micro) usanifu wa huduma

Ikiwa haya yote hayakusaidia, na huduma yako ya yatima bado ni yatima, hakuna mtu anataka kuichukua, nyaraka hazijaandikwa, timu iliyoitwa katika huduma hii inakataa kufanya chochote, kuna njia rahisi - kufanya upya. kila kitu.

Hiyo ni, unachukua mahitaji ya huduma upya na kuandika huduma mpya, bora, kwenye jukwaa bora, bila ufumbuzi wa ajabu wa teknolojia. Na mnahamia humo kwa vita.

Huduma za watoto yatima: upande wa chini wa (micro) usanifu wa huduma

Tulipata hali tulipochukua huduma kwenye Yii 1 na tukagundua kuwa hatukuweza kuiendeleza zaidi, kwa sababu tulikosa wasanidi programu ambao wangeweza kuandika vyema kwenye Yii 1. Wasanidi programu wote huandika vyema kwenye Symfony XNUMX. Nini cha kufanya? Tulitenga muda, tukatenga timu, tukatenga meneja, tukaandika upya mradi na kubadilisha trafiki kuufikia.

Baada ya hayo, huduma ya zamani inaweza kufutwa. Huu ni utaratibu ninaoupenda, wakati unahitaji kuchukua na kusafisha huduma fulani kutoka kwa mfumo wa usimamizi wa usanidi na kisha upitie na uone kuwa magari yote katika uzalishaji yamezimwa, ili watengenezaji wasiwe na athari yoyote iliyobaki. Hifadhi inabaki katika Git.

Haya ndiyo yote niliyotaka kuzungumza, niko tayari kujadili, mada ni holivar, wengi wameogelea ndani yake.

Slaidi zilisema kuwa umeunganisha lugha. Mfano ni kubadilisha ukubwa wa picha. Je, ni muhimu kweli kuiwekea kikomo kwa lugha moja? Kwa sababu kurekebisha ukubwa wa picha katika PHP, vizuri, kunaweza kufanywa katika Golang.

Kwa kweli, ni hiari, kama mazoea yote. Pengine, katika baadhi ya matukio, hata haifai. Lakini unahitaji kuelewa kuwa ikiwa una idara ya ufundi katika kampuni ya watu 50, 45 kati yao ni wataalam wa PHP, wengine 3 ni devops ambao wanajua Python, Ansible, Puppet na kitu kama hicho, na ni mmoja tu kati yao anayeandika katika baadhi. aina ya lugha, baadhi ya huduma ya kubadilisha ukubwa wa picha ya Go, kisha inapoondoka, utaalamu huenda nayo. Na wakati huo huo, utahitaji kutafuta msanidi programu maalum wa soko ambaye anajua lugha hii, haswa ikiwa ni nadra. Hiyo ni, kutoka kwa mtazamo wa shirika, hii ni shida. Kutoka kwa mtazamo wa devops, hutahitaji tu kuunganisha seti ya vitabu vya kucheza vilivyotengenezwa tayari ambavyo unatumia kupeleka huduma, lakini utahitaji kuviandika tena.

Kwa sasa tunaunda huduma kwenye Node.js, na hili litakuwa jukwaa lililo karibu kwa kila msanidi programu aliye na lugha tofauti. Lakini tuliketi na kufikiri kwamba mchezo huo ulikuwa na thamani ya mshumaa. Hiyo ni, hili ni swali kwako kukaa na kufikiria.

Je, unafuatiliaje huduma zako? Je, unakusanya na kufuatilia vipi kumbukumbu?

Tunakusanya kumbukumbu katika Elasticsearch na kuziweka Kibana, na kulingana na ikiwa ni mazingira ya uzalishaji au majaribio, wakusanyaji tofauti hutumiwa huko. Mahali fulani Lumberjack, mahali pengine kitu kingine, sikumbuki. Na bado kuna baadhi ya maeneo katika huduma fulani ambapo sisi kufunga Telegraf na risasi mahali pengine tofauti.

Jinsi ya kuishi na Puppet na Ansible katika mazingira sawa?

Kwa kweli, sasa tuna mazingira mawili, moja ni Puppet, nyingine ni Ansible. Tunafanya kazi ya kuwachanganya. Ansible ni mfumo mzuri wa usanidi wa awali, Puppet ni mfumo mbaya wa usanidi wa awali kwa sababu inahitaji kazi ya mikono moja kwa moja kwenye jukwaa, na Puppet inahakikisha muunganisho wa usanidi. Hii ina maana kwamba jukwaa linajidumisha katika hali ya kusasishwa, na ili mashine iliyowezeshwa kusasishwa, unahitaji kuendesha vitabu vya kucheza juu yake kila wakati kwa masafa fulani. Hiyo ndiyo tofauti.

Je, unadumishaje utangamano? Je! una usanidi katika Ansible na Puppet?

Huu ni uchungu wetu mkubwa, tunadumisha utangamano na mikono yetu na kufikiria jinsi ya kuendelea kutoka kwa haya yote mahali pengine sasa. Inabadilika kuwa Puppet husambaza vifurushi na kudumisha baadhi ya viungo huko, na Ansible, kwa mfano, hutoa msimbo na kurekebisha usanidi wa hivi karibuni wa programu hapo.

Uwasilishaji ulikuwa juu ya matoleo tofauti ya Ruby. Suluhu gani?

Tulikutana na hii katika sehemu moja, na tunapaswa kuiweka katika vichwa vyetu wakati wote. Tulizima tu sehemu iliyokuwa kwenye Ruby ambayo haiendani na maombi na kuiweka tofauti.

Mkutano wa mwaka huu DevOpsDays Moscow itafanyika Desemba 7 huko Technopolis. Tunakubali maombi ya ripoti hadi tarehe 11 Novemba. Andika sisi kama ungependa kusema.

Usajili kwa washiriki umefunguliwa, jiunge nasi!

Chanzo: mapenzi.com

Kuongeza maoni