场景判断
最低发版清单:变更 diff、镜像可回滚、rollout status 通过、日志/探活未炸、回滚命令就绪。Helm 管模板与发布版本;GitOps 以 Git 为真源拉齐集群。二者都不免除你对 status/undo 的肌肉记忆——工具链崩了时,kubectl 仍是最后一条逃生绳。
真实事故骨架:周五未 diff 就 apply,镜像写成 latest 且 registry 已被覆盖,出问题后 history 对不上构建号,undo 打到同样坏镜像。RTO 从数分钟拖成一小时——缺 diff、可追溯 tag、status 任一步都会在事故夜放大。
复现步骤
本机勾选备忘(localStorage),不代表你已在集群里跑过,也不连接任何 API。只是帮你对照步骤,别当成「学会了」的勋章。
— / 5本机勾选
- 01
- 02
- 03
- 04
- 05
关键配置
# 门禁
kubectl diff -f examples/minimal-loop/ || true
kubectl apply -f examples/minimal-loop/
kubectl rollout status deploy/web
kubectl wait --for=condition=available deploy/web --timeout=120s
kubectl logs deploy/web --tail=30
# 失败逃生(可选)
# kubectl set image deploy/web nginx=nginx:does-not-exist-xyz
# kubectl rollout undo deploy/web
kubectl delete -f examples/minimal-loop/
available 之前不要庆祝——status/wait 通过,才是这一枪打完。
验收:能按 前 diff → 中 status/wait → 后 logs 走完;失败时第一条回滚是 undo 不是 delete deployment。
现场记录
先写自己的证据,再看参考答案。输入只留在当前页面,本站不会读取或验证你的集群。
发版门禁:diff · status · wait · undo
这是你的手动确认,不代表本站已检测命令执行结果。
关联命令
跳转图鉴并展开对应条目(可复制示例)。
对应路径课节