Installing VMware Fusion
Kubernetes on your Laptop (3 part series)
I’m preparing to renew my CKA and CKS certifications, and to practice, I’ve decided to set up a local Kubernetes cluster as a lab environment on my laptop to work with control plane components which isn’t be possible in a managed Kubernetes environment like GKE, EKS, or AKS. There are other local Kubernetes options like Minikube, Kind, Docker Desktop, or Rancher Desktop but you may run into some limitations especially as you try to prepare for the CKA and CKS exams. I wanted to have a full-blown Kubernetes cluster running locally without any restrictions.
Continue readingPublishing Helm Charts to GitHub Container Registry
So you have a local Helm chart that you want to share with others?
In this quick tutorial, I’ll walk you through the process of publishing Helm charts to your very own Helm repository using GitHub Container Registry and GitHub Pages using GitHub Actions.
Before you begin, make sure you have the following prerequisites:
- A GitHub account
- A GitHub repository with your Helm chart
- GitHub CLI installed on your local machine
- Bash shell
GitHub Pages Setup
We will use GitHub Pages to host the Helm repository. So you will need to create a new branch called gh-pages. This branch will contain the Helm chart binaries and a README.md file with instructions on how to use the helm repo and install its charts.
Continue readingPublishing Container Images to GitHub Container Registry
Do you have a container image that you want to share with the world? GitHub Container Registry (GHCR) is a great place to store and share your container images. In this tutorial, we’ll show you how to publish container images to GHCR using GitHub Actions.
Start by creating a new repository on GitHub or cloning an existing one. Then make sure you have a Dockerfile in the root of your repository.
Continue readingStrengthening the Secure Supply Chain
This post will walk you through a demo I presented at the SCaLE21X conference. The session is titled, Strengthening the Secure Supply Chain with Project Copacetic, Eraser, and FluxCD and this step-by-step guide will enable you do it on your own.
Prerequisites
To begin, you will need to have the following:
- Docker Desktop to run a Kubernetes cluster locally
- Git to clone the demo repository
- GitHub account
We will also be using the following tools:
Continue readingBootstrap your GitOps-enabled AKS cluster with Terraform: A code sample using the Flux v2 K8s Extension
In my previous posts, we learned how to get started with GitOps on AKS using the K8s extension for AKS.
Then, we took a look at the Flux CLI and explored how it can be used to bootstrap your cluster and generate FluxCD manifests so that we can use GitOps to implement GitOps 🤯, and implemented Flux’s image update automation capability.
From there, we built on the concept of image update automation, and showed you how you can use Flagger to automate canary deployments.
Continue readingProgressive Delivery on AKS: A Step-by-Step Guide using Flagger with Istio and FluxCD
In my previous post, we setup an Azure Kubernetes Service (AKS) cluster to automatically update images based on new image tags in a container registry. As soon as a new image was pushed to the registry the image was immediately updated.
But what if you don’t want an agent automatically pushing out new images without some sort of testing? 🤔
In this article, we’ll build upon Flux’s image update automation capability and add Flagger to implement a canary release strategy.
Continue readingAutomating Image Updates with FluxCD on AKS
In my previous post, we walked through the setup of FluxCD on AKS via AKS extensions. In this article, we’ll go a bit deeper and take a look at how you can use FluxCD to automate image updates in your AKS cluster.
The goal here is to streamline the process of updating your application deployments in your cluster.
Here is our intended workflow:
- Modify application code, then commit and push the change to the repo.
- Create a new release in GitHub which kicks off a release workflow to build and push an updated container image to a GitHub Container Registry.
- FluxCD detects the new image and updates the image tag in the cluster.
- FluxCD rolls out the new image to the cluster.
We’ll use same AKS store demo app we used in the previous post, but this time we’ll go a bit faster.
Continue reading