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.
Utilisation d’un Network Load Balancer pour Amazon ECS
Un Network Load Balancer prend des décisions de routage au niveau de la couche de transport (TCP/SSL). Il peut traiter des millions de demandes par seconde. Lorsque l'équilibreur de charge reçoit une connexion, il sélectionne une cible depuis le groupe cible pour la règle par défaut à l'aide d'un algorithme de routage du hachage de flux. Il tente d'ouvrir une connexion TCP à la cible sélectionnée sur le port spécifié dans la configuration de l'écouteur. Il transmet la demande sans modifier les en-têtes. Les équilibreurs de charge Network Load Balancer prennent en charge le mappage de port hôte dynamique. Par exemple, si la définition de conteneur de la tâche spécifie le port 80 pour un port de conteneur NGINX et le port 0 pour le port hôte, le port hôte est choisi dynamiquement à partir de la plage de ports éphémères de l'instance de conteneur (par exemple, 32768 à 61000 sur la dernière AMI optimisée pour Amazon ECS). Lorsque la tâche est lancée, le conteneur NGINX est enregistré dans l'équilibreur de charge Network Load Balancer en tant que combinaison d'ID d'instance et de port, et le trafic est réparti vers l'ID d'instance et le port correspondant à ce conteneur. Ce mappage dynamique vous permet d'exécuter plusieurs tâches à partir d'un seul service sur la même instance de conteneur. Pour plus d'informations, veuillez consulter le Guide de l'utilisateur pour les Network Load Balancers.
Pour plus d’informations sur les pratiques exemplaires en matière de définition de paramètres pour accélérer vos déploiements, consultez la section :
Tenez compte des informations suivantes lors de l’utilisation d’un Network Load Balancer avec Amazon ECS :
-
Amazon ECS nécessite le rôle IAM lié au service qui fournit les autorisations nécessaires pour enregistrer et désenregistrer des cibles dans votre équilibreur de charge lors de la création ou de l'arrêt de tâches. Pour de plus amples informations, veuillez consulter Utilisation des rôles liés à un service pour Amazon ECS.
-
Vous ne pouvez pas attacher plus de cinq groupes cibles à un service.
-
Pour les services dans une configuration IPv6 uniquement, vous devez définir le type d'adresse IP du groupe cible du Network Load
dualstackBalancer sur. -
Pour les services avec des tâches utilisant le mode réseau
awsvpc, lorsque vous créez un groupe cible pour votre service, vous devez choisiripcomme type de cible, pasinstance. Cela est dû au fait que les tâches qui utilisent le modeawsvpcréseau sont associées à une interface réseau élastique, et non à une EC2 instance Amazon. -
La configuration de sous-réseau de votre équilibreur de charge doit inclure toutes les zones de disponibilité dans lesquels résident vos instances de conteneur.
-
Une fois que vous avez créé un service, la configuration de l'équilibreur de charge ne peut pas être modifiée à partir de la AWS Management Console. Vous pouvez utiliser le AWS Copilot AWS CLI ou le SDK pour modifier la configuration de l'équilibreur de charge uniquement pour le contrôleur de déploiement
ECSévolutif, et non AWS CodeDeploy pour le bleu/vert ou externe. AWS CloudFormation Lorsque vous ajoutez, mettez à jour ou supprimez une configuration d'équilibreur de charge, Amazon ECS lance un nouveau déploiement avec la configuration mise à jour d'Elastic Load Balancing. Cela entraîne l'enregistrement et le désenregistrement des tâches auprès des équilibreurs de charge. Nous vous recommandons de vérifier cela dans un environnement de test avant de mettre à jour la configuration ELB. Pour plus d'informations sur la façon de modifier la configuration, consultez le UpdateServicemanuel Amazon Elastic Container Service API Reference. -
Si une tâche d’un service ne satisfait pas aux critères de surveillance de l’état de l’équilibreur de charge, la tâche est arrêtée et redémarrée. Ce processus continue jusqu'à ce que votre service atteigne le nombre souhaité de tâches en cours d'exécution.
-
Lorsque vous utilisez un Gateway Load Balancer configuré avec des adresses IP comme cibles et la préservation de l’adresse IP du client désactivée, les requêtes sont considérées comme provenant de l’adresse IP privée du Gateway Load Balancer. Cela signifie que les services derrière un Gateway Load Balancer sont effectivement ouverts au monde dès que vous autorisez les requêtes entrantes et les surveillances de l’état dans le groupe de sécurité de la cible.
-
Pour les tâches Fargate, vous devez utiliser la version de plateforme
1.4.0(Linux) ou1.0.0(Windows). -
Si vous rencontrez des problèmes avec l'équilibreur de charge utilisé par vos services, consultez Résolution des problèmes liés aux équilibreurs de charge des services dans Amazon ECS.
-
Lorsque vous utilisez le type de cible
instance, vos tâches et votre équilibreur de charge doivent se trouver dans le même VPC. Lors de l’utilisation du type de cibleip, la connectivité entre VPC est prise en charge. -
La préservation des adresses IP client du Network Load Balancer est compatible avec les cibles Fargate.
-
Utilisez un groupe cible unique pour chaque service.
L’utilisation du même groupe cible pour plusieurs services peut entraîner des problèmes lors des déploiements de service.
-
Vous devez spécifier les groupes cibles associés à un Network Load Balancer.
Pour plus d’informations sur la création d’un Network Load Balancer, consultez la section Création d’un Network Load Balancer dans Network Load Balancer.
Important
Si la définition de tâche de votre service utilise le mode réseau awsvpc (ce qui est requis pour Fargate), vous devez choisir le type de cible ip, et non instance. Cela est dû au fait que les tâches qui utilisent le mode awsvpc réseau sont associées à une interface réseau élastique, et non à une EC2 instance Amazon.
Vous ne pouvez pas enregistrer des instances par ID d'instance si elles ont les types d'instance suivants : C1 CC1 CC2, CG1, CG2, CR1,, G1, G2, HI1, M1 HS1, M2, M3 et T1. Vous pouvez enregistrer les instances de ces types par adresse IP.