

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Tutoriel : Création d'un environnement informatique géré à l'aide d'Amazon ECS Managed Instances
<a name="create-compute-environment-ecs-managed-instances"></a>

Ce didacticiel explique comment créer un environnement AWS Batch informatique qui utilise les instances gérées Amazon ECS. Amazon ECS gère les instances Amazon EC2 en votre nom : vous spécifiez la capacité maximale et les contraintes d'instance facultatives, et Amazon ECS gère le provisionnement, la mise à l'échelle et la résiliation.

## Conditions préalables
<a name="create-ce-ecs-managed-instances-prerequisites"></a>

Avant de créer un environnement de calcul Amazon ECS Managed Instances, vous devez disposer des éléments suivants :
+ Un rôle d'infrastructure ** Amazon ECS ** : rôle IAM assumé par Amazon ECS pour gérer les instances Amazon EC2 en votre nom. Le rôle doit avoir une politique de confiance pour`ecs.amazonaws.com`. Pour plus d'informations, consultez la section Rôle IAM de l'infrastructure [ Amazon ECS ](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/infrastructure-iam-roles.html) dans le guide * du développeur * Amazon Elastic Container Service.
+ Un profil d'instance ** Amazon EC2 ** : un profil d'instance qui utilise la politique `AmazonECSInstanceRolePolicyForManagedInstances` gérée. La politique de confiance doit `ec2.amazonaws.com` permettre d'assumer le rôle.
+ Votre responsable IAM doit disposer de `iam:PassRole` l'autorisation pour le rôle d'infrastructure assorti de cette condition. `iam:PassedToService: ecs.amazonaws.com`
+ Un VPC dont les sous-réseaux disposent d'un accès Internet sortant (attribution d'adresse IP publique ou passerelle NAT).

## Création d'un environnement de calcul Amazon ECS Managed Instances (console)
<a name="create-ce-ecs-managed-instances-console"></a>

1. Ouvrez la AWS Batch console à l'adresse [ https://console.aws.amazon.com/batch/](https://console.aws.amazon.com/batch/).

1. Dans la barre de navigation, choisissez l'option Région AWS à utiliser.

1. Dans le volet de navigation de gauche, sélectionnez ** Environments**.

1. Choisissez ** Créer un environnement**, puis choisissez ** Créer un environnement informatique**.

1. Pour le type d'environnement de ** calcul**, choisissez ** ECS Managed Instances**.

1. Dans le ** champ Nom de l'environnement de calcul**, entrez un nom unique. Le nom peut comporter jusqu'à 128 caractères et peut contenir des lettres majuscules et minuscules, des chiffres, des traits d'union (-) et des traits de soulignement (\_).

1. Pour ** Maximum de processeurs virtuels**, entrez le nombre maximum de processeurs virtuels que l'environnement de calcul peut atteindre.

1. Pour Rôle ** d'infrastructure**, choisissez le rôle d'infrastructure Amazon ECS que vous avez créé comme condition préalable.

1. Pour le profil d'**instance**, choisissez le profil d'instance Amazon EC2 que vous avez créé comme condition préalable.

1. Dans la ** section ** Réseau :

   1. Pour ** VPC**, choisissez le VPC sur lequel les instances seront lancées.

   1. Pour ** Sous-réseaux**, choisissez un ou plusieurs sous-réseaux. Les sous-réseaux doivent disposer d'un accès Internet sortant.

   1. Pour les groupes ** de sécurité**, choisissez un ou plusieurs groupes de sécurité à associer aux instances.

1. (Facultatif) Pour le type ** de capacité**, choisissez ** Spot pour utiliser ** les instances ponctuelles afin de réaliser des économies sur les charges de travail tolérantes aux pannes. La valeur par défaut est **On-Demand**.

1. (Facultatif) Pour les types d'instance ** autorisés**, spécifiez les types d'instance qu'Amazon ECS peut lancer. Si vous n'en spécifiez aucun, tous les types d'instances disponibles sont éligibles.

1. Choisissez ** Créer un environnement de calcul**.

## Création d'un environnement de calcul Amazon ECS Managed Instances (AWS CLI)
<a name="create-ce-ecs-managed-instances-cli"></a>

Utilisez la `create-compute-environment` commande pour créer un environnement de calcul Amazon ECS Managed Instances.

### Exemple de base
<a name="create-ce-ecs-managed-instances-cli-basic"></a>

L'exemple suivant crée un environnement informatique avec la configuration minimale requise. Amazon ECS peut utiliser n'importe quel type d'instance disponible.

```
$ aws batch create-compute-environment \
    --compute-environment-name {{my-managed-instances-ce}} \
    --type MANAGED \
    --state ENABLED \
    --compute-resources '{
      "type": "ECS_MANAGED_INSTANCES",
      "maxvCpus": 256,
      "managedInstancesProvider": {
        "infrastructureRoleArn": "arn:aws:iam::{{123456789012}}:role/{{ecsInfrastructureRole}}",
        "instanceLaunchTemplate": {
          "ec2InstanceProfileArn": "arn:aws:iam::{{123456789012}}:instance-profile/{{ecsInstanceProfile}}",
          "networkConfiguration": {
            "subnets": ["{{subnet-abcde012}}", "{{subnet-bcde012a}}"],
            "securityGroups": ["{{sg-abcde012}}"]
          }
        }
      }
    }'
```

### Spot avec des types d'instances spécifiques
<a name="create-ce-ecs-managed-instances-cli-spot"></a>

L'exemple suivant crée un environnement de Spot-backed calcul limité à des types d'instances spécifiques.

```
$ aws batch create-compute-environment \
    --compute-environment-name {{my-spot-managed-instances-ce}} \
    --type MANAGED \
    --state ENABLED \
    --compute-resources '{
      "type": "ECS_MANAGED_INSTANCES",
      "maxvCpus": 1000,
      "managedInstancesProvider": {
        "infrastructureRoleArn": "arn:aws:iam::{{123456789012}}:role/{{ecsInfrastructureRole}}",
        "instanceLaunchTemplate": {
          "ec2InstanceProfileArn": "arn:aws:iam::{{123456789012}}:instance-profile/{{ecsInstanceProfile}}",
          "networkConfiguration": {
            "subnets": ["{{subnet-abcde012}}", "{{subnet-bcde012a}}"],
            "securityGroups": ["{{sg-abcde012}}"]
          },
          "instanceRequirements": {
            "allowedInstanceTypes": ["m5.large", "m5.xlarge", "m6i.large", "m6i.xlarge"]
          },
          "capacityOptionType": "SPOT"
        }
      }
    }'
```

Sortie :

```
{
    "computeEnvironmentName": "my-spot-managed-instances-ce",
    "computeEnvironmentArn": "arn:aws:batch:us-east-1:123456789012:compute-environment/my-spot-managed-instances-ce"
}
```

### Avec réservations de capacité
<a name="create-ce-ecs-managed-instances-cli-reservations"></a>

L'exemple suivant crée un environnement de calcul qui cible les réservations On-Demand de capacité pour une capacité prévisible.

```
$ aws batch create-compute-environment \
    --compute-environment-name {{my-reserved-managed-instances-ce}} \
    --type MANAGED \
    --state ENABLED \
    --compute-resources '{
      "type": "ECS_MANAGED_INSTANCES",
      "maxvCpus": 512,
      "managedInstancesProvider": {
        "infrastructureRoleArn": "arn:aws:iam::{{123456789012}}:role/{{ecsInfrastructureRole}}",
        "instanceLaunchTemplate": {
          "ec2InstanceProfileArn": "arn:aws:iam::{{123456789012}}:instance-profile/{{ecsInstanceProfile}}",
          "networkConfiguration": {
            "subnets": ["{{subnet-abcde012}}", "{{subnet-bcde012a}}"],
            "securityGroups": ["{{sg-abcde012}}"]
          },
          "instanceRequirements": {
            "allowedInstanceTypes": ["m5.xlarge", "m5.2xlarge"]
          },
          "capacityReservations": {
            "reservationGroupArn": "arn:aws:ec2:{{us-east-1}}:{{123456789012}}:capacity-reservation-group/{{my-reservation-group}}",
            "reservationPreference": "RESERVATIONS_FIRST"
          }
        }
      }
    }'
```

## Étapes suivantes
<a name="create-ce-ecs-managed-instances-next-steps"></a>

Après avoir créé votre environnement informatique, procédez comme suit pour exécuter les tâches :

1. Créez une file d'attente de tâches et associez-y votre environnement de calcul Amazon ECS Managed Instances. Pour de plus amples informations, veuillez consulter [Créer une file d'attente pour les tâches](create-job-queue.md).

1. Créez une définition de tâche à l'aide de « `platformCapabilities` set to » `MANAGED_INSTANCES` et « using `ecsProperties` ». Pour de plus amples informations, veuillez consulter [Définitions des tâches sur les instances gérées Amazon ECS](ecs-managed-instances-job-definitions.md).

1. Soumettez une tâche à la file d'attente des tâches. Pour de plus amples informations, veuillez consulter [Tutoriel : soumettre une offre d'emploi](submit_job.md).