Tous les produits
Search
Centre de documentation

Microservices Engine:Gérer les versions de service

Dernière mise à jour :Aug 11, 2026

Dans Cloud-native Gateway, les versions de service servent principalement au routage basé sur des tags. Configurez des politiques de routage adaptées pour activer des cas d'utilisation tels que les déploiements canaris, le routage basé sur des tags et les déploiements haute disponibilité.

Remarque

La gestion des versions de service n'est pas prise en charge pour les services Fixed Address ou DNS Domain Name.

Contexte

Dans une architecture de microservices, un service constitue une unité fonctionnelle d'une application disposant généralement d'un domaine métier indépendant, comme un service de commandes ou un service utilisateur. Physiquement, un service s'exécute sur des conteneurs, des machines virtuelles ou des serveurs physiques dotés d'adresses réseau. Logiquement, un service regroupe un ensemble d'instances réseau offrant les mêmes fonctionnalités.

Une version de service représente un sous-ensemble des instances d'un service, regroupées selon leurs métadonnées. Les cas d'utilisation courants incluent le canary release, le tag-based routing et le high-availability deployment.

  • Canary release : Pour déployer en toute sécurité de nouvelles versions de service, utilisez cette stratégie qui dirige une faible partie du trafic vers la nouvelle version à des fins de validation. Une fois le bon fonctionnement confirmé, migrez progressivement l'intégralité du trafic de l'ancienne version vers la nouvelle.

  • Tag-based routing : Un service peut comporter plusieurs versions aux fonctionnalités distinctes, chacune destinée à des requêtes spécifiques. Par exemple, pour une même API, les requêtes contenant une valeur d'en-tête particulière sont acheminées vers une version spécifique. Vous pouvez également utiliser les versions de service pour router les requêtes vers l'environnement de développement approprié (test, préproduction ou production) en fonction des attributs de la requête.

  • High-availability deployment : Pour garantir la disponibilité du service, déployez-le sur plusieurs clusters Kubernetes (K8s). En traitant les instances de chaque cluster comme une version de service distincte, vous pouvez ajuster la pondération du trafic acheminé vers chacun d'eux. En cas de défaillance d'un cluster, redirigez le trafic en définissant sa pondération à 0.

La gestion des versions de service repose sur les métadonnées associées aux instances de service.

  • Pour Container Service for Kubernetes (ACK), les métadonnées des instances de service proviennent de l'attribut Labels des Pods. Par exemple, si vous utilisez une application Spring Cloud associée à un service Kubernetes, ajoutez une clé et une valeur de tag sous spec.template.metadata.labels dans le fichier YAML du déploiement Kubernetes.

  • Pour un registre Nacos, les métadonnées des instances de service correspondent aux métadonnées fournies par l'application lors de l'enregistrement de l'instance. Par exemple, avec une application Spring Cloud utilisant un registre Nacos, définissez les métadonnées de l'instance via le champ spring.cloud.nacos.discovery.metadata.

Ajouter une version de service

  1. Connectez-vous à la console MSE. Dans la barre de navigation supérieure, sélectionnez une région.

  2. Dans le volet de navigation de gauche, choisissez Cloud-native Gateway > Gateways. Sur la page Gateways, cliquez sur l'ID de la passerelle.

  3. Dans le volet de navigation de gauche, cliquez sur Routes. Puis, cliquez sur l'onglet Services.

  4. Cliquez sur le nom du service à modifier. Dans la section Service Version, cliquez sur Add Version.

  5. Dans la nouvelle ligne apparaissant dans la liste des versions de service, configurez les paramètres, puis cliquez sur l'icône 完成 dans la colonne Actions.

    Paramètre

    Description

    Version Name

    Saisissez un nom de version de service. Utilisez un nom lisible et descriptif.

    Tag Name

    Clés de métadonnées disponibles pour toutes les instances de service. Sélectionnez une clé pour regrouper les instances de la nouvelle version.

    Tag Value

    Valeurs disponibles pour la tag key sélectionnée. Choisissez une valeur pour définir le groupe d'instances de la nouvelle version.

    Number of Instances/Proportion

    • Nombre d'instances : nombre d'instances correspondant à la clé et à la valeur de tag spécifiées.

    • Proportion : pourcentage du total des instances du service appartenant à cette version.

    Remarque

    Les champs Tag Name et Tag Value déterminent conjointement l'ensemble d'instances de la version actuelle.

  6. Dans la boîte de dialogue de confirmation, cliquez sur OK.

    La nouvelle version de service apparaît dans la section Service Version.

Modifier une version de service

  1. Connectez-vous à la console MSE. Dans la barre de navigation supérieure, sélectionnez une région.

  2. Dans le volet de navigation de gauche, choisissez Cloud-native Gateway > Gateways. Sur la page Gateways, cliquez sur l'ID de la passerelle.

  3. Dans le volet de navigation de gauche, cliquez sur Routes. Puis, cliquez sur l'onglet Services.

  4. Cliquez sur le nom du service à modifier. Dans la section Service Version, cliquez sur l'icône 编辑 dans la colonne Actions.

  5. Sélectionnez un nouveau Tag Name et une nouvelle Tag Value, puis cliquez sur l'icône 完成 dans la colonne Actions.

  6. Dans la boîte de dialogue de confirmation, cliquez sur OK.

Supprimer une version de service

  1. Connectez-vous à la console MSE. Dans la barre de navigation supérieure, sélectionnez une région.

  2. Dans le volet de navigation de gauche, choisissez Cloud-native Gateway > Gateways. Sur la page Gateways, cliquez sur l'ID de la passerelle.

  3. Dans le volet de navigation de gauche, cliquez sur Routes. Puis, cliquez sur l'onglet Services.

  4. Cliquez sur le nom du service à modifier. Dans la liste Service Version, cliquez sur l'icône 删除 dans la colonne Actions.

  5. Dans la boîte de dialogue de confirmation, cliquez sur OK.