Problem Statement
What is GitOps?
Explanation
GitOps uses Git repository as single source of truth for declarative infrastructure and application definitions. Desired state stored in Git, automated agents continuously reconcile actual state with desired state. Changes made via pull requests, automatic deployment when merged. Rollback via Git revert.
Principles: declarative (describe what, not how), versioned and immutable (Git history), pulled automatically (agents pull changes), continuously reconciled (detect and correct drift). Tools: Flux, ArgoCD (Kubernetes-focused), Atlantis (Terraform), Jenkins X. GitOps vs traditional CD: pull model (agents pull from Git) vs push model (CI pushes to environment).
Benefits: Git as single source of truth, audit trail (Git history), easy rollback (git revert), declarative infrastructure, disaster recovery (recreate from Git). Use cases: Kubernetes deployments, multi-cluster management, infrastructure management. Understanding GitOps enables modern declarative deployment practices.