If you’ve ever tried to learn Kubernetes the “official” way, you know the drill. Spin up a local cluster, fight with minikube or kind, copy-paste YAML from a tutorial, run kubectl apply, stare at a Pod stuck in Pending, and spend the next twenty minutes Googling why. By the time you’ve debugged the tooling, you’ve forgotten what you were even trying to learn.
A project called k8sgames skips all of that. It’s a 3D Kubernetes cluster simulator that runs entirely in your browser – no install, no signup, no kubectl config to wrangle. You just open a tab and start deploying.
And it’s not a toy. It’s a surprisingly deep simulation of how a real cluster behaves, wrapped in something that actually feels like a game.
What it actually is
k8sgames is a browser-based simulation where you build and operate a Kubernetes cluster on a 3D canvas. You drag resources – Pods, Deployments, Services, PVCs – onto the scene, wire them together, and then watch what happens when things inevitably break.
Because things do break, on purpose. The project ships with 29 simulated incidents: OOMKilled containers, ImagePullBackOff, nodes going NotReady, DNS failures, stuck rollouts, expiring certificates, flapping HPAs. You don’t fix them by clicking a “repair” button. You diagnose them the way an SRE would – running kubectl describe, checking logs, then applying the actual fix.
That last part is what separates this from a typical “gamified learning” app. There’s a real command bar. Press / and you get a working kubectl interface: get pods, describe deployment nginx, scale deployment nginx --replicas=3, rollout status, drain node-1, complete with tab completion. You’re not selecting from a multiple-choice quiz about what drain does. You’re typing it.
Four ways to play
The project organizes learning into modes that escalate in difficulty and shift in purpose:
- Campaign – 20 levels across 5 chapters, walking you from Pods and Deployments through networking, storage, and into production-grade cluster concerns.
- Chaos – endless survival mode. Incidents keep escalating until your cluster falls over. It’s basically a stress test for your own troubleshooting instincts.
- Sandbox – a free-build mode where you architect a cluster from scratch and get scored 0-100 by an “Architecture Advisor” across categories like high availability, security, scalability, and cost.
- Challenges – 10 timed scenarios where you deploy apps or fix outages against the clock.
There’s also a bonus tool tucked inside the project: K8s Draw, a 3D Kubernetes architecture whiteboard at /draw. Think Excalidraw, but purpose-built for cluster diagrams – drag 21 resource types onto a canvas, draw connections, export to YAML with correct apiVersions, or export to PNG, and share the whole diagram via a URL. No game logic, no scoring, just a fast way to sketch and communicate architecture.
The depth under the hood
What’s notable here isn’t just the concept – it’s how much real Kubernetes behavior is modeled. The project includes:
- 25 resource types, from Pods and StatefulSets to NetworkPolicies, HPAs, and the full RBAC chain (ServiceAccounts, Roles, ClusterRoles, RoleBindings, ClusterRoleBindings) – each with its own 3D shape and real behavior.
- Animated visual connections that show ownership chains (Deployment → ReplicaSet → Pod) and service-to-pod routing based on actual label selectors.
- An RBAC simulation with real rule definitions and wildcard detection – a topic most learning tools skip entirely because it’s tedious to explain and even more tedious to visualize.
- A 30-level XP system with 40 achievements, scaling from “Novice” to what the project calls “CKA-ready” – a nod toward the Certified Kubernetes Administrator exam.
And technically, it’s refreshingly unfussy: Three.js, Tailwind CSS via CDN, and vanilla ES6 modules. No build step, no bundler, no framework lock-in – roughly 50,000 lines of code across 90+ files that you can clone and run with a single Python HTTP server command.
Why this matters
Kubernetes has a notoriously steep learning curve, not because the concepts are hard individually, but because you usually have to learn five of them at once just to get a single Pod running: YAML syntax, the CLI, networking primitives, the control loop model, and whatever’s different about your specific cluster setup that day.
A simulation removes the parts that aren’t actually the lesson. You’re not debugging your local Docker daemon or fighting a corporate VPN to reach a dev cluster – you’re debugging the concept. That’s a meaningfully different (and faster) way to build intuition, especially for people studying for the CKA or just trying to get comfortable before touching a real production cluster.
It’s also just well-suited to its medium. Kubernetes is fundamentally about systems of relationships – what owns what, what routes to what, what happens when one piece fails. Visualizing that in 3D space, with connections lighting up between resources, makes those relationships legible in a way that flat YAML files never will.
Try it
You can play directly at k8sgames.com, or just jump straight to the diagramming tool at k8sgames.com/draw if that’s what you’re after. The source is on GitHub under an Apache-2.0 license, so if you want to poke around the incident logic or add your own resource types, it’s all there to read and fork.
Sometimes the best way to learn infrastructure is to break it on purpose, in a sandbox where the only cost of failure is starting the level over. k8sgames bets on that idea, and it pays off.
Have you tried k8sgames or a similar hands-on learning tool for Kubernetes? I’d be curious what clicked for you.
