DevOps LEGO: kung giunsa namo gibutang ang pipeline sa mga cubes

Naghatag kami usa ka sistema sa pagdumala sa elektronik nga dokumento sa usa ka kustomer sa usa ka pasilidad. Ug dayon sa laing butang. Ug usa pa. Ug sa ikaupat, ug sa ikalima. Nadala kami pag-ayo nga nakaabot kami sa 10 nga gipang-apod-apod nga mga butang. Kini nahimo nga kusgan ... labi na kung kinahanglan namon nga ihatud ang mga pagbag-o. Isip bahin sa paghatud sa produksiyon sa circuit, 5 nga mga senaryo sa sistema sa pagsulay sa katapusan nanginahanglan 10 ka oras ug 6-7 nga mga empleyado. Ang ingon nga mga gasto nagpugos kanamo sa paghimo sa mga paghatud nga panagsa ra kutob sa mahimo. Pagkahuman sa tulo ka tuig nga operasyon, wala kami makaagwanta niini ug nakahukom sa pag-spice sa proyekto sa usa ka pinch sa DevOps.

DevOps LEGO: kung giunsa namo gibutang ang pipeline sa mga cubes

Karon ang tanan nga pagsulay mahitabo sa 3 ka oras, ug 3 ka tawo ang miapil niini: usa ka engineer ug duha ka tester. Ang mga pag-uswag tin-aw nga gipahayag sa mga numero ug nagdala sa pagkunhod sa gihigugma kaayo nga TTM. Sa among kasinatian, adunay daghang mga kostumer nga makabenepisyo gikan sa DevOps kaysa sa mga nakahibalo bahin niini. Busa, aron mapaduol ang DevOps sa mga tawo, nakahimo kami og usa ka yano nga tigtukod, nga among hisgutan sa mas detalyado sa kini nga post.

Karon sultihan ta ka sa mas detalyado. Usa ka kompanya sa enerhiya ang nag-deploy ug teknikal nga sistema sa pagdumala sa dokumento sa 10 ka dagkong pasilidad. Dili sayon ​​​​ang pag-navigate sa mga proyekto sa kini nga sukod nga wala ang DevOps, tungod kay ang usa ka dako nga bahin sa manual nga pagtrabaho labi nga naglangan sa trabaho ug usab pagkunhod sa kalidad - ang tanan nga manual nga trabaho puno sa mga sayup. Sa laing bahin, adunay mga proyekto diin adunay usa lamang ka pag-instalar, apan ang tanan kinahanglan nga magtrabaho nga awtomatiko, kanunay ug walay kapakyasan - pananglitan, ang sama nga mga sistema sa pag-agos sa dokumento sa dagkong monolithic nga mga organisasyon. Kung dili, adunay usa nga maghimo sa mga setting nga mano-mano, kalimtan ang bahin sa mga panudlo sa pag-deploy - ug ingon usa ka sangputanan, sa produksiyon ang mga setting mawala ug ang tanan mahugno.

Kasagaran kami nagtrabaho kauban ang kustomer pinaagi sa usa ka kontrata, ug sa kini nga kaso ang among mga interes magkalainlain gamay. Ang kustomer nagtan-aw sa proyekto nga higpit sa sulod sa badyet ug teknikal nga mga detalye. Mahimong lisud ipasabut kaniya ang mga benepisyo sa lainlaing mga gawi sa DevOps nga wala gilakip sa mga teknikal nga detalye. Unsa kaha kung interesado siya sa dali nga pagpagawas nga adunay dugang nga kantidad sa negosyo, o sa pagtukod sa usa ka pipeline sa automation?

Alaut, sa diha nga nagtrabaho uban sa usa ka pre-aprobahan nga gasto, kini nga interes dili kanunay nga makita. Sa among praktis, adunay usa ka kaso nga kinahanglan namon nga kuhaon ang pag-uswag sa usa ka dili maayo ug walay pagtagad nga kontraktor. Makalilisang kini: wala'y pinakabag-o nga mga source code, ang code base sa samang sistema lahi sa lain-laing mga instalasyon, ang dokumentasyon wala'y bahin, ug usa ka bahin sa makalilisang nga kalidad. Siyempre, ang kustomer walay kontrol sa source code, assembly, releases, etc.

Sa pagkakaron, dili tanan ang nahibal-an bahin sa DevOps, apan sa diha nga maghisgot kami bahin sa mga bentaha niini, bahin sa tinuud nga pagtipig sa kapanguhaan, ang mga mata sa tanan nga mga kostumer nagdan-ag. Mao nga ang gidaghanon sa mga hangyo nga naglakip sa DevOps nagkadaghan sa paglabay sa panahon. Dinhi, aron dali nga makasulti sa parehas nga sinultian sa mga kostumer, kinahanglan namon nga dali nga makonektar ang mga problema sa negosyo ug mga gawi sa DevOps nga makatabang sa paghimo sa usa ka angay nga pipeline sa pag-uswag.

Mao nga, kami adunay usa ka hugpong sa mga problema sa usa ka bahin, kami adunay kahibalo sa DevOps, mga gawi ug mga himan sa pikas. Nganong dili ipaambit ang kasinatian sa tanan?

Paghimo og DevOps constructor

Ang Agile adunay kaugalingong manifesto. Ang ITIL adunay kaugalingon nga pamaagi. Ang DevOps dili kaayo swerte - wala pa kini nakuha nga mga template ug mga sumbanan. Bisan pa pipila naningkamot pagtino sa pagkahamtong sa mga kompanya base sa usa ka assessment sa ilang kalamboan ug operational nga mga buhat.

Maayo na lang, ang bantog nga kompanya nga Gartner kaniadtong 2014 gikolekta ug gi-analisa ang yawe nga mga gawi sa DevOps ug ang mga relasyon tali kanila. Pinasukad niini, gipagawas nako ang usa ka infographic:

DevOps LEGO: kung giunsa namo gibutang ang pipeline sa mga cubes

Gikuha namo kini isip basehan sa among tigdesinyo. Ang matag usa sa upat ka mga lugar adunay usa ka hugpong sa mga himan - among gikolekta kini sa usa ka database, giila ang labing inila, giila nga mga punto sa panagsama ug angay nga mga mekanismo sa pag-optimize. Sa kinatibuk-an kini nahimo 36 ka praktis ug 115 ka himan, usa ka quarter niini mao ang open source o libre nga software. Sunod, hisgutan namon kung unsa ang among nakab-ot sa matag lugar ug, ingon usa ka pananglitan, kung giunsa kini gipatuman sa proyekto aron makamugna ang pagdumala sa teknikal nga dokumento, diin gisugdan namon ang post.

Ang mga proseso

DevOps LEGO: kung giunsa namo gibutang ang pipeline sa mga cubes

Sa bantog nga proyekto sa EDMS, ang sistema sa pagdumala sa teknikal nga dokumentasyon gipakatap sumala sa parehas nga laraw sa matag usa sa 10 nga mga butang. Ang pag-instalar naglakip sa 4 nga mga server: database server, application server, full-text indexing ug content management. Sa pag-instalar, naglihok sila sulod sa usa ka node ug nahimutang sa data center sa mga pasilidad. Ang tanan nga mga butang lahi gamay sa imprastraktura, apan kini dili makabalda sa global nga interaksyon.

Una, sumala sa mga gawi sa DevOps, gi-automate namo ang imprastraktura sa lokal, dayon among gidala ang paghatod sa test circuit, ug dayon sa produkto sa kustomer. Ang matag proseso gihimo sa matag lakang. Ang mga setting sa kalikopan gitakda sa sistema sa source code, nga gikonsiderar kung diin ang distribution kit giipon alang sa awtomatikong pag-update. Kung adunay mga pagbag-o sa pag-configure, ang mga inhenyero kinahanglan nga maghimo sa angay nga mga pagbag-o sa sistema sa pagkontrol sa bersyon - ug dayon ang awtomatikong pag-update mahitabo nga wala’y mga problema.

Salamat sa kini nga pamaagi, ang proseso sa pagsulay gipasimple kaayo. Kaniadto, ang proyekto adunay mga tester nga wala’y nahimo gawas sa pag-update sa mga stand. Karon lang sila moabut, tan-awa nga ang tanan nagtrabaho ug naghimo sa mas mapuslanon nga mga butang. Ang matag update awtomatiko nga gisulayan - gikan sa lebel sa nawong hangtod sa automation sa senaryo sa negosyo. Ang mga resulta gi-post isip bulag nga mga taho sa TestRail.

Kultura

DevOps LEGO: kung giunsa namo gibutang ang pipeline sa mga cubes

Ang padayon nga pag-eksperimento labing maayo nga gipatin-aw pinaagi sa panig-ingnan sa disenyo sa pagsulay. Ang pagsulay sa usa ka sistema nga wala pa usa ka buhat sa paglalang. Kung nagsulat ka usa ka plano sa pagsulay, kinahanglan nimo nga masabtan kung giunsa ang pagsulay sa husto ug kung unsang mga sanga ang sundon. Ug pangitaa usab ang balanse tali sa oras ug badyet aron mahibal-an ang kamalaumon nga gidaghanon sa mga tseke. Mahinungdanon nga pilion gyud ang kinahanglan nga mga pagsulay, hunahunaa kung giunsa makig-uban ang tiggamit sa sistema, tagda ang palibot ug posible nga mga hinungdan sa gawas. Imposible nga buhaton kung wala’y padayon nga pag-eksperimento.

Karon mahitungod sa kultura sa interaksyon. Kaniadto, adunay duha ka magkaatbang nga bahin - mga inhenyero ug mga developer. Ang mga developers miingon: β€œDili namo igsapayan kon unsaon kini paglusad. Mga inhenyero ka, maalamon ka, siguruha nga kini molihok nga wala’y kapakyasan". Ang mga engineer mitubag: β€œKamo nga mga developers kay walay pagtagad. Magmabinantayon ta, ug dili na kaayo kami magdula sa imong mga gipagawas. Tungod kay sa matag higayon nga hatagan nimo kami usa ka leaky code, dili klaro kanamo kung giunsa ang pakig-uban. ”. Kini usa ka isyu sa interaksyon sa kultura nga lahi ang pagkahan-ay gikan sa panan-aw sa DevOps. Dinhi, ang mga inhenyero ug mga developer bahin sa usa ka team nga naka-focus sa kanunay nga pagbag-o, apan sa samang higayon kasaligan nga software.

Sulod sa parehas nga grupo, ang mga espesyalista determinado nga magtinabangay sa usag usa. Sama sa kaniadto? Pananglitan, ang pipila ka baga nga mga instruksyon sa pag-deploy giandam, mga pahina sa 50. Gibasa kini sa engineer, wala'y nasabtan, gitunglo ug gihangyo ang developer sa alas tres sa buntag sa pagkomento. Ang developer mikomentaryo ug mitunglo usab - sa katapusan, walay usa nga nalipay. Dugang pa, natural, adunay pipila ka mga sayup, tungod kay dili nimo mahinumduman ang tanan sa mga panudlo. Ug karon ang inhenyero, kauban ang nag-develop, nagsulat usa ka script alang sa awtomatiko nga pag-deploy sa imprastraktura sa software sa aplikasyon. Kag halos pareho sila nga lenguahe nga nagahambalanay.

mga tawo

DevOps LEGO: kung giunsa namo gibutang ang pipeline sa mga cubes

Ang gidak-on sa team gitino sa sakup sa pag-update. Ang team gi-recruit atol sa pagporma sa delivery; kini naglakip niadtong interesado gikan sa general project team. Dayon ang usa ka plano sa pag-update gisulat uban sa mga responsable sa matag yugto, ug ang team nagtaho samtang kini nagpadayon. Ang tanan nga mga miyembro sa team mabaylo. Isip kabahin sa team, aduna usab kami usa ka backup developer, apan halos dili na siya kinahanglan nga magkonektar.

sa teknolohiya

DevOps LEGO: kung giunsa namo gibutang ang pipeline sa mga cubes

Sa diagram sa teknolohiya, pipila ka mga punto ang gipasiugda, apan sa ilawom niini adunay usa ka hugpong sa mga teknolohiya - mahimo nimong imantala ang usa ka tibuuk nga libro sa ilang mga paghubit. Busa atong ipasiugda ang labing makaiikag.

Imprastraktura isip Code

Karon, tingali, kini nga konsepto dili makapakurat sa bisan kinsa, apan kaniadto ang mga paghubit sa mga imprastraktura labi nga gitinguha. Ang mga inhenyero mitan-aw sa mga instruksiyon sa kalisang, ang mga palibot sa pagsulay talagsaon, sila gimahal ug gimahal, ang mga partikulo sa abog gihuyop niini.

Karong panahona walay usa nga nahadlok nga mag-eksperimento. Adunay mga sukaranan nga mga imahe sa mga virtual nga makina, adunay mga andam nga gihimo nga mga senaryo alang sa pag-deploy sa mga palibot. Ang tanang mga templates ug mga script gitipigan sa usa ka version control system ug gi-update dayon. Kaniadto, kung gikinahanglan ang paghatud sa usa ka pakete sa usa ka baruganan, usa ka gintang sa pagsumpo ang nagpakita. Karon kinahanglan ka lang magdugang usa ka linya sa source code.

Dugang sa mga script sa imprastraktura ug mga pipeline, ang Documentation as a Code approach gigamit usab para sa dokumentasyon. Salamat niini, dali nga makonektar ang mga bag-ong tawo sa proyekto, ipaila sila sa sistema base sa mga gimbuhaton nga gihulagway, pananglitan, sa plano sa pagsulay, ug usab magamit usab ang mga kaso sa pagsulay.

Padayon nga paghatud ug pagmonitor

Sa miaging artikulo bahin sa DevOps, naghisgot kami kung giunsa namon gipili ang mga himan alang sa pagpatuman sa padayon nga paghatud ug pag-monitor. Kasagaran dili kinahanglan nga isulat pag-usab ang bisan unsang butang - igo na ang paggamit sa nauna nga gisulat nga mga script, husto nga paghimo sa panagsama tali sa mga sangkap ug paghimo usa ka sagad nga console sa pagdumala. Ug ang tanan nga mga proseso mahimong ilunsad gamit ang usa ka buton o iskedyul.

Sa English adunay lain-laing mga konsepto, Continuous Delivery ug Continuous Deployment. Ang duha mahimong hubaron nga "padayon nga paghatud", apan sa tinuud adunay gamay nga kalainan tali kanila. Sa among proyekto alang sa teknikal nga pag-agos sa dokumento sa usa ka gipang-apod-apod nga kompanya sa enerhiya, hinoon, ang Delivery gigamit - kung ang pag-install alang sa produksiyon mahitabo sa mando. Sa Deployment, awtomatikong mahitabo ang pag-instalar. Ang padayon nga Paghatud sa kini nga proyekto sa kasagaran nahimo sentro nga bahin sa DevOps.

Sa kinatibuk-an, pinaagi sa pagkolekta sa pipila ka mga parameter, klaro nimong masabtan kung nganong mapuslanon ang mga gawi sa DevOps. Ug ipaabot kini sa management, kinsa ganahan kaayo sa mga numero. Ang kinatibuk-ang ihap sa mga paglansad, ang oras sa pagpatuman sa mga yugto sa script, ang bahin sa malampuson nga paglansad - kining tanan direkta nga nakaapekto sa paborito nga oras sa tanan sa merkado, nga mao, ang oras gikan sa usa ka pasalig sa sistema sa pagkontrol sa bersyon hangtod sa pagpagawas sa usa ka bersyon sa usa ka palibot sa produksiyon. Uban sa pagpatuman sa gikinahanglan nga mga himan, ang mga inhenyero nakadawat og bililhong mga timailhan pinaagi sa koreo, ug ang project manager nakakita niini sa dashboard. Niining paagiha mahimo nimong susihon dayon ang mga benepisyo sa bag-ong mga himan. Ug mahimo nimong sulayan kini sa imong imprastraktura gamit ang tigdesinyo sa DevOps.

Kinsa ang magkinahanglan sa atong Ang tigdesinyo sa DevOps?

Dili kita magpakaaron-ingnon: sa pagsugod, nahimo siyang mapuslanon kanato. Sama sa among giingon, kinahanglan nimo nga isulti ang parehas nga sinultian sa kostumer, ug sa tabang sa tigdesinyo sa DevOps dali namon nga ma-sketch ang sukaranan alang sa ingon nga panag-istoryahanay. Ang mga espesyalista sa negosyo makahimo sa pagsusi alang sa ilang kaugalingon kung unsa ang ilang gikinahanglan ug sa ingon mas paspas nga molambo. Gisulayan namon nga himuon ang tigdesinyo nga detalyado kutob sa mahimo, pagdugang usa ka hugpong sa mga paghulagway aron ang bisan kinsa nga tiggamit makasabut kung unsa ang iyang gipili.

Ang format sa tigdesinyo nagtugot kanimo sa pagkonsiderar sa kasamtangan nga mga kalamboan sa kompaniya sa mga proseso sa pagtukod ug automation. Dili kinahanglan nga gub-on ang tanan ug tukuron kini pag-usab kung makapili ka lamang og mga solusyon nga maayo ang pag-integrate sa mga kasamtangan nga proseso ug mahimo ra nga pun-on ang mga kal-ang.

Tingali ang imong pag-uswag mibalhin na sa mas taas nga lebel ug ang among himan ingon og "kapitan's" ra kaayo. Apan among nakita nga kini mapuslanon alang sa among kaugalingon ug nanghinaut nga kini mapuslanon sa pipila nga mga magbabasa. Gipahinumdoman ka namo link sa tigdesinyo - kung adunay bisan unsa, madawat nimo ang diagram pagkahuman sa pagsulod sa inisyal nga datos. Mapasalamaton kami sa imong feedback ug mga pagdugang.

Source: www.habr.com

Idugang sa usa ka comment