K8sQuest 是在本机 kind 集群里练 Kubernetes 排障的闯关项目。它把 50 个任务分成 5 个世界,由 Python 游戏引擎布置故障、检查结果并记录进度;玩家仍在第二个终端里使用真实 kubectl。
来源:github.com/Manoj-engineer/k8squest 查看 GitHub 仓库 → 📘 使用教程 →官方把 Pod、Deployment、Service、网络、存储和排障任务分布在 5 个世界,并提供 check、hint、solution、validate、skip 和 reset 流程。install.sh 创建名为 k8squest 的 kind 集群,并把当前 kubectl context 切到 kind-k8squest。
来源:github.com/Manoj-engineer/k8squest官方把 Pod、Deployment、Service、网络、存储和排障任务分布在 5 个世界,并提供 check、hint、solution、validate、skip 和 reset 流程。
来源:github.com/Manoj-engineer/k8squestinstall.sh 创建名为 k8squest 的 kind 集群,并把当前 kubectl context 切到 kind-k8squest。
来源:github.com/Manoj-engineer/k8squest/blob/main/install.sh官方清单为 k8squest-player 绑定 Role,常用工作负载的写权限限于 k8squest namespace;节点和命名空间等集群资源只开放读取。
来源:github.com/Manoj-engineer/k8squest/blob/main/rbac/k8squest-rbac.yamlinstall.sh 建立 Python venv、安装 requirements.txt、创建 kind 集群并应用 namespace/RBAC;engine 负责关卡状态、校验与终端界面;worlds 保存 5 组任务定义;玩家的 kubectl 操作直接进入 kind-k8squest。进度保存在本地,reset.py 可重置单关或全部关卡。
来源:github.com/Manoj-engineer/k8squestDocker Desktop 或可用的 Docker daemonkubectlkindbashPython 3.9+jqrequirements.txt 中的 rich 与 PyYAML适合在可丢弃的本地集群中练习 kubectl 和常见故障定位,也可用作课堂演示。它不是生产集群演练器;已有 kubeconfig 中包含真实集群的人,应先备份配置并核对当前 context。
来源:github.com/Manoj-engineer/k8squest截至 2026-09-23,官方 GitHub Releases 页面没有 release,仓库也没有稳定版本安装入口。生产可复现记录应固定具体 commit,而不是只写 main。
来源:github.com/Manoj-engineer/k8squest/releasesstatus: docs-only | checked_at: 2026-09-23 | environment: 核对官方 README、install.sh、requirements.txt、RBAC 清单和 GitHub Releases 页面 | limitations: 未运行 install.sh,未拉取镜像,未创建 kind 集群,未执行任何 kubectl 或关卡命令 | observed_output: 官方 Releases 页面无 release;install.sh 会创建 venv、安装依赖、创建 k8squest kind 集群、切换 context 并应用 RBAC
来源:github.com/Manoj-engineer/k8squest/releasesKubernetes 官方 kind 用 Docker 节点快速创建本地集群,提供的是集群工具;K8sQuest 在 kind 之上增加任务、故障、提示、校验和进度。只需要本地测试集群时直接用 kind;需要按关卡练排障时再加 K8sQuest。
来源:github.com/kubernetes-sigs/kind保留。它没有商业漏斗,教程价值在于把安装脚本对 Docker、网络和 kubeconfig 的实际影响说透,并把练习严格放在 kind-k8squest 中。
来源:github.com/Manoj-engineer/k8squestinstall.sh 会创建名为 k8squest 的 kind 集群,并把当前 context 切到 kind-k8squest。开始前仍应备份 kubeconfig,运行后再用 kubectl config current-context 核对,不能只依赖脚本提示。
不能。RBAC 把常用写操作限制在 k8squest namespace,并让部分集群资源只读,但安装仍能访问 Docker daemon 和 kubeconfig。最稳妥的做法是在专用本机账户或可丢弃虚拟机里使用。
官方要求 Windows 使用 Git Bash,并先启动采用 WSL2 后端的 Docker Desktop。PowerShell 和 CMD 不是 README 给出的支持路径。
游戏内可使用 reset;仓库还提供 python3 engine/reset.py 加关卡编号或 all 的重置方式。重置会改动练习 namespace 中的资源,先确认 context 是 kind-k8squest。
不是。kind 负责创建本地 Kubernetes 集群;K8sQuest 使用 kind 集群承载 50 个故障任务,并加上提示、校验、讲解和进度系统。