Unterstützung für die Verbesserung dieser Seite beitragen
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.
Um zu diesem Benutzerhandbuch beizutragen, wählen Sie den GitHub Link Diese Seite bearbeiten unter, der sich im rechten Bereich jeder Seite befindet.
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.
kubectl mit einem EKS-Cluster durch Erstellen einer kubeconfig-Datei verbinden
Tipp
Registrieren Sie sich
In diesem Thema erstellen Sie eine kubeconfig-Datei für Ihren Cluster (oder aktualisieren eine vorhandene).
Das kubectl-Befehlszeilentool verwendet Konfigurationsinformationen in kubeconfig-Dateien für die Kommunikation mit dem API-Server eines Clusters. Weitere Informationen finden Sie unter Organisieren des Cluster-Zugriffs mit kubeconfig-Dateien
Amazon EKS verwendet den Befehl aws eks get-token mit kubectl für die Cluster-Authentifizierung. Standardmäßig verwendet die AWS CLI dieselben Anmeldeinformationen, die mit dem folgenden Befehl zurückgegeben werden:
aws sts get-caller-identity
-
Ein vorhandener Amazon-EKS-Cluster. Informationen zum Bereitstellen finden Sie unter Erste Schritte mit Amazon EKS.
-
Das
kubectl-Befehlszeilen-Tool ist auf Ihrem Gerät oder in der AWS CloudShell installiert. Die Version kann mit der Kubernetes-Version Ihres Clusters identisch sein oder bis zu einer Nebenversion älter oder neuer sein. Wenn Ihre Clusterversion beispielsweise1.29ist, können Siekubectl-Version1.28,1.29, oder1.30damit verwenden. Informationen zum Installieren oder Aktualisieren vonkubectlfinden Sie unter Richten Sie kubectl und eksctl ein . -
Version
2.12.3oder höher oder Version1.27.160oder 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 Sieaws --version | cut -d / -f2 | cut -d ' ' -f1. Paketmanager wieyum,apt-get, oder Homebrew für macOS sind oft mehrere Versionen hinter der neuesten Version der 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, liegt AWS CloudShell möglicherweise auch mehrere Versionen hinter der neuesten Version zurück. Informationen zum Aktualisieren finden Sie im AWS CloudShell Benutzerhandbuch unter AWS CLI in Ihrem Home-Verzeichnis installieren. -
Ein IAM-Benutzer oder eine Rolle mit Berechtigung zur Verwendung der API-Aktion
eks:DescribeClusterfür den angegebenen Cluster. Weitere Informationen finden Sie unter Beispiele für identitätsbasierte Amazon-EKS-Richtlinien. Wenn Sie für den Zugriff auf Ihren Cluster eine Identität Ihres eigenen OpenID-Connect-Anbieters verwenden, lesen Sie den Abschnitt Verwendung von kubectlin der Kubernetes-Dokumentation, um Ihre kubeconfig-Datei zu erstellen oder zu aktualisieren.
Stellen Sie die Verbindung über die EKS-Konsole her (CloudShell)
Sie können direkt vom Using aus eine Verbindung zu Ihrem Cluster AWS-Managementkonsole herstellen AWS CloudShell, ohne dass eine lokale Einrichtung erforderlich ist.
-
Öffnen Sie die Amazon EKS-Konsole unter https://console.aws.amazon.com/eks/home #/clusters
. -
Wählen Sie den Namen des Clusters, zu dem Sie eine Verbindung herstellen möchten.
-
Wählen Sie auf der Cluster-Detailseite in der Aktionsleiste oben rechts die Option Verbinden aus.
-
AWS CloudShell öffnet sich mit der für Ihren
kubectlCluster vorkonfigurierten Version.
Sobald die Verbindung hergestellt ist, können Sie kubectl Befehle sofort ausführen:
kubectl get nodes kubectl get pods -A
CloudShell Zu den Sitzungen gehören kubectl die AWS CLI und CloudShell Standarddienstprogramme. Diese Funktion unterstützt Cluster mit öffentlichen und privaten API-Serverendpunkten. Startet bei Clustern mit privaten Endpunkten CloudShell automatisch eine VPC-Umgebung, um den privaten API-Server Ihres Clusters zu erreichen, und fordert Sie auf, einen Namen für die Umgebung einzugeben.
Erstellen Sie die Datei kubeconfig mit dem AWS CLI
-
Version
2.12.3oder höher oder Version1.27.160oder 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 Sieaws --version | cut -d / -f2 | cut -d ' ' -f1. Paketmanager wieyum,apt-get, oder Homebrew für macOS sind oft mehrere Versionen hinter der neuesten Version der 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, liegt AWS CloudShell möglicherweise auch mehrere Versionen hinter der neuesten Version zurück. Informationen zum Aktualisieren finden Sie im AWS CloudShell Benutzerhandbuch unter AWS CLI in Ihrem Home-Verzeichnis installieren. -
Berechtigung zur Nutzung der
eks:DescribeCluster-API-Aktion für den Cluster, den Sie angeben. Weitere Informationen finden Sie unter Beispiele für identitätsbasierte Amazon-EKS-Richtlinien.-
Erstellen oder aktualisieren Sie eine
kubeconfig-Datei für Ihren Cluster.region-codeErsetzen Sie es durch die AWS Region, in der sich Ihr Cluster befindet, undmy-clusterersetzen Sie es durch den Namen Ihres Clusters.aws eks update-kubeconfig --region region-code --name my-clusterStandardmäßig wird die resultierende Konfigurationsdatei im Standard
kubeconfig-Pfad (.kube) in Ihrem Stammverzeichnis erstellt oder mit einer vorhandenenconfig-Datei an diesem Speicherort zusammengeführt. Sie können mit der Option--kubeconfigeinen anderen Pfad angeben.Sie können einen IAM-Rollen-ARN mit der Option
--role-arnfür die Authentifizierung verwenden, wenn Siekubectl-Befehle ausgeben. Andernfalls wird der IAM-Principal in Ihrer standardmäßigen AWS CLI- oder SDK-Anmeldeinformationskette verwendet. Sie können Ihre AWS Standard-CLI- oder SDK-Identität anzeigen, indem Sie denaws sts get-caller-identityBefehl ausführen.Alle verfügbaren Optionen finden Sie, wenn Sie den
aws eks update-kubeconfig helpBefehl ausführen oder unter update-kubeconfig in der AWS CLI-Befehlsreferenz nachlesen. -
Testen Sie Ihre Konfiguration.
kubectl get svcEine Beispielausgabe sieht wie folgt aus.
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE svc/kubernetes ClusterIP 10.100.0.1 <none> 443/TCP 1mWenn Sie Autorisierungs- oder Ressourcenfehler erhalten, finden Sie weitere Informationen unter Nicht autorisiert oder Zugriff verweigert (kubectl) im Thema zur Fehlerbehebung.
-