Utilizzalo Capacity Blocks per carichi di lavoro di machine learning - Amazon EC2 Auto Scaling

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à.

Utilizzalo Capacity Blocks per carichi di lavoro di machine learning

Capacity Blocksti aiutano a prenotare istanze GPU molto richieste in date future per supportare i tuoi carichi di lavoro di machine learning (ML) di breve durata.

Per una panoramica Capacity Blocks e su come funzionano, consulta la sezione relativa al Capacity Blocksmachine learning nella Amazon EC2 User Guide.

Per iniziare a Capacity Blocks utilizzarla, crei una prenotazione di capacità in una zona di disponibilità specifica. Capacity Blocksvengono fornite come prenotazioni targeted di capacità in un'unica zona di disponibilità. Quando crei il modello di lancio, specifica l'ID di prenotazione e il tipo di istanza del Capacity Block. Quindi, aggiorna il tuo gruppo Auto Scaling per utilizzare il modello di avvio che hai creato e la zona di disponibilità del Capacity Block. Quando inizia la prenotazione Capacity Block, utilizza la scalabilità pianificata per avviare lo stesso numero di istanze della prenotazione Capacity Block.

Importante

Capacity Blockssono disponibili solo per determinati tipi di istanze Amazon EC2 e. Regioni AWS Per ulteriori informazioni, consulta Prerequisiti nella Guida per l'utente di Amazon EC2.

Linee guida operative

Di seguito sono illustrate le linee guida operative di base e le istanze che dovresti seguire durante l'utilizzo di un blocco delle capacità con un gruppo con dimensionamento automatico.

  • Ridimensiona il tuo gruppo con dimensionamento automatico fino a zero oltre 30 minuti prima dell'orario di fine della prenotazione del blocco delle capacità. Amazon EC2 interromperà tutte le istanze ancora in esecuzione 30 minuti prima della fine del blocco delle capacità.

  • Ti consigliamo di utilizzare la scalabilità pianificata per la scalabilità orizzontale (aggiungere istanze) e la scalabilità orizzontale (rimuovere le istanze) negli orari di prenotazione appropriati. Per ulteriori informazioni, consulta Dimensionamento programmato per Dimensionamento automatico Amazon EC2.

  • Se necessario, aggiungi gli hook del ciclo di vita per eseguire un arresto graduale dell'applicazione all'interno delle istanze durante il ridimensionamento. Lascia il tempo necessario per completare l'azione del ciclo di vita prima che Amazon EC2 inizi a terminare forzatamente le istanze 30 minuti prima dell'orario di fine della prenotazione del blocco delle capacità. Per ulteriori informazioni, consulta Hook del ciclo di vita di Amazon EC2 Auto Scaling.

  • Assicurati che il gruppo con dimensionamento automatico punti alla versione corretta del modello di avvio per l'intera durata della prenotazione. Ti consigliamo di puntare a una versione specifica del modello di avvio anziché alla versione $Default o $Latest.

Nota

Se lasci un'istanza Capacity Block in esecuzione fino alla fine della prenotazione e Amazon EC2 la recupera, le attività di scalabilità per il tuo gruppo Auto Scaling dichiarano che si trattava di "taken out of service in response to an EC2 health check that indicated it had been terminated or stopped«, anche se è stata recuperata intenzionalmente alla fine del Capacity Block. Allo stesso modo, Amazon EC2 Auto Scaling tenterà di sostituire l'istanza nello stesso modo in cui fa per qualsiasi istanza che non superi un controllo di integrità. Per ulteriori informazioni, consulta Controlli dell'integrità per le istanze in un gruppo con dimensionamento automatico.

Specifica un blocco di capacità nel modello di avvio

Per creare un modello di lancio destinato a un blocco di capacità specifico per il gruppo Auto Scaling, utilizzate uno dei seguenti metodi:

Console
Per specificare un blocco di capacità nel proprio modello di avvio (console)
  1. Apri la console Amazon EC2 all'indirizzo https://console.aws.amazon.com/ec2/.

  2. Nella barra di navigazione in alto, seleziona il Regione AWS punto in cui hai creato il tuo Capacity Block.

  3. Nel pannello di navigazione, in Istanze, scegli Modelli di avvio.

  4. Scegli Crea modello di lancio e crea il modello di lancio. Se necessario, includi l'ID dell'Amazon Machine Image (AMI), il tipo di istanza e altre impostazioni del modello di avvio.

  5. Espandi la sezione Dettagli avanzati per visualizzare le impostazioni avanzate.

  6. Per l’opzione di acquisto, scegli blocchi di capacità.

  7. Per Prenotazione di capacità, scegli Target per ID, quindi per Prenotazione della capacità - Target per ID, scegli l'ID di prenotazione della capacità di un blocco di capacità esistente.

  8. Al termine, scegliere Crea modello di avvio.

    Per informazioni sulla creazione di un gruppo Auto Scaling con un modello di lancio, consulta. Creare un gruppo con dimensionamento automatico utilizzando un modello di avvio

AWS CLI
Per specificare un blocco di capacità nel modello di avvio (AWS CLI)

Usa il create-launch-templatecomando seguente per creare un modello di lancio che specifichi un ID di prenotazione Capacity Block esistente. Sostituisci ogni user input placeholder con le tue informazioni.

aws ec2 create-launch-template --launch-template-name my-template-for-capacity-block \ --version-description AutoScalingVersion1 --region us-east-2 \ --launch-template-data file://config.json
Suggerimento

Se questo comando genera un errore, assicurati di averlo aggiornato AWS CLI localmente alla versione più recente.

Contenuto di config.json.

{ "ImageId": "ami-04d5cc9b88example", "InstanceType": "p4d.24xlarge", "SecurityGroupIds": [ "sg-903004f88example" ], "KeyName": "MyKeyPair", "InstanceMarketOptions": { "MarketType": "capacity-block" }, "CapacityReservationSpecification": { "CapacityReservationTarget": { "CapacityReservationId": "cr-02168da1478b509e0" } } }

Di seguito è riportato un output di esempio.

{ "LaunchTemplate": { "LaunchTemplateId": "lt-068f72b724example", "LaunchTemplateName": "my-template-for-capacity-block", "CreateTime": "2023-10-27T15:12:44.000Z", "CreatedBy": "arn:aws:iam::123456789012:user/Bob", "DefaultVersionNumber": 1, "LatestVersionNumber": 1 } }

È possibile utilizzare il describe-launch-template-versionscomando seguente per verificare l'ID di prenotazione Capacity Block associato al modello di lancio.

aws ec2 describe-launch-template-versions --launch-template-names my-template-for-capacity-block \ --region us-east-2

Di seguito è riportato l'output di esempio per un modello di avvio che specifica una prenotazione di blocco di capacità.

{ "LaunchTemplateVersions": [ { "LaunchTemplateId": "lt-068f72b724example", "LaunchTemplateName": "my-template-for-capacity-block", "VersionNumber": 1, "CreateTime": "2023-10-27T15:12:44.000Z", "CreatedBy": "arn:aws:iam::123456789012:user/Bob", "DefaultVersion": true, "LaunchTemplateData": { "ImageId": "ami-04d5cc9b88example", "InstanceType": "p5.48xlarge", "SecurityGroupIds": [ "sg-903004f88example" ], "KeyName": "MyKeyPair", "InstanceMarketOptions": { "MarketType": "capacity-block" }, "CapacityReservationSpecification": { "CapacityReservationTarget": { "CapacityReservationId": "cr-02168da1478b509e0" } } } } ] }

Limitazioni

  • Il supporto per Capacity Blocks è disponibile solo se il gruppo Auto Scaling ha una configurazione compatibile. I gruppi di istanze miste e i pool caldi non sono supportati.

  • È possibile scegliere come target un solo Capacity Block alla volta.

  • Per i prerequisiti e i consigli per l'utilizzo delle istanze P5, consulta la Guida introduttiva alle istanze P5 nella Amazon EC2 User Guide.

  • Amazon EKS supporta l'utilizzo Capacity Blocks per supportare carichi di lavoro di apprendimento automatico (ML) di breve durata su cluster Amazon EKS. Per ulteriori informazioni, consulta Capacity Blocksla sezione ML nella Amazon EKS User Guide.

  • Puoi utilizzarlo Capacity Blocks con i tipi di istanza e le regioni supportati. Tuttavia, le prenotazioni di capacità su richiesta offrono la flessibilità necessaria per riservare la capacità per altri tipi di istanze e regioni. Per un tutorial che mostra come utilizzare l'opzione di prenotazione della capacità su richiesta, consulta. Capacità di riserva in zone di disponibilità specifiche con prenotazioni di capacità