GitOps: en anert Buzzword oder en Duerchbroch an der Automatioun?

GitOps: en anert Buzzword oder en Duerchbroch an der Automatioun?

Déi meescht vun eis, bemierken en aneren neie Begrëff an der IT Blogosphär oder Konferenz, stellen fréier oder spéider eng ähnlech Fro: "Wat ass dat? Just en anert Buzzword, e "Buzzword" oder eppes wierklech wäertvoll Opmierksamkeet, Studie a Verspriechen vun neien Horizont? Datselwecht ass fir mech geschitt mam Begrëff GitOps virun enger Zäit. Bewaffnet mat villen existéierenden Artikelen, wéi och d'Wëssen vun de Kollegen aus der Firma GitLab, Ech hu probéiert erauszefannen wat fir eng Béischt dëst ass, a wéi seng Notzung an der Praxis ausgesäit.

Iwwregens, iwwer d'Neiheet vum Begrëff GitOps Eis rezent Ëmfro seet och: Méi wéi d'Halschent vun de Befroten hunn nach net ugefaang mat senge Prinzipien ze schaffen.

Also, de Problem vun der Infrastrukturmanagement ass net nei. Vill Cloud Ubidder sinn der Allgemengheet fir eng gutt Dose Joer verfügbar a, et schéngt, sollten d'Aarbecht vun den Teams verantwortlech fir d'Infrastruktur einfach an einfach gemaach hunn. Wéi och ëmmer, am Verglach zum Applikatiounsentwécklungsprozess (wou d'Automatisatioun ëmmer nei Niveauen erreecht), involvéieren Infrastrukturprojeten ëmmer nach vill manuell Aufgaben a erfuerderen spezialiséiert Wëssen an Expertise, besonnesch no den haitegen Ufuerderunge fir Feelertoleranz, Flexibilitéit, Skalierbarkeet an Elastizitéit.

Cloud Servicer hunn dës Ufuerderunge ganz erfollegräich erfëllt an et waren si déi e wesentlechen Impuls fir d'Entwécklung vun der Approche ginn IaC. Dëst ass verständlech. Nodeems se et méiglech gemaach hunn e komplett virtuellen Datenzenter ze konfiguréieren: et gi keng physesch Serveren, Racken oder Netzwierkkomponenten; déi ganz Infrastruktur kann mat Skripte a Konfiguratiounsdateien beschriwwe ginn.

Also wat ass genau den Ënnerscheed? GitOps от IaC? Et war mat dëser Fro datt ech meng Enquête ugefaang hunn. Nodeem ech mat Kollege geschwat hunn, konnt ech mat de folgende Verglach kommen:

GitOps

IaC

All Code gëtt an engem Git Repository gespäichert

Code Versioun ass fakultativ

Deklarativ Code Beschreiwung / Idempotenz

Béid deklarativ an imperativ Beschreiwunge sinn akzeptabel

Ännerungen trëtt a Kraaft mat de Merge Request / Pull Request Mechanismen

Accord, Genehmegung an Zesummenaarbecht sinn fakultativ

Den Update Ausrollprozess ass automatiséiert

Den Update Ausrollprozess ass net standardiséiert (automatesch, manuell, Dateien kopéieren, d'Kommandozeil benotzen, asw.)

An anere Wierder GitOps gouf genee duerch d'Applikatioun vun de Prinzipien gebuer IaC. Als éischt kënnen d'Infrastrukturen an d'Konfiguratiounen elo op déiselwecht Aart a Weis wéi Applikatiounen gespäichert ginn. De Code ass einfach ze späicheren, einfach ze deelen, ze vergläichen a Versiounsfäegkeeten ze benotzen. Versiounen, Filialen, Geschicht. An dat alles op enger Plaz, déi fir d'ganz Equipe ëffentlech zougänglech ass. Dofir ass d'Benotzung vu Versiounskontrollsystemer eng ganz natierlech Entwécklung ginn. Besonnesch git, als déi populärste.

Op der anerer Säit gouf et méiglech Infrastrukturmanagementprozesser ze automatiséieren. Elo kann dat méi séier, méi zouverlässeg a méi bëlleg gemaach ginn. Ausserdeem waren d'Prinzipien vum CI / CD scho bekannt a populär bei Softwareentwéckler. Et war nëmmen néideg schonn bekannt Wëssen a Kompetenzen zu engem neie Beräich ze Transfert an ëmsetzen. Dës Praktiken sinn awer iwwer d'Standarddefinitioun vun der Infrastruktur als Code gaangen, dofir d'Konzept GitOps.

GitOps: en anert Buzzword oder en Duerchbroch an der Automatioun?

Virwëtz GitOps, natierlech, och an der Tatsaach, datt et net e Produit, Plugin oder Plattform mat all Verkeefer assoziéiert ass. Et ass méi e Paradigma an eng Rei vu Prinzipien, ähnlech wéi en anere Begrëff mat deem mir vertraut sinn: DevOps.

An der Gesellschaft GitLab mir hunn zwou Definitioune vun dësem neie Begrëff entwéckelt: theoretesch a praktesch. Loosst eis mat der theoretesch ufänken:

GitOps ass eng Methodik déi déi bescht DevOps Prinzipien benotzt fir Applikatiounsentwécklung, wéi Versiounskontroll, Zesummenaarbecht, Orchestratioun, CI / CD, an applizéiert se op d'Erausfuerderunge vun der Automatiséierung vun der Infrastrukturmanagement.

All Prozesser GitOps Ech schaffen mat existéierenden Tools. All Infrastrukturcode gëtt am scho vertraute Git-Repository gespäichert, Ännerungen ginn duerch dee selwechte Genehmegungsprozess wéi all anere Programmcode, an de Rolloutprozess ass automatiséiert, wat eis erlaabt mënschlech Feeler ze minimiséieren, Zouverlässegkeet a Reproduzibilitéit ze erhéijen.

Aus enger praktescher Siicht beschreiwen mir GitOps wéi folgend:

GitOps: en anert Buzzword oder en Duerchbroch an der Automatioun?

Mir hu scho Infrastruktur als Code als ee vun de Schlësselkomponente vun dëser Formel diskutéiert. Loosst eis de Rescht vun de Participanten virstellen.

Merge Request (alternativen Numm Pull Request). Am Prozessbedingunge ass MR eng Ufro fir Code Ännerungen z'applizéieren an dann Filialen ze fusionéieren. Awer wat d'Tools ugeet, déi mir benotzen, ass dëst méi eng Geleeënheet fir e komplett Bild vun all den Ännerungen ze kréien, déi gemaach ginn: net nëmmen de Code Diff gesammelt aus enger bestëmmter Unzuel vun Engagementer, awer och de Kontext, Testresultater, an final erwaart Resultat. Wa mir iwwer Infrastrukturcode schwätzen, da si mir interesséiert wéi genau d'Infrastruktur wäert änneren, wéi vill nei Ressourcen derbäigesat oder ewechgeholl ginn, geännert ginn. Am léifsten an e puer méi bequem an einfach ze liesen Format. Fir Cloud Provider ass et eng gutt Iddi ze wëssen wat de finanziellen Impakt vun dëser Ännerung wäert sinn.

Awer MR ass och e Mëttel fir Zesummenaarbecht, Interaktioun a Kommunikatioun. D'Plaz wou de System vu Schecken a Salden an d'Spill kënnt. Vun einfache Kommentaren bis formell Genehmegungen an Genehmegungen.

Gutt, déi lescht Komponent: CI / CD, wéi mir scho wëssen, mécht et méiglech de Prozess vun der Infrastrukturännerungen an Testen ze automatiséieren (vun einfacher Syntaxprüfung bis méi komplex statesch Codeanalyse). An och an der spéider Detektioun vum Drift: Differenzen tëscht dem reellen a gewënschten Zoustand vum System. Zum Beispill, als Resultat vun onerlaabten manuell Ännerungen oder System Echec.

Jo, de Begrëff GitOps stellt eis näischt komplett Neies vir, erfënnt d'Rad net nei, awer applizéiert einfach déi scho cumuléiert Erfahrung an engem neie Gebitt. Awer hei läit seng Kraaft.

A wann Dir op eemol interesséiert sidd wéi dat alles an der Praxis ausgesäit, dann invitéieren ech Iech op eis ze kucken Meeschterschoul, an deem ech Iech Schrëtt fir Schrëtt soen wéi Dir GitLab benotzt:

  • Ëmsetzen d'Basisprinzipien vu GitOps

  • Erstellt a maacht Ännerungen an der Cloudinfrastruktur (mat dem Beispill vun Yandex Cloud)

  • Automatiséiert Erkennung vum Systemdrift aus engem gewënschten Zoustand mat aktiver Iwwerwaachung

GitOps: en anert Buzzword oder en Duerchbroch an der Automatioun?https://bit.ly/34tRpwZ

Source: will.com

Setzt e Commentaire