Tutoriel : Exécuter et déboguer localement avec Bridge to Kubernetes sur Visual Studio
Dans ce tutoriel, vous apprenez à rediriger le trafic entre votre cluster Kubernetes et votre ordinateur de développement. Ce tutoriel utilise Bridge to Kubernetes et Visual Studio pour déboguer un service. Pour utiliser Visual Studio Code, consultez Exécuter et déboguer localement avec Bridge to Kubernetes et VS Code.
Pour en savoir plus sur Bridge to Kubernetes, consultez Comment fonctionne Bridge to Kubernetes.
Dans ce tutoriel, vous allez apprendre à :
- Vous connecter à votre cluster avec Bridge to Kubernetes.
- Router les demandes vers un service exécuté localement pour le développement.
- Déboguer un service en cours d’exécution sur votre machine locale.
Prérequis
- Un cluster Kubernetes. Vous pouvez en créer un dans le portail Azure. Si vous n’avez pas d’abonnement Azure, vous pouvez créer un compte gratuitement.
- L’exécutable kubectl installé sur votre système.
- Visual Studio 2019 version 16.7 ou ultérieure s’exécutant sur Windows 10 ou version ultérieure, ou Visual Studio 2022.
- L’extension Bridge to Kubernetes pour Visual Studio 2019 ou l’extension Bridge to Kubernetes pour Visual Studio 2022.
- Une application avec des problèmes à résoudre, comme cet exemple d’application TODO.
Configurer un service
Ce tutoriel utilise Bridge to Kubernetes avec un exemple d’application todo simple sur n’importe quel cluster Kubernetes.
L’exemple d’application a un front-end pour l’interaction et un back-end qui fournit un stockage persistant.
Ouvrez une fenêtre Bash et vérifiez que votre cluster est disponible et prêt. Ensuite, définissez le contexte sur ce cluster.
kubectl cluster-info kubectl config use-context <kubernetes-cluster>
Clonez le dépôt de l’exemple.
git clone https://github.com/Azure/Bridge-To-Kubernetes
Remplacez le répertoire par samples/todo-app, puis créez un espace de noms pour l’exemple.
kubectl create namespace todo-app
Appliquez le manifeste de déploiement :
kubectl apply -n todo-app -f deployment.yaml
Ce déploiement simple expose le front-end avec un service de type
LoadBalancer
. Attendez que tous les pods soient en cours d’exécution et que l’IP externe du servicefrontend
soit disponible.Si vous testez avec MiniKube, utilisez
minikube tunnel
pour résoudre une IP externe. Si vous utilisez AKS ou un autre fournisseur Kubernetes basé sur le cloud, une IP externe est automatiquement attribuée.Utilisez la commande suivante pour monitorer le service
frontend
jusqu’à ce qu’il soit opérationnel :kubectl get service -n todo-app frontend --watch NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE frontend LoadBalancer 10.0.245.78 10.73.226.228 80:31910/TCP 6m26s
Se connecter au cluster
Ouvrez Visual Studio. Dans la fenêtre Démarrer, sélectionnez Continuer sans code.
Sélectionnez Ouvrir>Projet/solution, puis recherchez le projet samples\todo-app\database-api\databaseApi.csproj et sélectionnez Ouvrir.
Dans le projet, sélectionnez Bridge to Kubernetes dans les paramètres de lancement, comme indiqué ici :
Sélectionnez le bouton Démarrer à côté de Bridge to Kubernetes. Dans la boîte de dialogue Créer un profil pour Bridge to Kubernetes, entrez les valeurs suivantes :
- Sélectionnez le nom de votre cluster.
- Sélectionnez todo-app pour votre espace de noms.
- Sélectionnez database-api pour la redirection du service.
- Sélectionnez la même URL que celle que vous avez utilisée précédemment pour lancer votre navigateur.
Si vous souhaitez une exécution isolée, sélectionnez Activer l’isolement du routage. Si vous activez l’isolement du routage, les autres utilisateurs du cluster ne sont pas affectés par vos changements. Le mode Isolement route vos demandes vers la copie de chacun de vos services affectés. Il route le reste du trafic normalement. Pour plus d’informations, consultez Comment fonctionne Bridge to Kubernetes.
Sélectionnez Enregistrer et déboguer pour enregistrer vos changements.
Note
EndpointManager vous invite à autoriser des privilèges élevés sur votre fichier hosts.
Votre ordinateur de développement se connecte au cluster. La barre d’état indique que vous êtes connecté au service
database-api
.Essayez d’entrer des tâches et de les marquer comme terminées.
Sélectionnez Déboguer>Arrêter le débogage pour arrêter le débogage. Le raccourci de cette action est Maj+F5, ou utilisez le bouton Arrêter le débogage dans la barre d’outils.
Bridge to Kubernetes redirige tout le trafic du service database-api. Il le redirige vers la version de votre application qui se trouve sur votre ordinateur de développement. Bridge to Kubernetes reroute également tout le trafic sortant de l’application vers votre cluster Kubernetes.
Notes
Par défaut, l’arrêt de la tâche de débogage déconnecte également votre ordinateur de développement de votre cluster Kubernetes. Pour changer ce comportement, sélectionnez Outils>Options, puis Outils de débogage Kubernetes. Définissez Déconnecter après le débogage sur False.
Après la mise à jour de ce paramètre, votre ordinateur de développement reste connecté quand vous arrêtez et démarrez le débogage. Pour déconnecter votre ordinateur de développement de votre cluster, cliquez sur le bouton Déconnecter de la barre d’outils.
Définir un point d'arrêt
Dans cette section, vous définissez un point d’arrêt dans votre service.
Dans l’Explorateur de solutions, sélectionnez MongoHelper.cs pour ouvrir le fichier dans l’éditeur. Si vous ne voyez pas l’Explorateur de solutions, sélectionnez Afficher>Explorateur de solutions.
Définissez votre curseur sur la première ligne du corps de la méthode CreateTask. Sélectionnez ensuite Déboguer>Activer/désactiver le point d’arrêt pour définir un point d’arrêt.
Le raccourci de cette action est F9.
Sélectionnez le bouton Démarrer à côté de Bridge to Kubernetes, comme vous l’avez fait dans la section précédente. Le débogage commence par les valeurs que vous avez entrées précédemment.
Dans le navigateur qui s’ouvre, entrez une valeur dans les todos, puis sélectionnez Entrée. Le code atteint le point d’arrêt que vous avez entré. Quand vous effectuez des tâches de débogage réelles, vous pouvez utiliser les options de débogage pour parcourir le code.
Sélectionnez Déboguer>Arrêter le débogage pour arrêter le débogage.
Pour supprimer le point d’arrêt, sélectionnez cette ligne, puis sélectionnez Déboguer>Activer/désactiver le point d’arrêt ou sélectionnez F9.
Modifier le profil de lancement
Si vous devez changer la façon dont Bridge to Kubernetes se connecte à votre cluster, dans cette section, modifiez les paramètres du profil de lancement.
Cliquez sur la flèche à côté du bouton Bridge to Kubernetes, puis cliquez sur Propriétés de débogage de databaseApi.
Cliquez sur le lien Modifier le profil de Bridge to Kubernetes dans la boîte de dialogue Profils de lancement.
Nettoyer les ressources
Si vous avez utilisé l’exemple d’application todo pour ce tutoriel, vous pouvez le supprimer de votre cluster à partir du portail Azure. Si vous avez cloné ce dépôt localement, vous pouvez le supprimer manuellement.
Étapes suivantes
Pour en savoir plus sur Bridge to Kubernetes, consultez Comment fonctionne Bridge to Kubernetes.
Pour plus d’informations sur les fonctionnalités prises en charge et obtenir une feuille de route pour Bridge to Kubernetes, consultez Feuille de route Bridge to Kubernetes.
Pour savoir comment connecter votre ordinateur de développement à un cluster avec Visual Studio Code, consultez cet article :