Advocate Platform ↗️ CNCF Graduated App Definition and Development / Continuous Integration & Delivery

Technology Guide

FluxCD

License: Apache-2.0

FluxCD Logo

Field Guide

Complete Guide

Flux is a GitOps toolkit for Kubernetes: a set of controllers that watch Git repositories (or OCI artifacts, or S3 buckets) and reconcile cluster state to match. It was built at Weaveworks, rewritten as “Flux v2” on top of the Kubernetes controller-runtime and Fluxcd’s own GitOps Toolkit, and graduated from the CNCF in 2022.

Unlike Argo CD, Flux is not one monolithic controller but a composition of purpose-built ones, each owning a CRD. source-controller fetches from Git/Helm/OCI/S3 and exposes artifacts internally. kustomize-controller and helm-controller apply those artifacts to the cluster. notification-controller handles inbound webhooks and outbound alerts to Slack/Teams/GitHub. image-reflector-controller and image-automation-controller scan container registries for new tags and write commits back to Git to trigger updates — the “image update automation” loop that makes Flux feel continuous even without a CI system in the middle. Everything is driven by Kubernetes CRDs, so multi-tenancy, RBAC, and policy work the way you already expect.

Flux has no UI of its own by default, which is the classic point of comparison with Argo CD: Argo has a great dashboard and a pull-centric app model, Flux has a controller-set-of-primitives model that composes more cleanly with other Kubernetes tooling. Both are production-grade; the choice usually comes down to whether you want a UI-first experience (Argo) or a pure-CRD GitOps plumbing layer (Flux). Flux is the engine under Weave GitOps, Azure Arc GitOps, and EKS Anywhere’s app delivery.

CNCF Project

Cloud Native Computing Foundation

Accepted: 2019-07-15
Incubating: 2021-03-12
Graduated: 2022-11-30