AMI per risorse di calcolo - AWS Batch

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

AMI per risorse di calcolo

Per impostazione predefinita, gli ambienti di elaborazione AWS Batch gestiti utilizzano una versione recente e approvata dell'AMI ottimizzata Amazon ECS per le risorse di calcolo. Tuttavia, potresti voler creare la tua AMI da utilizzare per i tuoi ambienti di elaborazione gestiti e non gestiti. Se hai bisogno di uno dei seguenti elementi, ti consigliamo di creare la tua AMI personale:

  • Aumento delle dimensioni di archiviazione della radice o dei volumi di dati dell'AMI

  • Aggiungere volumi di storage delle istanze per i tipi di istanze Amazon EC2 supportati

  • Personalizzazione dell'agente container Amazon ECS

  • Personalizzazione di Docker

  • Configurazione di un'AMI per carichi di lavoro GPU per consentire ai container di accedere all'hardware GPU sui tipi di istanze Amazon EC2 supportati

Nota

Dopo la creazione di un ambiente di calcolo, AWS Batch non aggiorna le AMI nell'ambiente di calcolo. AWS Batch inoltre, non aggiorna le AMI nel tuo ambiente di calcolo quando è disponibile una versione più recente dell'AMI ottimizzata per Amazon ECS. Sei responsabile della gestione del sistema operativo guest. Ciò include eventuali aggiornamenti e patch di sicurezza. Sei inoltre responsabile di qualsiasi software applicativo o utilità aggiuntivo che installi sulle risorse di elaborazione. Per utilizzare una nuova AMI per i tuoi AWS Batch lavori, procedi come segue:

  1. Creare un nuovo ambiente di calcolo con la nuova AMI.

  2. Aggiungere l'ambiente di calcolo a una coda di processi esistente.

  3. Rimuovere il precedente ambiente di calcolo dalla coda di processi.

  4. Eliminare l'ambiente di calcolo precedente.

Nell'aprile 2022, è AWS Batch stato aggiunto un supporto avanzato per l'aggiornamento degli ambienti di elaborazione. Per ulteriori informazioni, consulta Aggiornamento degli ambienti di elaborazione. Per utilizzare l'aggiornamento avanzato degli ambienti di calcolo per aggiornare le AMI, segui queste regole:

  • O non impostate il parametro service role (serviceRole) o impostatelo sul ruolo collegato al AWSServiceRoleForBatchservizio.

  • Imposta il parametro allocation strategy (allocationStrategy) suBEST_FIT_PROGRESSIVE, SPOT_CAPACITY_OPTIMIZED o. SPOT_PRICE_CAPACITY_OPTIMIZED

  • Imposta il parametro di aggiornamento all'ultima versione dell'immagine (updateToLatestImageVersion) sutrue.

  • Non specificare un ID AMI in imageId, imageIdOverride(in ec2Configuration) o nel modello di avvio (launchTemplate). Quando non specifichi un ID AMI, AWS Batch seleziona l'AMI ottimizzata Amazon ECS più recente che AWS Batch supporta al momento dell'aggiornamento dell'infrastruttura. In alternativa, puoi specificare l'ID AMI nei imageIdOverride parametri imageId o. In alternativa, è possibile specificare il modello di avvio identificato dalle LaunchTemplate proprietà. La modifica di una di queste proprietà avvia un aggiornamento dell'infrastruttura. Se l'ID AMI è specificato nel modello di avvio, l'ID AMI non può essere sostituito specificando un ID AMI nei imageIdOverride parametri imageId o. L'ID AMI può essere sostituito solo specificando un modello di avvio diverso. Se la versione del modello di avvio è impostata su $Default o$Latest, l'ID AMI può essere sostituito impostando una nuova versione predefinita per il modello di avvio (if$Default) o aggiungendo una nuova versione al modello di avvio (if$Latest).

Se vengono seguite queste regole, qualsiasi aggiornamento che avvia un aggiornamento dell'infrastruttura causa la riseleziona l'ID AMI. Se l'versionimpostazione nel modello di avvio (launchTemplate) è impostata su $Latest o$Default, la versione più recente o predefinita del modello di lancio viene valutata al momento dell'aggiornamento dell'infrastruttura, anche se non launchTemplateera aggiornata.

Specifiche AMI delle risorse di calcolo

La specifica AMI delle risorse di AWS Batch calcolo di base è composta da quanto segue:

Campo obbligatorio

  • Una distribuzione Linux moderna che esegue almeno la versione 3.10 del kernel Linux su un'AMI di tipo di virtualizzazione HVM. I contenitori Windows non sono supportati.

    Importante

    I lavori paralleli multinodo possono essere eseguiti solo su risorse di calcolo lanciate su un'istanza Amazon Linux con il ecs-init pacchetto installato. Ti consigliamo di utilizzare l'AMI ottimizzata Amazon ECS predefinita quando crei il tuo ambiente di elaborazione. È possibile farlo non specificando un AMI personalizzato. Per ulteriori informazioni, consulta Lavori paralleli multinodo.

  • L'agente container Amazon ECS. Consigliamo di utilizzare la versione più recente. Per ulteriori informazioni, consulta Installazione di Amazon ECS Container Agent nella Amazon Elastic Container Service Developer Guide.

  • Il driver di awslogs registro deve essere specificato come driver di registro disponibile con la variabile di ECS_AVAILABLE_LOGGING_DRIVERS ambiente all'avvio dell'agente contenitore Amazon ECS. Per ulteriori informazioni, consulta Configurazione dell'agente del container Amazon ECS nella Guida per gli sviluppatori di Amazon Elastic Container Service.

  • Un demone Docker che esegue almeno la versione 1.9 e tutte le dipendenze di runtime di Docker. Per ulteriori informazioni, consulta Check runtime dependencies (Controlla dipendenze di runtime) nella documentazione di Docker.

    Nota

    Ti consigliamo la versione Docker fornita con e testata con la corrispondente versione dell'agente Amazon ECS che stai utilizzando. Amazon ECS fornisce un changelog per la variante Linux dell'AMI ottimizzata per Amazon ECS su. GitHub Per ulteriori informazioni, consulta Changelog.

Consigliato

  • Un processo di inizializzazione e nanny per eseguire e monitorare l'agente Amazon ECS. L'AMI ottimizzata per Amazon ECS utilizza il processo ecs-init upstart e altri sistemi operativi potrebbero utilizzarlo. systemd Per ulteriori informazioni ed esempi, consulta Example Container Instance User Data Configuration Scripts nella Amazon Elastic Container Service Developer Guide. Per ulteriori informazioni suecs-init, consulta il ecs-initprogetto su GitHub. Come minimo, gli ambienti di elaborazione gestiti richiedono che l'agente Amazon ECS si avvii all'avvio. Se l'agente Amazon ECS non è in esecuzione sulla tua risorsa di elaborazione, non può accettare lavori da. AWS Batch

L'AMI ottimizzata per Amazon ECS è preconfigurata con questi requisiti e raccomandazioni. Ti consigliamo di utilizzare l'AMI ottimizzata Amazon ECS o un'AMI Amazon Linux con il ecs-init pacchetto installato per le tue risorse di calcolo. Scegli un'altra AMI se la tua applicazione richiede un sistema operativo specifico o una versione Docker non ancora disponibile in tali AMI. Per ulteriori informazioni, consulta l'AMI ottimizzata per Amazon ECS nella Amazon Elastic Container Service Developer Guide.