- Lab
- A Cloud Guru
Kubernetes GitOps with Flux
GitOps means managing your environment using the well-known tool Git as a source of truth. In this lab, you will be able to experiment with GitOps by deploying an application to Kubernetes using a GitOps tool called Flux.
Path Info
Table of Contents
-
Challenge
Create a GitHub Personal Access Token
To bootstrap the repository, you can use a GitHub Personal Access Token (PAT) to authenticate with GitHub. The PAT will need
repo
permissions.Hint: You can create a PAT on github.com. Select the account dropdown at the top right, then Settings > Developer settings > ((Personal access tokens** > Generate new token. Check the repo scope to provide the appropriate permissions.
When you are done, copy the PAT. You will need it for the next objective!
-
Challenge
Bootstrap the Git Repository
Bootstrap the GitHub repository with Flux. You will need to supply your GitHub username and the personal access token (PAT). You can use a repository name such as
acg-flux-lab
, but this can really be any name you want. Flux is already installed, so you do not need to install it.This process will create the repository in GitHub, so you may need to use a different name if you already have a repository by that name (such as if you go through this lab more than once).
Hint: The command looks like this:
flux bootstrap github --owner=<GitHub Username> --repository=acg-flux-lab --branch=main --path=./clusters/my-cluster --personal
-
Challenge
Create a Deployment via the GitHub Repository Using Flux
Create a YAML file in the GitHub repository under
clusters/my-cluster
. Name this fileturtle-deployment.yaml
. Within the file, put a YAML manifest for a Deployment calledturtle-deployment
. Use the Deployment to run3
replicas with thenginx:stable
image.You can put the Deployment in the
default
namespace, but you will need to specify the namespace in the manifest withmetadata.namespace
.Commit the file, and after a few moments the Deployment should appear in your cluster!
What's a lab?
Hands-on Labs are real environments created by industry experts to help you learn. These environments help you gain knowledge and experience, practice without compromising your system, test without risk, destroy without fear, and let you learn from your mistakes. Hands-on Labs: practice your skills before delivering in the real world.
Provided environment for hands-on practice
We will provide the credentials and environment necessary for you to practice right within your browser.
Guided walkthrough
Follow along with the author’s guided walkthrough and build something new in your provided environment!
Did you know?
On average, you retain 75% more of your learning if you get time for practice.