All Products
Search
Document Center

Container Compute Service:kube-scheduler

Last Updated:Mar 26, 2026

The kube-scheduler is a control plane component. It schedules pods to suitable nodes in a cluster based on resource requirements.

Introduction to kube-scheduler

kube-scheduler assigns each pod to a suitable virtual node in an ACS cluster based on pod requirements, node resources, and other properties. For background, see the Kubernetes documentation on kube-scheduler.

Note

Starting from Kubernetes 1.32, the versioning rules for the scheduler in ACS are consistent with those for ACK. For more information, see kube-scheduler.

How it works

kube-scheduler processes pods in a scheduling queue. For each pod, it identifies candidate nodes and selects the best fit using a two-phase pipeline:

  1. Filter — each filter plugin eliminates nodes that cannot run the pod (for example, nodes with insufficient CPU or memory).

  2. Score — each scoring plugin assigns a score to each remaining node. The final node score is the sum of plugin_score × plugin_weight across all active scoring plugins. The pod is bound to the highest-scoring node.

ACS automatically filters out zones with high resource usage during scheduling. This zone filtering happens in the filter phase and is not affected by scoring plugin weights.

Usage notes

kube-scheduler is installed by default when you create a cluster. For a full list of supported scheduling features, see Scheduling overview.

Configure kube-scheduler

Configure custom parameters for kube-scheduler from the ACS console.

  1. Log on to the ACS console. In the left-side navigation pane, click Clusters.

  2. On the Clusters page, find the target cluster and click its ID. In the left navigation pane, choose Operations > Add-ons.

  3. On the Core Components tab, find the Kube Scheduler component. Click Configuration in the lower-right corner of the card.

  4. In the dialog box that appears, configure the parameters described below, then save your changes.

Different scheduler versions support different features and custom parameters. For version-specific feature details, see kube-scheduler.

Parameters

ParameterDescriptionTypeValueDefault
Enable Zone RecommendationACS automatically filters out zones with high resource usage during scheduling. For more information, see Resource recommendation feature.Booleantrue / falsetrue
Enable custom labels and schedulers for GPU-HPN nodesEnables custom labels and custom schedulers for GPU-HPN nodes. For more information, see Use a custom scheduler. To manage node labels and taints, see Manage node labels and taints.Booleantrue / falsefalse
scorePluginWeightsCustom weight parameters for scoring plugins. See scorePluginWeights below.ObjectSee belowSee below

scorePluginWeights

scorePluginWeights lets you adjust the relative influence of each scoring plugin. The final node score is the sum of plugin_score × plugin_weight across all active plugins, so a higher weight gives a plugin proportionally more influence over the scheduling outcome.

Supported plugins:

  • Community plugins: NodeAffinity, PodTopologySpread, InnerPodAffinity, TaintToleration. For details on affinity policies, see the Kubernetes documentation on assigning pods to nodes. For toleration policies, see the Kubernetes documentation on taints and tolerations.

  • Alibaba Cloud proprietary plugins: ServerlessScheduling — for general-purpose, performance, and GPU compute classes, this plugin prioritizes zones with more available platform resources based on resource recommendations.

Default weights:

PluginDefault weight
NodeAffinity1
PodTopologySpread1
InnerPodAffinity1
TaintToleration1
ServerlessScheduling2

Parameter format:

FieldTypeValue range
pluginstringAny plugin from the supported plugin list
weightint1–10,000
Important

ACS automatically filters out zones with high resource usage during scheduling. This filtering happens before scoring and is not affected by scorePluginWeights. When using affinity-related scoring policies, select multiple recommended zones for the pod to make sure the scoring policies take effect. For more information, see Resource recommendation feature.

Change history

Version 1.32

VersionChange timeDescription
v1.32.0-aliyun.6.9.7.eb18a8a9September 22, 2025Bug fix: Fixed an issue where pod scheduling was stuck in the Pending state when strong pod anti-affinity and topology spread constraints were used. This issue was introduced in v1.32.0-aliyun.6.9.6.4e1407c2.
v1.32.0-aliyun.6.9.6.4e1407c2September 17, 2025New feature: Added a switch to enable or disable the zone resource recommendation feature. Optimization: Improved scheduling retry efficiency for pods that use PersistentVolumeClaims (PVCs). Optimized the PodTopologySpread policy: when whenUnsatisfiable is set to ScheduleAnyway, pods being created are now included in the topology distribution calculation.
v1.32.0-aliyun.6.9.5.ccfc0094July 09, 2025Initial release for ACS cluster version 1.32. Includes all features from v1.31.0-aliyun-1.4.2.

Version 1.31

VersionChange timeDescription
v1.31.0-aliyun-1.4.4September 22, 2025Bug fix: Fixed an issue where pod scheduling was stuck in the Pending state when strong pod anti-affinity and topology spread constraints were used. This issue was introduced in v1.31.0-aliyun-1.4.3.
v1.31.0-aliyun-1.4.3September 17, 2025New feature: Added a switch to enable or disable the zone resource recommendation feature. Optimization: Improved scheduling retry efficiency for pods that use PVCs. Optimized the PodTopologySpread policy: when whenUnsatisfiable is set to ScheduleAnyway, pods being created are now included in the topology distribution calculation.
v1.31.0-aliyun-1.4.2July 09, 2025Optimized internal log printing and base image.
v1.31.0-aliyun-1.4.1May 19, 2025Added support for configuring custom weight parameters for scoring plugins (scorePluginWeights).
v1.31.0-aliyun-1.4.0April 09, 2025Optimized the scheduling flow for pods that use WaitForFirstConsumer (WFFC) PVCs. When a pod uses a WFFC PVC and specifies a vSwitch, also specify the corresponding zone in the pod's affinity settings. The scheduler ensures the zone assigned to the PVC matches the vSwitch to prevent the pod from getting stuck in the Pending state. For more information, see Pod Annotation features.
v1.31.0-aliyun-1.3.1March 20, 2025GPU sharing and scheduling now supports the static policy and QoS configuration. Improved fault tolerance for invalid configurations in custom priority scheduling.
v1.31.0-aliyun-1.3.0February 08, 2025Fixed a disk scheduling issue for pods that use WaitForFirstConsumer PVCs. Added support for configuring custom schedulers for GPU-HPN pods.
v1.31.0-aliyun-1.2.0November 29, 2024Initial release for ACS cluster version 1.31.

Version 1.30

VersionChange timeDescription
v1.30.3-aliyun-1.4.4September 22, 2025Bug fix: Fixed an issue where pod scheduling was stuck in the Pending state when strong pod anti-affinity and topology spread constraints were used. This issue was introduced in v1.30.3-aliyun-1.4.3.
v1.30.3-aliyun-1.4.3September 17, 2025New feature: Added a switch to enable or disable the zone resource recommendation feature. Optimization: Improved scheduling retry efficiency for pods that use PVCs. Optimized the PodTopologySpread policy: when whenUnsatisfiable is set to ScheduleAnyway, pods being created are now included in the topology distribution calculation.
v1.30.3-aliyun-1.4.2July 09, 2025Optimized internal log printing and base image.
v1.30.3-aliyun-1.4.1May 19, 2025Added support for configuring custom weight parameters for scoring plugins (scorePluginWeights).
v1.30.3-aliyun-1.4.0April 09, 2025Optimized the scheduling flow for pods that use WFFC PVCs. When a pod uses a WFFC PVC and specifies a vSwitch, also specify the corresponding zone in the pod's affinity settings. The scheduler ensures the zone assigned to the PVC matches the vSwitch to prevent the pod from getting stuck in the Pending state. For more information, see Pod Annotation features.
v1.30.3-aliyun-1.3.1March 20, 2025GPU sharing and scheduling now supports the static policy and QoS configuration. Improved fault tolerance for invalid configurations in custom priority scheduling.
v1.30.3-aliyun-1.3.0February 08, 2025Fixed a disk scheduling issue for pods that use waitForFirstConsumer PVCs. Added support for configuring custom schedulers for GPU-HPN pods.
v1.30.3-aliyun-1.2.0November 29, 2024Optimized pod scheduling efficiency. The acs-virtual-node component must be version v2.12.0-acs.9 or later.
v1.30.3-aliyun-1.1.1September 09, 2024Initial release for ACS cluster version 1.30.

Version 1.28

VersionChange timeDescription
v1.28.12-aliyun-1.4.4September 22, 2025Bug fix: Fixed an issue where pod scheduling was stuck in the Pending state when strong pod anti-affinity and topology spread constraints were used. This issue was introduced in v1.28.12-aliyun-1.4.3.
v1.28.12-aliyun-1.4.3September 17, 2025New feature: Added a switch to enable or disable the zone resource recommendation feature. Optimization: Improved scheduling retry efficiency for pods that use PVCs. Optimized the PodTopologySpread policy: when whenUnsatisfiable is set to ScheduleAnyway, pods being created are now included in the topology distribution calculation.
v1.28.12-aliyun-1.4.2July 09, 2025Optimized internal log printing and base image.
v1.28.12-aliyun-1.4.1May 19, 2025Added support for configuring custom weight parameters for scoring plugins (scorePluginWeights).
v1.28.12-aliyun-1.4.0April 09, 2025Optimized the scheduling flow for pods that use WFFC PVCs. When a pod uses a WFFC PVC and specifies a vSwitch, also specify the corresponding zone in the pod's affinity settings. The scheduler ensures the zone assigned to the PVC matches the vSwitch to prevent the pod from getting stuck in the Pending state. For more information, see Pod Annotation features.
v1.28.9-aliyun-1.3.1March 20, 2025GPU sharing and scheduling now supports the static policy and QoS configuration. Improved fault tolerance for invalid configurations in custom priority scheduling.
v1.28.9-aliyun-1.3.0February 08, 2025Fixed a disk scheduling issue for pods that use waitForFirstConsumer PVCs. Added support for configuring custom schedulers for GPU-HPN pods.
v1.28.9-aliyun-1.2.0November 29, 2024Optimized pod scheduling efficiency. The acs-virtual-node component must be version v2.12.0-acs.9 or later.
v1.28.9-aliyun-1.1.1September 06, 2024Optimized event notification messages.
v1.28.9-aliyun-1.1.0August 22, 2024Added support for custom resource priority scheduling.
v1.28.9-aliyun-1.0.1.dfd9511fJuly 12, 2024Optimized internal interfaces.
v1.28.9-aliyun-1.0.0b72f000June 15, 2024Initial release for ACS cluster version 1.28.

Version 1.26

VersionChange timeDescription
v1.26.3-aliyun-1.3.1March 20, 2025GPU sharing and scheduling now supports the static policy and QoS configuration. Improved fault tolerance for invalid configurations in custom priority scheduling.
v1.26.3-aliyun-1.3.0February 08, 2025Fixed a disk scheduling issue for pods that use waitForFirstConsumer PVCs. Added support for configuring custom schedulers for GPU-HPN pods.
v1.26.3-aliyun-1.2.0November 29, 2024Optimized pod scheduling efficiency. The acs-virtual-node component must be version v2.12.0-acs.9 or later.
v1.26.3-aliyun-1.1.1September 06, 2024Optimized event notification messages.
v1.26.3-aliyun-1.1.0August 22, 2024Added support for custom resource priority scheduling.
v1.26.3-aliyun-1.0.1.4d326e78July 12, 2024Optimized internal interfaces.
v1.26.3-aliyun-1.0.fa88f9aeJune 25, 2024Initial release for ACS cluster version 1.26.