如何滚动重启pod而不改变kubernetes(k8s)中的部署yaml?

小蕊 发表于: 2019-08-20   最后更新时间: 2019-08-21  

在kubernetes有一个滚动更新(自动不停机)但没有滚动重启,我没找不到。有没有办法让滚动“重启”,而不要改变部署yaml?



您需要解锁本帖隐藏内容请: 点击这里
本帖隐藏的内容




上一条: 如何在Kubernetes上保持运行docker容器,不关闭?
下一条: 从docker容器中访问Kubernetes中的容器的卷(volumes)报flag provided but not defined错误

  • 在kubernetes 1.15之前,是没有的。但是有一个变通的解决方法,假修改annotation:

    kubectl patch deployment web -p \
      "{\"spec\":{\"template\":{\"metadata\":{\"annotations\":{\"date\":\"`date +'%s'`\"}}}}}"
    

    从kubernetes 1.15开始,你可以使用:

    kubectl rollout restart deployment your_deployment_name
    

    可参考:CLI Improvements

    • Created a new kubectl rollout restart command that does a rolling restart of a deployment.
    • kubectl rollout restart now works for DaemonSets and StatefulSets