GPU Operator
L'addon GPU Operator installe le NVIDIA GPU Operator, qui gère automatiquement les GPU du cluster : pilotes NVIDIA, runtime de conteneurs, device plugin et outils de monitoring nécessaires à l'exploitation des GPU.
Dans la console
- Avec des nœuds GPU : dès qu'un groupe de nœuds a des GPU (section GPU de l'étape Nœuds), la console active GPU Operator et empêche de le décocher (« Requis lorsqu'un groupe de nœuds a des GPU »).
- Sans nœuds GPU : cochez GPU Operator à l'étape Addons ou depuis Modifier > Extensions & Addons, puis Enregistrer. Il est désactivé par défaut.
La page de détail du cluster affiche GPU Operator dans la section Extensions lorsqu'il est actif.
Voir Comment ajouter et modifier un groupe de nœuds pour l'ajout de GPU.
Surcharger la configuration
Une fois l'addon coché, le champ Configuration Helm (YAML) — optionnel apparaît. La valeur est transmise au chart Helm du GPU Operator, sous la clé gpu-operator.
gpu-operator:
dcgmExporter:
enabled: true
Les options disponibles sont décrites dans la documentation du NVIDIA GPU Operator.
Les pilotes et le device plugin sont préconfigurés par la plateforme pour les nœuds Hikube. Ne les désactivez pas par surcharge : les GPU ne seraient plus exposés aux pods.
Utilisation dans le cluster
# Pods du GPU Operator
kubectl get pods -A | grep -i -E "gpu-operator|nvidia"
# GPU allouables par nœud
kubectl get nodes -o custom-columns=NAME:.metadata.name,GPU:.status.allocatable.'nvidia\.com/gpu'
Exemple de pod demandant un GPU :
apiVersion: v1
kind: Pod
metadata:
name: gpu-test
spec:
restartPolicy: Never
containers:
- name: cuda
image: nvidia/cuda:12.4.1-base-ubuntu22.04
command: ["nvidia-smi"]
resources:
limits:
nvidia.com/gpu: 1
kubectl apply -f gpu-test.yaml
kubectl logs gpu-test
Voir aussi Provisionner des GPU dans Kubernetes.
Bonnes pratiques
- Placez les workloads GPU sur un groupe de nœuds dédié, avec un minimum de nœuds à 0 si l'usage est ponctuel.
- Pour partager un même GPU entre plusieurs pods, activez HAMi.