Ich habe einen kubernetes-Cluster, der auf azurblau läuft. Wie erfolgt der Zugriff auf den Cluster über den lokalen kubectl-Befehl? Ich habe hier erwähnt, aber auf dem Kubernetes-Master-Knoten gibt es keine Kube-Konfigurationsdatei. Außerdem führt die kubectl-Konfigurationsansicht zu
%Vor%Es wurde eine Möglichkeit gefunden, auf den Remote-Kubernetes-Cluster zuzugreifen, ohne sich mit einem der Knoten im Cluster zu verbinden. Sie müssen ~ / .kube / config file wie folgt bearbeiten:
%Vor%Setzen Sie den Kontext, indem Sie Folgendes ausführen:
%Vor%Danach sollten Sie in der Lage sein, mit dem Cluster zu interagieren.
Hinweis: Um eine Zertifizierung und einen Schlüssel hinzuzufügen, verwenden Sie folgenden Link: Ссылка
Alternativ können Sie auch den folgenden Befehl ausführen
%Vor% Sie können den Dateipfad von kubeconfig auch definieren, indem Sie den Parameter --kubeconfig
übergeben.
Kopieren Sie beispielsweise ~/.kube/config
des Remote-Kubernetes-Hosts in das ~/myproject/.kube/config
Ihres lokalen Projekts. In ~/myproject
können Sie dann die Pods des entfernten Kubernetes-Servers auflisten, indem Sie kubectl get pods --kubeconfig ./.kube/config
ausführen.
Beachten Sie, dass beim Kopieren der Werte vom entfernten Kubernetes-Server das einfache kubectl config view
nicht ausreicht, da es die Geheimnisse der Konfigurationsdatei nicht anzeigt. Stattdessen müssen Sie etwas wie cat ~/.kube/config
ausführen oder scp
verwenden, um den vollständigen Dateiinhalt zu erhalten.
Siehe: Ссылка
Wie haben Sie Ihren Cluster eingerichtet? Um remote auf den Cluster zugreifen zu können, benötigen Sie eine kubeconfig-Datei (es sieht so aus, als ob Sie keine haben) und die Setup-Skripte erzeugen eine lokale kubeconfig-Datei als Teil des Cluster-Deployment-Prozesses (weil sonst der gerade bereitgestellte Cluster nicht verwendbar ist) . Wenn ein anderer Benutzer den Cluster bereitgestellt hat, sollten Sie den Anweisungen auf der Seite folgen, mit der Sie eine Verbindung hergestellt haben, um eine Kopie der erforderlichen Clientanmeldeinformationen für die Verbindung mit dem Cluster zu erhalten.
Bei der Azure-Installation werden die ssh-Ports nur extern verfügbar gemacht. Dies kann unter ./output/kube_xxxxxxxxxx_ssh_conf gefunden werden Was ich getan habe, tunnel die SSH auf meinem Rechner verfügbar sein, indem Sie einen SSH-Port-Tunnel hinzufügen. Gehen Sie in die obige Datei und fügen Sie im Abschnitt "host *" eine weitere Zeile hinzu:
LocalForward 8080 127.0.0.1:8080
, das meinen lokalen Computer-Port 8080 (wo kubectl nach dem Standardkontext sucht) dem Port 8080 des Remote-Computers zuordnet, wo der Master auf API-Aufrufe hört. wenn du ssh für den kube-00 öffnest, wie es normale dokumente zeigen, kannst du jetzt von deinem lokalen kubectl ohne zusätzliche konfiguration anrufen.
Ich habe versucht, kubectl auf einem anderen Client als dem zu installieren, von dem ich ursprünglich den kops-Cluster erstellt habe. Nicht sicher, ob dies mit Azure funktionieren würde, aber es funktionierte auf einem AWS-unterstützten (kops) Cluster:
kops / kubectl - how importiere ich den Status, der auf einem anderen Server erstellt wurde?
Tags und Links azure kubernetes