Kubernetes上无状态应用程序的StatefulSets与部署

时间:2020-01-19 03:16:52

标签: kubernetes kubernetes-deployment kubernetes-statefulset

我发现大量文章和文档描述了StatefulSets优于Kubernetes上有状态应用程序的Deployments的优势。我无法弄清的是相反的情况:与部署相比,StatefulSet的缺点,特别是对于 stateless 应用程序而言。

有人可以解释为什么为什么不总是对有状态和无状态应用程序总是使用StatefulSets吗?

1 个答案:

答案 0 :(得分:2)

最基本的区别是您将能够使用状态有效集来保持 pod级别状态。使用volumeClaimTemplates,每个副本将获得具有状态集的唯一PersistentVolumeClaim ,而所有副本将与部署共享PersistentVolumeClaim。对于状态集,这需要缓慢扩展和缩减

部署还具有与“部署”相关的出色功能,例如使用 maxSurge和maxUnavailable进行滚动更新。