Le plug-in de périphérique NVIDIA est un plug-in de périphérique GPU pour les clusters Kubernetes qui gère les GPU sur chaque nœud, permettant à Kubernetes d'utiliser les ressources GPU plus efficacement. Cette rubrique explique comment mettre à niveau et redémarrer le plug-in de périphérique NVIDIA, isoler les périphériques GPU et vérifier sa version sur les nœuds Alibaba Cloud Container Service for Kubernetes (ACK) dans un scénario de planification exclusive des GPU.
Remarques importantes
Lorsque vous déployez le plug-in de périphérique NVIDIA en tant que DaemonSet, tenez compte des points suivants :
Le module complémentaire est installé automatiquement lors de la création d'un cluster.
Si vous désinstallez ce module complémentaire, les nœuds accélérés par GPU ajoutés lors du scale-out ne pourront pas signaler correctement leurs ressources GPU.
La mise à niveau d'un cluster depuis une version antérieure vers la version 1.32 entraîne également la migration du plug-in de périphérique NVIDIA, passant d'un pod statique à un module complémentaire ACK.
Le DaemonSet utilise un NodeSelector (
ack.node.gpu.schedule=default). Lorsqu'un nœud accéléré par GPU est ajouté au cluster, le script ACK qui ajoute le nœud attache automatiquement cette étiquette au nœud accéléré par GPU. Le DaemonSet déploie ensuite son pod sur le nœud accéléré par GPU.
Si un nœud exécute Ubuntu 22.04 ou Red Hat Enterprise Linux (RHEL) 9.3 64 bits, le plug-in de périphérique NVIDIA peut ne pas fonctionner correctement après l'exécution de la commande
systemctl daemon-reloadousystemctl daemon-reexec. Ce problème survient car le composantack-nvidia-device-plugindéfinit par défaut la variable d'environnementNVIDIA_VISIBLE_DEVICES=allpour les pods, ce qui peut rendre le périphérique GPU inaccessible. Pour plus d'informations, consultez la section Que faire si l'erreur « Failed to initialize NVML: Unknown Error » se produit lors de l'exécution d'un conteneur GPU ?.-
Si vous mettez à niveau un cluster d'une version antérieure à 1.32 vers la version 1.32 avant le 1er mai 2025, le cluster peut contenir des plug-ins de périphérique NVIDIA déployés à la fois en tant que pods statiques et DaemonSets. Vous pouvez exécuter le script suivant pour identifier les nœuds où le plug-in de périphérique NVIDIA est déployé en tant que pod statique.
#!/bin/bash # Loop through all pods with the component=nvidia-device-plugin label in the kube-system namespace. for i in $(kubectl get po -n kube-system -l component=nvidia-device-plugin | grep -v NAME | awk '{print $1}');do # Check if the pod's configuration source is 'file', which indicates a static pod. if kubectl get po $i -o yaml -n kube-system | grep 'kubernetes.io/config.source: file' &> /dev/null;then # Print the node name if it is a static pod. kubectl get pod $i -n kube-system -o jsonpath='{.spec.nodeName}{"\n"}' fi doneRésultat attendu :
cn-beijing.10.12.XXX.XX cn-beijing.10.13.XXX.XXLe résultat indique que certains nœuds ont toujours le plug-in de périphérique NVIDIA déployé en tant que pod statique. Vous pouvez utiliser la commande suivante pour migrer le plug-in de périphérique NVIDIA d'un pod statique vers un DaemonSet.
kubectl label nodes <NODE_NAME> ack.node.gpu.schedule=default Lorsque vous mettez à niveau un pool de nœuds dans un cluster de version 1.31 ou antérieure, le processus met également à niveau le plug-in de périphérique NVIDIA et réinitialise toutes ses configurations non standard.
Différences entre les versions
Les stratégies d'implémentation et de gestion du composant ack-nvidia-device-plugin varient selon la version du cluster, comme décrit dans le tableau suivant.
|
Fonctionnalité |
Version 1.32 et ultérieure |
Versions 1.20 à 1.31 |
|
Méthode de déploiement |
DaemonSet |
Pod statique |
|
Méthode de gestion |
Page Modules complémentaires de la console ACK |
Manuelle |
|
Exigence d'étiquette de nœud |
ack.node.gpu.schedule=default |
Aucune |
|
Stratégie de mise à niveau du pool de nœuds |
Mise à niveau manuelle |
Mise à niveau automatique |
Si la version de votre cluster est antérieure à 1.20, nous vous recommandons de mettre à niveau manuellement le cluster .
Prérequis
Connectez-vous à la console ACK. Dans le volet de navigation de gauche, cliquez sur Clusters.
Utilisez kubectl pour vous connecter au cluster via Workbench ou CloudShell.
Vérifier la version du plug-in de périphérique NVIDIA
Version 1.32 et ultérieure
Pour les modules complémentaires déployés en tant que DaemonSet, accédez à la page Add-ons de la console ACK, recherchez le module complémentaire ack-nvidia-device-plugin et affichez sa version sur la carte du module complémentaire.
Versions 1.20 à 1.31
Pour les modules complémentaires déployés en tant que pod statique, exécutez la commande suivante pour vérifier la version du module complémentaire.
kubectl get pods -n kube-system -l component=nvidia-device-plugin \
-o jsonpath='{range .items[*]}{.spec.containers[0].image}{"\t"}{.spec.nodeName}{"\n"}{end}' \
| awk -F'[:/]' '{split($NF, a, "-"); print a[1] "\t" $0}' \
| sort -k1,1V \
| cut -f2- \
| awk -F'\t' '{split($1, img, ":"); print img[NF] "\t" $2}'
Mettre à niveau le plug-in de périphérique NVIDIA
-
Mettez à niveau le module complémentaire ack-nvidia-device-plugin.
Version 1.32 et ultérieure
Connectez-vous à la console ACK. Dans le volet de navigation de gauche, cliquez sur Clusters.
Sur la page Clusters, cliquez sur le nom de votre cluster. Dans le volet de navigation de gauche, cliquez sur Add-ons .
Sur la page Modules complémentaires, recherchez la carte ack-nvidia-device-plugin et cliquez sur Upgrade.
Dans la boîte de dialogue qui s'affiche, cliquez sur OK.
Versions 1.20 à 1.31
Sur la page Clusters, cliquez sur le nom de votre cluster. Dans le volet de navigation de gauche, cliquez sur .
-
Sélectionnez les nœuds accélérés par GPU que vous souhaitez gérer, cliquez sur Batch Operations en bas de la liste des nœuds, sélectionnez Run Shell Scripts dans la boîte de dialogue Batch Operations, puis cliquez sur OK.
ImportantNous vous recommandons de commencer par mettre à niveau le plug-in de périphérique GPU sur un petit nombre de nœuds accélérés par GPU. Après avoir vérifié que le plug-in fonctionne comme prévu, effectuez la mise à niveau sur les nœuds restants.
Vous êtes redirigé vers la console CloudOps Orchestration Service (OOS). Définissez le Execution Mode sur Paused Upon Failure et cliquez sur Suivant : Paramètres.
-
Sur la page des paramètres, sélectionnez Exécuter un script Shell et collez l'exemple de script suivant.
RemarqueDéfinissez le paramètre
RUN_PKG_VERSIONdans le script sur le numéro de version majeure du cluster (par exemple, 1.30). Ne saisissez pas le numéro de version mineure (par exemple, 1.30.1). Sinon, le script générera une erreur.Dans le script, modifiez le paramètre
REGION_IDpour qu'il corresponde à l'ID de région du cluster actuel, par exemple cn-beijing.
#!/bin/bash set -xe # Set the Kubernetes major version. RUN_PKG_VERSION=1.30 # Set the region ID. REGION_ID=cn-beijing function update_device_plugin() { base_dir=/tmp/update_device_plugin rm -rf $base_dir mkdir -p $base_dir cd $base_dir region_id=$REGION_ID PKG_URL=https://aliacs-k8s-${region_id}.oss-${region_id}-internal.aliyuncs.com/public/pkg/run/run-${RUN_PKG_VERSION}.tar.gz curl -sSL --retry 3 --retry-delay 2 -o run.tar.gz $PKG_URL tar -xf run.tar.gz local dir=pkg/run/$RUN_PKG_VERSION/module # Replace the image registry address. sed -i "s@registry.cn-hangzhou.aliyuncs.com/acs@registry-${region_id}-vpc.ack.aliyuncs.com/acs@g" $dir/nvidia-device-plugin.yml mkdir -p /etc/kubernetes/device-plugin-backup mkdir -p /etc/kubernetes/manifests # Back up the old configuration file. mv /etc/kubernetes/manifests/nvidia-device-plugin.yml /etc/kubernetes/device-plugin-backup/nvidia-device-plugin.yml.$(date +%s) sleep 5 # Copy the new configuration file. cp -a $dir/nvidia-device-plugin.yml /etc/kubernetes/manifests echo "succeeded to update device plugin" } # Check if the nvidia-device-plugin.yml file exists. if [ -f /etc/kubernetes/manifests/nvidia-device-plugin.yml ]; then update_device_plugin else echo "skip to update device plugin" fi -
Cliquez sur Suivant : Confirmer. Après avoir confirmé les informations, cliquez sur Create.
Une fois la tâche créée, vous êtes automatiquement redirigé vers la page Gestion de l'exécution des tâches, où vous pouvez afficher l'état d'exécution de la tâche. La mise à jour est réussie si la valeur de Output est
succeeded to update device plugin.
-
Vérifiez si le module complémentaire fonctionne comme prévu.
Exécutez les commandes suivantes pour vérifier si le plug-in de périphérique GPU fonctionne correctement sur le nœud accéléré par GPU.
Utilisez kubectl pour vous connecter au cluster via Workbench ou CloudShell.
-
Exécutez la commande suivante pour vérifier si le plug-in de périphérique NVIDIA a redémarré :
kubectl get po -n kube-system -l component=nvidia-device-pluginLa colonne AGE du résultat d'exemple indique si le pod a redémarré.
NAME READY STATUS RESTARTS AGE nvidia-device-plugin-xxxx 1/1 Running 1 1m -
Après le redémarrage de tous les pods, exécutez le script suivant pour vérifier si les nœuds signalent les ressources GPU :
#!/bin/bash # Get all NVIDIA Device Plugin pods and their corresponding nodes. PODS=$(kubectl get po -n kube-system -l component=nvidia-device-plugin -o jsonpath='{range .items[*]}{.metadata.name}{"\t"}{.spec.nodeName}{"\n"}{end}') # Iterate through each pod's node. echo "$PODS" | while IFS=$'\t' read -r pod_name node_name; do # Get the allocatable nvidia.com/gpu resource value for the node. gpu_allocatable=$(kubectl get node "$node_name" -o jsonpath='{.status.allocatable.nvidia\.com/gpu}' 2>/dev/null) # Check if the resource value is 0. if [ "$gpu_allocatable" == "0" ]; then echo "Error: node=$node_name, pod=$pod_name, resource(nvidia.com/gpu) is 0" fi doneSi un nœud signale zéro ressource, consultez la section Redémarrer le plug-in de périphérique NVIDIA.
Redémarrer le plug-in de périphérique NVIDIA
Dans les scénarios de planification exclusive des GPU sur ACK, le plug-in de périphérique qui signale les périphériques GPU sur un nœud est déployé par défaut en tant que pod. Par conséquent, vous devez effectuer le redémarrage sur le nœud cible.
Version 1.32 et ultérieure
-
Exécutez la commande suivante pour trouver le pod du plug-in de périphérique sur le nœud correspondant.
kubectl get pod -n kube-system -l component=nvidia-device-plugin -o wide | grep <NODE> -
Exécutez la commande suivante pour redémarrer le pod du plug-in de périphérique correspondant.
kubectl delete po <DEVICE_PLUGIN_POD> -n kube-system
Versions 1.20 à 1.31
Sur la page Clusters, cliquez sur le nom de votre cluster. Dans le volet de navigation de gauche, cliquez sur .
-
Sur la page Node Pools, cliquez sur le nom du pool de nœuds pour accéder à la page de gestion des nœuds, puis connectez-vous au nœud accéléré par GPU cible.
Si le système d'exploitation est ContainerOS, la connexion directe de l'utilisateur est désactivée par défaut pour réduire les risques potentiels de sécurité, et la connexion SSH n'est pas fournie. Si vous avez toujours besoin de vous connecter à une instance pour les opérations et la maintenance, consultez la section Opérations et maintenance des nœuds ContainerOS .
-
Sélectionnez les nœuds accélérés par GPU que vous souhaitez gérer, cliquez sur Batch Operations en bas de la liste des nœuds, sélectionnez Exécuter une commande Shell dans la boîte de dialogue Batch Operations, puis cliquez sur OK.
ImportantNous vous recommandons de commencer par redémarrer le plug-in de périphérique sur un petit nombre de nœuds accélérés par GPU. Après avoir vérifié que le plug-in fonctionne comme prévu, effectuez le redémarrage sur les nœuds restants.
Vous êtes redirigé vers la console OOS. Définissez le Execution Mode sur Paused Upon Failure et cliquez sur Suivant : Paramètres.
-
Sur la page des paramètres, sélectionnez Run Shell Script et collez l'exemple de script suivant.
#!/bin/bash set -e # Check if the nvidia-device-plugin.yml file exists. if [ -f /etc/kubernetes/manifests/nvidia-device-plugin.yml ]; then # Move the file to restart the static pod. cp -a /etc/kubernetes/manifests/nvidia-device-plugin.yml /etc/kubernetes rm -rf /etc/kubernetes/manifests/nvidia-device-plugin.yml sleep 5 mv /etc/kubernetes/nvidia-device-plugin.yml /etc/kubernetes/manifests echo "the nvidia device is restarted" else echo "no need to restart nvidia device plugin" fi Cliquez sur Suivant : Confirmer. Après avoir confirmé les informations, cliquez sur Create. Vous êtes redirigé vers la page Gestion de l'exécution des tâches où vous pouvez afficher l'état de la tâche.
-
Exécutez la commande suivante pour vérifier si le plug-in de périphérique GPU fonctionne correctement sur le nœud accéléré par GPU.
kubectl get nodes <NODE_NAME> -o jsonpath='{.metadata.name} ==> nvidia.com/gpu: {.status.allocatable.nvidia\.com/gpu}'Résultat attendu :
cn-hangzhou.172.16.XXX.XX ==> nvidia.com/gpu: 1Une valeur non nulle pour la ressource étendue
nvidia.com/gpusur un nœud accéléré par GPU indique que le plug-in de périphérique fonctionne correctement.
Modifier la clé de point de contrôle du plug-in de périphérique
Lors de l'allocation d'un périphérique à un pod, le plug-in de périphérique crée un fichier de point de contrôle sur le nœud qui enregistre quels périphériques sont alloués à quels pods. Par défaut, le plug-in de périphérique NVIDIA utilise l'UUID du GPU comme clé unique pour chaque périphérique GPU dans le fichier de point de contrôle. Vous pouvez modifier cette clé pour utiliser l'index du périphérique afin de résoudre des problèmes tels que la perte d'UUID après une migration à froid de machine virtuelle.
Version 1.32 et ultérieure
-
Exécutez la commande suivante pour modifier le DaemonSet du plug-in de périphérique NVIDIA.
kubectl edit ds -n kube-system ack-nvidia-device-plugin -
Ajoutez la variable d'environnement
CHECKPOINT_DEVICE_ID_STRATEGY.env: - name: CHECKPOINT_DEVICE_ID_STRATEGY value: index Redémarrez le plug-in de périphérique NVIDIA pour appliquer les modifications.
Versions 1.20 à 1.31
Vérifiez le tag de l'image dans le fichier
/etc/kubernetes/manifests/nvidia-device-plugin.ymlsur le nœud cible. Le tag indique la version du Device-Plugin. Si la version est 0.9.3 ou ultérieure, aucune action n'est requise. Sinon, mettez à jour la version versv0.9.3-0dd4d5f5-aliyun.-
Modifiez les variables d'environnement du pod statique dans le fichier
/etc/kubernetes/manifests/nvidia-device-plugin.yml. Consultez le code suivant pour ajouter la variable d'environnementCHECKPOINT_DEVICE_ID_STRATEGY.env: - name: CHECKPOINT_DEVICE_ID_STRATEGY value: index Redémarrez le plug-in de périphérique NVIDIA pour appliquer les modifications.
Activer l'isolation des périphériques GPU
L'isolation des périphériques GPU est prise en charge uniquement sur nvidia-device-plugin v0.9.1 ou version ultérieure. Pour plus d'informations, consultez la section Vérifier la version du plug-in de périphérique NVIDIA.
Dans les scénarios de planification exclusive des GPU sur ACK, vous devrez peut-être isoler un périphérique GPU sur un nœud en raison d'une panne ou pour d'autres raisons. ACK fournit un mécanisme permettant d'isoler manuellement un périphérique pour empêcher le planificateur d'assigner de nouveaux pods d'application GPU à ce périphérique. Suivez ces étapes :
Sur le nœud cible, gérez le fichier unhealthyDevices.json dans le répertoire /etc/nvidia-device-plugin/. Si ce fichier n'existe pas, créez-le. Le fichier unhealthyDevices.json doit être au format JSON suivant. Le tableau peut contenir plusieurs clés de point de contrôle de périphérique. Ajoutez des clés selon vos besoins.
{
"index": ["x", "x"],
"uuid": ["xxx", "xxx"]
}
Vous pouvez saisir l'index ou l'uuid du périphérique cible à isoler dans le fichier JSON. Il suffit de saisir l'un ou l'autre pour chaque périphérique. Les modifications prennent effet automatiquement après l'enregistrement du fichier.
Une fois la configuration terminée, vous pouvez vérifier le nombre de ressources nvidia.com/gpu signalées par le nœud Kubernetes pour valider l'effet de l'isolation.
Monter les périphériques GDR et activer l'accélération de la copie mémoire GPU
Prérequis
À partir de la version v0.5.0, ack-nvidia-device-plugin prend en charge le montage des périphériques GDR dans les conteneurs GPU. Cette fonctionnalité nécessite les éléments suivants :
La version du cluster est 1.32 ou ultérieure.
Le nœud est un nœud Lingjun.
-
Le logiciel GDR est installé sur le nœud.
Vous pouvez vous connecter au nœud et exécuter la commande
lsmod | grep gdrdrvpour vérifier si le module noyau GDR est chargé. Voici un exemple de résultat :gdrdrv 196608 0 nvidia 14680064 88 nvidia_uvm,nvidia_peermem,gdrdrv,nvidia_modeset -
NVIDIA Container Toolkit 1.15.0 ou version ultérieure est installé sur le nœud.
Vous pouvez vérifier la version en vous connectant au nœud et en exécutant
nvidia-container-cli --version. Voici un exemple de résultat :cli-version: 1.17.8 lib-version: 1.17.8
Activer l'accélération GDR
Connectez-vous à la console ACK. Dans le volet de navigation de gauche, cliquez sur Clusters.
Sur la page Clusters, cliquez sur le nom de votre cluster. Dans le volet de navigation de gauche, cliquez sur Add-ons .
Sur la page Modules complémentaires, recherchez la carte ack-nvidia-device-plugin et cliquez sur Configuration.
Dans la boîte de dialogue qui s'affiche, sélectionnez Enable GDRCopy to accelerate GPU memory copy (effective on Lingjun nodes with GDR software installed and nvidia-container-toolkit version >= 1.15.0).
Vérifier le résultat
Sur la page Clusters, cliquez sur le nom de votre cluster. Dans le volet de navigation de gauche, cliquez sur .
-
Sur la page Deployments, cliquez sur Create from YAML. Utilisez l'exemple de code suivant pour créer une application.
apiVersion: v1 kind: Pod metadata: name: tensorflow-mnist namespace: default spec: containers: - image: registry.cn-beijing.aliyuncs.com/acs/tensorflow-mnist-sample:v1.5 name: tensorflow-mnist command: - python - tensorflow-sample-code/tfjob/docker/mnist/main.py - --max_steps=100000 - --data_dir=tensorflow-sample-code/data resources: limits: nvidia.com/gpu: 1 # Request one GPU card for this container. workingDir: /root restartPolicy: Always -
Exécutez la commande suivante pour entrer dans le pod :
kubectl exec -ti tensorflow-mnist -- ls /dev/gdrdrvRésultat attendu :
/dev/gdrdrvLe résultat indique que le périphérique gdrdrv a été monté avec succès.
FAQ
Désactiver la fonctionnalité native d'isolation GPU
Contexte
Lorsqu'un GPU sur un nœud tombe en panne, ACK isole automatiquement le GPU défaillant à l'aide du plug-in de périphérique NVIDIA pour empêcher le planificateur de lui assigner des tâches. Cependant, cette isolation automatique n'effectue pas de réparation automatique. Vous devez toujours redémarrer ou réparer manuellement le nœud. Nous vous recommandons de configurer des alertes pour les exceptions GPU afin de les traiter rapidement. Pour plus d'informations sur la fonctionnalité native d'isolation GPU du plug-in de périphérique NVIDIA, consultez la page k8s-device-plugin.
Après l'isolation, si le nœud ne dispose pas de suffisamment de GPU pour répondre aux exigences d'une tâche (par exemple, une tâche nécessite huit cartes mais seulement sept sont disponibles), le planificateur ne peut pas placer la tâche sur ce nœud, laissant les ressources GPU inutilisées.
Lorsque l'état du GPU redevient normal, le système supprime automatiquement l'isolation du périphérique.
Si vous devez désactiver l'isolation automatique afin que le nœud continue de signaler les ressources pour les GPU défaillants, reportez-vous à la solution suivante.
Solution
-
Vérifiez si la fonctionnalité native d'isolation GPU est activée pour le module complémentaire.
Si elle n'est pas activée, vous n'avez pas besoin d'effectuer les étapes suivantes pour la désactiver.
Version 1.32 et ultérieure
Connectez-vous à la console ACK et vérifiez la version de ack-nvidia-device-plugin sur la page Add-ons du cluster cible. Si la version est v0.1.0, la fonctionnalité d'isolation GPU est activée.
Versions 1.20 à 1.31
Utilisez kubectl pour vous connecter au cluster via Workbench ou CloudShell.
-
Vérifiez si le plug-in de périphérique NVIDIA a l'isolation GPU activée.
check_gpu_isolation_enabled() { echo "Checking nodes with NVIDIA Device Plugin deployed as static pods that have GPU isolation enabled (i.e., DP_DISABLE_HEALTHCHECKS is not set to 'all')..." # Get pod names with the expected label. pods=$(kubectl get pods -n kube-system -l component=nvidia-device-plugin --no-headers -o custom-columns=":metadata.name" 2>/dev/null) if [ -z "$pods" ]; then echo "No pods found with label 'component=nvidia-device-plugin'." return 0 fi found=0 while IFS= read -r pod; do [ -z "$pod" ] && continue # Check if it's a static pod: annotation kubernetes.io/config.source must be "file". config_source=$(kubectl get pod "$pod" -n kube-system -o jsonpath='{.metadata.annotations.kubernetes\.io/config\.source}' 2>/dev/null) if [ "$config_source" != "file" ]; then # Not a static pod (e.g., managed by a DaemonSet), skip. continue fi # Get node name. node=$(kubectl get pod "$pod" -n kube-system -o jsonpath='{.spec.nodeName}' 2>/dev/null) [ -z "$node" ] && continue # Check if DP_DISABLE_HEALTHCHECKS is set to "all". disabled_value=$(kubectl get pod "$pod" -n kube-system -o jsonpath='{range .spec.containers[*]}{range .env[?(@.name=="DP_DISABLE_HEALTHCHECKS")]}{.value}{"\n"}{end}{end}' 2>/dev/null | head -n1) # If not set or not equal to "all", health checks are active, which means isolation is enabled. if [ -z "$disabled_value" ] || [ "$disabled_value" != "all" ]; then echo "Node: $node, Static Pod: $pod" found=1 fi done <<< "$pods" if [ "$found" -eq 0 ]; then echo "No static pods found with GPU isolation enabled." else echo "Note: The above nodes will automatically isolate faulty GPUs via the NVIDIA Device Plugin." fi } check_gpu_isolation_enabledRésultat attendu :
Checking nodes with NVIDIA Device Plugin deployed as static pods that have GPU isolation enabled (i.e., DP_DISABLE_HEALTHCHECKS is not set to 'all')... Node: cn-beijing.192.168.XXX.XXX, Static Pod: nvidia-device-plugin-cn-beijing.192.168.XXX.XXX Note: The above nodes will automatically isolate faulty GPUs via NVIDIA Device Plugin.Si le résultat contient
Note: The above nodes will automatically isolate faulty GPUs via NVIDIA Device Plugin., la fonctionnalité d'isolation GPU est activée.
-
Désactivez la fonctionnalité d'isolation GPU en mettant à niveau le module complémentaire.
La fonctionnalité native d'isolation GPU est désactivée par défaut dans la dernière version du module complémentaire NVIDIA Device Plugin. Mettez à niveau le plug-in de périphérique NVIDIA vers la dernière version pour appliquer cette modification.
Rubriques connexes
Pour l'historique des modifications du module complémentaire, consultez la section ack-nvidia-device-plugin.
Si vous rencontrez des problèmes avec les nœuds accélérés par GPU, consultez les sections Diagnostiquer les problèmes des nœuds accélérés par GPU et FAQ GPU.
Pour plus d'informations sur la planification partagée des GPU, consultez la section Planification partagée des GPU.