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à.
Guida introduttiva all' SageMaker HyperPod utilizzo della console SageMaker AI
Il seguente tutorial mostra come creare un nuovo SageMaker HyperPod cluster e configurarlo con Slurm tramite l'interfaccia utente della console SageMaker AI. Seguendo il tutorial, creerai un HyperPod cluster con tre nodi Slurm,, e. my-controller-group my-login-group worker-group-1
Nota
HyperPod ora supporta la creazione di cluster Slurm senza script del ciclo di vita. È possibile creare un cluster completamente funzionale utilizzando la AMI-based configurazione, estenderlo con uno script di estensione o continuare a utilizzare script del ciclo di vita personalizzati per il controllo completo.
Argomenti
Creazione di un cluster
Per accedere alla pagina SageMaker HyperPod Clusters e scegliere Slurm orchestration, segui questi passaggi.
Apri la console Amazon SageMaker AI all'indirizzo https://console.aws.amazon.com/sagemaker/
. -
Scegli HyperPod Clusters nel riquadro di navigazione a sinistra, quindi Cluster Management.
-
Nella pagina SageMaker HyperPod Cluster, scegli Crea HyperPod cluster.
-
Nel menu a discesa Crea HyperPod cluster, scegli Orchestrated by Slurm.
-
Nella pagina di creazione del cluster Slurm sono disponibili due opzioni. Scegli quella più adatta alle tue esigenze.
-
Configurazione rapida: per iniziare subito con le impostazioni predefinite, scegli Configurazione rapida. Con questa opzione, l' SageMaker intelligenza artificiale creerà nuove risorse come VPC, sottoreti, gruppi di sicurezza, bucket Amazon S3, ruolo IAM e FSx for Lustre nel processo di creazione del cluster.
-
Configurazione personalizzata: per l’integrazione con le risorse AWS esistenti o per soddisfare requisiti di rete, sicurezza o archiviazione specifici, scegli Configurazione personalizzata. Con questa opzione, puoi scegliere di utilizzare le risorse esistenti o crearne di nuove e puoi personalizzare la configurazione in base alle tue esigenze.
-
Nella sezione Configurazione rapida, segui questi passaggi per creare il tuo cluster con l'orchestrazione Slurm. HyperPod
Impostazioni generali
Specifica un nome per il nuovo cluster. Dopo la creazione del cluster, non è più possibile modificarne il nome.
Gruppi di istanze
Per aggiungere un gruppo di istanze, scegli Aggiungi gruppo. Ogni gruppo di istanze può essere configurato in modo diverso ed è possibile creare un cluster eterogeneo composto da più gruppi di istanze con vari tipi di istanze. Per implementare un cluster, devi aggiungere almeno un gruppo di istanze per i tipi di gruppo Controller e Calcolo.
Importante
Puoi aggiungere un gruppo di istanze alla volta. Per creare più gruppi di istanze, ripeti il processo per ogni gruppo.
Segui questa procedura per aggiungere un gruppo di istanze.
-
In Tipo di gruppo di istanze, scegli un tipo per il tuo gruppo di istanze. Per questo tutorial, scegli Controller (head) per
my-controller-group, Login permy-login-groupe Calcolo (worker) perworker-group-1. -
In Nome, specifica un nome per il gruppo di istanze. Per questo tutorial, crea tre gruppi di istanze denominati
my-controller-group,my-login-groupeworker-group-1. -
In Capacità dell’istanza, scegli la capacità on demand o un piano di addestramento per riservare le tue risorse di calcolo.
-
Per Tipo di istanza, scegli l’istanza per il gruppo di istanze. Per questo tutorial, seleziona
ml.c5.xlargepermy-controller-group,ml.m5.4xlargepermy-login-groupeml.trn1.32xlargeperworker-group-1.Importante
Assicurati di selezionare un tipo di istanza con quote sufficienti e un numero adeguato di indirizzi IP non assegnati per il tuo account. Per visualizzare o richiedere quote aggiuntive, consulta SageMaker HyperPod quote.
-
In Quantità istanze. specifica un numero intero che non sia maggiore della quota dell’istanza per l’utilizzo del cluster. Per questo tutorial, inserisci 1 per tutti e tre i gruppi.
-
In Zona di disponibilità di destinazione, scegli la zona di disponibilità in cui allocare le istanze. La zona di disponibilità deve corrispondere alla posizione della capacità di calcolo accelerata.
-
Per Volume di archiviazione aggiuntivo per istanza (GB) (facoltativo), specifica un numero intero compreso tra 1 e 16.384 per impostare la dimensione di un volume Elastic Block Store (EBS) aggiuntivo in gigabyte (GB). Il volume EBS è collegato a ciascuna istanza del gruppo di istanze. Il percorso di montaggio predefinito per il volume EBS aggiuntivo è
/opt/sagemaker. Dopo aver creato correttamente il cluster, è possibile accedere tramite SSH alle istanze del cluster (nodi) e verificare che il volume EBS sia montato correttamente eseguendo il comandodf -h. Il collegamento di un volume EBS aggiuntivo fornisce un’archiviazione stabile, fuori istanza e con persistenza indipendente, come descritto nella sezione Amazon EBS volumes in Amazon Elastic Block Store User Guide. -
Scegli Aggiungi gruppo di istanze.
Impostazioni predefinite della configurazione rapida
Questa sezione elenca tutte le impostazioni predefinite per la creazione del cluster, incluse tutte le nuove AWS risorse che verranno create durante il processo di creazione del cluster. Verificare le impostazioni predefinite.
Nota
La configurazione rapida utilizza automaticamente gli script del ciclo di vita predefiniti. La nuova opzione AMI-based di configurazione (senza script del ciclo di vita) è disponibile solo tramite la configurazione personalizzata. Se desideri creare un cluster senza script del ciclo di vita, scegli Configurazione personalizzata e scegli Nessuno in Script del ciclo di vita.
Nella sezione Configurazione personalizzata, segui questi passaggi per creare il tuo cluster con l'orchestrazione Slurm. HyperPod
Impostazioni generali
Specifica un nome per il nuovo cluster. Dopo la creazione del cluster, non è più possibile modificarne il nome.
In Ripristino dell’istanza, scegli Automatico (consigliato) o Nessuno.
Rete
Configura le impostazioni di rete per la creazione del cluster. Queste impostazioni non possono essere modificate dopo la creazione del cluster.
-
Per quanto riguarda il VPC, scegli il tuo VPC se ne hai già uno che consente all' SageMaker IA di accedere al tuo VPC. Per creare un nuovo VPC, segui le istruzioni in Create a VPC in Amazon Virtual Private Cloud User Guide. Puoi lasciarlo su Nessuno per utilizzare il VPC SageMaker AI predefinito.
-
Per l’intervallo CIDR IPv4 del VPC, inserisci l’IP iniziale del tuo VPC.
-
Per le zone di disponibilità, scegli le zone di disponibilità (AZ) in cui HyperPod verranno create le sottoreti per il tuo cluster. Scegli le AZ che corrispondono alla posizione della tua capacità di calcolo accelerata.
-
In Gruppi di sicurezza, crea un gruppo di sicurezza o scegli fino a cinque gruppi di sicurezza configurati con regole per consentire la comunicazione tra risorse all’interno del VPC.
Gruppi di istanze
Per aggiungere un gruppo di istanze, scegli Aggiungi gruppo. Ogni gruppo di istanze può essere configurato in modo diverso ed è possibile creare un cluster eterogeneo composto da più gruppi di istanze con vari tipi di istanze. Per implementare un cluster, devi aggiungere almeno un gruppo di istanze.
Importante
Puoi aggiungere un gruppo di istanze alla volta. Per creare più gruppi di istanze, ripeti il processo per ogni gruppo.
Segui questa procedura per aggiungere un gruppo di istanze.
-
In Tipo di gruppo di istanze, scegli un tipo per il tuo gruppo di istanze. Per questo tutorial, scegli Controller (head) per
my-controller-group, Login permy-login-groupe Calcolo (worker) perworker-group-1. -
In Nome, specifica un nome per il gruppo di istanze. Per questo tutorial, crea tre gruppi di istanze denominati
my-controller-group,my-login-groupeworker-group-1. -
In Capacità dell’istanza, scegli la capacità on demand o un piano di addestramento per riservare le tue risorse di calcolo.
-
Per Tipo di istanza, scegli l’istanza per il gruppo di istanze. Per questo tutorial, seleziona
ml.c5.xlargepermy-controller-group,ml.m5.4xlargepermy-login-groupeml.trn1.32xlargeperworker-group-1.Importante
Assicurati di selezionare un tipo di istanza con quote sufficienti e un numero adeguato di indirizzi IP non assegnati per il tuo account. Per visualizzare o richiedere quote aggiuntive, consulta SageMaker HyperPod quote.
-
In Quantità istanze. specifica un numero intero che non sia maggiore della quota dell’istanza per l’utilizzo del cluster. Per questo tutorial, inserisci 1 per tutti e tre i gruppi.
-
In Zona di disponibilità di destinazione, scegli la zona di disponibilità in cui allocare le istanze. La zona di disponibilità deve corrispondere alla posizione della capacità di calcolo accelerata.
-
Per Volume di archiviazione aggiuntivo per istanza (GB) (facoltativo), specifica un numero intero compreso tra 1 e 16.384 per impostare la dimensione di un volume Elastic Block Store (EBS) aggiuntivo in gigabyte (GB). Il volume EBS è collegato a ciascuna istanza del gruppo di istanze. Il percorso di montaggio predefinito per il volume EBS aggiuntivo è
/opt/sagemaker. Dopo aver creato correttamente il cluster, è possibile accedere tramite SSH alle istanze del cluster (nodi) e verificare che il volume EBS sia montato correttamente eseguendo il comandodf -h. Il collegamento di un volume EBS aggiuntivo fornisce un’archiviazione stabile, fuori istanza e con persistenza indipendente, come descritto nella sezione Amazon EBS volumes in Amazon Elastic Block Store User Guide. -
Per il nome della partizione Slurm (solo gruppi di calcolo), inserisci il nome della partizione Slurm per questo gruppo di istanze di calcolo. Le partizioni fungono da code logiche che organizzano la pianificazione dei lavori su diversi set di nodi.
-
Scegli Aggiungi gruppo di istanze.
Configurazione del ciclo di vita: opzionale
Configura la modalità di provisioning dei nodi del cluster. La tua scelta influisce sui requisiti dei bucket Amazon S3, sulle esigenze di accesso a Internet e sulla complessità del provisioning. HyperPod supporta tre opzioni di configurazione del ciclo di vita dei nodi, ognuna delle quali offre un diverso livello di controllo sul processo di provisioning.
-
Per gli script del ciclo di vita, scegli una delle seguenti opzioni per controllare la modalità di provisioning dei nodi nel cluster:
-
Nessuno: HyperPod configura automaticamente i nodi utilizzando la configurazione. AMI-based I daemon Slurm, Docker, Enroot, Pyxis, la contabilità Slurm con MariadB, la generazione e la propagazione di chiavi SSH, la rotazione dei log e la configurazione della home directory sono tutti configurati senza script o bucket Amazon S3. Tutto il software è preconfezionato nell'AMI, quindi non è richiesto l'accesso a Internet durante il provisioning. Questo è il percorso più semplice per i nuovi cluster.
-
Usa script del ciclo di vita predefiniti: gli script del ciclo di vita predefiniti vengono caricati nel bucket Amazon S3 scelto e utilizzati per il provisioning dei nodi. Questa opzione utilizza gli script dell'Awsome Distributed Training repository (ADTR).
-
Usa script del ciclo di vita personalizzati: scegli script del ciclo di vita da un bucket Amazon S3. Ciò corrisponde al
OnCreatepercorso nell'API, in cui gli script possiedono l'intera sequenza di provisioning, incluso l'avvio di Slurm. HyperPod non esegue la AMI-based configurazione quando questa opzione è selezionata.
La tabella seguente riassume le tre opzioni:
Opzione Che cosa fa HyperPod È necessario un bucket Amazon S3? È necessario l'accesso a Internet? Nessuno (AMI-basedconfigurazione) Configura automaticamente i nodi con Slurm e i pacchetti essenziali No No Usa script predefiniti per il ciclo di vita Carica ed esegue script ADTR da Amazon S3 Sì Sì Utilizza script personalizzati per il ciclo di vita Esegue i tuoi script da Amazon S3; sei il proprietario dell'intera sequenza di provisioning Sì Dipende dai tuoi script -
-
Per il file di script di estensione in S3, facoltativo (appare quando scegli Nessuno negli script del ciclo di vita), inserisci l'URI Amazon S3 dello script di estensione. Lo script di estensione consente di fornire funzionalità opzionali aggiuntive, come osservabilità, System Security Services Daemon (SSSD) e montaggio su bucket Amazon S3, oltre alle configurazioni predefinite senza gestire l'intero set di script del ciclo di vita.
Inserisci l'URI completo di Amazon S3 nello script del punto di ingresso, ad esempio:
s3://DOC-EXAMPLE-BUCKET/extensions/run_extensions.shHyperPod scarica l'intera cartella in cui risiede lo script del punto di ingresso. Struttura la cartella Amazon S3 in modo che tutti i file di supporto si trovino nella stessa directory dello script del punto di ingresso.
Nota
Nell'API, ciò corrisponde a specificare
OnInitCompleteinLifeCycleConfigwith.SourceS3UriLa console li combina in un unico campo URI Amazon S3 che punta direttamente allo script del punto di ingresso.Suggerimento
Per gli script di estensione pronti all'uso, consulta la cartella Extensions
nell'archivio Awsome Distributed Training. Lo run_extensions.shscript orchestra molteplici funzionalità con semplici interruttori booleani per abilitarle o disabilitarle ognuna. -
Per il bucket S3 per gli script del ciclo di vita (appare quando scegli Usa script del ciclo di vita predefiniti o Usa script del ciclo di vita personalizzati), scegli di creare un nuovo bucket o usa un bucket esistente per archiviare gli script del ciclo di vita.
Nota
La configurazione opzionale del Slurm-orchestrated ciclo di vita dei nodi è supportata solo per i cluster. EKS-orchestrated I cluster Amazon e i cluster Slurm che utilizzano Continuous NodeProvisioningMode continuano a richiedere script del ciclo di vita su ogni gruppo di istanze.
Nota
L'opzione Nessuno con uno script di estensione e l'opzione Usa script personalizzati del ciclo di vita si escludono a vicenda. Non è possibile combinare la AMI-based configurazione con script di estensione e script del ciclo di vita personalizzati sullo stesso gruppo di istanze. Nell'API, ciò significa che OnInitComplete non possono essere OnCreate specificati insieme.
Permissions
Scegli o crea un ruolo IAM che HyperPod consenta di eseguire e accedere alle AWS risorse necessarie per tuo conto.
Archiviazione
Configurare il file system FSx for Lustre per il provisioning HyperPod sul cluster. La configurazione FSx è facoltativa per la creazione di cluster, ma consigliata per carichi di lavoro ML di produzione.
-
In File system, scegli un file system FSx per Lustre esistente per creare un nuovo file system FSx per Lustre oppure non allocare un file system FSx per Lustre.
-
In Throughput per unità di archiviazione, scegli il throughput che sarà disponibile per ogni TiB di archiviazione allocata.
-
In Capacità di archiviazione, inserisci un valore di capacità in TB.
-
In Tipo di compressione dei dati, scegli LZ4 per abilitare la compressione dei dati.
-
In Versione Lustre, visualizza il valore consigliato per i nuovi file system.
Nota
Quando si utilizza la AMI-based configurazione (scegliendo Nessuno in Lifecycle scripts) o uno script di estensione, HyperPod gestisce automaticamente il montaggio di FSx for Lustre. Quando si utilizzano script del ciclo di vita personalizzati, gli script sono responsabili del montaggio del file system.
Tag - opzionale
Per i tag: facoltativo, aggiungi coppie di chiavi e valori al nuovo cluster e gestisci il cluster come risorsa. AWS Per ulteriori informazioni, consulta Tagging delle risorse AWS.
Distribuire le risorse
Dopo aver completato le configurazioni del cluster utilizzando Configurazione rapida o Configurazione personalizzata, scegli l’opzione seguente per avviare il provisioning delle risorse e la creazione del cluster.
-
Invia: l' SageMaker IA inizierà a fornire le risorse di configurazione predefinite e a creare il cluster.
-
Scarica i parametri del CloudFormation modello: scaricherai il file JSON dei parametri di configurazione ed eseguirai il AWS CLI comando per distribuire lo CloudFormation stack per fornire le risorse di configurazione e creare il cluster. Se necessario, puoi modificare il file JSON dei parametri scaricato. Se scegli questa opzione, consulta Creazione di cluster utilizzando SageMaker HyperPod CloudFormation modelli per ulteriori informazioni.
Eliminazione del cluster e pulizia delle risorse
Dopo aver testato con successo la creazione di un SageMaker HyperPod cluster, questo continua a funzionare nello InService stato fino a quando non lo elimini. Ti consigliamo di eliminare tutti i cluster creati utilizzando istanze SageMaker AI su richiesta quando non sono in uso per evitare di incorrere in costi di servizio continui in base ai prezzi su richiesta. In questo tutorial hai creato un cluster costituito da due gruppi di istanze. Uno di essi utilizza un’istanza C5, quindi assicurati di eliminare il cluster seguendo le istruzioni riportate in Eliminare un SageMaker HyperPod cluster.
Tuttavia, se hai creato un cluster con capacità di calcolo riservata, lo stato dei cluster non influisce sulla fatturazione del servizio.
Se hai utilizzato Usa script del ciclo di vita predefiniti o Usa script del ciclo di vita personalizzati, vai al bucket Amazon S3 che hai usato durante la creazione del cluster e rimuovi i file di script del ciclo di vita.
Se hai utilizzato None (solo AMI-based configurazione) senza uno script di estensione, non è necessaria alcuna pulizia di Amazon S3 per gli script del ciclo di vita.
Se hai usato None con uno script di estensione, pulisci i file degli script di estensione dal bucket Amazon S3 che hai specificato.
Se hai testato l’esecuzione di tutti i carichi di lavoro sul cluster, verifica di aver caricato tutti i dati o di aver salvato tutti gli artefatti in bucket S3 o servizi di file system diversi, ad esempio Amazon FSx per Lustre e Amazon Elastic File System. Per evitare addebiti, elimina tutti gli artefatti e i dati dall’archiviazione o dal file system.