Samouczek: uruchamianie i debugowanie lokalnie przy użyciu narzędzia Bridge to Kubernetes w programie Visual Studio
Z tego samouczka dowiesz się, jak przekierowywać ruch między klastrem Kubernetes i komputerem dewelopera. W tym samouczku do debugowania usługi jest używany program Bridge to Kubernetes i Visual Studio. Aby użyć programu Visual Studio Code, zobacz Run and debug locally with Bridge to Kubernetes with VS Code (Uruchamianie i debugowanie lokalnie za pomocą narzędzia Bridge to Kubernetes z programem VS Code).
Aby dowiedzieć się więcej o rozwiązaniu Bridge to Kubernetes, zobacz How Bridge to Kubernetes works (Jak działa most na platformie Kubernetes).
Z tego samouczka dowiesz się, jak wykonywać następujące czynności:
- Połączenie do klastra za pomocą rozwiązania Bridge to Kubernetes.
- Kierowanie żądań do lokalnie uruchomionej usługi na potrzeby programowania.
- Debugowanie uruchomionej usługi na komputerze lokalnym.
Wymagania wstępne
- Klaster Kubernetes. Możesz go utworzyć w witrynie Azure Portal. Jeśli nie masz subskrypcji platformy Azure, możesz bezpłatnie utworzyć konto.
- Plik wykonywalny kubectl zainstalowany w systemie.
- Program Visual Studio 2019 w wersji 16.7 lub nowszej z systemem Windows 10 lub nowszym lub Visual Studio 2022.
- Rozszerzenie Bridge to Kubernetes dla programu Visual Studio 2019 lub Bridge to Kubernetes dla programu Visual Studio 2022.
- Aplikacja do rozwiązywania problemów, taka jak ta przykładowa aplikacja TODO.
Konfigurowanie usługi
W tym samouczku użyto rozwiązania Bridge to Kubernetes do pracy z prostą przykładową aplikacją do wykonania w dowolnym klastrze Kubernetes.
Przykładowa aplikacja ma fronton do interakcji i zaplecza, który zapewnia magazyn trwały.
Otwórz okno powłoki Bash i sprawdź, czy klaster jest dostępny i gotowy. Następnie ustaw kontekst na ten klaster.
kubectl cluster-info kubectl config use-context <kubernetes-cluster>
Sklonuj przykładowe repozytorium.
git clone https://github.com/Azure/Bridge-To-Kubernetes
Zmień katalog na samples/todo-app , a następnie utwórz przestrzeń nazw dla przykładu.
kubectl create namespace todo-app
Zastosuj manifest wdrożenia:
kubectl apply -n todo-app -f deployment.yaml
To proste wdrożenie uwidacznia fronton przy użyciu usługi typu
LoadBalancer
. Poczekaj, aż wszystkie zasobniki będą uruchomione, a zewnętrzny adres IPfrontend
usługi stanie się dostępny.Jeśli testujesz za pomocą aplikacji MiniKube, użyj polecenia
minikube tunnel
, aby rozpoznać zewnętrzny adres IP. Jeśli używasz usługi AKS lub innego dostawcy kubernetes opartego na chmurze, zewnętrzny adres IP jest przypisywany automatycznie.Użyj następującego polecenia, aby monitorować usługę
frontend
, aby zaczekać na jej uruchomienie: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
Połączenie do klastra
Otwórz program Visual Studio. W oknie Wprowadzenie wybierz pozycję Kontynuuj bez kodu.
Wybierz pozycję Otwórz>projekt/rozwiązanie, a następnie znajdź projekt samples\todo-app\database-api\databaseApi.csproj i wybierz pozycję Otwórz.
W projekcie wybierz pozycję Bridge to Kubernetes z ustawień uruchamiania, jak pokazano poniżej:
Wybierz przycisk Start obok pozycji Mostek do platformy Kubernetes. W oknie dialogowym Tworzenie profilu bridge to Kubernetes wprowadź następujące wartości:
- Wybierz nazwę klastra.
- Wybierz pozycję todo-app dla swojej przestrzeni nazw.
- Wybierz pozycję database-api dla usługi , aby przekierować.
- Wybierz ten sam adres URL, który został wcześniej użyty do uruchomienia przeglądarki.
Jeśli chcesz uruchomić izolację, wybierz pozycję Włącz izolację routingu. Jeśli włączysz izolację routingu, zmiany nie mają wpływu na inne osoby korzystające z klastra. Tryb izolacji kieruje żądania do kopii każdej usługi, której dotyczy problem. Kieruje on inny ruch normalnie. Aby uzyskać więcej informacji, zobacz How Bridge to Kubernetes Works (Jak działa mostek do platformy Kubernetes).
Wybierz pozycję Zapisz i debuguj , aby zapisać zmiany.
Uwaga
Menedżer punktów końcowych wyświetla monit o zezwolenie na uprawnienia z podwyższonym poziomem uprawnień do pliku hostów .
Komputer deweloperów łączy się z klastrem. Pasek stanu pokazuje, że masz połączenie z usługą
database-api
.Spróbuj wprowadzić zadania i oznacz je jako ukończone.
Wybierz pozycję Debuguj Zatrzymaj>debugowanie, aby zatrzymać debugowanie. Skrótem do tej akcji jest Shift+F5 lub użyj przycisku Zatrzymaj debugowanie na pasku narzędzi.
Mostek do platformy Kubernetes przekierowuje cały ruch dla usługi database-api . Nastąpi przekierowanie do wersji aplikacji na komputerze dewelopera. Mostek do platformy Kubernetes kieruje również cały ruch wychodzący z aplikacji z powrotem do klastra Kubernetes.
Uwaga
Domyślnie zatrzymanie zadania debugowania również rozłącza komputer deweloperów z klastra Kubernetes. Aby zmienić to zachowanie, wybierz pozycję Narzędzia>Opcje, a następnie wybierz pozycję Narzędzia debugowania Kubernetes. Ustaw wartość Rozłącz po debugowaniu na false.
Po zaktualizowaniu tego ustawienia komputer deweloperzy pozostaje połączony po zatrzymaniu i rozpoczęciu debugowania. Aby odłączyć komputer deweloperów od klastra, kliknij przycisk Rozłącz na pasku narzędzi.
Ustawianie punktu przerwania
W tej sekcji ustawisz punkt przerwania w usłudze.
W Eksplorator rozwiązań wybierz pozycję MongoHelper.cs, aby otworzyć plik w edytorze. Jeśli nie widzisz Eksplorator rozwiązań, wybierz pozycję Widok> Eksplorator rozwiązań.
Ustaw kursor w pierwszym wierszu treści metody CreateTask . Następnie wybierz pozycję Debuguj>przełącz punkt przerwania, aby ustawić punkt przerwania.
Skrótem do tej akcji jest F9.
Wybierz przycisk Start obok pozycji Mostek do platformy Kubernetes, tak jak w poprzedniej sekcji. Debugowanie rozpoczyna się od wprowadzonych wcześniej wartości.
W przeglądarce, która zostanie otwarta, wprowadź wartość w todos i wybierz klawisz Enter. Kod dociera do wprowadzonego punktu przerwania. Podczas wykonywania rzeczywistych zadań debugowania można użyć opcji debugowania, aby przejść przez kod.
Wybierz pozycję Debuguj Zatrzymaj>debugowanie, aby zatrzymać debugowanie.
Aby usunąć punkt przerwania, wybierz ten wiersz, a następnie wybierz pozycję Debuguj>przełącz punkt przerwania lub wybierz klawisz F9.
Edytowanie profilu uruchamiania
Jeśli musisz zmienić sposób łączenia rozwiązania Bridge to Kubernetes z klastrem, w tej sekcji edytujesz ustawienia profilu uruchamiania.
Kliknij strzałkę obok przycisku Mostek do platformy Kubernetes , a następnie kliknij pozycję databaseApi Debug Properties (Właściwości debugowania bazy danychApi).
Kliknij link Edytuj profil bridge to Kubernetes w oknie dialogowym Uruchamianie profilów.
Czyszczenie zasobów
Jeśli na potrzeby tego samouczka użyto przykładowej aplikacji do wykonania, możesz usunąć ją z klastra przy użyciu witryny Azure Portal. Jeśli sklonujesz to repozytorium lokalnie, możesz usunąć je ręcznie.
Następne kroki
Dowiedz się więcej o rozwiązaniu Bridge to Kubernetes na stronie How Bridge to Kubernetes works (Jak działa most na platformie Kubernetes).
Aby uzyskać informacje na temat obsługiwanych funkcji i planu działania dla rozwiązania Bridge to Kubernetes, zobacz Przewodnik po mostku na platformę Kubernetes.
Aby dowiedzieć się, jak połączyć komputer dewelopera z klastrem przy użyciu programu Visual Studio Code, zapoznaj się z tym artykułem: