From 29dcf62d5795a71662047f3f69cdf243f06a06b8 Mon Sep 17 00:00:00 2001 From: Naoki Oketani Date: Fri, 1 Jan 2021 18:04:19 +0900 Subject: [PATCH 1/3] remove indication of enabling RuntimeClass feature gate since it is a GA feature --- .../en/docs/concepts/containers/runtime-class.md | 14 +++----------- 1 file changed, 3 insertions(+), 11 deletions(-) diff --git a/content/en/docs/concepts/containers/runtime-class.md b/content/en/docs/concepts/containers/runtime-class.md index ace905c657..6aa3e7240e 100644 --- a/content/en/docs/concepts/containers/runtime-class.md +++ b/content/en/docs/concepts/containers/runtime-class.md @@ -35,12 +35,8 @@ but with different settings. ## Setup -Ensure the RuntimeClass feature gate is enabled (it is by default). See [Feature -Gates](/docs/reference/command-line-tools-reference/feature-gates/) for an explanation of enabling -feature gates. The `RuntimeClass` feature gate must be enabled on API server _and_ kubelets. - -1. Configure the CRI implementation on nodes (runtime dependent). -2. Create the corresponding RuntimeClass resources. +1. Configure the CRI implementation on nodes (runtime dependent) +2. Create the corresponding RuntimeClass resources ### 1. Configure the CRI implementation on nodes @@ -146,9 +142,7 @@ See CRI-O's [config documentation](https://raw.githubusercontent.com/cri-o/cri-o As of Kubernetes v1.16, RuntimeClass includes support for heterogeneous clusters through its `scheduling` fields. Through the use of these fields, you can ensure that pods running with this -RuntimeClass are scheduled to nodes that support it. To use the scheduling support, you must have -the [RuntimeClass admission controller](/docs/reference/access-authn-authz/admission-controllers/#runtimeclass) -enabled (the default, as of 1.16). +RuntimeClass are scheduled to nodes that support it. To ensure pods land on nodes supporting a specific RuntimeClass, that set of nodes should have a common label which is then selected by the `runtimeclass.scheduling.nodeSelector` field. The @@ -170,8 +164,6 @@ Nodes](/docs/concepts/scheduling-eviction/assign-pod-node/). You can specify _overhead_ resources that are associated with running a Pod. Declaring overhead allows the cluster (including the scheduler) to account for it when making decisions about Pods and resources. -To use Pod overhead, you must have the PodOverhead [feature gate](/docs/reference/command-line-tools-reference/feature-gates/) -enabled (it is on by default). Pod overhead is defined in RuntimeClass through the `overhead` fields. Through the use of these fields, you can specify the overhead of running pods utilizing this RuntimeClass and ensure these overheads From 3b409773ae921e0e376dc00e0fcd431bd0dc4657 Mon Sep 17 00:00:00 2001 From: Naoki Oketani Date: Sun, 3 Jan 2021 10:51:30 +0900 Subject: [PATCH 2/3] Update content/en/docs/concepts/containers/runtime-class.md Co-authored-by: Tim Bannister --- content/en/docs/concepts/containers/runtime-class.md | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/content/en/docs/concepts/containers/runtime-class.md b/content/en/docs/concepts/containers/runtime-class.md index 6aa3e7240e..766f3cbc83 100644 --- a/content/en/docs/concepts/containers/runtime-class.md +++ b/content/en/docs/concepts/containers/runtime-class.md @@ -140,8 +140,8 @@ See CRI-O's [config documentation](https://raw.githubusercontent.com/cri-o/cri-o {{< feature-state for_k8s_version="v1.16" state="beta" >}} -As of Kubernetes v1.16, RuntimeClass includes support for heterogeneous clusters through its -`scheduling` fields. Through the use of these fields, you can ensure that pods running with this +If the nodes in your cluster support different sets of features, you can set the `scheduling` +field for a RuntimeClass, then use that hint to ensure that pods running with that particular RuntimeClass are scheduled to nodes that support it. To ensure pods land on nodes supporting a specific RuntimeClass, that set of nodes should have a @@ -177,4 +177,3 @@ are accounted for in Kubernetes. - [RuntimeClass Scheduling Design](https://github.com/kubernetes/enhancements/blob/master/keps/sig-node/585-runtime-class/README.md#runtimeclass-scheduling) - Read about the [Pod Overhead](/docs/concepts/scheduling-eviction/pod-overhead/) concept - [PodOverhead Feature Design](https://github.com/kubernetes/enhancements/blob/master/keps/sig-node/20190226-pod-overhead.md) - From 9315b85fd79db4bb93e19539c231ddf0b572aa1a Mon Sep 17 00:00:00 2001 From: Naoki Oketani Date: Mon, 4 Jan 2021 14:03:52 +0900 Subject: [PATCH 3/3] restore not-outdated contents --- content/en/docs/concepts/containers/runtime-class.md | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/content/en/docs/concepts/containers/runtime-class.md b/content/en/docs/concepts/containers/runtime-class.md index 766f3cbc83..abfec1ef6c 100644 --- a/content/en/docs/concepts/containers/runtime-class.md +++ b/content/en/docs/concepts/containers/runtime-class.md @@ -140,9 +140,9 @@ See CRI-O's [config documentation](https://raw.githubusercontent.com/cri-o/cri-o {{< feature-state for_k8s_version="v1.16" state="beta" >}} -If the nodes in your cluster support different sets of features, you can set the `scheduling` -field for a RuntimeClass, then use that hint to ensure that pods running with that particular -RuntimeClass are scheduled to nodes that support it. +By specifying the `scheduling` field for a RuntimeClass, you can set constraints to +ensure that Pods running with this RuntimeClass are scheduled to nodes that support it. +If `scheduling` is not set, this RuntimeClass is assumed to be supported by all nodes. To ensure pods land on nodes supporting a specific RuntimeClass, that set of nodes should have a common label which is then selected by the `runtimeclass.scheduling.nodeSelector` field. The @@ -164,6 +164,8 @@ Nodes](/docs/concepts/scheduling-eviction/assign-pod-node/). You can specify _overhead_ resources that are associated with running a Pod. Declaring overhead allows the cluster (including the scheduler) to account for it when making decisions about Pods and resources. +To use Pod overhead, you must have the PodOverhead [feature gate](/docs/reference/command-line-tools-reference/feature-gates/) +enabled (it is on by default). Pod overhead is defined in RuntimeClass through the `overhead` fields. Through the use of these fields, you can specify the overhead of running pods utilizing this RuntimeClass and ensure these overheads