从零开始入门 K8s | 调度器的调度流程和算法介绍(16)

  • 指定比率

可以在 Scheduler 启动的时候 , 为每一个资源使用率设置得分 , 从而实现控制集群上 node 资源分配分布曲线 。

Pod 打散

Pod 打散为了解决的问题为:支持符合条件的一组 Pod 在不同 topology 上部署的 spread 需求 。

  • SelectorSpreadPriority

用于实现 Pod 所属的 Controller 下所有的 Pod 在 Node 上打散的要求 。 实现方式是这样的:它会依据待分配的 Pod 所属的 controller , 计算该 controller 下的所有 Pod假设总数为 T , 对这些 Pod 按照所在的 Node 分组统计;假设为 N (表示为某个 Node 上的统计值) , 那么对 Node上的分数统计为  (T-N)/T 的分数 , 值越大表示这个节点的 controller 部署的越少 , 分数越高 , 从而达到 workload 的 pod 打散需求 。