繁体   English   中英

Kubernetes 部署滚动更新

[英]Kubernetes Deployment Rolling Update

我有一个应用程序部署在 Kubernetes 上。

这个应用程序有 5 个副本,我正在对每个部署进行滚动更新。

这个应用程序有一个优雅的关闭,可能需要几十分钟(它必须等待正在运行的任务完成)。

我的问题是,在更新过程中,所有旧版本的 pod 都停留在“Terminating”状态,而所有新的 pod 都被创建了。

在更新期间,我最终运行了 8 个容器,这是我试图避免的事情。

我试图获得的行为是,新的 pod 只会在旧版本的 pod 成功终止后创建,所以在任何时候我都不会超过我设置的副本数量。

我想知道是否有办法实现这种行为。

将 maxSurge 设置为 5,因此所有 pod 的数量(终止和创建)都不会超过 5。

我认为实现这个目标的最好方法是使用Statefulsets ,Statefulsets 的一些关键特性是:

  • 有序的自动滚动更新。
  • 有序、优雅的部署和扩展。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM