After seeing how to configure a Kubernetes cluster, we will learn how to do it using GitOps practices instead of applying manual commands and files. GitOps means managing the cluster configuration using a Git repo to store and track the YAML files that contain the configuration. We will see how to link a GitHub repo with a cluster, so that it gets updated regularly, using Flux.
This method allows us to store the configuration in a deterministic way, describing the changes to infrastructure in code. The changes can be reviewed and the cluster can be recovered from scratch or duplicated, as we will see in Chapter 9, Managing Workflows.
The following topics will be covered in this chapter:
- Understanding the description of GitOps
- Setting up Flux to control the Kubernetes cluster
- Configuring GitHub
- Making a Kubernetes cluster change through GitHub
- Working in...