Introduction to Flux
Learn how Flux helps us manage workloads deployed to Kubernetes.
Flux CD for GitOps
Flux CD is a great tool for developers that use GitOps to manage workloads that run on Kubernetes. The tool applies the GitOps pattern to keep resources within a Kubernetes cluster synced with the desired state stored in a Git repository. Flux CD performs synchronization in the cluster by automating application deployments when changes are made to the desired state and then keeping the cluster reconciled with the desired state to avoid drift. Once installed and configured, Flux simplifies continuous delivery processes for deploying cloud-native applications to Kubernetes.
How Flux works
When installed on a Kubernetes cluster, Flux extends the Kubernetes API with custom resource definitions that define resources used by Flux controllers also deployed within the cluster. These custom resource definitions allow developers to create resources that provide Flux with the configuration required to manage workloads running on the cluster with GitOps. After these resources are specified and applied, Flux controllers consult the configurations they provide to apply and sync cluster resources such as deployments and services.
Source
The desired state for a system is obtained by Flux through a source. A source specifies the details on how to connect to a repository that stores the desired state.
Flux provides support for several types of sources including:
Git repositories
Helm charts ...