node: devicemgr: docs: Additional updates based on review comments

Signed-off-by: Swati Sehgal <swsehgal@redhat.com>
pull/37273/head
Swati Sehgal 2022-10-18 11:44:59 +01:00
parent 89fa301731
commit 0a0fb70fc2
5 changed files with 31 additions and 16 deletions

View File

@ -167,7 +167,7 @@ Pod onto Nodes, to restart the daemon Pod after failure, and to help automate up
Previously, the versioning scheme required the Device Plugin's API version to match
exactly the Kubelet's version. Since the graduation of this feature to Beta in v1.12
this is no longer a hard requirement. The API is versioned and has been stable since
Beta graduation of this feature. Because of this, Kubelet upgrades should be seamless
Beta graduation of this feature. Because of this, kubelet upgrades should be seamless
but there still may be changes in the API before stabilization making upgrades not
guaranteed to be non-breaking.

View File

@ -92,8 +92,6 @@ For a reference to old feature gates that are removed, please refer to
| `CustomResourceValidationExpressions` | `true` | Beta | 1.25 | |
| `DelegateFSGroupToCSIDriver` | `false` | Alpha | 1.22 | 1.22 |
| `DelegateFSGroupToCSIDriver` | `true` | Beta | 1.23 | |
| `DevicePlugins` | `false` | Alpha | 1.8 | 1.9 |
| `DevicePlugins` | `true` | Beta | 1.10 | |
| `DisableCloudProviders` | `false` | Alpha | 1.22 | |
| `DisableKubeletCloudCredentialProviders` | `false` | Alpha | 1.23 | |
| `DownwardAPIHugePages` | `false` | Alpha | 1.20 | 1.20 |
@ -254,6 +252,9 @@ For a reference to old feature gates that are removed, please refer to
| `DisableAcceleratorUsageMetrics` | `false` | Alpha | 1.19 | 1.19 |
| `DisableAcceleratorUsageMetrics` | `true` | Beta | 1.20 | 1.24 |
| `DisableAcceleratorUsageMetrics` | `true` | GA | 1.25 |- |
| `DevicePlugins` | `false` | Alpha | 1.8 | 1.9 |
| `DevicePlugins` | `true` | Beta | 1.10 | 1.25 |
| `DevicePlugins` | `true` | GA | 1.26 | - |
| `DryRun` | `false` | Alpha | 1.12 | 1.12 |
| `DryRun` | `true` | Beta | 1.13 | 1.18 |
| `DryRun` | `true` | GA | 1.19 | - |

View File

@ -4,14 +4,20 @@ title: Kubelet Device Manager API Versions
weight: 10
---
Please note that the device plugin API is present here: https://github.com/kubernetes/kubelet/tree/master/pkg/apis/deviceplugin.
This page provides details of version compatibility between the Kubernetes
[device plugin API](https://github.com/kubernetes/kubelet/tree/master/pkg/apis/deviceplugin),
and different versions of Kubernetes itself.
#### Compatibility matrix
## Compatibility matrix
| | Kubernetes 1.21 | Kubernetes 1.22 | Kubernetes 1.23 | Kubernetes 1.24 | Kubernetes 1.25 | Kubernetes 1.26 |
|---------------|------------------|-----------------|-----------------|-----------------|-----------------|-----------------|
| `v1alpha1` | - | - | - | - | - | - |
| `v1beta1` | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| | `v1alpha1` | `v1beta1` |
|-----------------|-------------|-------------|
| Kubernetes 1.21 | - | ✓ |
| Kubernetes 1.22 | - | ✓ |
| Kubernetes 1.23 | - | ✓ |
| Kubernetes 1.24 | - | ✓ |
| Kubernetes 1.25 | - | ✓ |
| Kubernetes 1.26 | - | ✓ |
Key:
@ -20,9 +26,8 @@ Key:
* `+` device plugin API has features or API objects that may not be present in the
Kubernetes cluster, either due to that device plugin API has additional new API, or
that the server has removed old API. However, everything they have in
common (i.e., most APIs) will work. Please note that alpha APIs may vanish or
change significantly in a single release.
common (most other APIs) will work. Note that alpha APIs may vanish or
change significantly between one minor release and the next.
* `-` The Kubernetes cluster has features the device plugin API can't use,
either due to the server has additional new API, or that device plugin API has
removed old API. However, everything they share in common (i.e., most APIs)
will work.
removed old API. However, everything they share in common (most APIs) will work.

View File

@ -91,3 +91,12 @@ kubectl convert -f pod.yaml --output-version v1
The `kubectl` tool replaces the contents of `pod.yaml` with a manifest that sets `kind` to
Pod (unchanged), but with a revised `apiVersion`.
### Device Plugins
If your cluster is running device plugins and the node needs to been upgraded to a Kubernetes
release with a newer device plugin API version, device plugins must be upgraded to support
both version before node is upgraded for continuous functioning of the device allocations
during the upgrade.
Refer to [API compatiblity](docs/concepts/extend-kubernetes/compute-storage-net/device-plugins.md/#api-compatibility) and [Kubelet Device Manager API Versions](docs/reference/node/device-plugin-api-versions.md) for more details.

View File

@ -11,7 +11,8 @@ description: Configure and schedule GPUs for use as a resource by nodes in a clu
{{< feature-state state="stable" for_k8s_version="v1.26" >}}
Kubernetes includes **stable** support for managing AMD and NVIDIA GPUs
(graphical processing units) across several nodes.
(graphical processing units) across different nodes in your cluster, using
{{< glossary_tooltip text="device plugins" term_id="device-plugin" >}}.
This page describes how users can consume GPUs, and outlines
some of the limitations in the implementation.
@ -20,8 +21,7 @@ some of the limitations in the implementation.
## Using device plugins
Kubernetes implements {{< glossary_tooltip text="device plugins" term_id="device-plugin" >}}
to let Pods access specialized hardware features such as GPUs.
Kubernetes implements device plugins to let Pods access specialized hardware features such as GPUs.
{{% thirdparty-content %}}