

# Recuperação de metadados da AMI do Linux otimizada para o Amazon ECS
<a name="retrieve-ecs-optimized_AMI"></a>

Você pode recuperar programaticamente os metadados da AMI otimizada para o Amazon ECS. Os metadados incluem o nome da AMI, a versão do agente de contêiner do Amazon ECS e a versão de runtime do Amazon ECS, que inclui a versão do Docker. 

Ao criar um cluster usando o console, o Amazon ECS cria um modelo de inicialização para as instâncias com a AMI mais recente associada ao sistema operacional selecionado. 

Quando você usa o CloudFormation para criar um cluster, o parâmetro SSM faz parte do modelo de inicialização do Amazon EC2 para instâncias do grupo do Auto Scaling. Você pode configurar o modelo para usar um parâmetro dinâmico do Systems Manager para determinar qual AMI otimizada do Amazon ECS deve ser implantada. Esse parâmetro garante que toda vez que você implantar a pilha, ele verificará se há uma atualização disponível que precise ser aplicada às instâncias do EC2. Para obter um exemplo de como usar o parâmetro do Systems Manager, consulte [Criar um cluster Amazon ECS com a AMI do Amazon Linux 2023 otimizada para o Amazon ECS](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-cluster.html#aws-resource-ecs-cluster--examples--Create_an_cluster_with_the_Amazon_Linux_2023_ECS-Optimized-AMI) no *Guia do usuário do AWS CloudFormation*.

O ID da AMI, o nome da imagem, o sistema operacional, a versão do agente de contêiner, o nome da imagem da fonte e a versão do runtime para cada variante das AMIs otimizadas para Amazon ECS podem ser recuperados de maneira programática, consultando a API da Systems Manager Parameter Store. Para obter mais informações sobre a API do Systems Manager Parameter Store, consulte [GetParameters](https://docs.aws.amazon.com/systems-manager/latest/APIReference/API_GetParameters.html) e [GetParametersByPath](https://docs.aws.amazon.com/systems-manager/latest/APIReference/API_GetParametersByPath.html).

**nota**  
O usuário administrador precisa ter as seguintes permissões do IAM para recuperar os metadados da AMI otimizada para Amazon ECS. Essas permissões foram adicionadas à política `AmazonECS_FullAccess` do IAM.  
ssm:GetParameters
ssm:GetParameter
ssm:GetParametersByPath

## Formato de parâmetro do Systems Manager Parameter Store
<a name="ecs-optimized-ami-parameter-format"></a>

Veja a seguir o formato do nome do parâmetro para cada variante da AMI otimizada para Amazon ECS.

**AMIs do Linux otimizadas para Amazon ECS**
+ Metadados da AMI do Amazon Linux 2023:

  ```
  /aws/service/ecs/optimized-ami/amazon-linux-2023/<version>
  ```
+ Metadados da AMI do Amazon Linux 2023 (arm64):

  ```
  /aws/service/ecs/optimized-ami/amazon-linux-2023/arm64/<version>
  ```
+ Metadados da AMI do Amazon Linux 2023 (Neuron):

  ```
  /aws/service/ecs/optimized-ami/amazon-linux-2023/neuron/<version>
  ```
+ Metadados da AMI do Amazon Linux 2023 (GPU):

  ```
  /aws/service/ecs/optimized-ami/amazon-linux-2023/gpu/<version>
  ```

  Metadados da AMI do Amazon Linux 2:

  ```
  /aws/service/ecs/optimized-ami/amazon-linux-2/<version>
  ```
+ Metadados da AMI do Amazon Linux 2 kernel 5.10:

  ```
  /aws/service/ecs/optimized-ami/amazon-linux-2/kernel-5.10/<version>
  ```
+ Metadados da AMI do Amazon Linux 2 (arm64):

  ```
  /aws/service/ecs/optimized-ami/amazon-linux-2/arm64/<version>
  ```
+ Metadados da AMI do Amazon Linux 2 kernel 5.10 (arm64):

  ```
  /aws/service/ecs/optimized-ami/amazon-linux-2/kernel-5.10/arm64/<version>
  ```
+ Metadados da AMI do kernel 5.10 otimizada para GPU do Amazon ECS:

  ```
  /aws/service/ecs/optimized-ami/amazon-linux-2/kernel-5.10/gpu/<version>
  ```
+ Metadados da AMI do Amazon Linux 2 (GPU):

  ```
  /aws/service/ecs/optimized-ami/amazon-linux-2/gpu/<version>
  ```
+ Metadados de AMI do kernel 5.10 do Amazon Linux 2 (Neuron) otimizada para o Amazon ECS:

  ```
  /aws/service/ecs/optimized-ami/amazon-linux-2/kernel-5.10/inf/<version>
  ```
+ Metadados da AMI do Amazon Linux 2 (Neuron):

  ```
  /aws/service/ecs/optimized-ami/amazon-linux-2/inf/<version>
  ```

O formato de nome de parâmetro a seguir recupera o ID de imagem da versão recomendada mais recente da AMI do Amazon Linux 2 otimizada para Amazon ECS usando o subparâmetro `image_id`.

```
/aws/service/ecs/optimized-ami/amazon-linux-2/recommended/image_id
```

O seguinte formato de nome de parâmetro recupera os metadados de uma versão específica da AMI otimizada para Amazon ECS especificando o nome da AMI.
+ Metadados da AMI do Amazon Linux 2 otimizada para Amazon ECS:

  ```
  /aws/service/ecs/optimized-ami/amazon-linux-2/amzn2-ami-ecs-hvm-2.0.20181112-x86_64-ebs
  ```

**nota**  
Todas as versões da AMI do Amazon Linux 2 otimizada para Amazon ECS estão disponíveis para recuperação. Somente versões `amzn-ami-2017.09.l-amazon-ecs-optimized` e posteriores da AMI otimizada para Amazon ECS (Linux) podem ser recuperadas. 

## Exemplos
<a name="ecs-optimized-ami-parameter-examples"></a>

Os exemplos a seguir mostram maneiras como você pode recuperar os metadados de cada variante da AMI otimizada para Amazon ECS.

### Recuperar os metadados da AMI otimizada para Amazon ECS recomendada mais recente
<a name="ecs-optimized-ami-parameter-examples-1"></a>

É possível recuperar a AMI otimizada para Amazon ECS recomendada mais recente por meio da AWS CLI, usando os comandos da AWS CLI a seguir.

**AMIs do Linux otimizadas para Amazon ECS**
+ **Para as AMIs do Amazon Linux 2023 otimizadas para Amazon ECS:**

  ```
  aws ssm get-parameters --names /aws/service/ecs/optimized-ami/amazon-linux-2023/recommended --region us-east-1
  ```
+ **Para as AMIs do Amazon Linux 2023 (arm64) otimizadas para Amazon ECS:**

  ```
  aws ssm get-parameters --names /aws/service/ecs/optimized-ami/amazon-linux-2023/arm64/recommended --region us-east-1
  ```
+ **Para as AMIs do Amazon Linux 2023 (Neuron) otimizadas para o Amazon ECS:**

  ```
  aws ssm get-parameters --names /aws/service/ecs/optimized-ami/amazon-linux-2023/neuron/recommended --region us-east-1
  ```
+ **Para as AMIs de GPU Amazon Linux 2023 otimizadas para Amazon ECS:**

  ```
  aws ssm get-parameters --names /aws/service/ecs/optimized-ami/amazon-linux-2023/gpu/recommended --region us-east-1
  ```
+ **Para as AMIs do Amazon Linux 2 kernel 5.10 otimizadas para Amazon ECS:**

  ```
  aws ssm get-parameters --names /aws/service/ecs/optimized-ami/amazon-linux-2/kernel-5.10/recommended --region us-east-1
  ```
+ **Para as AMIs do Amazon Linux 2 otimizadas para Amazon ECS:**

  ```
  aws ssm get-parameters --names /aws/service/ecs/optimized-ami/amazon-linux-2/recommended --region us-east-1
  ```
+ **Para as AMIs do Amazon Linux 2 kernel 5.10 (arm64) otimizadas para Amazon ECS:**

  ```
  aws ssm get-parameters --names /aws/service/ecs/optimized-ami/amazon-linux-2/kernel-5.10/arm64/recommended --region us-east-1
  ```
+ **Para as AMIs do Amazon Linux 2 (arm64) otimizadas para Amazon ECS:**

  ```
  aws ssm get-parameters --names /aws/service/ecs/optimized-ami/amazon-linux-2/arm64/recommended --region us-east-1
  ```
+ **Para as AMIs do kernel 5.10 otimizadas para GPU do Amazon ECS:**

  ```
  aws ssm get-parameters --names /aws/service/ecs/optimized-ami/amazon-linux-2/kernel-5.10/gpu/recommended --region us-east-1
  ```
+ **Para as AMIs otimizadas para GPU do Amazon ECS:**

  ```
  aws ssm get-parameters --names /aws/service/ecs/optimized-ami/amazon-linux-2/gpu/recommended --region us-east-1
  ```
+ **Para as AMIs do kernel 5.10 do Amazon Linux 2 (Neuron) otimizadas para o Amazon ECS:**

  ```
  aws ssm get-parameters --names /aws/service/ecs/optimized-ami/amazon-linux-2/kernel-5.10/inf/recommended --region us-east-1
  ```
+ **Para as AMIs do Amazon Linux 2 (Neuron) otimizadas para Amazon ECS:**

  ```
  aws ssm get-parameters --names /aws/service/ecs/optimized-ami/amazon-linux-2/inf/recommended --region us-east-1
  ```

### Recuperar o ID de imagem da AMI do Amazon Linux 2023 otimizada para Amazon ECS mais recente e recomendada
<a name="ecs-optimized-ami-parameter-examples-6"></a>

É possível recuperar o ID de imagem da AMI do Amazon Linux 2023 otimizada para Amazon ECS mais recente e recomendada usando o subparâmetro `image_id`.

```
aws ssm get-parameters --names /aws/service/ecs/optimized-ami/amazon-linux-2023/recommended/image_id --region us-east-1
```

Para recuperar o valor `image_id` somente, você pode consultar o valor de parâmetro específico; por exemplo:

```
aws ssm get-parameters --names /aws/service/ecs/optimized-ami/amazon-linux-2023/recommended/image_id --region us-east-1 --query "Parameters[0].Value"
```

### Recuperar os metadados de uma versão específica da AMI do Amazon Linux 2 otimizada para Amazon ECS
<a name="ecs-optimized-ami-parameter-examples-2"></a>

Recupere os metadados de uma versão específica da AMI do Amazon Linux otimizada para Amazon ECS por meio da AWS CLI, usando o seguinte comando da AWS CLI. Substitua o nome da AMI pelo nome da AMI do Amazon Linux otimizada para Amazon ECS a ser recuperado. 

```
aws ssm get-parameters --names /aws/service/ecs/optimized-ami/amazon-linux-2/amzn2-ami-ecs-hvm-2.0.20200928-x86_64-ebs --region us-east-1
```

### Recuperação de metadados da AMI do kernel 5.10 do Amazon Linux 2 otimizada para o Amazon ECS usando a API GetParametersByPath do Systems Manager
<a name="ecs-optimized-ami-parameter-examples-3"></a>

Recupere os metadados da AMI do Amazon Linux 2 otimizada para Amazon ECS com a API GetParametersByPath do Systems Manager, usando a AWS CLI com o seguinte comando.

```
aws ssm get-parameters-by-path --path /aws/service/ecs/optimized-ami/amazon-linux-2/kernel-5.10/ --region us-east-1
```

### Recuperar o ID de imagem da AMI do Amazon Linux 2 com kernel 5.10 otimizada para o Amazon ECS mais recente e recomendada
<a name="ecs-optimized-ami-parameter-examples-4"></a>

É possível recuperar o ID de imagem do ID de AMI do kernel 5.10 do Amazon Linux 2 otimizado para o Amazon ECS recomendado mais recente usando o subparâmetro `image_id`.

```
aws ssm get-parameters --names /aws/service/ecs/optimized-ami/amazon-linux-2/kernel-5.10/recommended/image_id --region us-east-1
```

Para recuperar o valor `image_id` somente, você pode consultar o valor de parâmetro específico; por exemplo:

```
aws ssm get-parameters --names /aws/service/ecs/optimized-ami/amazon-linux-2/recommended/image_id --region us-east-1 --query "Parameters[0].Value"
```

### Usar a mais recente e recomendada AMI otimizada para Amazon ECS em um modelo do CloudFormation
<a name="ecs-optimized-ami-parameter-examples-5"></a>

É possível referenciar a mais recente e recomendada AMI otimizada para Amazon ECS em um modelo do CloudFormation fazendo referência ao nome do armazenamento de parâmetros do Systems Manager.

**Exemplo do Linux**

```
Parameters:kernel-5.10
  LatestECSOptimizedAMI:
    Description: AMI ID
    Type: AWS::SSM::Parameter::Value<AWS::EC2::Image::Id>
    Default: /aws/service/ecs/optimized-ami/amazon-linux-2/kernel-5.10/recommended/image_id
```