Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Voor het uitvoeren van NVIDIA GPU-workloads op Azure Kubernetes Service (AKS) moet u traditioneel het NVIDIA GPU-stuurprogramma, de Kubernetes-apparaatinvoegtoepassing en een GPU-exporteur voor metrische gegevens installeren en onderhouden op elk GPU-knooppunt. Deze onderdelen maken GPU-planning, GPU-toegang op containerniveau en telemetrie mogelijk, maar als u ze handmatig installeert of via de NVIDIA GPU-operator , wordt operationele overhead toegevoegd.
Met volledig beheerde GPU-knooppunten (preview) installeert en onderhoudt AKS het NVIDIA GPU-stuurprogramma, de apparaatinvoegtoepassing en de Data Center GPU Manager (DCGM) metrische gegevensexporteur voor u. Het maken van gpu-knooppuntgroepen wordt één stap en GPU-capaciteit gedraagt zich net als elke andere AKS-knooppuntgroep.
U configureert een beheerde GPU-knooppuntgroep via twee velden onder gpuProfile.nvidia:
-
managementMode(ManagedofUnmanaged) bepaalt of AKS de volledige beheerde GPU-stack (stuurprogramma, apparaatinvoegtoepassing en dcGM-metrische gegevensexporteur) of alleen het stuurprogramma installeert. De standaardwaarde isUnmanaged. -
migStrategy(None,SingleofMixed) stelt de MIG-strategie (Multi-Instance GPU) in voor ondersteunde GPU-SKU's, zoals A100 en H100. De standaardwaarde isNone.
In dit artikel richt u een beheerde GPU-knooppuntgroep in, schakelt u eventueel MIG in, controleert u de stack en voert u een gpu-voorbeeldworkload uit.
Belangrijk
AKS preview-functies zijn beschikbaar op selfservice, opt-in basis. Previews worden geleverd 'zoals het is' en 'voor zover beschikbaar' en zijn uitgesloten van de serviceovereenkomsten en beperkte garantie. AKS-previews worden gedeeltelijk gedekt door klantondersteuning naar best vermogen. Zodoende zijn deze functies niet bedoeld voor productiegebruik. Zie de volgende ondersteuningsartikelen voor meer informatie:
Voordat u begint
- In dit artikel wordt ervan uitgegaan dat u een bestaand AKS-cluster hebt. Als u geen cluster hebt, maakt u er een met behulp van de Azure CLI, Azure PowerShell of Azure Portal.
- U moet de Azure CLI versie 2.85.0 of hoger hebben geïnstalleerd. Voer
az --versionuit om de versie te vinden. Als u Azure CLI wilt installeren of upgraden, raadpleegt u Azure CLI installeren. - U moet de nieuwste versie van de
aks-previewextensie installeren en upgraden. - Haal de inloggegevens voor uw AKS-cluster op met
az aks get-credentialsvoordat u de voorbeelden inkubectlin dit artikel uitvoert.
Beheerde GPU-onderdelen
Een beheerde GPU-knooppuntgroep kan de volgende onderdelen op elk knooppunt bevatten:
| Onderdeel | Wat het doet | Wat AKS beheert |
|---|---|---|
| NVIDIA GPU-stuurprogramma | Kernelmodules en bibliotheken met gebruikersruimte waarmee het besturingssysteem en de containers kunnen communiceren met de GPU-hardware. | Selectie van stuurprogrammaversie, installatie tijdens de voorziening van knooppunten, en herinstallatie na updates van knooppuntenimages. |
| Invoegtoepassing voor NVIDIA Kubernetes-apparaten | DaemonSet-equivalent waarmee GPU-resources (nvidia.com/gpu, nvidia.com/mig-*) worden geadverteerd aan de kubelet, zodat pods deze kunnen aanvragen. |
Implementatie, configuratie (inclusief MIG-strategie) en levenscyclus op elk GPU-knooppunt. |
| NVIDIA DCGM-metriekenexporteur |
Data Center GPU Manager verzamelt GPU-status- en gebruiksgegevens en toont prometheus-metrische gegevens (bijvoorbeeld DCGM_FI_DEV_GPU_UTIL, DCGM_FI_DEV_GPU_TEMP) op poort 19400. |
Installatie, service activering en het knooplabel kubernetes.azure.com/dcgm-exporter=enabled dat wordt gebruikt voor het verzamelen van metrische gegevens. |
| GPU-statussignalen | NPD signalen die GPU-specifieke voorwaarden voor knooppunten zoals UnhealthyNvidiaDevicePlugin en UnhealthyNvidiaDCGMServices weergeven. |
NPD-bewaking en -voorwaarderapportage op GPU-knooppunten. |
Profielen installeren
Twee gpuProfile velden bepalen welke van deze onderdelen AKS installeert.
-
gpuProfile.driver(InstallofNone): of AKS het NVIDIA GPU-stuurprogramma installeert. -
gpuProfile.nvidia.managementMode(ManagedofUnmanaged): of AKS ook de Kubernetes-gerichte GPU-stack op het stuurprogramma installeert.
Samen produceren ze drie installatieprofielen:
| Profiel installeren | CLI-vlaggen | Wat AKS installeert en beheert |
|---|---|---|
| Volledige beheerde stack |
--enable-managed-gpu=true (of geen van beide vlaggen) |
Alle vier de bovenstaande onderdelen: stuurprogramma, apparaatinvoegtoepassing, DCGM metrische gegevensexporteur en GPU-statusbewaking in NPD. |
| Alleen stuurprogramma (standaard) | --enable-managed-gpu=false |
Alleen NVIDIA GPU-stuurprogramma. U installeert en beheert de invoegtoepassing voor apparaten, de exporteur van metrische gegevens en de statuscontrole zelf (bijvoorbeeld met de NVIDIA GPU-operator). |
| Geen (BYO) | --enable-managed-gpu=false --gpu-driver None |
Niets. AKS installeert geen van de vier onderdelen. U bent eigenaar van de volledige stack. Zie Bring your own GPU driver. |
Standaardwaarden en overschrijvingen
-
Standaardinstellingen: Als u
--enable-managed-gpuof--gpu-driverniet doorgeeft, past AKS het alleen-stuurprogrammaprofiel toe op de knooppuntenpool die met een NVIDIA GPU ingeschakelde VM-grootte is gemaakt. -
Overschrijven:
managementMode: Managedvereist het stuurprogramma, dus--gpu-driver Nonewordt genegeerd wanneer--enable-managed-gpu=trueen het stuurprogramma nog steeds is geïnstalleerd. Als u de driver wilt overslaan, stelt u zowel--enable-managed-gpu=falseals--gpu-driver Nonein. -
Onveranderbaarheid:
managementMode,migStrategy, endriverzijn allemaal vastgelegd tijdens het maken. Als u het profiel wilt wijzigen, maakt u een nieuwe knooppuntgroep.
aks-preview De CLI-extensie installeren
Installeer de
aks-previewCLI-extensie met behulp van deaz extension addopdracht. Versie 19.0.0b29 of hoger is vereist.az extension add --name aks-previewWerk de extensie bij om ervoor te zorgen dat u de nieuwste versie hebt geïnstalleerd met behulp van de
az extension updateopdracht.az extension update --name aks-preview
ManagedGPUExperiencePreview De functievlag registreren
Registreer de ManagedGPUExperiencePreview functievlag in uw abonnement met behulp van de az feature register opdracht.
az feature register --namespace Microsoft.ContainerService --name ManagedGPUExperiencePreview
Beperkingen
- Deze functie biedt momenteel alleen ondersteuning voor VM-grootten (VIRTUELE MACHINES) met NVIDIA GPU .
- Het bijwerken van een knooppuntgroep voor algemeen gebruik om een GPU-VM-grootte toe te voegen, wordt niet ondersteund in AKS.
- Windows knooppuntgroepen worden niet ondersteund met deze functie, omdat GPU-metrische gegevens niet worden ondersteund. Wanneer u Windows GPU-knooppuntgroepen maakt, installeert en beheert AKS automatisch de stuurprogramma's en de DirectX-apparaatinvoegtoepassing. Zie de documentatie AKS Windows GPU voor meer informatie.
- Het migreren van uw bestaande GPU-knooppuntgroepen met meerdere exemplaren om deze functie te gebruiken, wordt niet ondersteund.
- In-place upgrades van een bestaande NVIDIA GPU-knooppuntgroep naar een beheerde GPU-knooppuntgroep worden niet ondersteund. Als u uw bestaande GPU-knooppunten wilt migreren, cordoneren en leegmaken, implementeert u uw workloads vervolgens opnieuw in een nieuwe GPU-knooppuntgroep die is gemaakt met
--enable-managed-gpu=true. Zie Het formaat van knooppuntgroepen wijzigen in AKS voor meer informatie. - De velden
managementMode,migStrategy, endriverondergpuProfilezijn onveranderbaar nadat de nodepool is aangemaakt. Als u deze waarden wilt wijzigen, maakt u een nieuwe knooppuntgroep. - Automatische schaalaanpassing van clusters wordt niet ondersteund in beheerde GPU-knooppuntgroepen tijdens de preview-versie. Schaal deze pools handmatig.
Opmerking
GPU-ingeschakelde virtuele machines bevatten gespecialiseerde hardware die onderhevig is aan hogere prijsstelling en beschikbaarheid per regio. Raadpleeg voor meer informatie het prijsgereedschap en de beschikbaarheid per regio.
Een door AKS beheerde GPU-knooppuntgroep maken (preview)
Voeg een beheerde GPU-knooppuntgroep toe aan een bestaand AKS-cluster door deze door te geven --enable-managed-gpu=true aan az aks nodepool add. AKS stelt gpuProfile.nvidia.managementMode in op Managed en installeert automatisch het GPU-stuurprogramma, de apparaatinvoegtoepassing en de DCGM-metrieken-exporteur.
Als u de standaard Ubuntu-besturingssysteem-SKU (OS) wilt gebruiken, maakt u de knooppuntgroep zonder een SKU van het besturingssysteem op te geven. De nodepool is geconfigureerd voor het standaardbesturingssysteem op basis van de Kubernetes-versie van de cluster.
Voeg een knooppuntgroep toe aan uw cluster met behulp van de
az aks nodepool addopdracht met de--enable-managed-gpu=truevlag.az aks nodepool add \ --resource-group myResourceGroup \ --cluster-name myAKSCluster \ --name gpunp \ --node-count 1 \ --node-vm-size Standard_NC6s_v3 \ --node-taints sku=gpu:NoSchedule \ --enable-managed-gpu=trueControleer of de beheerde NVIDIA GPU-softwareonderdelen zijn geïnstalleerd:
az aks nodepool show \ --resource-group myResourceGroup \ --cluster-name myAKSCluster \ --name gpunpDe uitvoer moet de volgende waarden bevatten:
... "gpuProfile": { "driver": "Install", "driverType": "", "nvidia": { "managementMode": "Managed", "migStrategy": null } }, ...
Een beheerde MIG-knooppuntgroep (Multi-Instance GPU) maken (preview)
Voor GPU-SKU's die ondersteuning bieden voor GPU's met meerdere exemplaren (zoals A100 en H100), configureert u een MIG-strategie bij het maken van een knooppuntgroep met de --gpu-mig-strategy vlag. De strategie bepaalt hoe MIG-partities worden blootgesteld aan Kubernetes:
-
Single: Alle MIG-exemplaren worden samengevoegd onder de standaardresourcenvidia.com/gpu. -
Mixed: Elk MIG-profiel wordt weergegeven als een afzonderlijke resource, zoalsnvidia.com/mig-1g.10gb. -
None(standaard): MIG is niet geconfigureerd.
Het migStrategy veld is onveranderbaar nadat de knooppuntgroep is gemaakt.
Zie Voor achtergrondinformatie over MIG-partitionering, ondersteunde VM-grootten en GPU-exemplaarprofielen een GPU-knooppuntgroep met meerdere exemplaren maken in AKS en NVIDIA Multi-Instance GPU.
az aks nodepool add \
--resource-group myResourceGroup \
--cluster-name myAKSCluster \
--name mignp \
--node-count 1 \
--node-vm-size Standard_NC24ads_A100_v4 \
--node-taints sku=gpu:NoSchedule \
--enable-managed-gpu=true \
--gpu-instance-profile MIG1g \
--gpu-mig-strategy Single
Met deze configuratie vragen pods GPU-resources aan met behulp van de standaardresourcenaam nvidia.com/gpu .
De beheerde GPU-knooppuntgroep controleren (preview)
Nadat de knooppuntgroep gereed is, voert u de volgende controles uit om te controleren of de volledige beheerde stack is geïnstalleerd en in orde is.
Controleer de GPU-specifieke knooppuntvoorwaarden van Node Problem Detector (NPD):
GPU_NODE=$(kubectl get nodes -l agentpool=gpunp -o jsonpath='{.items[0].metadata.name}') kubectl describe node $GPU_NODEOp een beheerd GPU-knooppunt moeten de volgende voorwaarden beide rapporteren
False:Condition Status Reden UnhealthyNvidiaDevicePluginFalseHealthyNvidiaDevicePluginUnhealthyNvidiaDCGMServicesFalseHealthyNvidiaDCGMServicesControleer of het beheerde GPU-label aanwezig is op het knooppunt:
kubectl get node $GPU_NODE -o jsonpath='{.metadata.labels.kubernetes\.azure\.com/dcgm-exporter}'Verwachte uitvoer:
enabled.Controleer of GPU-resources worden geadverteerd in de resources die beschikbaar zijn voor het knooppunt:
kubectl get node $GPU_NODE -o jsonpath='{.status.allocatable}'Voor een niet-MIG-nodepool bevat
"nvidia.com/gpu": "1"de uitvoer (of meer, afhankelijk van de SKU). Voor een MIG-node pool bevat de uitvoer MIG-specifiekeMixedresources, zoals"nvidia.com/mig-1g.10gb": "7".Voer een voorbeeldworkload uit om GPU-toegang vanuit een container te bevestigen:
apiVersion: v1 kind: Pod metadata: name: managed-gpu-test spec: restartPolicy: Never tolerations: - key: "sku" operator: "Equal" value: "gpu" effect: "NoSchedule" containers: - name: gpu-test image: mcr.microsoft.com/azuredocs/samples-tf-mnist-demo:gpu command: ["nvidia-smi"] resources: limits: nvidia.com/gpu: 1Bekijk de podlogboeken om uitvoer weer te geven
nvidia-smimet het GPU-apparaat, de stuurprogrammaversie en de CUDA-versie:kubectl logs managed-gpu-test
Een beheerde GPU-knooppuntgroep schalen (preview)
Een beheerde GPU-knooppuntgroep handmatig schalen met az aks nodepool scale. Nieuwe knooppunten installeren de volledige beheerde GPU-stack.
az aks nodepool scale \
--resource-group myResourceGroup \
--cluster-name myAKSCluster \
--name gpunp \
--node-count 2
Belangrijk
Tijdens de preview ondersteunen beheerde GPU-knooppuntgroepen de automatische schaalaanpassing van clusters niet. Schaal deze pools handmatig.
Alternatieve installatieprofielen
Als het volledig beheerde stackprofiel niet de juiste optie is, ondersteunt AKS twee alternatieve profielen in GPU-knooppuntgroepen.
Gebruik dit profiel als u wilt dat AKS het NVIDIA GPU-stuurprogramma installeert en onderhoudt, maar u van plan bent zelf de invoegtoepassing voor het apparaat en de exporteur van metrische gegevens te implementeren (bijvoorbeeld met de NVIDIA GPU-operator). Instellen --enable-managed-gpu=false:
az aks nodepool add \
--resource-group myResourceGroup \
--cluster-name myAKSCluster \
--name gpunp \
--node-count 1 \
--node-vm-size Standard_NC6s_v3 \
--node-taints sku=gpu:NoSchedule \
--enable-managed-gpu=false
Met deze configuratie:
- AKS installeert en beheert het NVIDIA GPU-stuurprogramma (
gpuProfile.driverisInstall). - AKS installeert geen apparaatplug-in, DCGM-metriekexporteur of gezondheidsregels voor GPU's.
gpuProfile.nvidiaisnull. - Er wordt geen
nvidia.com/gpuresource geadverteerd totdat u een apparaatinvoegtoepassing implementeert.
Volgende stappen
- Implementeer een GPU-werkbelastingvoorbeeld op uw door AKS beheerde GPU-knooppunten.
- Meer informatie over gpu-gebruik en prestatiegegevens van beheerde NVIDIA DCGM-exporteur in uw GPU-knooppuntgroep.
Verwante artikelen
- Gebruik NVIDIA GPU's op AKS voor de standaard gpu-ervaring (niet-beheerd).
- Maak een nodepool met meerdere instanties gpu (MIG) voor een uitleg over MIG-partitionering en ondersteunde VM-groottes.
- NVIDIA GPU Operator voor het beheren van GPU-stuurprogramma's en de apparaatinvoegtoepassing zelf.
- Bewaak GPU-metrische gegevens van de beheerde NVIDIA DCGM-exporteur.
- GPU-statuscontrole met Node Problem Detector (NPD) op AKS.
- Gebruik Windows GPU's op AKS voor Windows GPU-knooppuntgroepen.
- Azure GPU VM-grootten voor de volledige lijst met VM's met NVIDIA GPU.
- Gedistribueerde deductie uitvoeren op meerdere AKS GPU-knooppunten.