Wie der autorisierte Cluster-Endpunkt funktioniert
In diesem Abschnitt wird beschrieben, wie die kubectl-CLI, die kubeconfig-Datei und der autorisierte Cluster-Endpunkt zusammenarbeiten, um Ihnen den direkten Zugriff auf einen Downstream-Kubernetes-Cluster zu ermöglichen, ohne sich über den Rancher-Server zu authentifizieren. Es soll Hintergrundinformationen und Kontext zu den Anweisungen für wie man kubectl einrichtet, um direkt auf einen Cluster zuzugreifen bereitstellen.
Über die Kubeconfig-Datei
Die kubeconfig-Datei wird verwendet, um den Zugriff auf Kubernetes zu konfigurieren, wenn sie zusammen mit dem kubectl-Kommandozeilenwerkzeug (oder anderen Clients) verwendet wird.
Die kubeconfig-Datei und ihr Inhalt sind spezifisch für jeden Cluster. Sie kann von der Clusters Seite in Rancher heruntergeladen werden:
-
Klicken Sie auf ☰ in der oberen linken Ecke.
-
Wählen Sie Clusterverwaltung.
-
Suchen Sie den Cluster, dessen kubeconfig Sie herunterladen möchten, und wählen Sie ⁝ am Ende der Zeile aus.
-
Wählen Sie Download KubeConfig aus dem Untermenü.
Sie benötigen eine separate kubeconfig-Datei für jeden Cluster, auf den Sie in Rancher Zugriff haben.
Nachdem Sie die kubeconfig-Datei heruntergeladen haben, können Sie die kubeconfig-Datei und ihre Kubernetes contexts verwenden, um auf Ihren Downstream-Cluster zuzugreifen.
Wenn Administratoren kubeconfig-Token-Generierung deaktiviert haben, erfordert die kubeconfig-Datei, dass die Rancher CLI in Ihrem PATH vorhanden ist.
Über das kube-api-auth Authentifizierungs-Webhook
Der kube-api-auth Mikrodienst wird bereitgestellt, um die Benutzer-Authentifizierungsfunktionalität für den autorisierten Cluster-Endpunkt bereitzustellen. Wenn Sie auf den Benutzercluster über kubectl zugreifen, authentifiziert der Kubernetes-API-Server des Clusters Sie, indem er den kube-api-auth Dienst als Webhook verwendet.
Während der Cluster-Bereitstellung wird die Datei /etc/kubernetes/kube-api-authn-webhook.yaml bereitgestellt und kube-apiserver wird mit --authentication-token-webhook-config-file=/etc/kubernetes/kube-api-authn-webhook.yaml konfiguriert. Dies konfiguriert den kube-apiserver, um http://127.0.0.1:6440/v1/authenticate abzufragen, um die Authentifizierung für Bearer-Token zu bestimmen.
Die Planungsregeln für kube-api-auth sind unten aufgeführt:
| Komponente | nodeAffinity nodeSelectorTerms | nodeSelector | Toleranzen |
|---|---|---|---|
kube-api-auth |
|
keine |
|