Kubernetes Developer Workshop

Kubernetes Developer Workshop

Welcome to the 'Kubernetes Developer Workshop', a highly technical & hands on set of exercises intended to get you comfortable working with Kubernetes, and deploying applications within it. This workshop is very much aimed at software engineers & developers with little or zero Kubernetes experience, but wanting to get hands on and learn how to deploy and manage their code in a Kubernetes.

It should take roughly 6~8 hours to complete the main set of sections, but this is very approximate. This Kubernetes Technical Primer can act as a companion to the workshop to be read through, referenced or used to get an initial grounding on the concepts.

The installation, administration, network configuration & day-2 operations of Kubernetes itself, are not covered in this workshop. This is very much a developer focused workshop, so if you want to learn about the low level & operational side of Kubernetes you might want to look elsewhere.

The workshop focuses on an application that has already been written and built, so no application code will need to be written.

If you get stuck, the GitHub source repo for this workshop contains example code, and working files for all of the sections.

Azure Kubernetes Service (AKS)

The main workshop has been built around using Azure Kubernetes Service (AKS) as the Kubernetes environment, almost none of the content is specific to AKS, and you can follow along with any Kubernetes cluster. However, if you want to follow along with the main content, you will need access to an Azure subscription to create the AKS cluster and other resources.

Workshop sections & topics:

Some familiarity with Azure is required for sections 1 and 2, but after that the focus is on Kubernetes itself.

🍵 Optional Sections

These can be considered bonus sections, and are entirely optional. It is not expected that all these sections would be attempted, and they do not run in order.

📌 Using 'Kind' Instead of AKS

The workshop was designed with AKS in mind, but if you don't have access to Azure or prefer to do your development and testing locally, you can use Kind (Kubernetes IN Docker) to create a local Kubernetes cluster. Kind runs Kubernetes clusters locally in Docker containers, making it an excellent tool for local development and testing.

Below is a link to notes and modifications for if you want to try this path. It's not a section in the main flow of the workshop, but rather a separate page with notes and alternative instructions for each of the main sections of the workshop (above)

📖 Extra Reading & Teach Yourself Exercises

A very brief list of potential topics and Kubernetes features you may want to look at after finishing:

Kubernetes Features

Other Projects

🗝️ Archived: K3S Path

If you wish to learn how to set up and run Kubernetes on a single VM, simulating an on-premises environment, then you can follow the K3S version of this workshop. This is no longer actively maintained and will be out of date, but is kept for reference purposes. Refer to the archived K3S section for more details.