Benchmarks and proof-of-concept studies on Kubernetes, Cloud Native, and AI, the research backing for kuberneteslab.dev.
KubernetesLab is a research, consulting, and education platform focused on Kubernetes, Cloud Native, and AI. Each project in this repository is a hands-on study published as a blog post on the site. The research covers three areas:
- AI / AIOps: benchmarking AI coding agents on real Kubernetes operations and incident-response tasks
- Kubernetes: Gateway API implementations, cluster optimization, observability
- FinOps: cost reduction studies on EKS and AKS (49% and 48% savings)
Compares nine AI coding agents (Claude, Gemini, Codex) on identical Kubernetes incident-response scenarios, measuring quality, safety, and efficiency.
→ Blog post | README (EN) | README (KO) | Methodology
Validates seven Kubernetes Gateway API implementations across 17 test cases (routing, TLS, traffic management) with 100 rounds each.
→ Blog post | README (EN) | README (KO)
Measures whether moving a project context file from CLAUDE.md to AGENTS.md (via import or symlink) slows Claude Code down or costs more tokens, across 5 model configurations on Kubernetes incident-response tasks. Result: no penalty on either axis.
→ Blog post | README (EN) | README (KO)
Measures the standing resource cost of five CNIs (Calico, Cilium, Flannel, Antrea, kube-router) across 14 configurations and 6 load phases: CPU, memory, and eBPF map kernel memory, over a 9-day unattended campaign. Key findings: memory (not CPU) separates the conditions, and switching kube-proxy to nftables mode alone cuts its memory usage by 70%.
→ Blog post | README (EN) | README (KO)
Measures what the MCP 2026-07-28 stateless revision changes for a server running on Kubernetes. The same workload runs on a session-based server and on a port to the new spec, under scale-out, pod replacement, and three handle designs. Key findings: the old spec loses throughput as replicas are added (median 199.9 to 33.2 rps at four replicas, with 37,844 session losses out of 78,000 requests) and varies run to run, the new spec holds the offered rate in every condition measured, and a port that leaves handle state in pod memory reproduces the old failure behind HTTP 200.
→ Blog post | README (EN) | README (KO)
Hoon Jo / CNCF Ambassador / Kubestronaut / @sysnet4admin / kuberneteslab.dev