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.
Résolution des problèmes liés aux équilibreurs de charge de service sur Amazon ECS
Les ECS services Amazon peuvent enregistrer des tâches avec un équilibreur de charge Elastic Load Balancing. Les erreurs de configuration d'équilibreur de charge sont des causes courantes de l'arrêt des tâches. Si vos tâches arrêtées ont été lancées par des services qui utilisent un équilibreur de charge, pensez aux causes possibles suivantes.
- Le rôle ECS lié à un service Amazon n'existe pas
-
Le rôle ECS lié à un service Amazon permet aux ECS services Amazon d'enregistrer des instances de conteneur auprès des équilibreurs de charge Elastic Load Balancing. Le rôle lié à un service doit être créé dans votre compte. Pour de plus amples informations, veuillez consulter Utilisation de rôles liés à un service pour Amazon ECS.
- Groupe de sécurité des instances de conteneurs
-
Si votre conteneur est mappé au port 80 sur votre instance de conteneur, votre groupe de sécurité d'instance de conteneur doit autoriser le trafic entrant sur le port 80 pour que les surveillances de l'état de l'équilibreur de charge réussissent.
- L'équilibreur de charge Elastic Load Balancing n'est pas configuré pour toutes les zones de disponibilité
-
Votre équilibreur de charge doit être configuré pour utiliser toutes les zones de disponibilité d'une région, ou au moins toutes les zones de disponibilité dans lesquelles se trouvent vos instances de conteneur. Si un service utilise un équilibreur de charge et lance une tâche sur une instance de conteneur située dans une zone de disponibilité que l'équilibreur de charge n'est pas configuré pour utiliser, la tâche ne passe jamais le test de santé. Cela entraîne l'arrêt de la tâche.
- Le bilan de santé de l'équilibreur de charge Elastic Load Balancing est mal configuré
-
Les paramètres de surveillance de l'état de l'équilibreur de charge peuvent être trop restrictifs ou pointer vers des ressources qui n'existent pas. S'il est déterminé qu'une instance de conteneur est défectueuse, elle est supprimée de l'équilibreur de charge. Veillez à vérifier si les paramètres suivants sont correctement configurés pour votre équilibreur de charge de service.
- Ping Port
-
La valeur Ping Port pour une surveillance de l'état d'équilibreur de charge correspond au port des instances de conteneur vérifiées par l'équilibreur de charge pour en déterminer l'état. Si ce port n'est pas correctement configuré, l'équilibreur de charge est susceptible d'annuler l'enregistrement de votre instance de conteneur. Ce port doit être configuré de manière à utiliser la valeur
hostPort
correspondant au conteneur dans la définition de tâche de votre service que vous utilisez avec la surveillance de l'état. - Ping Path
-
Cela fait partie du bilan de santé de l'équilibreur de charge. Il s'agit d'un point de terminaison de votre application qui peut renvoyer un code d'état valide (par exemple, 200) lorsque l'application est saine. Cette valeur est souvent définie sur
index.html
, mais si votre service ne répond pas à cette demande, la surveillance de l'état échoue. Si votre conteneur ne contient pas deindex.html
fichier, vous pouvez le configurer/
pour cibler la base de URL l'instance de conteneur. - Response Timeout
-
Cette valeur correspond au délai dont dispose votre conteneur pour renvoyer une réponse à la commande ping de surveillance de l'état. Si cette valeur est inférieure à la durée nécessaire pour une réponse, la surveillance de l'état échoue.
- Health Check Interval
-
Il s'agit de la durée entre les pings de surveillance de l'état. Plus vos intervalles de surveillance de l'état sont courts, plus votre instance de conteneur peut atteindre rapidement le seuil de défectuosité.
- Unhealthy Threshold
-
Il s'agit du nombre d'échecs possibles des surveillances de l'état avant que votre instance de conteneur ne soit considérée comme étant défectueuse. Si vous avez un seuil d'insalubrité de 2 et un intervalle de 30 secondes entre les bilans de santé, votre tâche dispose de 60 secondes pour répondre au ping du bilan de santé avant qu'elle ne soit considérée comme non saine. Vous pouvez augmenter le seuil de défectuosité ou l'intervalle de surveillance de l'état afin de donner à vos tâches plus de temps pour répondre.
- Impossible de mettre à jour le service
servicename
: le nom ou le port du conteneur de l'équilibreur de charge a été modifié dans la définition de la tâche -
Si votre service utilise un équilibreur de charge, vous pouvez utiliser le AWS CLI ou SDK pour modifier la configuration de l'équilibreur de charge. Pour plus d'informations sur la manière de modifier la configuration, consultez UpdateServicele Amazon Elastic Container Service API Reference. Si vous mettez à jour la définition de tâche pour le service, le nom et le port de conteneur spécifiés dans la configuration de l'équilibreur de charge doivent rester dans la définition de tâche.
- Vous avez atteint la limite du nombre de tâches que vous pouvez exécuter simultanément.
-
Pour un nouveau compte, vos quotas peuvent être inférieurs aux Service Quotas. Le quota de service de votre compte peut être affiché dans la console Service Quotas. Pour demander une augmentation de quota, consultez Demande d'augmentation de quota dans le Guide de l'utilisateur Service Quotas.