

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Ordem de seleção da AMI
<a name="ami-selection-order"></a>

AWS Batch determina a Amazon Machine Image (AMI) para recursos computacionais usando a seguinte ordem de prioridade. Compreender essa ordem ajuda você a entender por que AWS Batch escolher uma AMI específica para seu ambiente computacional:

1. **AMI de substituição do modelo** de execução: se uma substituição do modelo de execução da instância executada tiver uma imagem, essa imagem será usada.

1. **ID da imagem de recursos computacionais (obsoleto)** — se definido, essa AMI de ambiente computacional será usada. *Nota: Campo obsoleto; use EC2Configuration. imageIdOverride em vez disso.*

1. **Substituição da ID da imagem de configuração do EC2** - Se especificada, a imagem nesse campo será usada.

1. **AMI do modelo de execução**: se o ambiente computacional tiver um modelo de execução associado a uma imagem, essa imagem será usada.

1. **AWS AMI padrão** - Se nenhuma das opções acima estiver configurada, AWS Batch seleciona uma AMI padrão com base no tipo de imagem especificado na configuração do EC2.

**nota**  
O parâmetro EC2Configuration é opcional. Quando omitido, seleciona AWS Batch automaticamente uma configuração EC2 apropriada e uma AMI padrão com base nos tipos de instância executados no ambiente computacional.

**nota**  
Essa ordem de seleção da AMI não se aplica aos ambientes computacionais Fargate.

## Ordem de seleção da AMI da maior para a menor prioridade
<a name="ami-order"></a>

1. **O modelo de lançamento substitui a AMI** (precedência mais alta)

   **Campo de API:** `overrides[].launchTemplateId` com tipos de instância de destino

   **Referência: [LaunchTemplateSpecification](https://docs.aws.amazon.com/batch/latest/APIReference/API_LaunchTemplateSpecification.html)**

   Os modelos de substituição têm como alvo tipos de instância específicos e fornecem um controle mais granular do que o modelo de execução padrão. Elas têm precedência sobre todas as outras especificações da AMI para combinar os tipos de instância.

   ```
   {
     "computeResources": {
       "launchTemplate": {
         "launchTemplateId": "lt-default",
         "overrides": [
           {
             "launchTemplateId": "lt-gpu-optimized",
             "targetInstanceTypes": ["p3.2xlarge", "g4dn.xlarge"]
           }
         ]
       }
     }
   }
   ```

1. **ID da imagem dos recursos de computação**

   **Campo da API:** `computeResources.imageId`

   **Referência: [CreateComputeEnvironment](https://docs.aws.amazon.com/batch/latest/APIReference/API_CreateComputeEnvironment.html)**

   Você pode especificar uma AMI diretamente no nível do ambiente computacional. Isso tem precedência sobre as substituições de configuração e os modelos de execução do EC2 (exceto os modelos de substituição).

   Em um ambiente computacional com várias configurações do EC2 (por exemplo, para `ECS_AL2023` e`ECS_AL2023_NVIDIA`), o ID da AMI especificado aqui é usado para todas as configurações do EC2.
**Importante**  
O `imageId` campo está obsoleto. Por favor, use `ec2Configuration.imageIdOverride` em vez disso.

   ```
   {
     "computeResources": {
       "imageId": "ami-12345678",
       "instanceTypes": ["m5.large", "m5.xlarge"]
     }
   }
   ```

1. **Substituição do ID da imagem de configuração do EC2**

   **Campo da API:** `computeResources.ec2Configuration[].imageIdOverride`

   **Referência: [Ec2Configuration](https://docs.aws.amazon.com/batch/latest/APIReference/API_Ec2Configuration.html)**

   A configuração do EC2 fornece substituições específicas do tipo de imagem. Essa configuração substitui a seleção padrão da AMI e o modelo de execução da AMI para o tipo de imagem especificado.

   ```
   {
     "computeResources": {
       "ec2Configuration": [
         {
           "imageType": "ECS_AL2",
           "imageIdOverride": "ami-87654321"
         }
       ]
     }
   }
   ```

1. **Inicie o modelo AMI**

   **Campo API:** `ImageId` no modelo de lançamento do Amazon EC2

   **Referência:** [Use os modelos de lançamento do Amazon EC2 com AWS Batch](launch-templates.md)

   Quando você especifica uma AMI no modelo de execução, ela tem precedência sobre a seleção padrão da AMI, mas é substituída por configurações de precedência mais altas.

   ```
   // EC2 Launch Template content
   {
     "LaunchTemplateName": "my-batch-template",
     "LaunchTemplateData": {
       "ImageId": "ami-12345678"
     }
   }
   ```

   Referenciado pelo modelo de AWS Batch lançamento:

   ```
   // Batch Launch Template content
   {
     "computeResources": {
       "launchTemplate": {
         "launchTemplateName": "my-batch-template",
         "version": "$Latest"
       }
     }
   }
   ```

1. **AWS AMI padrão** (precedência mais baixa)

   **Campo da API:** determinado por `computeResources.ec2Configuration[].imageType`

   **Referência: Ec2 Configuration** [ImageType](https://docs.aws.amazon.com/batch/latest/APIReference/API_Ec2Configuration.html)

   Quando nenhuma AMI personalizada é especificada, seleciona AWS Batch automaticamente a última AMI otimizada para Amazon Amazon ECS aprovada com base no tipo de imagem.
**nota**  
O `ec2Configuration` é opcional. AWS Batch selecionará uma AMI padrão apropriada se nenhuma `ec2Configuration` for especificada.

   ```
   {
     "computeResources": {
       "ec2Configuration": [
         {
           "imageType": "ECS_AL2023"
         }
       ]
     }
   }
   ```