Flux
Flux is a CNCF-graduated GitOps toolkit for Kubernetes. It is a set of controllers that fetch sources, apply Kustomize or Helm, and optionally automate image updates—all driven by CRDs in the cluster. Use this section to install Flux, understand the toolkit, and isolate tenants safely.
When to use Flux
Choose Flux when you want:
- A controller-native GitOps stack defined entirely as Kubernetes APIs
- Strong Kustomize and Helm controllers as first-class paths
- Image automation that commits tag updates back to Git
- Multi-tenant isolation with least-privilege Flux instances or namespaces
If you need a rich application UI and Project model out of the box, see ArgoCD. For the shared GitOps model, read GitOps principles.
How Flux works
The Source Controller materializes artifacts (GitRepository, OCIRepository, HelmRepository, and related CRDs). Downstream controllers apply those artifacts. Image automation closes the loop by updating Git when new tags appear—so Git remains the source of truth.
What you’ll learn
| Guide | What it covers |
|---|---|
| Installation | Bootstrap Flux with flux, connect a Git repo, and verify reconciliation |
| GitOps Toolkit | Source, Kustomize, Helm, and image automation controllers and how they compose |
| Multi-Tenancy | Isolate teams with namespaces, RBAC, and tenant-scoped Flux paths |
Suggested path
- Bootstrap — Complete Installation until a sample path syncs successfully.
- Learn the APIs — Read GitOps Toolkit so you know which CRD owns which step.
- Scale safely — Apply Multi-Tenancy before onboarding multiple teams to one cluster.
Related guides
- Repository structure — layouts that work well with Flux paths and Kustomizations
- Environment promotion — promote between environments with Git
- Helm integration — HelmReleases and chart sources under Flux
- CI/CD integration — build and push in CI; let Flux reconcile deploy
FAQ
Is Flux only for Git?
No. Sources can be Git, OCI artifacts, Helm repositories, and buckets. Git is the most common source of truth for app config.
Do I need flux CLI forever?
The CLI is the usual bootstrap and debug tool. Day-2 operations are primarily CRDs; you can manage them with Git alone after install.
How is Flux different from ArgoCD?
Both implement pull-based GitOps. Flux emphasizes composable controllers and CRDs; ArgoCD emphasizes Applications, Projects, and a central UI. Pick based on operational preference, not “which is more GitOps.”