Tutorials

Hands-on deep dives into DevOps and server-side topics, with every command runnable in an attached remote playground.

Tutorial

How Kubernetes Operators Work: Building a Controller From Scratch

Build a Kubernetes operator for a small Pet API, first as a 15-line bash loop and then as a Go controller with controller-runtime. Every Pet gets a Pod to live in, gets hungry as time passes, and runs away if nobody feeds it. Along the way, you'll see how the reconcile loop works.

How Kubernetes Operators Work: Building a Controller From Scratch (cover image)
Tutorial

How Kubernetes CRDs Work: Designing a Validated API From Scratch

Build a CustomResourceDefinition for a small Pet API one layer at a time, and see how much the API server does with it on its own. By the end, it rejects invalid Pets, fills in defaults, keeps status separate, and prints useful columns. No controller and no code needed.

How Kubernetes CRDs Work: Designing a Validated API From Scratch (cover image)
Tutorial

Podman with Kubernetes: Play Before You Apply

This tutorial provides an in-depth know-how of working with Pods (group of container) with Podman. It also gives insights into how the podman CLI works well with Kubernetes, albeit in limited capacity to develop better Container Workflows.

Podman with Kubernetes: Play Before You Apply (cover image)
Tutorial

Kubernetes Debugging with DebugBox: Right-Sized Containers for Every Scenario

Most Kubernetes debugging images ship as a single 200+ MB package. DebugBox takes a different approach: three variants (15 MB, 47 MB, 91 MB) each scoped to a specific debugging task. This tutorial covers when to use lite, balanced, and power, how to run each as an ephemeral container or debug pod, and what tools are available in each variant.

Kubernetes Debugging with DebugBox: Right-Sized Containers for Every Scenario (cover image)
Tutorial

Kubernetes Kill Chain

Hands-on Kubernetes security workshop using the ShopWave demo app. Explore attack paths against a realistic e-commerce stack: Next.js storefront, FastAPI order service, and a notification webhook.

Kubernetes Kill Chain (cover image)
Tutorial

Building an eBPF/XDP NAT-Based (Weighted) Round Robin Load Balancer from Scratch

In this lab, you’ll build a NAT-based eBPF/XDP load balancer from scratch and implement both round-robin and weighted round-robin backend selection. Along the way, you’ll learn how to manage state in eBPF maps and distribute traffic across backends based on simple and capacity-aware scheduling strategies.

Building an eBPF/XDP NAT-Based (Weighted) Round Robin Load Balancer from Scratch (cover image)
Tutorial

Kubernetes: Admission Control

Dive deep into Kubernetes admission control with hands-on examples. Learn how admission controllers influence cluster behavior, apply default configurations, and enforce policies for consistency and compliance.

Kubernetes: Admission Control (cover image)