Déployer une application Kubernetes avec Cloud Code pour IntelliJ

Cette page explique comment faire vos premiers pas avec Cloud Code.

Dans ce guide de démarrage rapide, vous allez configurer une nouvelle application Kubernetes à l'aide d'un modèle "Hello World" de démarrage, exécuter votre application sur un cluster de votre choix, démarrer la recompilation continue pour développer votre application de manière itérative, puis déboguer votre code en cours d'exécution, puis suivre et afficher les journaux en streaming depuis votre application en ligne.

Avant de commencer

  1. Si vous souhaitez utiliser Google Cloud, vous devez créer ou sélectionner un projet Google Cloud et activer la facturation sur votre projet.

    Vous pouvez également utiliser un cluster hébergé sur une autre plate-forme cloud ou un cluster Kubernetes local avec des outils tels que Minikube ou Docker Desktop.

  2. Installez Git afin que Cloud Code puisse effectuer des opérations Git, comme le clonage d'un exemple.

  3. Si ce n'est pas déjà fait, installez le plug-in Cloud Code.

Créer une application

Pour créer une application à l'aide d'un exemple existant :

  1. Dans votre IDE, ouvrez File (Fichier) / New Project (Nouveau projet) et sélectionnez Cloud Code: Kubernetes.

  2. Sélectionnez un modèle Hello World dans la liste d'applications de démarrage. Liste des modèles disponibles : Python, Go, NodeJS, Java Hello World et applications de livre d'or

  3. Indiquez un nom pour votre projet.

    Une fois que vous avez cliqué sur Finish (Terminer), Cloud Code clone le modèle choisi et ouvre le projet que vous venez de créer.

    Pour les modèles Java, vous êtes invité à importer les projets Maven requis pour synchroniser votre fichier pom.xml. Cliquez sur Add as Maven project (Ajouter en tant que projet Maven), puis sur Import Changes (Importer les modifications).

Choisir un cluster

Pour développer votre application, vous aurez besoin d'un cluster Kubernetes associé (hébergé localement avec Minikube ou à l'aide d'une plate-forme cloud, telle qu'un cluster Google Kubernetes Engine).

Cluster local

Si vous n'avez pas encore de cluster à utiliser pour ce démarrage rapide, vous pouvez choisir d'exécuter votre application avec un cluster Minikube local géré par Cloud Code. Cloud Code démarre un cluster Minikube pour exécuter votre application, puis l'arrête lorsque le déploiement s'arrête. Si un cluster Minikube est déjà en cours d'exécution, Cloud Code utilise le cluster Minikube existant pour le déploiement.

Vous pouvez choisir d'utiliser ce cluster Minikube géré par Cloud Code à l'étape suivante, Développer votre application, en le définissant comme préférence de déploiement.

Cluster basé sur Cloud Platform

Si vous avez déjà configuré un cluster pour qu'il fonctionne avec des outils Kubernetes (tels que kubectl) que vous pouvez utiliser pour ce guide de démarrage rapide, Cloud Code se déploie automatiquement. Vous pouvez passer au développement de votre application afin de vérifier que votre cluster préféré est défini comme contexte actif.

Si ce n'est pas le cas, vous pouvez en créer un à l'aide des instructions spécifiques à votre plate-forme cloud. Pour GKE, vous pouvez suivre le guide Créer un cluster.

Développer votre application

Pour lancer le développement de votre application sur Kubernetes :

  1. Si vous utilisez un cluster hébergé sur une plate-forme cloud, assurez-vous d'avoir défini l'emplacement de stockage de vos images de conteneur pour Develop on Kubernetes.

    Si vous êtes connecté à Google Cloud dans votre IDE et qu'un projet par défaut est défini, Cloud Code utilise automatiquement votre dépôt d'images de conteneurs par défaut (gcr.io/{project_id}, où {project_id} fait référence à votre projet par défaut).

  2. Assurez-vous que le contexte Kubernetes préféré est défini. Vous pouvez le spécifier dans votre configuration de développement sur Kubernetes (accessible via Exécuter > Modifier des configurations > Développer sur Kubernetes) dans l'onglet "Exécuter" de la section "Préférences de déploiement".

    Vous pouvez choisir de déployer dans un contexte actif (par défaut), en local dans un cluster Minikube ou dans un autre contexte disponible.

    Par défaut, votre application Kubernetes s'exécute en Mode à la demande avec l'option À la demande sélectionnée. Si vous le souhaitez, vous pouvez au lieu de cela sélectionner l'option Enregistrer sur le fichier.

  3. Choisissez la cible d'exécution Develop on Kubernetes dans le sélecteur de configuration d'exécution/de débogage de la barre de navigation.

    Configurations d'exécution du déploiement sur Kubernetes

    Cela garantit que toutes les modifications de code seront automatiquement créées, transférées et déployées vers une nouvelle version de votre application.

  4. Pour démarrer le cycle de développement sur votre cluster Kubernetes, cliquez sur l'action d'exécution pour Develop on Kubernetes.

  5. Dans la fenêtre de sortie, dans l'onglet Logs (Journaux), affichez les journaux d'applications entrants.

    Une fois le déploiement démarré, la liste des ports transférés pour l'application déployée s'affiche.

  6. Une fois le déploiement effectué, vous êtes informé que de nouvelles URL de service sont disponibles. Cliquez sur l'onglet URL des services pour afficher les URL, puis cliquez sur le lien URL pour ouvrir votre navigateur avec votre application en cours d'exécution.

    Afficher les services transférés sur le port dans l'onglet "URL des services"

    Vous pouvez également ouvrir le journal des événements, puis cliquer sur le lien pour ouvrir votre navigateur avec l'application en cours d'exécution.

    Le volet Deployed Resources (Ressources déployées) montre ce que vous avez déployé au cours de la session de développement.

Déboguer votre application

Cloud Code prend en charge l'application des modifications lors du débogage.

Pour déboguer votre application, procédez comme suit :

  1. Cliquez sur l'action de débogage Icône d'action de débogage pour Develop on Kubernetes (Développer sur Kubernetes) afin de démarrer le cycle de développement en mode débogage sur votre cluster Kubernetes.

    Démarrer le cycle de développement du cluster Kubernetes en mode débogage

  2. Cloud Code rattache alors une session de débogage. En cas de réussite, la fenêtre "Debug Tool" (Outil de débogage) s'ouvre, confirmant la connexion (dans l'onglet "Console").

    Vous pouvez maintenant déboguer votre cluster Kubernetes opérationnel.

  3. Cliquez sur la marge de la ligne exécutable du code auquel vous souhaitez ajouter un point d'arrêt.

    Les cercles pleins rouges indiquent les points d'arrêt actifs, tandis que les cercles vides rouges indiquent les points d'arrêt désactivés.

  4. Lorsque vous envoyez une nouvelle requête à l'application, celle-ci s'interrompt sur la ligne souhaitée.

    Session de débogage Kubernetes

  5. Pour mettre fin à la session de débogage, cliquez sur l'icône d'arrêt dans la configuration d'exécution Develop on Kubernetes.

Afficher les journaux

En plus d'afficher les journaux des pods en cours d'exécution diffusés en streaming dans la sortie du terminal lorsque vous développez et exécutez votre application, vous pouvez afficher les journaux d'un pod spécifique en accédant à l'explorateur Kubernetes.

Pour afficher les journaux d'un pod spécifique, procédez comme suit :

  1. Accédez à l'explorateur Kubernetes. Vous pouvez y accéder depuis le panneau latéral de droite ou en suivant le menu Tools > Cloud Code > Kubernetes > View Cluster Explorer (Outils > Cloud Code > Kubernetes > Afficher l'explorateur de cluster).

    Le panneau de l'explorateur Kubernetes s'ouvre à l'aide de l'onglet de la barre des tâches de droite.

  2. Sélectionnez le pod pour lequel vous souhaitez consulter les journaux.

  3. Effectuez un clic droit sur le pod, puis sélectionnez Stream Logs (Diffuser des journaux). Vous pouvez également diffuser des journaux pour des conteneurs individuels exécutés dans des pods.

    Les journaux sont alors envoyés à la console de l'explorateur Kubernetes.

    Diffusion des journaux d'un pod à l'aide du menu contextuel pour les afficher dans la console de l'explorateur Kubernetes

Effectuer un nettoyage

Pour éviter que les ressources utilisées sur cette page soient facturées sur votre compte Google Cloud, procédez comme suit :

  1. Accédez à la page Projets de la console Google Cloud :

    Accéder à la page Projets

  2. Sélectionnez le projet que vous avez créé dans ce démarrage rapide, puis cliquez sur l'icône en forme de corbeille située à côté pour le supprimer.

    Cette opération ferme le projet et programme sa suppression.

Étapes suivantes