Clusterzugriff für „kubectl“ konfigurieren
Auf dieser Seite wird erläutert, wie Sie den Clusterzugriff für das kubectl-Befehlszeilentool für GKE in Azure konfigurieren.
Diese Seite richtet sich an IT-Administratoren und ‑Betreiber, die Cloud-Infrastrukturen einrichten, überwachen und verwalten möchten. Weitere Informationen zu gängigen Rollen und Beispielaufgaben, auf die wir in Google Cloud -Inhalten verweisen, finden Sie unter Häufig verwendete GKE Enterprise-Nutzerrollen und -Aufgaben.
Übersicht
Für den Zugriff auf Ihre GKE-Umgebung in Azure müssen Sie kubectl
konfigurieren. Sie können einen Standardcluster für kubectl
festlegen, wenn Sie den aktuellen Kontext in der Kubernetes-Datei kubeconfig
festlegen. Außerdem können Sie mit dem Flag --cluster
kubectl
-Befehle für einen bestimmten Cluster ausführen.
Weitere Informationen zu kubeconfig
und Cluster-Endpunkten finden Sie unter Über Kubeconfig.
Hinweise
Wenn Sie das Connect-Gateway für den kubectl
-Zugriff verwenden, müssen Sie Administratoren, die keine Projektinhaber sind, die IAM-Rollen zuweisen, die unter kubectl mit Identität aus der gcloud CLI verwenden beschrieben sind.
Aktuelle kubeconfig-Datei prüfen
In diesem Abschnitt wird erläutert, wie Sie Ihre aktuelle kubeconfig
prüfen können.
kubeconfig-Kontexte ansehen
Führen Sie den folgenden Befehl aus, um die kubeconfig
Ihrer Umgebung und alle darin enthaltenen Kontexte aufzurufen:
kubectl config view
Der Befehl gibt eine Liste aller Cluster zurück, für die Einträge in kubeconfig
generiert wurden. Wenn ein GKE on Azure-Cluster aufgeführt ist, können Sie kubectl
-Befehle für diesen Cluster in Ihrer aktuellen Umgebung ausführen. Andernfalls müssen Sie für den Cluster einen Eintrag in kubeconfig
generieren.
Aktuellen Kontext für kubectl ansehen
Führen Sie folgenden Befehl aus, um den aktuellen Kontext aufzurufen, den das kubectl-Befehlszeilentool verwendet:
kubectl config current-context
kubectl
gibt den Namen des aktuellen Kontexts aus.
kubeconfig-Eintrag generieren
Zum Ausführen von kubectl
-Befehlen für GKE-Cluster müssen Sie einen kubeconfig
-Eintrag generieren. Wie Sie eine kubeconfig
-Datei generieren, hängt davon ab, wie Sie eine Verbindung zu Ihrem Cluster herstellen möchten. Wir empfehlen die Verwendung des Connect-Gateways. Wenn Sie das Connect-Gateway verwenden, sendet das gke-connect-agent
-Deployment Anfragen über Google an die Cluster-Steuerungsebene.
Welche kubectl
-Befehle vom Connect-Gateway unterstützt werden, erfahren Sie unter Einschränkungen.
Wenn Sie eine Verbindung über einen privaten Endpunkt herstellen möchten, benötigen Sie eine Verbindung und ein Routing zum Endpunkt der Steuerungsebene in Ihrem Azure Virtual Network. Der kube-apiserver des Clusters ist Teil der Steuerungsebene. Um Anfragen direkt an den privaten Endpunkt zu senden, müssen Sie möglicherweise die Firewallregeln erweitern. Weitere Informationen zum Herstellen einer Verbindung zu Ihrer Steuerungsebene finden Sie unter AWS-Sicherheitsgruppen.
Connect-Gateway
gcloud container azure clusters get-credentials CLUSTER_NAME \
--location GOOGLE_CLOUD_LOCATION
Ersetzen Sie Folgendes:
CLUSTER_NAME
: der Name Ihres ClustersGOOGLE_CLOUD_LOCATION
: die Google Cloud Region oder Zone, in der Ihre GKE on Azure-Cluster verwaltet werden
Privater Endpunkt
Damit Sie eine Verbindung zum privaten Endpunkt herstellen können, benötigen Sie eine Verbindung zur Steuerungsebene des Clusters. Siehe Verbindung zur Steuerungsebene Ihres Clusters herstellen.
gcloud container azure clusters get-credentials CLUSTER_NAME \
--location GOOGLE_CLOUD_LOCATION \
--private-endpoint
Dabei gilt:
CLUSTER_NAME
: der Name Ihres ClustersGOOGLE_CLOUD_LOCATION
: die Google Cloud Region oder Zone, in der Ihre GKE on Azure-Cluster verwaltet werden
Mit mehreren Clustern arbeiten
In diesem Abschnitt wird beschrieben, wie Sie kubectl
mit mehreren GKE-Clustern verwenden.
Standardcluster für kubectl-Befehle festlegen
Sie können den aktuellen Kontext für kubectl
auf diesen Cluster umstellen. Dazu führen Sie den folgenden Befehl aus.
gcloud container azure clusters get-credentials CLUSTER_NAME \
--location GOOGLE_CLOUD_LOCATION \
Dabei gilt:
CLUSTER_NAME
: der Name Ihres ClustersGOOGLE_CLOUD_LOCATION
: die Google Cloud Region oder Zone, in der Ihre GKE on Azure-Cluster verwaltet werden
Angenommen Sie haben ein Projekt mit den beiden Clustern cluster-1
und cluster-2
.
Der aktuelle Kontext ist cluster-2
. Führen Sie den folgenden Befehl aus, um den aktuellen Kontext von cluster-2
in cluster-1
zu ändern:
gcloud container azure clusters get-credentials cluster-1 \
--location GOOGLE_CLOUD_LOCATION
Einzelne kubectl-Befehle für einen bestimmten Cluster ausführen
Sie können einzelne Befehle von kubectl
für einen bestimmten Cluster ausführen. Dazu übergeben Sie den Namen des Clusters wie in kubeconfig
angegeben als Argument an das Flag --cluster
.
Angenommen Sie haben eine Umgebung mit den beiden Clustern cluster-1
und cluster-2
, in der der aktuelle Kontext cluster-1
ist. Sie möchten den aktuellen Kontext nicht ändern. Führen Sie den folgenden Befehl aus, um eine Liste der Pod-Objekte in cluster-2
abzurufen, ohne den aktuellen Kontext zu ändern:
kubectl get pod --cluster cluster-2