From fa09be3e562bc533b2fcde736d1024cb42186a51 Mon Sep 17 00:00:00 2001 From: Michael Date: Sun, 28 Aug 2022 22:45:50 +0800 Subject: [PATCH] [zh] Sync1.25 /reference/scheduling/config.md --- .../zh-cn/docs/reference/scheduling/config.md | 104 ++++++++++-------- 1 file changed, 58 insertions(+), 46 deletions(-) diff --git a/content/zh-cn/docs/reference/scheduling/config.md b/content/zh-cn/docs/reference/scheduling/config.md index 1c751d4b924..2d2692c5493 100644 --- a/content/zh-cn/docs/reference/scheduling/config.md +++ b/content/zh-cn/docs/reference/scheduling/config.md @@ -8,7 +8,7 @@ title: Scheduler Configuration content_type: concept weight: 20 --> -{{< feature-state for_k8s_version="v1.19" state="beta" >}} +{{< feature-state for_k8s_version="v1.25" state="stable" >}} 你可以通过运行 `kube-scheduler --config ` 来设置调度模板, -使用 KubeSchedulerConfiguration ([v1beta2](/zh-cn/docs/reference/config-api/kube-scheduler-config.v1beta2/) -或者 [v1beta3](/zh-cn/docs/reference/config-api/kube-scheduler-config.v1beta3/)) 结构体。 +使用 KubeSchedulerConfiguration([v1beta3](/zh-cn/docs/reference/config-api/kube-scheduler-config.v1beta3/) +或 [v1](/zh-cn/docs/reference/config-api/kube-scheduler-config.v1/))结构体。 +KubeSchedulerConfiguration [v1beta2](/zh-cn/docs/reference/config-api/kube-scheduler-config.v1beta2/) +在 v1.25 中已弃用,并将在 v1.26 中移除。在将 Kubernetes 升级到 v1.25 之前,请将 KubeSchedulerConfiguration 迁移到 +[v1beta3](/zh-cn/docs/reference/config-api/kube-scheduler-config.v1beta3/) 或 [v1](/zh-cn/docs/reference/config-api/kube-scheduler-config.v1/)。 +{{< /note >}} + @@ -153,7 +165,7 @@ extension points: --> 11. `postBind`:这是一个信息扩展点,在 Pod 绑定了节点之后调用。 12. `multiPoint`:这是一个仅配置字段,允许同时为所有适用的扩展点启用或禁用插件。 @@ -165,7 +177,7 @@ or enable your own. For example: 对每个扩展点,你可以禁用[默认插件](#scheduling-plugins)或者是启用自己的插件,例如: ```yaml -apiVersion: kubescheduler.config.k8s.io/v1beta2 +apiVersion: kubescheduler.config.k8s.io/v1 kind: KubeSchedulerConfiguration profiles: - plugins: @@ -391,20 +403,6 @@ that are not enabled by default: --> 你也可以通过组件配置 API 启用以下插件(默认不启用): - -- `SelectorSpread`:偏向把属于 - {{< glossary_tooltip text="Services" term_id="service" >}}, - {{< glossary_tooltip text="ReplicaSets" term_id="replica-set" >}} 和 - {{< glossary_tooltip text="StatefulSets" term_id="statefulset" >}} 的 Pod 跨节点分布。 - - 实现的扩展点:`preScore`、`score`。 - -可以使用该扩展点的 `disabled` 字段将特定扩展点从 `MultiPoint` 扩展中排除。 -这适用于禁用默认插件、非默认插件或使用通配符 (`'*'`) 来禁用所有插件。 +可以使用该扩展点的 `disabled` 字段将特定扩展点从 `MultiPoint` 扩展中排除。 +这适用于禁用默认插件、非默认插件或使用通配符 (`'*'`) 来禁用所有插件。 禁用 `Score` 和 `PreScore` 的一个例子是: ```yaml -apiVersion: kubescheduler.config.k8s.io/v1beta3 +apiVersion: kubescheduler.config.k8s.io/v1 kind: KubeSchedulerConfiguration profiles: - schedulerName: non-multipoint-scheduler @@ -584,19 +582,20 @@ profiles: ``` -在 `v1beta3` 中,所有 [默认插件](#scheduling-plugins) 都通过 `MultiPoint` 在内部启用。 -但是,仍然可以使用单独的扩展点来灵活地重新配置默认值(例如排序和分数权重)。 -例如,考虑两个Score插件 `DefaultScore1` 和 `DefaultScore2` ,每个插件的权重为 `1` 。 +从 `kubescheduler.config.k8s.io/v1beta3` 开始,所有[默认插件](#scheduling-plugins)都通过 `MultiPoint` 在内部启用。 +但是,仍然可以使用单独的扩展点来灵活地重新配置默认值(例如排序和分数权重)。 +例如,考虑两个 Score 插件 `DefaultScore1` 和 `DefaultScore2`,每个插件的权重为 `1`。 它们可以用不同的权重重新排序,如下所示: ```yaml -apiVersion: kubescheduler.config.k8s.io/v1beta3 +apiVersion: kubescheduler.config.k8s.io/v1 kind: KubeSchedulerConfiguration profiles: - schedulerName: multipoint-scheduler @@ -614,9 +613,9 @@ This is because plugins set through specific extension points will always take p over `MultiPoint` plugins. So, this snippet essentially re-orders the two plugins without needing to specify both of them. --> -在这个例子中,没有必要在 `MultiPoint` 中明确指定插件,因为它们是默认插件。 -`Score` 中指定的唯一插件是 `DefaultScore2`。 -这是因为通过特定扩展点设置的插件将始终优先于 `MultiPoint` 插件。 +在这个例子中,没有必要在 `MultiPoint` 中明确指定插件,因为它们是默认插件。 +`Score` 中指定的唯一插件是 `DefaultScore2`。 +这是因为通过特定扩展点设置的插件将始终优先于 `MultiPoint` 插件。 因此,此代码段实质上重新排序了这两个插件,而无需同时指定它们。 -请注意,在特定扩展点中重新声明 `MultiPoint` 插件不会出错。 +请注意,在特定扩展点中重新声明 `MultiPoint` 插件不会出错。 重新声明被忽略(并记录),因为特定的扩展点优先。 ## 调度程序配置迁移 {#scheduler-configuration-migrations} + {{< tabs name="tab_with_md" >}} {{% tab name="v1beta1 → v1beta2" %}} @@ -763,9 +763,9 @@ as well as its seamless integration with the existing methods for configuring ex with a `scoreStrategy` that is similar to: --> * 在 v1beta2 配置版本中,你可以为 `NodeResourcesFit` 插件使用新的 score 扩展。 - 新的扩展结合了 `NodeResourcesLeastAllocated`、`NodeResourcesMostAllocated` 和 `RequestedToCapacityRatio` 插件的功能。 - 例如,如果你之前使用了 `NodeResourcesMostAllocated` 插件, - 则可以改用 `NodeResourcesFit`(默认启用)并添加一个 `pluginConfig` 和 `scoreStrategy`,类似于: + 新的扩展结合了 `NodeResourcesLeastAllocated`、`NodeResourcesMostAllocated` 和 `RequestedToCapacityRatio` 插件的功能。 + 例如,如果你之前使用了 `NodeResourcesMostAllocated` 插件, + 则可以改用 `NodeResourcesFit`(默认启用)并添加一个 `pluginConfig` 和 `scoreStrategy`,类似于: ```yaml apiVersion: kubescheduler.config.k8s.io/v1beta2 @@ -792,7 +792,7 @@ as well as its seamless integration with the existing methods for configuring ex * The scheduler plugin `ServiceAffinity` is deprecated; instead, use the [`InterPodAffinity`](/docs/concepts/scheduling-eviction/assign-pod-node/#inter-pod-affinity-and-anti-affinity) plugin (enabled by default) to achieve similar behavior. --> * 调度程序插件 `ServiceAffinity` 已弃用; - 相反,使用 [`InterPodAffinity`](/zh-cn/docs/concepts/scheduling-eviction/assign-pod-node/#inter-pod-affinity-and-anti-affinity) + 相反,使用 [`InterPodAffinity`](/zh-cn/docs/concepts/scheduling-eviction/assign-pod-node/#inter-pod-affinity-and-anti-affinity) 插件(默认启用)来实现类似的行为。 +* 调度器插件 `SelectorSpread` 被移除,改为使用 `PodTopologySpread` 插件(默认启用)来实现类似的行为。 + +{{% /tab %}} {{< /tabs >}} ## {{% heading "whatsnext" %}} @@ -834,8 +844,10 @@ as well as its seamless integration with the existing methods for configuring ex * Learn about [scheduling](/docs/concepts/scheduling-eviction/kube-scheduler/) * Read the [kube-scheduler configuration (v1beta2)](/docs/reference/config-api/kube-scheduler-config.v1beta2/) reference * Read the [kube-scheduler configuration (v1beta3)](/docs/reference/config-api/kube-scheduler-config.v1beta3/) reference +* Read the [kube-scheduler configuration (v1)](/docs/reference/config-api/kube-scheduler-config.v1/) reference --> * 阅读 [kube-scheduler 参考](/zh-cn/docs/reference/command-line-tools-reference/kube-scheduler/) * 了解[调度](/zh-cn/docs/concepts/scheduling-eviction/kube-scheduler/) * 阅读 [kube-scheduler 配置 (v1beta2)](/zh-cn/docs/reference/config-api/kube-scheduler-config.v1beta2/) 参考 * 阅读 [kube-scheduler 配置 (v1beta3)](/zh-cn/docs/reference/config-api/kube-scheduler-config.v1beta3/) 参考 +* 阅读 [kube-scheduler 配置 (v1)](/zh-cn/docs/reference/config-api/kube-scheduler-config.v1/) 参考