Zainstalowaliśmy Ubuntu 20.04 w naszym systemie operacyjnym Linux, aby uruchomić instrukcje w Kubernetes. Możesz to śledzić. Musisz dodatkowo zainstalować klaster minikube na komputerze, aby uruchomić Kubernetes w Linux. Minikube ułatwia testowanie poleceń i programów, umożliwiając to w sposób metodyczny. W rezultacie zapewnia najlepsze doświadczenie edukacyjne Kubernetes dla początkujących. Początkowo należy uruchomić klaster minikube. Następnie w Ubuntu 20.04, przejdź do nowo zainstalowanego terminala wiersza poleceń. Możesz to zrobić, naciskając klawisz skrótu CTRL+Al lub wpisując „Terminal” w Ubuntu 20.04 System wyszukiwania. Każda z wyżej wymienionych technik uruchomi terminal. Minikube zostanie rozpoczęte. Wpisz „Minikube Start” w terminalu, aby uruchomić minikube. Klaster Kubernetes zostanie uruchomiony po zbudowaniu maszyny wirtualnej zdolnej do obsługi klastra pojedynczego węzła. Jest również kompatybilny ze środowiskiem Kubectl. Zostanie to użyte do komunikacji z klastrem.
$ minikube start
Aby uzyskać dostęp do klastra, musisz wiedzieć, gdzie się znajduje i jakich poświadczeń będziesz potrzebować. Zwykle odbywa się to automatycznie, gdy śledzisz przewodnik po uruchomieniu lub ktoś inny konfiguruje klaster i daje poświadczenia i lokalizację. Polecenie Config View pokazuje, gdzie Kubectl jest świadomy lokalizacji i poświadczeń.
$ kubectl Config View
Jak bezpośredni dostęp do interfejsu API REST ?
Kubectl jest odpowiedzialny za znalezienie i uwierzytelnianie aperver. W trybie proxy uruchom kubectl.
Bezpośrednio dostarczaj klientowi HTTP lokalizację i poświadczenia.
Korzystanie z proxy Kubectl
To polecenie konfiguruje Kubectl do działania jako odwrotny proxy. Jest odpowiedzialny za zlokalizowanie i uwierzytelnianie aperver. Załóż ten scenariusz:
$ kubectl proxy -port = 8080
Przykład wyjścia jest następujący:
Bez użycia proxy Kubectl
Aby uzyskać token konta domyślnego, uruchom kubectl Opisz tajny… z GREP/CUT.
$ kubectl Opisz tajny
API i program programowy
Należy ogłosić, że Kubernetes obsługuje teraz biblioteki klientów Go i Python. Klient GO i klient Python mogą wykorzystać ten sam plik Kubeconfig, co Kubectl CLI do zlokalizowania i uwierzytelnienia za pomocą APISERVER.
Uzyskaj dostęp do interfejsu API z kapsułki
Podczas kontaktowania się z API z POD proces znajdowania i uwierzytelniania APISERVER różni się nieznacznie. Najlepszym sposobem na zlokalizowanie apiserver w kapsule jest użycie kubernetes.domyślny.SVC DNS Nazwa. Rozpoczyna się do usługi IP, a następnie jest to kierowane do przechylenia.
Sugerowane jest użycie poświadczenia konta serwisowego do uwierzytelniania się do przechylenia. Następnie token dla tego konta serwisowego jest przechowywany w drzewie systemu plików kontenera w tym kapsule. Pakiet certyfikatu jest wstawiany do drzewa systemu plików każdego kontenera at/var/run/secrets/kubernetes.IO/SERVICEACCOUNT/CA.CRT, jeśli jest dostępny i powinien być używany do weryfikacji certyfikatu serwowania APISERVER.
Wreszcie, w każdym kontenerze domyślna przestrzeń nazw dla działań API z nazwiskami jest przechowywana w pliku AT/var/run/secrets/kubernetes.IO/SERVICEACOUNT/NAZWA. Oto kilka opcji łączenia się z interfejsem API z wewnątrz kapsuły:
Uruchom proxy Kubectl jako proces w tle w pojemniku lub jako pojemnik na boisko. Umożliwia to inne procesy w dowolnym pojemniku kapsuły dostęp do interfejsu API Kubernetes za pomocą interfejsu LocalHost Podp.
Utwórz klienta, łącząc bibliotekę klientów GO z kodem. Kubernetes z InclusterConfig () Funkcje newforConfig () i newforConfig () mogą być użyte do konfiguracji klastra. Są odpowiedzialni za znalezienie i uwierzytelnianie aperver.
Wniosek
Tutaj przedstawiliśmy wytyczne dotyczące proxy Kubectl. Co to jest widok Kubectl Config Common i jak uzyskać dostęp do interfejsu API REST z proxy Kubectl Kubectl. Podaliśmy również przykłady, które pomogą Ci lepiej zrozumieć koncepcję.