0

我有一个 Kubernetes 集群。通过策略,我确保所有服务都定义了请求、限制和 HPA,以便我可以顺利进行自动缩放。我还定义了 ResourceQuota。在这种情况下,是否也需要定义 PDB?请指教。

4

1 回答 1

1

当然,PDB 旨在补充您的副本集,以确保节点操作不会通过同时删除所有必需的实例来降低您的服务运行。它是一种与正在运行的副本数量相关的资源,并利用 pod 标签选择器(与 service 相同)来确定您的 PDB 应该查看哪个 pod

在节点操作期间,drain 将停止并等待在执行 pod 驱逐时尊重所有 PDB。如果被驱逐会导致 PDB 无效的 Pod 将等到条件有效。

你需要注意的是有正确的定义。具有单个副本的部署的 PDB 很可能会导致节点操作永远不会成功。

有关更多详细信息,请查看这篇文章

https://blog.gruntwork.io/avoiding-outages-in-your-kubernetes-cluster-using-poddisruptionbudgets-ef6a4baa5085

以及有关资源清单是什么的完整详细信息

https://kubernetes.io/docs/tasks/run-application/configure-pdb/

于 2020-07-27T22:20:33.683 回答