×
描述

Scheduler 保持集群范围的配置信息以运行 Kubernetes 调度程序并影响其放置决策。此配置的规范名称为cluster。兼容性级别 1:在主要版本中稳定至少 12 个月或 3 个次要版本(以较长者为准)。

类型

对象

必需
  • spec

规范

属性 类型 描述

apiVersion

字符串

APIVersion 定义此对象表示的版本化模式。服务器应将识别的模式转换为最新的内部值,并可能拒绝无法识别的值。更多信息:https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources

kind

字符串

Kind 是一个字符串值,表示此对象表示的 REST 资源。服务器可以从客户端提交请求的端点推断出这一点。不能更新。使用驼峰式命名法。更多信息:https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

metadata

ObjectMeta

标准对象的元数据。更多信息:https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

spec

对象

spec 包含用户可设置的配置值

status

对象

status 包含来自集群的观察值。它们不能被覆盖。

.spec

描述

spec 包含用户可设置的配置值

类型

对象

属性 类型 描述

defaultNodeSelector

字符串

defaultNodeSelector 有助于设置集群范围的默认节点选择器,以将 Pod 放置限制在特定节点。这适用于在所有命名空间中创建的 Pod,并与 Pod 上已设置的任何现有 nodeSelector 创建交集,从而进一步约束该 Pod 的选择器。例如,defaultNodeSelector: "type=user-node,region=east" 会将 Pod spec 中的 nodeSelector 字段设置为 "type=user-node,region=east",用于在所有命名空间中创建的所有 Pod。即使设置了此字段,具有项目范围节点选择器的命名空间也不会受到影响。这会向命名空间添加一个注释部分。例如,如果使用 node-selector='type=user-node,region=east' 创建新的命名空间,则注释 openshift.io/node-selector: type=user-node,region=east 将添加到项目中。当在项目上设置 openshift.io/node-selector 注释时,优先使用该值而不是我们为 defaultNodeSelector 字段设置的值。例如,openshift.io/node-selector: "type=user-node,region=west" 表示在 defaultNodeSelector 中设置的 "type=user-node,region=east" 默认值将不会应用。

mastersSchedulable

布尔值

MastersSchedulable 允许 master 节点可调度。启用此标志后,集群中的所有 master 节点都将变为可调度状态,以便工作负载 Pod 可以在其上运行。此字段的默认值为 false,这意味着没有 master 节点可调度。重要提示:一旦工作负载 Pod 开始在 master 节点上运行,必须格外小心,以确保集群关键的控制平面组件不受影响。请在进行尽职调查后启用此字段。

policy

对象

已弃用:调度程序 Policy API 已弃用,将在将来的版本中删除。policy 是对包含调度程序策略的 ConfigMap 的引用,该策略具有用户指定的谓词和优先级。如果此 ConfigMap 不可用,调度程序将默认为使用 DefaultAlgorithmProvider。此 configmap 的命名空间为 openshift-config。

profile

字符串

profile 设置应设置哪个调度配置文件以配置新 Pod 的调度决策。有效值为“LowNodeUtilization”、“HighNodeUtilization”、“NoScoring”,默认为“LowNodeUtilization”

.spec.policy

描述

已弃用:调度程序 Policy API 已弃用,将在将来的版本中删除。policy 是对包含调度程序策略的 ConfigMap 的引用,该策略具有用户指定的谓词和优先级。如果此 ConfigMap 不可用,调度程序将默认为使用 DefaultAlgorithmProvider。此 configmap 的命名空间为 openshift-config。

类型

对象

必需
  • name

属性 类型 描述

name

字符串

name 是引用的 config map 的 metadata.name

.status

描述

status 包含来自集群的观察值。它们不能被覆盖。

类型

对象

API 端点

提供以下 API 端点

  • /apis/config.openshift.io/v1/schedulers

    • DELETE:删除 Scheduler 集合

    • GET:列出 Scheduler 对象

    • POST:创建一个 Scheduler

  • /apis/config.openshift.io/v1/schedulers/{name}

    • DELETE:删除一个 Scheduler

    • GET:读取指定的 Scheduler

    • PATCH:部分更新指定的 Scheduler

    • PUT:替换指定的 Scheduler

  • /apis/config.openshift.io/v1/schedulers/{name}/status

    • GET:读取指定的 Scheduler 的状态

    • PATCH:部分更新指定的 Scheduler 的状态

    • PUT:替换指定的 Scheduler 的状态

/apis/config.openshift.io/v1/schedulers

HTTP 方法

DELETE

描述

删除 Scheduler 集合

表 1. HTTP 响应
HTTP 代码 响应正文

200 - OK

Status 模式

401 - 未授权

HTTP 方法

GET

描述

列出 Scheduler 对象

表 2. HTTP 响应
HTTP 代码 响应正文

200 - OK

SchedulerList 模式

401 - 未授权

HTTP 方法

POST

描述

创建一个 Scheduler

表 3. 查询参数
参数 类型 描述

dryRun

字符串

如果存在,则表示不应持久化修改。无效或无法识别的 dryRun 指令将导致错误响应,并且不会进一步处理请求。有效值为:- All:将处理所有 dry run 阶段

fieldValidation

字符串

fieldValidation 指令指示服务器如何处理请求 (POST/PUT/PATCH) 中包含未知字段或重复字段的对象。有效值如下:- Ignore:忽略任何未知字段,这些字段将从对象中静默删除,并且只保留解码器遇到的最后一个重复字段。这是 v1.23 之前的默认行为。- Warn:针对每个从对象中删除的未知字段和遇到的每个重复字段,通过标准警告响应标头发送警告。如果没有任何其他错误,请求仍然会成功,并且只会保留任何重复字段中的最后一个。这是 v1.23 及更高版本的默认值。- Strict:如果任何未知字段将从对象中删除,或者存在任何重复字段,则将请求失败并返回 BadRequest 错误。服务器返回的错误将包含遇到的所有未知字段和重复字段。

表 4. 请求体参数
参数 类型 描述

body

Scheduler 模式

表 5. HTTP 响应
HTTP 代码 响应正文

200 - OK

Scheduler 模式

201 - 已创建

Scheduler 模式

202 - 已接受

Scheduler 模式

401 - 未授权

/apis/config.openshift.io/v1/schedulers/{name}

表 6. 全局路径参数
参数 类型 描述

name

字符串

Scheduler 的名称

HTTP 方法

DELETE

描述

删除 Scheduler

表 7. 查询参数
参数 类型 描述

dryRun

字符串

如果存在,则表示不应持久化修改。无效或无法识别的 dryRun 指令将导致错误响应,并且不会进一步处理请求。有效值为:- All:将处理所有 dry run 阶段

表 8. HTTP 响应
HTTP 代码 响应正文

200 - OK

Status 模式

202 - 已接受

Status 模式

401 - 未授权

HTTP 方法

GET

描述

读取指定的 Scheduler

表 9. HTTP 响应
HTTP 代码 响应正文

200 - OK

Scheduler 模式

401 - 未授权

HTTP 方法

PATCH

描述

部分更新指定的 Scheduler

表 10. 查询参数
参数 类型 描述

dryRun

字符串

如果存在,则表示不应持久化修改。无效或无法识别的 dryRun 指令将导致错误响应,并且不会进一步处理请求。有效值为:- All:将处理所有 dry run 阶段

fieldValidation

字符串

fieldValidation 指令指示服务器如何处理请求 (POST/PUT/PATCH) 中包含未知字段或重复字段的对象。有效值如下:- Ignore:忽略任何未知字段,这些字段将从对象中静默删除,并且只保留解码器遇到的最后一个重复字段。这是 v1.23 之前的默认行为。- Warn:针对每个从对象中删除的未知字段和遇到的每个重复字段,通过标准警告响应标头发送警告。如果没有任何其他错误,请求仍然会成功,并且只会保留任何重复字段中的最后一个。这是 v1.23 及更高版本的默认值。- Strict:如果任何未知字段将从对象中删除,或者存在任何重复字段,则将请求失败并返回 BadRequest 错误。服务器返回的错误将包含遇到的所有未知字段和重复字段。

表 11. HTTP 响应
HTTP 代码 响应正文

200 - OK

Scheduler 模式

401 - 未授权

HTTP 方法

PUT

描述

替换指定的 Scheduler

表 12. 查询参数
参数 类型 描述

dryRun

字符串

如果存在,则表示不应持久化修改。无效或无法识别的 dryRun 指令将导致错误响应,并且不会进一步处理请求。有效值为:- All:将处理所有 dry run 阶段

fieldValidation

字符串

fieldValidation 指令指示服务器如何处理请求 (POST/PUT/PATCH) 中包含未知字段或重复字段的对象。有效值如下:- Ignore:忽略任何未知字段,这些字段将从对象中静默删除,并且只保留解码器遇到的最后一个重复字段。这是 v1.23 之前的默认行为。- Warn:针对每个从对象中删除的未知字段和遇到的每个重复字段,通过标准警告响应标头发送警告。如果没有任何其他错误,请求仍然会成功,并且只会保留任何重复字段中的最后一个。这是 v1.23 及更高版本的默认值。- Strict:如果任何未知字段将从对象中删除,或者存在任何重复字段,则将请求失败并返回 BadRequest 错误。服务器返回的错误将包含遇到的所有未知字段和重复字段。

表 13. 请求体参数
参数 类型 描述

body

Scheduler 模式

表 14. HTTP 响应
HTTP 代码 响应正文

200 - OK

Scheduler 模式

201 - 已创建

Scheduler 模式

401 - 未授权

/apis/config.openshift.io/v1/schedulers/{name}/status

表 15. 全局路径参数
参数 类型 描述

name

字符串

Scheduler 的名称

HTTP 方法

GET

描述

读取指定的 Scheduler 的状态

表 16. HTTP 响应
HTTP 代码 响应正文

200 - OK

Scheduler 模式

401 - 未授权

HTTP 方法

PATCH

描述

部分更新指定的 Scheduler 的状态

表 17. 查询参数
参数 类型 描述

dryRun

字符串

如果存在,则表示不应持久化修改。无效或无法识别的 dryRun 指令将导致错误响应,并且不会进一步处理请求。有效值为:- All:将处理所有 dry run 阶段

fieldValidation

字符串

fieldValidation 指令指示服务器如何处理请求 (POST/PUT/PATCH) 中包含未知字段或重复字段的对象。有效值如下:- Ignore:忽略任何未知字段,这些字段将从对象中静默删除,并且只保留解码器遇到的最后一个重复字段。这是 v1.23 之前的默认行为。- Warn:针对每个从对象中删除的未知字段和遇到的每个重复字段,通过标准警告响应标头发送警告。如果没有任何其他错误,请求仍然会成功,并且只会保留任何重复字段中的最后一个。这是 v1.23 及更高版本的默认值。- Strict:如果任何未知字段将从对象中删除,或者存在任何重复字段,则将请求失败并返回 BadRequest 错误。服务器返回的错误将包含遇到的所有未知字段和重复字段。

表 18. HTTP 响应
HTTP 代码 响应正文

200 - OK

Scheduler 模式

401 - 未授权

HTTP 方法

PUT

描述

替换指定的 Scheduler 的状态

表 19. 查询参数
参数 类型 描述

dryRun

字符串

如果存在,则表示不应持久化修改。无效或无法识别的 dryRun 指令将导致错误响应,并且不会进一步处理请求。有效值为:- All:将处理所有 dry run 阶段

fieldValidation

字符串

fieldValidation 指令指示服务器如何处理请求 (POST/PUT/PATCH) 中包含未知字段或重复字段的对象。有效值如下:- Ignore:忽略任何未知字段,这些字段将从对象中静默删除,并且只保留解码器遇到的最后一个重复字段。这是 v1.23 之前的默认行为。- Warn:针对每个从对象中删除的未知字段和遇到的每个重复字段,通过标准警告响应标头发送警告。如果没有任何其他错误,请求仍然会成功,并且只会保留任何重复字段中的最后一个。这是 v1.23 及更高版本的默认值。- Strict:如果任何未知字段将从对象中删除,或者存在任何重复字段,则将请求失败并返回 BadRequest 错误。服务器返回的错误将包含遇到的所有未知字段和重复字段。

表 20. 请求体参数
参数 类型 描述

body

Scheduler 模式

表 21. HTTP 响应
HTTP 代码 响应正文

200 - OK

Scheduler 模式

201 - 已创建

Scheduler 模式

401 - 未授权