GitOps: buzzword ieħor jew avvanz fl-awtomazzjoni?

GitOps: buzzword ieħor jew avvanz fl-awtomazzjoni?

Ħafna minna, meta ninnotaw terminu ġdid ieħor fil-blogosfera jew konferenza tal-IT, illum jew għada nistaqsu mistoqsija simili: “Dan x’inhu? Buzzword oħra biss, “buzzword” jew xi ħaġa tassew denja ta’ attenzjoni mill-qrib, studju u wegħda ta’ orizzonti ġodda?” L-istess ġratli bit-terminu GitOps xi żmien ilu. Armati b'ħafna artikli eżistenti, kif ukoll l-għarfien tal-kollegi mill-kumpanija GitLab, Ippruvajt nifhem x'tip ta 'kruha hija din, u kif jista' jidher l-użu tagħha fil-prattika.

Mill-mod, dwar in-novità tat-terminu GitOps L-istħarriġ riċenti tagħna jgħid ukoll: aktar minn nofs dawk mistħarrġa għadhom ma bdewx jaħdmu bil-prinċipji tagħha.

Għalhekk, il-problema tal-ġestjoni tal-infrastruttura mhix ġdida. Ħafna fornituri tal-cloud ilhom disponibbli għall-pubbliku ġenerali għal tużżana tajba ta' snin u, jidher, imisshom jagħmlu x-xogħol tat-timijiet responsabbli għall-infrastruttura sempliċi u sempliċi. Madankollu, meta mqabbla mal-proċess tal-iżvilupp tal-applikazzjoni (fejn l-awtomazzjoni qed tilħaq livelli dejjem ġodda), il-proġetti tal-infrastruttura għadhom spiss jinvolvu ħafna kompiti manwali u jeħtieġu għarfien u kompetenza speċjalizzata, speċjalment meta jitqiesu r-rekwiżiti tal-lum għat-tolleranza tal-ħsarat, il-flessibilità, l-iskalabbiltà u l-elastiċità.

Is-servizzi tal-cloud issodisfaw dawn ir-rekwiżiti b'suċċess kbir u kienu huma li taw impetu sinifikanti għall-iżvilupp tal-approċċ IaC. Dan jinftiehem. Wara kollox, għamluha possibbli li jiġi kkonfigurat ċentru tad-dejta kompletament virtwali: m'hemm l-ebda servers fiżiċi, xtillieri jew komponenti tan-netwerk; l-infrastruttura kollha tista 'tiġi deskritta bl-użu ta' skripts u fajls ta 'konfigurazzjoni.

Allura x'inhi eżattament id-differenza? GitOps minn IaC? Kien b’din il-mistoqsija li bdejt l-investigazzjoni tiegħi. Wara li tkellimt mal-kollegi, stajt noħroġ bil-paragun li ġej:

GitOps

IaC

Il-kodiċi kollu huwa maħżun f'repożitorju git

Il-verżjoni tal-kodiċi hija fakultattiva

Kodiċi Dikjarattiv Deskrizzjoni / Idempotenza

Kemm deskrizzjonijiet dikjarattivi kif ukoll imperattivi huma aċċettabbli

Il-bidliet jidħlu fis-seħħ bl-użu tal-mekkaniżmi tat-Talba għall-Amalgamazzjoni/Talba tal-Ġbid

Ftehim, approvazzjoni u kollaborazzjoni huma fakultattivi

Il-proċess tat-tnedija tal-aġġornament huwa awtomatizzat

Il-proċess tat-tnedija tal-aġġornament mhuwiex standardizzat (awtomatiku, manwali, ikkupjar fajls, bl-użu tal-linja tal-kmand, eċċ.)

Fi kliem ieħor GitOps twieled preċiżament permezz tal-applikazzjoni tal-prinċipji IaC. L-ewwelnett, l-infrastruttura u l-konfigurazzjonijiet issa jistgħu jinħażnu bl-istess mod bħall-applikazzjonijiet. Il-kodiċi huwa faċli biex taħżen, faċli biex taqsam, tqabbel, u tuża kapaċitajiet ta 'verżjoni. Verżjonijiet, fergħat, storja. U dan kollu f’post aċċessibbli pubblikament għat-tim kollu. Għalhekk, l-użu ta 'sistemi ta' kontroll tal-verżjoni sar żvilupp kompletament naturali. B'mod partikolari, git, bħala l-aktar popolari.

Min-naħa l-oħra, sar possibbli li jiġu awtomatizzati l-proċessi tal-ġestjoni tal-infrastruttura. Issa dan jista 'jsir aktar malajr, b'mod aktar affidabbli u orħos. Barra minn hekk, il-prinċipji ta 'CI / CD kienu diġà magħrufa u popolari fost l-iżviluppaturi tas-softwer. Kien meħtieġ biss li jiġi trasferit u applikat għarfien u ħiliet diġà magħrufa għal qasam ġdid. Dawn il-prattiki, madankollu, marru lil hinn mid-definizzjoni standard ta 'Infrastruttura bħala kodiċi, għalhekk il-kunċett GitOps.

GitOps: buzzword ieħor jew avvanz fl-awtomazzjoni?

Kurżità GitOps, ovvjament, ukoll fil-fatt li mhuwiex prodott, plugin jew pjattaforma assoċjati ma 'xi bejjiegħ. Hija aktar paradigma u sett ta 'prinċipji, simili għal terminu ieħor li aħna familjari miegħu: DevOps.

Fil-kumpanija GitLab żviluppajna żewġ definizzjonijiet ta’ dan it-terminu ġdid: teoretiku u prattiku. Nibdew bit-teoretiku:

GitOps hija metodoloġija li tieħu l-aħjar prinċipji DevOps użati għall-iżvilupp tal-applikazzjoni, bħal kontroll tal-verżjoni, kollaborazzjoni, orkestrazzjoni, CI/CD, u tapplikahom għall-isfidi tal-awtomatizzazzjoni tal-ġestjoni tal-infrastruttura.

Il-proċessi kollha GitOps Naħdem bl-użu ta' għodod eżistenti. Il-kodiċi tal-infrastruttura kollu huwa maħżun fir-repożitorju git familjari, il-bidliet jgħaddu mill-istess proċess ta 'approvazzjoni bħal kwalunkwe kodiċi ta' softwer ieħor, u l-proċess ta 'tnedija huwa awtomatizzat, li jimminimizza l-iżbalji umani u jżid l-affidabbiltà u r-riproduċibilità.

Mil-lat prattiku, niddeskrivu GitOps kif ġej:

GitOps: buzzword ieħor jew avvanz fl-awtomazzjoni?

Diġà ddiskutejna l-infrastruttura bħala kodiċi bħala wieħed mill-komponenti ewlenin ta 'din il-formula. Ejja nintroduċu l-bqija tal-parteċipanti.

Merge Request (isem alternattiv Pull Request). F'termini ta 'proċess, MR hija talba biex jiġu applikati bidliet fil-kodiċi u mbagħad jingħaqdu fergħat. Iżda f'termini tal-għodod li nużaw, din hija aktar opportunità biex tinkiseb stampa sħiħa tal-bidliet kollha li qed isiru: mhux biss il-kodiċi diff miġbur minn ċertu numru ta 'commits, iżda wkoll il-kuntest, ir-riżultati tat-test, u l- riżultat finali mistenni. Jekk qed nitkellmu dwar il-kodiċi tal-infrastruttura, allura aħna interessati kif eżattament l-infrastruttura se tinbidel, kemm se jiżdiedu jew jitneħħew riżorsi ġodda, mibdula. Preferibbilment f'xi format aktar konvenjenti u faċli biex jinqara. Għall-fornituri tal-cloud, hija idea tajba li tkun taf x'se jkun l-impatt finanzjarju ta' din il-bidla.

Iżda MR huwa wkoll mezz ta’ kollaborazzjoni, interazzjoni u komunikazzjoni. Il-post fejn tidħol fis-seħħ is-sistema ta’ kontrolli u bilanċi. Minn kummenti sempliċi għal approvazzjonijiet u approvazzjonijiet formali.

Ukoll, l-aħħar komponent: CI/CD, kif diġà nafu, jagħmilha possibbli li jiġi awtomatizzat il-proċess li jsiru bidliet u ttestjar fl-infrastruttura (minn verifika sempliċi tas-sintassi għal analiżi tal-kodiċi statiku aktar kumpless). U wkoll fl-iskoperta sussegwenti ta 'drift: differenzi bejn l-istat reali u mixtieq tas-sistema. Per eżempju, bħala riżultat ta 'bidliet manwali mhux awtorizzati jew falliment tas-sistema.

Iva, it-terminu GitOps ma tintroduċix għal xi ħaġa kompletament ġdida, ma tivvintax mill-ġdid ir-rota, iżda sempliċement tapplika l-esperjenza diġà akkumulata f'qasam ġdid. Iżda dan huwa fejn tinsab is-saħħa tiegħu.

U jekk f'daqqa waħda ssir interessat kif dan kollu jidher fil-prattika, allura nistiednek tħares lejn tagħna klassi master, li fih ngħidlek pass pass kif tuża GitLab:

  • Implimenta l-prinċipji bażiċi ta 'GitOps

  • Oħloq u agħmel bidliet fl-infrastruttura tal-cloud (bl-użu tal-eżempju ta 'Yandex Cloud)

  • Awtomatizza l-iskoperta tad-drift tas-sistema mill-istat mixtieq billi tuża monitoraġġ attiv

GitOps: buzzword ieħor jew avvanz fl-awtomazzjoni?https://bit.ly/34tRpwZ

Sors: www.habr.com

Żid kumment