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.
Erstellen Sie einen EKS Amazon-Cluster
Dieses Thema bietet einen Überblick über die verfügbaren Optionen und beschreibt, was bei der Erstellung eines EKS Amazon-Clusters zu beachten ist. Informationen zum Erstellen eines Clusters auf einem AWS Outpost finden Sie unterErstellen Sie lokale EKS Amazon-Cluster auf AWS Outposts für hohe Verfügbarkeit. Wenn Sie zum ersten Mal einen EKS Amazon-Cluster erstellen, empfehlen wir Ihnen, einen unserer Anleitungen unter zu befolgenErste Schritte mit Amazon EKS. Diese Leitfäden helfen, einen einfachen Standard-Cluster zu erstellen, ohne auf alle verfügbaren Optionen einzugehen.
Voraussetzungen
-
Ein vorhandenes VPC und Subnetze, die die EKSAmazon-Anforderungen erfüllen. Bevor Sie einen Cluster für Produktionszwecke bereitstellen, empfehlen wir Ihnen, sich mit den Anforderungen VPC und den Subnetzanforderungen gründlich vertraut zu machen. Wenn Sie nicht über Subnetze verfügenVPC, können Sie diese mithilfe einer von Amazon EKS bereitgestellten AWS CloudFormation Vorlage erstellen.
-
Das
kubectl
Befehlszeilentool ist auf Ihrem Gerät installiert oder AWS CloudShell. Die Version kann dieselbe sein oder bis zu einer Nebenversion, die früher oder später als die Kubernetes Version Ihres Clusters. Wenn Ihre Clusterversion beispielsweise1.29
ist, können Siekubectl
-Version1.28
,1.29
, oder1.30
damit verwenden. Informationen zum Installieren oder Aktualisieren vonkubectl
finden Sie unter Richten Sie kubectl und eksctl ein. -
Version
2.12.3
oder höher oder Version1.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 Sieaws --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 IAMPrincipal mit Berechtigungen für
create
unddescribe
einen EKS Amazon-Cluster. Weitere Informationen erhalten Sie unter Erstellen Sie einen lokalen Kubernetes Cluster auf einem Außenposten und Auflisten oder Beschreiben aller Cluster.
Schritt 1: IAM Cluster-Rolle erstellen
-
Wenn Sie bereits über eine IAM Cluster-Rolle verfügen oder mit der Sie Ihren Cluster erstellen möchten
eksctl
, können Sie diesen Schritt überspringen. Standardmäßig erstellteksctl
eine Rolle für Sie. -
Führen Sie den folgenden Befehl aus, um eine IAM JSON Vertrauensrichtliniendatei zu erstellen.
cat >eks-cluster-role-trust-policy.json <<EOF { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "eks.amazonaws.com" }, "Action": "sts:AssumeRole" } ] } EOF
-
Erstellen Sie die EKS IAM Amazon-Cluster-Rolle. Falls erforderlich, Vorwort
eks-cluster-role-trust-policy.json
mit dem Pfad auf Ihrem Computer, in den Sie die Datei im vorherigen Schritt geschrieben haben. Der Befehl verknüpft die im vorherigen Schritt erstellte Vertrauensrichtlinie mit der Rolle. Um eine IAM Rolle zu erstellen, muss dem IAMPrinzipal, der die Rolle erstellt, dieiam:CreateRole
Aktion (Berechtigung) zugewiesen werden.aws iam create-role --role-name myAmazonEKSClusterRole --assume-role-policy-document file://"eks-cluster-role-trust-policy.json"
-
Sie können entweder die von Amazon EKS verwaltete Richtlinie zuweisen oder Ihre eigene benutzerdefinierte Richtlinie erstellen. Informationen zu den Mindestberechtigungen, die Sie in Ihrer benutzerdefinierten Richtlinie verwenden müssen, finden Sie unter EKSIAMAmazon-Cluster-Rolle.
Fügen Sie der Rolle die von Amazon EKS verwaltete Richtlinie mit dem Namen A mazonEKSCluster Policy hinzu. Um eine IAM Richtlinie an einen IAMPrinzipal anzuhängen, muss dem Principal, der die Richtlinie anhängt, eine der folgenden IAM Aktionen (Berechtigungen) zugewiesen werden:
iam:AttachUserPolicy
oderiam:AttachRolePolicy
.aws iam attach-role-policy --policy-arn arn:aws: iam::aws:policy/AmazonEKSClusterPolicy --role-name myAmazonEKSClusterRole
Schritt 2: Cluster erstellen
Sie können einen Cluster erstellen, indem Sie Folgendes verwenden:
Cluster erstellen - eksctl
-
Sie benötigen eine Version
0.194.0
oder eine neuere Version deseksctl
Befehlszeilentools, das auf Ihrem Gerät installiert ist oder. AWS CloudShell Informationen zum Installieren und Aktualisieren voneksctl
finden Sie in der Dokumentation zueksctl
unter Installation. -
Erstellen Sie einen EKS
IPv4
Amazon-Cluster mit dem EKS Amazon-Standard Kubernetes Version in Ihrer AWS Standardregion. Nehmen Sie vor der Ausführung des Befehls die folgenden Ersetzungen vor: -
Ersetzen
region-code
mit der AWS Region, in der Sie Ihren Cluster erstellen möchten. -
Ersetzen
my-cluster
mit einem Namen für Ihren Cluster. Der Name darf nur alphanumerische Zeichen (wobei die Groß- und Kleinschreibung beachtet werden muss) und Bindestriche enthalten. Es muss mit einem alphanumerischen Zeichen beginnen und darf nicht länger als 100 Zeichen sein. Der Name muss innerhalb der AWS Region und des AWS Kontos, in dem Sie den Cluster erstellen, eindeutig sein. -
Ersetzen
1.29
mit jeder EKSvon Amazon unterstützten Version. -
Ändern Sie die Werte für
vpc-private-subnets
, um Ihre Anforderungen zu erfüllen. Sie können auch weitere hinzufügenIDs. Sie müssen mindestens zwei Subnetze IDs angeben. Wenn Sie lieber öffentliche Subnetze angeben möchten, können Sie zu wechseln--vpc-private-subnets
.--vpc-public-subnets
Öffentlichen Subnetzen ist eine Routing-Tabelle mit einer Route zu einem Internet-Gateway zugeordnet, privaten Subnetzen ist jedoch keine Routing-Tabelle zugeordnet. Wir empfehlen, nach Möglichkeit private Subnetze zu verwenden.Die von Ihnen ausgewählten Subnetze müssen die EKSAmazon-Subnetzanforderungen erfüllen. Bevor Sie Subnetze auswählen, empfehlen wir Ihnen, sich mit allen Amazon EKS VPC - und Subnetzanforderungen und Überlegungen vertraut zu machen.
-
Führen Sie den folgenden Befehl aus:
eksctl create cluster --name my-cluster --region region-code --version 1.29 --vpc-private-subnets subnet-ExampleID1,subnet-ExampleID2 --without-nodegroup
Die Clusterbereitstellung dauert mehrere Minuten. Während der Cluster erstellt wird, werden mehrere Ausgabezeilen angezeigt. Die letzte Ausgabezeile ähnelt der folgenden Beispielzeile.
[✓] EKS cluster "my-cluster" in "region-code" region is ready
-
Fahren Sie fort mit Schritt 3: Kubeconfig aktualisieren
Optionale Einstellungen
Sie können die meisten Optionen, die beim Erstellen eines Clusters mit eksctl
angegeben werden können, über den Befehl eksctl create cluster --help
anzeigen. Verwenden Sie eine config
-Datei, um alle verfügbaren Optionen anzuzeigen. Weitere Informationen finden Sie unter Verwenden von Config-Dateieneksctl
-Dokumentation. Beispiele für Konfigurationsdateien
Im Folgenden finden Sie optionale Einstellungen, die bei Bedarf dem vorherigen Befehl hinzugefügt werden müssen. Sie können diese Optionen nur aktivieren, wenn Sie den Cluster erstellen, nicht danach. Wenn Sie diese Optionen angeben müssen, müssen Sie den Cluster mit einer eksctl-Konfigurationsdatei
-
Wenn Sie eine oder mehrere Sicherheitsgruppen angeben möchten, die Amazon den von Amazon erstellten Netzwerkschnittstellen EKS zuweist, geben Sie die securityGroup
Option an. Unabhängig davon, ob Sie Sicherheitsgruppen wählen oder nicht, EKS erstellt Amazon eine Sicherheitsgruppe, die die Kommunikation zwischen Ihrem Cluster und Ihrem ermöglichtVPC. Amazon EKS ordnet diese Sicherheitsgruppe und alle von Ihnen ausgewählten Sicherheitsgruppen den von Amazon erstellten Netzwerkschnittstellen zu. Weitere Informationen zur Cluster-Sicherheitsgruppe, die Amazon EKS erstellt, finden Sie unterEKSAmazon-Sicherheitsgruppenanforderungen für Cluster anzeigen. Sie können die Regeln in der Cluster-Sicherheitsgruppe ändern, die Amazon EKS erstellt.
-
Wenn Sie angeben möchten, welcher
IPv4
Classless Inter-Domain Routing () CIDR blockiert werden soll Kubernetes weist Dienst-IP-Adressen zu, von denen aus Sie angeben, geben Sie die serviceIPv Option 4 an. CIDRWenn Sie Ihren eigenen Bereich angeben, können Sie Konflikte vermeiden zwischen Kubernetes Dienste und andere Netzwerke, über Peering oder Verbindung zu IhremVPC. Geben Sie einen Bereich in CIDR Notation ein. Beispiel:
10.2.0.0/16
.Der CIDR Block muss die folgenden Anforderungen erfüllen:
-
Verwendet einen der folgenden Bereiche:
10.0.0.0/8
,172.16.0.0/12
, oder192.168.0.0/16
. -
Hat eine Mindestgröße von
/24
und eine maximale Größe von/12
. -
Keine Überschneidung mit dem Bereich der VPC für Ihre EKS Amazon-Ressourcen.
Sie können diese Option nur angeben, wenn Sie die
IPv4
-Adressfamilie verwenden, und nur bei Erstellen des Clusters. Wenn Sie dies nicht angeben, dann Kubernetes weist Dienst-IP-Adressen aus den172.20.0.0/16
CIDR Blöcken10.100.0.0/16
oder zu.
-
-
Wenn Sie einen Cluster erstellen und möchten, dass der Cluster
IPv6
Adressen zuweist Pods und Dienste stattIPv4
Adressen, geben Sie die ipFamilyOption an. Kubernetes weist
IPv4
Adressen zu Pods und Dienste, standardmäßig. Bevor Sie sich für die Verwendung derIPv6
Produktreihe entscheiden, sollten Sie sicherstellen, dass Sie mit allen Überlegungen und Anforderungen in den Bereichen VPCAnforderungen und Überlegungen, Subnetzanforderungen und Überlegungen, View EKS Amazon-Sicherheitsgruppenanforderungen für Cluster und Erfahren Sie mehr über IPv6 Adressen für Cluster, pods, und Dienste Themen vertraut sind. Wenn Sie sich für dieIPv6
Familie entscheiden, können Sie keinen Adressbereich für angeben Kubernetes umIPv6
Serviceadressen zuzuweisen, wie Sie es für dieIPv4
Familie tun können. Kubernetes weist Serviceadressen aus dem eindeutigen lokalen Adressbereich zu (fc00::/7
).
Cluster erstellen — Konsole AWS
-
Öffnen Sie die EKSAmazon-Konsole
. -
Wählen Sie Cluster hinzufügen und dann Erstellen aus.
-
Füllen Sie auf der Seite Configure cluster (Cluster konfigurieren) die folgenden Felder aus:
-
Name – Ein Name für Ihren Cluster. Der Name darf nur alphanumerische Zeichen (Groß- und Kleinschreibung beachten), Bindestriche und Unterstriche enthalten. Er muss mit einem alphanumerischen Zeichen beginnen und darf nicht länger als 100 Zeichen sein. Der Name muss innerhalb der AWS Region und des AWS Kontos, in dem Sie den Cluster erstellen, eindeutig sein.
-
Kubernetes Version — Die Version von Kubernetes zur Verwendung für Ihren Cluster. Wir empfehlen, die frühere Version auszuwählen, es sei denn, Sie benötigen eine ältere Version.
-
Unterstützungstyp — Der Kubernetes Versionsrichtlinie, die Sie für Ihren Cluster festlegen möchten. Wenn Sie möchten, dass Ihr Cluster nur auf einer Standard-Support-Version ausgeführt wird, können Sie Standard-Support wählen. Wenn Sie möchten, dass Ihr Cluster am Ende des Standardsupports für eine Version in den erweiterten Support aufgenommen wird, können Sie den erweiterten Support wählen. Wenn Sie eine auswählen Kubernetes Version, für die derzeit erweiterter Support verfügbar ist, können Sie keinen Standardsupport als Option auswählen.
-
Cluster-Servicerolle — Wählen Sie die EKS IAM Amazon-Cluster-Rolle, die Sie erstellt haben, um das zu ermöglichen Kubernetes Kontrollebene zur Verwaltung von AWS Ressourcen in Ihrem Namen.
-
Verschlüsselung von Geheimnissen — (optional) Wählen Sie diese Option, um die Verschlüsselung von Geheimnissen zu aktivieren Kubernetes Geheimnisse mithilfe eines KMS Schlüssels. Sie können diese auch aktivieren, nachdem Sie Ihren Cluster erstellt haben. Bevor Sie diese Funktion aktivieren, stellen Sie sicher, dass Sie mit den Informationen in Encrypt Kubernetes Secrets with AWS KMS zu vorhandenen Clustern vertraut sind.
-
Tags – (Optional) Fügen Sie Ihrem Cluster beliebige Tags hinzu. Weitere Informationen finden Sie unter Organisieren Sie EKS Amazon-Ressourcen mit Tags.
Wenn Sie mit dieser Seite fertig sind, wählen Sie Weiter aus.
-
-
Wählen Sie auf der Seite Specify networking (Netzwerk angeben) die Werte für die folgenden Felder aus:
-
VPC— Wählen Sie ein vorhandenesVPC, das die EKSVPCAmazon-Anforderungen erfüllt, um Ihren Cluster zu erstellen. Bevor Sie sich für eine entscheidenVPC, empfehlen wir Ihnen, sich mit allen Anforderungen und Überlegungen in View Amazon EKS Networking Requirements for VPC and Subnets vertraut zu machen. Sie können nach der Clustererstellung nicht ändern, welche VPC Sie verwenden möchten. Wenn keine aufgeführt VPCs sind, müssen Sie zuerst eine erstellen. Weitere Informationen finden Sie unter Erstellen Sie ein Amazon VPC für Ihren EKS Amazon-Cluster.
-
Subnetze — Standardmäßig sind alle verfügbaren Subnetze in den im vorherigen Feld VPC angegebenen vorausgewählt. Sie müssen mindestens zwei auswählen.
Die von Ihnen ausgewählten Subnetze müssen die EKSAmazon-Subnetzanforderungen erfüllen. Bevor Sie Subnetze auswählen, empfehlen wir Ihnen, sich mit allen Amazon EKS VPC - und Subnetzanforderungen und Überlegungen vertraut zu machen.
Sicherheitsgruppen — (Optional) Geben Sie eine oder mehrere Sicherheitsgruppen EKS an, die Amazon den von Amazon erstellten Netzwerkschnittstellen zuordnen soll.
Unabhängig davon, ob Sie Sicherheitsgruppen wählen oder nicht, EKS erstellt Amazon eine Sicherheitsgruppe, die die Kommunikation zwischen Ihrem Cluster und Ihrem ermöglichtVPC. Amazon EKS ordnet diese Sicherheitsgruppe und alle von Ihnen ausgewählten Sicherheitsgruppen den von Amazon erstellten Netzwerkschnittstellen zu. Weitere Informationen zur Cluster-Sicherheitsgruppe, die Amazon EKS erstellt, finden Sie unterEKSAmazon-Sicherheitsgruppenanforderungen für Cluster anzeigen. Sie können die Regeln in der Cluster-Sicherheitsgruppe ändern, die Amazon EKS erstellt.
-
Cluster-IP-Adressfamilie wählen — Sie können entweder IPv4und wählen IPv6.
Kubernetes weist
IPv4
Adressen zu Pods und Dienste, standardmäßig. Bevor Sie sich für die Verwendung derIPv6
Produktfamilie entscheiden, sollten Sie sicherstellen, dass Sie mit allen Überlegungen und Anforderungen in den Bereichen VPCAnforderungen und Überlegungen, Subnetz-Anforderungen und -ÜberlegungenEKSAmazon-Sicherheitsgruppenanforderungen für Cluster anzeigen, und Erfahren Sie mehr über IPv6 Adressen für Cluster, pods, und Dienste Themen vertraut sind. Wenn Sie dieIPv6
Familie wählen, können Sie keinen Adressbereich für angeben Kubernetes umIPv6
Serviceadressen zuzuweisen, wie Sie es für dieIPv4
Familie tun können. Kubernetes weist Serviceadressen aus dem eindeutigen lokalen Adressbereich zu (fc00::/7
). -
(Optional) Wählen Sie Konfigurieren Kubernetes Dienst-IP-Adressbereich und geben Sie einen
IPv4
Dienstbereich an.Wenn Sie Ihren eigenen Bereich angeben, können Sie Konflikte vermeiden zwischen Kubernetes Dienste und andere Netzwerke, über Peering oder Verbindung zu IhremVPC. Geben Sie einen Bereich in CIDR Notation ein. Beispiel:
10.2.0.0/16
.Der CIDR Block muss die folgenden Anforderungen erfüllen:
-
Verwendet einen der folgenden Bereiche:
10.0.0.0/8
,172.16.0.0/12
, oder192.168.0.0/16
. -
Hat eine Mindestgröße von
/24
und eine maximale Größe von/12
. -
Keine Überschneidung mit dem Bereich der VPC für Ihre EKS Amazon-Ressourcen.
-
Sie können diese Option nur angeben, wenn Sie die
IPv4
-Adressfamilie verwenden, und nur bei Erstellen des Clusters. Wenn Sie dies nicht angeben, dann Kubernetes weist Dienst-IP-Adressen aus den172.20.0.0/16
CIDR Blöcken10.100.0.0/16
oder zu.-
Wählen Sie eine Option für den Cluster-Endpunktzugriff aus. Nachdem Ihr Cluster erstellt wurde, können Sie diese Option ändern. Bevor Sie eine nicht standardmäßige Option auswählen, sollten Sie sich mit den Optionen und deren Auswirkungen vertraut machen. Weitere Informationen finden Sie unter Steuern Sie den Netzwerkzugriff auf den API Clusterserver-Endpunkt.
Wenn Sie mit dieser Seite fertig sind, wählen Sie Weiter aus.
-
-
(Optional) Auf der Seite Beobachtbarkeit konfigurieren können Sie Metriken und Optionen zur Steuerebenen-Protokollierung aktivieren. Standardmäßig sind alle Protokollierungstypen deaktiviert.
-
Für weitere Informationen über die Prometheus Die Option Metriken finden Sie unterSchritt 1: Einschalten Prometheus Kennzahlen.
-
Weitere Informationen zu den Optionen für die Steuerebenen-Protokollierung finden Sie unter Protokolle der Kontrollebene an CloudWatch Logs senden.
Wenn Sie mit dieser Seite fertig sind, wählen Sie Weiter aus.
-
-
Wählen Sie auf der Seite Select add-ons (Add-Ons auswählen) die Add-Ons aus, die Sie Ihrem Cluster hinzufügen möchten. Bestimmte Add-Ons sind vorausgewählt. Sie können so viele EKSAmazon-Add-Ons und AWS Marketplace-Add-Ons auswählen, wie Sie benötigen. Wenn die AWS Marketplace-Add-Ons, die Sie installieren möchten, nicht aufgeführt sind, können Sie auf die Seitennummerierung klicken, um zusätzliche Seitenergebnisse anzuzeigen, oder nach verfügbaren AWS Marketplace-Add-Ons suchen, indem Sie Text in das Suchfeld eingeben. Sie können auch nach Kategorie, Anbieter oder Preismodell filtern und dann die Add-Ons aus den Suchergebnissen auswählen. Wenn Sie einen Cluster erstellen, können Sie jedes Add-on, das EKS Pod-Identitäten unterstützt, anzeigen, auswählen und installieren, wie unter beschriebenErfahre wie EKS Pod Identity gewährt Pods Zugriff auf AWS Dienste.
Wenn Sie mit dieser Seite fertig sind, wählen Sie Weiter aus.
Einige Add-Ons wie Amazon VPC CNIDNS, Core und Kube-Proxy sind standardmäßig installiert. Wenn Sie eines der Standard-Add-Ons deaktivieren, kann dies Ihre Fähigkeit beeinträchtigen, Kubernetes-Anwendungen auszuführen.
-
Wählen Sie auf der Seite Einstellungen für ausgewählte Add-ons konfigurieren die Version aus, die Sie installieren möchten. Sie können nach der Clustererstellung jederzeit auf eine neuere Version aktualisieren.
Bei Add-Ons, die EKS Pod-Identitäten unterstützen, können Sie die Konsole verwenden, um die Rolle automatisch zu generieren, wobei der Name, die AWS verwaltete Richtlinie und die Vertrauensrichtlinie speziell für das Add-on vorausgefüllt sind. Sie können vorhandene Rollen wiederverwenden oder neue Rollen für unterstützte Add-Ons erstellen. Die Schritte zur Verwendung der Konsole zum Erstellen von Rollen für Add-Ons, die EKS Pod-Identitäten unterstützen, finden Sie unter. Add-on erstellen (AWS Konsole) Wenn ein Add-on EKS Pod Identity nicht unterstützt, wird nach der Erstellung des Clusters eine Meldung mit Anweisungen zur Verwendung des Assistenten zum Erstellen der IAM Rollen für Dienstkonten (IRSA) angezeigt.
Sie können die Konfiguration jedes Add-Ons nach der Cluster-Erstellung aktualisieren. Weitere Informationen zum Konfigurieren eines Add-Ons finden Sie unter Ein EKS Amazon-Add-on aktualisieren. Wenn Sie mit dieser Seite fertig sind, wählen Sie Weiter aus.
-
Überprüfen Sie auf der Seite Review and create (Überprüfen und erstellen) die Informationen, die Sie auf den vorherigen Seiten eingegeben oder ausgewählt haben. Wenn Sie Änderungen vornehmen müssen, wählen Sie Edit (Bearbeiten). Wenn Sie zufrieden sind, wählen Sie Create. Im Feld Status wird angezeigt CREATING, während der Cluster bereitgestellt wird.
Anmerkung
Möglicherweise erhalten Sie die Fehlermeldung, dass eine der Availability Zones in Ihrer Anfrage nicht über genügend Kapazität verfügt, um einen EKS Amazon-Cluster zu erstellen. Wenn dies der Fall ist, enthält die Fehlerausgabe die Availability Zones, die einen neuen Cluster unterstützen können. Versuchen Sie, Ihren Cluster mit mindestens zwei Subnetzen erneut zu erstellen, die sich in den unterstützten Availability Zones für Ihr Konto befinden. Weitere Informationen finden Sie unter Unzureichende Kapazität.
Die Clusterbereitstellung dauert mehrere Minuten.
-
Fahren Sie fort mit Schritt 3: Kubeconfig aktualisieren
Cluster erstellen - AWS CLI
-
Erstellen Sie den Cluster mit dem folgenden Befehl. Nehmen Sie vor der Ausführung des Befehls die folgenden Ersetzungen vor:
Sie können diese Option nur angeben, wenn Sie die
IPv4
-Adressfamilie verwenden, und nur bei Erstellen des Clusters. Wenn Sie dies nicht angeben, dann Kubernetes weist Dienst-IP-Adressen aus den172.20.0.0/16
CIDR Blöcken10.100.0.0/16
oder zu.-
Ersetzen
region-code
mit der AWS Region, in der Sie Ihren Cluster erstellen möchten. -
Ersetzen
my-cluster
mit einem Namen für Ihren Cluster. Der Name darf nur alphanumerische Zeichen (Groß- und Kleinschreibung beachten), Bindestriche und Unterstriche enthalten. Er muss mit einem alphanumerischen Zeichen beginnen und darf nicht länger als 100 Zeichen sein. Der Name muss innerhalb der AWS Region und des AWS Kontos, in dem Sie den Cluster erstellen, eindeutig sein. -
Ersetzen
1.30
mit jeder EKSvon Amazon unterstützten Version. -
Ersetzen
111122223333
mit Ihrer Konto-ID undmyAmazonEKSClusterRole
mit dem Namen Ihrer IAM Clusterrolle. -
Ersetzen Sie
subnetIds
durch Ihre eigenen Werte. Sie können auch weitere hinzufügenIDs. Sie müssen mindestens zwei Subnetze IDs angeben.Die von Ihnen ausgewählten Subnetze müssen die EKSAmazon-Subnetzanforderungen erfüllen. Bevor Sie Subnetze auswählen, empfehlen wir Ihnen, sich mit allen Amazon EKS VPC - und Subnetzanforderungen und Überlegungen vertraut zu machen.
-
Wenn Sie keine Sicherheitsgruppen-ID angeben möchten, entfernen Sie sie
,securityGroupIds=sg-<ExampleID1>
aus dem Befehl. Wenn Sie eine oder mehrere Sicherheitsgruppen angeben möchtenIDs, ersetzen Sie die Werte fürsecurityGroupIds
durch Ihre eigenen. Sie können auch weitere hinzufügenIDs.Unabhängig davon, ob Sie Sicherheitsgruppen wählen oder nicht, EKS erstellt Amazon eine Sicherheitsgruppe, die die Kommunikation zwischen Ihrem Cluster und Ihrem ermöglichtVPC. Amazon EKS ordnet diese Sicherheitsgruppe und alle von Ihnen ausgewählten Sicherheitsgruppen den von Amazon erstellten Netzwerkschnittstellen zu. Weitere Informationen zur Cluster-Sicherheitsgruppe, die Amazon EKS erstellt, finden Sie unterEKSAmazon-Sicherheitsgruppenanforderungen für Cluster anzeigen. Sie können die Regeln in der Cluster-Sicherheitsgruppe ändern, die Amazon EKS erstellt.
aws eks create-cluster --region region-code --name my-cluster --kubernetes-version 1.30 \ --role-arn arn:aws: iam::111122223333:role/myAmazonEKSClusterRole \ --resources-vpc-config subnetIds=subnet-ExampleID1,subnet-ExampleID2,securityGroupIds=sg-ExampleID1
Anmerkung
Möglicherweise erhalten Sie die Fehlermeldung, dass eine der Availability Zones in Ihrer Anfrage nicht über genügend Kapazität verfügt, um einen EKS Amazon-Cluster zu erstellen. Wenn dies der Fall ist, enthält die Fehlerausgabe die Availability Zones, die einen neuen Cluster unterstützen können. Versuchen Sie, Ihren Cluster mit mindestens zwei Subnetzen erneut zu erstellen, die sich in den unterstützten Availability Zones für Ihr Konto befinden. Weitere Informationen finden Sie unter Unzureichende Kapazität.
Im Folgenden finden Sie optionale Einstellungen, die bei Bedarf dem vorherigen Befehl hinzugefügt werden müssen. Sie können diese Optionen nur aktivieren, wenn Sie den Cluster erstellen, nicht danach.
-
Standardmäßig werden während der Clustererstellung mehrere Netzwerk-Add-Ons EKS installiert. Dazu gehören Amazon VPC CNIDNS, Core und Kube-Proxy.
Wenn Sie die Installation dieser Standard-Netzwerk-Add-Ons deaktivieren möchten, verwenden Sie den folgenden Parameter. Dies kann für alternative CNIs Anwendungen wie Cilium verwendet werden. Weitere Informationen finden Sie in der EKSAPIReferenz.
aws eks create-cluster --bootstrapSelfManagedAddons false
-
Wenn Sie angeben möchten, welcher
IPv4
Classless Inter-Domain Routing () blockiert CIDR Kubernetes weist Dienst-IP-Adressen zu, von denen Sie diese angeben müssen, indem Sie die Option „Geben Sie Ihren eigenen Bereich--kubernetes-network-config serviceIpv4Cidr=<cidr-block>
to the following command.10.2.0.0/16
. Der CIDR Block muss die folgenden Anforderungen erfüllen:-
Verwendet einen der folgenden Bereiche:
10.0.0.0/8
,172.16.0.0/12
, oder192.168.0.0/16
. -
Hat eine Mindestgröße von
/24
und eine maximale Größe von/12
. -
Keine Überschneidung mit dem Bereich der VPC für Ihre EKS Amazon-Ressourcen.
-
-
Wenn Sie einen Cluster erstellen und möchten, dass der Cluster
IPv6
Adressen zuweist Pods und Dienste stattIPv4
Adressen, fügen Sie--kubernetes-network-config ipFamily=ipv6
den folgenden Befehl hinzu.Kubernetes weist
IPv4
Adressen zu Pods und Dienste, standardmäßig. Bevor Sie sich für die Verwendung derIPv6
Produktfamilie entscheiden, sollten Sie sicherstellen, dass Sie mit allen Überlegungen und Anforderungen in den Bereichen VPCAnforderungen und Überlegungen, Subnetz-Anforderungen und -ÜberlegungenEKSAmazon-Sicherheitsgruppenanforderungen für Cluster anzeigen, und Erfahren Sie mehr über IPv6 Adressen für Cluster, pods, und Dienste Themen vertraut sind. Wenn Sie dieIPv6
Familie wählen, können Sie keinen Adressbereich für angeben Kubernetes umIPv6
Serviceadressen zuzuweisen, wie Sie es für dieIPv4
Familie tun können. Kubernetes weist Serviceadressen aus dem eindeutigen lokalen Adressbereich zu (fc00::/7
).
-
-
Die Bereitstellung des Clusters dauert mehrere Minuten. Sie können den Status Ihres Clusters mit dem folgenden Befehl überprüfen.
aws eks describe-cluster --region region-code --name my-cluster --query "cluster.status"
Fahren Sie erst mit dem nächsten Schritt fort, wenn die zurückgegebene Ausgabe lautet
ACTIVE
. -
Fahren Sie fort mit Schritt 3: Kubeconfig aktualisieren
Schritt 3: Kubeconfig aktualisieren
-
Wenn Sie Ihren Cluster mit
eksctl
erstellt haben, können Sie diesen Schritt überspringen. Das liegt daran, dasseksctl
diesen Schritt bereits für Sie durchgeführt hat. Aktivieren Siekubectl
, um mit Ihrem Cluster zu kommunizieren, indem Sie einen neuen Kontext zur Dateikubectl
config
hinzufügen. Weitere Informationen zum Erstellen und Aktualisieren der Datei finden Sie unter Connect kubectl mit einem EKS Cluster, indem Sie eine kubeconfig-Datei erstellen.aws eks update-kubeconfig --region region-code --name my-cluster
Eine Beispielausgabe sieht wie folgt aus.
Added new context arn:aws: eks:region-code:111122223333:cluster/my-cluster to /home/username/.kube/config
-
Bestätigen Sie die Kommunikation mit Ihrem Cluster, indem Sie den folgenden Befehl ausführen.
kubectl get svc
Eine Beispielausgabe sieht wie folgt aus.
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE kubernetes ClusterIP 10.100.0.1 <none> 443/TCP 28h
Schritt 4: Cluster-Setup
-
(Empfohlen) Um einige EKS Amazon-Add-Ons zu verwenden oder einzelne zu aktivieren Kubernetes Um Workloads über spezifische AWS Identity and Access Management Zugriffsverwaltungsberechtigungen (IAM) zu verfügen, erstellen Sie einen IAM OpenID Connect (OIDC) -Anbieter für Ihren Cluster. Sie müssen nur einen erstellen IAM OIDC Anbieter für Ihren Cluster einmal. Weitere Informationen zu EKS Amazon-Add-Ons finden Sie unterEKSAmazon-Add-Ons. Weitere Informationen zum Zuweisen bestimmter IAM Berechtigungen für Ihre Workloads finden Sie unter. IAM-Rollen für Servicekonten
-
(Empfohlen) Konfigurieren Sie Ihren Cluster für Amazon VPC CNI plugin for Kubernetes Plug-in, bevor Sie EC2 Amazon-Knoten in Ihrem Cluster bereitstellen. Standardmäßig wurde das Plugin mit Ihrem Cluster installiert. Wenn Sie EC2 Amazon-Knoten zu Ihrem Cluster hinzufügen, wird das Plugin automatisch auf jedem EC2 Amazon-Knoten bereitgestellt, den Sie hinzufügen. Das Plugin erfordert, dass Sie einer IAM Rolle eine der folgenden IAM Richtlinien zuordnen. Wenn Ihr Cluster die
IPv4
Familie verwendet, verwenden Sie die von Amazon EKS _ CNI IAM _Policy verwaltete Richtlinie. Wenn Ihr Cluster dieIPv6
Familie verwendet, verwenden Sie eine von Ihnen erstellte IAM Richtlinie.Bei der IAM Rolle, der Sie die Richtlinie zuordnen, kann es sich um die IAM Knotenrolle oder um eine dedizierte Rolle handeln, die nur für das Plugin verwendet wird. Wir empfehlen, die Richtlinie an diese Rolle anzuhängen. Weitere Informationen zum Erstellen der Rolle finden Sie unter Konfigurieren Sie VPC CNI das zu verwendende Amazon-Plugin IRSA oder Amazon EKS Node IAM Role.
-
Wenn Sie Ihren Cluster mit dem bereitgestellt haben AWS Management Console, können Sie diesen Schritt überspringen. Der AWS Management Console stellt den bereit Amazon VPC CNI plugin for Kubernetes, CoreDNS, und standardmäßig
kube-proxy
EKS Amazon-Add-Ons.Wenn Sie Ihren Cluster mit einem
eksctl
oder dem bereitstellen AWS CLI, dann Amazon VPC CNI plugin for Kubernetes, CoreDNS, undkube-proxy
selbstverwaltete Add-Ons werden bereitgestellt. Sie können das migrieren Amazon VPC CNI plugin for Kubernetes, CoreDNSundkube-proxy
selbstverwaltete Add-Ons, die mit Ihrem Cluster bereitgestellt werden, für EKS Amazon-Add-Ons. Weitere Informationen finden Sie unter EKSAmazon-Add-Ons. -
(Optional) Falls Sie dies noch nicht getan haben, können Sie Folgendes aktivieren Prometheus Metriken für Ihren Cluster. Weitere Informationen finden Sie unter Erstellen eine Scrapers im Benutzerhandbuch von Amazon Managed Service für Prometheus.
-
Wenn Sie planen, Workloads in Ihrem Cluster bereitzustellen, die EBS Amazon-Volumes verwenden, und Sie einen
1.23
oder einen späteren Cluster erstellt haben, müssen Sie Amazon EBS CSI in Ihrem Cluster installieren, bevor Sie die Workloads bereitstellen.
Nächste Schritte
-
Der IAMPrincipal, der den Cluster erstellt hat, ist der einzige Principal, der Zugriff auf den Cluster hat. Erteilen Sie anderen IAM Principals Berechtigungen, damit sie auf Ihren Cluster zugreifen können.
-
Wenn der IAM Principal, der den Cluster erstellt hat, nur über die IAM Mindestberechtigungen verfügt, auf die in den Voraussetzungen verwiesen wird, möchten Sie möglicherweise zusätzliche EKS Amazon-Berechtigungen für diesen Prinzipal hinzufügen. Weitere Informationen zur Erteilung von EKS Amazon-Berechtigungen an IAM Principals finden Sie unterIdentitäts- und Zugriffsmanagement für Amazon EKS.
-
Wenn Sie möchten, dass der IAM Prinzipal, der den Cluster erstellt hat, oder andere Prinzipale einsehen Kubernetes Ressourcen in der EKS Amazon-Konsole, gewähren Sie den Entitäten die erforderlichen Berechtigungen.
-
Wenn Sie möchten, dass Knoten und IAM Principals von Ihrem aus auf Ihren Cluster zugreifenVPC, aktivieren Sie den privaten Endpunkt für Ihren Cluster. Standardmäßig ist der öffentliche Endpunkt aktiviert. Sie können den öffentlichen Endpunkt deaktivieren, sobald Sie den privaten Endpunkt aktiviert haben, falls gewünscht. Weitere Informationen finden Sie unter Steuern Sie den Netzwerkzugriff auf den API Clusterserver-Endpunkt.
-
Aktivieren Sie die Secrets-Verschlüsselung für Ihren Cluster.