Introduction to Flux

Learn how Flux helps us manage workloads deployed to Kubernetes.

Flux CD for GitOps

Press + to interact

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.

Press + to interact
Flux custom resource definitions
Flux custom resource definitions

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 ...