Projekti yekuendesa nzira inoshandiswa muSlack

Kuunza kuburitswa kweprojekiti kutsva mukugadzira kunoda kuenzanisa pakati pekumhanya kwekutumira uye kuvimbika kwemhinduro. Slack kukosha kukurumidza iterations, pfupi mhinduro kutenderera, uye nekukurumidza mhinduro kune zvikumbiro zvemushandisi. Pamusoro pezvo, kambani iyi ine mazana evagadziri vezvirongwa vanovavarira kuita hunyanzvi sezvinobvira.

Projekti yekuendesa nzira inoshandiswa muSlack

Vanyori vezvinyorwa, dudziro yatiri kuburitsa nhasi, vanoti kambani inovavarira kutevedzera tsika dzakadaro uye panguva imwechete inokura inofanira kugara ichivandudza hurongwa hwayo hwekuendesa chirongwa. Iyo kambani inofanirwa kuisa mari mukujeka uye kuvimbika kwemaitiro ebasa, ichiita izvi kuti ive nechokwadi chekuti maitiro aya anoenderana nehukuru hweprojekiti. Pano tichataura nezve mafambiro ebasa akagadzirwa muSlack, uye nezve dzimwe sarudzo dzakatungamira kambani kushandisa chirongwa chekuendesa chirongwa chiripo nhasi.

Maitiro ekufambiswa kweprojekiti anoshanda sei nhasi

Imwe neimwe PR (kudhonza chikumbiro) muSlack inofanirwa kuve pasi pekuongororwa kwekodhi uye inofanirwa kupasa bvunzo dzese. Chete mushure mekunge mamiriro aya asangana ndipo anogona kubatanidza kodhi yake mubazi guru reprojekiti. Nekudaro, iyi kodhi inoiswa chete panguva dzebhizinesi, nguva yekuNorth America. Nekuda kweizvozvo, nekuda kwekuti vashandi vedu vari kumabasa avo, isu takagadzirira zvakakwana kugadzirisa chero matambudziko asingatarisirwe.

Zuva nezuva tinoita nezve 12 yakarongwa deployments. Panguva yekutumirwa kwega kwega, mugadziri anosarudzwa semutungamiri wekutumira ane basa rekuita kuti chivakwa chitsva chigadziriswe. Iyi inhanho yakawanda-nhanho inoita kuti gungano riunzwe mukugadzirwa zvakanaka. Nekuda kwemaitiro aya, tinogona kuona zvikanganiso zvisati zvakanganisa vashandisi vedu vese. Kana pane zvikanganiso zvakawanda, kutumirwa kwegungano kunogona kupetwa kumashure. Kana imwe nyaya yakawanikwa mushure mekusunungurwa, kugadzirisa kunogona kusunungurwa nyore kwairi.

Projekti yekuendesa nzira inoshandiswa muSlack
Interface yeCheckpoint system, iyo inoshandiswa muSlack kuendesa mapurojekiti

Iyo nzira yekuendesa kuburitswa kutsva kune kugadzirwa inogona kufungidzirwa seine nhanho ina.

▍1. Kugadzira bazi rekuburitsa

Kuburitswa kwega kwega kunotanga nebazi idzva rekuburitsa, poindi munhoroondo yedu yeGit. Izvi zvinokutendera kuti ugovane ma tag kune kuburitswa uye inopa nzvimbo kwaunogona kugadzirisa mhenyu mabhegi anowanikwa mugadziriro yekugadzirira kuburitswa kuburitswa kugadzirwa.

▍2. Kuiswa munzvimbo yekutandarira

Danho rinotevera ndere kuendesa gungano pamaseva ekuisa uye kumhanyisa otomatiki bvunzo yekuita kwese kweprojekiti (yeutsi bvunzo). Nzvimbo yekugadzira inzvimbo yekugadzira isingagamuchire traffic yekunze. Munzvimbo ino, tinoita mamwe manyorerwo ekuongorora. Izvi zvinotipa humwe chivimbo chekuti purojekiti yakagadziridzwa inoshanda nemazvo. Otomatiki bvunzo chete haina kukwana kupa iyi nhanho yekuvimba.

▍3. Kuiswa mune dogfood uye canary nharaunda

Kuendeswa kune kugadzira kunotanga nedogfood nharaunda, inomiririrwa neseti yevagamuchiri vanoshandira mukati meSlack nzvimbo dzekushandira. Sezvo isu tiri vashandi veSlack vanoshingaira, kutora nzira iyi kwakatibatsira kubata akawanda mabhugi pakutanga kwekutumirwa. Mushure mekunge taita chokwadi chekuti basa rekutanga rehurongwa harina kuputswa, gungano rinoiswa munzvimbo ye canary. Inomiririra masisitimu anoverengera angangoita 2% yemotokari yekugadzira.

▍4. Kusunungurwa zvishoma nezvishoma kune kugadzirwa

Kana zviratidzo zvekuona zvekuburitswa kutsva zvikave zvakagadzikana, uye kana mushure mekuendesa purojekiti munzvimbo yecanary isu tisina kuwana zvichemo, tinoramba tichiendesa zvishoma nezvishoma maseva ekugadzira kune kuburitswa kutsva. Nzira yekuendesa inoparadzaniswa mumatanho anotevera: 10%, 25%, 50%, 75% uye 100%. Nekuda kweizvozvo, isu tinokwanisa kutamisa zvishoma nezvishoma traffic yekugadzira kune kuburitswa kutsva kweiyo system. Panguva imwecheteyo, isu tine nguva yekuferefeta mamiriro ezvinhu kana paine anomalies akaonekwa.

▍ Zvakadini kana chimwe chinhu chisina kumira zvakanaka panguva yekuendesa?

Kuita shanduko kune kodhi inogara iri njodzi. Asi isu tinotarisana nekutenda uku nekuda kwekuvapo kwe "vatungamiri vekuendesa" vakanyatsodzidziswa vanotungamira maitiro ekuunza kuburitswa kutsva mukugadzirwa, kutarisa zviratidzo zvekutarisa uye kuronga basa revagadziri vechirongwa kuburitsa kodhi.

Muchiitiko chekuti chimwe chinhu chinenge chatadza, tinoedza kuona dambudziko nekukurumidza sezvinobvira. Isu tinoongorora dambudziko, tsvaga iyo PR iri kukonzeresa zvikanganiso, toidzosera kumashure, tinyatsoiongorora, uye kugadzira chivakwa chitsva. Ichokwadi, dzimwe nguva dambudziko rinoenda risingaoneki kusvikira purojekiti yapinda mukugadzirwa. Mumamiriro ezvinhu akadaro, chinhu chinonyanya kukosha ndechekudzorera basa. Naizvozvo, tisati tatanga kuferefeta dambudziko, isu tinobva tangodzokera kumashure kwekutanga kushanda kuvaka.

Zvivharo zvekuvaka zveDeployment System

Ngatitarisei matekinoroji ari pasi pechirongwa chedu chekuendesa purojekiti.

▍ Kutumirwa kwekukurumidza

Mafambiro ebasa anotsanangurwa pamusoro anogona kuratidzika, mukutarisa, zvakati pachena. Asi hurongwa hwedu hwekutumirwa hahuna kuita seizvi pakarepo.

Iyo kambani payaive idiki, yedu yese application yaigona kumhanya pa10 Amazon EC2 zviitiko. Kuendesa purojekiti mumamiriro ezvinhu aya kwaireva kushandisa rsync kukurumidza kuwiriranisa maseva ese. Kare, kodhi nyowani yaingova nhanho imwe chete kubva pakugadzirwa, inomiririrwa nemamiriro ekunze. Magungano akagadzirwa uye akaedzwa munzvimbo yakadai, achibva aenda akananga kukugadzira. Zvakanga zviri nyore kwazvo kunzwisisa hurongwa hwakadaro; yakabvumira chero mugadziri kuti atumire kodhi yaakange anyora chero nguva.

Asi sezvo huwandu hwevatengi vedu hwakakura, saka kukura kwezvivakwa zvinodiwa kutsigira chirongwa. Nenguva isipi, tichipiwa kukura kunoramba kuripo kwehurongwa, modhi yedu yekuendesa, yakavakirwa pakusundira kodhi nyowani kumaseva, yakanga isisaite basa rayo. Sezvineiwo, kuwedzera imwe neimwe sevha itsva kwaireva kuwedzera nguva inodiwa kuti upedze kutumira. Kunyangwe mazano anobva pakushandiswa kwakafanana kwe rsync ane zvimwe zvinogumira.

Takapedzisira tagadzirisa dambudziko iri nekuenda kune zvachose parallel deployment system, iyo yakagadzirwa zvakasiyana kubva kune yekare. Sezvineiwo, ikozvino isu hatina kutumira kodhi kumaseva tichishandisa script yekuyananisa. Iye zvino sevha yega yega yakarodha yakazvimiririra iyo gungano nyowani, ichiziva kuti yaida kuzviita nekutarisa iyo Consul kiyi shanduko. Masevha akazadza kodhi inofanana. Izvi zvakatibvumira kuchengetedza kukurumidza kwekufambisa kunyange munzvimbo yekugara kwehurongwa hwekukura.

Projekti yekuendesa nzira inoshandiswa muSlack
1. Masevha ekugadzira anotarisisa kiyi yeConsul. 2. Makiyi anochinja, izvi zvinoudza maseva kuti anofanirwa kutanga kutora kodhi nyowani. 3. Masevha anodhawunirodha tarball mafaera ane application code

▍Atomic deployments

Imwe mhinduro yakatibatsira kusvika kune akawanda-tier deployment system yaive atomic deployment.

Usati washandisa atomic deployments, kutumirwa kwega kwega kunogona kukonzera kuwanda kwemameseji ekukanganisa. Icho chokwadi ndechekuti maitiro ekukopa mafaera matsva kumaseva ekugadzira aive asiri atomu. Izvi zvakakonzera hwindo renguva pfupi apo iyo kodhi yakadana mabasa matsva yaivepo mabasa pachawo asati avepo. Kodhi yakadai payakadanwa, zvaiita kuti kukanganisa kwemukati kudzoserwe. Izvi zvakazviratidza muzvikumbiro zvakundikana zveAPI uye nemapeji ewebhu akaputsika.

Chikwata chakashanda padambudziko iri chakarigadzirisa nekuunza pfungwa ye "zvinopisa" uye "inotonhora" madhairekitori. Iyo kodhi mune inopisa dhairekitori ine basa rekugadzirisa traffic yekugadzira. Uye mune "inotonhora" madhairekitori, iyo kodhi, nepo sisitimu iri kushanda, iri kungogadzirirwa kushandiswa. Panguva yekuendesa, kodhi nyowani inokopwa kune isina kushandiswa inotonhora dhairekitori. Zvadaro, kana pasina maitiro anoshanda pane sevha, pakarepo dhairekitori switch inoitwa.

Projekti yekuendesa nzira inoshandiswa muSlack
1. Kuburitsa kodhi yekushandisa mudhairekitori "inotonhora". 2. Kushandura sisitimu kune "inotonhora" dhairekitori, inova "inopisa" (atomic operation)

Migumisiro: kuchinja kwekusimbisa kune kuvimbika

Muna 2018, chirongwa chakakura kusvika pachiyero zvekuti kukurumidza kutumirwa kwakatanga kukuvadza kugadzikana kwechigadzirwa. Isu takanga tine advanced deployment system umo takaisa nguva yakawanda nesimba. Chataifanira kuita kuvaka patsva nekuvandudza nzira dzedu dzekutumira. Isu takakura kuita kambani hombe, iyo budiriro yakashandiswa pasi rese kuronga kusinga vhiringike kutaurirana uye kugadzirisa matambudziko akakosha. Naizvozvo, kuvimbika kwakava chinangwa chetariro yedu.

Taifanira kuita kuti maitiro ekutumira matsva eSlack achengetedzeke. Izvi zvakatitungamirira kuti tivandudze hurongwa hwedu hwekutumira. Sezvineiwo, takakurukura iyi yakagadziridzwa system iri pamusoro. Mukatikati mehurongwa, isu tinoenderera mberi nekushandisa nekukurumidza uye atomic deployment tekinoroji. Maitiro ekutumirwa achinja. Sisitimu yedu nyowani yakagadzirirwa kuendesa zvishoma nezvishoma kodhi nyowani pamatanho akasiyana, munzvimbo dzakasiyana. Isu ikozvino tinoshandisa emberi maturusi ekutsigira uye masisitimu ekutarisa maturusi kupfuura kare. Izvi zvinotipa kugona kubata nekugadzirisa zvikanganiso nguva refu vasati vawana mukana wekusvika kumushandisi wekupedzisira.

Asi isu hatisi kuzogumira ipapo. Isu tiri kugara tichinatsiridza sisitimu iyi, tichishandisa mamwe maturusi epamusoro ekubatsira uye maturusi ekushanda otomatiki.

Vanodiwa vaverengi! Maitiro ekuendesa kuburitswa kweprojekiti kunoshanda sei kwaunoshanda?

Projekti yekuendesa nzira inoshandiswa muSlack

Source: www.habr.com

Voeg