美文网首页
kubernetes 学习笔记(一)如何回滚 deploymen

kubernetes 学习笔记(一)如何回滚 deploymen

作者: youthcity | 来源:发表于2020-08-27 22:17 被阅读0次

背景

工作中,经常会遇到发到线上的版本有问题,需要请求 SRE 帮忙回滚版本的需求。由于服务集群是部署在 GCP 的 K8s 的集群中,那么 SRE 是通过什么命令让服务快速回滚的呢?

解决方法

# 回退到上一个版本
kubectl rollout undo deployment/abc

# 回退到指定版本
kubectl rollout undo deployment/abc --to-revision=2

版本号,可以通过下面命令获取:

# 查看回滚历史
kubectl rollout history deployment/nginx-deployment
kubectl rollout history 执行后的结果

如图所示,第一列为版本序号,第二列为 CHANGE-CAUSE。可以通过一下三种方式,指定 CHANGE-CAUSE

  • 使用命令 kubectl annotate deployment.v1.apps/nginx-deployment kubernetes.io/change-cause="image updated to 1.9.1",对 Deployment 进行注解;
  • 追加 --record 以保存正在更改资源的 kubectl 命令;例如,kubectl set image deployment.v1.apps/nginx-deployment nginx=nginx:1.161 --record=true
  • 手动编辑资源的清单;

相关资料

相关文章

网友评论

      本文标题:kubernetes 学习笔记(一)如何回滚 deploymen

      本文链接:https://www.haomeiwen.com/subject/ogihsktx.html