Déployer une application Kubernetes à l'aide du développement à distance

Cette page explique comment démarrer rapidement avec Cloud Code pour VS Code à l'aide d'un environnement de développement distant dans Cloud Shell.

Dans ce guide de démarrage rapide, vous allez ignorer la configuration et cloner un projet dans votre espace de travail de développement à distance en cliquant sur un bouton, créer un cluster, exécuter une application Kubernetes sur ce cluster, déboguer votre code en cours d'exécution, afficher les journaux de votre application active, et également connecter un terminal à votre conteneur en cours d'exécution.

Avant de commencer

Pour configurer les ressources de soutien et accéder à Cloud Shell, l'environnement de développement distant sur Google Cloud que vous utilisez dans ce guide de démarrage rapide et qui se trouve dans VS Code, procédez comme suit :

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Make sure that billing is enabled for your Google Cloud project.

  4. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  5. Make sure that billing is enabled for your Google Cloud project.

  6. Installez Visual Studio Code sur votre ordinateur, si ce n'est pas déjà fait.
  7. Installez l'extension Visual Studio Code Remote - SSH.
  8. Installez Git. Git est nécessaire pour copier des exemples sur votre ordinateur.
  9. Installez le plug-in Cloud Code si ce n'est pas déjà fait.

Lancer Cloud Code

Lorsque vous ouvrez Visual Studio Code connecté à un environnement de développement à distance dans Cloud Shell, l'environnement comporte tous les outils dont vous avez besoin pour développer des applications Kubernetes.

  1. Pour commencer à travailler dans votre environnement de développement à distance, sélectionnez le langage de votre choix pour le projet cloné, puis cliquez sur le bouton Open with Cloud Code (Ouvrir avec Cloud-Code) :

    VS Code lance et clone un projet dans votre espace de travail de développement à distance.

  2. Si vous n'avez pas encore effectué les configurations préalables, vous êtes invité à le faire.

Créer un cluster GKE

Pour créer un cluster Google Kubernetes Engine (GKE) standard, procédez comme suit :

  1. Cliquez sur Cloud Code et développez Kubernetes. .

  2. Cliquez sur add (ajouter). Add a Cluster to the KubeConfig (Ajouter un cluster à KubeConfig), puis cliquez sur Google Kubernetes moteur dans le menu Choix rapide.

  3. Lorsque vous êtes invité à activer container.googleapis.com, sélectionnez Yes (Oui).

  4. Cliquez sur + Créer un cluster GKE.

  5. Choisissez Standard comme type de cluster.

  6. Cliquez sur Ouvrir pour autoriser Cloud Code à ouvrir la console Google Cloud.

  7. Dans la console Google Cloud, utilisez le projet que vous avez créé et définissez la zone sur us-central1-a et définissez le nom du cluster sur my-first-cluster.

  8. Cliquez sur Créer. La création du cluster prend quelques minutes.

  9. Une fois le cluster créé, dans le menu Quick pick (Sélection rapide), cliquez sur actualiser Actualiser.

  10. Lorsque le nom de votre nouveau cluster apparaît dans la liste, cliquez dessus. Votre nouveau cluster est ajouté à la configuration et configuré en tant que contexte actif.

Exécuter et afficher votre application

Maintenant que vous êtes prêt, vous pouvez exécuter votre application et l'afficher en direct. Cloud Code surveille les modifications apportées à votre système de fichiers afin que vous puissiez modifier et exécuter à nouveau votre application quasiment en temps réel.

Pour exécuter votre application, procédez comme suit :

  1. Dans la barre d'état Cloud Code, cliquez sur le nom du projet actif.

    Nom du projet actif dans la barre d'état

  2. Dans le menu de sélection rapide qui s'affiche, sélectionnez Exécuter sur Kubernetes.

  3. Confirmez si vous souhaitez utiliser le contexte actif du cluster ou basculer vers un autre.

  4. Si vous y êtes invité, choisissez un registre d'images vers lequel transférer les images. Si vous créez un registre d'images à l'aide de gcr.io/PROJECT_ID, assurez-vous qu'il se trouve dans le même projet que votre cluster.

    Une fenêtre de résultat s'affiche, dans laquelle vous pouvez suivre la progression de votre application en cours d'exécution. Un flux en direct des journaux des pods en cours d'exécution s'affiche également dans la sortie du terminal.

  5. Une fois votre application exécutée sur Kubernetes, la fenêtre de résultat affiche une adresse IP. Pour utiliser cette adresse IP associée afin d'accéder à votre application, appuyez sur Ctrl/Cmd et cliquez sur l'adresse.

Conseils de dépannage

Si vous utilisez un cluster préexistant, définissez-le comme actif et obtenez les identifiants du cluster, procédez comme suit:

  1. Cliquez sur Cloud Code et développez Kubernetes. .

  2. Effectuez un clic droit sur le nom de votre cluster, puis cliquez sur Définir comme cluster actif.

Déboguer votre application

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

  1. Dans la barre d'état Cloud Code, cliquez sur le nom du projet actif.

    Nom du projet actif dans la barre d'état

  2. Dans le menu de sélection rapide qui s'affiche, sélectionnez Debug on Kubernetes (Déboguer sur Kubernetes).

  3. Si vous y êtes invité, authentifiez vos identifiants pour exécuter et déboguer une application localement.

  4. Si vous y êtes invité, confirmez si vous souhaitez utiliser le contexte actuel du cluster ou passer à un autre.

    Cloud Code utilise les configurations cloudcode.kubernetes de votre fichier .vscode/launch.json pour exécuter votre application et lui associer une session de débogage.

    Cloud Code crée vos conteneurs, les transfère dans le registre, applique les configurations Kubernetes au cluster et renvoie l'adresse IP que vous pouvez utiliser pour parcourir votre application active.

  5. Avant d'associer votre session de débogage, vous êtes invité à confirmer ou à saisir le répertoire du conteneur distant dans lequel se trouve le programme à déboguer, ou à appuyer sur ÉCHAP pour ignorer le débogage du conteneur.

  6. Pour ajouter un point d'arrêt à la ligne 9, ouvrez src/app.js, puis cliquez dans la marge de l'éditeur.

    Les cercles remplis de rouge indiquent les points d'arrêt actifs, tandis que les cercles vides gris indiquent les points d'arrêt désactivés. Pour un contrôle plus précis des points d'arrêt, vous pouvez utiliser la section "Points d'arrêt" de la vue "Débogage" de VS Code.

    Section "Points d'arrêt" dans le panneau de gauche de la page de débogage, qui permet d'ajouter, de supprimer et de désactiver des points d'arrêt

    Lorsque vous envoyez une nouvelle requête à votre application, le débogueur se met en pause au premier point d'arrêt actif.

    Dans l'exemple suivant, sous Local dans la section Variables, notez que la valeur de res._contentLength; pour Hello, world! est 13.

    Application interrompue au niveau du point d'arrêt, sections variables et pile des appels remplies avec des valeurs couvertes

  7. Modifiez la chaîne envoyée n° 8 à Hello, goodbye!, puis redémarrez. l'action Debug on Kubernetes (Déboguer sur Kubernetes).

    Une fois l'application recompilée et redéployée, notez la valeur mise à jour de res._contentLength.

    Application interrompue au niveau du point d'arrêt avec des valeurs mises à jour

Une fois votre session de débogage lancée, le volet Sessions de développement affiche la vue structurée de la journalisation. Lorsqu'une tâche commence, elle apparaît avec une demi-cercle tournant progress_activity

Si une tâche aboutit, une coche check_circle s'affiche à côté de l'étape correspondante.

Pour afficher les détails d'une étape, cliquez dessus dans la section Volet Session de développement. Le volet "Résultat" affiche l'étape dans la sortie de la journalisation.

Ouvrir un terminal dans votre conteneur

Pour ouvrir un terminal dans votre conteneur, procédez comme suit :

  1. Cliquez sur Cloud Code, puis développez la section Kubernetes.

  2. Développez les sections suivantes:

    • Section de votre cluster préféré
    • Section Espaces de noms, puis section de votre espace de noms préféré
    • La section Pods, puis la section du pod de votre choix
    • Section Conteneurs

      Pods Cloud Code

  3. Cliquez avec le bouton droit sur le conteneur dans lequel vous souhaitez ouvrir un terminal, puis cliquez sur Get Terminal (Obtenir un terminal).

    Un terminal s'ouvre. Vous avez désormais accès à une interface système conteneur en cours d'exécution.

Effectuer un nettoyage

Une fois l'application arrêtée, toutes les ressources Kubernetes déployées pendant l'exécution sont automatiquement supprimés.

Pour éviter que les autres ressources utilisées dans ce démarrage rapide soient facturées sur votre compte, veillez à supprimer le projet ou le cluster que vous avez créés si vous souhaitez réutiliser le projet.

Pour supprimer le cluster :

  1. Cliquez sur . Cloud Code, puis développez l'explorateur Kubernetes.
  2. Maintenez le pointeur sur le nom de votre cluster, puis cliquez sur open_in_new Ouvrez-les dans la console Google Cloud.
  3. Cliquez sur Supprimer et de nouveau sur Supprimer.

Pour supprimer votre projet (et les ressources associées, y compris les clusters) :

  1. In the Google Cloud console, go to the Manage resources page.

    Go to Manage resources

  2. In the project list, select the project that you want to delete, and then click Delete.
  3. In the dialog, type the project ID, and then click Shut down to delete the project.

Étape suivante