Wir haben Ubuntu 20 installiert.04 Auf unserem Linux -Betriebssystem, um die Anweisungen in Kubernetes auszuführen. Sie können ihm folgen. Sie müssen zusätzlich den Minikube -Cluster auf Ihrem Computer installieren, um Kubernetes unter Linux auszuführen. Minikube erleichtert Testbefehle und -Programme, indem Sie dies auf methodische Weise tun können. Infolgedessen bietet es Newcomern die beste Kubernetes -Lernerfahrung. Anfangs muss der Minikube -Cluster gestartet werden. Dann in Ubuntu 20.04, gehen Sie zum neu installierten Befehlszeilenterminal. Sie können dies tun, indem Sie die Taste Strg+Alt+T -Verknüpfung drücken oder „Terminal“ in die Ubuntu 20 eingeben.04 Suchbox des Systems. Eine der oben genannten Techniken startet das Terminal. Der Minikube wird danach gestartet. Geben Sie "Minikube Start" in das Terminal ein, um die Minikube zu starten. Der Kubernetes -Cluster wird gestartet, nachdem eine virtuelle Maschine, die in der Lage ist, einen einzelnen Knotencluster zu betreiben, erstellt wurde. Es ist auch mit der Kubectl -Umgebung kompatibel. Dies wird verwendet, um zunächst mit dem Cluster zu kommunizieren.
$ minikube Start
Um Zugang zu einem Cluster zu erhalten, müssen Sie wissen, wo sich er befindet und welche Anmeldeinformationen Sie benötigen. Dies geschieht normalerweise automatisch, wenn Sie einem Anleitung für Erste Schritte folgen oder jemand anderes den Cluster einstellt und Ihnen Anmeldeinformationen und einen Ort gibt. Der Befehl config -Ansicht zeigt an, wo Kubectl den Ort und die Anmeldeinformationen kennt.
$ kubectl config -Ansicht
So greifen Sie direkt auf die Rest -API zu ?
Kubectl ist verantwortlich für das Finden und Authentifizieren des Apiservers. Führen Sie im Proxy -Modus Kubectl aus.
Stellen Sie dem HTTP -Client direkt den Standort und die Anmeldeinformationen an.
Mit Kubectl -Proxy
Dieser Befehl konfiguriert Kubectl so, dass sie als Reverse Proxy arbeitet. Es ist verantwortlich für die Lokalisierung und Authentifizierung des Apiservers. Nehmen Sie dieses Szenario an:
$ kubectl proxy -port = 8080
Ein Beispiel für die Ausgabe ist wie folgt:
Ohne die Verwendung von Kubectl -Proxy
Um das Standard -Service -Account -Token zu erwerben, rennen Sie Kubectl Secret… mit Grep/Cut.
$ kubectl beschreibt Secret
API und der programmatische Zugriff
Es ist bekannt zu geben, dass Kubernetes jetzt Go und Python -Client -Bibliotheken unterstützt. Der GO -Client und der Python -Client können dieselbe Kubeconfig -Datei wie die Kubectl CLI verwenden, um sich mit dem Apiserver zu lokalisieren und zu authentifizieren.
Greifen Sie aus einer Pod auf die API zu
Bei der Kontaktaufnahme mit der API von einem Pod unterscheidet sich der Prozess des Findens und der Authentifizierung des Apiservers geringfügig. Der beste Weg, den Apiserver in der POD zu lokalisieren, besteht darin, die Kubernetes zu verwenden.Standard.SVC -DNS -Name. Es wird auf eine Service -IP aufgelöst, und es wird dann wiederum zu einem Apiserver übergeben.
Die Verwendung eines Service -Konto -Anmeldeinformationen zur Authentifizierung mit dem Apiserver wird vorgeschlagen. Danach wird ein Token für dieses Servicekonto im Dateisystembaum des Containers in dieser Pod aufbewahrt. Ein Zertifikatbündel wird in den Dateisystembaum jedes Containers bei/var/run/secrets/kubernetes eingefügt.IO/serviceAccount/ca.CRT, falls verfügbar und sollte verwendet werden, um das Servierzertifikat des Apiservers zu überprüfen.
Schließlich wird in jedem Container der Standard -Namespace für Namespa -API -Aktivitäten in einer Datei bei/var/run/secrets/kubernetes gespeichert.IO/serviceAccount/Namespace. Hier finden Sie einige Optionen, um eine Verbindung zu einer API innerhalb eines Pods herzustellen:
Führen Sie den Kubectl -Proxy als Hintergrundprozess im Container oder als POD -Seitenwagenbehälter aus. Dies ermöglicht andere Prozesse in einem der Container des POD, über die Localhost -Schnittstelle des POD auf die Kubernetes -API zuzugreifen.
Erstellen Sie einen Client, indem Sie die Go -Client -Bibliothek mit dem Code kombinieren. Kubernetes mit InclusterConfig () Die Funktionen newForConfig () und newForConfig () können verwendet werden, um einen Cluster zu konfigurieren. Sie sind verantwortlich für die Suche und Authentifizierung des Apiservers.
Abschluss
Hier haben wir Richtlinien zum Kubectl -Proxy gegeben. Was ist die Kubectl -Konfigurationsansicht üblich und wie können Sie mit und ohne Kubectl -Proxy auf die REST -API zugreifen?. Wir haben auch Beispiele geliefert, die Ihnen helfen, das Konzept besser zu verstehen.