

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.

# Options de mise en réseau des tâches Amazon ECS pour EC2
<a name="task-networking"></a>

Le comportement de mise en réseau des tâches Amazon ECS hébergées sur des instances Amazon EC2 dépend du *mode réseau* défini dans la définition de tâche. Nous vous recommandons d'utiliser le mode réseau `awsvpc`, à moins que vous n'ayez besoin d'utiliser un mode réseau différent.

Les modes réseau disponibles sont les suivants.


| Mode réseau | Conteneurs Linux sur EC2 | Conteneurs Windows sur EC2 | Description | 
| --- | --- | --- | --- | 
|  `awsvpc`  |  Oui  |  Oui  |  La tâche reçoit sa propre interface réseau Elastic (ENI) et une adresse IPv4 ou IPv6 privée principale. Cela confère à la tâche les mêmes propriétés de réseaux que les instances Amazon EC2.  | 
|  `bridge`  |  Oui  |  Non  |  La tâche utilise le réseau virtuel intégré de Docker sous Linux, qui s'exécute à l'intérieur de chaque instance Amazon EC2 hébergeant la tâche. Le réseau virtuel intégré sous Linux utilise le pilote réseau Docker `bridge`. Ceci est le mode réseau par défaut sous Linux si aucun mode réseau n'est spécifié dans la définition de la tâche.  | 
|  `host`  |  Oui  |  Non  |  La tâche utilise le réseau de l'hôte qui contourne le réseau virtuel intégré de Docker en mappant les ports de conteneur directement à l'ENI de l'instance Amazon EC2 qui héberge la tâche. Les mappages de ports dynamiques ne peuvent pas être utilisés dans ce mode réseau. Dans une définition de tâche qui utilise ce mode, un conteneur doit spécifier un numéro `hostPort` spécifique. Un numéro de port sur un hôte ne peut pas être utilisé par plusieurs tâches. Dans ce mode, vous ne pouvez pas exécuter plusieurs tâches de la même définition de tâche sur une instance Amazon EC2 unique.  | 
|  `none`  |  Oui  |  Non  |  La tâche n'a pas de connectivité réseau externe.  | 
|  `default`  |  Non  |  Oui  |  La tâche utilise le réseau virtuel intégré de Docker sous Windows, qui s'exécute à l'intérieur de chaque instance Amazon EC2 hébergeant la tâche. Le réseau virtuel intégré sous Windows utilise le pilote réseau Docker `nat`. Ceci est le mode réseau par défaut sous Windows si aucun mode réseau n'est spécifié dans la définition de la tâche.  | 

Pour plus d’informations sur la mise en réseau Docker sous Linux, consultez la section [Présentation de la mise en réseau](https://docs.docker.com/engine/network/) dans la *Documentation Docker*.

Pour plus d’informations sur la mise en réseau Docker sous Windows, consultez la section [Mise en réseau des conteneurs Windows](https://learn.microsoft.com/en-us/virtualization/windowscontainers/container-networking/architecture) dans la *Documentation relative aux conteneurs sous Windows* de Microsoft.

## Utilisation d'un VPC en mode -only IPv6
<a name="networking-ipv6-only"></a>

Dans une configuration IPv6 uniquement, vos tâches Amazon ECS communiquent exclusivement via IPv6. Pour configurer VPCs des sous-réseaux pour une configuration IPv6 uniquement, vous devez ajouter un bloc d'adresse IPv6 CIDR au VPC et créer de nouveaux sous-réseaux qui incluent uniquement un bloc d'adresse CIDR. IPv6 Pour plus d'informations, consultez [Ajouter un IPv6 support pour votre VPC](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-migrate-ipv6-add.html) et [Créer un sous-réseau](https://docs.aws.amazon.com/vpc/latest/userguide/create-subnets.html) dans le guide de l'utilisateur Amazon *VPC*.

Vous devez également mettre à jour les tables de routage avec IPv6 les cibles et configurer les groupes de sécurité avec des IPv6 règles. Pour plus d’informations, consultez les sections [Configuration des tables de routage](https://docs.aws.amazon.com/vpc/latest/userguide/VPC_Route_Tables.html) et [Configuration des règles des groupes de sécurité](https://docs.aws.amazon.com/vpc/latest/userguide/working-with-security-group-rules.html) dans le *Guide de l’utilisateur Amazon VPC*.

Les considérations suivantes s'appliquent :
+ Vous pouvez mettre à jour un service Amazon ECS IPv4 uniquement ou à double pile vers IPv6 une configuration uniquement en mettant à jour le service directement pour IPv6 utiliser des sous-réseaux uniquement ou en créant un service parallèle IPv6 uniquement et en utilisant les déploiements bleu-vert d'Amazon ECS pour transférer le trafic vers le nouveau service. Pour plus d’informations sur les déploiements bleu-vert Amazon ECS, consultez la section [blue/green Déploiements Amazon ECS](deployment-type-blue-green.md).
+ Un service Amazon ECS IPv6 réservé uniquement doit utiliser des équilibreurs de charge à double pile avec des groupes cibles. IPv6 Si vous procédez à la migration d’un service Amazon ECS existant qui repose sur un Application Load Balancer ou un Network Load Balancer, vous pouvez créer un équilibreur de charge à double pile et lui transférer le trafic depuis l’ancien équilibreur de charge, ou mettre à jour le type d’adresse IP de l’équilibreur de charge existant.

  Pour plus d’informations sur les Network Load Balancer, consultez les sections [Création d’un Network Load Balancer](https://docs.aws.amazon.com/elasticloadbalancing/latest/network/create-network-load-balancer.html) et [Mise à jour des types d’adresses IP pour votre Network Load Balancer](https://docs.aws.amazon.com/elasticloadbalancing/latest/network/load-balancer-ip-address-type.html) dans le *Guide de l’utilisateur des Network Load Balancer*. Pour plus d’informations sur les Application Load Balancer, consultez les sections [Création d’un Application Load Balancer](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/create-application-load-balancer.html) et [Mise à jour des types d’adresses IP pour votre Application Load Balancer](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/load-balancer-ip-address-type.html) dans le *Guide de l’utilisateur des Application Load Balancer*.
+ IPv6la configuration -only n'est pas prise en charge surWindows. Vous devez utiliser Linux optimisé pour Amazon ECS AMIs pour exécuter des tâches dans une configuration uniquement IPv6. Pour plus d'informations sur Linux optimisé pour Amazon ECS AMIs, consultez. [Linux optimisé pour Amazon ECS AMIs](ecs-optimized_AMI.md)
+ Lorsque vous lancez une instance de conteneur pour exécuter des tâches dans une configuration IPv6 uniquement, vous devez définir une IPv6 adresse principale pour l'instance à l'aide du paramètre `--enable-primary-ipv6` EC2.
**Note**  
Sans IPv6 adresse principale, les tâches exécutées sur l'instance de conteneur en mode réseau hôte ou pont ne pourront pas être enregistrées auprès des équilibreurs de charge ou auprès AWS Cloud Map de.

  Pour plus d’informations sur l’option `--enable-primary-ipv6` pour l’exécution d’instances Amazon EC2, consultez la section [run-instances](https://docs.aws.amazon.com/cli/latest/reference/ec2/run-instances.html) dans la *Référence des commandes AWS CLI *.

  Pour plus d'informations sur le lancement d'instances de conteneur à l'aide du AWS Management Console, consultez[Lancement d'une instance de conteneur Amazon ECS Linux](launch_container_instance.md).
+ Par défaut, l'agent de conteneur Amazon ECS essaiera de détecter la compatibilité de l'instance de conteneur pour une configuration réservée à une configuration IPv6 uniquement en examinant la valeur par défaut IPv4 et IPv6 les itinéraires de l'instance. Pour annuler ce comportement, vous pouvez définir le paramètre ` ECS_INSTANCE_IP_COMPATIBILITY` sur `ipv4` ou `ipv6` dans le fichier `/etc/ecs/ecs.config` de l’instance.
+ Les tâches doivent utiliser la version `1.99.1` ou une version ultérieure de l’agent de conteneur. Pour plus d’informations sur la vérification de la version de l’agent utilisée par votre instance et la mise à jour si nécessaire, consultez la section [Mise à jour de l'agent de conteneur Amazon ECS](ecs-agent-update.md).
+ Pour les tâches Amazon ECS dans une configuration IPv6 uniquement destinées à communiquer avec des points de IPv4 terminaison uniquement, vous pouvez configurer DNS64 et effectuer la traduction NAT64 d'adresses réseau de vers. IPv6 IPv4 Pour plus d'informations, consultez [DNS64 et](https://docs.aws.amazon.com/vpc/latest/userguide/nat-gateway-nat64-dns64.html) consultez NAT64 le guide de l'*utilisateur Amazon VPC*.
+ Les charges de travail Amazon ECS dans une configuration IPv6 réservée doivent utiliser les points de terminaison d'URI d'image à double pile Amazon ECR lors de l'extraction d'images depuis Amazon ECR. Pour plus d'informations, consultez [Getting started with making requests over IPv6](https://docs.aws.amazon.com/AmazonECR/latest/userguide/ecr-requests.html#ipv6-access-getting-started) dans le *guide de l'utilisateur d'Amazon Elastic Container Registry*.
**Note**  
Amazon ECR ne prend pas en charge les points de terminaison VPC à interface double pile que les tâches d'une configuration réservée peuvent utiliser. IPv6 Pour plus d'informations, consultez [Getting started with making requests over IPv6](https://docs.aws.amazon.com/AmazonECR/latest/userguide/ecr-requests.html#ipv6-access-getting-started) dans le *guide de l'utilisateur d'Amazon Elastic Container Registry*.
+ Amazon ECS Exec n'est pas pris en charge dans une IPv6 configuration uniquement.

### Régions AWS qui prennent en charge le mode IPv6 uniquement pour Amazon ECS
<a name="networking-ipv6-only-regions"></a>

Vous pouvez exécuter des tâches dans une configuration IPv6 réservée aux AWS régions suivantes dans lesquelles Amazon ECS est disponible :
+ USA Est (Ohio)
+ USA Est (Virginie du Nord)
+ USA Ouest (Californie du Nord)
+ USA Ouest (Oregon)
+ Afrique (Le Cap)
+ Asie-Pacifique (Hong Kong)
+ Asie-Pacifique (Hyderabad)
+ Asie-Pacifique (Jakarta)
+ Asie-Pacifique (Melbourne)
+ Asie-Pacifique (Mumbai)
+ Asie-Pacifique (Osaka)
+ Asia Pacific (Seoul)
+ Asie-Pacifique (Singapour)
+ Asie-Pacifique (Sydney)
+ Asie-Pacifique (Tokyo)
+ Canada (Centre)
+ Canada Ouest (Calgary)
+ Chine (Pékin)
+ China (Ningxia)
+ Europe (Francfort)
+ Europe (Londres)
+ Europe (Milan)
+ Europe (Paris)
+ Europe (Espagne)
+ Israël (Tel Aviv)
+ Middle East (Bahrain)
+ Moyen-Orient (EAU)
+ Amérique du Sud (São Paulo)
+ AWS GovCloud (USA Est)
+ AWS GovCloud (US-Ouest)

# Allocation d’une interface réseau à une tâche Amazon ECS
<a name="task-networking-awsvpc"></a>

Les fonctions de mise en réseau des tâches fournies par le mode réseau `awsvpc` attribuent aux tâches Amazon ECS les mêmes propriétés de mise en réseau que les instances Amazon EC2. L'utilisation du mode `awsvpc` réseau simplifie la mise en réseau des conteneurs, car vous avez un meilleur contrôle sur la façon dont vos applications communiquent entre elles et avec les autres services au sein de votre entreprise VPCs. Le mode réseau `awsvpc` fournit également une sécurité accrue pour vos conteneurs en vous permettant d’utiliser des groupes de sécurité et des outils de surveillance réseau à un niveau plus détaillé dans les tâches ECS. Vous pouvez également utiliser d’autres fonctionnalités réseau Amazon EC2, telles que les journaux de flux VPC, pour surveiller le trafic entrant et sortant de vos tâches. De plus, les conteneurs qui appartiennent à la même tâche peuvent communiquer via l'interface `localhost`.

L’interface réseau Elastic (ENI) est une fonctionnalité entièrement gérée d’Amazon ECS. Amazon ECS crée l'ENI et l'attache à l'instance Amazon EC2 hôte avec le groupe de sécurité spécifié. La tâche envoie et reçoit le trafic réseau sur l'ENI de la même manière que les instances Amazon EC2 avec leurs interfaces réseau principales. Une IPv4 adresse privée est attribuée par défaut à chaque tâche ENI. Si votre VPC est activé pour le mode double pile et que vous utilisez un sous-réseau avec un bloc IPv6 CIDR, la tâche ENI recevra également une adresse. IPv6 Chaque tâche ne peut avoir qu'une seule ENI. 

Ces ENI sont visibles dans la console Amazon EC2 de votre compte. Votre compte ne peut pas détacher ou modifier le ENIs. L'objectif est d'empêcher la suppression accidentelle de toute ENI associée à une tâche en cours d'exécution. Vous pouvez consulter les informations de pièce jointe ENI pour les tâches dans la console Amazon ECS ou lors du fonctionnement de l'[DescribeTasks](https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_DescribeTasks.html)API. Lorsque la tâche s'arrête ou si le service est réduit, l'ENI de la tâche est détachée et supprimée.

Lorsque vous avez besoin d’une densité ENI accrue, utilisez les paramètres du compte `awsvpcTrunking`. Amazon ECS crée et attache également une interface réseau « de jonction » pour votre instance de conteneur. Le réseau « de jonction » est entièrement géré par Amazon ECS. L'ENI « de jonction » est supprimée lorsque vous résiliez votre instance de conteneur ou lorsque vous annulez son enregistrement dans le cluster Amazon ECS. Pour plus d’informations sur le paramètre de compte `awsvpcTrunking`, consultez la section [Conditions préalables](container-instance-eni.md#eni-trunking-launching).

Vous le spécifiez `awsvpc` dans le paramètre `networkMode` de la définition de tâche. Pour de plus amples informations, veuillez consulter [Mode réseau](task_definition_parameters.md#network_mode). 

Ensuite, lorsque vous exécutez une tâche ou créez un service, utilisez le paramètre `networkConfiguration` qui comprend un ou plusieurs sous-réseaux dans lesquels placer vos tâches et un ou plusieurs groupes de sécurité à attacher à une ENI. Pour de plus amples informations, veuillez consulter [Configuration réseau](service_definition_parameters.md#sd-networkconfiguration). Les tâches sont placées sur des instances Amazon EC2 compatibles dans les mêmes zones de disponibilité que ces sous-réseaux et les groupes de sécurité spécifiés sont associés à l'ENI qui est allouée pour la tâche.

## Considérations relatives à Linux
<a name="linux"></a>

 Tenez compte des éléments suivants lorsque vous utilisez le système d'exploitation Linux.
+ Si vous utilisez une instance p5.48xlarge en mode `awsvpc`, vous ne pouvez pas exécuter plus d’une tâche sur l’instance.
+ Les tâches et les services qui utilisent le mode `awsvpc` réseau nécessitent le rôle lié au service Amazon ECS pour fournir à Amazon ECS les autorisations nécessaires pour passer des appels vers d'autres AWS services en votre nom. Ce rôle est généré automatiquement lorsque vous créez un cluster, ou si vous créez ou mettez à jour un service dans la AWS Management Console. Pour de plus amples informations, veuillez consulter [Utilisation des rôles liés à un service pour Amazon ECS](using-service-linked-roles.md). Vous pouvez également créer le rôle lié à un service à l'aide de la commande suivante : AWS CLI 

  ```
  aws iam [create-service-linked-role](https://docs.aws.amazon.com/cli/latest/reference/iam/create-service-linked-role.html) --aws-service-name ecs.amazonaws.com
  ```
+ Votre instance Linux Amazon EC2 Linux nécessite une version `1.15.0` ou une version ultérieure de l'agent de conteneur pour exécuter des tâches qui utilisent le mode réseau `awsvpc`. Si vous utilisez l'AMI Linux optimisée pour Amazon ECS, votre instance doit également au moins disposer de la version `1.15.0-4` du package `ecs-init`.
+ Amazon ECS remplit le nom d'hôte d'une tâche avec un nom d'hôte DNS (interne) fourni par Amazon lorsque les options `enableDnsHostnames` et `enableDnsSupport` sont toutes deux activées sur votre VPC. Si ces options ne sont pas activées, le nom d'hôte DNS de la tâche est un nom d'hôte aléatoire. Pour plus d'informations sur les paramètres DNS d'un VPC, veuillez consulter la rubrique [Utilisation de DNS avec votre VPC](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-dns.html) dans le *Guide de l'utilisateur Amazon VPC*.
+ Les tâches Amazon ECS qui utilisent le mode réseau `awsvpc` reçoivent chacune leur propre interface réseau Elastic (ENI), qui est attachée à l'instance Amazon EC2 qui l'héberge. Il existe un quota par défaut pour le nombre d'interfaces réseau qui peuvent être attachées à une instance Amazon EC2 Linux. L'interface réseau principale est considérée comme une seule pour ce quota. Par exemple, par défaut, une `c5.large` instance peut n'en avoir ENIs que trois qui peuvent être attachées. L'interface réseau principale de l'instance est considérée comme une interface réseau. Vous pouvez en attacher deux autres ENIs à l'instance. Dans la mesure où chaque tâche utilisant le mode réseau `awsvpc` nécessite une ENI, vous ne pouvez généralement exécuter que deux tâches sur ce type d'instance. Pour de plus amples informations sur les limites d’ENI par défaut pour chaque type d’instance, consultez la section [Adresses IP privées par interface réseau et par type d’instance](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-eni.html#AvailableIpPerENI) dans le *Guide de l’utilisateur Amazon EC2*.
+ Amazon ECS prend en charge le lancement d'instances Amazon EC2 Linux avec une augmentation de la densité ENI et utilisant des types d'instances pris en charge. Lorsque vous activez le paramètre de compte `awsvpcTrunking` et enregistrez les instances Linux Amazon EC2 à l'aide de ces types d'instance dans votre cluster, ces instances ont des quotas ENI plus élevés. L'utilisation de ces instances avec ce quota plus élevé signifie que vous pouvez placer davantage de tâches sur chaque instance Amazon EC2 Linux. Pour utiliser une densité ENI supérieure avec la fonctionnalité de jonction, vos instances Amazon EC2 doivent utiliser la version `1.28.1` ou ultérieure de l'agent de conteneur. Si vous utilisez une AMI optimisée pour Amazon ECS, votre instance doit également au moins disposer de la version `1.28.1-2` du package `ecs-init`. Pour en savoir plus sur l'acceptation du paramètre de compte `awsvpcTrunking`, consultez [Accès aux fonctionnalités d’Amazon ECS avec les paramètres du compte](ecs-account-settings.md). Pour en savoir plus sur la jonction ENI, consultez [Augmentation des interfaces réseau d’une instance de conteneur Amazon ECS Linux](container-instance-eni.md).
+ Lorsque vous hébergez des tâches utilisant le mode `awsvpc` réseau sur des instances Linux Amazon EC2, aucune adresse IP publique ENIs n'est attribuée à votre tâche. Pour accéder à Internet, les tâches doivent être lancées dans un sous-réseau privé configuré pour utiliser une passerelle NAT. Pour plus d’informations, veuillez consulter [NAT Gateways (Passerelles NAT)](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html) dans le *Guide de l’utilisateur Amazon VPC*. L'accès entrant au réseau doit se faire depuis un VPC avec l'adresse IP privée ou doit transiter par un équilibreur de charge au sein du VPC. Les tâches lancées dans les sous-réseaux publics n'ont pas accès à Internet.
+ Amazon ECS reconnaît uniquement les ENI qu'il attache à vos instances Amazon EC2 Linux. Si vous vous connectez manuellement ENIs à vos instances, Amazon ECS peut tenter d'ajouter une tâche à une instance qui ne dispose pas de suffisamment d'adaptateurs réseau. Cela peut entraîner l'expiration de la tâche et le passage à un état de déprovisionnement, puis à un état d'arrêt. Nous vous recommandons de ne pas vous connecter manuellement ENIs à vos instances.
+ Les instances Amazon EC2 Linux doivent être enregistrées avec la capacité `ecs.capability.task-eni` pour pouvoir faire l'objet d'un placement des tâches avec le mode réseau `awsvpc`. Les instances exécutant la version `1.15.0-4` ou une version ultérieure d'`ecs-init` sont automatiquement enregistrées avec cet attribut.
+ Les ENI créées et attachées à vos instances Amazon EC2 Linux ne peuvent pas être détachées manuellement ni modifiées par votre compte. L'objectif est d'empêcher la suppression accidentelle de toute ENI associée à une tâche en cours d'exécution. Pour libérer le ENIs pour une tâche, arrêtez la tâche.
+ Il existe une limite de 16 sous-réseaux et 5 groupes de sécurité pouvant être spécifiés dans `awsVpcConfiguration` lors de l'exécution d'une tâche ou de la création d'un service qui utilise le mode réseau `awsvpc`. Pour plus d'informations, consultez le [AwsVpcConfiguration](https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_AwsVpcConfiguration.html)manuel *Amazon Elastic Container Service API Reference*.
+ Lorsqu'une tâche est démarrée avec le mode réseau `awsvpc`, l'agent de conteneur Amazon ECS crée un conteneur `pause` supplémentaire pour chaque tâche avant de démarrer les conteneurs dans la définition de tâche. Il configure ensuite l'espace de noms réseau du `pause` conteneur en exécutant les plugins [amazon-ecs-cni-plugins ](https://github.com/aws/amazon-ecs-cni-plugins)CNI. L'agent démarre ensuite le reste des conteneurs dans la tâche afin qu'ils partagent la pile réseau du conteneur `pause`. Cela signifie que tous les conteneurs d'une tâche peuvent être adressés par les adresses IP de l'ENI et qu'ils peuvent communiquer entre eux via l'interface `localhost`.
+ Les services avec des tâches qui utilisent le mode réseau `awsvpc` prennent uniquement en charge Application Load Balancer et Network Load Balancer. Lorsque vous créez des groupes cibles pour ces services, vous devez choisir `ip` comme type de cible. N'utilisez pas  `instance`. En effet, les tâches qui utilisent le mode réseau `awsvpc` sont associées à une ENI, et non à une instance Amazon EC2 Linux. Pour de plus amples informations, veuillez consulter [Utilisation de l’équilibrage de charge pour répartir le trafic des services Amazon ECS](service-load-balancing.md).
+ Si votre VPC est mis à jour pour modifier le jeu d'options DHCP qu'il utilise, vous ne pouvez pas appliquer ces modifications aux tâches existantes. Commencez de nouvelles tâches en leur appliquant ces modifications, vérifiez qu'elles fonctionnent correctement, puis arrêtez les tâches existantes afin de modifier ces configurations réseau en toute sécurité.

## Considérations relatives à Windows
<a name="windows"></a>

 Voici quelques points à prendre en compte lorsque vous utilisez le système d'exploitation Windows :
+ Les instances de conteneur utilisant l'AMI Windows Server 2016 optimisée pour Amazon ECS ne peuvent pas héberger des tâches qui utilisent le mode réseau `awsvpc`. Si vous avez un cluster contenant Windows Server 2016 optimisé pour Amazon ECS AMIs et Windows AMIs prenant en charge le mode `awsvpc` réseau, les tâches utilisant le mode `awsvpc` réseau ne sont pas lancées sur les instances de Windows 2016 Server. Elles sont plutôt lancées sur des instances qui prennent en charge le mode réseau `awsvpc`.
+ Votre instance Windows Amazon EC2 nécessite une version `1.57.1` ou une version ultérieure de l'agent de conteneur pour utiliser CloudWatch les métriques pour les conteneurs Windows qui utilisent le mode `awsvpc` réseau.
+ Les tâches et les services qui utilisent le mode `awsvpc` réseau nécessitent le rôle lié au service Amazon ECS pour fournir à Amazon ECS les autorisations nécessaires pour passer des appels vers d'autres AWS services en votre nom. Ce rôle est généré automatiquement lorsque vous créez un cluster, ou si vous créez ou mettez à jour un service dans AWS Management Console. Pour de plus amples informations, veuillez consulter [Utilisation des rôles liés à un service pour Amazon ECS](using-service-linked-roles.md). Vous pouvez également créer le rôle lié à un service à l'aide de la commande suivante AWS CLI .

  ```
  aws iam [create-service-linked-role](https://docs.aws.amazon.com/cli/latest/reference/iam/create-service-linked-role.html) --aws-service-name ecs.amazonaws.com
  ```
+ Votre instance Amazon EC2 Windows nécessite une version `1.54.0` ou une version ultérieure de l'agent de conteneur pour exécuter des tâches qui utilisent le mode réseau `awsvpc`. Lorsque vous amorcez l'instance, vous devez configurer les options requises pour le mode réseau `awsvpc`. Pour de plus amples informations, veuillez consulter [Amorçage des instances de conteneurs Windows Amazon ECS pour transmettre des données](bootstrap_windows_container_instance.md).
+ Amazon ECS remplit le nom d'hôte d'une tâche avec un nom d'hôte DNS (interne) fourni par Amazon lorsque les options `enableDnsHostnames` et `enableDnsSupport` sont toutes deux activées sur votre VPC. Si ces options ne sont pas activées, le nom d'hôte DNS de la tâche est un nom d'hôte aléatoire. Pour plus d'informations sur les paramètres DNS d'un VPC, veuillez consulter la rubrique [Utilisation de DNS avec votre VPC](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-dns.html) dans le *Guide de l'utilisateur Amazon VPC*.
+ Les tâches Amazon ECS qui utilisent le mode réseau `awsvpc` reçoivent chacune leur propre interface réseau Elastic (ENI), qui est attachée à l'instance Amazon EC2 Windows qui l'héberge. Il existe un quota par défaut pour le nombre d'interfaces réseau pouvant être attachées à une instance Amazon EC2 Windows. L'interface réseau principale est considérée comme une seule pour ce quota. Par exemple, par défaut, une `c5.large` instance peut n'avoir que trois pièces ENIs associées. L'interface réseau principale de l'instance compte parmi celles-ci. Vous pouvez en attacher deux autres ENIs à l'instance. Dans la mesure où chaque tâche utilisant le mode réseau `awsvpc` nécessite une ENI, vous ne pouvez généralement exécuter que deux tâches sur ce type d'instance. Pour de plus amples informations sur les limites d’ENI par défaut pour chaque type d’instance, consultez la section [Adresses IP privées par interface réseau et par type d’instance](https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/using-eni.html#AvailableIpPerENI) dans le *Guide de l’utilisateur Amazon EC2*.
+ Lorsque vous hébergez des tâches utilisant le mode `awsvpc` réseau sur des instances Windows Amazon EC2, aucune adresse IP publique ENIs n'est attribuée à votre tâche. Pour accéder à Internet, lancez les tâches dans un sous-réseau privé configuré pour utiliser une passerelle NAT. Pour plus d’informations, veuillez consulter [NAT Gateways (Passerelles NAT)](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html) dans le *Guide de l’utilisateur Amazon VPC*. L'accès entrant au réseau doit se faire depuis le VPC avec l'adresse IP privée ou doit transiter par un équilibreur de charge au sein du VPC. Les tâches lancées dans les sous-réseaux publics n'ont pas accès à Internet.
+ Amazon ECS reconnaît uniquement les ENI qu'il a attachées à votre instance Windows Amazon EC2. Si vous vous connectez manuellement ENIs à vos instances, Amazon ECS peut tenter d'ajouter une tâche à une instance qui ne dispose pas de suffisamment d'adaptateurs réseau. Cela peut entraîner l'expiration de la tâche et le passage à un état de déprovisionnement, puis à un état d'arrêt. Nous vous recommandons de ne pas vous connecter manuellement ENIs à vos instances.
+ Les instances Amazon EC2 Windows doivent être enregistrées avec l'interface réseau `ecs.capability.task-eni` pour pouvoir faire l'objet d'un placement des tâches avec le mode réseau `awsvpc`. 
+  Vous ne pouvez pas modifier ou détacher manuellement les ENI créées et attachées à vos instances Windows Amazon EC2. Cela vous évite de supprimer accidentellement une ENI associée à une tâche en cours d'exécution. Pour libérer le ENIs pour une tâche, arrêtez la tâche.
+  Vous pouvez uniquement spécifier jusqu'à 16 sous-réseaux et 5 groupes de sécurité dans `awsVpcConfiguration`, lorsque vous exécutez une tâche ou créez un service qui utilise le mode réseau `awsvpc`. Pour plus d'informations, consultez le [AwsVpcConfiguration](https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_AwsVpcConfiguration.html)manuel *Amazon Elastic Container Service API Reference*.
+ Lorsqu'une tâche est démarrée avec le mode réseau `awsvpc`, l'agent de conteneur Amazon ECS crée un conteneur `pause` supplémentaire pour chaque tâche avant de démarrer les conteneurs dans la définition de tâche. Il configure ensuite l'espace de noms réseau du `pause` conteneur en exécutant les plugins [amazon-ecs-cni-plugins ](https://github.com/aws/amazon-ecs-cni-plugins)CNI. L'agent démarre ensuite le reste des conteneurs dans la tâche afin qu'ils partagent la pile réseau du conteneur `pause`. Cela signifie que tous les conteneurs d'une tâche peuvent être adressés par les adresses IP de l'ENI et qu'ils peuvent communiquer entre eux via l'interface `localhost`.
+ Les services avec des tâches qui utilisent le mode réseau `awsvpc` prennent uniquement en charge Application Load Balancer et Network Load Balancer. Lorsque vous créez des groupes cibles pour ces services, vous devez choisir le type de cible `ip`, et non `instance`. En effet, les tâches qui utilisent le mode réseau `awsvpc` sont associées à une ENI, et non à une instance Amazon EC2 Windows. Pour de plus amples informations, veuillez consulter [Utilisation de l’équilibrage de charge pour répartir le trafic des services Amazon ECS](service-load-balancing.md).
+ Si votre VPC est mis à jour pour modifier le jeu d'options DHCP qu'il utilise, vous ne pouvez pas appliquer ces modifications aux tâches existantes. Commencez de nouvelles tâches en leur appliquant ces modifications, vérifiez qu'elles fonctionnent correctement, puis arrêtez les tâches existantes afin de modifier ces configurations réseau en toute sécurité.
+ Les éléments suivants ne sont pas pris en charge lorsque vous utilisez le mode réseau `awsvpc` dans une configuration Windows EC2 :
  + Configuration à double pile
  + IPv6
  + Jonction ENI

## Utilisation d'un VPC en mode double pile
<a name="task-networking-vpc-dual-stack"></a>

Lorsque vous utilisez un VPC en mode double pile, vos tâches peuvent communiquer par ou IPv6 par IPv4 les deux. IPv4 et IPv6 les adresses sont indépendantes les unes des autres. Vous devez donc configurer le routage et la sécurité dans votre VPC séparément pour IPv4 et. IPv6 Pour plus d'informations sur la configuration de votre VPC pour le mode double pile, consultez la section [Migration vers le guide de l'utilisateur IPv6](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-migrate-ipv6.html) Amazon *VPC*.

Si vous avez configuré votre VPC avec une passerelle Internet ou une passerelle Internet sortante uniquement, vous pouvez utiliser votre VPC en mode double pile. Ainsi, les tâches auxquelles une IPv6 adresse est attribuée peuvent accéder à Internet via une passerelle Internet ou une passerelle Internet de sortie uniquement. Les passerelles NAT sont facultatives. Pour plus d'informations, veuillez consulter les rubriques [Passerelles Internet](https://docs.aws.amazon.com/vpc/latest/userguide/VPC_Internet_Gateway.html) et [Passerelle Internet en sortie uniquement](https://docs.aws.amazon.com/vpc/latest/userguide/egress-only-internet-gateway.html) dans le *Guide de l'utilisateur Amazon VPC*.

Une IPv6 adresse est attribuée aux tâches Amazon ECS si les conditions suivantes sont remplies :
+ L'instance Linux Amazon EC2 hébergeant la tâche utilise la version `1.45.0` ou version ultérieure de l'agent de conteneur. Pour plus d'informations sur la vérification de la version de l'agent utilisée par votre instance et la mise à jour si nécessaire, veuillez consulter [Mise à jour de l'agent de conteneur Amazon ECS](ecs-agent-update.md).
+ Le paramètre de compte `dualStackIPv6` est activé. Pour de plus amples informations, veuillez consulter [Accès aux fonctionnalités d’Amazon ECS avec les paramètres du compte](ecs-account-settings.md).
+ Votre tâche utilise le mode réseau `awsvpc`.
+ Votre VPC et votre sous-réseau sont configurés pour. IPv6 La configuration inclut les interfaces réseau créées dans le sous-réseau spécifié. Pour plus d'informations sur la configuration de votre VPC pour le mode double pile, consultez la section [Migration vers IPv6](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-migrate-ipv6.html) et [modification de l'attribut d'IPv6 adressage de votre sous-réseau dans le guide de l'utilisateur](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-ip-addressing.html#subnet-ipv6) *Amazon* VPC.

# Mappage des ports de conteneurs Amazon ECS vers l’interface réseau de l’instance EC2
<a name="networking-networkmode-host"></a>

Le mode réseau `host` est uniquement pris en charge pour les tâches Amazon ECS hébergées sur des instances Amazon EC2. Il n'est pas pris en charge lors de l'utilisation d'Amazon ECS sur Fargate.

Le mode réseau `host` est le mode réseau le plus basique pris en charge dans Amazon ECS. En mode hôte, la mise en réseau du conteneur est liée directement à l'hôte sous-jacent qui exécute le conteneur.

![\[Schéma illustrant l'architecture d'un réseau avec des conteneurs utilisant le mode réseau hôte.\]](http://docs.aws.amazon.com/fr_fr/AmazonECS/latest/developerguide/images/networkmode-host.png)


Supposons que vous exécutez un conteneur Node.js avec une application Express qui écoute sur un port `3000` similaire à celui illustré dans le schéma précédent. Lorsque le mode réseau `host` est utilisé, le conteneur reçoit le trafic sur le port 3 000 en utilisant l'adresse IP de l'instance Amazon EC2 de l'hôte sous-jacent. Nous vous recommandons de ne pas utiliser ce mode.

L'utilisation de ce mode réseau présente des inconvénients importants. Vous ne pouvez exécuter qu'une seule instanciation d'une tâche sur chaque hôte. Cela est dû au fait que seule la première tâche peut se lier au port requis sur l'instance Amazon EC2. Il est également impossible de remapper un port de conteneur lorsqu'il utilise le mode réseau `host`. Par exemple, si une application doit écouter un numéro de port spécifique, vous ne pouvez pas remapper le numéro de port directement. Vous devez plutôt gérer les conflits de ports en modifiant la configuration de l'application.

L'utilisation du mode réseau `host` a également des implications en termes de sécurité. Ce mode permet aux conteneurs de se faire passer pour l'hôte et de se connecter à des services réseau privés en boucle sur l'hôte.

# Utilisation du réseau virtuel de Docker pour les tâches Amazon ECS Linux
<a name="networking-networkmode-bridge"></a>

Le mode réseau `bridge` est uniquement pris en charge pour les tâches Amazon ECS hébergées sur des instances Amazon EC2.

Avec le mode `bridge`, vous utilisez un pont réseau virtuel pour créer une couche entre l'hôte et la mise en réseau du conteneur. De cette façon, vous pouvez créer des mappages de ports qui remappent un port hôte à un port de conteneur. Les mappages peuvent être statiques ou dynamiques.

![\[Schéma illustrant l'architecture d'un réseau utilisant le mode réseau pont avec mappage statique des ports.\]](http://docs.aws.amazon.com/fr_fr/AmazonECS/latest/developerguide/images/networkmode-bridge.png)


Avec un mappage statique des ports, vous pouvez définir explicitement le port hôte que vous souhaitez mapper à un port de conteneur. À l'aide de l'exemple ci-dessus, le port `80` de l'hôte est mappé au port `3000` du conteneur. Pour communiquer avec l'application conteneurisée, vous envoyez le trafic au port `80` vers l'adresse IP de l'instance Amazon EC2. Du point de vue de l'application conteneurisée, le trafic entrant est visible sur le port `3000`.

Si vous souhaitez uniquement modifier le port de trafic, les mappages statiques de ports conviennent. Cependant, cela présente toujours le même inconvénient que l'utilisation du mode réseau `host`. Vous ne pouvez exécuter qu'une seule instanciation d'une tâche sur chaque hôte. Cela est dû au fait qu'un mappage statique de port ne permet de mapper qu'un seul conteneur sur le port 80.

Pour résoudre ce problème, pensez à utiliser le mode réseau `bridge` avec un mappage dynamique des ports, comme indiqué dans le schéma suivant.

![\[Schéma illustrant l'architecture d'un réseau utilisant le mode réseau pont avec mappage dynamique des ports.\]](http://docs.aws.amazon.com/fr_fr/AmazonECS/latest/developerguide/images/networkmode-bridge-dynamic.png)


En ne spécifiant pas de port hôte dans le mappage des ports, vous pouvez demander à Docker de choisir un port aléatoire inutilisé dans la plage de ports éphémères et de l’attribuer comme port hôte public pour le conteneur. Par exemple, l'application Node.js qui écoute sur le port `3000` du conteneur peut se voir attribuer un numéro de port aléatoire élevé, comme `47760`, sur l'hôte Amazon EC2. Cela signifie que vous pouvez exécuter plusieurs copies de ce conteneur sur l'hôte. De plus, chaque conteneur peut se voir attribuer son propre port sur l'hôte. Chaque copie du conteneur reçoit du trafic au port `3000`. Toutefois, les clients qui envoient du trafic vers ces conteneurs utilisent les ports hôtes assignés de manière aléatoire.

Amazon ECS vous aide à suivre les ports assignés de manière aléatoire pour chaque tâche. Pour ce faire, il met automatiquement à jour les groupes cibles de l'équilibreur de charge et la découverte des AWS Cloud Map services afin d'obtenir la liste des adresses IP et des ports des tâches. Cela facilite l'utilisation des services fonctionnant en mode `bridge` utilisant des ports dynamiques.

Cependant, l'un des inconvénients de l'utilisation du mode réseau `bridge` est qu'il est difficile de verrouiller les communications de service à service. Comme les services peuvent être affectés à n'importe quel port aléatoire et inutilisé, il est nécessaire d'ouvrir de larges plages de ports entre les hôtes. Cependant, il n'est pas facile de créer des règles spécifiques afin qu'un service particulier ne puisse communiquer qu'avec un autre service spécifique. Les services ne disposent d'aucun port spécifique à utiliser pour les règles de mise en réseau des groupes de sécurité.

## Configuration du mode réseau en pont pour les charges IPv6 de travail uniquement
<a name="networking-networkmode-bridge-ipv6-only"></a>

Pour configurer `bridge` le mode de communication IPv6, vous devez mettre à jour les paramètres du Docker démon. Mettez à jour `/etc/docker/daemon.json` les éléments suivants :

```
{
  "ipv6": true,
  "fixed-cidr-v6": "2001:db8:1::/64",
  "ip6tables": true,
  "experimental": true
}
```

Après avoir mis à jour les paramètres du démon Docker, vous devez le redémarrer.

**Note**  
Lorsque vous mettez à jour et redémarrez le daemonDocker, le IPv6 transfert est activé sur l'instance, ce qui peut entraîner la perte des routes par défaut sur les instances qui utilisent une AMI Amazon Linux 2. Pour éviter cela, utilisez la commande suivante pour ajouter une route par défaut via la IPv6 passerelle du sous-réseau.  

```
ip route add default via FE80:EC2::1 dev eth0 metric 100
```