Contribuisci a migliorare questa pagina
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à.
Per contribuire a questa guida per l'utente, scegli il GitHub link Modifica questa pagina nel riquadro destro di ogni pagina.
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à.
Gestisci l'elaborazione per i AI/ML carichi di lavoro su Amazon EKS con gruppi di nodi
Suggerimento
Registrati
Questa sezione spiega come gestire l'elaborazione accelerata (AWS Trainium, GPU NVIDIA) per i carichi di lavoro di addestramento e inferenza AI utilizzando gruppi di nodi gestiti Amazon EKS o nodi autogestiti.
I gruppi di nodi gestiti da EKS e i nodi autogestiti utilizzano EC2 Auto Scaling Groups (ASG). I gruppi di nodi gestiti EKS dispongono di API EKS dedicate per la creazione, l'aggiornamento e l'eliminazione dei nodi e dispongono anche di funzionalità di riparazione dei nodi e hook di terminazione del ciclo di vita integrati. I nodi autogestiti EKS vengono distribuiti e gestiti direttamente tramite le API EC2.
Con queste opzioni, puoi definire in anticipo il tipo di istanza, il conteggio desiderato, i limiti di scalabilità e il modello di lancio di EC2. Prendi in considerazione l'utilizzo di gruppi di nodi gestiti EKS o nodi autogestiti se disponi anche di carichi di lavoro non EKS e preferisci la coerenza della configurazione attraverso i modelli di lancio di EC2. I gruppi di nodi EKS sono ideali per la formazione e l'ottimizzazione di carichi di lavoro in cui l'impronta di elaborazione accelerata è nota in anticipo. Nota, sia EKS Auto Mode che Karpenter supportano anche il provisioning statico della capacità, vedi per ulteriori informazioni. Gestisci l'elaborazione per i AI/ML carichi di lavoro con EKS Auto Mode e Karpenter
I gruppi di nodi gestiti EKS e i nodi autogestiti supportano tutte le opzioni di acquisto di elaborazione accelerata (SpotOn-Demand, Capacity Reservations, On-Demand Capacity Blocks for ML). È possibile creare un gruppo di nodi gestito o autogestito separato per tipo di capacità, ciascuno con il proprio modello di lancio, tipi di istanza e configurazione di scalabilità. In questo modo è possibile ASG-backed controllare in modo esplicito ogni pool di capacità senza una logica di provisioning dinamica eterogenea.
Gruppi di nodi gestiti da EKS e nodi autogestiti
La scelta tra gruppi di nodi gestiti EKS e nodi autogestiti dipende dal livello di personalizzazione e controllo richiesto. I gruppi di nodi gestiti EKS consentono la personalizzazione di un sottoinsieme del modello di lancio EC2, mentre i nodi autogestiti supportano l'intera gamma del modello di lancio EC2. Se non hai un motivo specifico per personalizzare e gestire autonomamente il ciclo di vita dei nodi, inizia con i gruppi di nodi gestiti da EKS e passa ai nodi autogestiti solo quando un requisito specifico lo impone.
Utilizza i gruppi di nodi gestiti quando: desideri che EKS gestisca la selezione degli AMI, il bootstrap dei nodi, gli aggiornamenti continui, la riparazione dei nodi e i flussi di lavoro Graceful Drain per tuo conto. I gruppi di nodi gestiti EKS sono il punto di partenza consigliato se non preferite utilizzare EKS Auto Mode o Karpenter per carichi di lavoro di addestramento e inferenza. Quando si utilizza Capacity Blocks for ML, i gruppi di nodi gestiti da EKS creano automaticamente una politica di scalabilità pianificata che prosciuga il gruppo di nodi 40 minuti prima del termine della prenotazione, eliminando la necessità di utilizzare il AWS Node Termination Handler o la propria automazione
Utilizza i gruppi di nodi autogestiti quando: hai bisogno del pieno controllo sul modello di lancio EC2, sull'AMI, sui parametri del kernel, sulla configurazione di runtime del contenitore o sugli script di bootstrap personalizzati. Gli scenari ML più comuni includono l'ottimizzazione delle impostazioni del kernel e della NIC per l'addestramento distribuito con Elastic Fabric Adapter (EFA) o l'integrazione con un controller del ciclo di vita dei nodi personalizzato. Self-managed i nodi ti offrono la flessibilità necessaria per fornire tutti i dati utente e il profilo di istanza IAM di cui hai bisogno, ma ti assumi la responsabilità degli aggiornamenti, delle politiche di scalabilità pianificate e degli hook del ciclo di vita come il Node Termination Handler.AWS
Prenota GPU con blocchi di capacità per ML
I Capacity Blocks for Machine Learning (ML) consentono di riservare istanze GPU in date future per carichi di lavoro di formazione o inferenza con limiti di tempo. Per ulteriori informazioni, consulta Capacity Blocks for ML nella Guida per l'utente di Amazon EC2.
Puoi utilizzare le prenotazioni di Capacity Block tramite gruppi di nodi gestiti EKS e nodi autogestiti. La configurazione del modello di lancio EC2 è la stessa in entrambi i casi. Il flusso di lavoro per la creazione dei nodi, il comportamento di ridimensionamento e gli hook del ciclo di vita per la terminazione del carico di lavoro differiscono tra le opzioni di provisioning.
Considerazioni
-
I blocchi di capacità sono disponibili solo per determinati tipi di istanze e AWS regioni Amazon EC2. Per ulteriori informazioni, consulta Work with Capacity Blocks Prerequisiti.
-
I blocchi di capacità sono zonali. Durante la creazione del gruppo di nodi, è necessario utilizzare la sottorete nella stessa zona di disponibilità (AZ) della prenotazione del blocco di capacità.
-
Se crei un gruppo di nodi prima che la prenotazione del Capacity Block diventi attiva, imposta la capacità desiderata su
0durante la creazione del gruppo di nodi. -
Per dedicare del tempo a un corretto esaurimento del carico di lavoro, pianifica la scalabilità a zero più di 30 minuti prima del termine della prenotazione di Capacity Block. EC2 inizia a chiudere le istanze 30 minuti prima del termine della prenotazione.
Crea gruppi di nodi con Capacity Blocks for ML
I gruppi di nodi gestiti da EKS e i nodi autogestiti richiedono l'utilizzo di un modello di lancio EC2 personalizzato destinato alla prenotazione Capacity Block. Di seguito sono riportati i campi minimi obbligatori per i gruppi di nodi gestiti da EKS e i nodi autogestiti. I campi aggiuntivi sono obbligatori per i nodi autogestiti, come illustrato nei passaggi relativi ai Self-managed nodi riportati di seguito.
LaunchTemplateDataDevono includere:
-
InstanceMarketOptionsconMarketTypeimpostato su"capacity-block" -
CapacityReservationSpecification: CapacityReservationTargetconCapacityReservationIdimpostato sul Capacity Block ID. Ad esempio,cr-0123456789abcdef0. -
InstanceTypeimpostato sul tipo di istanza della prenotazione Capacity Block. Ad esempio,p5.48xlarge.
Questi requisiti sono illustrati negli esempi seguenti per la creazione del modello di lancio per i gruppi di nodi gestiti da EKS e i nodi autogestiti.