Connect kubectl mit einem EKS Cluster, indem Sie eine kubeconfig-Datei erstellen - Amazon EKS

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Connect kubectl mit einem EKS Cluster, indem Sie eine kubeconfig-Datei erstellen

In diesem Thema erstellen Sie eine kubeconfig-Datei für Ihren Cluster (oder aktualisieren eine vorhandene).

Das kubectl Befehlszeilentool verwendet Konfigurationsinformationen in kubeconfig Dateien, um mit dem API Server eines Clusters zu kommunizieren. Weitere Informationen finden Sie unter Organisieren des Clusterzugriffs mithilfe von kubeconfig-Dateien im Kubernetes -Dokumentation.

Amazon EKS verwendet den aws eks get-token Befehl with kubectl für die Cluster-Authentifizierung. Standardmäßig AWS CLI verwendet der dieselben Anmeldeinformationen, die mit dem folgenden Befehl zurückgegeben werden:

aws sts get-caller-identity
  • Ein vorhandener EKS Amazon-Cluster. Informationen zum Bereitstellen finden Sie unter Erste Schritte mit Amazon EKS.

  • Das kubectl Befehlszeilentool ist auf Ihrem Gerät installiert oder AWS CloudShell. Die Version kann dieselbe oder bis zu einer Nebenversion sein, die vor oder nach der Kubernetes Version Ihres Clusters. Wenn Ihre Clusterversion beispielsweise 1.29 ist, können Sie kubectl-Version 1.28, 1.29, oder 1.30 damit verwenden. Informationen zum Installieren oder Aktualisieren von kubectl finden Sie unter Richten Sie kubectl und eksctl ein.

  • Version 2.12.3 oder höher oder Version 1.27.160 oder höher der AWS Befehlszeilenschnittstelle (AWS CLI), die auf Ihrem Gerät installiert und konfiguriert ist, oder AWS CloudShell. Um Ihre aktuelle Version zu überprüfen, verwenden Sie aws --version | cut -d / -f2 | cut -d ' ' -f1. Paketmanager wieyum,apt-get, oder Homebrew for macOS liegen oft mehrere Versionen hinter der neuesten Version von AWS CLI. Informationen zur Installation der neuesten Version finden Sie unter Installation und Schnellkonfiguration mit aws configure im Benutzerhandbuch für die AWS Befehlszeilenschnittstelle. Die AWS CLI Version, in der installiert ist, AWS CloudShell kann auch mehrere Versionen hinter der neuesten Version liegen. Informationen zur Aktualisierung finden Sie unter Installation AWS CLI in Ihrem Home-Verzeichnis im AWS CloudShell Benutzerhandbuch.

  • Ein IAM Benutzer oder eine Rolle mit der Berechtigung, die eks:DescribeCluster API Aktion für den von Ihnen angegebenen Cluster zu verwenden. Weitere Informationen finden Sie unter Beispiele für EKS identitätsbasierte Richtlinien von Amazon. Wenn Sie eine eigene Identität verwenden OpenID Connect Anbieter für den Zugriff auf Ihren Cluster, dann finden Sie weitere Informationen unter Using kubectl in Kubernetes Dokumentation zum Erstellen oder Aktualisieren Ihrer kube config Datei.

kubeconfig-Datei automatisch erstellen

  • Version 2.12.3 oder höher oder Version 1.27.160 oder höher der AWS Befehlszeilenschnittstelle (AWS CLI), die auf Ihrem Gerät installiert und konfiguriert ist, oder AWS CloudShell. Um Ihre aktuelle Version zu überprüfen, verwenden Sie aws --version | cut -d / -f2 | cut -d ' ' -f1. Paketmanager wieyum,apt-get, oder Homebrew for macOS liegen oft mehrere Versionen hinter der neuesten Version von AWS CLI. Informationen zur Installation der neuesten Version finden Sie unter Installation und Schnellkonfiguration mit aws configure im Benutzerhandbuch für die AWS Befehlszeilenschnittstelle. Die AWS CLI Version, in der installiert ist, AWS CloudShell kann auch mehrere Versionen hinter der neuesten Version liegen. Informationen zur Aktualisierung finden Sie unter Installation AWS CLI in Ihrem Home-Verzeichnis im AWS CloudShell Benutzerhandbuch.

  • Berechtigung zur Verwendung der eks:DescribeCluster API Aktion für den von Ihnen angegebenen Cluster. Weitere Informationen finden Sie unter Beispiele für EKS identitätsbasierte Richtlinien von Amazon.

    1. Erstellen oder aktualisieren Sie eine kubeconfig-Datei für Ihren Cluster. Ersetzen region-code mit der AWS Region, in der sich Ihr Cluster befindet, und ersetzen Sie my-cluster mit dem Namen Ihres Clusters.

      aws eks update-kubeconfig --region region-code --name my-cluster

      Standardmäßig wird die resultierende Konfigurationsdatei im Standard kubeconfig-Pfad (.kube) in Ihrem Stammverzeichnis erstellt oder mit einer vorhandenen config-Datei an diesem Speicherort zusammengeführt. Sie können mit der Option --kubeconfig einen anderen Pfad angeben.

      Sie können eine IAM Rolle ARN mit der --role-arn Option angeben, die für die Authentifizierung verwendet werden soll, wenn Sie kubectl Befehle ausgeben. Andernfalls wird der IAMPrincipal in Ihrer Standard AWS CLI - oder SDK Anmeldeinformationskette verwendet. Sie können Ihren Standard AWS CLI oder Ihre SDK Identität anzeigen, indem Sie den aws sts get-caller-identity Befehl ausführen.

      Alle verfügbaren Optionen finden Sie, wenn Sie den aws eks update-kubeconfig help Befehl ausführen oder in der Befehlsreferenz unter update-kubeconfig nachlesen. AWS CLI

    2. Testen Sie Ihre Konfiguration.

      kubectl get svc

      Eine Beispielausgabe sieht wie folgt aus.

      NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE svc/kubernetes ClusterIP 10.100.0.1 <none> 443/TCP 1m

      Wenn Sie Autorisierungs- oder Ressourcenfehler erhalten, finden Sie weitere Informationen unter Nicht autorisiert oder Zugriff verweigert (kubectl) im Thema zur Fehlerbehebung.