Usa ka rollout nga istorya nga nakaapekto sa tanan

Usa ka rollout nga istorya nga nakaapekto sa tanan
Mga Kaaway sa Realidad pinaagi sa 12f-2

Sa katapusan sa Abril, samtang ang mga White Walker naglikos sa Winterfell, usa ka butang nga mas makapaikag nga nahitabo kanamo; naghimo kami usa ka dili kasagaran nga paglansad. Sa prinsipyo, kanunay kaming naglunsad og mga bag-ong feature ngadto sa produksyon (sama sa uban). Apan lahi kini. Ang sukod niini mao nga ang bisan unsang potensyal nga mga sayup nga mahimo namon makaapekto sa tanan namon nga mga serbisyo ug tiggamit. Ingon sa usa ka resulta, gilukot namo ang tanan sumala sa plano, sulod sa giplano ug gipahibalo nga downtime nga panahon, nga walay mga sangputanan sa pagbaligya. Ang artikulo bahin sa kung giunsa namon kini nakab-ot ug kung giunsa kini mahimo ni bisan kinsa sa balay.

Dili na nako ihulagway ang mga desisyon sa arkitektura ug teknikal nga among gihimo, o isulti kung giunsa kini tanan. Kini ang mga nota sa mga margin kung giunsa ang usa sa labing lisud nga mga rollout nga akong naobserbahan ug diin ako direktang nalambigit nahitabo. Wala ako nag-angkon nga kompleto o teknikal nga mga detalye; tingali kini makita sa laing artikulo.

Background + unsa nga klase nga gamit kini?

Nagtukod kami usa ka plataporma sa panganod Mail.ru Cloud Solutions (MCS), diin nagtrabaho ko isip technical director. Ug karon panahon na aron idugang ang IAM (Identity and Access Management) sa among plataporma, nga naghatag og hiniusang pagdumala sa tanang user account, user, password, tahas, serbisyo ug uban pa. Ngano nga gikinahanglan kini sa panganod usa ka klaro nga pangutana: ang tanan nga kasayuran sa tiggamit gitipigan niini.

Kasagaran ang ingon nga mga butang magsugod sa pagtukod sa sinugdanan sa bisan unsang mga proyekto. Apan sa kasaysayan ang mga butang medyo lahi sa MCS. Ang MCS gitukod sa duha ka bahin:

  • Ang Openstack nga adunay kaugalingong Keystone authorization module,
  • Hotbox (S3 storage) base sa Mail.ru Cloud nga proyekto,

sa palibot diin ang bag-ong mga serbisyo mitungha.

Sa esensya, duha kini ka lainlaing klase sa pagtugot. Dugang pa, gigamit namon ang pipila nga lahi nga mga pag-uswag sa Mail.ru, pananglitan, usa ka kinatibuk-an nga pagtipig sa password sa Mail.ru, ingon man usa ka self-written openid connector, salamat nga gihatag ang SSO (end-to-end authorization) sa Horizon panel sa mga virtual machine (lumad nga OpenStack UI).

Ang paghimo sa IAM alang kanamo nagpasabut sa pagkonektar sa tanan sa usa ka sistema, hingpit nga among kaugalingon. Sa parehas nga oras, dili kami mawad-an sa bisan unsang pag-andar sa dalan, apan maghimo usa ka pundasyon alang sa umaabot nga magtugot kanamo nga klaro nga mapino kini nga wala’y pagbag-o ug pag-scale niini sa mga termino sa pagpaandar. Usab sa pagsugod, ang mga tiggamit adunay usa ka modelo alang sa pag-access sa mga serbisyo (sentral nga RBAC, kontrol sa pag-access nga nakabase sa papel) ug uban pang gagmay nga mga butang.

Ang buluhaton nahimo nga dili hinungdanon: python ug perl, daghang mga backend, independente nga sinulat nga mga serbisyo, daghang mga team sa pag-uswag ug mga admin. Ug labing hinungdanon, adunay libu-libo nga mga buhi nga tiggamit sa sistema sa produksiyon sa kombat. Kining tanan kinahanglang isulat ug, labaw sa tanan, ipagawas nga walay kaswalti.

Unsa ang atong ilunsad?

Sa pagkabutang niini nga halos, sa mga 4 ka bulan among giandam ang mosunod:

  • Naghimo kami og daghang bag-ong mga daemon nga naghiusa sa mga gimbuhaton nga kaniadto nagtrabaho sa lainlaing mga bahin sa imprastraktura. Ang nahabilin nga mga serbisyo gireseta usa ka bag-ong backend sa dagway sa kini nga mga demonyo.
  • Nagsulat kami sa among kaugalingon nga sentro nga pagtipig sa mga password ug mga yawe, magamit alang sa tanan namon nga mga serbisyo, nga libre nga mabag-o kung kinahanglan namon.
  • Nagsulat kami og 4 ka bag-ong backend para sa Keystone gikan sa wala (mga tiggamit, proyekto, tahas, tahas sa papel), nga, sa pagkatinuod, gipulihan ang database niini, ug karon naglihok isip usa ka repository alang sa among mga password sa user.
  • Gitudloan namo ang tanan namong mga serbisyo sa Openstack sa pag-adto sa serbisyo sa polisiya sa ikatulo nga partido alang sa ilang mga polisiya imbes nga basahon kini nga mga polisiya sa lokal nga paagi gikan sa matag server (oo, mao kana ang paagi sa Openstack nga nagtrabaho sa default!)

Ang ingon nga usa ka mayor nga rework nanginahanglan dako, komplikado ug, labing hinungdanon, dungan nga mga pagbag-o sa daghang mga sistema nga gisulat sa lainlaing mga team sa pagpauswag. Sa higayon nga matigum, ang tibuok nga sistema kinahanglan nga molihok.

Sa unsa nga paagi sa pag-roll sa ingon nga mga pagbag-o ug dili i-screw kini? Una midesisyon nga tan-awon og gamay ang umaabot.

Istratehiya sa paglusad

  • Mahimong posible nga i-roll out ang produkto sa daghang mga yugto, apan kini makadugang sa oras sa pag-uswag sa tulo ka beses. Dugang pa, sulod sa pipila ka panahon kita adunay kompleto nga desynchronization sa mga datos sa mga database. Kinahanglan nimong isulat ang imong kaugalingon nga mga himan sa pag-synchronize ug magpuyo sa daghang mga tindahan sa datos sa dugay nga panahon. Ug kini nagmugna sa usa ka halapad nga matang sa mga risgo.
  • Ang tanan nga mahimong andam nga transparent alang sa tiggamit nahimo nang daan. Niabot ug 2 ka bulan.
  • Gitugotan namo ang among kaugalingon nga downtime sulod sa pipila ka oras - para lang sa mga operasyon sa user sa paghimo ug pag-usab sa mga kapanguhaan.
  • Alang sa operasyon sa tanan nga nahimo na nga mga kapanguhaan, ang downtime dili madawat. Nagplano kami nga sa panahon sa paglusad, ang mga kapanguhaan kinahanglan nga molihok nga wala’y downtime ug makaapekto sa mga kliyente.
  • Aron maminusan ang epekto sa among mga kostumer kung adunay mahitabo nga sayup, nakahukom kami nga ilunsad sa Domingo sa gabii. Diyutay nga mga kustomer ang nagdumala sa mga virtual machine sa gabii.
  • Gipasidan-an namo ang tanan namong mga kliyente nga sa panahon nga gipili alang sa rollout, ang pagdumala sa serbisyo dili magamit.

Digression: unsa ang rollout?

<pagbantay, pilosopiya>

Ang matag espesyalista sa IT dali nga makatubag kung unsa ang rollout. Gi-install nimo ang CI / CD, ug ang tanan awtomatiko nga gihatud sa tindahan. πŸ™‚

Siyempre kini tinuod. Apan ang kalisud mao nga sa modernong mga himan sa paghatud sa code sa automation, ang pagsabut sa rollout mismo nawala. Giunsa nimo pagkalimti ang bahin sa epicness sa pag-imbento sa ligid kung nagtan-aw sa modernong transportasyon. Ang tanan automated kaayo nga ang rollout kanunay nga gihimo nga wala makasabut sa tibuok nga hulagway.

Ug ang tibuok nga hulagway sama niini. Ang rollout naglangkob sa upat ka dagkong aspeto:

  1. Paghatud sa code, lakip ang pagbag-o sa datos. Pananglitan, ang ilang paglalin.
  2. Ang pag-rollback sa code mao ang abilidad sa pagbalik kung adunay sayup. Pananglitan, pinaagi sa paghimo og mga backup.
  3. Oras sa matag rollout/rollback nga operasyon. Kinahanglan nimong masabtan ang panahon sa bisan unsang operasyon sa unang duha ka punto.
  4. Naapektuhan nga pagpaandar. Gikinahanglan ang pagtimbang-timbang sa gipaabot nga positibo ug posible nga negatibong epekto.

Ang tanan niini nga mga aspeto kinahanglan nga tagdon alang sa usa ka malampuson nga rollout. Kasagaran ang una lang, o labing maayo ang ikaduha, nga punto ang gisusi, ug dayon ang rollout giisip nga malampuson. Apan ang ikatulo ug ikaupat mas importante. Kinsa nga tiggamit ang gusto kung ang rollout molungtad og 3 ka oras imbes usa ka minuto? O kung adunay dili kinahanglan nga maapektuhan sa panahon sa paglusad? O ang downtime ba sa usa ka serbisyo mosangpot sa dili matag-an nga mga sangputanan?

Buhat 1..n, pagpangandam sa pagpagawas

Sa sinugdan naghunahuna ko sa daklit nga paghulagway sa among mga miting: ang tibuok team, ang mga bahin niini, mga pundok sa mga diskusyon sa mga punto sa kape, mga argumento, mga pagsulay, mga brainstorms. Unya naghunahuna ko nga dili na kinahanglan. Upat ka bulan nga pag-uswag kanunay nga naglangkob niini, labi na kung wala ka nagsulat usa ka butang nga mahimo nga ipadala kanunay, apan usa ka dako nga bahin alang sa usa ka buhi nga sistema. Nga makaapekto sa tanan nga mga serbisyo, apan walay kinahanglan nga mausab alang sa mga tiggamit gawas sa "usa ka buton sa web interface."

Ang among pagsabut kung giunsa ang paglihok nabag-o gikan sa matag bag-ong miting, ug labi ka hinungdanon. Pananglitan, among i-update ang among tibuok database sa pagsingil. Apan among gikalkulo ang oras ug nahibal-an nga imposible nga buhaton kini sa usa ka makatarunganon nga oras sa paglusad. Nagkinahanglan kami og hapit usa ka dugang nga semana sa pag-shard ug pag-archive sa database sa pagsingil. Ug sa diha nga ang gipaabot nga rollout speed dili gihapon makatagbaw, kami nagmando sa dugang, mas gamhanan nga hardware, diin ang tibuok base giguyod. Dili kini nga dili namo gusto nga buhaton kini sa labing madali, apan ang kasamtangan nga panginahanglan nga ilunsad wala kami'y kapilian.

Kung ang usa kanamo nagduhaduha nga ang rollout mahimong makaapekto sa pagkaanaa sa among mga virtual nga makina, migugol kami usa ka semana nga nagpahigayon mga pagsulay, eksperimento, pagtuki sa code ug nakadawat usa ka tin-aw nga pagsabut nga dili kini mahitabo sa among produksiyon, ug bisan ang labing kaduhaduhaan nga mga tawo miuyon. uban niini.

Sa kasamtangan, ang mga lalaki gikan sa teknikal nga suporta nagpahigayon sa ilang kaugalingon nga independente nga mga eksperimento aron sa pagsulat sa mga instruksyon alang sa mga kliyente sa mga pamaagi sa koneksyon, nga unta mag-usab human sa rollout. Nagtrabaho sila sa user UX, nag-andam og mga instruksyon ug naghatag og personal nga mga konsultasyon.

Gi-automate namo ang tanang rollout operations nga posible. Ang matag operasyon gisulat, bisan ang pinakasimple, ug ang mga pagsulay kanunay nga gipadagan. Naglalis sila bahin sa labing kaayo nga paagi aron mapalong ang serbisyo - tangtangon ang daemon o i-block ang pag-access sa serbisyo gamit ang firewall. Naghimo kami og checklist sa mga team alang sa matag yugto sa rollout ug gi-update kini kanunay. Kami nagdrowing ug kanunay nga nag-update sa usa ka Gantt nga tsart para sa tanang rollout nga trabaho, nga adunay mga timing.

Unya…

Ang katapusan nga buhat, sa wala pa roll out

...oras na sa paglusad.

Sama sa ilang giingon, ang usa ka buhat sa arte dili makompleto, mahuman ra ang pagtrabaho niini. Kinahanglan ka nga maningkamot sa kabubut-on, nga masabtan nga dili nimo makit-an ang tanan, apan nagtuo nga nahimo nimo ang tanan nga makatarunganon nga mga pangagpas, nga gihatag alang sa tanan nga posible nga mga kaso, gisirhan ang tanan nga kritikal nga mga bug, ug gibuhat sa tanan nga mga partisipante ang tanan nga ilang mahimo. Ang mas daghang code nga imong gilusad, mas lisud ang pagkombinsir sa imong kaugalingon niini (gawas pa, ang tanan nakasabut nga imposible nga makita ang tanan).

Kami nakahukom nga kami andam na sa paglansad sa diha nga kami kombinsido nga kami nakahimo sa tanan nga posible aron sa pagtabon sa tanang mga risgo alang sa among mga tiggamit nga may kalabutan sa wala damha nga mga epekto ug mga downtime. Kana mao, bisan unsa nga mahimong sayup gawas sa:

  1. Makaapektar (sagrado alang kanamo, labing bililhon) nga imprastraktura sa tiggamit,
  2. Functionality: ang paggamit sa among serbisyo pagkahuman sa rollout kinahanglan nga parehas sa una.

Naglihok

Usa ka rollout nga istorya nga nakaapekto sa tanan
Duha ka rolyo, 8 dili manghilabot

Gikuha namo ang downtime alang sa tanang hangyo gikan sa mga tiggamit sulod sa 7 ka oras. Niining panahona, aduna kami duha nga plano sa paglusad ug plano sa pag-rollback.

  • Ang rollout mismo mokabat ug mga 3 ka oras.
  • 2 ka oras alang sa pagsulay.
  • 2 ka oras - reserba alang sa usa ka posible nga rollback sa mga pagbag-o.

Usa ka Gantt nga tsart ang gilaraw alang sa matag aksyon, kung unsa kadugay kini, kung unsa ang sunodsunod nga mahitabo, kung unsa ang gihimo nga managsama.

Usa ka rollout nga istorya nga nakaapekto sa tanan
Usa ka piraso sa usa ka rollout nga Gantt chart, usa sa unang mga bersyon (nga walay parallel execution). Ang Labing Bililhon nga Himan sa Pag-synchronize

Ang tanan nga mga partisipante adunay ilang papel sa rollout nga gitino, unsa nga mga buluhaton ang ilang gibuhat, ug unsa ang ilang responsibilidad. Gisulayan namon nga dad-on ang matag yugto sa awtomatik, i-roll kini, i-roll kini balik, kolektahon ang feedback ug i-roll kini pag-usab.

Chronicle sa mga panghitabo

Busa, 15 ka tawo ang miadto sa trabaho niadtong Dominggo, Abril 29, alas 10 sa gabii. Dugang pa sa mga importanteng partisipante, ang uban mianhi aron lang suportahan ang team, diin espesyal nga salamat kanila.

Angayan usab nga hisgutan nga ang among yawe nga tigsulay anaa sa bakasyon. Imposible nga i-roll out nga wala’y pagsulay, nagsuhid kami mga kapilian. Miuyon ang usa ka kauban nga sulayan kami gikan sa bakasyon, diin nakadawat siya daghang pasalamat gikan sa tibuuk nga koponan.

00:00. Hunong
Gipahunong namo ang mga hangyo sa tiggamit, gibitay ang usa ka karatula nga nag-ingon nga teknikal nga trabaho. Ang pag-monitor nagsinggit, apan ang tanan normal. Among gisusi nga walay nahulog gawas sa angay untang mahulog. Ug nagsugod kami sa pagtrabaho sa paglalin.

Ang matag usa adunay giimprinta nga plano sa paglusad sa punto por punto, nahibal-an sa tanan kung kinsa ang nagbuhat kung unsa ug sa unsang orasa. Pagkahuman sa matag aksyon, gisusi namon ang mga oras aron masiguro nga dili kami molapas niini, ug ang tanan moadto sumala sa plano. Kadtong wala moapil sa rollout direkta sa kasamtangan nga yugto nangandam pinaagi sa paglansad sa usa ka online nga dulaan (Xonotic, type 3 quacks) aron dili makadisturbo sa ilang mga kauban. πŸ™‚

02:00. Gilukot
Usa ka makapahimuot nga sorpresa - matapos namon ang rollout usa ka oras nga mas sayo, tungod sa pag-optimize sa among mga database ug mga script sa paglalin. Ang singgit sa kinatibuk-an, "gilupad!" Ang tanan nga bag-ong mga gimbuhaton naa sa produksiyon, apan hangtod karon makita ra naton sila sa interface. Ang tanan moadto sa testing mode, paghan-ay kanila ngadto sa mga grupo, ug magsugod sa pagtan-aw kon unsa ang nahitabo sa katapusan.

Dili kini maayo nga nahimo, nahibal-an namon kini pagkahuman sa 10 minuto, kung wala’y konektado o nagtrabaho sa mga proyekto sa mga miyembro sa team. Dali nga pag-sync, gipahayag namo ang among mga problema, nagtakda og mga prayoridad, nagbungkag sa mga team ug nag-debug.

02:30. Duha ka dagkong problema batok sa upat ka mata
Atong makita ang duha ka dagkong problema. Kami nakaamgo nga ang mga kustomer dili makakita sa pipila ka konektado nga mga serbisyo, ug ang mga problema motungha sa mga partner nga mga account. Ang duha tungod sa dili hingpit nga mga script sa paglalin alang sa pipila nga mga kaso sa sulud. Kinahanglan natong ayuhon kini karon.

Gisulat namon ang mga hangyo nga nag-ayo niini, nga adunay labing menos 4 nga mga mata. Gisulayan namon sila sa panahon sa pre-production aron masiguro nga kini molihok ug dili makaguba bisan unsa. Mahimo ka nga magpadayon. Sa parehas nga oras, gipadagan namon ang among regular nga pagsulay sa panagsama, nga nagpadayag pipila pa nga mga isyu. Gamay ra silang tanan, apan kinahanglan usab nga ayohon.

03:00. -2 problema +2 problema
Ang duha ka miaging dagkong mga problema naayo na, ug hapit tanan nga mga menor de edad usab. Ang tanan nga wala’y trabaho sa pag-ayo aktibo nga nagtrabaho sa ilang mga account ug nagreport sa ilang nakit-an. Kami nag-una, nag-apod-apod sa mga team, ug nagbilin sa dili kritikal nga mga butang alang sa buntag.

Gipadagan namo pag-usab ang mga pagsulay, nakadiskobre sila og duha ka bag-ong dagkong problema. Dili tanan nga mga polisiya sa serbisyo miabut sa husto, mao nga ang pipila ka mga hangyo sa tiggamit dili mopasa sa pagtugot. Dugang usa ka bag-ong problema sa mga account sa kauban. Magdali ta sa pagpangita.

03:20. Emergency sync
Usa ka bag-ong isyu naayo. Alang sa ikaduha, nag-organisar kami og usa ka emergency nga pag-sync. Nasabtan namo kung unsa ang nahitabo: ang miaging pag-ayo nag-ayo sa usa ka problema, apan nagmugna og lain. Nagpahulay kami aron mahibal-an kung giunsa kini buhaton sa husto ug wala’y mga sangputanan.

03:30. Unom ka mata
Nasabtan namon kung unsa ang katapusan nga kahimtang sa base aron ang tanan maayo alang sa tanan nga mga kauban. Gisulat namon ang usa ka hangyo nga adunay 6 nga mga mata, i-roll kini sa pre-production, sulayan kini, paligdi kini alang sa produksiyon.

04:00. Ang tanan nagtrabaho
Ang tanan nga mga pagsulay milabay, walay kritikal nga mga problema nga makita. Matag karon ug unya, adunay usa ka butang sa team nga dili molihok alang sa usa ka tawo, kami motubag dayon. Kasagaran ang alarma bakak. Apan usahay adunay dili moabut, o ang usa ka bulag nga panid dili molihok. Naglingkod kami, nag-ayo, nag-ayo, nag-ayo. Usa ka bulag nga team ang naglansad sa katapusang dako nga bahin - pagsingil.

04:30. Point of no return
Ang punto sa walay pagbalik nagkaduol na, nga mao, ang panahon nga, kon kita magsugod sa pagbalik, kita dili makasugat sa downtime nga gihatag kanato. Adunay mga problema sa pagsingil, nga nahibal-an ug girekord ang tanan, apan gahi nga nagdumili sa pagtangtang sa salapi gikan sa mga kliyente. Adunay daghang mga bug sa indibidwal nga mga panid, aksyon, ug mga kahimtang. Ang panguna nga pag-andar naglihok, ang tanan nga mga pagsulay malampuson nga milabay. Nagdesisyon kami nga ang rollout nahitabo, dili kami mobalik.

06:00. Bukas para sa tanan sa UI
Giayo ang mga bug. Ang uban nga dili makadani sa mga tiggamit nahabilin sa ulahi. Giablihan namon ang interface sa tanan. Nagpadayon kami sa pagtrabaho sa pagsingil, naghulat sa feedback sa gumagamit ug mga resulta sa pag-monitor.

07:00. Mga problema sa pagkarga sa API
Kini nahimong tin-aw nga kita gamay nga sayop nga plano sa load sa atong API ug gisulayan kini nga load, nga dili makaila sa problema. Ingon usa ka sangputanan, β‰ˆ5% sa mga hangyo napakyas. Atong lihokon ug pangitaon ang rason.

Ang billing gahig ulo ug dili usab gustong motrabaho. Nagdesisyon kami nga i-postpone kini hangtod sa ulahi aron mahimo ang mga pagbag-o sa kalmado nga paagi. Kana mao, ang tanan nga mga kahinguhaan natipon niini, apan ang mga write-off gikan sa mga kliyente dili moagi. Siyempre, kini usa ka problema, apan kon itandi sa kinatibuk-ang rollout kini daw dili importante.

08:00. Ayuhon ang API
Naglunsad kami og usa ka pag-ayo alang sa load, ang mga kapakyasan nawala. Magsugod mi sa pagpauli.

10:00. Tanan
Naayo na ang tanan. Hilom kini sa pagmonitor ug sa lugar sa mga kostumer, anam-anam nga matulog ang team. Ang billing nagpabilin, atong iuli ugma.

Pagkahuman sa adlaw adunay mga rollout nga nag-ayo sa mga troso, mga pahibalo, mga code sa pagbalik ug mga pag-customize para sa pipila sa among mga kliyente.

Busa, malampuson ang rollout! Kini, siyempre, mahimong mas maayo, apan naghimo kami og mga konklusyon mahitungod sa kung unsa ang dili igo alang kanamo aron makab-ot ang kahingpitan.

Total

Sulod sa 2 ka bulan nga aktibo nga pagpangandam alang sa rollout, 43 ka mga buluhaton ang nahuman, nga molungtad gikan sa usa ka magtiayon nga mga oras ngadto sa pipila ka mga adlaw.

Atol sa paglusad:

  • bag-o ug nausab nga mga demonyo - 5 ka piraso, gipuli ang 2 monoliths;
  • mga pagbag-o sa sulod sa mga database - ang tanan nga 6 sa among mga database nga adunay data sa tiggamit naapektuhan, ang mga pag-download gihimo gikan sa tulo ka mga daan nga database ngadto sa usa ka bag-o;
  • hingpit nga gidesinyo pag-usab nga frontend;
  • kantidad sa na-download nga code - 33 ka libo nga linya sa bag-ong code, β‰ˆ 3 ka libo nga linya sa code sa mga pagsulay, β‰ˆ 5 ka libo nga linya sa migration code;
  • ang tanan nga datos wala’y labot, wala’y usa ka virtual nga makina sa kostumer ang nadaot. πŸ™‚

Maayong mga gawi para sa maayong paglusad

Gitultolan mi nila niining lisod nga kahimtang. Apan, sa kasagaran nga pagsulti, mapuslanon ang pagsunod niini sa panahon sa bisan unsang paglusad. Apan kon mas komplikado ang rollout, mas dako ang papel nga ilang gidula.

  1. Ang una nga butang nga kinahanglan nimong buhaton mao ang pagsabut kung giunsa ang paglansad mahimo o makaapekto sa mga tiggamit. Aduna bay downtime? Kung mao, unsa ang downtime? Sa unsang paagi kini makaapekto sa mga tiggamit? Unsa ang posible nga labing maayo ug labing daotan nga mga senaryo sa kaso? Ug tabuni ang mga risgo.
  2. Planoha ang tanan. Sa matag yugto, kinahanglan nimong masabtan ang tanan nga aspeto sa paglusad:
    • pagpadala sa code;
    • code rollback;
    • oras sa matag operasyon;
    • naapektuhan nga pagpaandar.
  3. Pagdula sa mga senaryo hangtod nga ang tanan nga mga yugto sa rollout, ingon man ang mga risgo sa matag usa niini, mahimong klaro. Kung adunay ka mga pagduhaduha, mahimo ka nga mopahulay ug susihon ang kwestyonable nga yugto nga gilain.
  4. Ang matag yugto mahimo ug kinahanglan nga pauswagon kung kini makatabang sa among mga tiggamit. Pananglitan, kini makapakunhod sa downtime o makawagtang sa pipila ka mga risgo.
  5. Ang pagsulay sa pag-rollback labi ka hinungdanon kaysa pagsulay sa paghatud sa code. Kinahanglan nga susihon nga ingon usa ka sangputanan sa pag-rollback ang sistema mobalik sa orihinal nga kahimtang niini, ug kumpirmahi kini sa mga pagsulay.
  6. Ang tanan nga mahimong awtomatiko kinahanglan nga awtomatiko. Ang tanan nga dili mahimo nga awtomatiko kinahanglan nga isulat daan sa usa ka cheat sheet.
  7. Irekord ang sukdanan sa kalampusan. Unsa nga gamit ang kinahanglan magamit ug sa unsang orasa? Kung dili kini mahitabo, padagana ang rollback nga plano.
  8. Ug ang labing importante - mga tawo. Ang tanan kinahanglan nga nahibal-an kung unsa ang ilang gibuhat, ngano ug unsa ang nagdepende sa ilang mga aksyon sa proseso sa paglusad.

Ug sa usa ka tudling-pulong, nga adunay maayo nga pagplano ug pagpatin-aw mahimo nimong ilunsad ang bisan unsang gusto nimo nga wala’y mga sangputanan sa pagbaligya. Bisan usa ka butang nga makaapekto sa tanan nimong serbisyo sa produksiyon.

Source: www.habr.com

Idugang sa usa ka comment