标签:nod 百分比 lease 通过 顺序 ast sch api 群集
调度器相关:
1. 在预选和优选时,多个节点之间并发的执行预选策略和优选策略(单个节点还是按顺序执行预选和优选策略的)
2. 算法执行过程中需要用到的如node、pod等信息使用Informer缓存起来
3. 当通过预选和优选得到最优的节点时,不在调度路径中请求api-server进行bind操作,而是乐观的在cache中进行bind,之后再发起goroute异步的更新api-server
4. 预选阶段中某个节点无法满足某个预选策略,那么对于这个节点剩下的预选策略就没有必要继续计算(alwaysCheckAllPredicates)
5. (来自阿里)预选过程中当选取了N个节点时,就停止预选到达优选过程,在k8s 1.12版本之后允许用户通过percentageOfNodesToScore配置百分比,比如对于1000个节点的集群,percentageOfNodesToScore为15时表示预选过程将选择150个节点来进行优选。在k8s 1.14之后,如果没有配置percentageOfNodesToScore,那么将会通过如下逻辑自动计算出一个值:
percentageOfNodesToScore=max(5, 50 - node总数/125)
为了使群集中的所有节点都有运行Pods的机会,调度程序以循环方式遍历节点。可以想象节点在数组中,调度程序从数组的开头,检查节点的可行性,直到找到由指定的足够的节点percentageOfNodesToScore
。对于下一个Pod,调度程序从检查先前Pod的Nodes可行性时停止在Node数组中的位置继续工作。
其他
1. 使用Lease Object来向master发送心跳,原NodeStatus仍然保留,Lease Object更轻量
标签:nod 百分比 lease 通过 顺序 ast sch api 群集
原文地址:https://www.cnblogs.com/orchidzjl/p/12466348.html