View a markdown version of this page

Services virtuels - AWS App Mesh

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.

Services virtuels

Important

Avis de fin de support : le 30 septembre 2026, AWS le support pour AWS App Mesh. Après le 30 septembre 2026, vous ne pourrez plus accéder à la AWS App Mesh console ni aux AWS App Mesh ressources. Pour plus d'informations, consultez ce billet de blog Migration depuis Amazon ECS Service Connect AWS App Mesh vers Amazon ECS.

Un service virtuel est une abstraction d'un service réel qui est fournie directement ou indirectement par un nœud virtuel, via un routeur virtuel. Les services dépendants appellent votre service virtuel via son virtualServiceName. Ces demandes sont acheminées vers le nœud virtuel ou le routeur virtuel qui est spécifié en tant que fournisseur pour le service virtuel.

Création d'un service virtuel

Console de gestion AWS
Pour créer un service virtuel à l'aide du Console de gestion AWS
  1. Ouvrez la console App Mesh à l'adresse https://console.aws.amazon.com/appmesh/.

  2. Choisissez le maillage dans lequel vous souhaitez créer le service virtuel. Tous les maillages que vous possédez et qui ont été partagés avec vous sont répertoriés.

  3. Choisissez Virtual services (Services virtuels) dans le panneau de navigation gauche.

  4. Choisissez Create virtual service (Créer un service virtuel).

  5. Pour Virtual service name (Nom de service virtuel), choisissez un nom pour votre service virtuel. Vous pouvez choisir n'importe quel nom, mais il est recommandé de choisir le nom de découverte du service réel que vous ciblezmy-service.default.svc.cluster.local, par exemple, pour faciliter la corrélation entre vos services virtuels et les services réels. De cette façon, vous n'avez pas besoin de modifier votre code pour faire référence à un nom différent de celui auquel votre code fait actuellement référence. Le nom que vous spécifiez doit être résolu en une adresse IP non bouclée, car le conteneur de l'application doit être en mesure de résoudre correctement le nom avant que la demande ne soit envoyée au proxy Envoy. Vous pouvez utiliser n'importe quelle adresse IP non bouclée, car ni l'application ni les conteneurs proxy ne communiquent avec cette adresse IP. Le proxy communique avec d'autres services virtuels par le biais des noms que vous leur avez configurés dans App Mesh, et non par le biais des adresses IP auxquelles les noms se réfèrent.

  6. Pour Provider (Fournisseur), choisissez le type de fournisseur pour votre service virtuel :

    • Si vous souhaitez que le service virtuel répartisse le trafic sur plusieurs nœuds virtuels, sélectionnez Virtual routeur (Routeur virtuel), puis choisissez le routeur virtuel à utiliser dans le menu déroulant.

    • Si vous souhaitez que le service virtuel atteigne un nœud virtuel directement sans routeur virtuel, sélectionnez Nœud virtuel, puis choisissez le nœud virtuel à utiliser dans le menu déroulant.

      Note

      App Mesh crée automatiquement une politique de nouvelle tentative d'itinéraire Envoy par défaut pour chaque fournisseur de nœuds virtuels que vous définissez, même si vous ne pouvez pas définir une telle politique via l'API App Mesh. Pour de plus amples informations, veuillez consulter Politique de nouvelle tentative d'itinéraire par défaut.

    • Si vous ne voulez pas que le service virtuel achemine le trafic pour l'instant (par exemple, si vos nœuds virtuels ou votre routeur virtuel n'existent pas encore), choisissez None (Aucun). Vous pourrez mettre à jour le fournisseur pour ce service virtuel plus tard.

  7. Choisissez Create virtual service (Créer un service virtuel) pour terminer.

AWS CLI

Pour créer un service virtuel à l'aide du AWS CLI.

Créez un service virtuel avec un fournisseur de nœuds virtuels à l'aide de la commande suivante et d'un fichier JSON d'entrée (remplacez les red valeurs par les vôtres) :

  1. aws appmesh create-virtual-service \ --cli-input-json file://create-virtual-service-virtual-node.json
  2. Contenu de l'exemple create-virtual-service-virtual-node.json :

    { "meshName": "meshName", "spec": { "provider": { "virtualNode": { "virtualNodeName": "nodeName" } } }, "virtualServiceName": "serviceA.svc.cluster.local" }
  3. Exemple de sortie :

    { "virtualService": { "meshName": "meshName", "metadata": { "arn": "arn:aws:appmesh:us-west-2:210987654321:mesh/meshName/virtualService/serviceA.svc.cluster.local", "createdAt": "2022-04-06T09:45:35.890000-05:00", "lastUpdatedAt": "2022-04-06T09:45:35.890000-05:00", "meshOwner": "123456789012", "resourceOwner": "210987654321", "uid": "a1b2c3d4-5678-90ab-cdef-11111EXAMPLE", "version": 1 }, "spec": { "provider": { "virtualNode": { "virtualNodeName": "nodeName" } } }, "status": { "status": "ACTIVE" }, "virtualServiceName": "serviceA.svc.cluster.local" } }

Pour plus d'informations sur la création d'un service virtuel avec le AWS CLI for App Mesh, consultez la commande create-virtual-service dans la référence. AWS CLI

Supprimer un service virtuel

Note

Vous ne pouvez pas supprimer un service virtuel référencé par une route de passerelle. Vous devez d'abord supprimer la route de la passerelle.

Console de gestion AWS
Pour supprimer un service virtuel à l'aide du Console de gestion AWS
  1. Ouvrez la console App Mesh à l'adresse https://console.aws.amazon.com/appmesh/.

  2. Choisissez le maillage à partir duquel vous souhaitez supprimer un service virtuel. Tous les maillages que vous possédez et qui ont été partagés avec vous sont répertoriés.

  3. Choisissez Virtual services (Services virtuels) dans le panneau de navigation gauche.

  4. Choisissez le service virtuel que vous souhaitez supprimer et cliquez sur Supprimer dans le coin supérieur droit. Vous ne pouvez supprimer qu'une passerelle virtuelle dont votre compte est répertorié en tant que propriétaire de la ressource.

  5. Dans la zone de confirmation, tapez delete puis cliquez sur Supprimer.

AWS CLI
Pour supprimer un service virtuel à l'aide du AWS CLI
  1. Utilisez la commande suivante pour supprimer votre service virtuel (remplacez les red valeurs par les vôtres) :

    aws appmesh delete-virtual-service \ --mesh-name meshName \ --virtual-service-name serviceA.svc.cluster.local
  2. Exemple de sortie :

    { "virtualService": { "meshName": "meshName", "metadata": { "arn": "arn:aws:appmesh:us-west-2:210987654321:mesh/meshName/virtualService/serviceA.svc.cluster.local", "createdAt": "2022-04-06T09:45:35.890000-05:00", "lastUpdatedAt": "2022-04-07T10:39:42.772000-05:00", "meshOwner": "123456789012", "resourceOwner": "210987654321", "uid": "a1b2c3d4-5678-90ab-cdef-11111EXAMPLE", "version": 2 }, "spec": { "provider": { "virtualNode": { "virtualNodeName": "nodeName" } } }, "status": { "status": "DELETED" }, "virtualServiceName": "serviceA.svc.cluster.local" } }

Pour plus d'informations sur la suppression d'un service virtuel à l'aide du AWS CLI for App Mesh, consultez la commande delete-virtual-service dans la référence. AWS CLI