NEW
GitOps manages infrastructure and applications by using Git as the single source of truth with automated, pull-based reconciliation.
DESCRIPTION
GitOps applies Git-centric workflows to declaratively manage systems. Desired state lives in Git, changes occur via pull requests, and controllers continuously reconcile actual state. It improves security through audit trails, reduces human error, and enables fast rollbacks. Popular controllers include Flux and Argo CD for Kubernetes. GitOps fosters collaboration by leveraging familiar developer tools and review processes. Policies-as-code enforce governance in pipelines and clusters. While rooted in Kubernetes, GitOps concepts extend to other platforms.
ALTERNATIVE DEFINITIONS
Wikipedia
GitOps is a set of practices that uses Git pull requests to manage infrastructure and applications.
Focuses on Git pull requests as the change mechanism.
CNCF GitOps Working Group
GitOps is a set of principles for operating and managing software using Git as the source of truth and a set of practices to apply these principles.
Defines principles and practices emphasizing Git as source of truth.
Red Hat
GitOps is a way to do continuous delivery by using Git as the single source of truth for declarative infrastructure and applications.
Connects GitOps to continuous delivery and declarative configuration.
Weaveworks
GitOps is an operational model that applies Git-centric workflows to manage infrastructure and application configurations declaratively.
Highlights operational model and declarative Git-centric workflows.
RELATED TERMS
Kubernetes Continuous Delivery Flux Argo CD Declarative Configuration Pull-based Deployments Infrastructure as Code Governance as Code CI-CD Reconciliation Loop
COMPETING TERMS
Traditional CI/CD
KNOWLEDGE AREAS
Platform & Tooling Cloud Software Engineering Infrastructure Data Engineering
TARGET AUDIENCE
DevOps Engineer Cloud Architect Software Developer MLOps Engineer AI Engineer Data Engineer Enterprise Architect
EXTERNAL SOURCES
- Wikipedia - GitOps
- Argo CD - GitOps controller documentation
- Flux - Flux GitOps framework docs
- Microsoft - Azure Arc GitOps concepts
- Google Cloud - Google Cloud GitOps guidance
TOP QUESTIONS
How does GitOps differ from traditional CI/CD?
GitOps uses declarative state in Git and pull-based controllers to reconcile environments. Traditional CI/CD often pushes changes directly to targets. GitOps improves auditability and rollback.
Category: Misunderstanding
What problems does GitOps solve?
It centralizes configuration, standardizes change control, and reduces drift. It accelerates deployment and improves reliability via continuous reconciliation and version history.
Category: Relevancy
Is GitOps only for Kubernetes?
While popular in Kubernetes, GitOps principles apply to other platforms. Any system supporting declarative desired state and reconciliation can adopt GitOps.
Category: Opinion
What are common GitOps tooling choices?
Flux and Argo CD are leading controllers for Kubernetes. Terraform, Helm, and policy-as-code tools often complement GitOps workflows.
Category: Overview
What are typical GitOps anti-patterns?
Mixing imperative scripts with declarative repos, bypassing pull requests, and storing secrets in Git break GitOps principles and increase risk.
Category: Mistakes
How do you secure GitOps pipelines?
Use signed commits, enforce branch protections, and integrate admission controls. Store secrets in managers and restrict controller permissions.
Category: Risk
How does GitOps support compliance and audits?
Git history documents every change. Pull requests and approvals create audit trails. Policy checks enforce standards before merging.
Category: Requirements
What metrics indicate successful GitOps adoption?
Reduced mean time to recovery, fewer configuration incidents, faster rollout times, and increased change frequency with lower failure rates.
Category: Testing
Can GitOps manage application feature flags?
Yes, by storing flag configurations declaratively and reconciling them. However, runtime toggling usually requires application-level controls.
Category: Example