Tous les produits
Search
Centre de documentation

Enterprise Distributed Application Service:Utiliser la console EDAS pour implémenter une publication par phases d'une application dans un cluster Kubernetes

Dernière mise à jour :Oct 12, 2026

Vous pouvez déployer une application installée sur un grand nombre d'instances ou dotée d'une architecture de service complexe en plusieurs phases. L'application n'est mise à jour que sur quelques instances à chaque phase. La publication par phases est terminée lorsque l'application a été mise à jour sur toutes les instances. Cette rubrique explique comment implémenter une publication par phases d'une application dans la console Enterprise Distributed Application Service (EDAS).

Vue d'ensemble

Lors d'une publication par phases, l'application n'est mise à jour que sur quelques instances à chaque étape. Si une erreur survient pendant le processus, vous pouvez l'interrompre et restaurer l'application. Vous pourrez ensuite relancer la publication par phases une fois l'erreur corrigée.

Lorsqu'une application d'un cluster Kubernetes fait l'objet d'une publication en plusieurs phases, les instances sont réparties équitablement entre les différentes étapes. S'il n'est pas possible de les répartir de manière égale, les premières phases comptent moins d'instances que les suivantes.

Scénario

Prenons l'exemple d'une application déployée sur 10 instances, dont la version doit être mise à niveau de V1 vers V2 sur l'ensemble des instances.

Le schéma ci-dessous illustre la diffusion de l'application sur les instances selon une politique définie, en trois phases.

ED分批发布示意图AS

Remarques d'utilisation

Si vous publiez une application d'un cluster Kubernetes en plusieurs phases, un objet Deployment est créé pour gérer ce déploiement.

Procédure

  1. Connectez-vous à la console EDAS.

  2. Dans le volet de navigation de gauche, choisissez Application Management > Applications. Dans la barre de navigation supérieure, sélectionnez une région. En haut de la page Applications, choisissez un namespace de microservices dans la liste déroulante Microservices Namespace. Cliquez ensuite sur le nom de l'application que vous souhaitez gérer.

  3. En haut à droite de la page application overview, choisissez Deploy > Deploy.

  4. Dans la section Phased Release de la page Select Deployment Mode, cliquez sur Start Deployment en haut à droite.

  5. Sur la page Phased Release, téléchargez le package de déploiement de la nouvelle version de l'application.

    Parameter

    Description

    Application Runtime Environment

    Spécifiez un environnement d'exécution pour l'application. Valeur par défaut : Standard Java Application Runtime Environment.

    Java Environment

    Indiquez l'environnement Java à utiliser pour l'application. Valeurs possibles : Open JDK 8 [Latest Version:1.8.0_191], Open JDK 7, Open JDK 17, Open JDK 11, JDK 8, JDK 7, Dragonwell 8, Dragonwell 17 et Dragonwell 11.

    Current Environment

    L'environnement d'exécution actuel de l'application s'affiche. Cette information n'est visible que si l'application a été déployée via un package JAR ou WAR. EDAS met automatiquement à jour l'environnement Java ou l'environnement d'exécution de votre application vers la dernière version disponible.

    File Uploading Method

    Définissez la méthode de téléchargement du fichier. Options disponibles : Upload JAR Package et JAR Package Address.

    Remarque

    La méthode de téléchargement spécifiée doit correspondre à celle utilisée lors du déploiement initial de l'application. Les packages JAR, WAR et les images sont pris en charge. Dans cet exemple, nous utilisons un package JAR.

    Upload JAR Package

    Si vous avez défini le paramètre File Uploading Method sur Upload JAR Package, cliquez sur Click to Upload pour charger un package JAR.

    JAR Package Address

    Si vous avez défini le paramètre File Uploading Method sur JAR Package Address, saisissez l'URL du package JAR.

    Remarque

    Si vous indiquez l'URL d'un objet Object Storage Service (OSS) signé, EDAS mettra l'objet en cache pour faciliter les opérations ultérieures, telles que les restaurations ou les montées en charge, lors de la publication par phases.

    Container Registry Repository Type

    Remarque
    • Le paramètre Container Registry Repository Type n'est disponible que pour le déploiement d'applications Java, Tomcat ou EDAS-Container (HSF) dans des clusters ACK. Il n'est pas accessible si vous déployez des applications dans des clusters ACK Serverless (ASK).

    • Vous devez installer le composant aliyun-acr-credential-helper. Pour plus d'informations, consultez Utiliser le composant aliyun-acr-credential-helper pour extraire des images sans secrets.

    • Pour utiliser un référentiel d'images Container Registry Enterprise Edition, configurez l'accès via les VPC. Consultez Configurer l'accès via les VPC pour plus de détails.

    • La tâche de construction d'image pour l'application s'exécute dans votre cluster et consomme vos ressources. La limite de ressources par défaut pour une tâche de construction d'image unique est de 1 Go par cœur. Pour ajuster ces limites, reportez-vous à Comment ajuster les limites de ressources pour la construction d'images ?

    Si vous utilisez un référentiel Container Registry Personal Edition ou Container Registry Enterprise Edition pour stocker l'image créée, la tâche de construction s'exécute dans votre cluster. Les tâches de construction respectent les règles d'affinité et de tolérance suivantes :

    • EDAS ne planifie pas les tâches de construction sur les nœuds portant le libellé edas.image.build=disable.

    • EDAS privilégie la planification des tâches de construction sur les nœuds dotés du libellé edas.image.build=enable. Toutefois, il est possible que des tâches soient également assignées à des nœuds ne possédant pas le libellé edas.image.build.

    • Les tâches de construction peuvent s'exécuter sur des nœuds présentant la marque key=edas.image.build, effect=NoSchedule.

    Remarque
    • Pour empêcher la planification de tâches de construction sur certains nœuds, ajoutez-leur le libellé edas.image.build=disable.

    • Si vous souhaitez dédier un nœud aux tâches de construction, ajoutez-lui le libellé edas.image.build=enable ainsi que la marque key=edas.image.build, effect=NoSchedule. Cela empêchera les pods ne tolérant pas cette marque d'être planifiés sur ce nœud.

    Region of Container Registry

    Sélectionnez la région où se trouve votre image Container Registry. Ce paramètre n'est requis que si vous avez défini Container Registry Repository Type sur Container Registry Enterprise Edition.

    Container Registry

    Choisissez votre image de conteneur. Ce champ n'est obligatoire que si Container Registry Repository Type est réglé sur Container Registry Enterprise Edition.

    Image Repository Namespace

    Sélectionnez le namespace de microservices hébergeant votre référentiel d'images dans la liste déroulante. Vous pouvez également cliquer sur + Create Namespace pour créer un nouveau namespace de microservices.

    Version

    Numéro de version du package de déploiement JAR. Indiquez un numéro de version ou cliquez sur Use Timestamp as Version Number pour en générer un automatiquement.

    Time Zone

    Fuseau horaire de l'application. Spécifiez le fuseau horaire UTC correspondant à la région sélectionnée.

    Single-pod Resource Quota

    Quantités de CPU, de mémoire et de stockage temporaire à réserver pour un pod. Pour définir une limite, saisissez une valeur numérique. La valeur par défaut est 0, ce qui signifie qu'aucune limite n'est imposée. Les quotas maximums ou minimums dépendent des performances du cluster.

  6. Configurez les paramètres dans la section Release Policy.

    分批发布-发布策略

    Parameter

    Description

    Release Batch

    Nombre de phases prévues pour la diffusion de l'application sur les instances.

    Batch Mode

    Remarque

    Le paramètre Batch Mode n'apparaît que si la valeur de Release Batch est supérieure à 1.

    Valeurs possibles : Automatic et Manual.

    • Automatic : Le système déploie automatiquement les phases à intervalles réguliers, définis par le paramètre Interval. L'Interval représente le délai entre chaque phase, exprimé en minutes.

    • Manual : Vous devez déclencher manuellement le passage à la phase suivante.

    Deployment Interval Between Batches

    Indiquez l'intervalle de déploiement entre les instances au sein d'une même phase, si cette dernière contient plus d'une instance. L'unité est la seconde.

  7. (Facultatif) Configurez les paramètres avancés selon vos besoins métier, tels que ceux des sections Scheduling Rules, Startup Commands, Environment Variables, Persistent Storage, Local Storage, Application Life Cycle Management et Log Collection Settings. Pour plus de détails, consultez Paramètres avancés.

  8. Une fois les paramètres configurés, cliquez sur OK.

Vérifier le résultat

Sur la page change list de l'application, vérifiez l'état de la publication par phases ainsi que la valeur du paramètre Version situé à droite du champ Description. Si toutes les phases affichent l'état Success et que la valeur de Version est passée à V2, la publication par phases a réussi.

Restaurer une application

Pendant une publication par phases, si l'application n'a pas encore été mise à jour vers la nouvelle version sur toutes les instances, son état reste Executing. Lors d'une mise à jour, si une instance de la première phase cesse de répondre, accédez à la page change list et cliquez sur Roll Back pour restaurer l'instance avec le package de déploiement et la configuration de la version précédente.

Des erreurs peuvent survenir lors d'une publication par phases. Pour savoir comment les résoudre, consultez Comment résoudre les problèmes lors d'un processus de modification ?

  • Des erreurs telles que l'indisponibilité du package de déploiement ou l'échec des contrôles d'intégrité peuvent empêcher la mise à jour de l'application. Dans ce cas, la mise à jour en cours est automatiquement interrompue et l'application est restaurée.

  • Durant une mise à jour, le délai maximal autorisé pour une seule phase est de 30 minutes. Si le processus est suspendu en raison d'un dépassement de délai, vous devez accéder à la page change list pour arrêter le processus et restaurer l'application.