Aiutaci a migliorare questa pagina
Vuoi contribuire a questa guida per l'utente? Scorri fino alla fine di questa pagina e seleziona Modifica questa pagina su GitHub. I tuoi contributi contribuiranno a rendere la nostra guida utente migliore per tutti.
Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Crea nodi con Amazon Linux ottimizzato AMIs
Amazon Linux EKS ottimizzato per Amazon AMI è basato su Amazon Linux 2 (AL2) e Amazon Linux 2023 (AL2023). È configurato per fungere da immagine di base per EKS i nodi Amazon. AMIè configurato per funzionare con Amazon EKS e include i seguenti componenti:
-
kubelet
-
AWS IAMAutenticatore
-
Docker (EKSversione Amazon
1.23
e precedenti) -
containerd
Nota
-
Puoi tenere traccia degli eventi relativi alla sicurezza o alla privacy AL2 presso il centro di sicurezza di Amazon Linux
o abbonarti al RSSfeed associato. Gli eventi di sicurezza e privacy includono una panoramica del problema, quali sono i pacchetti interessati e come aggiornare le istanze per risolvere il problema. -
Prima di implementare un sistema accelerato o Arm AMI, rivedi le informazioni in Amazon Linux accelerato EKS ottimizzato per Amazon AMIs and. EKSOttimizzato per Amazon Arm Amazon Linux AMIs
-
In Kubernetes versione
1.23
, puoi usare un flag bootstrap opzionale per testare la migrazione da Docker acontainerd
. Per ulteriori informazioni, consulta Prova la migrazione ad Amazon Linux 2 da Docker a containerd. -
A partire da Kubernetes versione
1.25
, non sarai più in grado di utilizzare EC2P2
istanze Amazon con Amazon Linux accelerato e EKS ottimizzato pronto AMIs all'uso. Questi per AMIs Kubernetes le versioni1.25
o successive supporteranno driver diNVIDIA 525
serie o successivi, che sono incompatibili con leP2
istanze. Tuttavia, i driverNVIDIA 525
della serie o delle versioni successive sono compatibili con leP3
P5
istanze,, and, quindi è possibile utilizzarle conP4
AMIs Kubernetes versione1.25
o successiva. Prima di eseguire l'aggiornamento alla versione EKS dei cluster Amazon1.25
, esegui la migrazione di tutte le istanze versoP3
eP2
le istanze.P4
P5
È inoltre necessario aggiornare in modo proattivo le applicazioni per funzionare con la serieNVIDIA 525
o successive. Abbiamo intenzione di effettuare il backport dei driver della serie più recente o successiva suNVIDIA 525
Kubernetes versioni1.23
e alla1.24
fine di gennaio 2024. -
Tutti i gruppi di nodi gestiti appena creati nei cluster nella versione
1.30
o successiva utilizzeranno automaticamente AL2 023 come sistema operativo del nodo. In precedenza, per impostazione predefinita, i nuovi gruppi di nodi erano impostati su. AL2 È possibile continuare a utilizzarlo AL2 scegliendolo come AMI tipo durante la creazione di un nuovo gruppo di nodi. -
Support for AL2 terminerà il 30 giugno 2025. Per ulteriori informazioni, consulta Amazon Linux 2 FAQs
.
Amazon Linux accelerato EKS ottimizzato per Amazon AMIs
Nota
Amazon EKS accelerato AMIs basato su AL2 023 sarà disponibile in un secondo momento. Se disponi di carichi di lavoro accelerati, dovresti continuare a utilizzare l'accelerato o AL2 AMI Bottlerocket.
Amazon Linux accelerato EKS ottimizzato per Amazon AMI è basato sullo standard Amazon Linux EKS AMI ottimizzato per Amazon. È configurato per fungere da immagine opzionale per EKS i nodi Amazon per supportare carichi di lavoro GPU basati su Inferentia
Oltre alla AMI configurazione standard EKS ottimizzata per Amazon, l'accelerated AMI include quanto segue:
-
NVIDIA autisti
-
nvidia-container-runtime
-
AWS Neuron driver
Per un elenco dei componenti più recenti inclusi nell'acceleratoAMI, consulta le amazon-eks-ami
versioni
Nota
-
L'accelerato EKS ottimizzato da Amazon supporta AMI GPU solo e Inferentia tipi di istanze basati. Assicurati di specificare questi tipi di istanza nel tuo AWS CloudFormation modello di nodo. Utilizzando Amazon EKS Optimized AcceleratedAMI, accetti il Contratto NVIDIA di licenza per l'utente finale del cloud (EULA)
. -
L'Amazon EKS Optimized Accelerated AMI era precedentemente denominato Amazon EKS Optimized AMI with GPU Support.
-
Le versioni precedenti di Amazon EKS Optimized Accelerated AMI installavano il
nvidia-docker
repository. Il repository non è più incluso nella EKS AMI versione Amazonv20200529
e successive.
Per abilitare i carichi di AWS lavoro basati su Neuron (acceleratore ML)
Per dettagli sui carichi di lavoro di addestramento e inferenza utilizzando Neuron in AmazonEKS, consulta i seguenti riferimenti:
-
Containers - Kubernetes - Guida introduttiva a
AWS Neuron Documentazione -
Formazione
in AWS Neuron EKSEsempi su GitHub -
Implementazione ML carichi di lavoro di inferenza con AWSInferentia su Amazon EKS
Per abilitare carichi di lavoro GPU basati
La procedura seguente descrive come eseguire un carico di lavoro su un'istanza GPU basata con Amazon EKS optimized AMI accelerated.
-
Dopo che i GPU nodi si sono uniti al cluster, devi applicare il plug-in del NVIDIA dispositivo per Kubernetes
come DaemonSet sul tuo cluster. Sostituiscilo
con la s-device-plugin versione NVIDIA/k8vX.X.X
desiderata prima di eseguire il seguente comando. kubectl apply -f https://raw.githubusercontent.com/NVIDIA/k8s-device-plugin/
vX.X.X
/deployments/static/nvidia-device-plugin.yml -
Puoi verificare che i tuoi nodi siano allocabili GPUs con il seguente comando.
kubectl get nodes "-o=custom-columns=NAME:.metadata.name,GPU:.status.allocatable.nvidia\.com/gpu"
Per distribuire un Pod per verificare che i GPU nodi siano configurati correttamente
-
Crea un file denominato
nvidia-smi.yaml
con i seguenti contenuti. Sostituisci
con il tag desiderato pertag
nvidia/cuda
. Questo manifesto avvia un NVIDIA CUDA contenitore che funziona nvidia-smi
su un nodo.apiVersion: v1 kind: Pod metadata: name: nvidia-smi spec: restartPolicy: OnFailure containers: - name: nvidia-smi image: nvidia/cuda:
tag
args: - "nvidia-smi" resources: limits: nvidia.com/gpu: 1 -
Applicare il file manifesto con il comando seguente.
kubectl apply -f nvidia-smi.yaml
-
Dopo il Pod ha terminato l'esecuzione, visualizzane i log con il seguente comando.
kubectl logs nvidia-smi
Di seguito viene riportato un output di esempio:
Mon Aug 6 20:23:31 20XX
+-----------------------------------------------------------------------------+ | NVIDIA-SMIXXX.XX
Driver Version:XXX.XX
| |-------------------------------+----------------------+----------------------+ | GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC | | Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. | |===============================+======================+======================| | 0 Tesla V100-SXM2... On | 00000000:00:1C.0 Off | 0 | | N/A 46C P0 47W / 300W | 0MiB / 16160MiB | 0% Default | +-------------------------------+----------------------+----------------------+ +-----------------------------------------------------------------------------+ | Processes: GPU Memory | | GPU PID Type Process name Usage | |=============================================================================| | No running processes found | +-----------------------------------------------------------------------------+
EKSOttimizzato per Amazon Arm Amazon Linux AMIs
Le istanze ARM offrono notevoli risparmi sui costi in termini di scalabilità orizzontale e Armapplicazioni basate su server Web, microservizi containerizzati, flotte di memorizzazione nella cache e archivi di dati distribuiti. Quando si aggiunge Arm nodi del cluster, esamina le seguenti considerazioni.
Considerazioni
-
Se il cluster è stato implementato prima del 17 agosto 2020, è necessario eseguire un aggiornamento una tantum dei manifesti critici dei componenti aggiuntivi del cluster. Questo è così Kubernetes può estrarre l'immagine corretta per ogni architettura hardware in uso nel cluster. Per ulteriori informazioni sull'aggiornamento dei componenti aggiuntivi del cluster, consultare Aggiorna il Kubernetes versione per il tuo EKS cluster Amazon. Se hai distribuito il cluster a partire dal 17 agosto 2020, allora CoreDNS,
kube-proxy
e Amazon VPC CNI plugin for Kubernetes i componenti aggiuntivi sono già compatibili con più architetture. -
Applicazioni distribuite su Arm i nodi devono essere compilati per Arm.
-
Se hai DaemonSets che sono distribuiti in un cluster esistente oppure desideri distribuirli in un nuovo cluster che desideri distribuire anche tu Arm inserisci i nodi, quindi verifica che DaemonSet può essere eseguito su tutte le architetture hardware del cluster.
-
Puoi correre Arm gruppi di nodi e gruppi di nodi x86 nello stesso cluster. In tal caso, prendi in considerazione la possibilità di distribuire immagini di container multiarchitettura in un repository di contenitori come Amazon Elastic Container Registry e quindi di aggiungere selettori di nodi ai tuoi manifesti in modo che Kubernetes sa cos'è l'architettura hardware Pod può essere distribuito su. Per ulteriori informazioni, consulta Pushing a multi-architecture image nella Amazon ECR User Guide e il post di blog Introducing multi-architecture container images for Amazon ECR
.
Ulteriori informazioni
Per ulteriori informazioni sull'uso di Amazon Linux EKS ottimizzato per AmazonAMIs, consulta le seguenti sezioni:
-
Per utilizzare Amazon Linux con gruppi di nodi gestiti, consulta la sezione Semplifica il ciclo di vita dei nodi con gruppi di nodi gestiti.
-
Per avviare nodi Amazon Linux autogestiti, consulta la sezione Recupera Amazon Linux consigliato AMI IDs.
-
Per informazioni sulla versione, consulta Recupera informazioni sulla AMI versione di Amazon Linux.
-
Per recuperare la versione più recente IDs di Amazon Linux EKS ottimizzata per AmazonAMIs, consultaRecupera Amazon Linux consigliato AMI IDs.
-
Per gli script open source utilizzati per creare Amazon EKS OptimizedAMI, consulta. Crea un Amazon Linux personalizzato AMI con uno script