Module 1: Kubernetes Architecture Deep Dive
Overview
This module provides a deep understanding of Kubernetes architecture, focusing on the components and patterns that operators build upon. You’ll learn how the control plane works, how the API machinery operates, the controller pattern, and how custom resources extend Kubernetes.
Duration: 5-6 hours
Prerequisites: Basic Kubernetes knowledge, kubectl familiarity
Learning Objectives
By the end of this module, you will:
- Understand Kubernetes control plane components and their interactions
- Know how the Kubernetes API machinery works
- Comprehend the controller pattern and reconciliation loops
- Understand Custom Resource Definitions (CRDs) and when to use them
Module Structure
- Lesson 1.1: Kubernetes Control Plane Review
- Lesson 1.2: Kubernetes API Machinery
- Lesson 1.3: The Controller Pattern
- Lesson 1.4: Custom Resources
Setup
Before starting, ensure you have:
- Completed the development environment setup:
./scripts/setup-dev-environment.sh - Created a kind cluster:
./scripts/setup-kind-cluster.sh - Verified cluster access:
kubectl cluster-info kubectl get nodes
Hands-on Labs
Each lesson includes hands-on exercises. All labs use the kind cluster you set up.
- Lab 1.1: Exploring the Control Plane
- Lab 1.2: Working with the Kubernetes API
- Lab 1.3: Observing Controllers in Action
- Lab 1.4: Creating Your First CRD
Solutions
Complete working solutions for all labs are available in the solutions directory:
- Lab 1.4 Solutions - Website CRD and example resources