Sélectionner vos préférences de cookies

Nous utilisons des cookies essentiels et des outils similaires qui sont nécessaires au fonctionnement de notre site et à la fourniture de nos services. Nous utilisons des cookies de performance pour collecter des statistiques anonymes afin de comprendre comment les clients utilisent notre site et d’apporter des améliorations. Les cookies essentiels ne peuvent pas être désactivés, mais vous pouvez cliquer sur « Personnaliser » ou « Refuser » pour refuser les cookies de performance.

Si vous êtes d’accord, AWS et les tiers approuvés utiliseront également des cookies pour fournir des fonctionnalités utiles au site, mémoriser vos préférences et afficher du contenu pertinent, y compris des publicités pertinentes. Pour accepter ou refuser tous les cookies non essentiels, cliquez sur « Accepter » ou « Refuser ». Pour effectuer des choix plus détaillés, cliquez sur « Personnaliser ».

Déterminer l'état des tâches Amazon ECS à l'aide de vérifications de l'état des conteneurs

Mode de mise au point
Déterminer l'état des tâches Amazon ECS à l'aide de vérifications de l'état des conteneurs - Amazon Elastic Container Service

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.

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.

Lorsque vous créez une définition de tâche, vous pouvez configurer un contrôle de santé pour vos conteneurs. Les contrôles de santé sont des commandes qui s'exécutent localement sur un conteneur et valident l'état et la disponibilité de l'application.

L'agent de conteneur Amazon ECS assure une surveillance et génère des rapports uniquement pour les vérifications d'état spécifiées dans la définition de la tâche. Amazon ECS n'assure pas la surveillance de l'état Docker qui est intégrée dans une image de conteneur, mais qui n'est pas spécifiée dans la définition du conteneur. Les paramètres de surveillance de l'état spécifiés dans une définition du conteneur remplacent toutes les surveillances de l'état Docker présentes dans l'image de conteneur.

Lorsqu'un contrôle de santé est défini dans une définition de tâche, le conteneur exécute le processus de contrôle de santé à l'intérieur du conteneur, puis évalue le code de sortie pour déterminer l'état de santé de l'application.

Le bilan de santé comprend les paramètres suivants :

  • Commande : commande exécutée par le conteneur pour déterminer s'il est sain. Le tableau de chaînes peut commencer par CMD pour exécuter directement les arguments de la commande, ou par CMD-SHELL pour exécuter la commande avec le shell par défaut du conteneur.

  • Intervalle : intervalle de temps (en secondes) entre chaque bilan de santé.

  • Délai d'attente : délai (en secondes) nécessaire pour qu'un bilan de santé réussisse avant qu'il ne soit considéré comme un échec.

  • Réessais : nombre de fois où il faut réessayer un contrôle de santé qui a échoué avant que le contenant ne soit considéré comme insalubre.

  • Période de début : période de grâce facultative qui donne aux conteneurs le temps de démarrer avant que les tests de santé échoués ne soient pris en compte dans le nombre maximum de tentatives.

    Si une vérification de l'état aboutit dans le délai défini par startPeriod, le conteneur est considéré comme sain et toutes les défaillances suivantes sont prises en compte dans le nombre maximal de nouvelles tentatives.

Pour plus d'informations sur la manière de spécifier un bilan de santé dans la définition d'une tâche, consultezSurveillance de l'état.

Les valeurs d'état de santé possibles d'un conteneur sont décrites ci-dessous :

  • HEALTHY : le conteneur a passé avec succès la surveillance de l'état.

  • UNHEALTHY : le conteneur a échoué à la surveillance de l'état.

  • UNKNOWN : la surveillance de l'état du conteneur est en cours d'évaluation, aucune surveillance de l'état du conteneur n'est définie ou Amazon ECS n'a pas l'état de santé du conteneur.

Les commandes de contrôle de santé s'exécutent sur le conteneur. Vous devez donc inclure les commandes dans l'image du conteneur.

Le bilan de santé se connecte à l'application via l'interface de bouclage du conteneur à localhost ou127.0.0.1. Un code de sortie égal à 0 indique un succès, et un code de sortie différent de zéro indique un échec.

Tenez compte des points suivants lorsque vous utilisez des contrôles de santé des conteneurs :

  • Les surveillances de l'état du conteneur requièrent la version 1.17.0 ou une version supérieure de l'agent de conteneur Amazon ECS.

  • Les contrôles de santé des conteneurs sont pris en charge pour les tâches Fargate si vous utilisez une version de plate-forme Linux ou supérieure ou une 1.1.0 version de plate-forme Windows ou supérieure 1.1.0

Comment Amazon ECS détermine l'état de santé des tâches

Les conteneurs essentiels et dotés d'une commande de vérification de l'état dans la définition de la tâche sont les seuls pris en compte pour déterminer l'état de santé de la tâche.

Les règles suivantes sont évaluées dans l'ordre :

  1. Si le statut d'un conteneur essentiel estUNHEALTHY, le statut de la tâche estUNHEALTHY.

  2. Si le statut d'un conteneur essentiel estUNKNOWN, le statut de la tâche estUNKNOWN.

  3. Si le statut de tous les conteneurs essentiels est le HEALTHY même, le statut de la tâche estHEALTHY.

Prenons l'exemple d'état des tâches suivant avec deux conteneurs essentiels.

Conteneur 1 : santé Container 2 : santé Santé des tâches
UNHEALTHY UNKNOWN UNHEALTHY
UNHEALTHY HEALTHY UNHEALTHY
HEALTHY UNKNOWN UNKNOWN
HEALTHY HEALTHY HEALTHY

Prenons l'exemple d'intégrité des tâches suivant avec 3 conteneurs.

Conteneur 1 : santé Container 2 : santé Container 3 : santé Santé des tâches
UNHEALTHY UNKNOWN UNKNOWN UNHEALTHY
UNHEALTHY UNKNOWN HEALTHY UNHEALTHY
UNHEALTHY HEALTHY HEALTHY UNHEALTHY
HEALTHY UNKNOWN HEALTHY UNKNOWN
HEALTHY UNKNOWN UNKNOWN UNKNOWN
HEALTHY HEALTHY HEALTHY HEALTHY

Comment les bilans de santé sont-ils affectés par les déconnexions d'agents

Si l'agent de conteneur Amazon ECS est déconnecté du service Amazon ECS, le conteneur ne passera pas à un UNHEALTHY statut. Cela a été conçu pour garantir que les conteneurs continuent de fonctionner pendant les redémarrages de l'agent ou en cas d'indisponibilité temporaire. L'état du bilan de santé est la réponse « dernière réponse » de l'agent Amazon ECS. Ainsi, si le conteneur a été pris en compte HEALTHY avant la déconnexion, cet état restera en vigueur jusqu'à ce que l'agent se reconnecte et qu'un autre contrôle de santé ait lieu. Aucune hypothèse n'a été émise quant au statut des surveillances de l'état des conteneurs.

ConfidentialitéConditions d'utilisation du sitePréférences de cookies
© 2025, Amazon Web Services, Inc. ou ses affiliés. Tous droits réservés.