Ein EKS Amazon-Add-on 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.

Ein EKS Amazon-Add-on erstellen

EKSAmazon-Add-Ons sind Zusatzsoftware für EKS Amazon-Cluster. Alle EKS Amazon-Add-Ons:

  • Fügen Sie die neuesten Sicherheitspatches und Bugfixes hinzu.

  • Wurden von AWS für die Zusammenarbeit mit Amazon validiertEKS.

  • Reduzieren Sie den Arbeitsaufwand für die Verwaltung der Zusatzsoftware.

Sie können ein EKS Amazon-Add-on mit eksctl AWS Management Console, dem oder dem erstellen AWS CLI. Wenn für das Add-on eine IAM Rolle erforderlich ist, finden Sie in den Details für das jeweilige Add-on in EKSAmazon-Add-Ons EKS Amazon-Add-Ons weitere Informationen zur Erstellung der Rolle.

Voraussetzungen

Gehen Sie wie folgt vor, bevor Sie ein Add-on erstellen:

Verfahren

Sie können ein EKS Amazon-Add-on mit eksctl AWS Management Console, dem oder dem erstellen AWS CLI. Wenn für das Add-on eine IAM Rolle erforderlich ist, finden Sie in den Details für das jeweilige Add-on unter Verfügbare EKS Amazon-Add-Ons von AWS Verfügbare EKS Amazon-Add-Ons von weitere Informationen AWS zur Erstellung der Rolle.

Add-on erstellen (eksctl)

  1. Zeigen Sie die Namen der Add-Ons an, die für eine Cluster-Version verfügbar sind. Ersetzen 1.30 mit der Version Ihres Clusters.

    eksctl utils describe-addon-versions --kubernetes-version 1.30 | grep AddonName

    Eine Beispielausgabe sieht wie folgt aus.

    "AddonName": "aws-ebs-csi-driver", "AddonName": "coredns", "AddonName": "kube-proxy", "AddonName": "vpc-cni", "AddonName": "adot", "AddonName": "dynatrace_dynatrace-operator", "AddonName": "upbound_universal-crossplane", "AddonName": "teleport_teleport", "AddonName": "factorhouse_kpow", [...]
  2. Zeigen Sie die Versionen des Add-Ons an, die für das Add-On verfügbar sind, das Sie erstellen möchten. Ersetzen 1.30 mit der Version Ihres Clusters. Ersetzen name-of-addon mit dem Namen des Add-ons, für das Sie die Versionen anzeigen möchten. Der Name muss einer der Namen sein, die im vorherigen Schritt zurückgegeben wurden.

    eksctl utils describe-addon-versions --kubernetes-version 1.30 --name name-of-addon | grep AddonVersion

    Die folgende Ausgabe ist ein Beispiel dafür, was für das Add-On mit dem Namen vpc-cni zurückgegeben wird. Sie können sehen, dass das Add-On in mehreren Versionen verfügbar ist.

    "AddonVersions": [ "AddonVersion": "v1.12.0-eksbuild.1", "AddonVersion": "v1.11.4-eksbuild.1", "AddonVersion": "v1.10.4-eksbuild.1", "AddonVersion": "v1.9.3-eksbuild.1",
    1. Stellen Sie fest, ob es sich bei dem Add-on, das Sie erstellen möchten, um ein Amazon EKS - oder AWS Marketplace-Add-on handelt. Der AWS Marketplace enthält Add-Ons von Drittanbietern, für die Sie zusätzliche Schritte ausführen müssen, um das Add-on zu erstellen.

      eksctl utils describe-addon-versions --kubernetes-version 1.30 --name name-of-addon | grep ProductUrl

      Wenn keine Ausgabe zurückgegeben wird, handelt es sich bei dem Add-On um ein AmazonEKS. Wenn die Ausgabe zurückgegeben wird, handelt es sich bei dem Add-On um ein AWS Marketplace-Add-On. Die folgende Ausgabe bezieht sich auf ein Add-On mit dem Namen teleport_teleport.

      "ProductUrl": "https://aws.amazon.com/marketplace/pp?sku=3bda70bb-566f-4976-806c-f96faef18b26"

      Sie können mehr über das Add-on im AWS Marketplace mit dem zurückgegebenen Add-on erfahrenURL. Wenn für das Add-on ein Abonnement erforderlich ist, können Sie das Add-on über den AWS Marketplace abonnieren. Wenn Sie ein Add-on im AWS Marketplace erstellen möchten, muss der IAMPrincipal, den Sie zum Erstellen des Add-ons verwenden, über die Berechtigung verfügen, die AWSServiceRoleForAWSLicenseManagerRoleserviceverknüpfte Rolle zu erstellen. Weitere Informationen zum Zuweisen von Berechtigungen zu einer IAM Entität finden Sie unter Hinzufügen und Entfernen von IAM Identitätsberechtigungen im IAM Benutzerhandbuch.

  3. Erstellen Sie ein EKS Amazon-Add-on. Kopieren Sie den Befehl und ersetzen Sie den user-data wie folgt festlegt:

    • Ersetzen my-cluster mit dem Namen Ihres Clusters.

    • Ersetzen name-of-addon mit dem Namen des Add-ons, das Sie erstellen möchten.

    • Wenn du eine Version des Add-ons haben möchtest, die älter als die neueste Version ist, dann ersetze latest mit der Versionsnummer, die in der Ausgabe eines vorherigen Schritts zurückgegeben wurde, den Sie verwenden möchten.

    • Wenn das Add-on eine Dienstkontorolle verwendet, ersetzen Sie 111122223333 mit Ihrer Konto-ID und ersetzen role-name mit dem Namen der Rolle. Anweisungen zum Erstellen einer Rolle für Ihr Dienstkonto finden Sie in der Dokumentation für das Add-on, das Sie erstellen. Eine Liste der Add-Ons finden Sie unterVerfügbare EKS Amazon-Add-Ons von AWS. Für die Angabe einer Dienstkontorolle benötigen Sie eine IAM OpenID Connect (OIDC) Anbieter für Ihren Cluster. Um festzustellen, ob Sie über einen solchen für Ihren Cluster verfügen, oder um einen zu erstellen, lesen Sie Erstelle eine IAM OIDC Anbieter für Ihren Cluster.

      Wenn das Add-on keine Dienstkontorolle verwendet, löschen Sie es--service-account-role-arn arn:aws: iam::111122223333:role/role-name.

    • Dieser Beispielbefehl überschreibt die Konfiguration aller vorhandenen selbstverwalteten Versionen des Add-Ons, falls es eine gibt. Wenn Sie die Konfiguration eines vorhandenen selbstverwalteten Add-ons nicht überschreiben möchten, entfernen Sie das --force Option. Wenn Sie die Option entfernen und das EKS Amazon-Add-on die Konfiguration eines vorhandenen selbstverwalteten Add-ons überschreiben muss, schlägt die Erstellung des EKS Amazon-Add-ons fehl und es wird eine Fehlermeldung angezeigt, die Ihnen bei der Lösung des Konflikts hilft. Bevor Sie diese Option angeben, stellen Sie sicher, dass das EKS Amazon-Add-on keine Einstellungen verwaltet, die Sie verwalten müssen, da diese Einstellungen mit dieser Option überschrieben werden.

      eksctl create addon --cluster my-cluster --name name-of-addon --version latest \ --service-account-role-arn arn:aws: iam::111122223333:role/role-name --force

      Sie finden eine Liste mit allen verfügbaren Optionen für den Befehl.

      eksctl create addon --help

      Weitere Informationen zu verfügbaren Optionen finden Sie unter Add-Ons in der eksctl-Dokumentation.

Add-on erstellen (AWS Konsole)

  1. Öffnen Sie die EKSAmazon-Konsole.

  2. Wählen Sie im linken Navigationsbereich die Option Cluster aus.

  3. Wählen Sie den Namen des Clusters, für den Sie das Add-on erstellen möchten.

  4. Wählen Sie die Registerkarte Add-ons.

  5. Wählen Sie Weitere Add-Ons erhalten.

  6. 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. Sie können so viele EKSAmazon-Add-Ons und AWS Marketplace-Add-Ons hinzufügen, wie Sie benötigen.

    Für AWS Marketplace-Add-Ons muss der IAMPrincipal, den Sie zum Erstellen des Add-ons verwenden, über Berechtigungen zum Lesen von Berechtigungen für das Add-on aus dem AWS LicenseManager verfügen. AWS LicenseManager erfordert eine AWSServiceRoleForAWSLicenseManagerRoledienstbezogene Rolle (SLR), die es AWS Ressourcen ermöglicht, Lizenzen in Ihrem Namen zu verwalten. Dies SLR ist eine einmalige Anforderung pro Konto, und Sie müssen weder für jedes Add-On noch für jeden Cluster separate SLR Konten erstellen. Weitere Informationen zum Zuweisen von Berechtigungen zu einem IAMPrinzipal finden Sie unter Hinzufügen und Entfernen von IAM Identitätsberechtigungen im IAM Benutzerhandbuch.

    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 im Suchfeld suchen. In den Filtering options (Filteroptionen) können Sie auch nach category (Kategorie), vendor (Anbieter) oder pricing model (Preismodell) filtern und dann die Add-ons aus den Suchergebnissen auswählen. Nachdem Sie die Add-Ons ausgewählt haben, die Sie installieren möchten, wählen Sie Weiter.

  7. Gehen Sie auf der Seite Konfigurieren ausgewählter Add-Ons-Einstellungen wie folgt vor:

    1. Wählen Sie View subscription options (Abonnementoptionen anzeigen), um das Formular Subscription options (Abonnementoptionen) zu öffnen. Lesen Sie die Abschnitte Pricing details (Preisinformationen) und Legal (Rechtliche Hinweise) und klicken Sie dann auf Subscribe (Abonnieren), um fortzufahren.

    2. Wählen Sie unter Version die Version aus, die Sie installieren möchten. Wir empfehlen die als neueste Version markierte Version, es sei denn, das einzelne Add-on, das Sie erstellen, empfiehlt eine andere Version. Um festzustellen, ob es für ein Add-On eine empfohlene Version gibt, lesen Sie in der Dokumentation zu dem Add-on, das Sie erstellen. Eine Liste der Add-Ons finden Sie unterVerfügbare EKS Amazon-Add-Ons von AWS.

    3. Sie haben zwei Möglichkeiten, Rollen für Add-Ons zu konfigurieren: die IAM Rolle „EKSPod Identities“ und „IAMRollen für Dienstkonten“ (IRSA). Folgen Sie den entsprechenden Schritten unten für Ihre bevorzugte Option. Wenn für alle von Ihnen ausgewählten Add-Ons unter Status die Option Abonnement erforderlich steht, wählen Sie Weiter aus. Sie können diese Add-Ons erst weiter Ein EKS Amazon-Add-on aktualisieren konfigurieren, wenn Sie sie nach der Erstellung Ihres Clusters abonniert haben. Gehen Sie für die Add-Ons, für die unter Status nicht die Option Abonnement erforderlich ist, wie folgt vor:

      1. Für die Pod IAM Identity-Rolle für ein Dienstkonto können Sie entweder eine vorhandene EKS IAM Pod-Identity-Rolle verwenden oder eine erstellen, indem Sie auf die Schaltfläche „Empfohlene Rolle erstellen“ klicken. Dieses Feld enthält nur Optionen mit der entsprechenden Vertrauensrichtlinie. Wenn es keine Rolle zur Auswahl gibt, haben Sie keine bestehende Rolle mit einer passenden Vertrauensrichtlinie. Um eine EKS Pod IAM Identity-Rolle für Dienstkonten des ausgewählten Add-ons zu konfigurieren, wählen Sie Empfohlene Rolle erstellen aus. Der Assistent zur Rollenerstellung wird in einem separaten Fenster geöffnet. Der Assistent füllt die Rolleninformationen automatisch wie folgt aus. Führen Sie für jedes Add-On, für das Sie die EKS Pod IAM Identity-Rolle erstellen möchten, die Schritte im IAM Assistenten wie folgt aus.

        • Im Schritt Vertrauenswürdige Entität auswählen sind die AWS Serviceoption für EKSund der Anwendungsfall für EKS— Pod Identity vorausgewählt, und die entsprechende Vertrauensrichtlinie wird automatisch für das Add-on ausgefüllt. Beispielsweise wird die Rolle mit der entsprechenden Vertrauensrichtlinie erstellt, die den pods---eks.amazonaws.com.rproxy.goskope.com-Prinzipal enthält, wie unter IAM beschrieben. Vorteile von EKS Pod-Identitäten Wählen Sie Weiter.

        • Im Schritt „Berechtigungen hinzufügen“ wird die entsprechende verwaltete Richtlinie für die Rollenrichtlinie für das Add-on vorausgewählt. Für das VPC CNI Amazon-Add-on wird die Rolle beispielsweise mit der verwalteten Richtlinie `Amazon EKS _ CNI _Policy` erstellt, wie unter beschrieben. VPCCNIAmazon-Plugin für Kubernetes Wählen Sie Weiter.

        • Im Schritt Name, Überprüfung und Erstellung im Feld Rollenname wird der Standardrollenname für das Add-on automatisch aufgefüllt. Für das VPCCNIAmazon-Add-on wird die Rolle beispielsweise mit dem Namen A erstellt mazonEKSPod IdentityAmazonVPCCNIRole. Unter Beschreibung wird die Standardbeschreibung automatisch mit der entsprechenden Beschreibung für das Add-on aufgefüllt. Für das VPC CNI Amazon-Add-on wird die Rolle beispielsweise mit der Beschreibung Erlaubt Pods, die im EKS Amazon-Cluster ausgeführt werden, den Zugriff auf AWS Ressourcen erstellt. Sehen Sie sich unter Vertrauensrichtlinie die ausgefüllte Vertrauensrichtlinie für das Add-on an. Wählen Sie Rolle erstellen.

          NOTE: Die Beibehaltung des Standardrollennamens EKS ermöglicht die Vorauswahl der Rolle für Add-Ons in neuen Clustern oder beim Hinzufügen von Add-Ons zu vorhandenen Clustern. Sie können diesen Namen immer noch überschreiben und die Rolle wird für das Add-on in Ihren Clustern verfügbar sein, aber die Rolle muss manuell aus der Drop-down-Liste ausgewählt werden.

      2. Informationen zu Add-Ons, für die unter Status nicht „Abonnement erforderlich“ steht und mit denen Sie Rollen konfigurieren möchtenIRSA, finden Sie in der Dokumentation für das Add-on, das Sie erstellen, um eine IAM Richtlinie zu erstellen und sie einer Rolle zuzuordnen. Eine Liste der Add-Ons finden Sie unterVerfügbare EKS Amazon-Add-Ons von AWS. Für die Auswahl einer IAM Rolle benötigen Sie eine IAM OpenID Connect (OIDC) Anbieter für Ihren Cluster. Um festzustellen, ob Sie über einen solchen für Ihren Cluster verfügen, oder um einen zu erstellen, lesen Sie Erstelle eine IAM OIDC Anbieter für Ihren Cluster.

      3. Wählen Sie Optional configuration settings (Optionale Konfigurationseinstellungen) aus.

      4. Wenn für das Add-On eine Konfiguration erforderlich ist, geben Sie diese in das Feld Configuration values (Konfigurationswerte) ein. Informationen darüber, ob für das Add-on Konfigurationsinformationen erforderlich sind, finden Sie in der Dokumentation zu dem Add-on, das Sie erstellen. Eine Liste der Add-Ons finden Sie unterVerfügbare EKS Amazon-Add-Ons von AWS.

      5. Wählen Sie eine der verfügbaren Optionen für die Konfliktlösungsmethode. Wenn Sie Override für die Konfliktlösungsmethode wählen, können eine oder mehrere Einstellungen für das bestehende Add-on mit den EKS Amazon-Add-On-Einstellungen überschrieben werden. Wenn Sie diese Option nicht aktivieren und ein Konflikt mit Ihren vorhandenen Einstellungen besteht, schlägt der Vorgang fehl. Sie können die sich daraus ergebende Fehlermeldung heranziehen, um den Konflikt zu beheben. Bevor Sie diese Option wählen, stellen Sie sicher, dass das EKS Amazon-Add-on keine Einstellungen verwaltet, die Sie selbst verwalten müssen.

      6. Wählen Sie Weiter.

  8. Wählen Sie auf der Seite Überprüfen und hinzufügen die Option Erstellen aus. Nachdem die Installation der Add-Ons abgeschlossen ist, werden Ihre installierten Add-Ons angezeigt.

  9. Wenn für eines der von Ihnen installierten Add-Ons ein Abonnement erforderlich ist, gehen Sie wie folgt vor:

    1. Wählen Sie die Schaltfläche Subscribe (Abonnieren) in der unteren rechten Ecke für das Add-On. Sie werden auf die Seite für das Add-on im AWS Marketplace weitergeleitet. Lesen Sie die Informationen zum Add-On, z. B. die Product Overview (Produktübersicht) und die Pricing Information (Preisinformationen).

    2. Wählen Sie oben rechts auf der Add-on-Seite die Schaltfläche Continue to Subscribe (Mit dem Abonnement fortfahren) aus.

    3. Lesen Sie sich die (Allgemeinen Geschäftsbedingungen) durch. Wenn Sie damit einverstanden sind, wählen Sie Accept Terms (Bedingungen akzeptieren) aus. Die Bearbeitung des Abonnements kann mehrere Minuten dauern. Während der Bearbeitung des Abonnements ist die Schaltfläche Zurück zur EKS Amazon-Konsole ausgegraut.

    4. Sobald die Bearbeitung des Abonnements abgeschlossen ist, ist die Schaltfläche Zurück zur EKS Amazon-Konsole nicht mehr ausgegraut. Wählen Sie die Schaltfläche, um zum Tab Add-Ons der EKS Amazon-Konsole für Ihren Cluster zurückzukehren.

    5. Wählen Sie für das Add-On, das Sie abonniert haben, Remove and reinstall (Entfernen und erneut installieren) und dann Reinstall add-on (Add-On erneut installieren) aus. Die Installation des Add-Ons kann einige Minuten dauern. Wenn die Installation abgeschlossen ist, können Sie das Add-On konfigurieren.

Add-on erstellen (AWS CLI)

  1. Sie müssen Version 2.12.3 oder höher oder Version 1.27.160 oder höher der AWS Befehlszeilenschnittstelle (AWS CLI) auf Ihrem Gerät installiert und konfiguriert haben 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.

  2. Bestimmen Sie, welche Add-Ons verfügbar sind. Sie können alle verfügbaren Add-Ons, ihren Typ und ihren Publisher anzeigen. Sie können auch die URL vier Add-Ons sehen, die über den AWS Marketplace erhältlich sind. Ersetzen 1.30 mit der Version Ihres Clusters.

    aws eks describe-addon-versions --kubernetes-version 1.30 \ --query 'addons[].{MarketplaceProductUrl: marketplaceInformation.productUrl, Name: addonName, Owner: owner Publisher: publisher, Type: type}' --output table

    Eine Beispielausgabe sieht wie folgt aus.

    --------------------------------------------------------------------------------------------------------------------------------------------------------- | DescribeAddonVersions | +---------------------------------------------------------------+-------------------------------+------------------+--------------+---------------------+ | MarketplaceProductUrl | Name | Owner | Publisher | Type | +---------------------------------------------------------------+-------------------------------+------------------+--------------+---------------------+ | None | aws-ebs-csi-driver | aws | eks | storage | | None | coredns | aws | eks | networking | | None | kube-proxy | aws | eks | networking | | None | vpc-cni | aws | eks | networking | | None | adot | aws | eks | observability | | https://aws.amazon.com/marketplace/pp/prodview-brb73nceicv7u | dynatrace_dynatrace-operator | aws-marketplace | dynatrace | monitoring | | https://aws.amazon.com/marketplace/pp/prodview-uhc2iwi5xysoc | upbound_universal-crossplane | aws-marketplace | upbound | infra-management | | https://aws.amazon.com/marketplace/pp/prodview-hd2ydsrgqy4li | teleport_teleport | aws-marketplace | teleport | policy-management | | https://aws.amazon.com/marketplace/pp/prodview-vgghgqdsplhvc | factorhouse_kpow | aws-marketplace | factorhouse | monitoring | | [...] | [...] | [...] | [...] | [...] | +---------------------------------------------------------------+-------------------------------+------------------+--------------+---------------------+

    Ihre Ausgabe ist möglicherweise anders. In dieser Beispielausgabe sind drei verschiedene Add-Ons vom Typ networking und fünf Add-Ons mit einem Publisher vom Typ eks verfügbar. Für die Add-Ons aws-marketplace in der Owner Spalte ist möglicherweise ein Abonnement erforderlich, bevor Sie sie installieren können. Sie können das besuchenURL, um mehr über das Add-on zu erfahren und es zu abonnieren.

  3. Sie können anzeigen, welche Versionen für jedes Add-On verfügbar sind. Ersetzen 1.30 mit der Version Ihres Clusters und ersetzen vpc-cni mit dem Namen eines Add-Ons, das im vorherigen Schritt zurückgegeben wurde.

    aws eks describe-addon-versions --kubernetes-version 1.30 --addon-name vpc-cni \ --query 'addons[].addonVersions[].{Version: addonVersion, Defaultversion: compatibilities[0].defaultVersion}' --output table

    Eine Beispielausgabe sieht wie folgt aus.

    ------------------------------------------ | DescribeAddonVersions | +-----------------+----------------------+ | Defaultversion | Version | +-----------------+----------------------+ | False | v1.12.0-eksbuild.1 | | True | v1.11.4-eksbuild.1 | | False | v1.10.4-eksbuild.1 | | False | v1.9.3-eksbuild.1 | +-----------------+----------------------+

    Die Version True in der Defaultversion-Spalte ist standardmäßig die Version, mit der das Add-On erstellt wurde.

  4. (Optional) Finden Sie die Konfigurationsoptionen für das von Ihnen gewählte Add-On, indem Sie den folgenden Befehl ausführen:

    aws eks describe-addon-configuration --addon-name vpc-cni --addon-version v1.12.0-eksbuild.1
    { "addonName": "vpc-cni", "addonVersion": "v1.12.0-eksbuild.1", "configurationSchema": "{\"$ref\":\"#/definitions/VpcCni\",\"$schema\":\"http://json-schema.org/draft-06/schema#\",\"definitions\":{\"Cri\":{\"additionalProperties\":false,\"properties\":{\"hostPath\":{\"$ref\":\"#/definitions/HostPath\"}},\"title\":\"Cri\",\"type\":\"object\"},\"Env\":{\"additionalProperties\":false,\"properties\":{\"ADDITIONAL_ENI_TAGS\":{\"type\":\"string\"},\"AWS_VPC_CNI_NODE_PORT_SUPPORT\":{\"format\":\"boolean\",\"type\":\"string\"},\"AWS_VPC_ENI_MTU\":{\"format\":\"integer\",\"type\":\"string\"},\"AWS_VPC_K8S_CNI_CONFIGURE_RPFILTER\":{\"format\":\"boolean\",\"type\":\"string\"},\"AWS_VPC_K8S_CNI_CUSTOM_NETWORK_CFG\":{\"format\":\"boolean\",\"type\":\"string\"},\"AWS_VPC_K8S_CNI_EXTERNALSNAT\":{\"format\":\"boolean\",\"type\":\"string\"},\"AWS_VPC_K8S_CNI_LOGLEVEL\":{\"type\":\"string\"},\"AWS_VPC_K8S_CNI_LOG_FILE\":{\"type\":\"string\"},\"AWS_VPC_K8S_CNI_RANDOMIZESNAT\":{\"type\":\"string\"},\"AWS_VPC_K8S_CNI_VETHPREFIX\":{\"type\":\"string\"},\"AWS_VPC_K8S_PLUGIN_LOG_FILE\":{\"type\":\"string\"},\"AWS_VPC_K8S_PLUGIN_LOG_LEVEL\":{\"type\":\"string\"},\"DISABLE_INTROSPECTION\":{\"format\":\"boolean\",\"type\":\"string\"},\"DISABLE_METRICS\":{\"format\":\"boolean\",\"type\":\"string\"},\"DISABLE_NETWORK_RESOURCE_PROVISIONING\":{\"format\":\"boolean\",\"type\":\"string\"},\"ENABLE_POD_ENI\":{\"format\":\"boolean\",\"type\":\"string\"},\"ENABLE_PREFIX_DELEGATION\":{\"format\":\"boolean\",\"type\":\"string\"},\"WARM_ENI_TARGET\":{\"format\":\"integer\",\"type\":\"string\"},\"WARM_PREFIX_TARGET\":{\"format\":\"integer\",\"type\":\"string\"}},\"title\":\"Env\",\"type\":\"object\"},\"HostPath\":{\"additionalProperties\":false,\"properties\":{\"path\":{\"type\":\"string\"}},\"title\":\"HostPath\",\"type\":\"object\"},\"Limits\":{\"additionalProperties\":false,\"properties\":{\"cpu\":{\"type\":\"string\"},\"memory\":{\"type\":\"string\"}},\"title\":\"Limits\",\"type\":\"object\"},\"Resources\":{\"additionalProperties\":false,\"properties\":{\"limits\":{\"$ref\":\"#/definitions/Limits\"},\"requests\":{\"$ref\":\"#/definitions/Limits\"}},\"title\":\"Resources\",\"type\":\"object\"},\"VpcCni\":{\"additionalProperties\":false,\"properties\":{\"cri\":{\"$ref\":\"#/definitions/Cri\"},\"env\":{\"$ref\":\"#/definitions/Env\"},\"resources\":{\"$ref\":\"#/definitions/Resources\"}},\"title\":\"VpcCni\",\"type\":\"object\"}}}" }

    Die Ausgabe ist ein JSON Standardschema.

    Hier ist ein Beispiel für gültige Konfigurationswerte in einem JSON Format, das mit dem obigen Schema funktioniert.

    { "resources": { "limits": { "cpu": "100m" } } }

    Hier ist ein Beispiel für gültige Konfigurationswerte in einem YAML Format, das mit dem obigen Schema funktioniert.

    resources: limits: cpu: 100m
  5. Stellen Sie fest, ob für das Add-on IAM Berechtigungen erforderlich sind. Falls ja, müssen Sie (1) bestimmen, ob Sie EKS Pod-Identitäten oder IAM Rollen für Dienstkonten verwenden möchten (IRSA), (2) die IAM Rolle bestimmen, die mit dem ARN Add-on verwendet werden soll, und (3) den Namen des Kubernetes-Dienstkontos bestimmen, das vom Add-on verwendet wird. Weitere Informationen finden Sie unter IAMInformationen über ein EKS Amazon-Add-on abrufen.

    • Amazon EKS schlägt vor, EKS Pod Identities zu verwenden, wenn das Add-on dies unterstützt. Dies setzt voraus, dass der Erfahre wie EKS Pod Identity gewährt Pods Zugriff auf AWS Dienste Pod Identity Agent auf Ihrem Cluster installiert ist. Weitere Informationen zur Verwendung von Pod-Identitäten mit Add-Ons finden Sie unterIAMRollen für EKS Amazon-Add-Ons.

    • Wenn das Add-on oder Ihr Cluster nicht für EKS Pod-Identitäten eingerichtet ist, verwenden Sie. IRSA IAM-Rollen für ServicekontenBestätigen SieIRSA, dass es auf Ihrem Cluster eingerichtet ist.

    • EKSAmazon-Add-OnsLesen Sie in der Dokumentation zu Amazon EKS Add-ons nach, ob für das Add-on IAM Berechtigungen erforderlich sind, und geben Sie den Namen des zugehörigen Kubernetes-Servicekontos an.

      1. Erstellen Sie ein EKS Amazon-Add-on. Kopieren Sie den folgenden Befehl auf Ihr Gerät. Nehmen Sie nach Bedarf die folgenden Änderungen am Befehl vor und führen Sie anschließend den geänderten Befehl aus:

    • Ersetzen my-cluster mit dem Namen Ihres Clusters.

    • Ersetzen vpc-cni mit einem Add-On-Namen, der in der Ausgabe des vorherigen Schritts zurückgegeben wurde, den Sie erstellen möchten.

    • Ersetzen version-number mit der Version, die in der Ausgabe des vorherigen Schritts zurückgegeben wurde, die Sie verwenden möchten.

    • Wenn das Add-on keine IAM Berechtigungen benötigt, löschen Sie <service-account-configuration>.

    • Führen Sie eine der folgenden Aktionen aus:

      • Wenn für das Add-on (1) IAM Berechtigungen erforderlich sind und (2) Ihr Cluster EKS Pod-Identitäten verwendet, ersetzen Sie <service-account-configuration> mit der folgenden Pod-Identitätszuordnung. Ersetzen <service-account-name> mit dem vom Add-on verwendeten Dienstkontonamen. Ersetzen <role-arn> mit dem ARN Namen einer IAM Rolle. Die Rolle muss über die von EKS Pod Identities geforderte Vertrauensrichtlinie verfügen.

        --pod-identity-associations 'serviceAccount=<service-account-name>,roleArn=<role-arn>'
      • Wenn das Add-on (1) IAM Berechtigungen erfordert und (2) Ihr Cluster verwendetIRSA, ersetzen Sie <service-account-configuration> mit der folgenden IRSA Konfiguration. Ersetzen 111122223333 mit deiner Konto-ID und role-name mit dem Namen einer bestehenden IAM Rolle, die Sie erstellt haben. Anweisungen zum Erstellen der Rolle finden Sie in der Dokumentation für das Add-on, das Sie erstellen. Eine Liste der Add-Ons finden Sie unterVerfügbare EKS Amazon-Add-Ons von AWS. Für die Angabe einer Dienstkontorolle benötigen Sie eine IAM OpenID Connect (OIDC) Anbieter für Ihren Cluster. Um festzustellen, ob Sie über einen solchen für Ihren Cluster verfügen, oder um einen zu erstellen, lesen Sie Erstelle eine IAM OIDC Anbieter für Ihren Cluster.

        --service-account-role-arn arn:aws::iam::111122223333:role/role-name
    • Diese Beispielbefehle überschreiben die Option --configuration-values von gegebenenfalls vorhandenen selbstverwalteten Versionen des Add-Ons. Ersetzen Sie diese durch die gewünschten Konfigurationswerte, z. B. eine Zeichenfolge oder eine Dateieingabe. Wenn Sie keine Konfigurationswerte angeben möchten, löschen Sie die --configuration-values Option. Wenn Sie nicht möchten, dass die AWS CLI Konfiguration eines vorhandenen selbstverwalteten Add-Ons überschrieben wird, entfernen Sie --resolve-conflicts OVERWRITE Option. Wenn Sie die Option entfernen und das EKS Amazon-Add-on die Konfiguration eines vorhandenen selbstverwalteten Add-ons überschreiben muss, schlägt die Erstellung des EKS Amazon-Add-ons fehl und es wird eine Fehlermeldung angezeigt, die Ihnen bei der Lösung des Konflikts hilft. Bevor Sie diese Option angeben, stellen Sie sicher, dass das EKS Amazon-Add-on keine Einstellungen verwaltet, die Sie verwalten müssen, da diese Einstellungen mit dieser Option überschrieben werden.

      aws eks create-addon --cluster-name my-cluster --addon-name vpc-cni --addon-version version-number \ <service-account-configuration> --configuration-values '{"resources":{"limits":{"cpu":"100m"}}}' --resolve-conflicts OVERWRITE
      aws eks create-addon --cluster-name my-cluster --addon-name vpc-cni --addon-version version-number \ <service-account-configuration> --configuration-values 'file://example.yaml' --resolve-conflicts OVERWRITE

      Eine vollständige Liste der verfügbaren Optionen finden Sie create-addon in der EKS Amazon-Befehlszeilenreferenz. Wenn das von Ihnen erstellte Add-on in der Owner Spalte eines vorherigen Schritts aws-marketplace aufgeführt wurde, schlägt die Erstellung möglicherweise fehl und Sie erhalten möglicherweise eine Fehlermeldung, die der folgenden ähnelt.

      { "addon": { "addonName": "addon-name", "clusterName": "my-cluster", "status": "CREATE_FAILED", "addonVersion": "version", "health": { "issues": [ { "code": "AddonSubscriptionNeeded", "message": "You are currently not subscribed to this add-on. To subscribe, visit the AWS Marketplace console, agree to the seller EULA, select the pricing type if required, then re-install the add-on" } ] } } }

      Wenn Sie einen Fehler erhalten, der dem Fehler in der vorherigen Ausgabe ähnelt, besuchen Sie den URL in der Ausgabe eines vorherigen Schritts, um das Add-on zu abonnieren. Führen Sie den create-addon-Befehl nach dem Abonnieren erneut aus.