Local lab · Kubernetes Personal learning lab

RKE2 Fedora Lab

A Kubernetes course built around things I can break, inspect and recover.

About this project

I’m learning Kubernetes through a real, disposable cluster on my Mac. I’ve brought together virtual-machine templates, container applications, manifests and reset scripts so I can break things and start again.

The twenty-four labs connect deployment, diagnosis and recovery. I’ve worked through the core environment; I still need to try the advanced high-availability, upgrade and full-cluster recovery exercises.

Along the way

Project notes

What’s changed, what I’m trying, and what comes next.

A cluster I can break and rebuild

A personal Kubernetes course pairs a real local cluster with deliberate failures and recovery exercises.

I wanted infrastructure practice to leave me with something I could inspect, break and recover. This new personal lab runs RKE2 in disposable Fedora virtual machines on my Mac, with a separate toolbox for Linux commands and container builds. The course and its scripts keep the environment repeatable, so an exercise can end with a reset and another attempt.

The twenty-four labs move from Pods, Services and configuration into storage, ingress, delivery and recovery. Each has an observable result, a fault to investigate and a way back to a working baseline. Small Fedora applications, a database and a cache provide enough moving parts for the failures to mean something, using disposable course data throughout.

The core cluster is running, and I have exercised image builds, cross-node networking, DNS, Jobs, access controls, database persistence and logical restore. The ingress and certificate path works with explicit verification, and a bounded load exercise triggered autoscaling. Replaying the application namespace brings the foundation back without erasing the separate data exercise.

I haven’t worked through all the advanced material yet. High availability, full cluster recovery, upgrades, observability and the optional storage extension are still on my list. Fedora is an experimental choice for this local course, so I’m keeping track of what I’ve tried and what I still need to run.