kubernetes-the-hard-way-on-azure

Bootstrap Kubernetes the hard way on Azure. With semi automated and fully automated provisioning scripts.

View on GitHub

This tutorial project is a modified version of the original developed by Kelsey Hightower.

Kubernetes The Hard Way on Azure

This tutorial project walks you through setting up Kubernetes the hard way. The motivation for this tutorial project is to understand what it takes to set up a fully functioning Kubernetes cluster while utilizing the network, storage and compute resources provided by Microsoft Azure. Even though this tutorial project has deployment automation scripts, it is not meant for people looking to find Microsoft and/or community supported alternative to bring up a Kubernetes cluster in Azure. If that’s you then check out Azure Kubernetes Service, or the Getting Started Guides.

Kubernetes The Hard Way on Azure is optimized for learning, which means taking a not so long route to ensure you understand each task required to bootstrap a Kubernetes cluster. The original long route is shortened with the help of Terraform and Bash shell scripts for semi automated deployment steps (fun for learning) and also fully automated end to end deployment along with scaling of Kubernetes cluster on Azure.

This tutorial project is a modified version of the original developed by Kelsey Hightower. While the original one uses GCP as the platform to deploy kubernetes, this project uses Azure. If you prefer the GCP version, refer to the original one here. There are some more differences to the original and they are documented here.

The results of this tutorial should not be viewed as production ready, and may receive limited support from the community, but don’t let that stop you from learning!

Creative Commons License
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.

Target Audience

The target audience for this tutorial is

Cluster Details

Kubernetes The Hard Way on Azure guides you through bootstrapping a highly available Kubernetes cluster with end-to-end encryption between components and RBAC authentication.

Target deployment architecture

The target of this tutotial project is to achieve the following deployment topology:

topology

Labs

This tutorial project assumes you have access to the Microsoft Azure. While Azure is used for basic infrastructure requirements, the lessons learned in this tutorial can be applied to other platforms.

Project structure

This tutorial project has the following folder structure: