Déployer une application Kubernetes avec Cloud Code for VS Code

Cette page vous explique comment démarrer rapidement avec Cloud Code.

Vous allez configurer une nouvelle application Kubernetes à l'aide d'un exemple d'application "Hello World", créer un cluster, exécuter votre application sur ce cluster, déboguer votre code en cours d'exécution, afficher les journaux de votre application active et connecter un terminal à votre conteneur en cours d'exécution.

Avant de commencer

  1. Connectez-vous à votre compte Google Cloud. Si vous débutez sur Google Cloud, créez un compte pour évaluer les performances de nos produits en conditions réelles. Les nouveaux clients bénéficient également de 300 $ de crédits gratuits pour exécuter, tester et déployer des charges de travail.
  2. Dans Google Cloud Console, sur la page de sélection du projet, sélectionnez ou créez un projet Google Cloud.

    Accéder au sélecteur de projet

  3. Vérifiez que la facturation est activée pour votre projet Google Cloud.

  4. Activez l'API Google Kubernetes Engine

    Activer l'API

  5. Dans Google Cloud Console, sur la page de sélection du projet, sélectionnez ou créez un projet Google Cloud.

    Accéder au sélecteur de projet

  6. Vérifiez que la facturation est activée pour votre projet Google Cloud.

  7. Activez l'API Google Kubernetes Engine

    Activer l'API

  8. Installez Git. Git est nécessaire pour copier des exemples sur votre ordinateur.
  9. Si ce n'est pas déjà fait, installez le plug-in Cloud Code.

Créer une application

  1. Ouvrez la palette de commandes (appuyez sur Ctrl/Cmd+Shift+P ou cliquez sur Affichage > Palette de commandes), puis exécutez Cloud Code: Nouvelle application.

  2. Sélectionnez Kubernetes Application (Application Kubernetes).

  3. Choisissez une application Hello World dans la langue de votre choix.

    Par exemple, si vous choisissez Node.js: Hello World, vous créez une application Hello World Node.js de démarrage.

  4. Enregistrez la nouvelle application.

    Une notification confirme que votre application a été créée et celle-ci s'ouvre dans une nouvelle fenêtre.

Créer un cluster GKE

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

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

  2. Cliquez sur add Add a Cluster to the KubeConfig (Ajouter un cluster à KubeConfig), puis sur Google Kubernetes Engine dans le menu Quick pick (Sélection rapide).

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

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

  5. Choisissez Standard comme type de cluster.

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

  7. Dans la console Google Cloud, utilisez le projet que vous avez créé, définissez la zone sur us-central1-a et 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 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 réexécuter votre application en temps quasi 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 "Quick Pick" (Sélection rapide) qui s'affiche, sélectionnez Run on Kubernetes (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, puis cliquez sur l'adresse.

Conseils de dépannage

Si vous utilisez un cluster préexistant, procédez comme suit pour le définir comme étant actif et obtenir ses identifiants:

  1. Cliquez sur Cloud Code, puis développez la section 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 Quick Pick 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 en local.

  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 en ligne 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 démarrée, le volet Development sessions (Sessions de développement) affiche la vue de journalisation structurée. Lorsqu'une tâche commence, elle apparaît avec un demi-cercle en rotation progress_activity.

Si une tâche aboutit, une coche check_circle apparaît à côté de l'étape.

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

Ouvrez 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é
    • La section Espaces de noms, puis la section de l'espace de noms de votre choix
    • Dans la section Pods, puis dans celle de votre pod préféré
    • 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 maintenant accès à une interface système à l'intérieur du conteneur en cours d'exécution.

Effectuer un nettoyage

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

Pour éviter que les autres ressources utilisées dans ce guide de démarrage rapide soient facturées sur votre compte, veillez à supprimer le projet ou à supprimer le cluster que vous avez créé 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 Ouvrir 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. Dans la console Google Cloud, accédez à la page Gérer les ressources.

    Accéder à la page Gérer les ressources

  2. Dans la liste des projets, sélectionnez le projet que vous souhaitez supprimer, puis cliquez sur Supprimer.
  3. Dans la boîte de dialogue, saisissez l'ID du projet, puis cliquez sur Arrêter pour supprimer le projet.

Étapes suivantes