Présentation de Cloud Code pour IntelliJ

Cette page présente le développement Kubernetes dans Cloud Code.

Utiliser l'explorateur Kubernetes dans Cloud Code

L'explorateur Kubernetes vous permet d'accéder à des informations sur vos clusters, nœuds, charges de travail et plus encore, directement depuis votre IDE. Vous pouvez également définir un contexte actuel, diffuser et afficher les journaux, ouvrir un terminal interactif et rechercher les descriptions des ressources avec l'explorateur Kubernetes.

Explorateur Kubernetes Cloud Code

Cloud Code utilise le fichier kubeconfig par défaut, situé dans le répertoire $HOME/.kube sous MacOS/Linux ou %USERPROFILE%\.kube sous Windows, pour récupérer les ressources Kubernetes. Vous pouvez changer de fichier kubeconfig ou en ajouter depuis l'explorateur Kubernetes. Les fichiers kubeconfig sont des fichiers YAML qui contiennent les détails, le certificat et le jeton secret de votre cluster Kubernetes pour l'authentification auprès du cluster.

Pour utiliser un fichier kubeconfig autre que le fichier kubeconfig par défaut, consultez le guide Utiliser des fichiers kubeconfig

Accéder à l'explorateur Kubernetes

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

Lorsque vous démarrez une session de développement ou de débogage, la section Sessions de développement affiche la vue de journalisation structurée.

Volet des sessions de développement

Actions de base

L'explorateur Kubernetes est fourni par kubectl. Tant que vous avez configuré votre fichier de configuration kubectl pour accéder à vos clusters, vous pouvez utiliser l'explorateur Kubernetes pour ajouter des clusters et parcourir tous les espaces de noms, ressources et nœuds disponibles pour vos clusters, qu'ils se trouvent dans un contexte actif ou inactif.

Les actions Kubernetes générales disponibles, accessibles via leurs icônes dans l'explorateur Kubernetes, sont les suivantes:

  • Nouvelle application Kubernetes à partir d'un exemple d'icôneCréer une application Kubernetes à partir d'un exemple
  • Icône d'actualisation de l'explorateur Actualiser l'explorateur
  • Icône d'ouverture de la documentation Ouvrez la documentation Cloud Code de Kubernetes dans un navigateur Web

Voici d'autres actions de débogage Kubernetes courantes, accessibles via leurs icônes dans l'explorateur Kubernetes:

  • Icône Cloud Run Exécutez la configuration d'exécution/de débogage actuelle.
  • Icône de débogage Lancez la configuration d'exécution en mode débogage.
  • Icône de débogage : arrêtez une session de débogage active.

Copier un nom de ressource

Vous pouvez copier n'importe quel nom de ressource Kubernetes dans le presse-papiers (y compris les noms de conteneurs et de clusters). Pour copier un nom de ressource, effectuez un clic droit sur la ressource et choisissez Copier le nom de la ressource.

Copier un nom de ressource à l'aide du menu contextuel

Actualiser les ressources

L'explorateur Kubernetes surveille les modifications et s'actualise automatiquement pour refléter les mises à jour. Pour forcer l'actualisation d'une ressource Kubernetes afin d'extraire ses dernières informations, effectuez un clic droit sur la ressource et choisissez Refresh (Actualiser).

Actualiser les pods à l'aide du menu contextuel

Vous pouvez également forcer l'actualisation de l'ensemble de l'explorateur Kubernetes à l'aide du bouton d'actualisation de l'explorateur Kubernetes. Bouton d'actualisation de l'explorateur Kubernetes

Décrire les ressources

Pour afficher les détails d'une ressource non liée à un cluster, effectuez un clic droit sur la ressource, puis sélectionnez Décrire. Les informations sur les ressources sont présentées dans le panneau de la console de l'explorateur Kubernetes.

Option de description disponible en effectuant un clic droit sur une ressource appropriée dans l'explorateur Kubernetes et en sélectionnant "Décrire"

Pour afficher les détails d'une ressource, vous pouvez également cliquer sur n'importe quelle ressource. Si des métadonnées sont associées, elles sont disponibles dans le panneau "Ressource Details" (Détails des ressources) de l'explorateur Kubernetes.

Afficher les métadonnées des ressources dans le panneau "Resource Details" (Détails des ressources) disponible dans la seconde moitié de l'explorateur Kubernetes

Options Skaffold

  • Skaffold configuration (Configuration Skaffold) : sélectionne un fichier de configuration skaffold.yaml. Sera automatiquement détecté si vous avez un skaffold.yaml dans votre projet.
  • Deployment profile (Profil de déploiement) : permet de sélectionner un profil parmi les options disponibles configurées dans le 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 est déployée. Si le contexte de déploiement n'est pas spécifié, le comportement par défaut est de déployer dans le contexte de votre système actuel, le cas échéant.

    Si vous préférez ne pas effectuer de déploiement dans le contexte actuel, dans la section "Déploiement" des paramètres d'exécution/de débogage, vous pouvez choisir l'une des options suivantes :

    • Déployer localement sur un cluster Minikube : démarre un cluster Minikube géré par Cloud Code pour exécuter votre application et l'arrêter une fois le déploiement terminé. Si un cluster Minikube est déjà en cours d'exécution, Cloud Code utilise le cluster Minikube existant pour le déploiement.
    • Changer de contexte et déployer : modifie le contexte actuel de votre système en fonction du 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.

Personnaliser votre configuration de lancement

Pour configurer le fonctionnement de votre application, vous pouvez personnaliser votre fichier skaffold.yaml.

Vous pouvez également configurer votre lancement dans vos configurations d'exécution/de débogage. Pour modifier vos configurations, accédez à Run > Edit configurations (Exécuter > Modifier les configurations).

Afficher le fichier YAML distant

Pour afficher le fichier YAML d'une ressource de votre cluster, directement depuis l'explorateur Kubernetes. Accédez à une ressource dans l'explorateur Kubernetes, telle qu'un pod, effectuez un clic droit sur le nom de la ressource, puis sélectionnez View Remote YAML (Afficher le fichier YAML distant).

Le fichier YAML correspondant à la ressource spécifiée s'ouvre dans un nouvel onglet de l'éditeur.

Affichez le fichier YAML d'un pod en effectuant un clic droit sur son libellé dans l'explorateur Kubernetes et en choisissant "Afficher le fichier YAML distant".

Afficher les journaux

Vous pouvez diffuser et afficher les journaux des ressources Kubernetes dans la console de l'explorateur Kubernetes afin de surveiller leur progression.

Une fois que votre application est compilée et qu'elle s'exécute en mode normal ou en mode de développement, vous avez la possibilité de surveiller dans votre IDE les journaux qu'elle diffuse.

Afficher des journaux en continu depuis l'application Java Hello World

Vous pouvez également afficher les journaux d'un service spécifique en accédant à l'explorateur Kubernetes.

Pour sélectionner la ressource dont vous souhaitez afficher les journaux, par exemple un pod, un déploiement ou un service, procédez comme suit:

  1. Faites un clic droit sur la ressource, puis sélectionnez Stream Logs (Diffuser les journaux). Vous pouvez également diffuser les journaux de conteneurs individuels s'exécutant dans des pods.

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

Pour afficher l'état des ressources de votre déploiement, procédez comme suit:

  • États des pods, des déploiements et des nœuds : les libellés de ces ressources Kubernetes sont accompagnés d'un symbole coloré indiquant leur état : échec (rouge), démarrage/arrêt/avertissement (jaune), état opérationnel (vert).

    Une coche verte à côté du libellé du pod indique l'état opérationnel

  • Description des ressources déployées: vous pouvez exécuter une commande kubectl describe sur vos ressources déployées pour afficher leurs détails. Pour ce faire, effectuez un clic droit et sélectionnez Décrire.

    Option de description disponible en effectuant un clic droit sur une ressource appropriée dans le panneau de l'explorateur Kubernetes, puis en sélectionnant "Décrire"

Lancer un terminal

Pour les pods et les conteneurs, vous pouvez ouvrir un terminal interactif en effectuant un clic droit sur le pod ou le conteneur, puis en sélectionnant Obtenir le terminal.

Ouvrir un terminal interactif

Actions spécifiques sur les ressources

L'explorateur Kubernetes affiche les clusters, les espaces de noms, les nœuds, les charges de travail (déploiements, ensembles d'instances dupliquées, pods et conteneurs), les services et les entrées, les configurations (secrets et mappages de configuration, par exemple) et le stockage (volumes). L'explorateur Kubernetes vous permet d'effectuer des actions uniques sur certaines de ces ressources.

Vous pouvez accéder à l'explorateur Kubernetes depuis le panneau latéral ou cliquer sur Tools > Cloud Code > Kubernetes > View Cluster Explorer (Outils > Cloud Code > Kubernetes > Afficher l'explorateur de cluster).

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

Pour afficher les détails des ressources déployées, effectuez un clic droit sur un libellé de ressource dans l'explorateur Kubernetes, puis cliquez sur Décrire.

Pour accéder à la description d'une ressource, effectuez un clic droit sur son nom dans le panneau de l'explorateur Kubernetes, puis choisissez "Describe" (Décrire).

Clusters

  • Ajouter un cluster Google Kubernetes Engine:ajoutez un cluster GKE Standard ou Autopilot existant, ou créez-en un en cliquant sur + Ajouter un cluster GKE dans l'explorateur Kubernetes.

La boîte de dialogue "Ajouter un cluster" s'affiche. Vous pouvez choisir le projet et le cluster que vous souhaitez utiliser, ou créer un cluster.

Une fois que vous avez terminé, cliquez sur OK, et accédez au cluster de votre choix et à ses ressources sous-jacentes via l'explorateur Kubernetes.

Ajouter un cluster GKE dans la boîte de dialogue de l'explorateur Kubernetes avec des champs pour les noms de projets et de clusters

  • Définir en tant que contexte actif : définissez le cluster spécifié comme actif, de sorte que le contexte kubectl que vous avez configuré puisse accéder à ce cluster par défaut.

    Définir un cluster en tant que contexte actif avec l'explorateur Kubernetes

L'explorateur Kubernetes s'actualise automatiquement, et le symbole Kubernetes s'affiche à côté du cluster approprié.

Si plusieurs contextes sont configurés pour un cluster, vous pouvez choisir l'un des contextes disponibles pour le définir comme contexte actuel.

Choisir et définir un cluster actif dans une liste de plusieurs contextes avec l'explorateur Kubernetes

Espaces de noms

  • Définir en tant que contexte actif : définissez un espace de noms comme actif, de sorte que le contexte kubectl que vous avez configuré puisse accéder à cet espace de noms par défaut.

    Définir l'espace de noms comme contexte actuel à l'aide du menu contextuel

Si cette action aboutit, l'explorateur Kubernetes s'actualise automatiquement et un astérisque s'affiche à côté de l'espace de noms pour indiquer qu'il fait partie du contexte actuel.

Notez qu'un contexte Kubernetes est un raccourci vous permettant d'accéder rapidement à un espace de noms de votre cluster. Les contextes sont normalement créés automatiquement lorsque vous démarrez un minikube ou un cluster GKE. Si l'option Définir comme contexte actuel ne s'affiche pas pour un espace de noms donné et que vous souhaitez créer un contexte pour celui-ci, utilisez la commande kubectl config set-context dans votre terminal afin de définir un contexte avec le cluster, l'utilisateur et l'espace de noms de votre choix.

Pods

  • Afficher les journaux:affichez les journaux d'un pod dans la console de l'explorateur Kubernetes.
  • Ouvrir le terminal : obtenez un terminal pour un pod dans la console Kubernetes Explorer.

    Par ailleurs, les libellés de pods en cours d'exécution sont associés à des marques d'état colorées :

    • Rouge : le pod a échoué
    • Jaune : le pod démarre ou se termine
    • Vert : le pod est opérationnel et en cours d'exécution
Une coche verte à côté de l'état opérationnel des pods

Conteneurs

  • Afficher les journaux:affichez les journaux d'un conteneur dans la console de l'explorateur Kubernetes.
  • Obtenir un terminal:obtenez le terminal d'un conteneur dans la console de l'explorateur Kubernetes.
Diffuser les journaux d'un conteneur à l'aide de son menu contextuel pour générer des journaux dans la console de l'explorateur Kubernetes

Déploiements

  • Afficher les journaux:affichez les journaux d'un déploiement dans la console de l'explorateur Kubernetes.

    Les déploiements en direct présentent des marques d'état colorées situées à côté de leurs libellés et du nombre d'instances dupliquées actives/totales :

    • Jaune : le déploiement ne présente pas de disponibilité minimale ni de problèmes d'image.
    • Vert : le déploiement est opérationnel et sa disponibilité minimale.
Icônes de déploiement vertes indiquant l'état opérationnel

Nœuds

Les nœuds de votre cluster sont signalés par des marques d'état colorées situées à côté de leurs noms :

  • Jaune : le nœud présente un problème de ressource, au niveau de la mémoire ou de la disponibilité du disque.
  • Vert : le nœud est opérationnel.

Définitions de ressources personnalisées

L'explorateur Kubernetes va répertorier toutes les définitions de ressources personnalisées (CRD) installées et disponibles sur votre cluster :

Liste des définitions de ressources personnalisées dans l'explorateur

Étapes suivantes

Obtenir de l'aide

Pour envoyer des commentaires ou signaler un problème dans votre IDE IntelliJ, accédez à Outils > Cloud Code > Aide / À propos > Envoyer des commentaires ou signaler un problème pour signaler un problème sur GitHub, ou posez une question sur Stack Overflow.