Lorsque vous exécutez des microservices Java sur Kubernetes, la gestion du cycle de vie des applications, la surveillance et la gouvernance des services sont essentielles en plus de l'exécution du cluster. Enterprise Distributed Application Service (EDAS) ajoute ces fonctionnalités à Container Service for Kubernetes (ACK), ce qui vous permet de déployer, de surveiller et de gérer les applications Java conteneurisées depuis une seule console.
Ce guide vous accompagne à travers trois étapes : la création d'un cluster ACK, son importation dans EDAS et le déploiement d'une application Java à partir d'une image de conteneur.
Fonctionnement

Créez un cluster ACK dans la console ACK.
Importez le cluster dans EDAS pour activer la gestion, la surveillance et la gouvernance des applications.
Déployez votre application Java à partir d'une image de conteneur dans la console EDAS.
Prérequis
Avant de commencer, assurez-vous d'avoir :
-
Activé EDAS et ACK pour votre compte Alibaba Cloud
Créé un namespace de microservice. Consultez la rubrique Gérer un namespace de microservice
Attribué les rôles par défaut ACK à votre compte. Consultez la rubrique Rôles par défaut ACK
Étape 1 : Créer un cluster ACK
Connectez-vous à la console ACK et créez un cluster Kubernetes managé. Pour obtenir des instructions, consultez la page Créer un cluster Kubernetes managé.
Clusters ACK Serverless : Pour utiliser Alibaba Cloud Service Mesh (ASM) après avoir importé un cluster ACK Serverless dans EDAS, appliquez les paramètres suivants lors de la création du cluster :
| Paramètre | Valeur |
|---|---|
| VPC | Create VPC |
| Service Discovery | PrivateZone |
Si vous définissez VPC sur Select Existing VPC, vérifiez que le cluster contient les ressources VPC et vSwitch requises. Pour plus d'informations, consultez la page Créer un cluster ACK Serverless.
Étape 2 : Importer le cluster ACK dans EDAS
L'importation d'un cluster ACK installe automatiquement les composants suivants :
| Composant | Objectif |
|---|---|
| ack-ahas-sentinel-pilot | Limitation de débit et dégradation (protection des applications) |
| ack-arms-pilot | Agent Application Real-Time Monitoring Service (ARMS) |
| ack-arms-prometheus | Surveillance Prometheus |
Pour importer le cluster :
Connectez-vous à la console EDAS.
Dans le volet de navigation de gauche, sélectionnez Resource Management > Container Service Kubernetes Clusters.
Dans la barre de navigation supérieure, sélectionnez la région de votre cluster ACK, puis cliquez sur Synchronize Container Service Kubernetes Cluster.
Recherchez votre cluster et cliquez sur Import dans la colonne Actions.
Dans la boîte de dialogue Precheck for Import, cliquez sur Continue.
-
Dans la boîte de dialogue Import Kubernetes Cluster :
Sélectionnez un namespace de microservice dans la liste déroulante Microservice Namespace.
Activez ou désactivez Service Mesh selon vos besoins.
Cliquez sur Import.
Vérifier l'importation : L'importation est réussie lorsque Cluster Status indique Running et que Import Status indique Imported.
Étape 3 : Déployer l'application Java
3a. Créer l'application
Connectez-vous à la console EDAS.
Dans le volet de navigation de gauche, sélectionnez Application Management > Applications.
Dans la barre de navigation supérieure, sélectionnez une région et un namespace de microservice.
Cliquez sur Create Application.
3b. Configurer les informations de base
À l'étape Basic Information, définissez les paramètres suivants et cliquez sur Next.
| Paramètre | Valeur pour ce guide |
|---|---|
| Cluster Type | Kubernetes Clusters. Les clusters Kubernetes prennent en charge ASM. |
| Application Source Type | Default |
| Hosted Applications | Java |
| Select Application | Custom. Une image personnalisée fournit son propre environnement d'exécution intégré. |
OpenJDK 17 est compatible avec Dubbo 2.7.14 et versions ultérieures, ou Dubbo 3.0.6 et versions ultérieures.
Données de test de compatibilité OpenJDK 17
| Version Dubbo | Version Spring Boot | Version du client Nacos | Appel API | Surveillance ARMS | Liste des services |
|---|---|---|---|---|---|
| 2.7.14 | 2.7.9 | 1.4.4 | Pris en charge | Pris en charge | Pris en charge |
| 2.7.14 | 2.7.9 | 2.1.2 | Pris en charge | Pris en charge | Pris en charge |
| 2.7.14 | 2.7.9 | 2.2.0 | Pris en charge | Pris en charge | Pris en charge |
| 2.7.22 | 2.7.9 | 1.4.4 | Pris en charge | Pris en charge | Pris en charge |
| 2.7.22 | 2.7.9 | 2.1.2 | Pris en charge | Pris en charge | Pris en charge |
| 2.7.22 | 2.7.9 | 2.2.0 | Pris en charge | Pris en charge | Pris en charge |
| 3.0.6 | 2.7.9 | 1.4.4 | Pris en charge | Pris en charge | Pris en charge |
| 3.0.6 | 2.7.9 | 2.1.2 | Pris en charge | Pris en charge | Pris en charge |
| 3.0.6 | 2.7.9 | 2.2.0 | Pris en charge | Pris en charge | Pris en charge |
| 3.1.7 | 2.7.9 | 1.4.4 | Pris en charge | Pris en charge | Pris en charge |
| 3.1.7 | 2.7.9 | 2.1.2 | Pris en charge | Pris en charge | Pris en charge |
| 3.1.7 | 2.7.9 | 2.2.0 | Pris en charge | Pris en charge | Pris en charge |
3c. Configurer le déploiement
À l'étape Configurations, définissez les paramètres suivants et cliquez sur Next.
Environnement
| Paramètre | Description |
|---|---|
| Microservice Namespace | Sélectionnez le namespace créé précédemment. La valeur par défaut est Default si aucun n'est spécifié. Pour en créer un, cliquez sur Create Microservice Namespace. Consultez la section « Créer un namespace » de la rubrique Gérer les namespaces de microservices. |
| Cluster | Sélectionnez un cluster Kubernetes. Si le cluster n'a pas encore été importé dans EDAS, sélectionnez This cluster is used for the first time in EDAS pour l'importer lors de la création de l'application, puis vérifiez si Alibaba Cloud Service Mesh est activé. L'importation du cluster prend un certain temps. Le cluster n'a pas besoin d'appartenir au même namespace de microservice. |
| K8s Namespace | Namespace Kubernetes pour l'application. Options : default, kube-system (objets système), kube-public (accessible en lecture par tous les utilisateurs, y compris les utilisateurs non authentifiés). Pour créer un namespace personnalisé, cliquez sur Create Kubernetes Namespace. Les noms peuvent contenir des chiffres, des lettres minuscules et des traits d'union (-), doivent comporter entre 1 et 63 caractères et doivent commencer et se terminer par une lettre ou un chiffre. |
Détails de l'application
| Paramètre | Description |
|---|---|
| Application Name | Commence par une lettre. Peut contenir des chiffres, des lettres et des traits d'union (-). Maximum 36 caractères. |
| Application Description | Facultatif. Maximum 128 caractères. |
Source de l'image
| Paramètre | Description |
|---|---|
| Image Type : Configure Image | Utilisez une image de conteneur provenant d'Alibaba Cloud Container Registry (ACR). |
| -- Current Account | Sélectionnez la Region, le Container Registry, le Image Repository Namespace, le Image Repository Name et une version d'image. |
| -- Other Alibaba Cloud Accounts (dépôt public) | Saisissez l'Full Image Address. |
| -- Other Alibaba Cloud Accounts (dépôt privé) | Utilisez le composant aliyun-acr-credential-helper pour extraire des images sans secret. Consultez la rubrique Utiliser le composant aliyun-acr-credential-helper pour extraire des images sans secrets. |
| Image Type : Demo Image | Utilisez une image de démonstration fournie par EDAS et sélectionnez une version d'image. Les images de démonstration ne sont pas disponibles pour Apsara Stack. |
Les utilisateurs RAM doivent disposer des autorisations requises pour utiliser les images Container Registry Enterprise Edition. Consultez la rubrique Configurer des stratégies pour que les utilisateurs RAM accèdent à Container Registry.
Ressources
| Paramètre | Description |
|---|---|
| Total Pods | Nombre de Pods à déployer. Le maximum dépend de la capacité du cluster. |
| Single-pod Resource Quota | CPU, mémoire et stockage éphémère par Pod. La valeur par défaut 0 signifie qu'il n'y a aucune limite. Les quotas maximaux dépendent de la capacité du cluster. |
3d. Configurer les paramètres avancés (facultatif)
À l'étape Advanced Settings, configurez les éléments suivants si nécessaire :
Si votre application utilise JDK 11 ou JDK 17, ajoutez l'annotation correspondante :
| Version JDK | Annotation |
|---|---|
| JDK 11 | one-agent.jdk.version: OpenJDK11 |
| JDK 17 | one-agent.jdk.version: OpenJDK17 |
3e. Soumettre et vérifier le déploiement
Après avoir configuré les paramètres avancés, cliquez sur Create Application.
À l'étape Creation Completed, cliquez à nouveau sur Create Application.
Dans la boîte de dialogue Confirm Application Change Precheck, cliquez sur Start Precheck.
-
Examinez les résultats de la vérification préliminaire et cliquez sur Continue.
Pour relancer la vérification préliminaire après avoir apporté des modifications, cliquez sur Check Again.
Le déploiement prend quelques minutes. Suivez la progression sur la page Change List.
Vérifier le déploiement : Sur la page Application Overview, confirmez que tous les Pods affichent l'état running. Cliquez sur l'état d'un Pod pour afficher ses Deployments, ses pods et ses configurations avancées.
Configurer l'accès réseau
Après le déploiement, configurez l'accès réseau pour votre application :
Accès public : Liez une instance Server Load Balancer (SLB) orientée Internet. Consultez la rubrique Lier des instances CLB.
Accès interne : Liez une instance SLB orientée vers le réseau interne pour permettre l'accès depuis d'autres ressources du même VPC. Consultez la rubrique Réutiliser une instance CLB.
Nous contacter
Pour toute question ou suggestion concernant les clusters ACK et les clusters ACK Serverless dans EDAS, rejoignez le groupe DingTalk (ID de groupe : 23197114) pour obtenir une assistance technique.