Cette page a été traduite par l'API Cloud Translation.
Switch to English

Exécuter et développer une application

Maintenant que la configuration est terminée, vous pouvez opter pour une exécution régulière de votre application ou démarrer un cycle d'itération de développement sur votre IDE afin de propager toute modification apportée à la source et aux dépendances de votre application active. Cette page utilise l'exemple d'application Guestbook pour illustrer l'exécution et le développement sur Kubernetes.

Choisir une action d'exécution

Avant d'exécuter votre application, assurez-vous d'être prêt à la déployer dans le contexte Kubernetes de votre choix. Vous pouvez le spécifier dans votre configuration Exécuter sur Kubernetes, dans l'onglet "Exécuter" et dans la section "Préférences de déploiement".

Si vous souhaitez changer de contexte, vous pouvez le faire à l'aide de Kubernetes Explorer. Il est accessible depuis le panneau de la barre latérale à droite ou en utilisant Outils > Cloud Code > Kubernetes > View Cluster Explorer (Afficher l'explorateur de clusters).

Exécution sur Kubernetes

Pour une exécution régulière de votre application, vous pouvez utiliser la cible d'exécution Kubernetes, Exécuter sur Kubernetes icône d'action d'exécution, pour créer l'image et déployer le projet sur votre cluster Kubernetes. Les sources et les dépendances de votre projet ne sont pas surveillées, et le processus Skaffold se termine une fois l'image et le déploiement terminés.

Déploiement standard à l'aide de l'action d'exécution

Pour plus d'informations sur la personnalisation de votre déploiement, reportez-vous aux Options de configuration disponibles.

Développement continu sur Kubernetes

Cliquez sur l'action d'exécution Développer sur Kubernetes icône d'action d'exécution pour démarrer le cycle de développement sur votre cluster Kubernetes. Une fois le cycle de développement lancé, Cloud Code, à l'aide de Skaffold, crée une image pour le projet, lui ajoute un tag, l'envoie au dépôt configuré et utilise kubectl pour déployer les fichiers manifestes Kubernetes du projet.

Démarrer le cycle de développement du cluster Kubernetes

Pour plus d'informations sur la personnalisation de votre déploiement, reportez-vous aux Options de configuration disponibles.

Prévisualiser votre application déployée

  1. Une fois que vous avez cliqué sur le bouton "Run" (Exécuter) de l'action d'exécution souhaitée, vous pouvez afficher les journaux d'application entrants dans la fenêtre de sortie.

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

    Afficher des journaux en continu depuis l'application Kubernetes

  2. Une fois le déploiement effectué, vous recevez une notification indiquant que votre service est désormais accessible via des URL locales. Cliquez sur "View" (Afficher) pour ouvrir le journal des événements.

    Notification indiquant que l'URL d'accès à votre application active est désormais disponible dans le journal des événements

    Dans le journal des événements, recherchez le port sur lequel votre application est diffusée. Cliquez sur le lien pour ouvrir votre navigateur avec votre application en cours d'exécution.

  3. Affichez la nouvelle application déployée.

    Exécuter l'application Guestbook sur localhost:8080

Afficher les journaux

Bien que vous puissiez, lors des phases de développement et d'exécution de votre application, afficher le flux en direct des journaux depuis les pods exécutés dans la sortie du terminal ; vous pouvez également 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

Ajouter des fonctionnalités lors du développement sur Kubernetes

Si vous avez lancé un cycle d'itération de développement avec l'action "Develop on Kubernetes" (Développer sur Kubernetes) et ajouté des fonctionnalités à votre projet, vous verrez comment ces modifications sont déployées sur votre cluster Kubernetes sans avoir à arrêter ni supprimer le déploiement, à créer et ajouter manuellement des tags, ou à mettre à jour le cluster.

Si vous suivez l'application Guestbook, procédez comme suit :

  1. Ouvrez le fichier "FrontendController.java" à partir de src/main/java/cloudcode/guestbook/frontend et ajoutez ce nouveau point de terminaison à la classe FrontendController :

     @RequestMapping("/greeting")
     @ResponseBody
     public String greeting(@RequestParam(value="name", defaultValue="World") String name) {
        return String.format("Hello from Kubernetes with IntelliJ, %s!", name);
     }
     ```
    
  2. Ajoutez les importations nécessaires pour les nouvelles annotations, RequestMapping et ResponseBody.

  3. Enregistrez les modifications (Ctrl/Cmd+S) ou compilez le projet : utilisez le menu Build (Compiler) > Build Project (Compiler le projet).

    Vous pouvez suivre les journaux de progression et de déploiement dans la fenêtre de la console. Une fois les modifications propagées, confirmez les mises à jour en accédant à la nouvelle URL du point de terminaison : localhost:8080/greeting.

    Afficher le point de terminaison créé dans un navigateur

  4. Lorsque vous avez terminé, cliquez sur le bouton "Stop" (Arrêter) pour mettre fin à la session de développement continu. Cette action entraîne la suppression par le plug-in de toutes les ressources Kubernetes utilisées pour la session de développement.

Stocker des secrets

Si votre code inclut des données potentiellement sensibles telles que des clés API, des mots de passe et des certificats, nous vous recommandons de les stocker en tant que secrets. Avec Cloud Code, vous pouvez stocker ces secrets en toute sécurité dans Secret Manager et les récupérer de manière automatisée lorsque vous en avez besoin. Pour plus d'informations sur la création et la gestion des secrets avec Cloud Code, consultez le guide de Secret Manager.

Afficher les détails de la ressource

Pour suivre l'état de vos ressources Kubernetes, vous pouvez utiliser l'explorateur Kubernetes, accessible depuis le panneau latéral de droite. Vous pouvez également y accéder via Tools (Outils), Cloud Code (Cloud Code), Kubernetes et View Cluster Explorer (Afficher l'explorateur de cluster).

Panneau de l'explorateur Kubernetes ouvert à l'aide de l'onglet de la barre des tâches de droite

Avec l'explorateur Kubernetes, vous pouvez accéder aux informations concernant vos clusters, vos nœuds, vos charges de travail et plus encore, et configurer un contexte actif, un flux Consultez les journaux et effectuez des recherches sur les descriptions des ressources.

Vous pouvez facilement exécuter un objet kubectl describe sur vos ressources déployées pour afficher leurs détails. Pour cela, cliquez avec le bouton droit de la souris sur leur libellé dans l'explorateur Kubernetes, puis sélectionnez Describe (Décrire).

Option de description disponible en cliquant avec le bouton droit sur une ressource sélectionnée dans le panneau de l'explorateur Kubernetes et en sélectionnant "Décrire"

Configuration

Lorsque vous utilisez les configurations d'exécution Run on Kubernetes (Exécuter sur Kubernetes) et Develop on Kubernetes (Développer sur Kubernetes), vous pouvez personnaliser votre déploiement en configurant les paramètres disponibles. Accédez aux options de configuration en sélectionnant "Run Configuration" (Exécuter la configuration) dans la liste déroulante et en sélectionnant Edit Configurations (Modifier les configurations).

  • Options Skaffold
    • Skaffold configuration (Configuration Skaffold) : sélectionne un fichier de configuration skaffold.yaml. Elle sera automatiquement détectée si votre projet contient un fichier skaffold.yaml.
    • Deployment profile (Profil de déploiement) : sélectionne un profil parmi les options disponibles configurées dans votre fichier skaffold.yaml.
    • Environment variables (Variables d'environnement) : vous permettent de configurer des variables d'environnement supplémentaires à transmettre au processus de déploiement de Skaffold. Les options Skaffold peuvent également être configurées en tant que variables d'environnement à utiliser dans ce champ. Reportez-vous à la documentation de référence de la CLI Skaffold pour obtenir la liste complète des variables d'environnement Skaffold disponibles.
    • Verbosité : permet de définir le niveau de verbosité de la sortie sur trace, debug, info, warn, error ou fatal. Le niveau de verbosité par défaut est warn.
  • Options Kubernetes
    • Le contexte de déploiement représente le contexte Kubernetes dans lequel votre application sera déployée. Le comportement par défaut est déployé dans le contexte de votre système actuel. Vous pouvez également choisir d'effectuer le déploiement vers un contexte fixe en sélectionnant Changer de contexte et effectuer le déploiement (dans la section "Déploiement" des paramètres d'exécution/de débogage). Cette option remplace le contexte actuel de votre système par le contexte spécifié lors du déploiement. Sélectionner le contexte de déploiement Kubernetes dans une configuration d'exécution Cloud Code
    • Delete deployments when finished (Supprimer les déploiements lorsque vous avez terminé) : supprime les déploiements Kubernetes lorsque le processus est terminé. Il s'agit du comportement par défaut. Vous pouvez également activer/désactiver ce paramètre pour empêcher la suppression des déploiements.
  • Options de stockage d'images de conteneurs
  • Paramètres de compilation

Assistance

Pour envoyer vos commentaires, signalez tout problème sur GitHub ou posez une question sur Stack Overflow.