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.
Utilisez la découverte de services pour associer les ECS services Amazon à des DNS noms
Votre ECS service Amazon peut éventuellement être configuré pour utiliser Amazon ECS Service Discovery. La découverte de services utilise AWS Cloud Map API des actions pour gérer HTTP les DNS espaces de noms de vos ECS services Amazon. Pour plus d'informations, consultez Présentation de AWS Cloud Map dans le Manuel du développeur AWS Cloud Map .
La découverte de services est disponible dans les AWS régions suivantes :
Nom de la région | Région |
---|---|
US East (Virginie du Nord) |
us-east-1 |
USA Est (Ohio) |
us-east-2 |
USA Ouest (Californie du Nord) |
us-west-1 |
US West (Oregon) |
us-west-2 |
Afrique (Le Cap) |
af-south-1 |
Asie-Pacifique (Hong Kong) |
ap-east-1 |
Asie-Pacifique (Mumbai) |
ap-south-1 |
Asie-Pacifique (Hyderabad) |
ap-south-2 |
Asie-Pacifique (Tokyo) |
ap-northeast-1 |
Asie-Pacifique (Séoul) |
ap-northeast-2 |
Asie-Pacifique (Osaka) |
ap-northeast-3 |
Asie-Pacifique (Singapour) |
ap-southeast-1 |
Asie-Pacifique (Sydney) |
ap-southeast-2 |
Asie-Pacifique (Jakarta) |
ap-southeast-3 |
Asie-Pacifique (Melbourne) |
ap-southeast-4 |
Canada (Centre) |
ca-central-1 |
Canada Ouest (Calgary) |
ca-west-1 |
Chine (Beijing) |
cn-north-1 |
China (Ningxia) |
cn-northwest-1 |
Europe (Francfort) |
eu-central-1 |
Europe (Zurich) |
eu-central-2 |
Europe (Irlande) |
eu-west-1 |
Europe (Londres) |
eu-west-2 |
Europe (Paris) |
eu-west-3 |
Europe (Milan) |
eu-south-1 |
Europe (Stockholm) |
eu-north-1 |
Israël (Tel Aviv) |
il-central-1 |
Europe (Espagne) |
eu-south-2 |
Moyen-Orient (UAE) |
me-central-1 |
Moyen-Orient (Bahreïn) |
me-south-1 |
Amérique du Sud (São Paulo) |
sa-east-1 |
AWS GovCloud (USA Est) |
us-gov-east-1 |
AWS GovCloud (US-Ouest) |
us-gov-west-1 |
Concepts associés à la découverte de service
La découverte de service se compose des éléments suivants :
-
Espace de noms de la découverte de service : groupe logique de services de découverte de service qui partagent le même nom de domaine, par exemple,
example.com
. Il s'agit du nom de domaine vers lequel vous souhaitez acheminer le trafic. Vous pouvez créer un espace de noms en appelant laaws servicediscovery create-private-dns-namespace
commande ou dans la ECS console Amazon. Vous pouvez utiliser la commandeaws servicediscovery list-namespaces
pour afficher les informations récapitulatives concernant les espaces de noms créés par le compte actuel. Pour plus d'informations sur les commandes de découverte de services, consultezcreate-private-dns-namespace
et consultezlist-namespaces
le Guide de AWS CLI référence AWS Cloud Map (de découverte de services). -
Service de découverte de services : existe dans l'espace de noms de découverte de services et comprend le nom du service et la DNS configuration de l'espace de noms. Il fournit les principaux composants suivants :
-
Registre des services : vous permet de rechercher un service via DNS ou AWS Cloud Map API des actions et de récupérer un ou plusieurs points de terminaison disponibles pouvant être utilisés pour vous connecter au service.
-
-
Instance de découverte de services : existe au sein du service de découverte de services et comprend les attributs associés à chaque ECS service Amazon dans le répertoire des services.
-
Attributs d'instance : les métadonnées suivantes sont ajoutées en tant qu'attributs personnalisés pour chaque ECS service Amazon configuré pour utiliser la découverte de services :
-
AWS_INSTANCE_IPV4
— PourA
mémoire, l'IPv4adresse renvoyée par Route 53 en réponse à des DNS requêtes et AWS Cloud Map lorsqu'elle découvre les détails de l'instance, par exemple,192.0.2.44
. -
AWS_INSTANCE_PORT
– La valeur de port associées au service de découverte de service. -
AVAILABILITY_ZONE
– La zone de disponibilité dans laquelle la tâche a été lancée. Pour les tâches qui utilisent le type de lancement EC2, c'est la zone de disponibilité dans laquelle l'instance de conteneur existe. Pour les tâches qui utilisent le type de lancement Fargate, il s'agit de la zone de disponibilité dans laquelle l'interface réseau Elastic existe. -
REGION
– La région dans laquelle la tâche existe. -
ECS_SERVICE_NAME
— Le nom du ECS service Amazon auquel appartient la tâche. -
ECS_CLUSTER_NAME
— Le nom du ECS cluster Amazon auquel appartient la tâche. -
EC2_INSTANCE_ID
– L'ID de l'instance de conteneur sur laquelle la tâche a été placée. Cet attribut personnalisé n'est pas ajouté si la tâche utilise le type de lancement Fargate. -
ECS_TASK_DEFINITION_FAMILY
– La famille de définition de tâche que la tâche utilise. -
ECS_TASK_SET_EXTERNAL_ID
– Si un ensemble de tâches est créé pour un déploiement externe et est associé à un registre de découverte de service, alors l'attributECS_TASK_SET_EXTERNAL_ID
contiendra l'ID externe de l'ensemble de tâches.
-
-
-
Contrôles ECS de santé Amazon : Amazon ECS effectue des contrôles de santé périodiques au niveau du conteneur. Si un terminal ne passe pas le test de santé, il est retiré du DNS routage et marqué comme non fonctionnel.
Remarques relatives à la découverte de service
Les informations suivantes doivent être prises en compte lors de l'utilisation de la découverte de service :
-
La découverte de service est prise en charge pour les tâches sur Fargate qui utilisent la version de plateforme 1.1.0 ou supérieure. Pour de plus amples informations, veuillez consulter Versions de la plateforme Fargate pour Amazon ECS.
-
Les services configurés pour utiliser la découverte de service sont limités à 1 000 tâches par service. Cela est dû à un quota de service Route 53.
-
Le flux de travail Create Service de la ECS console Amazon prend uniquement en charge l'enregistrement des services dans des DNS espaces de noms privés. Lorsqu'un espace de DNS noms AWS Cloud Map privé est créé, une zone hébergée privée Route 53 est créée automatiquement.
-
Les VPC DNS attributs doivent être configurés pour une DNS résolution réussie. Pour plus d'informations sur la configuration des attributs, consultez l'DNSassistance VPC dans le guide de VPC l'utilisateur Amazon.
-
Les DNS enregistrements créés pour un service de découverte de services sont toujours enregistrés avec l'adresse IP privée de la tâche, plutôt qu'avec l'adresse IP publique, même lorsque des espaces de noms publics sont utilisés.
-
La découverte de service exige que les tâches spécifient le mode réseau
awsvpc
,bridge
ouhost
(none
n'est pas pris en charge). -
Si la définition de la tâche de service utilise le mode
awsvpc
réseau, vous pouvez créer n'importe quelle combinaisonA
ou SRV enregistrement pour chaque tâche de service. Si vous utilisez SRV des enregistrements, un port est requis. -
Si la définition de la tâche de service utilise le mode
host
réseaubridge
ou, l'SRVenregistrement est le seul type d'DNSenregistrement pris en charge. Créez un SRV enregistrement pour chaque tâche de service. L'SRVenregistrement doit spécifier une combinaison nom de conteneur et port de conteneur à partir de la définition de tâche. -
DNSles enregistrements d'un service de découverte de services peuvent être consultés dans votre. VPC Ces enregistrements utilisent le format suivant :
<service discovery service name>.<service discovery namespace>
. -
Lorsque vous effectuez une DNS requête sur le nom du service,
A
les enregistrements renvoient un ensemble d'adresses IP correspondant à vos tâches. SRVles enregistrements renvoient un ensemble d'adresses IP et de ports pour chaque tâche. -
Si vous avez huit enregistrements sains ou moins, Route 53 répond à toutes les DNS requêtes avec tous les enregistrements sains.
-
Lorsque tous les enregistrements ne sont pas sains, Route 53 répond aux DNS requêtes contenant jusqu'à huit enregistrements non conformes.
-
Vous pouvez configurer la découverte de service pour un service situé derrière un équilibreur de charge, mais le trafic de découverte de service est toujours acheminé vers la tâche et non pas vers l'équilibreur de charge.
-
La découverte de service ne prend pas en charge l'utilisation des équilibreurs de charge Classic Load Balancer.
-
Nous vous recommandons d'utiliser des contrôles de santé au niveau du conteneur gérés par Amazon ECS pour votre service de découverte de services.
-
HealthCheckCustomConfig—Amazon ECS gère les bilans de santé en votre nom. Amazon ECS utilise les informations issues des contrôles de santé et du conteneur, ainsi que l'état de votre tâche, pour mettre à jour l'état de santé avec AWS Cloud Map. Cette configuration est spécifiée à l'aide du paramètre
--health-check-custom-config
au moment de la création de votre service de découverte de service. Pour plus d'informations, consultez HealthCheckCustomConfig dans la référence AWS Cloud Map API.
-
-
Les AWS Cloud Map ressources créées lors de l'utilisation de la découverte de services doivent être nettoyées manuellement.
-
Les tâches et les instances sont enregistrées
UNHEALTHY
jusqu'à ce que les contrôles de santé du conteneur renvoient une valeur. Si les bilans de santé sont réussis, le statut est mis à jour àHEALTHY
. Si les vérifications de l'état du conteneur échouent, l'instance de découverte de service est désenregistrée.
Tarification de la découverte de service
Les clients utilisant Amazon ECS Service Discovery sont facturés pour les ressources de Route 53 et les API opérations de AWS Cloud Map découverte. Le montant facturé englobe les coûts associés à la création des zones hébergées Route 53 et des requêtes sur le registre de services. Pour plus d'informations, consultez Tarification AWS Cloud Map dans le Guide du développeur AWS Cloud Map .
Amazon ECS effectue des contrôles de santé au niveau des conteneurs et les expose à des API opérations de contrôle d'état AWS Cloud Map personnalisées. Ceci est actuellement mis à la disposition des clients sans frais supplémentaires. Si vous configurez des surveillances de l'état du réseau supplémentaires pour les tâches exposées publiquement, vous êtes facturé pour ces surveillances de l'état.