即使在 Kubernetes 中有任何滚动更新,如何确保至少 3 pods 总是 运行
How to ensure that at least 3 pods are always running even if there are any rolling updates in Kubernetes
我已经在具有 8 个副本的 k8s 集群中部署了一个应用程序。但是如何确保在滚动更新期间至少有 3 pods 始终 运行,有人可以提出解决方案吗?
提前致谢。
您应该能够使用配置选项 maxUnavailable
:https://kubernetes.io/docs/concepts/workloads/controllers/deployment/#max-unavailable 来保证在更新期间有一定数量的副本可用。
您可以在 maxSurge
和 maxUnavailable
上设置所需的值
strategy:
rollingUpdate:
maxSurge: 25%
maxUnavailable: 50%
type: RollingUpdate
将 maxUnavailable
设置为 50% 将确保您始终有 4 pods 运行.
我已经在具有 8 个副本的 k8s 集群中部署了一个应用程序。但是如何确保在滚动更新期间至少有 3 pods 始终 运行,有人可以提出解决方案吗?
提前致谢。
您应该能够使用配置选项 maxUnavailable
:https://kubernetes.io/docs/concepts/workloads/controllers/deployment/#max-unavailable 来保证在更新期间有一定数量的副本可用。
您可以在 maxSurge
和 maxUnavailable
strategy:
rollingUpdate:
maxSurge: 25%
maxUnavailable: 50%
type: RollingUpdate
将 maxUnavailable
设置为 50% 将确保您始终有 4 pods 运行.