1. Wprowadzenie
W tym module zapoznasz się z technicznymi aspektami korzystania z interfejsu wiersza poleceń Gemini i serwera GKE Model Context Protocol (MCP) do zarządzania infrastrukturą. W tradycyjnym zarządzaniu GKE operatorzy ręcznie tłumaczą wymagania dotyczące infrastruktury na polecenia gcloud, a definicje aplikacji na pisemne pliki manifestu YAML. W tym module praktycznym przedstawiamy inne podejście: korzystanie z interaktywnego interfejsu, który łączy intencje wyrażone w języku naturalnym z technicznym wykonaniem w Google Kubernetes Engine (GKE). Ta zmiana jest częścią szerszego trendu w inżynierii platform, w którym nacisk przesuwa się z tworzenia sztywnych skryptów automatyzacji na zarządzanie inteligentnymi agentami, którzy mogą obsługiwać zniuansowane szczegóły operacji infrastrukturalnych.
Podstawowe pojęcia
- Inżynieria platformy: to praktyka tworzenia i utrzymywania wewnętrznych narzędzi i przepływów pracy, które umożliwiają programistom zarządzanie własną infrastrukturą bez konieczności bycia ekspertami w zakresie każdej bazowej usługi w chmurze. Celem jest zmniejszenie trudności technicznych przy zachowaniu spójności i bezpieczeństwa. Tworząc standardową ścieżkę postępowania, zespoły platformy zapewniają, że programiści aplikacji mogą bezpiecznie i szybko wdrażać aplikacje, a zespół platformy zachowuje kontrolę nad zarządzaniem i kosztami.
- Interfejs wiersza poleceń Gemini: interfejs wiersza poleceń, który umożliwia interakcję z modelami Gemini bezpośrednio z terminala. W przeciwieństwie do standardowego czatbota internetowego interfejs wiersza poleceń jest przeznaczony do działania w środowisku programistycznym, co ułatwia integrację AI z dotychczasowymi przepływami pracy opartymi na powłoce. Umożliwia to przekazywanie danych wyjściowych z innych poleceń bezpośrednio do modelu i wykonywanie instrukcji bez opuszczania środowiska terminala.
- Protokół kontekstu modelu (MCP): MCP to otwarty standard, który umożliwia modelowi AI łączenie się z określonymi narzędziami lub źródłami danych. Bez MCP model AI zna tylko dane, na których został wytrenowany, i nie ma dostępu do Twoich zasobów. Dzięki serwerowi GKE MCP interfejs wiersza poleceń Gemini może aktywnie wysyłać zapytania do interfejsu API projektu Google Cloud, sprawdzać stan klastrów i wykonywać polecenia w Twoim imieniu. Działa jako pomost między silnikiem wnioskowania modelu a rzeczywistym interfejsem GKE API.
Cele modułu
Po zakończeniu tej sesji będziecie w stanie:
- Skonfiguruj środowisko: otwórz Cloud Shell i uwierzytelnij rozszerzenie GKE MCP, aby umożliwić interfejsowi wiersza poleceń Gemini interakcję z zasobami Google Cloud.
- Projektowanie infrastruktury: korzystaj z interaktywnych promptów, aby określać optymalne konfiguracje klastrów na podstawie kosztów, nakładu pracy związanego z zarządzaniem i wymagań dotyczących zadań.
- Zarządzanie zasobami: generuj, sprawdzaj i wdrażaj pliki manifestu Kubernetes (wdrożenia, usługi itp.) za pomocą języka naturalnego.
- Analiza operacyjna: wykorzystaj możliwość agregowania logów i zdarzeń przez AI, aby zidentyfikować główną przyczynę niepowodzeń wdrożenia i zasugerować konkretne rozwiązania techniczne.
2. Konfiguracja projektu
Zanim interfejs wiersza poleceń Gemini będzie mógł wchodzić w interakcje z Twoimi zasobami, musisz prawidłowo skonfigurować środowisko Google Cloud. Ta konfiguracja zapewnia, że Twój projekt ma odpowiednie uprawnienia i że wszystkie niezbędne usługi backendu są gotowe do odbierania żądań od agenta AI.
Otwieranie Cloud Shell
W tym module użyjemy Cloud Shell, czyli środowiska terminala w przeglądarce udostępnianego przez Google Cloud. Używamy Cloud Shell, ponieważ jest on wstępnie skonfigurowany ze wszystkimi potrzebnymi narzędziami, w tym Google Cloud CLI (gcloud), kubectl i interfejsem wiersza poleceń Gemini, co pozwala zaoszczędzić czas na instalowanie ich na komputerze lokalnym.
- Otwórz konsolę Google Cloud.
- Spójrz na prawy górny nagłówek konsoli i kliknij przycisk Aktywuj Cloud Shell (wygląda jak wiersz poleceń terminala
>_). - U dołu okna przeglądarki otworzy się sesja terminala. Jeśli pojawi się taka prośba, kliknij Dalej.
Wybierz projekt
W terminalu Cloud Shell upewnij się, że pracujesz w odpowiednim projekcie.
- Wybierz istniejący projekt lub utwórz nowy specjalnie na potrzeby tego ćwiczenia w konsoli.
- Zanotuj identyfikator projektu. Możesz ustawić projekt w bieżącej powłoce, uruchamiając to polecenie:
gcloud config set project [YOUR_PROJECT_ID]
Włącz interfejsy API
Funkcje Kubernetes i AI nie są domyślnie włączone w przypadku nowych projektów. Włączenie tych interfejsów API inicjuje podstawowe usługi Google Cloud, które obsługują zarządzanie kontenerami, modele generatywne i scentralizowane rejestrowanie.
👉💻 Aby je włączyć, uruchom to polecenie w Cloud Shell. Może to potrwać minutę.
gcloud services enable \
container.googleapis.com \
generativelanguage.googleapis.com \
cloudresourcemanager.googleapis.com \
logging.googleapis.com
- container.googleapis.com::interfejs Google Kubernetes Engine API. Jest ona wymagana w przypadku wszystkich operacji na poziomie klastra, w tym tworzenia, aktualizowania i usuwania klastrów.
- generativelanguage.googleapis.com: interfejs API, który umożliwia interfejsowi wiersza poleceń Gemini komunikowanie się z dużymi modelami językowymi Gemini w celu generowania tekstu i wnioskowania.
- cloudresourcemanager.googleapis.com::wymagane, aby agent mógł sprawdzać metadane na poziomie projektu, weryfikować identyfikatory projektów i zarządzać uprawnieniami IAM.
- logging.googleapis.com: niezbędna do rozwiązywania problemów, ponieważ umożliwia serwerowi MCP pobieranie i analizowanie logów z kontenerów w przypadku wystąpienia błędów.
3. Konfigurowanie interfejsu wiersza poleceń Gemini
Cloud Shell domyślnie zawiera interfejs wiersza poleceń Gemini, co czyni go idealnym środowiskiem dla tego przepływu pracy. Pierwszym krokiem jest skonfigurowanie go tak, aby działał jako „agent”, który ma zarówno uprawnienia, jak i narzędzia wymagane do zarządzania środowiskiem GKE. Ten krok konfiguracji jest kluczowy, ponieważ ustanawia bezpieczne połączenie między logiką AI a rzeczywistą infrastrukturą w chmurze.
Uruchamianie interfejsu wiersza poleceń Gemini
W terminalu Cloud Shell utwórz nowy katalog roboczy i uruchom interfejs wiersza poleceń Gemini. Rozpocznie to sesję, w której możesz prowadzić ciągłą rozmowę z modelem. W przeciwieństwie do jednorazowych poleceń tryb interaktywny utrzymuje okno kontekstu, które zapamiętuje poprzednie instrukcje i stan projektu.
👉💻 Uruchom te polecenia:
mkdir -p ~/gke-lab
cd ~/gke-lab
gemini

Po wejściu do środka sprawdź podstawową świadomość narzędzia, aby upewnić się, że widzi ono Twoje otoczenie:
- 👉💬 Prompt:
Which Google Cloud project is currently active in this shell?
Może pojawić się prośba o potwierdzenie wykonania polecenia gcloud, którą możesz zaakceptować.
W każdej chwili możesz opuścić interfejs, wpisując /quit.
Uwaga: jeśli napotkasz problemy z wydajnością Gemini 2.5 Pro, możesz przejść na Gemini 2.5 Flash, otwierając Gemini za pomocą
gemini -m gemini-2.5-flash
lub za pomocą
/model
w interfejsie.
Łączenie rozszerzenia GKE MCP
Domyślnie interfejs wiersza poleceń Gemini jest narzędziem do zwykłych obciążeń i nie ma specjalistycznej wiedzy o tym, jak wchodzić w interakcje z klastrami. Musisz zainstalować rozszerzenie GKE MCP. To rozszerzenie działa jak wtyczka, która definiuje określony zestaw narzędzi i funkcji, takich jak „list clusters” (lista klastrów) czy „get pod logs” (pobieranie logów poda), które model może wywoływać, gdy musi wykonać zadanie.
👉💻 Aby zainstalować rozszerzenie GKE i ponownie otworzyć interfejs wiersza poleceń Gemini, uruchom te polecenia:
gemini extensions install https://github.com/GoogleCloudPlatform/gke-mcp.git
gemini
Aby sprawdzić, czy została prawidłowo włączona, ponownie otwórz interfejs wiersza poleceń Gemini i wpisz:
/extensions
4. Provisioning Infrastructure
Tradycyjne wdrażanie infrastruktury często wymaga przeglądania złożonej dokumentacji lub pisania setek wierszy kodu konfiguracyjnego. Korzystając z agenta, możesz skupić się na opisywaniu swoich wymagań i pozwolić AI na techniczne przekształcenie ich w odpowiednie wywołania interfejsu API. W tej sekcji pokazujemy, jak używać agenta zarówno w fazie planowania, jak i podczas tworzenia środowiska GKE.
Planowanie techniczne i porównanie
Zanim utworzysz klaster, musisz wybrać architekturę, która spełnia Twoje potrzeby. GKE oferuje 2 główne tryby: Standard, w którym masz pełną kontrolę nad węzłami bazowymi, oraz Autopilot, w którym Google zarządza węzłami, a Ty płacisz za zasoby wymagane przez pody. Spróbujmy prostego zapytania, aby zrozumieć różnice między nimi i zastanowić się, którego z nich użyć w konkretnym przypadku użycia.
- 👉💬 Prompt:
I need to run a standard 3-tier web application. Compare GKE Standard and GKE Autopilot. Focus on the operational effort for a small team and the cost structure for small workloads.
Spróbuj zapytać o inne pomysły dotyczące infrastruktury. Co zrobić, jeśli wdrażasz zbiory zadań wnioskowania AI, potrzebujesz czegoś na bardzo dużą skalę lub masz złożone ograniczenia sieciowe? Eksperymentuj z innymi promptami.
Wykonaj tworzenie klastra
Po przejrzeniu porównania i podjęciu decyzji możesz poprosić agenta o utworzenie klastra. Agent przeanalizuje Twoją prośbę i wywoła narzędzie create_cluster z serwera GKE MCP, aby wdrożyć środowisko gotowe do produkcji na podstawie tych wymagań.
- 👉💬 Prompt:
Create a GKE Standard zonal cluster named 'gke-lab' in us-central1-a with 1 node with 4 CPUs. The cluster should have Workload Identity enabled.
Uwaga: udostępnianie klastra GKE obejmuje konfigurowanie platformy sterującej, wirtualnych sieci prywatnych i początkowych konfiguracji węzłów, co zwykle zajmuje 8–10 minut. Nie zamykaj sesji interfejsu wiersza poleceń Gemini.
Możesz zapytać o stan klastra, który ponownie wykorzysta serwer GKE MCP do zwrócenia aktualnych informacji.
- 👉💬 Prompt:
Is the new GKE cluster created and ready to use, yet?
5. Wdrażanie i weryfikacja
Główną zaletą korzystania z agenta AI w inżynierii platformy jest możliwość przeprowadzania kontroli i audytów konfiguracji przed wdrożeniem. Zamiast wdrażać manifest i czekać na jego niepowodzenie, możesz użyć agenta, aby sprawdzić, czy plik YAML jest poprawny technicznie i zgodny z zasadami bezpieczeństwa organizacji, zanim trafi do klastra.
Generowanie plików manifestu
Poproś agenta o utworzenie pliku manifestu wdrożenia. Agent rozumie wersjonowanie i schemat interfejsu Kubernetes API, więc wygeneruje plik YAML, który będzie prawidłowo sformatowany i będzie zawierać wszystkie pola niezbędne do pomyślnego wdrożenia.
- 👉💬 Prompt:
Generate a Kubernetes YAML manifest for an Nginx web server. I need 3 replicas. Set a memory limit of 256Mi and a CPU limit of 500m. Also, include a Service of type LoadBalancer to make it accessible via the internet. Save the manifest as web-server.yaml
Weryfikacja techniczna i audyt bezpieczeństwa
Ręczne tworzenie plików YAML często prowadzi do konfiguracji, które działają z większymi uprawnieniami niż jest to konieczne lub nie mają podstawowych funkcji niezawodności. Możesz użyć agenta, aby sprawdzić utworzony przez niego manifest i upewnić się, że spełnia on nowoczesne standardy bezpieczeństwa i odporności.
- 👉💬 Prompt:
Review the Nginx manifest you just created. Does it include resource requests (not just limits)? Does it specify a non-root user for the container? Add a Pod Disruption Budget to ensure high availability during cluster maintenance. Make any necessary modifications to the file, and tell me what changes were made.
Wykonanie wdrożenia
Po zakończeniu aprowizacji klastra zgodnie z poprzednią sekcją poproś interfejs wiersza poleceń Gemini o zastosowanie konfiguracji do nowego klastra. Agent będzie używać swoich narzędzi do komunikowania się z serwerem Kubernetes API i tworzenia żądanych zasobów.
- 👉💬 Prompt:
Deploy the audited Nginx manifest to the 'gke-lab' cluster. Use the kubectl command to do this.
Sprawdzanie stanu w czasie rzeczywistym
Zamiast uruchamiać wiele poleceń kubectl get pods lub kubectl describe, możesz poprosić agenta o podsumowanie postępów wdrażania w języku naturalnym.
- 👉💬 Prompt:
Are the Nginx pods running? Provide the external IP address assigned to the LoadBalancer once it is available.
Utknąłeś(-aś)?
Jeśli usługi Nginx nie wdrażają się prawidłowo, spróbuj rozwiązać problem za pomocą interfejsu wiersza poleceń Gemini. Jest tam po to, aby Ci pomóc.
- 👉💬 Prompt:
The Nginx deployment doesn't start up as expected. Can you help troubleshoot?
6. Konserwacja i rozwiązywanie problemów
Jedną z najcenniejszych cech platformy opartej na AI jest możliwość prowadzenia operacji „drugiego dnia”. Gdy system ulegnie awarii, problemem jest często przeszukiwanie tysięcy wierszy dziennika w celu znalezienia jednego błędu, który ma znaczenie. Używając interfejsu wiersza poleceń Gemini z MCP, możesz zezwolić agentowi na agregowanie logów, zdarzeń i komunikatów o stanie, aby zapewnić Ci ogólną diagnozę i konkretną ścieżkę rozwiązania problemu.
Ręczne wstrzykiwanie błędów
Aby przetestować możliwości diagnostyczne agenta, celowo utworzymy stan błędu. Na osobnej karcie terminala uruchom to polecenie, aby zaktualizować wdrożenie za pomocą obrazu kontenera, który nie istnieje. Symuluje to częsty błąd ludzki: literówkę w tagu w kontenerze.
👉💻 Uruchom to polecenie poza interfejsem wiersza poleceń Gemini:
kubectl set image deployment/nginx nginx=nginx:invalid-version-xyz123
Uwaga: wdrożenie może mieć inną nazwę niż „nginx”. Możesz to sprawdzić, uruchamiając polecenie
kubectl get deployments
Kubernetes spróbuje pobrać ten obraz, ale nie uda mu się to, ponieważ nie znajdzie tagu, a pody przejdą w stan ImagePullBackOff.
Analiza za pomocą interfejsu wiersza poleceń Gemini
Wróć do sesji interfejsu wiersza poleceń Gemini. Zamiast ręcznie przeszukiwać konsolę Cloud Logging, poproś agenta o znalezienie i wyjaśnienie błędu.
- 👉💬 Prompt:
The Nginx deployment on my 'gke-lab' cluster has stopped working. Use your tools to inspect the cluster state, check the recent events, and explain exactly why the pods are failing to start.
Co się stanie: interfejs wiersza poleceń Gemini zauważy, że wdrożenie jest nieprawidłowe. Następnie użyje dostępnych narzędzi do sprawdzenia uszkodzonych podów. Pracownik zidentyfikuje błąd pobierania, wyjaśni, że tag jest nieprawidłowy, i zasugeruje przywrócenie znanego, prawidłowego obrazu.
Konserwacja i ocena ryzyka
Konserwacja platformy polega na wyprzedzaniu uaktualnień i wycofywania funkcji. Możesz poprosić agenta, aby pełnił rolę inżyniera ds. niezawodności witryn i ocenił stan oraz trwałość klastra.
- 👉💬 Prompt:
Is my cluster 'gke-lab' running the latest version of GKE? Check for available upgrades and let me know if any of my current resources use deprecated APIs that would break during an upgrade.
Może to spowodować, że Gemini będzie korzystać z narzędzi serwera MCP GKE, takich jak narzędzia do sprawdzania stanu klastra i rekomendacji.
7. Podsumowanie
W tym module pokazaliśmy nowy sposób interakcji z infrastrukturą w chmurze. Dzięki zintegrowaniu agenta AI bezpośrednio z przepływem pracy w Terminalu za pomocą interfejsu wiersza poleceń Gemini i MCP możesz teraz nie tylko ręcznie pisać polecenia, ale też kierować intencjami. Takie podejście pozwala zespołom platformowym zwiększać skalę swojej wiedzy, ponieważ inteligentny interfejs zajmuje się powtarzalnymi i podatnymi na błędy szczegółami zarządzania Kubernetes, a inżynierowie skupiają się na architekturze wysokiego poziomu i rozwiązywaniu problemów.
Podsumowanie modułu
- Łączność: Udało Ci się połączyć interfejs wiersza poleceń Gemini z interfejsem GKE API za pomocą protokołu Model Context Protocol, dzięki czemu model AI ma bezpośredni wgląd w stan Twojego projektu.
- Infrastruktura: do zaprojektowania i udostępnienia klastra GKE używasz języka naturalnego, dzięki czemu nie musisz zapamiętywać złożonych flag interfejsu wiersza poleceń.
- Programowanie: zasoby Kubernetes zostały wygenerowane, sprawdzone pod kątem bezpieczeństwa i wdrożone bez ręcznej edycji plików YAML, co zapewniło przestrzeganie sprawdzonych metod od samego początku.
- Operacje: Użyto AI do przeprowadzenia analizy przyczyn źródłowych awarii wdrożenia, co znacznie skróciło średni czas przywracania działania usługi, ponieważ AI może podsumowywać logi i zdarzenia.
Czyszczenie
Aby uniknąć obciążenia konta Google Cloud bieżącymi opłatami za zasoby utworzone w tym module, możesz poprosić agenta o usunięcie klastra.
Uwaga: pomiń ten krok, jeśli planujesz ponownie wykorzystać klaster GKE w innym module.
- 👉💬 Prompt:
Delete the 'gke-lab' cluster and any associated resources.
Następne kroki
Polecane artykuły:
- Dokumentacja interfejsu wiersza poleceń Gemini: oficjalna dokumentacja interfejsu wiersza poleceń Gemini.
- Dokumentacja GKE: strona docelowa całej dokumentacji GKE.
- Inżynieria platform w Google Cloud: wskazówki dotyczące podejścia do inżynierii platform w Google Cloud.
- AI i uczenie maszynowe w GKE: dokumentacja dotycząca uruchamiania zbiorów zadań AI/ML w GKE.
- Google Cloud Architecture Center: wskazówki i sprawdzone metody tworzenia zadań w Google Cloud.