kube-scheduler

kube-scheduler是一个控制面组件,负责结合节点资源使用情况和Pod的调度要求将Pod调度到集群的合适节点上。

组件介绍

kube-scheduler介绍

基于Pod声明的Request和节点的Allocatable属性,kube-scheduler可以为调度队列中每个Pod确定其可放置的节点,并保证节点的合法性。此外,kube-scheduler还可以将所有合法的节点排序,将Pod绑定到一个合适的节点。kube-scheduler默认根据Request值对Pod进行均匀放置。更多信息,请参见Kubernetes官方文档kube-scheduler

Filter及Score插件介绍

Kubernetes调度框架(Scheduling Framework)将复杂的调度逻辑提炼为插件,基于插件实现调度的灵活拓展。其中,Filter(过滤)插件可以在Pod调度时筛选出无法运行特定Pod的节点,Score(评分)插件可以根据算法逻辑对过滤的节点打分,得出的分数代表节点适合运行该Pod的程度。

下表介绍各kube-scheduler版本中,调度插件开启FilterScore的列表及默认权重。

展开查看默认开启的插件情况

组件版本

Filter

Score

v1.30.1-aliyun.6.5.4.fcac2bdf

  • 开源默认开启插件:

    与开源社区一致,请参见v1.30.1 Filter默认开启插件

  • ACK默认开启插件:

    • NodeNUMAResource

    • topologymanager

    • EciPodTopologySpread

    • ipawarescheduling

    • BatchResourceFit

    • PreferredNode

    • gpushare

    • NetworkTopology

    • CapacityScheduling

    • elasticresource

    • resourcepolicy

    • gputopology

    • ECIBinderV1

    • loadawarescheduling

    • EciScheduling

  • 开源默认开启插件:

    与开源社区一致,请参见v1.30.1 Score默认开启插件

  • ACK默认开启插件及插件对应权重:

    • Name: NodeNUMAResource Default Weight: 1

    • Name: ipawarescheduling Default Weight: 1

    • Name: gpuNUMAJointAllocation Default Weight: 1

    • Name: PreferredNode Default Weight: 10000

    • Name: gpushare Default Weight: 20000

    • Name: gputopology Default Weight: 1

    • Name: numa Default Weight: 1

    • Name: EciScheduling Default Weight: 2

    • Name: NodeAffinity Default Weight: 2

    • Name: elasticresource Default Weight: 1000000

    • Name: resourcepolicy Default Weight: 1000000

    • Name: NodeBEResourceLeastAllocated Default Weight: 1

    • Name: loadawarescheduling Default Weight: 10

v1.28.3-aliyun-6.5.2.7ff57682

  • 开源默认开启插件:

    与开源社区一致,请参见v1.28.3 Filter默认开启插件

  • ACK默认开启插件:

    • NodeNUMAResource

    • topologymanager

    • EciPodTopologySpread

    • ipawarescheduling

    • BatchResourceFit

    • PreferredNode

    • gpushare

    • NetworkTopology

    • CapacityScheduling

    • elasticresource

    • resourcepolicy

    • gputopology

    • ECIBinderV1

    • loadawarescheduling

    • EciScheduling

  • 开源默认开启插件:

    与开源社区一致,请参见v1.28.3 Score默认开启插件

  • ACK默认开启插件及插件对应权重:

    • Name: NodeNUMAResource Default Weight: 1

    • Name: ipawarescheduling Default Weight: 1

    • Name: gpuNUMAJointAllocation Default Weight: 1

    • Name: PreferredNode Default Weight: 10000

    • Name: gpushare Default Weight: 20000

    • Name: gputopology Default Weight: 1

    • Name: numa Default Weight: 1

    • Name: EciScheduling Default Weight: 2

    • Name: NodeAffinity Default Weight: 2

    • Name: elasticresource Default Weight: 1000000

    • Name: resourcepolicy Default Weight: 1000000

    • Name: NodeBEResourceLeastAllocated Default Weight: 1

    • Name: loadawarescheduling Default Weight: 10

v1.26.3-aliyun-6.6.1.605b8a4f

  • 开源默认开启插件:

    与开源社区一致,请参见v1.26.3 Filter默认开启插件

  • ACK默认开启插件:

    • NodeNUMAResource

    • topologymanager

    • EciPodTopologySpread

    • ipawarescheduling

    • BatchResourceFit

    • PreferredNode

    • gpushare

    • NetworkTopology

    • CapacityScheduling

    • elasticresource

    • resourcepolicy

    • gputopology

    • ECIBinderV1

    • loadawarescheduling

    • EciScheduling

  • 开源默认开启插件:

    与开源社区一致,请参见v1.26.3 Score默认开启插件

  • ACK默认开启插件:

    • Name: NodeNUMAResource Default Weight: 1

    • Name: ipawarescheduling Default Weight: 1

    • Name: gpuNUMAJointAllocation Default Weight: 1

    • Name: PreferredNode Default Weight: 10000

    • Name: gpushare Default Weight: 20000

    • Name: gputopology Default Weight: 1

    • Name: numa Default Weight: 1

    • Name: EciScheduling Default Weight: 2

    • Name: NodeAffinity Default Weight: 2

    • Name: elasticresource Default Weight: 1000000

    • Name: resourcepolicy Default Weight: 1000000

    • Name: NodeBEResourceLeastAllocated Default Weight: 1

    • Name: loadawarescheduling Default Weight: 10

插件功能介绍

展开查看插件介绍及其相关功能文档

插件名称

说明

相关功能文档

NodeNUMAResource

管理CPU拓扑感知调度。

启用CPU拓扑感知调度

topologymanager

管理节点NUMA资源分配。

启用NUMA拓扑感知调度

EciPodTopologySpread

在虚拟节点调度场景下增强拓扑分布约束功能。

开启集群虚拟节点调度策略

ipawarescheduling

剩余IP的感知调度。

调度FAQ

BatchResourceFit

开启并管理在离线混部。

在离线混部概述

PreferredNode

为开启节点伸缩的节点池预留节点。

节点伸缩概述

gpushare

管理共享GPU调度。

共享GPU调度

NetworkTopology

管理网络拓扑感知调度。

拓扑感知调度

CapacityScheduling

管理CapacityScheduling。

使用Capacity Scheduling

elasticresource

管理ECI弹性调度。

使用ECI弹性调度

resourcepolicy

管理自定义弹性资源的调度。

自定义弹性资源优先级调度

gputopology

管理GPU拓扑感知调度。

GPU拓扑感知调度

ECIBinderV1

负责ECI弹性调度场景下虚拟节点的绑定。

通过虚拟节点将Pod调度到ECI上运行

loadawarescheduling

管理负载感知调度。

使用负载感知调度

EciScheduling

管理虚拟节点调度。

开启集群虚拟节点调度策略

使用说明

kube-scheduler组件默认安装,无需配置即可使用。推荐您及时升级kube-scheduler组件版本,以便享用最新版本组件带来的功能优化和缺陷修复。您可以登录容器服务管理控制台,单击目标集群,然后在左侧导航栏选择运维管理 > 组件管理升级组件。

变更记录

1.31版本变更记录

版本号

变更时间

变更内容

v1.31.0-aliyun.6.7.1.1943173f

2024年11月06日

  • 自定义弹性资源优先级调度

    • 新增支持感知触发弹性的Pod的数量。

    • Unit中的resource: elastic进入废弃状态,通过PodLabels中的k8s.aliyun.com/resource-policy-wait-for-ecs-scaling

  • CPU拓扑感知调度

    • 修复ECS机型变化时可能导致异常的问题。

v1.31.0-aliyun.6.7.0.740ba623

2024年11月04日

  • CapacityScheduling

    • 修复在没有ElasticQuotaTree的情况下也会执行弹性Quota抢占的问题。

  • 自定义弹性资源优先级调度

    • 新增支持ACS类型单元。

v1.31.0-aliyun.6.6.1.5bd14ab0

2024年10月22日

  • 修复PodTopologySpread偶尔发生Invalid Score的问题。

  • 优化Coscheduling的事件提示信息,新增在事件中提示Coscheduling失败的次数。

  • 优化虚拟节点调度相关提示信息,虚拟节点调度过程中不再发送Warning类型的事件。

  • 网络拓扑感知调度

    • 修复网络拓扑感知调度抢占后Pod无法调度的问题。

  • NUMA拓扑感知调度

    • 修复NUMA拓扑感知调度不生效的问题。

v1.31.0-aliyun.6.6.0.ba473715

2024年09月13日

在1.31版本的ACK集群中支持此前的全部功能。

1.30版本变更记录

版本号

变更时间

变更内容

v1.30.3-aliyun.6.7.1.d992180a

2024年11月06日

  • 自定义弹性资源优先级调度

    • 新增支持感知触发弹性的Pod的数量。

    • Unit中的resource: elastic进入废弃状态,通过PodLabels中的k8s.aliyun.com/resource-policy-wait-for-ecs-scaling

  • CPU拓扑感知调度

    • 修复ECS机型变化时可能导致异常的问题。

v1.30.3-aliyun.6.7.0.da474ec5

2024年11月04日

  • CapacityScheduling

    • 修复在没有ElasticQuotaTree的情况下也会执行弹性Quota抢占的问题。

  • 自定义弹性资源优先级调度

    • 新增支持ACS类型单元。

v1.30.3-aliyun.6.6.4.b8940a30

2024年10月22日

  • 修复PodTopologySpread偶尔发生Invalid Score的问题。

v1.30.3-aliyun.6.6.3.994ade8a

2024年10月18日

  • 优化Coscheduling的事件提示信息,新增在事件中提示Coscheduling失败的次数。

  • 优化虚拟节点调度相关提示信息,虚拟节点调度过程中不再发送Warning类型的事件。

v1.30.3-aliyun.6.6.2.0be67202

2024年09月23日

  • 网络拓扑感知调度

    • 修复网络拓扑感知调度抢占后Pod无法调度的问题。

  • NUMA拓扑感知调度

    • 修复NUMA拓扑感知调度不生效的问题。

v1.30.3-aliyun.6.6.1.d98352c6

2024年09月11日

  • 网络拓扑感知调度支持抢占

  • SlurmOperator

    • 支持Kubernetes & Slurm集群混合调度。

  • Coscheduling

    • 支持社区最新版本CRD。

v1.30.3-aliyun.6.5.6.fe7bc1d5

2024年08月20日

修复v1.30.1-aliyun.6.5.1.5dad3be8引入的PodAffinity/PodAntiaffinity调度异常。

v1.30.3-aliyun.6.5.5.8b10ee7c

2024年08月01日

  • Rebase到社区版本v1.30.3。

v1.30.1-aliyun.6.5.5.fcac2bdf

2024年08月01日

  • CapacityScheduling

    • 修复Coscheduling与CapacityScheduling同时使用可能发生的Quota计算错误的问题。

  • GPUShare

    • 修复算力调度节点剩余资源计算错误的问题。

  • 自定义弹性资源优先级调度

    • 优化ResourcePolicy与ClusterAutoscaler同时使用时节点弹出行为。当所有Unit中Pod已经达到Max时不再弹出节点。

v1.30.1-aliyun.6.5.4.fcac2bdf

2024年07月22日

  • Coscheduling

    • 修复使用ECI时Quota统计出错的问题。

  • 修复偶发的"xxx is in cache, so can't be assumed"问题。

v1.30.1-aliyun.6.5.3.9adaeb31

2024年07月10日

修复v1.30.1-aliyun.6.5.1.5dad3be8版本引入的Pod长时间Pending的问题。

v1.30.1-aliyun.6.5.1.5dad3be8

2024年06月27日

  • Coscheduling

    • 优化Coscheduling调度速度。

  • 支持Pod顺序调度。

  • 支持通过申明等价类提升调度性能。

  • 通过PreEnqueue优化现有调度器插件性能。

v1.30.1-aliyun.6.4.7.6643d15f

2024年05月31日

  • 在1.30版本的ACK集群中支持此前的全部功能。

1.28版本变更记录

版本号

变更时间

变更内容

v1.28.12-aliyun-6.7.1.44345748

2024年11月06日

  • 自定义弹性资源优先级调度

    • 新增支持感知触发弹性的Pod的数量。

    • Unit中的resource: elastic进入废弃状态,通过PodLabels中的k8s.aliyun.com/resource-policy-wait-for-ecs-scaling

  • CPU拓扑感知调度

    • 修复ECS机型变化时可能导致异常的问题。

v1.28.12-aliyun-6.7.0.b97fca02

2024年11月04日

  • CapacityScheduling

    • 修复在没有ElasticQuotaTree的情况下也会执行弹性Quota抢占的问题。

  • 自定义弹性资源优先级调度

    • 新增支持ACS类型单元。

v1.28.12-aliyun-6.6.4.e535a698

2024年10月22日

  • 修复PodTopologySpread偶尔发生Invalid Score的问题。

v1.28.12-aliyun-6.6.3.188f750b

2024年10月11日

  • 优化Coscheduling的事件提示信息,新增在事件中提示Coscheduling失败的次数。

  • 优化虚拟节点调度相关提示信息,虚拟节点调度过程中不再发送Warning类型的事件。

v1.28.12-aliyun-6.6.2.054ec1f5

2024年09月23日

  • 网络拓扑感知调度

    • 修复网络拓扑感知调度抢占后Pod无法调度的问题。

  • NUMA拓扑感知调度

    • 修复NUMA拓扑感知调度不生效的问题。

v1.28.12-aliyun-6.6.1.348b251d

2024年09月11日

  • 网络拓扑感知调度支持抢占。

  • SlurmOperator

    • 支持Kubernetes & Slurm集群混合调度。

v1.28.12-aliyun-6.5.4.79e08301

2024年08月20日

修复v1.28.3-aliyun-6.5.1.364d020b引入的PodAffinity/PodAntiaffinity调度异常。

v1.28.12-aliyun-6.5.3.aefde017

2024年08月01日

  • Rebase到社区版本v1.28.12。

v1.28.3-aliyun-6.5.3.79e08301

2024年08月01日

  • CapacityScheduling

    • 修复Coscheduling与CapacityScheduling同时使用可能发生的Quota计算错误的问题。

  • GPUShare

    • 修复算力调度节点剩余资源计算错误的问题。

  • 自定义弹性资源优先级调度

    • 优化ResourcePolicy与ClusterAutoscaler同时使用时节点弹出行为。当所有Unit中Pod已经达到Max时不再弹出节点。

v1.28.3-aliyun-6.5.2.7ff57682

2024年07月22日

  • Coscheduling

    • 修复使用ECI时Quota统计出错的问题。

  • 修复偶发的"xxx is in cache, so can't be assumed"问题。

  • 修复v1.28.3-aliyun-6.5.1.364d020b版本引入的Pod长时间Pending的问题。

v1.28.3-aliyun-6.5.1.364d020b

2024年06月27日

  • Coscheduling

    • 优化Coscheduling调度速度。

  • 支持Pod顺序调度。

  • 支持通过声明等价类提升调度性能。

  • 通过PreEnqueue优化现有调度器插件性能。

v1.28.3-aliyun-6.4.7.0f47500a

2024年05月24日

  • 网络拓扑感知调度

    • 修复网络拓扑感知调度在偶发情况下无法调度的问题。

v1.28.3-aliyun-6.4.6.f32dc398

2024年05月16日

  • 共享GPU调度

    • 修复灵骏集群中节点ack.node.gpu.schedule标签从egpu修改为default后将导致GPU调度异常的问题。

  • CapacityScheduling

    • 修复偶发的错误提示:running AddPod on PreFilter plugin

  • 弹性调度

    • 新增使用alibabacloud.com/burst-resource生产ECI时,生成wait for eci provisioning的事件。

v1.28.3-aliyun-6.4.5.a8b4a599

2024年05月09日

v1.28.3-aliyun-6.4.3.f57771d7

2024年03月18日

  • 共享GPU调度

    • 支持提交ConfigMap进行指定卡的隔离。

  • 自定义弹性资源优先级调度

    • 新增支持elastic资源类型。

v1.28.3-aliyun-6.4.2.25bc61fb

2024年03月01日

默认关闭SchedulerQueueingHints功能。详情可参考Pull Request #122291

v1.28.3-aliyun-6.4.1.c7db7450

2024年02月21日

  • 新增支持NUMA联合调度

  • 自定义弹性资源优先级调度

    • 新增支持在Unit间尝试等待。

  • 修复剩余IP感知调度中由于剩余IP计数错误导致可调度Pod变少的问题

v1.28.3-aliyun-6.3.1ab2185e

2024年01月10日

  • 自定义弹性资源优先级调度

    • 修复了使用自定义弹性资源优先级调度时,ECI可用区亲和以及打散不生效的问题。

  • CPU拓扑感知调度

    • 避免重复给单个Pod分配相同CPU核,从而导致Pod在节点上启动失败。

  • ECI弹性调度

    • 修复了使用alibabacloud.com/burst-resource标签指定策略时,若标签的value不为eci或eci_only,依然会调度到ECI上的问题。

v1.28.3-aliyun-6.2.84d57ad9

2023年12月21日

新增自定义弹性资源优先级支持MatchLabelKeys,在应用发版时自动为不同版本进行分组。

v1.28.3-aliyun-6.1.ac950aa0

2023年12月13日

  • CapacityScheduling

    • 新增指定Quota功能,Pod上可通过quota.scheduling.alibabacloud.com/name指定自身所属Quota。

    • 新增队列关联功能,支持只统计被Kube Queue管理的Pod的资源量。

    • 优化抢占逻辑,新版本中CapacityScheduling抢占将不会导致被抢占Quota的Pod使用量低于Min值,同样不会导致抢占Quota的Pod使用量高于Min值。

  • 自定义弹性资源优先级

    • 新增支持更新ResourcePolicy的Unit和Node的Label,更新后将会同步修改Pod的Deletion-Cost。

    • 新增IgnoreTerminatingPod,支持在统计某个Unit下的Pod数量时忽略正在删除的Pod。

    • 新增IgnorePreviousPod选项,支持在统计某个Unit下的Pod数量时忽略CreationTimestamp早于关联的ResourcePolicy的Pod。

    • 新增PreemptPolicy选项,支持在Unit之间进行Pod抢占尝试。

  • GPUShare

    • 优化GPUShare调度速度,将Filter插件的P99调度延迟由毫秒级降低到微秒级。

v1.28.3-aliyun-5.8-89c55520

2023年10月28日

在1.28版本的ACK集群中支持此前的全部功能。

1.26版本变更记录

版本号

变更时间

变更内容

v1.26.3-aliyun-6.7.1.d466c692

2024年11月06日

  • 自定义弹性资源优先级调度

    • 新增支持感知触发弹性的Pod的数量。

    • Unit中的resource: elastic进入废弃状态,通过PodLabels中的k8s.aliyun.com/resource-policy-wait-for-ecs-scaling

  • CPU拓扑感知调度

    • 修复ECS机型变化时可能导致异常的问题。

v1.26.3-aliyun-6.7.0.9c293fb7

2024年11月04日

  • CapacityScheduling

    • 修复在没有ElasticQuotaTree的情况下也会执行弹性Quota抢占的问题。

  • 自定义弹性资源优先级调度

    • 新增支持ACS类型单元。

v1.26.3-aliyun-6.6.4.7a8f3f9d

2024年10月22日

优化虚拟节点调度相关提示信息,虚拟节点调度过程中不再发送Warning类型的事件。

v1.26.3-aliyun-6.6.3.67f250fe

2024年09月04日

  • SlurmOperator

    • 优化插件调度性能。

v1.26.3-aliyun-6.6.2.9ea0a6f5

2024年08月30日

  • InterPodAffinity

    • 修复新节点去除污点不会触发Pod重新调度的问题。

v1.26.3-aliyun-6.6.1.605b8a4f

2024年07月31日

  • SlurmOperator

    • 支持Kubernetes & Slurm集群混合调度。

  • 自定义弹性资源优先级调度

    • 优化产品功能,与自动伸缩节点池一起使用时避免不必要得弹出节点。

v1.26.3-aliyun-6.4.7.2a77d106

2024年06月27日

  • Coscheduling

    • 优化Coscheduling调度速度。

v1.26.3-aliyun-6.4.6.78cacfb4

2024年05月16日

  • CapacityScheduling

    • 修复偶发的错误提示:running AddPod on PreFilter plugin

  • 弹性调度

    • 新增使用alibabacloud.com/burst-resource生产eci时,生成wait for eci provisioning的事件。

v1.26.3-aliyun-6.4.5.7f36e9b3

2024年05月09日

v1.26.3-aliyun-6.4.3.e7de0a1e

2024年03月18日

  • 共享GPU调度

    • 支持提交ConfigMap进行指定卡的隔离。

  • 自定义弹性资源优先级调度

    • 新增支持elastic资源类型。

v1.26.3-aliyun-6.4.1.d24bc3c3

2024年02月21日

  • 优化Virtual Node在NodeResourceFit插件打分时的得分。目前Virtual Node在NodeResourceFit插件打分时总会得到0分,使得Preferred类型的NodeAffinity可以正常实现优先调度ECS节点的功能。

  • 新增支持NUMA联合调度

  • 自定义弹性资源优先级调度

    • 新增支持在Unit间尝试等待。

  • 修复剩余IP感知调度中由于剩余IP计数错误导致可调度Pod变少的问题

v1.26.3-aliyun-6.3.33fdc082

2024年01月10日

  • 自定义弹性资源优先级

    • 调度修复了使用自定义弹性资源优先级调度时,ECI可用区亲和以及打散不生效的问题。

  • CPU拓扑感知调度

    • 避免重复给单个Pod分配相同CPU核,从而导致Pod在节点上启动失败。

  • ECI弹性调度

    • 修复了使用alibabacloud.com/burst-resource标签指定策略时,若标签的value不为eci或eci_only,依然会调度到ECI上的问题。

  • CapacityScheduling

    • 新增ACK灵骏集群中自动启用任务抢占功能。

v1.26.3-aliyun-6.2.d9c15270

2023年12月21日

新增自定义弹性资源优先级支持MatchLabelKeys,在应用发版时自动为不同版本进行分组。

v1.26.3-aliyun-6.1.a40b0eef

2023年12月13日

  • CapacityScheduling

    • 新增指定Quota功能,Pod上可通过quota.scheduling.alibabacloud.com/name指定自身所属Quota。

    • 新增队列关联功能,支持只统计被Kube Queue管理的Pod的资源量。

    • 优化抢占逻辑,新版本中CapacityScheduling抢占将不会导致被抢占Quota的Pod使用量低于Min值,同样不会导致抢占Quota的Pod使用量高于Min值。

  • 自定义弹性资源优先级

    • 新增支持更新功能,支持更新ResourcePolicy的Unit,支持更新Node的Label,更新后将会同步修改Pod的Deletion-Cost。

    • 新增IgnoreTerminatingPod,支持在统计某个Unit下的Pod数量时忽略正在删除的Pod。

    • 新增IgnorePreviousPod选项,支持在统计某个Unit下的Pod数量时忽略CreationTimestamp早于关联的ResourcePolicy的Pod。

    • 新增PreemptPolicy选项,支持在Unit之间进行Pod抢占尝试。

  • GPUShare

    • 优化GPUShare调度速度,将Filter插件的P99调度延迟由毫秒级降低到微秒级。

v1.26.3-aliyun-5.9-cd4f2cc3

2023年11月16日

  • 优化由于云盘类型不满足调度失败的原因展示。

v1.26.3-aliyun-5.8-a1482f93

2023年10月16日

  • 新增支持Windows节点调度。

  • 优化Coscheduling处理多任务同时调度时的调度速度,减少任务阻塞的情况。

v1.26.3-aliyun-5.7-2f57d3ff

2023年09月20日

  • 修复GPUShare调度Pod时偶尔发生Admit失败的问题。

  • 调度器中新增感知节点剩余IP的插件,当节点上无剩余IP时不再向节点上调度Pod。

  • 调度器中新增拓扑感知调度插件,支持将Pod调度到同一拓扑域上,并且将自动在多个拓扑域上进行重试。

  • 调度器将以一秒的频率更新ElasticQuotaTree的Usage以及Request信息。

v1.26.3-aliyun-5.5-8b98a1cc

2023年07月05日

  • 修复Coscheduling调度过程中,偶尔Pod长时间Pending的问题。

  • 优化Coscheduling与弹性节点池同时使用时的使用体验。在部分Pod由于节点选择器配置错误而无法调度以及扩容时,PodGroup中的其他Pod不再触发节点池扩容。

v1.26.3-aliyun-5.4-21b4da4c

2023年07月03日

  • 修复ResourcePolicy Max属性失效的问题。

  • 优化大量Pending Pod对调度器性能的影响。集群中存在大量Pending Pod时,调度器吞吐量提升到与无Pending Pod时相近。

v1.26.3-aliyun-5.1-58a821bf

2023年05月26日

支持对PodGroup的min-available以及Matchpolicy等字段进行更新。

v1.26.3-aliyun-5.0-7b1ccc9d

2023年05月22日

  • 自定义弹性资源优先级功能支持在Unit字段中声明最大副本数。

  • 支持GPU拓扑感知调度。

v1.26.3-aliyun-4.1-a520c096

2023年04月27日

在Elasticquota超过限制或Gang Pod数量不满足时,不再通过autoscaler弹出节点。

1.24版本变更记录

版本号

变更时间

变更内容

v1.24.6-aliyun-6.5.0.37a567db(白名单开放)

2024年11月04日

自定义弹性资源优先级调度

  • 新增支持ACS类型单元。

v1.24.6-aliyun-6.4.6.c4d551a0

2024年05月16日

  • CapacityScheduling

    • 修复偶发的错误提示:running AddPod on PreFilter plugin

v1.24.6-aliyun-6.4.5.aab44b4a

2024年05月09日

v1.24.6-aliyun-6.4.3.742bd819

2024年03月18日

  • 共享GPU调度

    • 支持提交ConfigMap进行指定卡的隔离。

  • 自定义弹性资源优先级调度

    • 新增支持elastic资源类型。

v1.24.6-aliyun-6.4.1.14ebc575

2024年02月21日

  • 优化Virtual Node在NodeResourceFit插件打分时的得分。目前Virtual Node在NodeResourceFit插件打分时总会得到0分,使得Preferred类型的NodeAffinity可以正常实现优先调度ECS节点的功能。

  • 新增支持NUMA联合调度

  • 自定义弹性资源优先级调度

    • 新增支持在Unit间尝试等待。

  • 修复剩余IP感知调度中由于剩余IP计数错误导致可调度Pod变少的问题

v1.24.6-aliyun-6.3.548a9e59

2024年01月10日

  • 自定义弹性资源优先级调度

    • 调度修复了使用自定义弹性资源优先级调度时,ECI可用区亲和以及打散不生效的问题。

  • CPU拓扑感知调度

    • 避免重复给单个Pod分配相同CPU核,从而导致Pod在节点上启动失败。

  • ECI弹性调度

    • 修复了使用alibabacloud.com/burst-resource标签指定策略时,若标签的value不为eci或eci_only,依然会调度到ECI上的问题。

  • CapacityScheduling

    • 新增ACK灵骏集群中自动启用任务抢占功能。

v1.24.6-aliyun-6.2.0196baec

2023年12月21日

新增自定义弹性资源优先级支持MatchLabelKeys,在应用发版时自动为不同版本进行分组。

v1.24.6-aliyun-6.1.1900da95

2023年12月13日

  • CapacityScheduling

    • 新增指定Quota功能,Pod上可通过quota.scheduling.alibabacloud.com/name指定自身所属Quota。

    • 新增队列关联功能,支持只统计被Kube Queue管理的Pod的资源量。

    • 优化抢占逻辑,新版本中CapacityScheduling抢占将不会导致被抢占Quota的Pod使用量低于Min值,同样不会导致抢占Quota的Pod使用量高于Min值。

  • 自定义弹性资源优先级

    • 新增支持更新功能,支持更新ResourcePolicy的Unit,支持更新Node的Label,更新后将会同步修改Pod的Deletion-Cost。

    • 新增IgnoreTerminatingPod,支持在统计某个Unit下的Pod数量时忽略正在删除的Pod。

    • 新增IgnorePreviousPod选项,支持在统计某个Unit下的Pod数量时忽略CreationTimestamp早于关联的ResourcePolicy的Pod。

    • 新增PreemptPolicy选项,支持在Unit之间进行Pod抢占尝试。

  • GPUShare

    • 优化GPUShare调度速度,将Filter插件的P99调度延迟由毫秒级降低到微秒级。

v1.24.6-aliyun-5.9-e777ab5b

2023年11月16日

  • 优化由于云盘类型不满足调度失败的原因展示。

v1.24.6-aliyun-5.8-49fd8652

2023年10月16日

  • 新增支持Windows节点调度。

  • 优化Coscheduling处理多任务同时调度时的调度速度,减少任务阻塞的情况。

v1.24.6-aliyun-5.7-62c7302c

2023年09月20日

  • 修复GPUShare调度Pod时偶尔发生Admit失败的问题。

v1.24.6-aliyun-5.6-2bb99440

2023年08月31日

  • 调度器中新增感知节点剩余IP的插件,当节点上无剩余IP时不再向节点上调度Pod。

  • 调度器中新增拓扑感知调度插件,支持将Pod调度到同一拓扑域上,并且将自动在多个拓扑域上进行重试。

  • 调度器将以一秒的频率更新ElasticQuotaTree的Usage以及Request信息。

v1.24.6-aliyun-5.5-5e8aac79

2023年07月05日

  • 修复Coscheduling调度过程中,偶尔Pod长时间Pending的问题。

  • 优化Coscheduling与弹性节点池同时使用时的使用体验。在部分Pod由于节点选择器配置错误而无法调度以及扩容时,PodGroup中的其他Pod不再触发节点池扩容。

v1.24.6-aliyun-5.4-d81e785e

2023年07月03日

  • 修复ResourcePolicy Max属性失效的问题。

  • 优化大量Pending Pod对调度器性能的影响。集群中存在大量Pending Pod时,调度器吞吐量提升到与无Pending Pod时相近。

v1.24.6-aliyun-5.1-95d8a601

2023年05月26日

支持对Coscheduling的min-available以及Matchpolicy等字段进行更新。

v1.24.6-aliyun-5.0-66224258

2023年05月22日

  • 自定义弹性资源优先级功能支持在Unit字段中声明最大副本数。

  • 支持GPU拓扑感知调度。

v1.24.6-aliyun-4.1-18d8d243

2023年03月31日

ElasticResource支持将Pod调度到Arm VK节点上。

v1.24.6-4.0-330eb8b4-aliyun

2023年03月01日

  • GPUShare:

    • 修复GPU节点降配时调度器状态错误的问题。

    • 修复GPU节点无法满额分配显存的问题。

    • 支持抢占GPU Pod。

  • Coscheduling:

    • 支持通过PodGroup以及Koordinator API的方式申明Gang。

    • 支持通过Matchpolicy控制Gang的重试策略。

    • 支持Gang Group。

    • Gang的命名需要满足DNS子域名规则。

  • 自定义参数:支持Loadaware相关配置参数。

v1.24.6-3.2-4f45222b-aliyun

2023年01月13日

修复GPUShare内存计算不准确,导致Pod无法正常使用显存的问题。

v1.24.6-ack-3.1

2022年11月14日

  • GPU共享调度默认开启score功能(之前版本默认不开启score功能)。

  • 支持负载感知调度。

v1.24.6-ack-3.0

2022年09月27日

支持Capacity Scheduling。

v1.24.3-ack-2.0

2022年09月21日

  • 支持GPU共享调度。

  • 支持Coscheduling。

  • 支持ECI弹性调度。

  • 支持CPU智能调度。

1.22版本变更记录

版本号

变更时间

变更内容

v1.22.15-aliyun-6.4.5.08196303

2024年05月23日

  • 网络拓扑感知调度

    • 修复网络拓扑感知调度在偶发情况下无法调度的问题。

v1.22.15-aliyun-6.4.4.7fc564f8

2024年05月16日

  • CapacityScheduling

    • 修复偶发的错误提示:running AddPod on PreFilter plugin

v1.22.15-aliyun-6.4.3.e858447b

2024年04月22日

  • 自定义弹性资源优先级调度

    • 修复删除ResourcePolicy时偶尔导致状态异常的问题。

v1.22.15-aliyun-6.4.2.4e00a021

2024年03月18日

  • CapacityScheduling

    • 修复ACK灵骏集群中偶发抢占失败的问题。

  • 新增支持通过Configmap手动拉黑集群中特定GPU卡。

v1.22.15-aliyun-6.4.1.1205db85

2024年02月29日

  • 自定义弹性资源优先级调度

    • 修复偶尔发生的并发冲突问题。

v1.22.15-aliyun-6.4.0.145bb899

2024年02月28日

  • CapacityScheduling

    • 修复指定Quota功能导致Quota统计错误的问题。

v1.22.15-aliyun-6.3.a669ec6f

2024年01月10日

  • 自定义弹性资源优先级调度

    • 修复了使用自定义弹性资源优先级调度时ECI可用区亲和以及打散不生效的问题。

    • 新增支持MatchLabelKeys

  • CPU拓扑感知调度

    • 修复了可能重复给单个Pod分配多次相同CPU核导致Pod在节点上启动失败的问题。

  • ECI弹性调度

    • 修复了使用alibabacloud.com/burst-resource标签指定策略时,若标签的value不为eci或eci_only,依然会调度到ECI上的问题。

  • CapacityScheduling

    • 新增ACK灵骏集群中自动启用任务抢占功能。

v1.22.15-aliyun-6.1.e5bf8b06

2023年12月13日

  • CapacityScheduling

    • 新增指定Quota功能,Pod上可通过quota.scheduling.alibabacloud.com/name指定自身所属Quota。

    • 新增队列关联功能,可通过配置设置Quota只统计被Kube Queue管理的Pod的资源量。

    • 优化抢占逻辑,新版本中CapacityScheduling抢占将不会导致被抢占Quota的Pod使用量低于Min值,同样不会导致抢占Quota的Pod使用量高于Min值。

  • 自定义弹性资源优先级

    • 新增支持更新功能,支持更新ResourcePolicy的Unit,支持更新Node的Label,更新后将会同步修改Pod的Deletion-Cost。

    • 新增IgnoreTerminatingPod,支持在统计某个Unit下的Pod数量时忽略正在删除的Pod。

    • 新增IgnorePreviousPod选项,支持在统计某个Unit下的Pod数量时忽略CreationTimestamp早于关联的ResourcePolicy的Pod。

    • 新增PreemptPolicy选项,支持在Unit之间进行Pod抢占尝试。

  • GPUShare

    • 优化GPUShare调度速度,将Filter插件的P99调度延迟由毫秒级降低到微秒级。

v1.22.15-aliyun-5.9-04a5e6eb

2023年11月16日

  • 优化由于云盘类型不满足调度失败的原因展示。

v1.22.15-aliyun-5.8-29a640ae

2023年10月16日

  • 新增支持Windows节点调度。

  • 优化Coscheduling处理多任务同时调度时的调度速度,减少任务阻塞的情况。

v1.22.15-aliyun-5.7-bfcffe21

2023年09月20日

  • 修复GPUShare调度Pod时偶尔发生Admit失败的问题。

v1.22.15-aliyun-5.6-6682b487

2023年08月14日

  • 调度器中新增感知节点剩余IP的插件,当节点上无剩余IP时不再向节点上调度Pod。

  • 调度器中新增拓扑感知调度插件,支持将Pod调度到同一拓扑域上,并且将自动在多个拓扑域上进行重试。

  • 调度器将以一秒的频率更新ElasticQuotaTree的Usage以及Request信息。

v1.22.15-aliyun-5.5-82f32f68

2023年07月05日

  • 修复Coscheduling调度过程中,偶尔Pod长时间Pending的问题。

  • 优化PodGroup与弹性节点池同时使用时的使用体验。在部分Pod由于节点选择器配置错误而无法调度以及扩容时,PodGroup中的其他Pod不再触发节点池扩容。

v1.22.15-aliyun-5.4-3b914a05

2023年07月03日

  • 修复ResourcePolicy Max属性失效的问题。

  • 优化大量Pending Pod对调度器性能的影响。集群中存在大量Pending Pod时,调度器吞吐量提升到与无Pending Pod时相近。

v1.22.15-aliyun-5.1-8a479926

2023年05月26日

支持对PodGroup的min-available以及Matchpolicy等字段进行更新。

v1.22.15-aliyun-5.0-d1ab67d9

2023年05月22日

  • 自定义弹性资源优先级功能支持在Unit字段中声明最大副本数。

  • 支持GPU拓扑感知调度。

v1.22.15-aliyun-4.1-aec17f35

2023年03月31日

ElasticResource支持将Pod调度到Arm VK节点上。

v1.22.15-aliyun-4.0-384ca5d5

2023年3月3日

  • GPUShare:

    • 修复GPU节点降配时调度器状态错误的问题。

    • 修复GPU节点无法满额分配显存的问题。

    • 支持抢占GPU Pod。

  • Coscheduling:

    • 支持通过PodGroup以及Koordinator API的方式申明Gang。

    • 支持通过Matchpolicy控制Gang的重试策略。

    • 支持Gang Group。

    • Gang的命名需要满足DNS子域名规则。

  • 自定义参数:支持Loadaware相关配置参数。

v1.22.15-2.1-a0512525-aliyun

2023年01月10日

修复GPUShare内存计算不准确导致Pod无法正常使用显存的问题。

v1.22.15-ack-2.0

2022年11月30日

  • 调度器支持自定义参数。

  • 支持负载感知调度。

  • 支持基于节点池优先级的弹性调度。

  • 支持GPU共享算力调度。

v1.22.3-ack-1.1

2022年02月27日

修复共享GPU调度在集群只有一个节点时无法调度的问题。

v1.22.3-ack-1.0

2021年01月04日

  • 支持CPU智能调度。

  • 支持Coscheduling。

  • 支持Capacity Scheduling。

  • 支持ECI弹性调度。

  • 支持GPU共享调度。

1.20版本变更记录

版本号

变更时间

变更内容

v1.20.11-aliyun-10.6-f95f7336

2023年09月22日

  • 修复ElasticQuotaTree中Quota使用量偶发统计错误的问题。

v1.20.11-aliyun-10.3-416caa03

2023年05月26日

  • 修复GPUShare在低版本K8s中偶尔Cache错误的问题。

v1.20.11-aliyun-10.2-f4a371d3

2023年04月27日

  • ElasticResource支持将Pod调度到Arm VK 节点上。

  • 修复Loadaware scheduling由于CPU使用量超过请求量导致调度失败的问题。

v1.20.11-aliyun-10.0-ae867721

2023年04月03日

Coscheduling调度支持MatchPolicy。

v1.20.11-aliyun-9.2-a8f8c908

2023年03月08日

  • CapacityScheduling:修复存在同名Quota导致调度器状态错误的问题。

  • 支持云盘调度。

  • 共享GPU调度:

    • 修复GPU节点降配时调度器状态错误的问题。

    • 修复偶发GPU节点无法满额分配显存的问题。

    • 支持抢占GPU Pod。

  • CPU拓扑感知调度:开启CPU调度的Pod不会调度到未开启Numa的节点上。

  • 支持自定义参数。

v1.20.4-ack-8.0

2022年08月29日

修复已知bug。

v1.20.4-ack-7.0

2022年02月22日

支持基于节点池优先级的弹性调度。

v1.20.4-ack-4.0

2021年09月02日

  • 支持负载感知调度。

  • 支持ECI弹性调度。

v1.20.4-ack-3.0

2021年05月26日

支持基于Socket和L3 cache的CPU智能调度。

v1.20.4-ack-2.0

2021年05月14日

支持Capacity Scheduling。

v1.20.4-ack-1.0

2021年04月07日

  • 支持CPU智能调度。

  • 支持Coscheduling。

  • 支持GPU拓扑感知调度。

  • 支持GPU共享调度。

1.18版本变更记录

版本号

变更时间

变更内容

v1.18-ack-4.0

2021年09月02日

支持负载感知调度。

v1.18-ack-3.1

2021年06月05日

ECI调度兼容节点池。

v1.18-ack-3.0

2021年03月12日

支持ECI/ECS统一调度。

v1.18-ack-2.0

2020年11月30日

支持GPU拓扑感知调度支持GPU共享调度。

v1.18-ack-1.0

2020年09月24日

支持CPU智能调度支持Coscheduling。

1.16版本变更记录

版本号

变更时间

变更内容

v1.16-ack-1.0

2020年07月21日

  • 在Kubernetes v1.16集群中支持CPU智能调度。

  • 在Kubernetes v1.16集群中支持Coscheduling。