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.
Arbeiten mit dem Amazon VPC CNI plugin for Kubernetes-Amazon-EKS-Add-on
Das Amazon VPC CNI plugin for Kubernetes-Add-On wird auf jedem Amazon-EC2-Knoten in Ihrem Amazon-EKS-Cluster bereitgestellt. Das Add-On erstellt Elastic-Network-Schnittstellen (Netzwerkschnittstellen) und fügt sie an Ihre Amazon-EC2-Knoten an. Das Add-On weist jedem Pod und Service auch eine private IPv4
- oder IPv6
-Adresse von Ihrer VPC zu.
Eine Version des Add-Ons wird mit jedem Fargate-Knoten in Ihrem Cluster bereitgestellt, aber Sie aktualisieren sie nicht auf Fargate-Knoten. Andere kompatible CNI-Plugins sind für die Verwendung in Amazon-EKS-Clustern verfügbar, aber dies ist das einzige CNI-Plugin, das von Amazon EKS unterstützt wird.
In der folgenden Tabelle finden Sie die neueste Version des Kubernetes-Add-Ons, die für jede Amazon-EKS-Cluster-Version verfügbar ist.
Kubernetes-Version | 1.29 |
1.28 |
1.27 |
1.26 |
1.25 |
1.24 |
1.23 |
---|---|---|---|---|---|---|---|
VPC-CNI-Version vom Typ Amazon EKS | v1.18.0-eksbuild.1 |
v1.18.0-eksbuild.1 |
v1.18.0-eksbuild.1 |
v1.18.0-eksbuild.1 |
v1.18.0-eksbuild.1 |
v1.18.0-eksbuild.1 |
v1.18.0-eksbuild.1 |
Wichtig
Wenn Sie dieses Add-on selbst verwalten, stimmen die Versionen in der Tabelle möglicherweise nicht mit den verfügbaren selbstverwalteten Versionen überein. Weitere Hinweise zur Aktualisierung des selbstverwalteten Typs dieses Add-ons finden Sie unter Aktualisieren des selbstverwalteten -Add-ons.
Voraussetzungen
-
Ein vorhandener Amazon-EKS-Cluster. Informationen zum Bereitstellen finden Sie unter Erste Schritte mit Amazon EKS.
-
Ein vorhandener AWS Identity and Access Management (IAM) OpenID Connect (OIDC) -Anbieter für Ihren Cluster. Informationen zum Feststellen, ob Sie bereits über einen verfügen oder einen erstellen müssen, finden Sie unter Erstellen Sie einen OIDC IAM-Anbieter für Ihren Cluster.
-
Eine IAM-Rolle mit angefügter AmazonEKS_CNI_Policy-IAM-Richtlinie (wenn Ihr Cluster die
IPv4
-Produktfamilie verwendet) oder IPv6-Richtlinie (wenn Ihr Cluster dieIPv6
-Familie verwendet). Weitere Informationen finden Sie unter Konfigurieren der Amazon VPC CNI plugin for Kubernetes zur Verwendung von IAM-Rollen für Servicekonten (IRSA). -
Wenn Sie Version
1.7.0
oder höher des Amazon VPC CNI plugin for Kubernetes verwenden und benutzerdefinierte Pod-Sicherheitsrichtlinien verwenden, siehe Löschen der standardmäßigen Amazon-EKS-Pod-SicherheitsrichtliniePod-Sicherheitsrichtlinie. -
Wichtig
Amazon VPC CNI plugin for KubernetesVersionen
v1.16.0
, bei denen die Kompatibilität mit Kubernetes Versionen1.23
und früheren Versionenv1.16.1
entfernt wurde. Die VPC CNI-Versionv1.16.2
stellt die Kompatibilität mit Kubernetes Versionen1.23
und früheren Versionen sowie mit den CNI-Spezifikationen wieder her.v0.4.0
Amazon VPC CNI plugin for KubernetesVersionen
v1.16.0
zurv1.16.1
Implementierung der CNI-Spezifikationsversion.v1.0.0
Die CNI-Spezifikationv1.0.0
wird auf EKS-Clustern unterstützt, auf denen die Kubernetes Versionenv1.24
oder höher ausgeführt werden. VPC CNI-Versionv1.16.0
bisv1.16.1
und CNI-Spezifikationv1.0.0
werden in Version oder früher nicht unterstützt. Kubernetesv1.23
Weitere Informationenv1.0.0
zur CNI-Spezifikation finden Sie unter Container Network Interface (CNI) -Spezifikation auf
Überlegungen
-
Versionen sind angegeben als
major-version.minor-version.patch-version-eksbuild.build-number
. -
Überprüfen der Versionskompatibilität für jedes Feature
Für einige Funktionen der einzelnen Versionen sind bestimmte Versionen Amazon VPC CNI plugin for Kubernetes erforderlich. Kubernetes Wenn Sie verschiedene Amazon-EKS-Features verwenden und eine bestimmte Version des Add-ons erforderlich ist, ist dies in der Featuredokumentationen vermerkt. Falls Sie keinen bestimmten Grund haben, eine frühere Version auszuführen, empfehlen wir, die neueste Version auszuführen.
Add-on vom Typ Amazon EKS erstellen
Erstellen Sie das Add-on vom Typ Amazon EKS.
-
Sehen Sie, welche Version des Container-Images derzeit auf Ihrem Cluster installiert ist.
kubectl describe daemonset aws-node --namespace kube-system | grep amazon-k8s-cni: | cut -d : -f 3
Eine Beispielausgabe sieht wie folgt aus.
v1.12.6-eksbuild.2
-
Sehen Sie, welche Version des Container-Images derzeit auf Ihrem Cluster installiert ist. Je nachdem, mit welchem Tool Sie Ihr Cluster erstellt haben, ist der Add-on vom Typ Amazon EKS möglicherweise derzeit nicht auf Ihrem Cluster installiert. Ersetzen Sie
my-cluster
durch den Namen Ihres Clusters.$
aws eks describe-addon --cluster-name
my-cluster
--addon-name vpc-cni --query addon.addonVersion --output textWenn Sie eine Versionsnummer zurückgeben, wird der Amazon-EKS-Typ des Add-Ons auf Ihrem Cluster installiert. Wenn Sie eine Versionsnummer zurückgeben, wird der Amazon-EKS-Typ des Add-Ons auf Ihrem Cluster installiert. Führen Sie die verbleibenden Schritte dieses Prozesses aus, um es zu installieren.
-
Speichern Sie die Konfiguration Ihres aktuell installierten Add-ons ab.
kubectl get daemonset aws-node -n kube-system -o yaml >
aws-k8s-cni-old.yaml
-
Erstellen Sie das Add-on mit dem AWS CLI. Wenn Sie das AWS Management Console oder verwenden möchten, um das Add-on
eksctl
zu erstellen, finden Sie weitere Informationen unter Erstellen eines Add-Ons und geben Sievpc-cni
den Namen des Add-ons an. Kopieren Sie den folgenden Befehl auf Ihr Gerät. Nehmen Sie bei Bedarf die folgenden Änderungen am Befehl vor, und führen Sie dann den geänderten Befehl aus.-
Ersetzen Sie
mit dem Namen Ihres Clusters.my-cluster
-
Ersetzen Sie
durch die neueste Version, die in der neuesten Versionstabelle für Ihre Cluster-Version aufgeführt ist.v1.18.0-eksbuild.1
-
Ersetzen Sie
111122223333
durch Ihre Konto-ID undAmazonEKSVPCCNIRole
durch den Namen einer vorhandenen IAM-Rolle, die Sie erstellt haben. Die Angabe einer Rolle erfordert, dass Sie über einen IAM OpenID Connect (OIDC)-Anbieter für Ihren Cluster verfügen. Um festzustellen, ob Sie über einen solchen für Ihren Cluster verfügen, oder um einen zu erstellen, lesen Sie Erstellen Sie einen OIDC IAM-Anbieter für Ihren Cluster.
aws eks create-addon --cluster-name
my-cluster
--addon-name vpc-cni --addon-version
\ --service-account-role-arn arn:aws:iam::v1.18.0-eksbuild.1
111122223333
:role/AmazonEKSVPCCNIRole
Wenn Sie benutzerdefinierte Einstellungen auf Ihr aktuelles Add-on angewendet haben, die mit den Standardeinstellungen des Amazon EKS-Add-ons in Konflikt stehen, schlägt die Erstellung möglicherweise fehl. Wenn die Erstellung fehlschlägt, erhalten Sie eine Fehlermeldung, die Sie bei der Problembehebung unterstützt. Alternativ können Sie den vorherigen Befehl mit
--resolve-conflicts OVERWRITE
ergänzen. Dadurch kann das Add-on alle vorhandenen benutzerdefinierten Einstellungen überschreiben. Sobald Sie das Add-on erstellt haben, können Sie es mit Ihren benutzerdefinierten Einstellungen aktualisieren. -
-
Vergewissern Sie sich, dass die neueste Version des Add-ons für die Kubernetes-Version Ihres Clusters zu Ihrem Cluster hinzugefügt wurde. Ersetzen Sie
mit dem Namen Ihres Clusters.my-cluster
aws eks describe-addon --cluster-name
my-cluster
--addon-name vpc-cni --query addon.addonVersion --output textEs kann einige Sekunden dauern, bis die Erstellung des Add-ons abgeschlossen ist.
Eine Beispielausgabe sieht wie folgt aus.
v1.18.0-eksbuild.1
-
Wenn Sie benutzerdefinierte Einstellungen für Ihr ursprüngliches Add-on vorgenommen haben, bevor Sie das Add-on vom Typ Amazon EKS erstellt haben, verwenden Sie die Konfiguration, die Sie in einem vorherigen Schritt gespeichert haben, um das Add-on vom Typ Amazon EKS mit Ihren benutzerdefinierten Einstellungen zu aktualisieren.
(Optional) Installieren Sie
cni-metrics-helper
in Ihrem Cluster. Es erfasst elastic network interface- und IP-Adressinformationen, aggregiert sie auf Clusterebene und veröffentlicht die Metriken auf Amazon. CloudWatch Weitere Informationen finden Sie unter cni-metrics-helper. GitHub
Aktualisieren des Amazon-EKS-Add-ons
Erstellen Sie das Add-on vom Typ Amazon EKS. Wenn Sie das Add-on vom Typ Amazon EKS nicht zu Ihrem Cluster hinzugefügt haben, fügen Sie ihn entweder hinzu oder sehen Sie sich Aktualisieren des selbstverwalteten -Add-ons an, anstatt dieses Verfahren abzuschließen.
-
Sehen Sie, welche Version des Container-Images derzeit auf Ihrem Cluster installiert ist. Ersetzen Sie
mit Ihrem Clusternamen.my-cluster
aws eks describe-addon --cluster-name
my-cluster
--addon-name vpc-cni --query "addon.addonVersion" --output textEine Beispielausgabe sieht wie folgt aus.
v1.12.6-eksbuild.2
Wenn die zurückgegebene Version mit der Version für die Kubernetes-Version Ihres Clusters in der aktuellen Versionstabelle übereinstimmt, haben Sie die neueste Version bereits auf Ihrem Cluster installiert und müssen den Rest dieses Verfahrens nicht abschließen. Wenn Sie eine Fehlermeldung statt einer Versionsnummer in Ihrer Ausgabe erhalten, haben Sie den Add-on vom Typ Amazon EKS nicht auf Ihrem Cluster installiert. Sie müssen das Add-on erstellen, bevor Sie es mit diesem Verfahren aktualisieren können.
-
Speichern Sie die Konfiguration Ihres aktuell installierten Add-ons ab.
kubectl get daemonset aws-node -n kube-system -o yaml >
aws-k8s-cni-old.yaml
-
Aktualisieren Sie Ihr Add-on mit der AWS CLI. Wenn Sie das AWS Management Console oder verwenden möchten, um das Add-on
eksctl
zu aktualisieren, finden Sie unterAktualisieren eines Add-Ons. Kopieren Sie den folgenden Befehl auf Ihr Gerät. Nehmen Sie bei Bedarf die folgenden Änderungen am Befehl vor, und führen Sie dann den geänderten Befehl aus.-
Ersetzen Sie
mit dem Namen Ihres Clusters.my-cluster
-
Ersetzen Sie
durch die neueste Version, die in der neuesten Versionstabelle für Ihre Cluster-Version aufgeführt ist.v1.18.0-eksbuild.1
-
Ersetzen Sie
111122223333
durch Ihre Konto-ID undAmazonEKSVPCCNIRole
durch den Namen einer vorhandenen IAM-Rolle, die Sie erstellt haben. Die Angabe einer Rolle erfordert, dass Sie über einen IAM OpenID Connect (OIDC)-Anbieter für Ihren Cluster verfügen. Um festzustellen, ob Sie über einen solchen für Ihren Cluster verfügen, oder um einen zu erstellen, lesen Sie Erstellen Sie einen OIDC IAM-Anbieter für Ihren Cluster. -
Die
--resolve-conflicts
-OptionPRESERVE
(Beibehalten) behält die vorhandenen Werte für das Add-on bei. Wenn Sie benutzerdefinierte Werte für Zusatzeinstellungen festgelegt haben und diese Option nicht verwenden, überschreibt Amazon EKS Ihre Werte mit seinen Standardwerten. Wenn Sie diese Option verwenden, empfehlen wir, dass Sie alle Feld- und Wertänderungen auf einem Nicht-Produktionscluster testen, bevor Sie das Add-on auf Ihrem Produktionscluster aktualisieren. Wenn Sie diesen Wert aufOVERWRITE
ändern, werden alle Einstellungen auf die Amazon-EKS-Standardwerte geändert. Wenn Sie benutzerdefinierte Werte für Einstellungen festgelegt haben, werden diese möglicherweise mit den Amazon-EKS-Standardwerten überschrieben. Wenn Sie diesen Wert aufnone
ändern, ändert Amazon EKS den Wert der Einstellungen nicht, aber das Update schlägt möglicherweise fehl. Wenn das Update fehlschlägt, erhalten Sie eine Fehlermeldung, die Sie bei der Behebung des Konflikts unterstützt. -
Wenn Sie eine Konfigurationseinstellung nicht aktualisieren, entfernen Sie
--configuration-values '{
aus dem Befehl. Wenn Sie eine Konfigurationseinstellung aktualisieren, ersetzen Sie"env":{"AWS_VPC_K8S_CNI_EXTERNALSNAT":"true"}
}'"env":{"AWS_VPC_K8S_CNI_EXTERNALSNAT":"true"}
durch die Einstellung, die Sie festlegen möchten. In diesem Beispiel ist die UmgebungsvariableAWS_VPC_K8S_CNI_EXTERNALSNAT
auftrue
gesetzt. Der von Ihnen angegebene Wert muss für das Konfigurationsschema gültig sein. Wenn Sie das Konfigurationsschema nicht kennenaws eks describe-addon-configuration --addon-name vpc-cni --addon-version
, führen Sie den Befehl aus und ersetzen Siev1.18.0-eksbuild.1
v1.18.0-eksbuild.1
durch die Versionsnummer des Add-ons, für das Sie die Konfiguration anzeigen möchten. Das Schema wird in der Ausgabe zurückgegeben. Wenn Sie bereits eine benutzerdefinierte Konfiguration haben, diese komplett entfernen und die Werte für alle Einstellungen auf die Amazon EKS-Standardwerte zurücksetzen möchten, entfernen Sie
aus dem Befehl, sodass nichts übrig bleibt"env":{"AWS_VPC_K8S_CNI_EXTERNALSNAT":"true"}
. Eine Erläuterung der einzelnen Einstellungen finden Sie unter CNI-Konfigurationsvariablen auf.{}
GitHub aws eks update-addon --cluster-name
my-cluster
--addon-name vpc-cni --addon-versionv1.18.0-eksbuild.1
\ --service-account-role-arn arn:aws:iam::111122223333
:role/AmazonEKSVPCCNIRole
\ --resolve-conflictsPRESERVE
--configuration-values '{"env":{"AWS_VPC_K8S_CNI_EXTERNALSNAT":"true"}
}'Es kann einige Sekunden dauern, bis das Update abgeschlossen ist.
-
-
Vergewissern Sie sich, dass die Add-on-Version aktualisiert wurde. Ersetzen Sie
mit dem Namen Ihres Clusters.my-cluster
aws eks describe-addon --cluster-name
my-cluster
--addon-name vpc-cniEs kann einige Sekunden dauern, bis das Update abgeschlossen ist.
Eine Beispielausgabe sieht wie folgt aus.
{ "addon": { "addonName": "vpc-cni", "clusterName": "
my-cluster
", "status": "ACTIVE", "addonVersion": "v1.18.0-eksbuild.1
", "health": { "issues": [] }, "addonArn": "arn:aws:eks:region
:111122223333
:addon/my-cluster
/vpc-cni/74c33d2f-b4dc-8718-56e7-9fdfa65d14a9
", "createdAt": "2023-04-12T18:25:19.319000+00:00", "modifiedAt": "2023-04-12T18:40:28.683000+00:00", "serviceAccountRoleArn": "arn:aws:iam::111122223333
:role/AmazonEKSVPCCNIRole
", "tags": {}, "configurationValues": "{\"env\":{\"AWS_VPC_K8S_CNI_EXTERNALSNAT\":\"true\"}
}" } }
Aktualisieren des selbstverwalteten -Add-ons
Wichtig
Wir empfehlen, den Amazon-EKS-Typ des Add-Ons zu Ihrem Cluster hinzuzufügen, anstatt den selbstverwalteten Typ des Add-Ons zu verwenden. Wenn Sie noch keine Erfahrung mit den Unterschieden zwischen den Typen haben, finden Sie weitere Informationen unter Amazon-EKS-Add-ons. Weitere Informationen zum Hinzufügen eines Amazon-EKS-Add-ons zu Ihrem Cluster finden Sie unter Erstellen eines Add-Ons. Wenn Sie das Amazon EKS-Add-on nicht verwenden können, empfehlen wir Ihnen, ein Problem mit der Begründung, warum Sie das nicht können, an das GitHub Container-Roadmap-Repository
-
Vergewissern Sie sich, dass Sie nicht den Amazon-EKS-Typ des Add-ons auf Ihrem Cluster installiert haben. Ersetzen Sie
my-cluster
durch den Namen Ihres Clusters.aws eks describe-addon --cluster-name
my-cluster
--addon-name vpc-cni --query addon.addonVersion --output textWenn Sie eine Versionsnummer zurückgeben, wird der Amazon-EKS-Typ des Add-ons auf Ihrem Cluster installiert. Um das Add-on selbst zu verwalten, führen Sie die verbleibenden Schritte in diesem Verfahren aus, um das Add-on zu aktualisieren. Wenn Sie eine Versionsnummer zurückgeben, wird der Amazon-EKS-Typ des Add-Ons auf Ihrem Cluster installiert. Verwenden Sie zum Aktualisieren das Verfahren in Aktualisieren eines Add-Ons und nicht das Verfahren in diesem Thema. Wenn Sie mit den Unterschieden zwischen den Add-On-Typen nicht vertraut sind, finden Sie Informationen unter Amazon-EKS-Add-ons.
-
Sehen Sie, welche Version des Container-Images derzeit auf Ihrem Cluster installiert ist.
kubectl describe daemonset aws-node --namespace kube-system | grep amazon-k8s-cni: | cut -d : -f 3
Eine Beispielausgabe sieht wie folgt aus.
v1.12.6-eksbuild.2
Ihre Ausgabe enthält möglicherweise nicht die Build-Nummer.
-
Sichern Sie Ihre aktuellen Einstellungen, damit Sie dieselben Einstellungen konfigurieren können, wenn Sie Ihre Version aktualisiert haben.
kubectl get daemonset aws-node -n kube-system -o yaml >
aws-k8s-cni-old.yaml
-
Um die verfügbaren Versionen anzuzeigen und sich mit den Änderungen in der Version, auf die Sie aktualisieren möchten, vertraut zu machen, siehe
releases
auf GitHub. Beachten Sie, dass wir empfehlen, auf dasselbemajor
zu aktualisieren.minor
.patch
Die Version ist in der Tabelle mit den neuesten verfügbaren Versionen aufgeführt, auch wenn spätere Versionen auf GitHub.. verfügbar sind. Die in der Tabelle aufgeführten Buildversionen sind in den unter GitHub aufgeführten selbstverwalteten Versionen nicht angegeben. Aktualisieren Sie Ihre Version, indem Sie die Aufgaben mit einer der folgenden Optionen ausführen:-
Wenn Sie keine benutzerdefinierten Einstellungen für das Add-on haben, führen Sie den Befehl unter der
To apply this release:
Überschrift GitHub für die Versionaus, auf die Sie aktualisieren möchten. -
Wenn Sie benutzerdefinierte Einstellungen haben, laden Sie die Manifestdatei mit dem folgenden Befehl herunter, anstatt sie anzuwenden. Ändern Sie
https://raw.githubusercontent.com/aws/ amazon-vpc-cni-k 8s/v1.18.0/config/master/aws-k8s-cni.yaml
in die URL für die Version, auf die Sie aktualisieren. GitHubcurl -O
https://raw.githubusercontent.com/aws/amazon-vpc-cni-k8s/v1.18.0/config/master/aws-k8s-cni.yaml
Ändern Sie bei Bedarf die Datei mit den benutzerdefinierten Einstellungen aus dem von Ihnen erstellten Backup und wenden Sie die geänderte Datei dann auf Ihren Cluster an. Wenn Ihre Knoten keinen Zugriff auf die privaten Amazon-EKS-/ Amazon-ECR-Repositorys haben, aus denen die Images abgerufen werden (siehe die Zeilen, die mit
image:
im Manifest beginnen), müssen Sie die Images herunterladen, in Ihr eigenes Repository kopieren und das Manifest ändern, um die Images aus Ihrem Repository abzurufen. Weitere Informationen finden Sie unter Kopieren eines Container-Images von einem Repository in ein anderes.kubectl apply -f aws-k8s-cni.yaml
-
-
Vergewissern Sie sich, dass die neue Version jetzt auf Ihrem Cluster installiert ist.
kubectl describe daemonset aws-node --namespace kube-system | grep amazon-k8s-cni: | cut -d : -f 3
Eine Beispielausgabe sieht wie folgt aus.
v1.18.0
(Optional) Installieren Sie
cni-metrics-helper
in Ihrem Cluster. Es erfasst elastic network interface- und IP-Adressinformationen, aggregiert sie auf Clusterebene und veröffentlicht die Metriken auf Amazon. CloudWatch Weitere Informationen finden Sie unter cni-metrics-helper. GitHub