1
0
mirror of https://github.com/openshift/openshift-docs.git synced 2026-02-06 06:46:26 +01:00

Updated the docs for new feature gates

This commit is contained in:
Michael Burke
2019-02-12 17:37:14 -05:00
parent 8a9c49b543
commit 83c3ea378f
10 changed files with 78 additions and 70 deletions

View File

@@ -46,7 +46,7 @@ oc label machineconfigpool worker custom-kubelet=small-pods
.Procedure
. Create a CRD for your configuration change.
. Create a Custom Resource (CR) for your configuration change.
+
.Sample configuration for a disabling CPU limits
[source,yaml]
@@ -63,7 +63,7 @@ spec:
cpu-cfs-quota: <3>
- "false"
----
<1> Assign a name to CRD.
<1> Assign a name to CR.
<2> Specify the label to apply the configuration change.
<3> Set the `cpu-cfs-quota` parameter to `false`.

View File

@@ -13,22 +13,69 @@ from lower OoS classes from using resources requested by pods in higher QoS clas
By reserving resources for higher QOS levels, pods that don't have resource limits are prevented from encroaching on the resources
requested by pods at higher QoS levels.
.Prerequisites
. Obtain the label associated with the static Machine Config Pool CRD for the type of node you want to configure.
Perform one of the following steps:
.. View the Machine Config Pool:
+
[source,bash]
----
# oc describe machineconfigpool <name>
----
+
For example:
+
[source,yaml]
----
# oc describe machineconfigpool worker
apiVersion: machineconfiguration.openshift.io/v1
kind: MachineConfigPool
metadata:
creationTimestamp: 2019-02-08T14:52:39Z
generation: 1
labels:
custom-kubelet: small-pods <1>
----
<1> If a label has been added it appears under `labels`.
.. If the label is not present, add a key/value pair:
+
[source,bash]
----
oc label machineconfigpool worker custom-kubelet=small-pods
----
.Procedure
To configure the `qos-reserved` parameter, edit the appropriate node configuration map.
. Create a Custom Resource (CR) for your configuration change.
+
.Sample configuration for a disabling CPU limits
[source,yaml]
----
kubeletArguments:
cgroups-per-qos:
- true
cgroup-driver:
- 'systemd'
cgroup-root:
- '/'
qos-reserved: <1>
- 'memory=50%'
apiVersion: machineconfiguration.openshift.io/v1
kind: KubeletConfig
metadata:
name: disable-cpu-units <1>
spec:
machineConfigPoolSelector:
matchLabels:
custom-kubelet: small-pods <2>
kubeletConfig:
cgroups-per-qos:
- true
cgroup-driver:
- 'systemd'
cgroup-root:
- '/'
qos-reserved: <3>
- 'memory=50%'
----
<1> Specifies how pod resource requests are reserved at the QoS level.
<1> Assign a name to CR.
<2> Specify the label to apply the configuration change.
<3> Specifies how pod resource requests are reserved at the QoS level.
{product-title} uses the `qos-reserved` parameter as follows:
- A value of `qos-reserved=memory=100%` will prevent the `Burstable` and `BestEffort` QOS classes from consuming memory
that was requested by a higher QoS class. This increases the risk of inducing OOM
@@ -40,4 +87,3 @@ to consume half of the memory requested by a higher QoS class.
will allow a `Burstable` and `BestEffort` QoS classes to consume up to the full node
allocatable amount if available, but increases the risk that a `Guaranteed` workload
will not have access to requested memory. This condition effectively disables this feature.

View File

@@ -44,9 +44,9 @@ oc label machineconfigpool worker custom-kubelet=small-pods
.Procedure
. Create a CRD for your configuration change.
. Create a Custom Resource (CR) for your configuration change.
+
.Sample configuration for a *garbage* CRD
.Sample configuration for a *garbage* CR
[source,yaml]
----
apiVersion: machineconfiguration.openshift.io/v1
@@ -62,7 +62,7 @@ spec:
ImageGCHighThresholdPercent: <4>
ImageGCLowThresholdPercent: <5>
----
<1> Assign a name to CRD.
<1> Assign a name to CR.
<2> Specify the label to apply the configuration change.
<3> Specify the minimum age for an unused image before it is garbage collected
<4> Specify the percent of disk usage after which image garbage collection is always run.

View File

@@ -30,7 +30,7 @@ metadata:
.. If the label is not present, add a key/value pair under `labels`.
. Create a CRD for your configuration change.
. Create a Custom Resource (CR) for your configuration change.
+
For example:
+
@@ -47,11 +47,11 @@ spec:
kubeletConfig: <3>
maxPods: 100
----
<1> Assign a name to CRD.
<1> Assign a name to CR.
<2> Specify the label to apply the configuration change.
<3> Specify the new value(s) you want to change.
. Create the CRD object.
. Create the CR object.
+
----
$ oc create -f <file-name>

View File

@@ -48,9 +48,9 @@ oc label machineconfigpool worker custom-kubelet=small-pods
.Procedure
. Create a CRD for your configuration change.
. Create a Custom Resource (CR) for your configuration change.
+
.Sample configuration for a *max-pods* CRD
.Sample configuration for a *max-pods* CR
----
apiVersion: machineconfiguration.openshift.io/v1
kind: KubeletConfig
@@ -64,7 +64,7 @@ spec:
podsPerCore: 100 <3>
maxPods: 250 <4>
----
<1> Assign a name to CRD.
<1> Assign a name to CR.
<2> Specify the label to apply the configuration change.
<3> Specify the number of pods the node can run based on the number of
processor cores on the node.

View File

@@ -12,9 +12,8 @@ resource quantity is specified in units of cores, such as `200m`, `0.5`, or `1`.
For `*memory*` and `*ephemeral-storage*`, it is specified in units of bytes,
such as `200Ki`, `50Mi`, or `5Gi`.
As an administrator, you can set these in the `*kubeletArguments*` section of the
node configuration map by using a set of `<resource_type>=<resource_quantity>` pairs
(e.g., *cpu=200m,memory=512Mi*). Add the section if it does not already exist.
As an administrator, you can set these using a Custom Resource (CR) through a set of `<resource_type>=<resource_quantity>` pairs
(e.g., *cpu=200m,memory=512Mi*).
.Prerequisites
@@ -102,9 +101,9 @@ oc label machineconfigpool worker custom-kubelet=small-pods
.Procedure
. Create a CRD for your configuration change.
. Create a Custom Resource (CR) for your configuration change.
+
.Sample configuration for a resource allocation CRD
.Sample configuration for a resource allocation CR
[source,yaml]
----
apiVersion: machineconfiguration.openshift.io/v1

View File

@@ -11,7 +11,7 @@ You can turn off a feature for all nodes in the cluster.
To turn off a feature for the entire cluster:
. Create a CRD for feature gates.
. Create a Custom Resource (CR) for feature gates.
+
For example, the following code enables Dynamic Auditing and disables Custom Pod DNS:
+

View File

@@ -1,35 +0,0 @@
// Module included in the following assemblies:
//
// * nodes/nodes-pods-disabling-features.adoc
[id='nodes-pods-disabling-features-nodes_{context}']
= Disabling features for a node
You can turn off a feature for a specific node type in the cluster.
.Procedure
To turn off a feature a node type:
. Edit the appropriate node configuration map:
. For the feature you want to turn off, enter: `<feature_name>=false` under`proxyArguments`.
+
For example:
+
[source,yaml]
----
proxyArguments:
feature-gates:
- HugePages=false
----
. Restart the {product-title} service for the changes to take effect:
+
[source,bash]
----
# master-restart controllers
----
To re-enable a disabled feature, edit the node configuration file to remove the `<feature_name>=false`
and restart the master and node services.

View File

@@ -46,9 +46,9 @@ oc label machineconfigpool worker custom-kubelet=small-pods
.Procedure
. Create a CRD for your configuration change.
. Create a Custom Resource (CR) for your configuration change.
+
.Sample configuration for a *garbage* CRD
.Sample configuration for a Device Manager CR
[source,yaml]
----
apiVersion: machineconfiguration.openshift.io/v1
@@ -63,7 +63,7 @@ spec:
feature-gates:
- DevicePlugins=true <2>
----
<1> Assign a name to CRD.
<1> Assign a name to CR.
<2> Set `DevicePlugins` to 'true`.
. Ensure that Device Manager was actually enabled by confirming that

View File

@@ -20,7 +20,5 @@ include::modules/nodes-pods-disabling-features-about.adoc[leveloffset=+1]
include::modules/nodes-pods-disabling-features-cluster.adoc[leveloffset=+1]
// include::modules/nodes-pods-disabling-features-nodes.adoc[leveloffset=+1]
include::modules/nodes-pods-disabling-features-list.adoc[leveloffset=+1]