You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

K8s中Scheduling Policies与调度配置的关系及默认策略查询方法

Scheduling Policies与Scheduling Profiles的核心关系
  • Scheduling Policies是K8s v1.23版本之前已废弃的调度配置方式,基于静态配置文件定义调度的过滤、打分逻辑,仅支持单调度场景的规则配置。
  • Scheduling Profiles是v1.18版本开始引入、v1.23之后正式成为默认配置方案的新一代调度框架配置方式,基于可扩展的调度插件体系实现,支持同时配置多个调度器、自定义不同调度阶段的插件逻辑,是Scheduling Policies的官方替代方案。

二者的功能重叠本质是早期Scheduling Profiles设计时兼容了大部分Scheduling Policies里的调度规则,后续K8s迭代过程中逐步把旧规则迁移到Profiles的插件体系中,部分规则做了重构、合并或者更名,所以才会出现你观察到的字段不一致情况:

  • 你提到的NodeUnschedulable属于Profiles的预过滤阶段内置插件,在旧Policies体系里这个逻辑是硬编码在调度流程里的,不需要单独配置,所以Policies里没有对应字段。
  • 你提到的CheckNodePIDPressure在旧Policies里是独立的过滤规则,到Profiles体系里被合并到了NodeResourcesFit插件中统一实现,所以不会单独出现在Profiles的插件列表里。
查询调度默认启动策略的方法
  • 对于v1.23及以后使用Scheduling Profiles的版本,可以直接执行kube-scheduler --write-config-to /tmp/default-sched-config.yaml命令,导出当前版本的默认Profiles配置,所有默认启用的插件、参数都会完整输出。
  • 对于v1.23之前还在使用Scheduling Policies的版本,可以执行kube-scheduler --help查看默认启用的过滤、打分插件列表,或者查询对应版本的K8s调度文档的默认策略说明。
  • 对于已经运行的集群,可以直接查看kube-scheduler的启动参数,--config参数指定的配置文件里会明确声明当前使用的调度策略,如果没有指定自定义配置,就是使用对应版本的默认规则。

内容的提问来源于stack exchange,提问作者moluzhui

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 11:06:00