8.6

Tazama kwa Kiingereza

8.6 Usimamizi wa matoleo na utoaji wa hatua kwa hatua

Muhtasari na msukumo

Wazo lenye manufaa zaidi katika usimamizi wa kisasa wa matoleo pia ni rahisi zaidi: kusafirisha msimbo na kufichua kipengele ni matukio mawili tofauti, na unapaswa kuweza kufanya moja bila lingine. Sura ya 8.1 (CI/CD na utoaji) inafanya badiliko lenu lijengwe mara moja, lijaribiwe, na kupandishwa kama mabaki yasiyobadilika. Sura hii inahusu kinachofuata: jinsi unavyogeuza msimbo huo uliosambazwa kuwa uzoefu hai kwa watumiaji halisi, hatua kwa hatua, kwa usalama, na kwa njia ya haraka ya kurudi nyuma. Usambazaji unamaanisha kusakinisha msimbo kwenye seva. Toleo linamaanisha kuwaacha watumiaji kufikia uwezo. Ukivitenganisha, usambazaji unakuwa wa kawaida na wa kuchosha, na toleo linakuwa uamuzi unaodhibitiwa, unaoweza kutenduliwa.

Kwa timu kubwa, utengano huu hubadilisha joto la hisia la kusafirisha. Wakati makumi ya huduma na mamia ya wahandisi wanabadilisha uzalishaji kila siku, mfano uliounganishwa wa “usambazaji ni sawa na toleo” unamaanisha kila badiliko linalomkabili mtumiaji ni tukio la hatari, la mara moja kwa wote. Kutenganisha kunakuruhusu kuunganisha kazi isiyokamilika nyuma ya swichi, kusambaza kipengele kwa asilimia moja ya trafiki, kutazama namba, na kupanua au kurudi nyuma bila kugusa ujenzi. Utoaji wa hatua kwa hatua ni neno mwavuli kwa hili: kutoa badiliko kwa hadhira inayopanuka huku ukaguzi wa kiotomatiki ukiamua kama kuendelea.

Mazingira ya mashirika makubwa na serikali huongeza uratibu na uthibitisho. Jukwaa la malipo hutoa toleo kuvuka huduma nyingi zinazopaswa kukubaliana kuhusu skima. Wakala wa umma unafanya kazi chini ya mamlaka ya kuendesha na udhibiti rasmi wa mabadiliko, na wakaguzi wanataka ushahidi wa hasa nani alifichuliwa kwa nini, na lini. Ukifanywa vizuri, utoaji wa hatua kwa hatua unatimiza hamu ya kusonga haraka na wajibu wa kuthibitisha udhibiti, kwa sababu utaratibu uleule unaopunguza eneo la mlipuko pia unazalisha rekodi inayokaguliwa ya utoaji.

Kanuni kuu

  • Usambazaji si toleo. Safirisha msimbo gizani, kisha uwashe kwa makusudi.
  • Eneo dogo la mlipuko kwanza. Fichua badiliko kwa wachache kabla ya kulifichua kwa wote.
  • Kila toleo lina gia ya kurudi nyuma. Ikiwa huwezi kurudisha nyuma ndani ya sekunde, hujamaliza kubuni toleo.
  • Acha ishara ziendeshe upandishaji. Vipimo vya afya na bajeti za makosa, si kalenda wala matumaini, vinaamua kama utoaji unasonga mbele.
  • Bendera ni dhima hadi iondolewe. Kila swichi ni msimbo unaopaswa kudumisha na hatimaye kufuta.
  • Fanya badiliko la hifadhidata lisalimike pande zote mbili. Utoaji na kurudisha nyuma lazima viwe salama dhidi ya skima ileile.
  • Idhini zinapaswa kurekodi, si kuzuia. Ushahidi wa ukaguzi ni zao la pembeni la bomba, si mkutano wa kila wiki.

Mapendekezo

Tenganisha usambazaji na toleo kwa bendera za vipengele

Swichi ya kipengele, au bendera ya kipengele, ni swichi ya wakati wa kuendesha inayoamua kama njia ya msimbo inatumika, bila kusambaza upya. Chukulia bendera kama msamiati wenye aina, kwa sababu muda wake wa kuishi unatofautiana. Bendera ya toleo huficha kazi inayoendelea na huishi siku hadi wiki. Bendera ya uendeshaji (swichi ya kuzima) inakuruhusu kuzima mfumo mdogo chini ya mzigo na inaweza kuishi milele. Bendera ya jaribio hugawanya trafiki kwa jaribio linalodhibitiwa na huishi kwa urefu wa jaribio. Bendera ya ruhusa hudhibiti uwezo kwa mpango au jukumu na kwa vitendo ni ya kudumu. Kila bendera ipewe mmiliki, aina, chaguo-msingi, na tarehe inayotarajiwa ya kuondolewa. Chaguo-msingi lipaswa kuwa lile salama, ili kukatika kwa huduma ya bendera kushindwe kwa kufunga kuelekea tabia inayojulikana kuwa nzuri badala ya kufungua kuelekea njia zisizojaribiwa.

Chagua mfumo wa utoaji wa hatua kwa hatua kwa kila daraja la huduma

Linganisha utaratibu wa utoaji na eneo la mlipuko, kama sura ya 8.1 inavyodai kwa mikakati ya usambazaji. Toleo la kanari huelekeza kipande kidogo cha trafiki kwenye toleo jipya na hupanuka tu afya ikishikilia. Usambazaji wa bluu-kijani hudumisha mazingira mawili ya uzalishaji na kuhamisha trafiki kati yake kwa kubadilisha papo hapo na kurudisha papo hapo. Usambazaji wa kuviringika hubadilisha mifano kwa makundi. Usambazaji wa pete hupanuka kupitia hadhira zilizotajwa: watumiaji wa ndani kwanza, kisha kundi la beta, kisha kanda ndogo, kisha kila mtu. Pete ndizo mfumo wenye manufaa zaidi kwa mashirika makubwa kwa sababu zinataja nani amefichuliwa katika kila hatua, ambayo ndiyo hasa mkaguzi na mwitikiaji wa tukio wote wanataka kujua. Majukwaa ya kontena na uratibu (sura ya 8.3) hutoa vipengele vya msingi vya kuunda trafiki vinavyofanya mifumo hii kuwa nafuu kuendesha.

Weka malango ya utoaji kwenye ukaguzi wa afya na kurudisha nyuma kiotomatiki

Fafanua vigezo vya afya vya kimalengo kabla ya toleo, si wakati wa tukio. Uchambuzi wa kiotomatiki hulinganisha kanari na msingi kwa kiwango cha makosa, ucheleweshaji, na ujazo, na ama hupandisha au kurudisha nyuma bila kusubiri binadamu aone. Funga upandishaji kwa lengo la kiwango cha huduma na bajeti ya makosa kutoka uhandisi wa kutegemewa kwa tovuti (sura ya 9.1): bajeti ikiwa na afya unatoa toleo kwa uhuru, na ikitumika bomba linakataa kuendelea hadi huduma itulie. Kurudisha nyuma kiotomatiki ni muhimu zaidi kwa sababu kunaondoa kusitasita kunakogeuza urejeo mdogo kuwa kukatika kukubwa. Kurudisha nyuma haraka pia ni kidhibiti chenu cha tukio cha bei nafuu zaidi: kurudisha nyuma kunakochukua sekunde kunapunguza eneo la mlipuko kabla mchakato wenu wa matukio (sura ya 9.3) haujaanza kikamilifu. Kiwango cha kushindwa kwa mabadiliko na muda wa kupona mnavyoboresha kwa njia hii ni ishara zilezile za mtiririko-na-uthabiti ambazo bomba lenu la utoaji linafuatilia (sura ya 11.2).

Tumia uzinduzi wa gizani na trafiki ya kivuli kupunguza hatari

Baadhi ya mabadiliko yana matokeo makubwa mno kukutana kwanza na watumiaji halisi kwa mfiduo kamili. Uzinduzi wa gizani husafirisha kipengele kikiwa kimezimwa, kisha hukijaribu ndani au dhidi ya sehemu ya uzalishaji kabla mtu yeyote hajakiona. Trafiki ya kivuli hunakili maombi hai kwenye njia mpya ya msimbo na kutupa majibu, ili upime mzigo na usahihi halisi bila athari kwa mtumiaji. Mbinu hizi zinakuruhusu kuthibitisha uandishi upya au utegemezi mpya chini ya trafiki halisi, ambayo mazingira ya maandalizi hayawezi kuizalisha kwa uaminifu. Ziambatanishe na uchambuzi uleule wa afya unaotumia kwa kanari.

Endesha majaribio yanayodhibitiwa kupitia mfumo uleule wa bendera

Bendera ya jaribio ndipo uhandisi wa matoleo unapokutana na kujifunza kwa bidhaa. Mgawanyo wa majaribio ya A/B hutoa lahaja kwa makundi yanayolingana na kupima matokeo yaliyochaguliwa, ukilisha mazoea ya uchanganuzi wa bidhaa ya sura ya 7.4. Tumia tena bendera moja na mfumo mmoja wa kulenga kwa utoaji wa usalama na majaribio, ili uwe na nyayo moja ya ukaguzi na swichi moja ya kuzima badala ya mikusanyiko miwili sambamba ya swichi isiyokubaliana kuhusu nani yuko kwenye kapu lipi.

Weka hifadhidata ikioana nyuma kwa kupanua na kupunguza

Utoaji na kurudisha nyuma vinabaki salama tu ikiwa skima inavumilia msimbo wa zamani na mpya kwa wakati mmoja, jambo lisiloepukika wakati wa utoaji wowote wa hatua kwa hatua. Tumia mfumo wa kupanua na kupunguza (badiliko sambamba): kwanza panua kwa kuongeza safu wima au jedwali mpya katika uhamishaji unaooana nyuma, kisha sambaza msimbo unaoandika kwa maumbo ya zamani na mapya, kisha jaza nyuma, kisha hamisha usomaji, na tu baadaye sana punguza kwa kuondoa umbo la zamani pale hakuna msimbo unaoendesha unaolitegemea. Usiunganishe kamwe uhamishaji wa kuharibu na usambazaji unaouhitaji. Nidhamu hii ndiyo inayokuruhusu kurudisha msimbo nyuma bila hifadhidata ambayo tayari imesonga mbele, na inaunganishwa moja kwa moja na mkakati wenu wa majaribio (sura ya 2.4), unaopaswa kufunika dirisha la matoleo mchanganyiko.

Fanya usimamizi wa mabadiliko urekodi badala ya kuzuia

Patanisha ukaguzi na mtiririko kwa kuidhinisha mapema madaraja ya mabadiliko. Fafanua aina za mabadiliko za kawaida, za hatari ndogo zinazopita kwenye bomba kiotomatiki, zikinasa nani aliidhinisha, majaribio gani yaliendesha, mabaki gani yalisambazwa, na hadhira zipi zilifichuliwa katika kila pete. Hifadhi mapitio ya ushauri wa mabadiliko ya binadamu kwa mabadiliko ya hatari kubwa kweli. Bodi ya jadi ya udhibiti wa mabadiliko inayokagua kila usambazaji wa kawaida inakuwa kizuizi kinachosukuma timu kuelekea makundi makubwa, yenye hatari zaidi, kinyume cha inachokusudia. Katika serikali, mamlaka ya kuendesha na udhibiti rasmi wa mabadiliko vinaweza kuishi pamoja na utoaji wa hatua kwa hatua zana za utoaji zinapotoa ushahidi ambao mfumo wa udhibiti unahitaji, kwa hiyo rekodi ya msingi wa pete ndiyo mabaki ya ukaguzi.

Mabadilishano: faida na hasara

MfumoFaidaHasaraInafaa zaidi
KanariInaendeshwa na data, eneo dogo la mlipukoInahitaji vipimo vizuri na kiasi cha trafikiHuduma kubwa zinazowakabili watumiaji
Bluu-kijaniKubadilisha na kurudisha nyuma papo hapoInaongeza mara mbili gharama ya mazingira wakati wa kubadiliHuduma muhimu zinazohitaji kurudi haraka
KuviringikaNafuu, rahisi, hakuna mazingira ya ziadaKurudisha nyuma polepole, matoleo mchanganyiko haiHuduma za ndani zisizo na hali
Msingi wa peteHadhira zilizotajwa, nyayo wazi za ukaguziUtoaji kamili polepole; uratibu zaidiMaeneo yanayodhibitiwa na yenye huduma nyingi
Bendera za vipengeleHutenganisha usambazaji na toleo; swichi ya kuzima papo hapoDeni la bendera; matriki ya majaribio inakuaTimu zinazosafirisha kazi isiyokamilika kwa usalama
Treni za matoleoMzunguko unaotabirika, uratibu rahisiHuunganisha mabadiliko mengi; inasubiri treniTimu nyingi zinazoshiriki toleo
Toleo la kuombwaMakundi madogo, maoni ya harakaUratibu wa timu mbalimbali ni mgumu zaidiTimu za utoaji endelevu zenye uaminifu wa juu

Mvutano wa kati ni kati ya uratibu na uhuru. Treni za matoleo hufunga mabadiliko ya timu nyingi kwenye ratiba iliyowekwa, ambayo ni rahisi kufikiria lakini inalazimisha badiliko lililokamilika kusubiri na kuunganisha kazi zisizohusiana kuwa tukio moja. Toleo la kuombwa linaiacha kila timu kusafirisha ikiwa tayari, ambalo ni la haraka zaidi lakini linadai huduma zibaki zinazosambazwa kwa uhuru na zinazooana nyuma. Suluhisho kwa kawaida ni kutenganisha katika kiwango cha mabaki na skima ili timu ziweze kutoa toleo kwa ombi, kisha kutumia bendera na pete kuratibu wakati unaoonekana kwa mtumiaji kipengele cha huduma mbalimbali kinapowashwa kweli. Kwa njia hiyo toleo la kiufundi na uzinduzi wa bidhaa ni maamuzi tofauti, na hakuna moja linalozuia lingine.

Maswali ya kujadili na timu yako

  1. Toleo likienda vibaya saa nane usiku, inachukua sekunde ngapi kulirudisha nyuma, na nani au nini kinavuta kifyatulio? Jibu la uaminifu hufichua kama mmetenganisha kweli usambazaji na toleo au mmeongeza bendera tu juu ya mchakato ulioungwa. Kurudisha nyuma kunakohitaji kujenga upya, uhamishaji wa hifadhidata wa kutendua, au binadamu aliyeitwa kuamua si kurudisha nyuma, ni tukio la pili. Leta utaratibu halisi wa huduma zenu tatu kuu: bendera au uhamishaji wa trafiki unaotendua mfiduo, ishara ya afya inayoichochea kiotomatiki, na dhamana ya skima inayofanya kutendua kuwe salama. Kwa eneo kubwa hili huamua eneo lenu halisi la mlipuko, kwa sababu kutendua kwa haraka kiotomatiki ndiko kunakozuia urejeo kuwa kukatika. Jibu likipimwa kwa mikutano badala ya sekunde, hilo ni jambo la kwanza kurekebisha.

  2. Sera yenu ya kustaafisha bendera ni ipi, na mnabeba kiasi gani cha deni la bendera sasa hivi? Kila bendera ya kipengele ni uma kwenye msimbo wenu unaozidisha idadi ya hali mnazopaswa kuzifikiria na kuzijaribu, na bendera inayodumu kuliko madhumuni yake ni dhima tupu. Amua kanuni sasa: kila bendera ya toleo inapewa mmiliki na tarehe ya kuisha, bendera zilizopitwa zinaonekana kwenye dashibodi, na kuziondoa ni kazi iliyopangwa badala ya usafishaji wa siku moja. Leta hesabu ya bendera hai, umri wake, na ngapi zimepita tarehe ya kuondolewa iliyokusudiwa. Katika msingi mkubwa wa msimbo, bendera zisizodhibitiwa hugeuka ugumu wa masharti wa kudumu ambao hakuna anayethubutu kuufuta, na utaratibu wa usalama unakuwa chanzo cha hitilafu. Uvumilivu wa timu kwa namba hiyo kwa kweli ni kauli kuhusu jinsi inavyochukulia usafi wa uendeshaji kwa uzito.

  3. Mchakato wenu wa kuidhinisha mabadiliko unafanya matoleo kuwa salama zaidi, au polepole tu? Mashirika mengi huendesha bodi ya ushauri wa mabadiliko inayopitia kila usambazaji, na swali lisilostarehesha ni kama imewahi kuzuia badiliko baya kweli au imeongeza ucheleweshaji tu. Leta data: wastani wa ucheleweshaji wa idhini, kiwango cha kushindwa kwa mabadiliko kwa yaliyopitiwa na bodi dhidi ya yaliyoidhinishwa mapema, na mara ngapi mapitio yanakusanya mabadiliko madogo kuwa makubwa yenye hatari zaidi. Lengo ni kuhifadhi mapitio ya binadamu kwa mabadiliko ya hatari kubwa kweli huku mabadiliko ya kawaida yakipita kwenye bomba na ukusanyaji wa ushahidi wa kiotomatiki. Kwa mazingira ya serikali na yanayodhibitiwa, thibitisha kwamba zana za utoaji zinazalisha rekodi ya ukaguzi ambayo mfumo wa udhibiti unahitaji, ili udhibiti uwe zao la pembeni la kusafirisha badala ya lango mbele yake. Mapitio yakiongeza ucheleweshaji bila kupunguza kushindwa, ni maigizo yaliyovaa mavazi ya uzingatiaji.

  4. Ni ishara gani za afya za kimalengo mko tayari kuiacha mashine ichukue hatua juu yake, na je, kila huduma ya daraja la juu ina vipimo vizuri vya kutosha kuweka lango juu yake? Uchambuzi wa kiotomatiki wa kanari na malango ya bajeti ya makosa hufanya kazi tu ikiwa kiwango cha makosa, ucheleweshaji, na ujazo vinapimwa safi vya kutosha kuamini upandishaji au kurudisha nyuma bila binadamu kwenye mzunguko, na timu nyingi hugundua wakati wa tukio kwamba ishara zao zina kelele nyingi au chache mno kuamua. Kwa eneo kubwa hili huamua ni kiasi gani cha kiasi chenu cha matoleo kinaweza kupita kwa usalama bila uangalizi wa mkono, ambayo ndiyo tofauti kati ya jukwaa linalopanuka na lile linalohitaji mtu atazame kila utoaji. Leta dashibodi halisi za huduma zenu tatu muhimu zaidi: vipimo mnavyoweka lango juu yake, kiasi cha trafiki kinachofanya kanari iwe na maana kitakwimu, na kiwango cha chanya za uongo cha uchambuzi wenu wa kiotomatiki. Katika mazingira ya serikali na yanayodhibitiwa, ishara zilezile zinalisha rekodi inayokaguliwa, kwa hiyo uonekanaji duni ni pengo la kutegemewa na pengo la uzingatiaji, na kufadhili ubora wa vipimo kunapaswa kuwa mstari uliotajwa kwenye mpango badala ya uwezo unaodhaniwa.

  5. Mabadiliko yenu ya skima yanasalimika kurudisha nyuma kweli, na mnathibitishaje dirisha la matoleo mchanganyiko ni salama kabla ya kusafirisha? Utoaji wa hatua kwa hatua huahidi gia ya haraka ya kurudi nyuma, lakini uhamishaji wa kuharibu uliounganishwa na kipengele hubatilisha ahadi hiyo kimyakimya, kwa sababu kurudisha msimbo nyuma kunaacha ukielekeza kwenye hifadhidata ambayo tayari imesonga mbele. Kwa shirika kubwa ambapo huduma nyingi zinashiriki skima, hatari inajilimbikiza: hatua ya kupunguza ya timu moja inaweza kukwamisha kurudisha nyuma kwa timu nyingine, kwa hiyo nidhamu ya kupanua-na-kupunguza lazima iwe kiwango cha pamoja badala ya tabia ya ndani. Leta kitabu chenu cha mwongozo cha uhamishaji na ushahidi kwamba kinafuatwa: mnatenganishaje kupanua na kupunguza, kama uandishi-mara-mbili na kujaza nyuma vimejaribiwa chini ya mzigo, na suti yenu ya majaribio inajaribuje msimbo wa zamani dhidi ya skima mpya na msimbo mpya dhidi ya ya zamani. Kwa maeneo ya mashirika makubwa na serikali yenye data ya muda mrefu na udhibiti rasmi wa mabadiliko, uhamishaji usioweza kutenduliwa si hatari ya kukatika tu, ni mfiduo wa uadilifu wa data na ukaguzi ambao dirisha lililopangwa la matengenezo halitaliokoa.

  6. Kipengele cha huduma mbalimbali kinapovuka timu zinazosafirisha kwa kasi tofauti, nani anamiliki wakati kinapowashwa, na mnaratibuje bila kuunganisha usambazaji wao? Hoja nzima ya kutenganisha usambazaji na toleo ni kwamba kila timu inaweza kusafirisha mabaki yake kwa uhuru huku bendera moja ikidhibiti uzinduzi unaoonekana kwa mtumiaji, lakini hilo linashikilia tu ikiwa mtu anamiliki uamuzi wa uzinduzi na ulengaji wa bendera kuvuka mipaka ya huduma. Kwa timu kubwa hali ya kushindwa ni treni ya matoleo ya kimsingi ambayo hakuna aliyeichagua: huduma moja polepole inalazimisha kila timu nyingine kusubiri, au kugeuza bendera bila uratibu kunafichua kipengele kilichounganishwa nusu. Leta ramani ya utegemezi wa uzinduzi wenu ujao wa huduma nyingi, mmiliki wa bendera ya uzinduzi, na dhamana za kuoana nyuma zinazoiruhusu kila huduma kusambaza kwa saa yake. Katika programu za mashirika makubwa na serikali zenye idhini rasmi za uzinduzi, taja nani anaidhinisha kuwasha kwa huduma mbalimbali na ushahidi gani anaouona, ili uzinduzi ulioratibiwa uwe uamuzi wa makusudi, ulioandikwa badala ya ajali ya yeyote aliyeunganisha mwisho.

Mtazamo wa sekta

Kampuni changa. Kutenganisha usambazaji na toleo kunastahili kufanywa hata na wahandisi watatu, lakini ukiweke kuwa cha bei nafuu. Funika kazi mpya kwa bendera ya toleo yenye chaguo-msingi la kuzimwa, safirisha kwenye shina, na uwashe vipengele kwa ajili yako kabla ya wateja, ili badiliko lisilokamilika lisizuie usambazaji kamwe. Ruka majukwaa mazito ya uchambuzi wa kanari ambayo huwezi kuyahudumia kwa wafanyakazi: huduma ya bendera iliyopangishwa na swichi ngumu ya kuzima hununua usalama mwingi, na mtu mmoja anayemiliki ibada ya kila wiki ya kusafisha bendera huzuia deni lisimeze kasi yako.

Biashara ndogo. Bila mhandisi wa matoleo na bajeti finyu, egemea utoaji wowote wa hatua kwa hatua ambao jukwaa lako lililopo tayari linakupa, badala ya kujenga mfumo wa utoaji. Upangishaji unaosimamiwa, SaaS ya bendera za vipengele, au utoaji wa hatua uliojengwa ndani wa mfumo wako wa kazi kwa kawaida hufunika eneo dogo la mlipuko unalohitaji. Chukulia gia ya kurudi nyuma kama kitu unachopaswa kukipata sawa: badiliko unaloweza kulizima ndani ya sekunde lina maana zaidi kuliko uchambuzi wa kiotomatiki wa kisasa usio na muda wa kuurekebisha.

Biashara kubwa. Tatizo ni uthabiti kuvuka timu na huduma nyingi: msamiati wa bendera wa pamoja wenye wamiliki, aina, na kuisha, utoaji wa kawaida wa msingi wa pete, na malango ya bajeti ya makosa yanayotumika kwa njia ileile kila mahali ili vikundi viache kubuni mikusanyiko pinzani ya swichi. Tawala deni la bendera kama kipimo cha eneo zima, sawazisha uhamishaji wa kupanua-na-kupunguza ili badiliko la skima la timu moja lisikwamishe kurudisha nyuma kwa nyingine, na ufanye rekodi ya utoaji inayokaguliwa iwe zao la pembeni ambalo kila huduma hulitoa kwa umbo lilelile. Idhinisha mapema mabadiliko ya kawaida na uhifadhi mapitio ya binadamu kwa ya hatari kubwa kweli, ili udhibiti upanuke bila bodi kwenye njia muhimu.

Serikali. Kanuni za ununuzi, uwazi, na uwajibikaji wa umma huumba kila toleo. Fanya zana za utoaji ziwe chanzo cha ushahidi wa ukaguzi, ili kila upanuzi wa pete urekodi mamlaka inayoidhinisha, majaribio yaliyoendesha, heshi ya mabaki, na idadi hasa ya watu waliofichuliwa, na mamlaka ya kuendesha iishi pamoja na utoaji wa hatua kwa hatua badala ya kupigana nao. Pendelea mifumo ya bluu-kijani au ya msingi wa pete ambayo hadhira zilizotajwa zinaweza kusomwa na mkaguzi na mwitikiaji wa tukio, thibitisha mabadiliko yenye matokeo kwa trafiki ya kivuli dhidi ya kesi hai kabla raia yeyote hajaathirika, na uweke rekodi inayokaguliwa kama mabaki ambayo mfumo wa udhibiti unayakubali badala ya dirisha lililopangwa la mlipuko mmoja mkubwa.

Mifano

Kampuni changa. Kampuni ya SaaS ya watu kumi inasafirisha kwenye shina mara nyingi kwa siku na inafunika kila uwezo mpya kwa bendera ya toleo yenye chaguo-msingi la kuzimwa. Muunganisho hatari mpya wa utozaji unazinduliwa gizani: wanaendesha trafiki ya kivuli dhidi yake kwa wiki, wakiutazama ukishughulikia maumbo halisi ya maombi bila athari kwa wateja, kisha wanautoa pete kwa pete, wakianza na akaunti zao wenyewe na wateja wachache rafiki wa beta. Viwango vya makosa vinaporuka kwenye pete ya asilimia tano, ukaguzi wa kiotomatiki unazima bendera ndani ya sekunde, na wanatatua kwa utulivu Jumatatu. Mhandisi mmoja anamiliki ibada ya kila wiki ya kusafisha bendera ili swichi zisirundikane kamwe.

Biashara kubwa. Kampuni ya malipo ya kimataifa inaratibu badiliko linalovuka huduma sita na skima ya pamoja. Kila timu inasambaza mabaki yake kwa uhuru na kwa kuoana nyuma kwa kutumia kupanua na kupunguza, kwa hiyo safu wima mpya zipo na zinaandikwa mara mbili muda mrefu kabla mtumiaji yeyote kuona kipengele. Uzinduzi unaoonekana kwa mtumiaji ni bendera moja ya jaribio, inayopitishwa kupitia pete zilizofungwa kwa afya ya bajeti ya makosa: ndani, kisha nchi moja ndogo, kisha asilimia inayopanuka, na uchambuzi wa kiotomatiki wa kanari ukipandisha au kurudisha nyuma kila hatua. Huduma ya utawala wa bendera inatekeleza wamiliki, aina, na kuisha kuvuka eneo, na mabadiliko ya kawaida yaliyoidhinishwa mapema yanapita bila bodi huku hatua ya kupunguza ya skima pekee ikipata mapitio ya binadamu. Kila mpito wa pete unaandikwa, kwa hiyo nyayo za ukaguzi zinajiandika zenyewe.

Serikali. Wakala wa kitaifa wa mafao unafanya kazi chini ya mamlaka ya kuendesha na udhibiti rasmi wa mabadiliko. Badala ya kuchukulia utoaji wa hatua kwa hatua kama hatari ya uzingatiaji, unafanya zana za utoaji kuwa chanzo cha ushahidi wa ukaguzi: kila upanuzi wa pete unarekodi mamlaka inayoidhinisha, majaribio yaliyoendesha, heshi ya mabaki, na idadi hasa ya watu waliofichuliwa. Hesabu mpya ya ustahiki inazinduliwa gizani na kuthibitishwa kwa trafiki ya kivuli dhidi ya kesi hai, kisha inatolewa kanda kwa kanda nyuma ya bendera ikiwa na kubadili kwa bluu-kijani kwa kurudisha papo hapo. Mabadiliko ya kawaida yanaainishwa mapema ili kazi ya kawaida isipange foleni nyuma ya bodi, wakati mabadiliko ya sera ya hatari kubwa bado yanapata mapitio rasmi. Rekodi ya utoaji inayokaguliwa inatimiza mfumo wa udhibiti kikamilifu zaidi kuliko toleo la zamani la robo mwaka la mlipuko mmoja mkubwa lilivyowahi.

Kesi ya biashara: sababu, ROI, na TCO

Faida ya utoaji wa hatua kwa hatua inatawaliwa na matukio yaliyoepukwa na ukali wake uliopungua. Badiliko linalofikia asilimia moja ya watumiaji na kurudi nyuma kiotomatiki linagharimu kiasi cha kukadiria, ilhali kasoro ileile kwa mfiduo kamili inaweza kumaanisha masaa ya kukatika, mwitikio wa dharura, na uharibifu wa sifa. Kutenganisha usambazaji na toleo pia hubadilisha toleo lenyewe kutoka tukio lililopangwa, lenye mfadhaiko mkubwa kuwa la kawaida, jambo linalopunguza kodi ya uratibu inayokua isiyo ya mstari na ukubwa wa timu. Kutenganisha uamuzi wa uzinduzi na usambazaji kunaziacha bidhaa na uhandisi kusonga kwa saa zao wenyewe, kwa hiyo tarehe ya uuzaji haitalazimisha kamwe kufungia msimbo kwa hatari.

Jumla ya gharama ya umiliki ni halisi lakini ndogo dhidi ya faida hiyo. Mnawekeza kwenye jukwaa la bendera, zana za uchambuzi wa kanari, vipimo vya afya vizuri vya kutosha kuweka lango juu yake, na nidhamu ya mabadiliko ya skima yanayooana nyuma. Gharama inayojirudia ni usafi wa bendera na matriki kubwa zaidi ya majaribio ambayo bendera huunda, ndiyo sababu eneo la bendera lisilosimamiwa ndiyo njia kuu ambayo mazoea haya yanakuwa ghali. Gharama ya kutoyapokea inalipwa kwa eneo la mlipuko: kila toleo ni yote-au-hakuna, kurudisha nyuma ni polepole, na usambazaji mbaya mmoja unaweza kuwaangusha kila mtu kwa wakati mmoja. Kwa mashirika yanayodhibitiwa, gawio la uzingatiaji ni la kuamua, kwa sababu utaratibu uleule unaopunguza mfiduo pia unazalisha ushahidi unaokaguliwa ambao vinginevyo ungekusanywa kwa mkono.

Mifumo mibaya na mitego

  • Usambazaji ni sawa na toleo. Kuviunganisha kunafanya kila badiliko linalomkabili mtumiaji kuwa tukio la hatari, la mara moja kwa wote bila gia ya kurudi nyuma.
  • Deni la bendera. Swichi zinazodumu kuliko madhumuni yake zinakuwa ugumu wa masharti wa kudumu ambao hakuna anayethubutu kuufuta.
  • Bendera zinazoshindwa kwa kufungua. Kukatika kwa huduma ya bendera kunakoelekea njia mpya, isiyojaribiwa kunageuza hitilafu ndogo kuwa kukatika.
  • Kurudisha nyuma kunakohitaji kutendua skima. Uhamishaji wa kuharibu uliosafirishwa na kipengele chake unakuacha huwezi kurudisha msimbo kwa usalama.
  • Upandishaji wa mkono kwa hisia. Kuendeleza utoaji kwa sababu “unaonekana vizuri” badala ya vigezo vilivyofafanuliwa vya afya na bajeti za makosa.
  • Utoaji bila mpango wa kurudisha nyuma. Kubuni jinsi ya kuwasha kipengele bila kubuni jinsi ya kukizima.
  • Bodi ya mabadiliko inayotoa muhuri tu. Mapitio yasiyokataa chochote huongeza ucheleweshaji bila kuongeza usalama na kusukuma timu kuelekea makundi makubwa.
  • Bendera za jaribio na za usalama katika mifumo tofauti. Mikusanyiko miwili ya swichi isiyokubaliana kuhusu nani yuko kapu lipi, ikiongeza mara mbili uso wa ukaguzi.

Kielelezo cha ukomavu

  • Ngazi ya 1, Kuanzisha: Usambazaji na toleo ni tukio moja. Mabadiliko yanatoka yote mara moja, kurudisha nyuma kunamaanisha kusambaza upya ujenzi wa zamani kwa mkono, na uhamishaji wa skima unaharibu na umeunganishwa na vipengele. Mfiduo wowote wa hatua kwa hatua ni wa papo hapo, wa kuitikia, na usioandikwa.
  • Ngazi ya 2, Kuendeleza: Bendera za vipengele zipo kwa baadhi ya timu na kuficha kazi isiyokamilika, lakini hazina wamiliki, aina, wala kuisha, na deni linajilimbikiza. Kanari au bluu-kijani inatumika kwa huduma chache muhimu, bila uthabiti timu kwa timu. Kurudisha nyuma kumeandikiwa hati lakini kunachochewa na binadamu, na mabadiliko ya skima yanaoana nyuma wakati mwingine tu.
  • Ngazi ya 3, Kusawazisha: Usambazaji na toleo vimetenganishwa kwa chaguo-msingi kuvuka shirika. Bendera zina aina, zinamilikiwa, na zinaisha, zikiwa na chaguo-msingi salama, kufuatia kiwango kilichoandikwa na kutekelezwa. Utoaji wa hatua kwa hatua wenye utoaji wa msingi wa pete na uchambuzi wa kiotomatiki wa kanari ndio kawaida, uhamishaji wa kupanua-na-kupunguza unahitajika, na mabadiliko ya kawaida yanapita kwenye bomba na ukusanyaji wa ushahidi wa kiotomatiki.
  • Ngazi ya 4, Kusimamia: Mchakato wa utoaji unapimwa na kudhibitiwa kwa data. Kiwango cha kushindwa kwa mabadiliko, muda wa wastani wa kurejesha, ucheleweshaji wa kurudisha nyuma, umri na idadi ya bendera, na kiwango cha chanya za uongo cha kanari vinafuatiliwa dhidi ya vipimo vya msingi na bajeti za makosa, na utoaji unawekewa lango kwenye SLO hizo (sura ya 9.1) ili upandishaji na kurudisha nyuma vitende kiotomatiki kwa ishara za afya zilizofafanuliwa. Deni la bendera linaripotiwa kama kipimo cha eneo zima na kustaafishwa kwa ratiba, na mikengeuko kutoka kiwango cha utoaji inaonekana kwenye dashibodi badala ya katika uchambuzi wa baada ya tukio.
  • Ngazi ya 5, Kuratibu: Utoaji wa hatua kwa hatua unaboreshwa mfululizo na kuunganishwa kuvuka shirika. Uzinduzi wa gizani na trafiki ya kivuli hupunguza hatari ya mabadiliko makubwa kwa kawaida, majaribio na utoaji wa usalama hushiriki mfumo mmoja wa bendera na nyayo za ukaguzi, na sera ya toleo inajirekebisha kwa hali ya bajeti ya makosa kwa wakati halisi. Rekodi ya utoaji inayokaguliwa inatimiza udhibiti wa mabadiliko (sura ya 9.3) kama zao la pembeni, na shirika linarekebisha pete, malango, na vizingiti vyake kutokana na ushahidi eneo na picha ya hatari inapohama.

Mawazo ya kujadili

  1. Kwa huduma yenu muhimu zaidi, mpaka sahihi uko wapi kati ya kurudisha nyuma kiotomatiki kunakowekewa lango la afya na uamuzi wa binadamu, na ni ishara gani ungeiamini vya kutosha kuiacha mashine itende peke yake?
  2. Je, bendera za majaribio na bendera za toleo zishiriki jukwaa moja na swichi moja ya kuzima, au kuziunganisha kunaunda hatari zaidi kuliko kunayoondoa?
  3. Mnaamuaje kati ya treni ya matoleo na toleo la kuombwa kipengele kinapovuka timu kadhaa zinazosafirisha kwa kasi tofauti?
  4. Nusu-maisha ya uaminifu ya bendera ya toleo kwenye msingi wenu wa msimbo ni ipi, na nini kingefanya kuiondoa kuwe jambo la kawaida kama kuiunda?
  5. Hali ya bajeti ya makosa inapaswa kubadilishaje nani anaruhusiwa kutoa toleo, na nani anamiliki uamuzi wa kufungia matoleo bajeti inapotumika?
  6. Katika muktadha wenu unaodhibitiwa, ni ushahidi gani mahususi ambao utoaji lazima uutoe ili mfumo wa udhibiti ukubali utoaji wa hatua kwa hatua badala ya dirisha lililopangwa la toleo?

Mambo muhimu ya kukumbuka

  • Tenganisha usambazaji na toleo. Kusafirisha msimbo na kufichua kipengele ni maamuzi tofauti, na bendera ndizo zinazoyatenganisha.
  • Toa hatua kwa hatua. Mifumo ya kanari, bluu-kijani, kuviringika, na ya msingi wa pete hupunguza eneo la mlipuko; chagua kwa kila daraja la huduma kulingana na hatari.
  • Weka lango kwenye afya na bajeti za makosa. Acha ishara zilizofafanuliwa na SLO (sura ya 9.1) ziendeshe upandishaji na kurudisha nyuma kiotomatiki, si kalenda wala matumaini.
  • Buni gia ya kurudi nyuma kwanza. Kurudisha nyuma kwa haraka, salama kunapunguza eneo la mlipuko kabla mchakato wenu wa matukio (sura ya 9.3) haujaanza kikamilifu.
  • Wape kila bendera aina, mmiliki, na tarehe ya kuisha. Bendera za toleo, uendeshaji, jaribio, na ruhusa zina muda tofauti wa kuishi; bendera zisizosimamiwa zinakuwa deni.
  • Fanya mabadiliko ya skima yaoane nyuma. Tumia kupanua na kupunguza ili utoaji na kurudisha nyuma vibaki salama kuvuka dirisha la matoleo mchanganyiko (sura ya 2.4).
  • Acha idhini zirekodi, zisizuie. Idhinisha mapema mabadiliko ya kawaida na uhifadhi mapitio ya binadamu kwa hatari kubwa, ili rekodi ya utoaji iwe ushahidi wa ukaguzi.

Marejeo na usomaji zaidi

  • Jez Humble and David Farley, Continuous Delivery: Reliable Software Releases through Build, Test, and Deployment Automation.
  • Nicole Forsgren, Jez Humble, and Gene Kim, Accelerate: The Science of Lean Software and DevOps.
  • Gene Kim, Jez Humble, Patrick Debois, and John Willis, The DevOps Handbook.
  • Betsy Beyer, Chris Jones, Jennifer Petoff, and Niall Richard Murphy (eds.), Site Reliability Engineering.
  • Pete Hodgson, “Feature Toggles (Feature Flags)” (essay on martinfowler.com).
  • Danilo Sato, “Canary Release” and Martin Fowler, “BlueGreenDeployment” (essays on martinfowler.com).
  • Sam Newman, Building Microservices: Designing Fine-Grained Systems (expand-and-contract and independent deployability).
  • Pramod Sadalage and Scott Ambler, Refactoring Databases: Evolutionary Database Design (parallel-change schema migrations).
  • Ron Kohavi, Diane Tang, and Ya Xu, Trustworthy Online Controlled Experiments: A Practical Guide to A/B Testing.
  • James Governor, “Progressive Delivery” (RedMonk, the coining of the term).