Présentation de la configuration d'Amazon ECS Service Connect - 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.

Présentation de la configuration d'Amazon ECS Service Connect

Lorsque vous utilisez Service Connect, vous devez configurer certains paramètres dans vos ressources.

Ressources Amazon ECS qui doivent être configurées pour Service Connect
Emplacement des paramètres Type d'application Description Obligatoire
Définition de tâche Client Aucune modification n'est disponible pour Service Connect dans les définitions des tâches du client. N/A
Définition de tâche Client-serveur Les serveurs doivent ajouter des champs de name aux ports dans les portMappings des conteneurs. Pour plus d’informations, consultez portMappings. Oui
Définition de tâche Client-serveur Les serveurs peuvent éventuellement fournir un protocole d'application (par exemple, HTTP) pour recevoir des métriques spécifiques au protocole pour leurs applications serveur (par exemple, HTTP 5xx). Non
Définition des services Client Les services clients doivent ajouter une serviceConnectConfiguration pour configurer l'espace de noms à rejoindre. Cet espace de noms doit contenir tous les services de serveur que ce service doit découvrir. Pour plus d’informations, consultez serviceConnectConfiguration. Oui
Définition des services Client-serveur Les services de serveur doivent ajouter une serviceConnectConfiguration pour configurer les noms DNS, les numéros de port et l'espace de noms à partir desquels le service est disponible. Pour plus d’informations, consultez serviceConnectConfiguration. Oui
Cluster Client Les clusters peuvent ajouter un espace de noms Service Connect par défaut. Les nouveaux services du cluster héritent de l'espace de noms lorsque Service Connect est configuré dans un service. Non
Cluster Client-serveur Aucune modification n'est disponible pour Service Connect dans les clusters qui s'appliquent aux services de serveur. Les définitions de tâches de serveur et les services doivent définir la configuration correspondante. N/A
Vue d'ensemble des étapes de configuration de Service Connect

Les étapes suivantes fournissent une vue d'ensemble de la configuration de Service Connect.

Important
  • Service Connect crée AWS Cloud Map des services dans votre compte. La modification de ces ressources AWS Cloud Map en enregistrant manuellement des instances et en annulant leur enregistrement, en modifiant les attributs des instances ou en supprimant un service peut entraîner un comportement inattendu pour le trafic de votre application ou pour les déploiements ultérieurs.

  • Service Connect ne prend pas en charge les liens dans la définition des tâches.

  1. Ajoutez des noms de port aux mappages de port dans vos définitions de tâches. Vous pouvez également identifier le protocole de couche 7 de l'application afin d'obtenir des métriques supplémentaires.

  2. Créez un cluster avec un espace de AWS Cloud Map noms ou créez l'espace de noms séparément. Pour simplifier l'organisation, créez un cluster portant le nom que vous souhaitez pour l'espace de noms et spécifiez le même nom pour l'espace de noms. Dans ce cas, Amazon ECS crée un nouvel espace de noms HTTP avec la configuration nécessaire. Service Connect n'utilise ni ne crée de zones hébergées DNS dans Amazon Route 53.

  3. Configurez les services pour créer des points de terminaison Service Connect dans l'espace de noms.

  4. Déployez des services pour créer les points de terminaison. Amazon ECS ajoute un conteneur de proxy Service Connect à chaque tâche et crée les points de terminaison Service Connect dans AWS Cloud Map. Ce conteneur n'est pas configuré dans la définition de tâche, et cette dernière peut être réutilisée sans modification pour créer plusieurs services dans le même espace de noms ou dans plusieurs espaces de noms.

  5. Déployez des applications clientes en tant que services pour vous connecter aux points de terminaison. Amazon ECS les connecte aux points de terminaison Service Connect par le proxy Service Connect dans chaque tâche.

    Les applications utilisent le proxy uniquement pour se connecter aux points de terminaison Service Connect. Il n'existe aucune configuration supplémentaire pour utiliser le proxy. Le proxy effectue un équilibrage de charge alterné, une détection des valeurs aberrantes et de nouvelles tentatives. Pour plus d'informations sur le proxy, veuillez consulter Proxy Service Connect.

  6. Surveillez le trafic via le proxy Service Connect sur Amazon CloudWatch.

Configuration de cluster

Vous pouvez définir un espace de noms par défaut pour Service Connect lorsque vous créez ou mettez à jour le cluster. Si vous spécifiez un nom d'espace de noms qui n'existe pas dans la même Région AWS et le même compte, un nouvel espace de noms HTTP est créé.

Si vous créez un cluster et que vous spécifiez un espace de noms Service Connect par défaut, le cluster attend dans l'état PROVISIONING pendant qu'Amazon ECS crée l'espace de noms. Vous pouvez voir un attachment dans l'état du cluster qui indique l'état de l'espace de noms. Les pièces jointes ne sont pas affichées par défaut dans le AWS CLI, vous devez les ajouter --include ATTACHMENTS pour les voir.

Configuration du service

Service Connect est conçu pour nécessiter une configuration minimale. Vous devez définir un nom pour chaque mappage de port que vous souhaitez utiliser avec Service Connect dans la définition de tâche. Dans le service, vous devez activer Service Connect et sélectionner un espace de noms pour créer un service client. Pour créer un service client-serveur, vous devez ajouter une configuration de service Service Connect unique qui correspond au nom de l'un des mappages de port. Amazon ECS réutilise le numéro de port et le nom de port figurant dans la définition de tâche pour définir le service et le point de terminaison Service Connect. Pour remplacer ces valeurs, vous pouvez utiliser les autres paramètres Discovery (Découverte), DNS et Port dans la console ou discoveryName et clientAliases, respectivement, dans l'API Amazon ECS.