首页/开发/CI/CD 与发布速查/kubectl rollout undo 回滚 Deployment
质量门禁与回滚51 条

kubectl rollout undo 回滚 Deployment

Kubernetes 内置回滚:把 Deployment 回退到上一修订版或指定版本;前提是修订历史仍在且目标镜像标签仍可拉取。

CI/CD 与发布速查开发更新于 2026-10-12
相关命令kubectl rollout history / undo / status / restart
回退目标默认上一个版本,可指定 --to-revision
历史保留由 revisionHistoryLimit 控制,默认 10
查看历史差异kubectl rollout history deployment/NAME --revision=N

常用回滚操作

常用回滚操作
kubectl rollout history deploy/web -n prod
kubectl rollout undo deploy/web -n prod
kubectl rollout undo deploy/web --to-revision=3 -n prod
kubectl rollout status deploy/web -n prod
rollout undo 依赖修订历史:若曾用 kubectl set image 多次直接改动,修订含义要先核对。

易错点

  • revisionHistoryLimit 设置过小:需要的回退点已被清理
  • 回滚完成未验证业务指标:Pod 就绪不等于功能正常

数据来源与参考

  • Kubernetes 官方文档《Deployments》(Rolling Back a Deployment)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌