Torolàlana Dummies: Manangana rojo DevOps miaraka amin'ny Fitaovana Open Source

Torolàlana Dummies: Manangana rojo DevOps miaraka amin'ny Fitaovana Open Source
Manangana ny rojo DevOps voalohany anao amin'ny dingana dimy ho an'ny vao manomboka.

DevOps dia lasa fanafody ho an'ny dingana fampandrosoana miadana loatra, tapaka ary misy olana hafa. Saingy mila fahalalana kely ianao amin'ny DevOps. Izy io dia handrakotra foto-kevitra toa ny rojo DevOps sy ny fomba hamoronana dingana dimy. Tsy torolalana feno io fa "trondro" azo itarina. Andeha isika hanomboka amin'ny tantara.

Fampidirana ny DevOps

Niara-niasa tamin'ny rahona tao amin'ny Citi Group aho taloha ary namolavola fampiharana tranonkala IaaS hitantana ny fotodrafitrasa rahona Citi, saingy nahaliana ahy foana ny fomba hanatsarana ny rojom-pampandrosoana sy hanatsarana ny kolontsaina eo amin'ireo mpamorona. Greg Lavender, CTO ho an'ny Cloud Architecture and Infrastructure, dia nanoro ahy ity boky ity. Tetikasa "Phoenix". Manazava tsara ny fitsipiky ny DevOps izy io ary mamaky toy ny tantara.

Ny latabatra ao ambadika dia mampiseho hoe impiry ny orinasa no mamoaka dikan-teny vaovao:

Torolàlana Dummies: Manangana rojo DevOps miaraka amin'ny Fitaovana Open Source

Ahoana no fomba hitantanan'i Amazon, Google ary Netflix hamoaka be dia be? Ary tsotra izany: fantatr'izy ireo ny fomba hamoronana rojo DevOps saika tonga lafatra.

Niova be ny zava-drehetra taminay tao amin'ny Citi mandra-pifindranay tany amin'ny DevOps. Avy eo dia nanana tontolo samihafa ny ekipako, saingy nanao ny fandefasana amin'ny lohamilina fampandrosoana izahay. Ny mpamorona rehetra dia tsy nanana afa-tsy mpizara fampandrosoana iray mifototra amin'ny IBM WebSphere Application Server Community Edition. Niaraka tamin'ny fikasana hanatitra, "lavo" ny mpizara, ary isaky ny tsy maintsy "nampahory" nifampiraharaha izahay. Tsy ampy ihany koa ny fandrakofana kaody miaraka amin'ny andrana, fizotry ny fandefasana tanana mandany fotoana, ary tsy misy fomba hanaraha-maso ny fanaterana kaody noho ny fanampian'ny asa na zavatra takian'ny mpanjifa.

Nazava fa nisy zavatra nilaina natao maika, ary nahita mpiara-miasa nitovy hevitra aho. Nanapa-kevitra ny hamorona ny rojo DevOps voalohany miaraka izahay - nanangana milina virtoaly sy mpizara fampiharana Tomcat izy, ary nikarakara an'i Jenkins aho, ny fampidirana ny Atlassian Jira sy ny BitBucket, ary koa ny fandrakofana kaody miaraka amin'ny fitsapana. Nahomby ny tetikasa: nanao automatique tanteraka ny rojom-pampandrosoana izahay, nahatratra 100% ny ora fiasana teo amin'ny lohamilina fampivoarana, afaka nanara-maso sy nanatsara ny fandrakofana kaody tamin'ny andrana, ary ny sampana Git dia afaka mifamatotra amin'ny fandefasana Jira sy ny olana. Ary saika ny fitaovana rehetra nampiasainay hanamboarana ny rojo DevOps dia loharano misokatra.

Raha ny marina, dia nohamafisina ny rojo, satria tsy nampiharina akory ny fanamafisam-peo mandroso mampiasa Jenkins na Ansible. Nahomby anefa izahay. Angamba izany dia vokatry ny fitsipika Pareto (aka ny fitsipika 80/20).

Famaritana fohy momba ny DevOps sy CI/CD Chain

DevOps dia manana famaritana samihafa. DevOps, toa an'i Agile, dia misy taranja samihafa. Saingy ny ankamaroany dia hiombon-kevitra amin'ity famaritana manaraka ity: DevOps dia fomba iray, na tsingerin'ny fiainana, amin'ny fampivoarana rindrambaiko, ny foto-kevitra fototra amin'izany dia ny mamorona kolontsaina izay "mitovitovy amin'ny halavan'ny onjam-peo" ny mpamorona sy ny mpiasa hafa, ny asa tanana dia mandeha ho azy, samy manao izay tratry ny heriny ny tsirairay, mitombo ny fatran'ny fanaterana, mitombo ny famokaran'ny asa, mitombo ny fahafaha-manao.

Na dia tsy ampy amin'ny famoronana tontolo DevOps fotsiny aza ny fitaovana, dia tena ilaina izy ireo. Ny tena manan-danja amin'ireo dia ny fampidirana mitohy sy ny fandefasana mitohy (CI / CD). Misy dingana samihafa ao amin'ny rojo ho an'ny tontolo iainana tsirairay (oh: DEV (fampandrosoana), INT (fampidirana), TST (fitsapana), QA (fanomezan-toky ny kalitao), UAT (fitsapana fanekena ny mpampiasa), STG (fiomanana), PROD (fampiasana)) .

Ity fanamarihana ity dia mamaritra ny fomba hamoronana rojo DevOps amin'ny dingana dimy, araka ny aseho amin'ny sary etsy ambany, amin'ny fampiasana fitaovana loharano misokatra.

Torolàlana Dummies: Manangana rojo DevOps miaraka amin'ny Fitaovana Open Source

Andao hidina amin'ny raharaham-barotra.

Dingana 1: Platform CI/CD

Voalohany indrindra, mila fitaovana CI/CD ianao. Jenkins dia fitaovana CI/CD misy lisansa MIT, loharano misokatra nosoratana tamin'ny Java izay nalaza ny hetsika DevOps ary lasa fenitra de facto ho an'ny CICD.

Inona no atao hoe Jenkins? Alaivo sary an-tsaina hoe manana tontonana fanaraha-maso mahagaga ho an'ny serivisy sy fitaovana isan-karazany ianao. Amin'ny tenany manokana, fitaovana CI/CD toa an'i Jenkins dia tsy misy ilàna azy, fa miaraka amin'ny fitaovana sy serivisy samihafa, dia lasa mahery vaika.

Ankoatra an'i Jenkins, misy fitaovana loharano misokatra maro hafa, misafidiana izay.

Torolàlana Dummies: Manangana rojo DevOps miaraka amin'ny Fitaovana Open Source

Toy izao ny fizotry ny DevOps miaraka amin'ny fitaovana CI/CD

Torolàlana Dummies: Manangana rojo DevOps miaraka amin'ny Fitaovana Open Source

Manana fitaovana CI / CD ianao ao amin'ny localhost, saingy tsy mbola betsaka ny tokony hatao. Andao hiroso amin’ny dingana manaraka.

Dingana 2: Version Control

Ny fomba tsara indrindra (ary azo lazaina fa mora indrindra) hitsapana ny herin'ny fitaovana CI/CD dia ny fampidirana azy amin'ny fitaovana fitantanana loharanon-karena (SCM). Nahoana ianao no mila version control? Andeha hatao hoe manao fangatahana ianao. Soratanao amin'ny Java, Python, C++, Go, Ruby, JavaScript, na fiteny hafa izay sarety sy sarety kely. Ny zavatra soratanao dia antsoina hoe source code. Amin'ny voalohany, indrindra raha miasa irery ianao dia afaka mitahiry ny zava-drehetra ao amin'ny lahatahiry eo an-toerana. Saingy rehefa mitombo ny tetikasa ary mihamaro ny olona manatevin-daharana, mila fomba hizarana fanovana code ianao fa hisorohana ny fifandirana rehefa manambatra ny fanovana. Ary mila mamerina indray ny dikan-teny teo aloha ianao nefa tsy mampiasa backups ary mampiasa ny fomba fanaovana kopia-mametaka ho an'ny rakitra code.

Ary eto tsy misy SCM na aiza na aiza. Ny SCM dia mitahiry kaody ao anaty tahiry, mitantana ny dikan-teny ary mandrindra izany eo amin'ireo mpamorona.

Betsaka ny fitaovana SCM, fa ny Git dia mendrika ny ho lasa fenitra de facto. Manoro hevitra anao aho hampiasa azy io, fa misy safidy hafa.

Torolàlana Dummies: Manangana rojo DevOps miaraka amin'ny Fitaovana Open Source

Toy izao ny endriky ny fantsona DevOps taorian'ny nampiana ny SCM.

Torolàlana Dummies: Manangana rojo DevOps miaraka amin'ny Fitaovana Open Source

Ny fitaovana CI/CD dia afaka manao automatique ny fampiakarana sy fampidinana kaody loharano ary fiaraha-miasa amin'ny ekipa. Tsy ratsy? Fa ankehitriny ahoana no hanaovana fampiharana miasa avy amin'io, tian'ny mpampiasa an'arivony tapitrisa?

Dingana 3: Manangana fitaovana automatique

Mandeha araka ny tokony ho izy ny zava-drehetra. Afaka mampakatra kaody ianao ary manao fanovana amin'ny fifehezana loharano, ary manasa namana hiara-miasa aminao. Saingy mbola tsy manana app ianao. Mba hahatonga azy ho rindranasa an-tranonkala, dia tsy maintsy amboarina sy amboarina izy io mba hozaraina na ho azo tanterahana. (Ny fiteny fandaharana voadika toy ny JavaScript na PHP dia tsy mila atambatra.)

Mampiasà fitaovana automatique fananganana. Na inona na inona fitaovana fidinao, dia hanangona ny kaody amin'ny endrika mety izy io ary hanao automatique ny fanadiovana, ny fanangonana, ny fitiliana ary ny fandefasana. Miovaova arakaraka ny fiteny ny fitaovana fanamboarana, fa matetika ampiasaina ireto safidy open source ireto.

Torolàlana Dummies: Manangana rojo DevOps miaraka amin'ny Fitaovana Open Source

tonga lafatra! Andeha ary ampidiro ao anatin'ny fifehezana loharano ny fisie fanamboarana fitaovana automatique mba hananganana azy ireo ny fitaovana CI/CD.

Torolàlana Dummies: Manangana rojo DevOps miaraka amin'ny Fitaovana Open Source

Mahafinaritra izany. Fa aiza no hivoaka izao rehetra izao?

Dingana 4: Web Application Server

Noho izany, manana rakitra voafono ianao izay azo tanterahina na avoaka. Mba hahatonga ny fampiharana tena ilaina dia tsy maintsy manana karazana serivisy na interface tsara izy io, saingy mila apetrakao any amin'ny toerana iray.

Ny fampiharana an-tranonkala dia azo apetraka amin'ny mpizara fampiharana tranonkala. Ny mpizara fampiharana dia manome tontolo iray ahafahanao manatanteraka lojika voafono, manome interface tsara, ary mampibaribary ny serivisy tranonkala amin'ny socket. Mila mpizara HTTP sy tontolo hafa vitsivitsy ianao (milina virtoaly, ohatra) hametrahana ny lohamilina fampiharana. Amin'izao fotoana izao, andao hatao hoe miatrika izany rehetra izany ianao rehefa mandeha (na dia hiresaka momba ny kaontenera etsy ambany aza aho).

Misy mpizara fampiharana tranonkala misokatra maromaro.

Torolàlana Dummies: Manangana rojo DevOps miaraka amin'ny Fitaovana Open Source

Efa manana rojo DevOps saika miasa izahay. Asa tsara!

Torolàlana Dummies: Manangana rojo DevOps miaraka amin'ny Fitaovana Open Source

Amin'ny ankapobeny, afaka mijanona eto ianao, dia azonao atao ny mandamina azy io, fa mendrika ny hiresaka momba ny kalitaon'ny code.

Dingana 5: Fandrakofana fitsapana

Mitaky fotoana sy ezaka be ny fitsapana, saingy tsara kokoa ny mitady bibikely avy hatrany ary manatsara ny kaody mba hampifaliana ny mpampiasa farany. Ho an'ity tanjona ity dia misy fitaovana misokatra maro izay tsy hizaha toetra ny kaody, fa hanoro hevitra momba ny fanatsarana azy ihany koa. Ny ankamaroan'ny fitaovana CI/CD dia afaka miditra amin'ireo fitaovana ireo ary manara-maso ny fizotrany.

Mizara roa ny fitsapana: rafi-pitsapana ho an'ny fanoratana sy fanatanterahana fitsapana, ary fitaovana misy soso-kevitra hanatsarana ny kalitaon'ny kaody.

Rafitra fitiliana

Torolàlana Dummies: Manangana rojo DevOps miaraka amin'ny Fitaovana Open Source

Fitaovana misy toro-hevitra momba ny kalitao

Torolàlana Dummies: Manangana rojo DevOps miaraka amin'ny Fitaovana Open Source

Ny ankamaroan'ireo fitaovana sy rafitra ireo dia nosoratana ho an'ny Java, Python, ary JavaScript satria ny C++ sy C# dia manana (na dia loharano misokatra aza ny GCC).

Nampihatra ny fitaovana fandrakofana fitsapana izahay, ary ankehitriny ny fantsona DevOps dia tokony hitovy amin'ny sary amin'ny fiandohan'ny fampianarana.

Dingana fanampiny

fitoeran

Araka ny nolazaiko teo aloha, ny mpizara fampiharana dia azo apetraka amin'ny milina virtoaly na mpizara, fa ny container dia malaza kokoa.

Inona ny container? Raha fintinina, ao amin'ny milina virtoaly, matetika ny rafitra miasa dia maka toerana bebe kokoa noho ny fampiharana, ary ny fitoeran-javatra matetika dia ampy amin'ny tranomboky sy ny configuration vitsivitsy. Amin'ny toe-javatra sasany, ny milina virtoaly dia tena ilaina, fa ny fitoeran-javatra dia afaka mametraka ny fampiharana miaraka amin'ny mpizara tsy misy vidiny fanampiny.

Ho an'ny kaontenera dia matetika i Docker sy Kubernetes no raisina, na dia misy safidy hafa aza.

Torolàlana Dummies: Manangana rojo DevOps miaraka amin'ny Fitaovana Open Source

Vakio ny lahatsoratra momba ny Docker sy Kubernetes ao amin'ny opensource.com:

Fitaovana automation Middleware

Ny rojo DevOps dia mifantoka amin'ny fananganana fiaraha-miasa sy fandefasana fampiharana, saingy misy zavatra mahaliana hafa azonao atao amin'ny fitaovana DevOps. Ohatra, ampiasao ny fitaovana Infrastructure as Code (IaC), antsoina koa hoe fitaovana automation middleware. Ireo fitaovana ireo dia manampy amin'ny fametrahana ho azy, ny fitantanana ary ny asa hafa ho an'ny middleware. Ohatra, ny fitaovana automatique dia afaka maka rindranasa (server application web, database, fitaovana fanaraha-maso) miaraka amin'ny fanitsiana marina ary manosika azy ireo any amin'ny lohamilina fampiharana.

Ireto misy safidy vitsivitsy ho an'ny fitaovana automatique midadasika misokatra:

Torolàlana Dummies: Manangana rojo DevOps miaraka amin'ny Fitaovana Open Source

Ny antsipiriany ao amin'ny lahatsoratra opensource.com:

Ary ahoana?

Ity no tendron'ny iceberg. Afaka manao zavatra betsaka kokoa ny rojo DevOps. Atombohy amin'ny fitaovana CI/CD ary jereo izay azonao atao automatique mba hanamora ny asanao. Aza adino ny momba ny fitaovana fifandraisana misokatra ho an'ny fiaraha-miasa mahomby.

Ireto misy lahatsoratra DevOps tsara kokoa ho an'ny vao manomboka:

Azonao atao ihany koa ny mampiditra DevOps amin'ny fitaovana agile misokatra:

Source: www.habr.com

Add a comment