Kubernetes the Hard Way

By William Boyd

Let's learn to bootstrap a Kubernetes cluster without installers or scripts.

17 hours
  • 64 Lessons
  • 11 Hands-On Labs

About the course

Kubernetes is a powerful tool for container orchestration. There are several different ways to bootstrap a Kubernetes cluster, many of which make the process easier by abstracting some of the details.

Kelsey Hightower’s open-source guide, Kubernetes the Hard Way, goes through how to bootstrap a Kubernetes cluster without the use of installers or scripts. While there is nothing wrong with using installers or scripts, this approach gives you a deeper understanding of the details of Kubernetes. This course is an adaptation of the Kubernetes the Hard Way guide. It is intended to walk you through it and provide some additional explanation of each step along the way. NOTE: Micro Instances are recommended for use in hands-on activities.

  • Chapter 1 4 Lessons Introduction 15:23

    An Important Note About A Cloud Guru and Linux Academy Courses

    1:19

    About the Course Author

    0:28

    Course Features and Tools

    7:06

    Course Introduction

    6:30
  • Chapter 2 3 Lessons Getting Started 20:29

    What Will the Kubernetes Cluster Architecture Look Like?

    6:59

    Setting Up Your Cloud Servers

    9:27

    Client Tools

    4:03
  • Chapter 3 7 Lessons Provisioning the CA and Generating TLS Certificates 1:32:17

    Why Do We Need a CA and TLS Certificates?

    4:40

    Provisioning the Certificate Authority

    3:37

    Generating Client Certificates

    9:01

    Generating the Kubernetes API Server Certificate

    5:47

    Generating the Service Account Key Pair

    1:56

    Distributing the Certificate Files

    7:16

    Creating a Certificate Authority and TLS Certificates for Kubernetes

    1:00:00 Hands-On Lab
  • Chapter 4 4 Lessons Generating Kubernetes Configuration Files for Authentication 1:19:36

    What are Kubeconfigs and Why Do We Need Them?

    2:38

    Generating Kubeconfigs for the Cluster

    12:45

    Distributing the Kubeconfig Files

    4:13

    Generating Kubeconfigs for a New Kubernetes Cluster

    1:00:00 Hands-On Lab
  • Chapter 5 3 Lessons Generating the Data Encryption Config and Key 1:07:08

    What is the Data Encryption Config in Kubernetes?

    1:46

    Generating the Data Encryption Config

    5:22

    Generating a Data Encryption Config for Kubernetes

    1:00:00 Hands-On Lab
  • Chapter 6 3 Lessons Bootstrapping the etcd Cluster 1:48:05

    What is etcd?

    3:54

    Creating the etcd Cluster

    14:11

    Bootstrapping an etcd Cluster for Kubernetes

    1:30:00 Hands-On Lab
  • Chapter 7 11 Lessons Bootstrapping the Kubernetes Control Plane 3:25:16

    What is the Kubernetes Control Plane?

    7:56

    Control Plane Architecture Overview

    3:19

    Installing Kubernetes Control Plane Binaries

    5:14

    Setting up the Kubernetes API Server

    8:39

    Setting up the Kubernetes Controller Manager

    3:08

    Setting up the Kubernetes Scheduler

    7:08

    Enable HTTP Health Checks

    8:24

    Set up RBAC for Kubelet Authorization

    4:02

    Setting up a Kube API Frontend Load Balancer

    7:26

    Bootstrapping a Kubernetes Control Plane

    1:30:00 Hands-On Lab

    Setting Up a Frontend Load Balancer for the Kubernetes API

    1:00:00 Hands-On Lab
  • Chapter 8 7 Lessons Bootstrapping the Kubernetes Worker Nodes 1:56:24

    What are the Kubernetes Worker Nodes?

    3:40

    Worker Node Architecture Overview

    1:06

    Installing Worker Node Binaries

    6:27

    Configuring Containerd

    1:54

    Configuring Kubelet

    7:20

    Configuring Kube-Proxy

    5:57

    Bootstrapping Kubernetes Worker Nodes

    1:30:00 Hands-On Lab
  • Chapter 9 3 Lessons Configuring kubectl for Remote Access 1:09:30

    Kubernetes Remote Access and kubectl

    2:59

    Configuring Kubectl for Remote Access

    6:31

    Configuring Kubectl to Access a Remote Cluster

    1:00:00 Hands-On Lab
  • Chapter 10 5 Lessons Networking 1:29:20

    The Kubernetes Networking Model

    7:23

    Cluster Network Architecture

    7:43

    Installing Weave Net

    12:13

    Cleanup

    2:01

    Setting Up Kubernetes Networking with Weave Net

    1:00:00 Hands-On Lab
  • Chapter 11 3 Lessons Deploying the DNS Cluster Add-on 1:08:59

    DNS In a Kubernetes Pod Network

    2:49

    Deploying Kube-dns to the Cluster

    6:10

    Deploying kube-dns in a Kubernetes Cluster

    1:00:00 Hands-On Lab
  • Chapter 12 9 Lessons Smoke Test 1:48:55

    Smoke Testing the Cluster

    1:48

    Smoke Testing Data Encryption

    3:26

    Smoke Testing Deployments

    1:54

    Smoke Testing Port Forwarding

    3:17

    Smoke Testing Logs

    1:56

    Smoke Testing Exec

    1:50

    Smoke Testing Services

    2:57

    Smoke Testing Cleanup

    1:47

    Smoke Testing a Kubernetes Cluster

    1:30:00 Hands-On Lab
  • Chapter 13 2 Lessons Wrap-Up 5:58

    Kubernetes the Easy Way

    4:01

    Next Steps

    1:57

What are Hands-on Labs

What's the difference between theoretical knowledge and real skills? Practical real-world experience. That's where Hands-on Labs come in! Hands-on Labs are guided, interactive experiences that help you learn and practice real-world scenarios in real cloud environments. Hands-on Labs are seamlessly integrated in courses, so you can learn by doing.

Get Started
Who’s going to be learning?
Sign In
Welcome Back!

Psst…this one if you’ve been moved to ACG!