Tutorial: Creare un'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à.

Tutorial: Creare un'AMI per risorse di calcolo

Puoi creare la tua AMI di risorse di calcolo personalizzata da utilizzare per i tuoi ambienti di elaborazione gestiti e non gestiti. Per istruzioni, consulta il Specifiche AMI delle risorse di calcolo. Quindi, dopo aver creato un'AMI personalizzata, puoi creare un ambiente di calcolo che utilizza quell'AMI a cui puoi associare una coda di lavoro. Infine, inizia a inviare i lavori a quella coda.

Per creare una risorsa di calcolo AMI personalizzata
  1. Scegli un AMI di base da cui iniziare. L'AMI di base deve utilizzare la virtualizzazione HVM. L'AMI di base non può essere un'AMI Windows.

    Nota

    L'AMI scelta per un ambiente di elaborazione deve corrispondere all'architettura dei tipi di istanza che intendi utilizzare per quell'ambiente di elaborazione. Ad esempio, se l'ambiente di elaborazione utilizza tipi di istanza A1, l'AMI della risorsa di calcolo scelta deve supportare le istanze ARM. Amazon ECS offre versioni x86 e ARM dell'AMI Amazon Linux 2 ottimizzata per Amazon ECS. Per ulteriori informazioni, consulta l'AMI Amazon Linux 2 ottimizzata per Amazon ECS nella Amazon Elastic Container Service Developer Guide.

    L'AMI Amazon Linux 2 ottimizzata per Amazon ECS è l'AMI predefinita per le risorse di elaborazione in ambienti di elaborazione gestiti. L'AMI Amazon Linux 2 ottimizzata per Amazon ECS è preconfigurata e testata AWS Batch dagli AWS ingegneri. È un'AMI minima con cui iniziare e con cui puoi far funzionare AWS rapidamente le tue risorse di calcolo. Per ulteriori informazioni, consulta Amazon ECS Optimized AMI nella Amazon Elastic Container Service Developer Guide.

    In alternativa, puoi scegliere un'altra variante di Amazon Linux 2 e installare il ecs-init pacchetto con i seguenti comandi. Per ulteriori informazioni, consulta Installazione dell'agente container Amazon ECS su un' EC2 istanza Amazon Linux 2 nella Amazon Elastic Container Service Developer Guide:

    $ sudo amazon-linux-extras disable docker $ sudo amazon-linux-extras install ecs-init

    Ad esempio, se desideri eseguire carichi di lavoro GPU sulle tue risorse di AWS Batch calcolo, puoi iniziare con l'AMI Amazon Linux Deep Learning. Quindi, configura l'AMI per eseguire i AWS Batch lavori. Per ulteriori informazioni, consulta Usa un'AMI per carichi di lavoro GPU.

    Importante

    Puoi scegliere un'AMI di base che non supporti il ecs-init pacchetto. Tuttavia, se lo fai, devi configurare un modo per avviare l'agente Amazon ECS all'avvio e mantenerlo in esecuzione. Puoi anche visualizzare diversi esempi di script di configurazione dei dati utente che vengono utilizzati systemd per avviare e monitorare l'agente container Amazon ECS. Per ulteriori informazioni, consulta Esempi di script di configurazione dei dati utente dell'istanza del contenitore nella Amazon Elastic Container Service Developer Guide.

  2. Avvia un'istanza dall'AMI di base selezionata con le opzioni di archiviazione appropriate per l'AMI. Puoi configurare la dimensione e il numero di volumi Amazon EBS collegati o i volumi di storage delle istanze se il tipo di istanza selezionato li supporta. Per ulteriori informazioni, consulta Launching an Instance e Amazon EC2 Instance Store nella Amazon EC2 User Guide.

  3. Connect alla tua istanza SSH ed esegui tutte le attività di configurazione necessarie. Ciò potrebbe includere alcuni o tutti i seguenti passaggi:

    • Installazione dell'agente container Amazon ECS. Per ulteriori informazioni, consulta Installazione di Amazon ECS Container Agent nella Amazon Elastic Container Service Developer Guide.

    • Configurazione di uno script per la formattazione di volumi instance store.

    • Aggiungere il volume dell'instance store o i file system Amazon EFS al /etc/fstab file in modo che vengano montati all'avvio.

    • Configurazione delle opzioni Docker, come l'abilitazione del debug o la regolazione delle dimensioni dell'immagine di base.

    • Installazione di pacchetti o copia di file.

    Per ulteriori informazioni, consulta Connessione all'istanza Linux tramite SSH nella Amazon EC2 User Guide.

  4. Se hai avviato l'agente container Amazon ECS sulla tua istanza, devi interromperlo e rimuovere tutti i file di checkpoint persistenti dei dati prima di creare l'AMI. Altrimenti, se non lo fai, l'agente non si avvia sulle istanze lanciate dalla tua AMI.

    1. Arresta l'agente del container di Amazon ECS.

      • AMI Amazon Linux 2 ottimizzata per Amazon ECS:

        sudo systemctl stop ecs
      • AMI Amazon Linux ottimizzata per Amazon ECS:

        sudo stop ecs
    2. Rimuovi i file persistenti del checkpoint dei dati. Per impostazione predefinita, questi file si trovano nella /var/lib/ecs/data/ directory. Usa il seguente comando per rimuovere questi file, se ce ne sono.

      sudo rm -rf /var/lib/ecs/data/*
  5. Crea una nuova AMI dall'istanza in esecuzione. Per ulteriori informazioni, consulta Creazione di un'AMI Linux supportata da Amazon EBS nella Amazon EC2 User Guide.

Per usare la tua nuova AMI con AWS Batch
  1. Dopo aver creato la nuova AMI, crea un ambiente di calcolo con la nuova AMI. Per fare ciò, scegli il tipo di immagine e inserisci l'ID AMI personalizzato nella casella Image ID override quando crei l'ambiente di AWS Batch calcolo. Per ulteriori informazioni, consulta Tutorial: crea un ambiente di elaborazione gestito utilizzando le risorse Amazon EC2 .

    Nota

    L'AMI scelta per un ambiente di elaborazione deve corrispondere all'architettura dei tipi di istanza che intendi utilizzare per quell'ambiente di elaborazione. Ad esempio, se l'ambiente di elaborazione utilizza tipi di istanza A1, l'AMI della risorsa di calcolo scelta deve supportare le istanze ARM. Amazon ECS offre versioni x86 e ARM dell'AMI Amazon Linux 2 ottimizzata per Amazon ECS. Per ulteriori informazioni, consulta l'AMI Amazon Linux 2 ottimizzata per Amazon ECS nella Amazon Elastic Container Service Developer Guide.

  2. Crea una coda dei processi e associa il nuovo ambiente di calcolo. Per ulteriori informazioni, consulta Creare una coda di lavoro.

    Nota

    Tutti gli ambienti di elaborazione associati a una coda di lavoro devono condividere la stessa architettura. AWS Batch non supporta la combinazione di tipi di architettura dell'ambiente di calcolo in un'unica coda di lavoro.

  3. (Facoltativo) Invia un processo di esempio alla nuova coda di processi. Per ulteriori informazioni, consulta Riferimento: esempi di definizione di Job, Creare una definizione di processo a nodo singolo e Tutorial: invia un lavoro.