scheduler framework扩展点
k8s v1.25.0

|
扩展点 |
作用 |
|
queueSort |
待调度队列pod排序 |
|
preFilter |
预选前预处理 |
|
filter |
预选 |
|
postFilter |
预选后处理(可修改pod为可调度) |
|
preScore |
预打分 |
|
score |
优选 |
|
reserve |
资源预留给pod |
|
permit |
阻止或延迟pod绑定 |
|
preBind |
pod绑定节点前预处理 |
|
bind |
pod绑定节点 |
|
postBind |
pod绑定节点后处理 |
|
multiPoint |
配置扩展点启用和禁用哪些插件 |
默认启用插件
|
插件名称 |
作用 |
实现的扩展点 |
|
ImageLocality |
选择已经存在 Pod 运行所需容器镜像的节点 |
score |
|
TaintToleration |
污点和容忍 |
filter、preScore、score |
|
NodeName |
检查 Pod 指定的节点名称与当前节点是否匹配 |
filter |
|
NodePorts |
检查 Pod 请求的端口在节点上是否可用 |
preFilter、filter |
|
NodeAffinity |
节点选择器和节点亲和性 |
filter、score |
|
PodTopologySpread |
Pod拓扑分布 |
preFilter、filter、preScore、score |
|
NodeUnschedulable |
过滤.spec.unschedulable 值为true的节点 |
filter |
|
NodeResourcesFit |
检查节点是否拥有 Pod 请求的所有资源。得分可以使用以下三种策略之一:LeastAllocated(默认)、MostAllocated 和 RequestedToCapacityRatio。 |
preFilter、filter、score |
|
NodeResourcesBalancedAllocation |
选择资源使用更为均衡的节点 |
score |
|
VolumeBinding |
检查节点是否有请求的卷,或是否可以绑定请求的卷 |
preFilter、filter、reserve、preBind 和 score |
|
VolumeRestrictions |
检查挂载到节点上的卷是否满足卷提供程序的限制 |
filter |
|
VolumeZone |
检查请求的卷是否在任何区域都满足 |
filter |
|
NodeVolumeLimits |
检查该节点是否满足 CSI 卷限制 |
filter |
|
EBSLimits |
检查节点是否满足 AWS EBS 卷限制 |
filter |
|
GCEPDLimits |
检查该节点是否满足 GCP-PD 卷限制 |
filter |
|
AzureDiskLimits |
检查该节点是否满足 Azure 卷限制 |
filter |
|
InterPodAffinity |
实现 Pod 间亲和性与反亲和性 |
preFilter、filter、preScore、score |
|
PrioritySort |
提供默认的基于优先级的排序 |
queueSort |
|
DefaultBinder |
提供默认的绑定机制 |
bind |
|
DefaultPreemption |
提供默认的抢占机制 |
postFilter |
参考资料
https://kubernetes.io/zh-cn/docs/reference/scheduling/config/