Flux reconciles a cluster against Git the same way ArgoCD does, but as a set of Kubernetes-native CRDs and
controllers rather than a separate server + UI — everything is a Kubernetes object you can kubectl get.
Bootstrap
flux check --preVerifies the cluster meets Flux's prerequisites before installing anything.
flux bootstrap github --owner=my-org --repository=fleet-infra --branch=main --path=clusters/productionInstalls Flux's controllers and commits their manifests to a Git repo, wiring the cluster to reconcile from that path going forward.
flux checkVerifies all Flux controllers are installed and healthy after bootstrap.
Sources
flux get sources gitLists GitRepository sources and their last successful fetch.
flux create source git my-app --url=https://github.com/org/my-app --branch=mainRegisters a Git repository as a source Flux will poll for changes.
flux get sources helmLists HelmRepository sources.
Kustomization
apiVersion: kustomize.toolkit.fluxcd.io/v1
kind: Kustomization
metadata:
name: my-app
namespace: flux-system
spec:
interval: 5m
path: ./k8s
prune: true
sourceRef:
kind: GitRepository
name: my-appflux get kustomizationsLists Kustomization resources and their sync/ready status.
flux reconcile kustomization my-appForces an immediate reconcile instead of waiting for the next poll interval — the fastest way to pick up a Git change right now.
HelmRelease
apiVersion: helm.toolkit.fluxcd.io/v2
kind: HelmRelease
metadata:
name: my-app
namespace: default
spec:
interval: 10m
chart:
spec:
chart: my-app
sourceRef:
kind: HelmRepository
name: my-repo
values:
replicaCount: 3flux get helmreleasesLists HelmRelease resources and their status.
flux reconcile helmrelease my-appForces an immediate Helm reconcile.
Suspending & Resuming
flux suspend kustomization my-appPauses reconciliation — useful while debugging, so Flux doesn't fight manual changes mid-investigation.
flux resume kustomization my-appResumes reconciliation after a suspend.
Logs
flux logs --followStreams logs across all Flux controllers, tagged by which controller and object emitted each line.
flux logs --level=errorFilters to error-level log lines only, across all controllers.
Flux vs. ArgoCD
Both implement the same GitOps pull model. Flux is a set of Kubernetes CRDs/controllers with no separate UI by default (kubectl is the primary interface, plus an optional dashboard). ArgoCD ships a server and web UI as core to the product, with the CLI as an alternative interface. Flux tends to compose more granularly (separate controllers for sources, Kustomize, Helm, notifications); ArgoCD centralizes more in one application model.