如何让 Kubernetes 的调度器尽可能地将 Pod 分布在不同机器上,避免堆叠

方法一

为 pod.yaml 设置 PreferredDuringSchedulingIgnoredDuringExecution
  • 可以指定【不想和同一个label的pod放在一起】
  • 调度器随后会根据node上不满足podAntiAffinity的pod数量打分,如果不想在一起的pod数量越多,则分数越低,就能够尽量打散同一个service的多个pod副本的分布。

=

方法二

使用priority策略 SelectorSpreadPriority
  • 是kubernetes内置的一个priority策略
  • 作用:与services上其他pod尽量不在同一个节点上,节点上同一个Service里pod数量越少得分越高

=

方法三

自定义策略,比如一次性 hash算法

上一篇:关于queue(原文链接:https://blog.csdn.net/chao_xun/article/details/8037438)


下一篇:Java多线程(priority)