Enterprise Distributed Application Service (EDAS) s'intègre entièrement à Container Service for Kubernetes (ACK) sur la base de Kubernetes natif du cloud. EDAS vous permet de gérer le cycle de vie complet des applications conteneurisées Kubernetes. Les clusters Kubernetes sans serveur sont adaptés aux scénarios nécessitant une grande agilité et peuvent être utilisés pour traiter des tâches individuelles ou multiples. Cette rubrique explique comment déployer une application à partir d'une image dans un cluster ACK Serverless.
Prérequis
-
Activez les services EDAS et ACK pour votre compte Alibaba Cloud. Pour plus d'informations, consultez les rubriques suivantes :
Attribuez les rôles par défaut d'ACK à votre compte. Pour plus d'informations, consultez la section Rôles ACK.
Étape 1 : Créer un cluster ASK
Connectez-vous à la console ACK et créez un cluster ACK Serverless. Pour plus d'informations, consultez la section Créer un cluster ASK.
Étape 2 : Importer un cluster ASK dans la console EDAS
Par défaut, les composants ack-ahas-sentinel-pilot, ack-arms-pilot et ack-arms-prometheus sont installés lors de l'importation d'un cluster ACK dans EDAS via la console EDAS. Le composant ack-ahas-sentinel-pilot assure la protection des applications grâce au throttling et à la dégradation. Le composant ack-arms-pilot correspond à Application Real-Time Monitoring Service (ARMS). Le composant ack-arms-prometheus est dédié à la surveillance Prometheus.
Console EDAS Connectez-vous à la console EDAS. Dans le volet de navigation de gauche, choisissez .
Dans la barre de navigation supérieure, sélectionnez la région et le namespace de microservices où réside votre cluster ASK. Cliquez ensuite sur Synchronize Serverless Kubernetes Cluster.
Repérez le cluster ACK Serverless synchronisé avec EDAS et cliquez sur Import dans la colonne Actions.
Dans le message d'Warning, cliquez sur OK.
Dans la boîte de dialogue Precheck for Import, cliquez sur Continue.
-
Dans la boîte de dialogue Import Kubernetes Cluster, sélectionnez le namespace de microservices vers lequel vous souhaitez importer le cluster ACK Serverless dans la liste déroulante Microservice Namespace, activez ou désactivez l'option Service Mesh selon vos besoins métier, puis cliquez sur Import.
Le cluster ACK Serverless est importé dans EDAS lorsque la valeur de la colonne Cluster Status est Running et que celle de la colonne Import Status est Imported.
Étape 3 : Déployer une application dans le cluster ACK Serverless
Console EDAS Connectez-vous à la console EDAS. Dans le volet de navigation de gauche, choisissez . Dans la barre de navigation supérieure, sélectionnez une région. Dans la partie supérieure de la page, choisissez un namespace de microservices. Dans le coin supérieur gauche de la page Applications, cliquez sur Create Application.
-
À l'étape Basic Information, configurez les paramètres des sections Cluster Type et Application Runtime Environment, puis cliquez sur Next.
-
À l'étape Configurations, configurez les informations relatives à l'environnement, les informations de base, la méthode de déploiement et les paramètres de ressources pour l'application, puis cliquez sur Next.
Paramètre
Description
Microservice Namespace
Namespace de microservices dans lequel vous souhaitez déployer l'application. Sélectionnez le namespace de microservices que vous avez créé. Si vous ne disposez pas ou ne sélectionnez pas de namespace de microservices, ce paramètre est défini sur Default.
Si vous n'avez pas créé de namespace de microservices ou si vous souhaitez en créer un autre namespace de microservices, cliquez sur Create Microservice Namespace pour créer un namespace de microservices. Pour plus d'informations, consultez la section « Créer un namespace » de la rubrique Gérer les namespaces de microservices.
Cluster
Cluster dans lequel vous souhaitez déployer l'application. Sélectionnez un cluster Kubernetes dans la liste déroulante Cluster.
Si le cluster Kubernetes sélectionné n'est pas importé dans EDAS, cochez l'option This cluster is used for the first time in EDAS. If you select this check box, the cluster is imported to EDAS when an application is created. This consumes a certain amount of time. Vérifiez ensuite si Alibaba Cloud Service Mesh est activé.
RemarqueVous pouvez sélectionner un cluster qui n'appartient pas au même namespace de microservices que l'application.
K8s Namespace
Namespace Kubernetes de l'application. Les objets système internes sont alloués à différents namespaces Kubernetes pour former des projets, équipes ou groupes d'utilisateurs isolés logiquement. Ainsi, différents groupes peuvent être gérés séparément et partager les ressources de l'ensemble du cluster. Valeurs valides :
-
default : namespace Kubernetes par défaut. Si vous ne spécifiez pas de namespace Kubernetes pour un objet, le namespace Kubernetes par défaut est utilisé.
-
kube-system : namespace Kubernetes destiné aux objets créés par le système.
-
kube-public : namespace Kubernetes créé automatiquement par le système. Ce namespace Kubernetes peut être lu par tous les utilisateurs, y compris les utilisateurs non authentifiés.
Dans cet exemple, sélectionnez default.
Si vous souhaitez créer un namespace Kubernetes personnalisé, cliquez sur Create Kubernetes Namespace. Dans la boîte de dialogue qui s'affiche, saisissez un nom pour le namespace Kubernetes dans le champ K8s Namespace. Le nom peut contenir des chiffres, des lettres minuscules et des traits d'union (-), et doit comporter entre 1 et 63 caractères. Il doit commencer et se terminer par une lettre ou un chiffre.
Application Name
Nom de l'application. Le nom doit commencer par une lettre et peut contenir des chiffres, des lettres et des traits d'union (-). Le nom peut comporter jusqu'à 36 caractères.
Application Description
Description de l'application. La description peut comporter jusqu'à 128 caractères.
Image Type
-
Type d'image utilisé pour déployer l'application. Valeurs valides : Configure Image
-
Si vous définissez le paramètre Alibaba Cloud Container Registry sur Current Account, effectuez les opérations suivantes :
Configurez les paramètres Region, Container Registry, Image Repository Namespace et Image Repository Name, puis sélectionnez une version d'image.
-
Si vous définissez le paramètre Alibaba Cloud Container Registry sur Other Alibaba Cloud Accounts, effectuez l'une des opérations suivantes :
-
Si votre image est stockée dans un dépôt public, spécifiez le paramètre Full Image Address.
-
Si votre image est stockée dans un dépôt privé, utilisez le composant aliyun-acr-credential-helper pour extraire une image de conteneur. Pour plus d'informations, consultez la section Utiliser le composant aliyun-acr-credential-helper pour extraire des images sans secrets.
-
-
-
Demo Image
Si vous sélectionnez cette option, vous devez utiliser une image de démonstration fournie par EDAS et choisir une version d'image.
RemarqueLes images de démonstration ne sont pas fournies pour Apsara Stack.
RemarqueAvant d'utiliser les images d'un dépôt Container Registry Enterprise Edition pour déployer des applications en tant qu'utilisateur RAM, celui-ci doit obtenir les autorisations requises auprès du compte Alibaba Cloud concerné. Pour plus d'informations, consultez la section Informations sur l'autorisation RAM.
Total Pods
Nombre de pods sur lesquels vous souhaitez déployer l'application. Le nombre maximal de pods dépend des performances du cluster.
Single-pod Resource Quota
CPU, mémoire et stockage éphémère que vous souhaitez réserver pour un pod. Si vous souhaitez spécifier une limite, saisissez une valeur numérique. La valeur par défaut 0 indique qu'aucune limite n'est imposée. Les quotas maximaux de CPU, de mémoire et de stockage éphémère dépendent des performances du cluster.
-
-
(Facultatif) À l'étape Advanced Settings, configurez les paramètres avancés.
-
Important
Si vous utilisez JDK 11, configurez l'annotation
one-agent.jdk.version: OpenJDK11.Si vous utilisez JDK 17, configurez l'annotation
one-agent.jdk.version: OpenJDK17.
Une fois les paramètres avancés configurés, cliquez sur Create Application. À l'étape Creation Completed, cliquez sur Create Application.
-
Dans la boîte de dialogue Confirm Application Change Precheck, cliquez sur Start Precheck.
Après l'actualisation des données dans la boîte de dialogue, confirmez les éléments et les résultats de la pré-vérification, puis cliquez sur Continue.
(Facultatif)Si vous modifiez les éléments de pré-vérification précédents, cliquez sur Check Again.
Le déploiement de l'application prend plusieurs minutes. Pendant ce processus, vous pouvez consulter les historiques de modification pour suivre la progression du déploiement de l'application sur la page Change List. Une fois l'application déployée, accédez à la page Application Overview pour afficher l'état d'exécution des pods. Si les pods sont dans l'état running, l'application est déployée. Vous pouvez cliquer sur l'état d'exécution des pods pour afficher les Deployments, les pods et les configurations avancées des instances d'application.
Étapes suivantes
Après avoir déployé l'application, ajoutez une instance Server Load Balancer (SLB) orientée Internet pour permettre l'accès à l'application depuis Internet. Vous pouvez également ajouter une instance SLB interne afin que tous les nœuds du même VPC puissent accéder à l'application via cette instance SLB interne. Pour plus d'informations, consultez les sections Lier des instances CLB ou Réutiliser une instance CLB.
Groupe DingTalk pour les clusters ACK et Serverless Kubernetes
Si vous avez des questions ou des suggestions concernant l'utilisation de Container Service for Kubernetes (ACK) et des clusters Serverless Kubernetes dans EDAS, vous pouvez rejoindre le groupe DingTalk en recherchant l'ID 23197114 dans DingTalk.