【发布时间】:2022-01-17 07:38:34
【问题描述】:
我有一个 EKS cluster 和两个 nodegroups,每个 AZ 不同。一个 deployment Deployment1 在 2 个 namespaces 上运行以实现冗余,每个 namespace 一个副本,每个都在单独的 AZs/nodegroup 中运行。还有另一个 deployment Deployment2 没有设置任何 node affinity 并且 K8s 管理 pod 的调度位置。
deployments 都很大,有很多豆荚。我有一个包含 250 个 IP 的子网可供每个节点组使用。
问题在于,虽然 Deployment1 本身很好,并且几乎被每个 AZ/Nodegroup 平均分配,但 Deployment2 倾向于将大多数 pod 安排在 nodegroups 之一中,并且当没有更多可用 IP。这对Deployment1 来说是个问题,因为其中一个namespace 与nodegroup 相关联,如果负载发生变化,则无法在那里安排新的Pod。
我能否以某种方式平衡Deployment2,使其具有“软亲和力”,可以将每个节点组按 50/50 拆分,但如果需要,可以在另一个节点组中调度 pod?
【问题讨论】:
标签: kubernetes amazon-eks kubernetes-pod kubernetes-deployment