⏱ 6 min. lezen GitOps concepten

GitOps uitgelegd: Git als enige bron van waarheid

GitOps klinkt abstract, maar het idee is simpel: Git bepaalt hoe je infrastructuur eruitziet, en een operator zorgt dat het cluster daaraan blijft voldoen.

GitOps is geen tool, maar een werkwijze. De kernregel: de gewenste staat van je systeem staat volledig gedeclareerd in een Git-repository, en die repository is de enige bron van waarheid.

Git-repository gewenste staat (YAML) GitOps-operator bijv. Argo CD — pull-model Cluster (huidige staat) vergelijkt & herstelt drift reconciliation loop

Push versus pull

Bij een traditionele (push-based) pipeline stuurt een CI-server actief wijzigingen naar het cluster: "ik ga nu deployen." Bij GitOps draait het om (meestal) pull-based deployment: een operator die ín het cluster draait, houdt de Git-repository in de gaten en past zelf wijzigingen toe zodra die daar verschijnen. Dat is veiliger, want het cluster hoeft geen inkomende deploy-credentials aan de buitenwereld bloot te stellen.

De reconciliation loop

Dit is het hart van GitOps. De operator vergelijkt continu (of periodiek) de staat die in Git staat beschreven met de daadwerkelijke staat van het cluster. Zijn die gelijk? Niets doen. Wijkt de praktijk af (bijvoorbeeld omdat iemand handmatig iets aanpaste met kubectl edit)? Dan wordt dat gezien als drift, en de operator herstelt het cluster automatisch naar wat Git zegt.

Waarom dit waardevol is

  • Auditeerbaarheid — elke wijziging staat in de Git-historie, met wie, wat en wanneer.
  • Reproduceerbaarheid — een cluster kan volledig opnieuw worden opgebouwd vanuit dezelfde Git-staat.
  • Zelfherstel — handmatige, ongewenste wijzigingen worden automatisch teruggedraaid.
Examentip: Zie je de term "drift" of "reconciliation loop" in een examenvraag, dan gaat het vrijwel altijd over GitOps of Argo CD.