Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 2 additions & 4 deletions modules/nodes-pods-plugins-about.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -7,10 +7,8 @@
[id="nodes-pods-plugins-about_{context}"]
= Understanding device plugins

The device plugin provides a consistent and portable solution to consume hardware
devices across clusters. The device plugin provides support for these devices
through an extension mechanism, which makes these devices available to
Containers, provides health checks of these devices, and securely shares them.
[role="_abstract"]
A device plugin is a gRPC service running on nodes that manages specific hardware resources through an extension mechanism, enabling containers to consume these devices.

[IMPORTANT]
====
Expand Down
4 changes: 2 additions & 2 deletions modules/nodes-pods-plugins-device-mgr.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,8 @@
[id="nodes-pods-plugins-device-mgr_{context}"]
= Understanding the Device Manager

Device Manager provides a mechanism for advertising specialized node hardware resources
with the help of plugins known as device plugins.
[role="_abstract"]
Device Manager advertises specialized node hardware resources through device plugins, enabling pods to consume hardware devices without requiring upstream code changes.

You can advertise specialized hardware without requiring any upstream code changes.

Expand Down
26 changes: 16 additions & 10 deletions modules/nodes-pods-plugins-install.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,8 @@
[id="nodes-pods-plugins-install_{context}"]
= Enabling Device Manager

Enable Device Manager to implement a device plugin to advertise specialized
hardware without any upstream code changes.
[role="_abstract"]
Enable Device Manager to allow device plugins to advertise specialized node hardware resources and make them available to pods without requiring code changes.

Device Manager provides a mechanism for advertising specialized node hardware resources
with the help of plugins known as device plugins.
Expand All @@ -35,9 +35,10 @@ For example:
----
Name: 00-worker
Namespace:
Labels: machineconfiguration.openshift.io/role=worker <1>
Labels: machineconfiguration.openshift.io/role=worker
----
<1> Label required for the Device Manager.
+
`machineconfiguration.openshift.io/role=worker` is the label required for the Device Manager.

.Procedure

Expand All @@ -49,18 +50,23 @@ Labels: machineconfiguration.openshift.io/role=worker <1>
apiVersion: machineconfiguration.openshift.io/v1
kind: KubeletConfig
metadata:
name: devicemgr <1>
name: devicemgr
spec:
machineConfigPoolSelector:
matchLabels:
machineconfiguration.openshift.io: devicemgr <2>
machineconfiguration.openshift.io: devicemgr
kubeletConfig:
feature-gates:
- DevicePlugins=true <3>
- DevicePlugins=true
----
<1> Assign a name to CR.
<2> Enter the label from the Machine Config Pool.
<3> Set `DevicePlugins` to 'true`.
+
where:
+
--
`metadata.name`:: Specifies a name to assign to the CR.
`spec.machineConfigPoolSelector.matchLabels`:: Specifies the label from the Machine Config Pool.
`spec.kubeletConfig.feature-gates`:: Specifies the `DevicePlugins` feature gate. Set to `true`.
--

. Create the Device Manager:
+
Expand Down
5 changes: 3 additions & 2 deletions modules/rodoo-about.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,8 @@

{product-title} relies on run-once pods to perform tasks such as deploying a pod or performing a build. Run-once pods are pods that have a `RestartPolicy` of `Never` or `OnFailure`.

Cluster administrators can use the {run-once-operator} to force a limit on the time that those run-once pods can be active. After the time limit expires, the cluster will try to actively terminate those pods. The main reason to have such a limit is to prevent tasks such as builds to run for an excessive amount of time.
[role="_abstract"]
The {run-once-operator} enforces time limits on run-once pods to prevent tasks such as builds and deployments from running indefinitely. When the limit expires, the cluster automatically terminates the pods, protecting cluster resources from excessive consumption.

To apply the run-once duration override from the {run-once-operator} to run-once pods, you must enable it on each applicable namespace.

Expand All @@ -17,4 +18,4 @@ If both the run-once pod and the {run-once-operator} have their `activeDeadlineS
[NOTE]
====
You cannot install the {run-once-operator} on clusters managed by the HyperShift Operator.
====
====
2 changes: 1 addition & 1 deletion nodes/pods/nodes-pods-plugins.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ include::_attributes/common-attributes.adoc[]

toc::[]


[role="_abstract"]
Device plugins allow you to use a particular device type (GPU, InfiniBand,
or other similar computing resources that require vendor-specific initialization
and setup) in your {product-title} pod without needing to write custom code.
Expand Down
2 changes: 1 addition & 1 deletion nodes/pods/run_once_duration_override/index.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ include::_attributes/common-attributes.adoc[]
toc::[]

[role="_abstract"]
You can use the {run-once-operator} to specify a maximum time limit that run-once pods can be active for.
The {run-once-operator} enforces time limits on run-once pods to prevent tasks from running indefinitely and consuming cluster resources.

// About the {run-once-operator}
include::modules/rodoo-about.adoc[leveloffset=+1]