Sobes.tech
Middle

Kas ir GitOps koncepcija?

sobes.tech AI

Atbilde no AI

GitOps ir ir operacionāls ietvars, kas izmanto Git kā vienīgo patiesības avotu deklaratīvai infrastruktūras un lietojumprogrammu stāvokļa aprakstīšanai.

Galvenie principi:

  • Deklarativitāte: Sistēma ir aprakstīta deklaratīvi, piemēram, ar Kubernetes manifestiem.
  • Versijām: Sistēmas vēlamais stāvoklis tiek glabāts Git un tam ir versijas.
  • Automatizācija: Automātiskie procesi piemēro izmaiņas no Git darba vidē.
  • Saskaņotība: Īpaši aģenti pastāvīgi pārbauda sistēmas aktuālo stāvokli un to saskaņo ar vēlamo stāvokli Git.

Darba shēma:

  1. Izstrādātājs vai operators veic izmaiņas konfigurācijā vai lietojumprogrammas kodā un veic commit Git repozitorijā.
  2. CI/CD sistēma apkopo artefaktus (piemēram, Docker attēlus) un atjauno izvietošanas manifestus citā Git repozitorijā (konfigurācijas repozitorijā).
  3. GitOps aģents (piemēram, Flux CD, Argo CD) uzrauga konfigurācijas repozitoriju.
  4. Atklājot jaunu commit, aģents iegūst izmaiņas un piemēro tās mērķa vidē (piemēram, Kubernetes klasterī).
  5. Aģents pastāvīgi pārbauda, vai pašreizējais klastera stāvoklis atbilst Git aprakstītajam stāvoklim, un labo neatbilstības.

Priekšrocības:

  • Uzticamība: Sistēmas stāvokli vienmēr var atjaunot no Git.
  • Ātrums: Automatizētie procesi ļauj ātrāk izvietot izmaiņas.
  • Drošība: Visi izmaiņas tiek apstiprinātas caur Git, nodrošinot auditu un iespēju atgriezties.
  • Redzamība: Izmaiņu vēsture ir pieejama Git.
  • Atgriešanas vienkāršošana: Atgriešanās pie iepriekšējā stāvokļa ir vienkārša commit atjaunošana Git.

Instrumentu piemēri:

  • Flux CD
  • Argo CD