

 **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 auf**, 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.

# Erfahren Sie, wie Sie Workloads und Add-Ons in Amazon EKS bereitstellen.
<a name="eks-workloads"></a>

Ihre Workloads werden in Containern bereitgestellt, die in Pods in Kubernetes bereitgestellt werden. Ein Pod enthält einen oder mehrere Container. In der Regel werden ein oder mehrere Pods, die denselben Service bieten, in einem Kubernetes-Service bereitgestellt. Nachdem Sie mehrere Pods bereitgestellt haben, die denselben Service bieten, können Sie:
+  [Anzeigen von Informationen über die Workloads](view-kubernetes-resources.md), die auf jedem Ihrer Cluster laufen mithilfe von AWS-Managementkonsole ausgeführt wird.
+ Die Pods vertikal mit dem Kubernetes [Vertical Pod Autoscaler](vertical-pod-autoscaler.md) nach oben oder unten skalieren.
+ Die Anzahl der Pods horizontal skalieren, die benötigt werden, um die Nachfrage nach oben oder unten mit den Kubernetes [Horizontal Pod Autoscaler](horizontal-pod-autoscaler.md) zu decken.
+ Einen externen (für Internet-zugängliche Pods) oder eine interne (für private Pods) [Network Load Balancer](network-load-balancing.md) erstellen, um den Netzwerk-Datenverkehr über Pods auszugleichen. Der Load Balancer leitet den Datenverkehr an Layer 4 des OSI-Modells weiter.
+ Einen [Application Load Balancer](alb-ingress.md) erstellen, um den Anwendungsdatenverkehr über Pods hinweg auszugleichen. Der Application Load Balancer leitet den Datenverkehr auf Layer 7 des OSI-Modells weiter.
+ Wenn Sie Kubernetes noch nicht kennen, unterstützt Sie dieses Thema bei der [Bereitstellung einer Beispiel-Anwendung](sample-deployment.md).
+ Sie können [ IP-Adressen einschränken, die einem Service zugewiesen werden können](restrict-service-external-ip.md) mit `externalIPs`.

# Eine Beispielanwendung in Linux bereitstellen
<a name="sample-deployment"></a>

In diesem Thema stellen Sie eine Beispielanwendung auf Ihrem Cluster in Linux-Knoten bereit.

## Voraussetzungen
<a name="_prerequisites"></a>
+ Ein vorhandener Kubernetes-Cluster mit mindestens einem Knoten. Wenn Sie noch keinen vorhandenen Amazon-EKS-Cluster haben, können Sie einen mit einem der Anleitungen in [Erste Schritte mit Amazon EKS](getting-started.md) bereitstellen.
+  `Kubectl` auf Ihrem Computer installiert. Weitere Informationen finden Sie unter [`kubectl` und `eksctl` einrichten](install-kubectl.md).
+  `Kubectl` für die Kommunikation mit Ihrem Cluster konfiguriert. Weitere Informationen finden Sie unter [kubectl mit einem EKS-Cluster durch Erstellen einer kubeconfig-Datei verbinden](create-kubeconfig.md).
+ Wenn Sie vorhaben, Ihre Beispiel-Workload in Fargate bereitzustellen, müssen Sie über ein vorhandenes [Fargate-Profil](fargate-profile.md) verfügen, das denselben in diesem Tutorial erstellten Namespace enthält, nämlich `eks-sample-app`, es sei denn, Sie ändern den Namen. Wenn Sie einen Cluster mit einer der Anleitungen in [Erste Schritte mit Amazon EKS](getting-started.md) erstellt haben, müssen Sie ein neues Profil erstellen oder den Namespace zu Ihrem vorhandenen. Profil hinzufügen. Das in den Anleitungen für den Einstieg erstellte Profil gibt den in diesem Tutorial verwendeten Namespace nicht an. Ihre VPC muss auch über mindestens ein privates Subnetz verfügen.

Obwohl viele Variablen in den folgenden Schritten veränderbar sind, empfehlen wir, Variablenwerte nur zu ändern, wo angegeben. Sobald Sie Kubernetes-Pods, Bereitstellungen und Services besser verstanden haben, können Sie mit dem Ändern anderer Werte experimentieren.

## Namespaces erstellen
<a name="_create_a_namespace"></a>

Ein Namespace ermöglicht es Ihnen, Ressourcen in Kubernetes zu gruppieren. Weitere Informationen finden Sie unter [Namespaces](https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/) in der Kubernetes-Dokumentation. Wenn Sie Ihre Beispielanwendung bereitstellen möchten, um die [Rechenverwaltung mit AWS Fargate zu vereinfachen](fargate.md), stellen Sie sicher, dass der Wert für `namespace` in Ihrer [Definition, welche Pods beim Start AWS Fargate verwenden](fargate-profile.md), `eks-sample-app` ist.

```
kubectl create namespace eks-sample-app
```

## Erstellen Sie eine Kubernetes-Bereitstellung.
<a name="_create_a_kubernetes_deployment"></a>

Erstellen Sie eine Kubernetes-Bereitstellung. Diese Beispiel-Bereitstellung ruft ein Container-Image aus einem öffentlichen Repository ab und stellt drei Replikate (individuelle Pods) davon in Ihrem Cluster bereit. Weitere Informationen finden Sie unter [Bereitstellungen](https://kubernetes.io/docs/concepts/workloads/controllers/deployment/) in der Kubernetes-Dokumentation.

1. Speichern Sie den folgenden Inhalt in einer Datei mit dem Namen `eks-sample-deployment.yaml`. Die Container in der Beispielanwendung verwenden keinen Netzwerkspeicher, aber möglicherweise haben Sie Anwendungen, die dies benötigen. Weitere Informationen finden Sie unter [Verwendung von Anwendungsdatenspeichern für Ihren Cluster](storage.md).
   + Das `amd64` oder `arm64` `values` unter dem Schlüssel `kubernetes.io/arch` bedeutet, dass die Anwendung in einer der beiden Hardwarearchitekturen bereitgestellt werden kann (wenn Sie beide in Ihrem Cluster haben). Dies ist möglich, weil dieses Image ein Multi-Architektur-Image ist, aber das sind nicht alle. Sie können die Hardware-Architektur bestimmen, auf der das Image unterstützt wird, indem Sie die [Image-Details](https://gallery.ecr.aws/nginx/nginx) im Repository anzeigen, aus dem Sie es abrufen. Wenn Sie Images bereitstellen, die keinen Hardware-Architektur-Typ unterstützen oder an die das Image nicht bereitgestellt werden soll, entfernen Sie diesen Typ aus dem Manifest. Weitere Informationen finden Sie unter [Bekannte Labels, Anmerkungen und Taints](https://kubernetes.io/docs/reference/labels-annotations-taints/) in der Kubernetes-Dokumentation.
   + Der Eintrag `kubernetes.io/os: linux` `nodeSelector` bedeutet, dass, wenn Sie beispielsweise Windows- und Linux-Knoten in Ihrem Cluster hätten, das Image nur auf Linux-Knoten bereitgestellt würde. Weitere Informationen finden Sie unter [Bekannte Labels, Anmerkungen und Taints](https://kubernetes.io/docs/reference/labels-annotations-taints/) in der Kubernetes-Dokumentation.

     ```
     apiVersion: apps/v1
     kind: Deployment
     metadata:
       name: eks-sample-linux-deployment
       namespace: eks-sample-app
       labels:
         app: eks-sample-linux-app
     spec:
       replicas: 3
       selector:
         matchLabels:
           app: eks-sample-linux-app
       template:
         metadata:
           labels:
             app: eks-sample-linux-app
         spec:
           affinity:
             nodeAffinity:
               requiredDuringSchedulingIgnoredDuringExecution:
                 nodeSelectorTerms:
                 - matchExpressions:
                   - key: kubernetes.io/arch
                     operator: In
                     values:
                     - amd64
                     - arm64
           containers:
           - name: nginx
             image: public.ecr.aws/nginx/nginx:1.23
             ports:
             - name: http
               containerPort: 80
             imagePullPolicy: IfNotPresent
           nodeSelector:
             kubernetes.io/os: linux
     ```

1. Wenden Sie das Bereitstellungs-Manifest auf Ihren Cluster an.

   ```
   kubectl apply -f eks-sample-deployment.yaml
   ```

## Erstellen eines Services
<a name="_create_a_service"></a>

Mit einem Service können Sie über eine einzige IP-Adresse oder einen einzigen Namen auf alle Replikate zugreifen. Weitere Informationen dazu finden Sie unter [Service](https://kubernetes.io/docs/concepts/services-networking/service/) in der Kubernetes-Dokumentation. Obwohl in der Beispielanwendung nicht implementiert, empfehlen wir Ihnen, Kubernetes-Servicekonten für Ihre Pods zu erstellen und sie AWS-IAM-Konten zuzuordnen, wenn Sie über Anwendungen verfügen, die mit anderen AWS-Services interagieren müssen. Durch die Angabe von Dienstkonten verfügen Ihre Pods nur über die Mindestberechtigungen, die Sie für die Interaktion mit anderen Diensten angeben. Weitere Informationen finden Sie unter [IAM-Rollen für Servicekonten](iam-roles-for-service-accounts.md).

1. Speichern Sie die folgenden Inhalte in einer Datei namens `eks-sample-service.yaml`. Kubernetes weist dem Service eine eigene IP-Adresse zu, auf die nur innerhalb des Clusters zugegriffen werden kann. Um von außerhalb des Clusters auf den Service zuzugreifen, stellen Sie den [AWS Load Balancer Controller](aws-load-balancer-controller.md) bereit, um den [Anwendungs](alb-ingress.md)- oder [Netzwerk](network-load-balancing.md)-Datenverkehr an den Service auszugleichen.

   ```
   apiVersion: v1
   kind: Service
   metadata:
     name: eks-sample-linux-service
     namespace: eks-sample-app
     labels:
       app: eks-sample-linux-app
   spec:
     selector:
       app: eks-sample-linux-app
     ports:
       - protocol: TCP
         port: 80
         targetPort: 80
   ```

1. Wenden Sie das Service-Manifest auf Ihren Cluster an.

   ```
   kubectl apply -f eks-sample-service.yaml
   ```

## Erstellte Ressourcen überprüfen
<a name="sample-app-view-namespace"></a>

1. Zeigen Sie alle im `eks-sample-app`-Namespace vorhandenen Ressourcen an.

   ```
   kubectl get all -n eks-sample-app
   ```

   Eine Beispielausgabe sieht wie folgt aus.

   ```
   NAME                                               READY   STATUS    RESTARTS   AGE
   pod/eks-sample-linux-deployment-65b7669776-m6qxz   1/1     Running   0          27m
   pod/eks-sample-linux-deployment-65b7669776-mmxvd   1/1     Running   0          27m
   pod/eks-sample-linux-deployment-65b7669776-qzn22   1/1     Running   0          27m
   
   NAME                               TYPE         CLUSTER-IP      EXTERNAL-IP   PORT(S)   AGE
   service/eks-sample-linux-service   ClusterIP    10.100.74.8     <none>        80/TCP    32m
   
   NAME                                        READY   UP-TO-DATE   AVAILABLE   AGE
   deployment.apps/eks-sample-linux-deployment 3/3     3            3           27m
   
   NAME                                                      DESIRED   CURRENT   READY   AGE
   replicaset.apps/eks-sample-linux-deployment-776d8f8fd8    3         3         3       27m
   ```

   In der Ausgabe sehen Sie den Service und die Bereitstellung, die in den Beispielmanifesten, der vorherigen Schritte, angegeben wurden. Sie sehen auch drei Pods. Dies liegt daran, dass `3` `replicas` im Beispielmanifest angegeben wurden. Weitere Informationen zu Pods finden Sie unter [Pods](https://kubernetes.io/docs/concepts/workloads/pods/pod/) in der Kubernetes-Dokumentation. Kubernetes erstellt automatisch die `replicaset`-Ressource, obwohl sie nicht in den Beispiel-Manifesten angegeben ist. Weitere Informationen zu `ReplicaSets` finden Sie unter [ReplicaSet](https://kubernetes.io/docs/concepts/workloads/controllers/replicaset/) in der Kubernetes-Dokumentation.
**Anmerkung**  
Kubernetes behält die Anzahl der Replikate bei, die im Manifest angegeben sind. Wenn es sich um eine Produktionsbereitstellung handelt und Sie möchten, dass Kubernetes die Anzahl der Replikate horizontal skaliert oder die Rechenressourcen für die Pods vertikal skaliert, verwenden Sie dazu die Optionen [Pod-Bereitstellungen mit horizontalem Pod-Autoscaler skalieren](horizontal-pod-autoscaler.md) und [Pod-Ressourcen mit vertikalem Pod-Autoscaler anpassen](vertical-pod-autoscaler.md).

1. Zeigen Sie die Details des bereitgestellten Services an.

   ```
   kubectl -n eks-sample-app describe service eks-sample-linux-service
   ```

   Eine Beispielausgabe sieht wie folgt aus.

   ```
   Name:              eks-sample-linux-service
   Namespace:         eks-sample-app
   Labels:            app=eks-sample-linux-app
   Annotations:       <none>
   Selector:          app=eks-sample-linux-app
   Type:              ClusterIP
   IP Families:       <none>
   IP:                10.100.74.8
   IPs:               10.100.74.8
   Port:              <unset>  80/TCP
   TargetPort:        80/TCP
   Endpoints:         192.168.24.212:80,192.168.50.185:80,192.168.63.93:80
   Session Affinity:  None
   Events:            <none>
   ```

   In der vorherigen Ausgabe ist der Wert für `IP:` eine eindeutige IP-Adresse, die von jedem Knoten oder Pod innerhalb des Clusters aus erreicht werden kann, jedoch nicht von außerhalb des Clusters. Die Werte für `Endpoints` sind IP-Adressen, die innerhalb Ihrer VPC den Pods zugewiesen werden, die Teil des Services sind.

1. Zeigen Sie die Details eines der in der Ausgabe aufgeführten Pods an, wenn Sie in einem vorherigen Schritt den [Namespace angezeigt haben](#sample-app-view-namespace). Ersetzen Sie *776d8f8fd8-78w66* durch den für einen Ihrer Pods zurückgegebenen Wert.

   ```
   kubectl -n eks-sample-app describe pod eks-sample-linux-deployment-65b7669776-m6qxz
   ```

   Gekürzte Beispielausgabe

   ```
   Name:         eks-sample-linux-deployment-65b7669776-m6qxz
   Namespace:    eks-sample-app
   Priority:     0
   Node:         ip-192-168-45-132.us-west-2.compute.internal/192.168.45.132
   [...]
   IP:           192.168.63.93
   IPs:
     IP:           192.168.63.93
   Controlled By:  ReplicaSet/eks-sample-linux-deployment-65b7669776
   [...]
   Conditions:
     Type              Status
     Initialized       True
     Ready             True
     ContainersReady   True
     PodScheduled      True
   [...]
   Events:
     Type    Reason     Age    From                                                 Message
     ----    ------     ----   ----                                                 -------
     Normal  Scheduled  3m20s  default-scheduler                                    Successfully assigned eks-sample-app/eks-sample-linux-deployment-65b7669776-m6qxz to ip-192-168-45-132.us-west-2.compute.internal
   [...]
   ```

   In der vorherigen Ausgabe ist der Wert für `IP:` eine eindeutige IP, die dem Pod aus dem CIDR-Block zugewiesen wird, der dem Subnetz zugewiesen ist, in dem sich der Knoten befindet. Wenn Sie es vorziehen, Pods IP-Adressen aus verschiedenen CIDR-Blöcken zuzuweisen, können Sie das Standardverhalten ändern. Weitere Informationen finden Sie unter [Bereitstellung von Pods in alternativen Subnetzen mit benutzerdefiniertem Netzwerk](cni-custom-network.md). Sie können auch sehen, dass der Kubernetes-Scheduler den Pod in `Node` mit der IP-Adresse *192.168.45.132* geplant hat.
**Tipp**  
Anstatt die Befehlszeile zu verwenden, können Sie viele Details zu Pods, Services, Bereitstellungen und anderen Kubernetes-Ressourcen in der AWS-Managementkonsole anzeigen. Weitere Informationen finden Sie unter [Kubernetes-Ressourcen anzeigen in der AWS-Managementkonsole](view-kubernetes-resources.md).

## Shell in einem Pod ausführen
<a name="_run_a_shell_on_a_pod"></a>

1. Führen Sie eine Shell auf dem Pod aus, die Sie im vorherigen Schritt beschrieben haben, und ersetzen Sie *65b7669776-m6qxz* mit der ID eines Ihrer Pods.

   ```
   kubectl exec -it eks-sample-linux-deployment-65b7669776-m6qxz -n eks-sample-app -- /bin/bash
   ```

1. Zeigen Sie in der Pod-Shell die Ausgabe des Web-Servers an, der in einem vorherigen Schritt mit Ihrer Bereitstellung installiert wurde. Sie müssen nur den Servicenamen angeben. Er wird von CoreDNS, das mit einem Amazon-EKS-Cluster bereitgestellt wird, standardmäßig in die IP-Adresse des Services aufgelöst.

   ```
   curl eks-sample-linux-service
   ```

   Eine Beispielausgabe sieht wie folgt aus.

   ```
   <!DOCTYPE html>
   <html>
   <head>
   <title>Welcome to nginx!</title>
   [...]
   ```

1. Zeigen Sie in der Pod-Shell den DNS-Server für den Pod an.

   ```
   cat /etc/resolv.conf
   ```

   Eine Beispielausgabe sieht wie folgt aus.

   ```
   nameserver 10.100.0.10
   search eks-sample-app.svc.cluster.local svc.cluster.local cluster.local us-west-2.compute.internal
   options ndots:5
   ```

   In der vorherigen Ausgabe wird `10.100.0.10` automatisch als `nameserver` für alle Pods zugewiesen, die im Cluster bereitgestellt werden.

1. Trennen Sie die Verbindung mit dem Pod, indem Sie `exit` eingeben.

1. Wenn Sie die Beispielanwendung nicht mehr benötigen, können Sie den Beispiel-Namespace, den Service und die Bereitstellung mit dem folgenden Befehl entfernen.

   ```
   kubectl delete namespace eks-sample-app
   ```

## Nächste Schritte
<a name="sample-deployment-next-steps"></a>

Nachdem Sie die Beispielanwendung bereitgestellt haben, können Sie einige der folgenden Übungen ausprobieren:
+  [Anwendungen und HTTP-Datenverkehr mit Application Load Balancers weiterleiten](alb-ingress.md) 
+  [Weiterleitung von TCP- und UDP-Datenverkehr mit Network Load Balancers](network-load-balancing.md) 

# Eine Beispielanwendung in Windows bereitstellen
<a name="sample-deployment-win"></a>

In diesem Thema stellen Sie eine Beispielanwendung auf Ihrem Cluster in Windows-Knoten bereit.

## Voraussetzungen
<a name="_prerequisites"></a>
+ Ein vorhandener Kubernetes-Cluster mit mindestens einem Knoten. Wenn Sie noch keinen vorhandenen Amazon-EKS-Cluster haben, können Sie einen mit einem der Anleitungen in [Erste Schritte mit Amazon EKS](getting-started.md) bereitstellen. Sie müssen den [Windows-Support](windows-support.md) für Ihren Cluster und mindestens einen Amazon-EC2-Windows-Knoten aktiviert haben.
+  `Kubectl` auf Ihrem Computer installiert. Weitere Informationen finden Sie unter [`kubectl` und `eksctl` einrichten](install-kubectl.md).
+  `Kubectl` für die Kommunikation mit Ihrem Cluster konfiguriert. Weitere Informationen finden Sie unter [kubectl mit einem EKS-Cluster durch Erstellen einer kubeconfig-Datei verbinden](create-kubeconfig.md).
+ Wenn Sie vorhaben, Ihre Beispiel-Workload in Fargate bereitzustellen, müssen Sie über ein vorhandenes [Fargate-Profil](fargate-profile.md) verfügen, das denselben in diesem Tutorial erstellten Namespace enthält, nämlich `eks-sample-app`, es sei denn, Sie ändern den Namen. Wenn Sie einen Cluster mit einer der Anleitungen in [Erste Schritte mit Amazon EKS](getting-started.md) erstellt haben, müssen Sie ein neues Profil erstellen oder den Namespace zu Ihrem vorhandenen. Profil hinzufügen. Das in den Anleitungen für den Einstieg erstellte Profil gibt den in diesem Tutorial verwendeten Namespace nicht an. Ihre VPC muss auch über mindestens ein privates Subnetz verfügen.

Obwohl viele Variablen in den folgenden Schritten veränderbar sind, empfehlen wir, Variablenwerte nur zu ändern, wo angegeben. Sobald Sie Kubernetes-Pods, Bereitstellungen und Services besser verstanden haben, können Sie mit dem Ändern anderer Werte experimentieren.

## Namespaces erstellen
<a name="_create_a_namespace"></a>

Ein Namespace ermöglicht es Ihnen, Ressourcen in Kubernetes zu gruppieren. Weitere Informationen finden Sie unter [Namespaces](https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/) in der Kubernetes-Dokumentation. Wenn Sie Ihre Beispielanwendung bereitstellen möchten, um die [Rechenverwaltung mit AWS Fargate zu vereinfachen](fargate.md), stellen Sie sicher, dass der Wert für `namespace` in Ihrer [Definition, welche Pods beim Start AWS Fargate verwenden](fargate-profile.md), `eks-sample-app` ist.

```
kubectl create namespace eks-sample-app
```

## Erstellen Sie eine Kubernetes-Bereitstellung.
<a name="_create_a_kubernetes_deployment"></a>

Diese Beispiel-Bereitstellung ruft ein Container-Image aus einem öffentlichen Repository ab und stellt drei Replikate (individuelle Pods) davon in Ihrem Cluster bereit. Weitere Informationen finden Sie unter [Bereitstellungen](https://kubernetes.io/docs/concepts/workloads/controllers/deployment/) in der Kubernetes-Dokumentation.

1. Speichern Sie den folgenden Inhalt in einer Datei mit dem Namen `eks-sample-deployment.yaml`. Die Container in der Beispielanwendung verwenden keinen Netzwerkspeicher, aber möglicherweise haben Sie Anwendungen, die dies benötigen. Weitere Informationen finden Sie unter [Verwendung von Anwendungsdatenspeichern für Ihren Cluster](storage.md).
   + Der Eintrag `kubernetes.io/os: windows` `nodeSelector` bedeutet, dass, wenn Sie beispielsweise Windows- und Linux-Knoten in Ihrem Cluster hätten, das Image nur auf Linux-Knoten bereitgestellt würde. Weitere Informationen finden Sie unter [Bekannte Labels, Anmerkungen und Taints](https://kubernetes.io/docs/reference/labels-annotations-taints/) in der Kubernetes-Dokumentation.

     ```
     apiVersion: apps/v1
     kind: Deployment
     metadata:
       name: eks-sample-windows-deployment
       namespace: eks-sample-app
       labels:
         app: eks-sample-windows-app
     spec:
       replicas: 3
       selector:
         matchLabels:
           app: eks-sample-windows-app
       template:
         metadata:
           labels:
             app: eks-sample-windows-app
         spec:
           affinity:
             nodeAffinity:
               requiredDuringSchedulingIgnoredDuringExecution:
                 nodeSelectorTerms:
                 - matchExpressions:
                   - key: kubernetes.io/arch
                     operator: In
                     values:
                     - amd64
           containers:
           - name: windows-server-iis
             image: mcr.microsoft.com/windows/servercore:ltsc2019
             ports:
             - name: http
               containerPort: 80
             imagePullPolicy: IfNotPresent
             command:
             - powershell.exe
             - -command
             - "Add-WindowsFeature Web-Server; Invoke-WebRequest -UseBasicParsing -Uri 'https://dotnetbinaries.blob.core.windows.net/servicemonitor/2.0.1.6/ServiceMonitor.exe' -OutFile 'C:\\ServiceMonitor.exe'; echo '<html><body><br/><br/><marquee><H1>Hello EKS!!!<H1><marquee></body><html>' > C:\\inetpub\\wwwroot\\default.html; C:\\ServiceMonitor.exe 'w3svc'; "
           nodeSelector:
             kubernetes.io/os: windows
     ```

1. Wenden Sie das Bereitstellungs-Manifest auf Ihren Cluster an.

   ```
   kubectl apply -f eks-sample-deployment.yaml
   ```

## Erstellen eines Services
<a name="_create_a_service"></a>

Mit einem Service können Sie über eine einzige IP-Adresse oder einen einzigen Namen auf alle Replikate zugreifen. Weitere Informationen dazu finden Sie unter [Service](https://kubernetes.io/docs/concepts/services-networking/service/) in der Kubernetes-Dokumentation. Obwohl in der Beispielanwendung nicht implementiert, empfehlen wir Ihnen, Kubernetes-Servicekonten für Ihre Pods zu erstellen und sie AWS-IAM-Konten zuzuordnen, wenn Sie über Anwendungen verfügen, die mit anderen AWS-Services interagieren müssen. Durch die Angabe von Dienstkonten verfügen Ihre Pods nur über die Mindestberechtigungen, die Sie für die Interaktion mit anderen Diensten angeben. Weitere Informationen finden Sie unter [IAM-Rollen für Servicekonten](iam-roles-for-service-accounts.md).

1. Speichern Sie die folgenden Inhalte in einer Datei namens `eks-sample-service.yaml`. Kubernetes weist dem Service eine eigene IP-Adresse zu, auf die nur innerhalb des Clusters zugegriffen werden kann. Um von außerhalb des Clusters auf den Service zuzugreifen, stellen Sie den [AWS Load Balancer Controller](aws-load-balancer-controller.md) bereit, um den [Anwendungs](alb-ingress.md)- oder [Netzwerk](network-load-balancing.md)-Datenverkehr an den Service auszugleichen.

   ```
   apiVersion: v1
   kind: Service
   metadata:
     name: eks-sample-windows-service
     namespace: eks-sample-app
     labels:
       app: eks-sample-windows-app
   spec:
     selector:
       app: eks-sample-windows-app
     ports:
       - protocol: TCP
         port: 80
         targetPort: 80
   ```

1. Wenden Sie das Service-Manifest auf Ihren Cluster an.

   ```
   kubectl apply -f eks-sample-service.yaml
   ```

## Erstellte Ressourcen überprüfen
<a name="sample-app-view-namespace-win"></a>

1. Zeigen Sie alle im `eks-sample-app`-Namespace vorhandenen Ressourcen an.

   ```
   kubectl get all -n eks-sample-app
   ```

   Eine Beispielausgabe sieht wie folgt aus.

   ```
   NAME                                               READY   STATUS    RESTARTS   AGE
   pod/eks-sample-windows-deployment-65b7669776-m6qxz   1/1     Running   0          27m
   pod/eks-sample-windows-deployment-65b7669776-mmxvd   1/1     Running   0          27m
   pod/eks-sample-windows-deployment-65b7669776-qzn22   1/1     Running   0          27m
   
   NAME                               TYPE         CLUSTER-IP      EXTERNAL-IP   PORT(S)   AGE
   service/eks-sample-windows-service   ClusterIP    10.100.74.8     <none>        80/TCP    32m
   
   NAME                                        READY   UP-TO-DATE   AVAILABLE   AGE
   deployment.apps/eks-sample-windows-deployment 3/3     3            3           27m
   
   NAME                                                      DESIRED   CURRENT   READY   AGE
   replicaset.apps/eks-sample-windows-deployment-776d8f8fd8    3         3         3       27m
   ```

   In der Ausgabe sehen Sie den Service und die Bereitstellung, die in den Beispielmanifesten, der vorherigen Schritte, angegeben wurden. Sie sehen auch drei Pods. Dies liegt daran, dass `3` `replicas` im Beispielmanifest angegeben wurden. Weitere Informationen zu Pods finden Sie unter [Pods](https://kubernetes.io/docs/concepts/workloads/pods/pod/) in der Kubernetes-Dokumentation. Kubernetes erstellt automatisch die `replicaset`-Ressource, obwohl sie nicht in den Beispiel-Manifesten angegeben ist. Weitere Informationen zu `ReplicaSets` finden Sie unter [ReplicaSet](https://kubernetes.io/docs/concepts/workloads/controllers/replicaset/) in der Kubernetes-Dokumentation.
**Anmerkung**  
Kubernetes behält die Anzahl der Replikate bei, die im Manifest angegeben sind. Wenn es sich um eine Produktionsbereitstellung handelt und Sie möchten, dass Kubernetes die Anzahl der Replikate horizontal skaliert oder die Rechenressourcen für die Pods vertikal skaliert, verwenden Sie dazu die Optionen [Pod-Bereitstellungen mit horizontalem Pod-Autoscaler skalieren](horizontal-pod-autoscaler.md) und [Pod-Ressourcen mit vertikalem Pod-Autoscaler anpassen](vertical-pod-autoscaler.md).

1. Zeigen Sie die Details des bereitgestellten Services an.

   ```
   kubectl -n eks-sample-app describe service eks-sample-windows-service
   ```

   Eine Beispielausgabe sieht wie folgt aus.

   ```
   Name:              eks-sample-windows-service
   Namespace:         eks-sample-app
   Labels:            app=eks-sample-windows-app
   Annotations:       <none>
   Selector:          app=eks-sample-windows-app
   Type:              ClusterIP
   IP Families:       <none>
   IP:                10.100.74.8
   IPs:               10.100.74.8
   Port:              <unset>  80/TCP
   TargetPort:        80/TCP
   Endpoints:         192.168.24.212:80,192.168.50.185:80,192.168.63.93:80
   Session Affinity:  None
   Events:            <none>
   ```

   In der vorherigen Ausgabe ist der Wert für `IP:` eine eindeutige IP-Adresse, die von jedem Knoten oder Pod innerhalb des Clusters aus erreicht werden kann, jedoch nicht von außerhalb des Clusters. Die Werte für `Endpoints` sind IP-Adressen, die innerhalb Ihrer VPC den Pods zugewiesen werden, die Teil des Services sind.

1. Zeigen Sie die Details eines der in der Ausgabe aufgeführten Pods an, wenn Sie in einem vorherigen Schritt den [Namespace angezeigt haben](sample-deployment.md#sample-app-view-namespace). Ersetzen Sie *776d8f8fd8-78w66* durch den für einen Ihrer Pods zurückgegebenen Wert.

   ```
   kubectl -n eks-sample-app describe pod eks-sample-windows-deployment-65b7669776-m6qxz
   ```

   Gekürzte Beispielausgabe

   ```
   Name:         eks-sample-windows-deployment-65b7669776-m6qxz
   Namespace:    eks-sample-app
   Priority:     0
   Node:         ip-192-168-45-132.us-west-2.compute.internal/192.168.45.132
   [...]
   IP:           192.168.63.93
   IPs:
     IP:           192.168.63.93
   Controlled By:  ReplicaSet/eks-sample-windows-deployment-65b7669776
   [...]
   Conditions:
     Type              Status
     Initialized       True
     Ready             True
     ContainersReady   True
     PodScheduled      True
   [...]
   Events:
     Type    Reason     Age    From                                                 Message
     ----    ------     ----   ----                                                 -------
     Normal  Scheduled  3m20s  default-scheduler                                    Successfully assigned eks-sample-app/eks-sample-windows-deployment-65b7669776-m6qxz to ip-192-168-45-132.us-west-2.compute.internal
   [...]
   ```

   In der vorherigen Ausgabe ist der Wert für `IP:` eine eindeutige IP, die dem Pod aus dem CIDR-Block zugewiesen wird, der dem Subnetz zugewiesen ist, in dem sich der Knoten befindet. Wenn Sie es vorziehen, Pods IP-Adressen aus verschiedenen CIDR-Blöcken zuzuweisen, können Sie das Standardverhalten ändern. Weitere Informationen finden Sie unter [Bereitstellung von Pods in alternativen Subnetzen mit benutzerdefiniertem Netzwerk](cni-custom-network.md). Sie können auch sehen, dass der Kubernetes-Scheduler den Pod in `Node` mit der IP-Adresse *192.168.45.132* geplant hat.
**Tipp**  
Anstatt die Befehlszeile zu verwenden, können Sie viele Details zu Pods, Services, Bereitstellungen und anderen Kubernetes-Ressourcen in der AWS-Managementkonsole anzeigen. Weitere Informationen finden Sie unter [Kubernetes-Ressourcen anzeigen in der AWS-Managementkonsole](view-kubernetes-resources.md).

## Shell in einem Pod ausführen
<a name="_run_a_shell_on_a_pod"></a>

1. Führen Sie eine Shell auf dem Pod aus, die Sie im vorherigen Schritt beschrieben haben, und ersetzen Sie *65b7669776-m6qxz* mit der ID eines Ihrer Pods.

   ```
   kubectl exec -it eks-sample-windows-deployment-65b7669776-m6qxz -n eks-sample-app -- powershell.exe
   ```

1. Zeigen Sie in der Pod-Shell die Ausgabe des Web-Servers an, der in einem vorherigen Schritt mit Ihrer Bereitstellung installiert wurde. Sie müssen nur den Servicenamen angeben. Er wird von CoreDNS, das mit einem Amazon-EKS-Cluster bereitgestellt wird, standardmäßig in die IP-Adresse des Services aufgelöst.

   ```
   Invoke-WebRequest -uri eks-sample-windows-service/default.html -UseBasicParsing
   ```

   Eine Beispielausgabe sieht wie folgt aus.

   ```
   StatusCode        : 200
   StatusDescription : OK
   Content           : < h t m l > < b o d y > < b r / > < b r / > < m a r q u e e > < H 1 > H e l l o
                         E K S ! ! ! < H 1 > < m a r q u e e > < / b o d y > < h t m l >
   ```

1. Zeigen Sie in der Pod-Shell den DNS-Server für den Pod an.

   ```
   Get-NetIPConfiguration
   ```

   Gekürzte Ausgabe

   ```
   InterfaceAlias       : vEthernet
   [...]
   IPv4Address          : 192.168.63.14
   [...]
   DNSServer            : 10.100.0.10
   ```

   In der vorherigen Ausgabe wird `10.100.0.10` automatisch als DNS-Server für alle Pods zugewiesen, die im Cluster bereitgestellt werden.

1. Trennen Sie die Verbindung mit dem Pod, indem Sie `exit` eingeben.

1. Wenn Sie die Beispielanwendung nicht mehr benötigen, können Sie den Beispiel-Namespace, den Service und die Bereitstellung mit dem folgenden Befehl entfernen.

   ```
   kubectl delete namespace eks-sample-app
   ```

## Nächste Schritte
<a name="sample-deployment-win-next-steps"></a>

Nachdem Sie die Beispielanwendung bereitgestellt haben, können Sie einige der folgenden Übungen ausprobieren:
+  [Anwendungen und HTTP-Datenverkehr mit Application Load Balancers weiterleiten](alb-ingress.md) 
+  [Weiterleitung von TCP- und UDP-Datenverkehr mit Network Load Balancers](network-load-balancing.md) 

# Pod-Ressourcen mit Vertical Pod Autoscaler anpassen
<a name="vertical-pod-autoscaler"></a>

Der Kubernetes [Vertical Pod Autoscaler](https://github.com/kubernetes/autoscaler/tree/master/vertical-pod-autoscaler) passt die CPU- und Speicherreservierungen für Ihre Pods automatisch an, um Ihre Anwendungen auf die „richtige Größe“ zu skalieren. Diese Anpassung kann die Cluster-Ressourcennutzung verbessern und CPU und Arbeitsspeicher für andere Pods freigeben. In diesem Thema können Sie den Vertical Pod Autoscaler für Ihren Cluster bereitstellen und überprüfen, ob er funktioniert.
+ Sie haben einen Amazon EKS-Cluster Falls nicht, finden Sie weitere Informationen unter [Erste Schritte mit Amazon EKS](getting-started.md).
+ Sie haben den Kubernetes-Metrik-Server installiert. Weitere Informationen finden Sie unter [Anzeigen der Ressourcennutzung mit Kubernetes Metrics Server](metrics-server.md).
+ Sie verwenden einen `kubectl`-Client, der [für die Kommunikation mit Ihrem Amazon EKS-Cluster konfiguriert](getting-started-console.md#eks-configure-kubectl) ist.
+ OpenSSL `1.1.1` oder höher ist auf Ihrem Gerät installiert.

## Bereitstellen des Vertical Pod Autoscalers
<a name="vpa-deploy"></a>

In diesem Abschnitt stellen Sie den Vertical Pod Autoscaler für Ihren Cluster bereit.

1. Öffnen Sie ein Terminalfenster und navigieren Sie zu einem Verzeichnis, in das Sie den Vertical Pod Autoscaler-Quellcode herunterladen möchten.

1. Klonen Sie das GitHub-Repository [kubernetes/autoscaler](https://github.com/kubernetes/autoscaler).

   ```
   git clone https://github.com/kubernetes/autoscaler.git
   ```

1. Wechseln Sie in das `vertical-pod-autoscaler`-Verzeichnis.

   ```
   cd autoscaler/vertical-pod-autoscaler/
   ```

1. (Optional) Wenn Sie bereits eine andere Version des Vertical Pod Autoscalers bereitgestellt haben, entfernen Sie ihn mit dem folgenden Befehl.

   ```
   ./hack/vpa-down.sh
   ```

1. Wenn Ihre Knoten keinen Internetzugriff auf die Container-Registry `registry.k8s.io` haben, müssen Sie die folgenden Images abrufen und in ein eigenes privates Repository verschieben. Weitere Informationen zum Abrufen und Verschieben der Images in ein eigenes privates Repository finden Sie unter [Kopieren eines Container-Images von einem Repository in ein anderes](copy-image-to-repository.md).

   ```
   registry.k8s.io/autoscaling/vpa-admission-controller:0.10.0
   registry.k8s.io/autoscaling/vpa-recommender:0.10.0
   registry.k8s.io/autoscaling/vpa-updater:0.10.0
   ```

   Wenn Sie die Images in ein privates Amazon-ECR-Repository verschieben, ersetzen Sie `registry.k8s.io` in den Manifesten durch Ihr Registry. Ersetzen Sie *111122223333* durch Ihre Konto-ID. Ersetzen Sie den *region-code* durch die AWS-Region, in der sich Ihr Cluster befindet. Beim folgenden Befehl wird davon ausgegangen, dass Sie Ihr Repository genauso benannt haben wie das Repository im Manifest. Wenn Sie das Repository anders benannt haben, müssen Sie es ebenfalls ändern.

   ```
   sed -i.bak -e 's/registry.k8s.io/111122223333.dkr.ecr.region-code.amazonaws.com/' ./deploy/admission-controller-deployment.yaml
   sed -i.bak -e 's/registry.k8s.io/111122223333.dkr.ecr.region-code.amazonaws.com/' ./deploy/recommender-deployment.yaml
   sed -i.bak -e 's/registry.k8s.io/111122223333.dkr.ecr.region-code.amazonaws.com/' ./deploy/updater-deployment.yaml
   ```

1. Stellen Sie den Vertical Pod Autoscaler mit dem folgenden Befehl für Ihren Cluster bereit.

   ```
   ./hack/vpa-up.sh
   ```

1. Überprüfen Sie, ob die Vertical Pod Autoscaler-Pods erfolgreich erstellt wurden.

   ```
   kubectl get pods -n kube-system
   ```

   Eine Beispielausgabe sieht wie folgt aus.

   ```
   NAME                                        READY   STATUS    RESTARTS   AGE
   [...]
   metrics-server-8459fc497-kfj8w              1/1     Running   0          83m
   vpa-admission-controller-68c748777d-ppspd   1/1     Running   0          7s
   vpa-recommender-6fc8c67d85-gljpl            1/1     Running   0          8s
   vpa-updater-786b96955c-bgp9d                1/1     Running   0          8s
   ```

## Testen der Installation von Vertical Pod Autoscaler
<a name="vpa-sample-app"></a>

In diesem Abschnitt stellen Sie eine Beispielanwendung bereit, um zu überprüfen, ob der Vertical Pod Autoscaler funktioniert.

1. Stellen Sie das Vertical Pod Autoscaler-Beispiel `hamster.yaml` mit dem folgenden Befehl bereit.

   ```
   kubectl apply -f examples/hamster.yaml
   ```

1. Rufen Sie die Pods aus der `hamster`-Beispielanwendung ab.

   ```
   kubectl get pods -l app=hamster
   ```

   Eine Beispielausgabe sieht wie folgt aus.

   ```
   hamster-c7d89d6db-rglf5   1/1     Running   0          48s
   hamster-c7d89d6db-znvz5   1/1     Running   0          48s
   ```

1. Beschreiben Sie einen der Pods, um die zugehörige `cpu`- und `memory`-Reservierung anzuzeigen. Ersetzen Sie *c7d89d6db-rglf5* durch eine der IDs, die in der Ausgabe im vorherigen Schritt zurückgegeben wurden.

   ```
   kubectl describe pod hamster-c7d89d6db-rglf5
   ```

   Eine Beispielausgabe sieht wie folgt aus.

   ```
   [...]
   Containers:
     hamster:
       Container ID:  docker://e76c2413fc720ac395c33b64588c82094fc8e5d590e373d5f818f3978f577e24
       Image:         registry.k8s.io/ubuntu-slim:0.1
       Image ID:      docker-pullable://registry.k8s.io/ubuntu-slim@sha256:b6f8c3885f5880a4f1a7cf717c07242eb4858fdd5a84b5ffe35b1cf680ea17b1
       Port:          <none>
       Host Port:     <none>
       Command:
         /bin/sh
       Args:
         -c
         while true; do timeout 0.5s yes >/dev/null; sleep 0.5s; done
       State:          Running
         Started:      Fri, 27 Sep 2019 10:35:16 -0700
       Ready:          True
       Restart Count:  0
       Requests:
         cpu:        100m
         memory:     50Mi
   [...]
   ```

   Sie können sehen, dass der ursprüngliche Pod 100 Milli-CPU CPU und 50 Mebibyte Speicher reserviert. Für diese Beispielanwendung ist 100 Milli-CPU weniger als der Pod zum Ausführen benötigt, sodass er CPU-eingeschränkt ist. Außerdem reserviert er viel weniger Arbeitsspeicher, als er benötigt. Die Bereitstellung des Vertical Pod Autoscaler `vpa-recommender` analysiert die Hamster-Pods, um festzustellen, ob die CPU- und Speicheranforderungen angemessen sind. Wenn Anpassungen erforderlich sind, werden die Pods mit aktualisierten Werten aus `vpa-updater` neu geladen.

1. Warten Sie, bis `vpa-updater` neue Hamster-Pods startet. Dies sollte ein oder zwei Minuten dauern. Sie können die Pods mit dem folgenden Befehl überwachen.
**Anmerkung**  
Wenn Sie nicht sicher sind, ob ein neuer Pod gestartet wurde, vergleichen Sie die Pod-Namen mit Ihrer vorherigen Liste. Wenn der neue Pod gestartet wird, wird ein neuer Pod-Name angezeigt.

   ```
   kubectl get --watch Pods -l app=hamster
   ```

1. Wenn ein neuer Hamster-Pod gestartet wird, beschreiben Sie ihn und zeigen Sie die aktualisierten CPU- und Speicherreservierungen an.

   ```
   kubectl describe pod hamster-c7d89d6db-jxgfv
   ```

   Eine Beispielausgabe sieht wie folgt aus.

   ```
   [...]
   Containers:
     hamster:
       Container ID:  docker://2c3e7b6fb7ce0d8c86444334df654af6fb3fc88aad4c5d710eac3b1e7c58f7db
       Image:         registry.k8s.io/ubuntu-slim:0.1
       Image ID:      docker-pullable://registry.k8s.io/ubuntu-slim@sha256:b6f8c3885f5880a4f1a7cf717c07242eb4858fdd5a84b5ffe35b1cf680ea17b1
       Port:          <none>
       Host Port:     <none>
       Command:
         /bin/sh
       Args:
         -c
         while true; do timeout 0.5s yes >/dev/null; sleep 0.5s; done
       State:          Running
         Started:      Fri, 27 Sep 2019 10:37:08 -0700
       Ready:          True
       Restart Count:  0
       Requests:
         cpu:        587m
         memory:     262144k
   [...]
   ```

   In der vorherigen Ausgabe können Sie feststellen, dass sich die `cpu`-Reservierung auf 587 Millicpu erhöht hat, was mehr als dem Fünffachen des ursprünglichen Werts entspricht. Der `memory` wurde auf 262.144 Kilobyte erhöht, was etwa 250 Mebibyte bzw. dem Fünffachen des ursprünglichen Werts entspricht. Diesem Pod standen zu wenige Ressourcen zur Verfügung. Daher hat der Vertical Pod Autoscaler unsere Schätzung mit einem wesentlich geeigneteren Wert korrigiert.

1. Beschreiben Sie die `hamster-vpa`-Ressource, um die neue Empfehlung anzuzeigen.

   ```
   kubectl describe vpa/hamster-vpa
   ```

   Eine Beispielausgabe sieht wie folgt aus.

   ```
   Name:         hamster-vpa
   Namespace:    default
   Labels:       <none>
   Annotations:  kubectl.kubernetes.io/last-applied-configuration:
                   {"apiVersion":"autoscaling.k8s.io/v1beta2","kind":"VerticalPodAutoscaler","metadata":{"annotations":{},"name":"hamster-vpa","namespace":"d...
   API Version:  autoscaling.k8s.io/v1beta2
   Kind:         VerticalPodAutoscaler
   Metadata:
     Creation Timestamp:  2019-09-27T18:22:51Z
     Generation:          23
     Resource Version:    14411
     Self Link:           /apis/autoscaling.k8s.io/v1beta2/namespaces/default/verticalpodautoscalers/hamster-vpa
     UID:                 d0d85fb9-e153-11e9-ae53-0205785d75b0
   Spec:
     Target Ref:
       API Version:  apps/v1
       Kind:         Deployment
       Name:         hamster
   Status:
     Conditions:
       Last Transition Time:  2019-09-27T18:23:28Z
       Status:                True
       Type:                  RecommendationProvided
     Recommendation:
       Container Recommendations:
         Container Name:  hamster
         Lower Bound:
           Cpu:     550m
           Memory:  262144k
         Target:
           Cpu:     587m
           Memory:  262144k
         Uncapped Target:
           Cpu:     587m
           Memory:  262144k
         Upper Bound:
           Cpu:     21147m
           Memory:  387863636
   Events:          <none>
   ```

1. Wenn Sie mit dem Experimentieren mit der Beispielanwendung fertig sind, können Sie sie mit dem folgenden Befehl löschen.

   ```
   kubectl delete -f examples/hamster.yaml
   ```

# Skalierung von Pod-Bereitstellungen mit Horizontal Pod Autoscaler
<a name="horizontal-pod-autoscaler"></a>

Der [Horizontal Pod Autoscaler](https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale/) von Kubernetes skaliert automatisch die Anzahl der Pods in einer Bereitstellung, einem Replikations-Controller oder einem Replikatsatz basierend auf der CPU-Auslastung dieser Ressource. Auf diese Weise können Ihre Anwendungen aufskalieren, um den erhöhten Bedarf zu erfüllen, oder abskalieren, wenn Ressourcen nicht benötigt werden, sodass Ihre Knoten für andere Anwendungen freigegeben werden. Wenn Sie einen CPU-Auslastungsprozentsatz festlegen, skaliert der Horizontal Pod Autoscaler Ihre Anwendung in beide Richtungen, um zu versuchen, dieses Ziel zu erreichen.

Der Horizontal Pod Autoscaler ist eine Standard-API-Ressource in Kubernetes, die einfach erfordert, dass eine Metrikquelle (z. B. der Kubernetes-Metrikserver) auf Ihrem Amazon-EKS-Cluster installiert ist. Sie müssen den Horizontal Pod Autoscaler nicht auf Ihrem Cluster bereitstellen oder installieren, um mit der Skalierung Ihrer Anwendungen zu beginnen. Weitere Informationen finden Sie unter [Horizontal Pod Autoscaler](https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale/) in der Kubernetes-Dokumentation.

Verwenden Sie dieses Thema, um den Horizontal Pod Autoscaler für Ihren Amazon-EKS-Cluster vorzubereiten und zu überprüfen, ob er mit einer Beispielanwendung funktioniert.

**Anmerkung**  
Dieses Thema basiert auf der [Anleitung zum Horizontal Pod Autoscaler](https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale-walkthrough/) in der Kubernetes-Dokumentation.
+ Sie haben einen vorhandenen Amazon-EKS-Cluster. Falls nicht, finden Sie weitere Informationen unter [Erste Schritte mit Amazon EKS](getting-started.md).
+ Sie haben den Kubernetes-Metrik-Server installiert. Weitere Informationen finden Sie unter [Anzeigen der Ressourcennutzung mit Kubernetes Metrics Server](metrics-server.md).
+ Sie verwenden einen `kubectl`-Client, der [für die Kommunikation mit Ihrem Amazon EKS-Cluster konfiguriert](getting-started-console.md#eks-configure-kubectl) ist.

## Ausführen einer Horizontal Pod Autoscaler-Testanwendung
<a name="hpa-sample-app"></a>

In diesem Abschnitt stellen Sie eine Beispielanwendung bereit, um zu überprüfen, ob der Horizontal Pod Autoscaler funktioniert.

**Anmerkung**  
Dieses Beispiel basiert auf der [Anleitung zum Horizontal Pod Autoscaler](https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale-walkthrough/) in der Kubernetes-Dokumentation.

1. Stellen Sie mit dem folgenden Befehl eine einfache Apache-Webserveranwendung bereit.

   ```
   kubectl apply -f https://k8s.io/examples/application/php-apache.yaml
   ```

   Dieser Apache-Webserver-Pod verfügt über eine CPU-Begrenzung von 500 Millicpu und ist auf Port 80 erreichbar.

1. Erstellen Sie eine Horizontal Pod Autoscaler-Ressource für die `php-apache`-Bereitstellung.

   ```
   kubectl autoscale deployment php-apache --cpu-percent=50 --min=1 --max=10
   ```

   Dieser Befehl erstellt einen Autoscaler, der 50 Prozent CPU-Auslastung für die Bereitstellung anvisiert, mit mindestens einem Pod und maximal zehn Pods. Wenn die durchschnittliche CPU-Auslastung unter 50 Prozent liegt, versucht der Autoscaler, die Anzahl der Pods in der Bereitstellung auf minimal eins reduzieren. Wenn die Last größer als 50 Prozent ist, versucht der Autoscaler, die Anzahl der Pods in der Bereitstellung auf maximal zehn zu erhöhen. Weitere Informationen finden Sie unter [Wie funktioniert ein Horizontal Pod Autoscaler?](https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale/#how-does-a-horizontalpodautoscaler-work) in der Kubernetes-Dokumentation.

1. Beschreiben Sie den Autoscaler mit dem folgenden Befehl, um seine Details anzuzeigen.

   ```
   kubectl get hpa
   ```

   Eine Beispielausgabe sieht wie folgt aus.

   ```
   NAME         REFERENCE               TARGETS   MINPODS   MAXPODS   REPLICAS   AGE
   php-apache   Deployment/php-apache   0%/50%    1         10        1          51s
   ```

   Wie Sie sehen, ist die aktuelle CPU-Last `0%`, weil es noch keine Last auf dem Server gibt. Die Pod-Anzahl befindet sich bereits an der untersten Grenze (eins), daher kann sie nicht weiter nach unten skaliert werden.

1.  Erstellen Sie eine Last für den Webserver, indem Sie einen Container ausführen.

   ```
   kubectl run -i \
       --tty load-generator \
       --rm --image=busybox \
       --restart=Never \
       -- /bin/sh -c "while sleep 0.01; do wget -q -O- http://php-apache; done"
   ```

1. Um die Skalierung der Bereitstellung zu beobachten, führen Sie in regelmäßigen Abständen den folgenden Befehl in einem anderen Terminal als demjenigen aus, in dem Sie den vorherigen Schritt ausgeführt haben.

   ```
   kubectl get hpa php-apache
   ```

   Eine Beispielausgabe sieht wie folgt aus.

   ```
   NAME         REFERENCE               TARGETS    MINPODS   MAXPODS   REPLICAS   AGE
   php-apache   Deployment/php-apache   250%/50%   1         10        5          4m44s
   ```

   Es kann mehr als eine Minute dauern, bis die Anzahl der Replikate zunimmt. Solange der tatsächliche CPU-Prozentsatz höher als der Zielprozentsatz ist, erhöht sich die Replikatanzahl auf bis zu 10. In diesem Fall ist dies `250%`, so dass die Anzahl der `REPLICAS` weiter steigt.
**Anmerkung**  
Es kann einige Minuten dauern, bis die Replikatanzahl ihr Maximum erreicht. Wenn beispielsweise nur 6 Replikate erforderlich sind, damit die CPU-Last bei oder unter 50 % bleibt, wird die Last nicht über 6 Replikate hinaus skaliert.

1. Stoppen Sie die Last. Halten Sie im Terminal-Fenster, in dem Sie die Last erzeugen, die Last an, indem Sie die `Ctrl+C`-Tasten gedrückt halten. Sie können beobachten, wie die Replikate auf 1 zurückskalieren, indem Sie den folgenden Befehl erneut in dem Terminal ausführen, in dem Sie die Skalierung beobachten.

   ```
   kubectl get hpa
   ```

   Eine Beispielausgabe sieht wie folgt aus.

   ```
   NAME         REFERENCE               TARGETS   MINPODS   MAXPODS   REPLICAS   AGE
   php-apache   Deployment/php-apache   0%/50%    1         10        1          25m
   ```
**Anmerkung**  
Der Standardzeitrahmen für das Zurückskalieren beträgt fünf Minuten. Es wird daher einige Zeit dauern, bis die Replikatanzahl wieder 1 erreicht, selbst wenn der aktuelle CPU-Prozentsatz 0 Prozent beträgt. Der Zeitrahmen ist veränderbar. Weitere Informationen finden Sie unter [Horizontal Pod Autoscaler](https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale/) in der Kubernetes-Dokumentation.

1. Wenn Sie mit dem Experimentieren mit Ihrer Beispielanwendung fertig sind, löschen Sie die `php-apache`-Ressourcen.

   ```
   kubectl delete deployment.apps/php-apache service/php-apache horizontalpodautoscaler.autoscaling/php-apache
   ```

# Weiterleitung von TCP- und UDP-Datenverkehr mit Network Load Balancers
<a name="network-load-balancing"></a>

**Anmerkung**  
 **Neu:** Amazon EKS Auto Mode automatisiert Routineaufgaben für den Lastausgleich. Weitere Informationen finden Sie unter:  
 [Bereitstellung einer Beispiel-Workload für Load Balancer in EKS Auto Mode](auto-elb-example.md) 
 [Verwendung von Service-Annotationen zur Konfiguration von Network Load Balancers](auto-configure-nlb.md) 

Das Load Balancing des Netzwerkverkehrs erfolgt auf `L4` des OSI-Modells. Um den Anwendungsdatenverkehr unter zu verteilen`L7`, stellen Sie ein Kubernetes bereit`ingress`, das einen AWS Application Load Balancer bereitstellt. Weitere Informationen finden Sie unter [Anwendungen und HTTP-Datenverkehr mit Application Load Balancers weiterleiten](alb-ingress.md). Weitere Informationen zu den Unterschieden zwischen den beiden Arten von Load Balancing finden Sie auf der AWS Website unter [Elastic Load Balancing Balancing-Funktionen](https://aws.amazon.com/elasticloadbalancing/features/).

[Wenn Sie einen Kubernetes-Typ erstellen`LoadBalancer`, erstellt `Service` der Load Balancer-Controller des AWS Cloud-Anbieters standardmäßig AWS[Classic Load Balancer](https://docs.aws.amazon.com/elasticloadbalancing/latest/classic/introduction.html), kann aber auch Network Load Balancer erstellen AWS .](https://docs.aws.amazon.com/elasticloadbalancing/latest/network/introduction.html) Dieser Controller erhält in Zukunft nur kritische Fehlerbehebungen. Weitere Informationen zur Verwendung des AWS Cloud-Provider-Loadbalancers finden Sie unter Cloud-Provider-Load Balancer-Controller in der [AWS Kubernetes-Dokumentation](https://kubernetes.io/docs/concepts/services-networking/service/#loadbalancer). Seine Verwendung wird in diesem Thema nicht behandelt.

Wir empfehlen, dass Sie Version `2.7.2` oder höher des [Load AWS Balancer Controllers](aws-load-balancer-controller.md) anstelle des AWS Cloud-Provider-Load Balancer-Controllers verwenden. Der Load AWS Balancer Controller erstellt AWS Network Load Balancer, aber keine AWS Classic Load Balancer. Der Rest dieses Themas befasst sich mit der Verwendung des Load AWS Balancer Controllers.

Ein AWS Network Load Balancer kann den Netzwerkverkehr auf Pods verteilen, die auf Amazon EC2 IP- und [Instance-Zielen](https://docs.aws.amazon.com/elasticloadbalancing/latest/network/load-balancer-target-groups.html#target-type) bereitgestellt werden, auf AWS Fargate-IP-Ziele oder auf Amazon EKS-Hybridknoten als IP-Ziele. Weitere Informationen finden Sie unter [AWS Load Balancer Controller](https://kubernetes-sigs.github.io/aws-load-balancer-controller/latest/guide/targetgroupbinding/targetgroupbinding/#targettype) on GitHub.

## Voraussetzungen
<a name="_prerequisites"></a>

Bevor Sie mit dem Load Balancer Controller einen AWS Lastenausgleich für den Netzwerkverkehr durchführen können, müssen Sie die folgenden Anforderungen erfüllen.
+ Ein Cluster ist vorhanden. Falls Sie keinen vorhandenen Cluster haben, siehe [Erste Schritte mit Amazon EKS](getting-started.md). Wenn Sie die Version eines vorhandenen Clusters aktualisieren müssen, finden Sie Informationen dazu unter [Aktualisierung des vorhandenen Clusters auf die neue Kubernetes-Version](update-cluster.md).
+ Lassen Sie den AWS Load Balancer Controller auf Ihrem Cluster bereitstellen. Weitere Informationen finden Sie unter [Internetverkehr mit AWS Load Balancer Controller weiterleiten](aws-load-balancer-controller.md). Wir empfehlen Version `2.7.2` oder höher.
+ Mindestens ein Subnetz. Werden in einer Availability Zone mehrere markierte Subnetze gefunden, wählt der Controller das erste Subnetz, dessen Subnetz-ID lexikografisch an erster Stelle steht. Das Subnetz muss mindestens acht verfügbare IP-Adressen aufweisen.
+ Wenn Sie die Load AWS Balancer Controller-Version `2.1.1` oder eine frühere Version verwenden, müssen Subnetze wie folgt gekennzeichnet werden. Bei Verwendung der Version `2.1.2` oder höher ist dieses Tag optional. Möglicherweise möchten Sie ein Subnetz taggen, wenn mehrere Cluster in derselben VPC ausgeführt werden, oder wenn mehrere AWS Dienste Subnetze in einer VPC gemeinsam nutzen, und Sie mehr Kontrolle darüber haben möchten, wo Load Balancer für jeden Cluster bereitgestellt werden. Wenn Sie das Subnetz explizit IDs als Anmerkung zu einem Serviceobjekt angeben, verwenden Kubernetes und der Load AWS Balancer Controller diese Subnetze direkt, um den Load Balancer zu erstellen. Subnetz-Tagging ist nicht erforderlich, wenn Sie diese Methode für die Bereitstellung von Load Balancern verwenden. In diesem Fall können Sie die folgenden Anforderungen für das Tagging privater und öffentlicher Subnetze überspringen Ersetzen Sie *my-cluster* mit Ihrem Clusternamen.
  +  **Schlüssel** – `kubernetes.io/cluster/<my-cluster>` 
  +  **Wert** – `shared` oder `owned` 
+ Ihre öffentlichen und privaten Subnetze müssen die folgenden Anforderungen erfüllen, es sei denn, Sie geben das Subnetz explizit IDs als Anmerkung zu einem Service- oder Eingangsobjekt an. Wenn Sie Load Balancer bereitstellen, indem Sie das Subnetz explizit IDs als Anmerkung zu einem Service- oder Ingress-Objekt angeben, verwenden Kubernetes und der Load AWS Balancer Controller diese Subnetze direkt, um den Load Balancer zu erstellen, und die folgenden Tags sind nicht erforderlich.
  +  **Private Subnetze** – Müssen im folgenden Format markiert sein. Auf diese Weise wissen Kubernetes und der Load AWS Balancer Controller, dass die Subnetze für interne Load Balancer verwendet werden können. Wenn Sie eine Amazon AWS AWS CloudFormation EKS-Vorlage verwenden`eksctl`, um Ihre VPC nach dem 26. März 2020 zu erstellen, werden die Subnetze bei der Erstellung entsprechend gekennzeichnet. Weitere Informationen über die Amazon-EKS- AWS - AWS CloudFormation -VPC-Vorlagen finden Sie unter [Erstellung einer Amazon VPC für Ihren Amazon-EKS-Cluster](creating-a-vpc.md).
    +  **Schlüssel** – `kubernetes.io/role/internal-elb` 
    +  **Wert** – `1` 
  +  **Öffentliche Subnetze** – Müssen im folgenden Format markiert sein. Auf diese Weise weiß Kubernetes, dass es nur diese Subnetze für externe Load Balancer verwenden muss, anstatt in jeder Availability Zone ein öffentliches Subnetz auszuwählen (basierend auf der lexikografischen Reihenfolge des Subnetzes). IDs Wenn Sie eine Amazon AWS CloudFormation EKS-Vorlage verwenden`eksctl`, um Ihre VPC nach dem 26. März 2020 zu erstellen, werden die Subnetze bei der Erstellung entsprechend gekennzeichnet. Weitere Informationen zu den Amazon AWS CloudFormation EKS-VPC-Vorlagen finden Sie unter[Erstellung einer Amazon VPC für Ihren Amazon-EKS-Cluster](creating-a-vpc.md).
    +  **Schlüssel** – `kubernetes.io/role/elb` 
    +  **Wert** – `1` 

  Wenn die Tags für Subnetz-Rollen nicht explizit hinzugefügt werden, prüft der Kubernetes-Service-Controller die Routing-Tabelle der Cluster-VPC-Subnetze, um festzustellen, ob das Subnetz privat oder öffentlich ist. Es wird empfohlen, dass Sie sich nicht auf dieses Verhalten verlassen und stattdessen explizit die privaten oder öffentlichen Rollen-Tags hinzufügen. Der Load AWS Balancer Controller untersucht keine Routing-Tabellen und setzt voraus, dass die privaten und öffentlichen Tags für eine erfolgreiche auto Erkennung vorhanden sind.

## Überlegungen
<a name="_considerations"></a>
+ Die Konfiguration Ihres Load Balancers wird durch Anmerkungen gesteuert, die zu dem Manifest für Ihren Service hinzugefügt werden. Dienstanmerkungen unterscheiden sich bei Verwendung des Load AWS Balancer Controllers von denen bei Verwendung des AWS Cloud-Provider-Load Balancer-Controllers. Stellen Sie sicher, dass Sie die [Anmerkungen](https://kubernetes-sigs.github.io/aws-load-balancer-controller/latest/guide/service/annotations/) für den Load AWS Balancer Controller überprüfen, bevor Sie Dienste bereitstellen.
+ Bei Verwendung des [Amazon VPC CNI-Plug-ins für Kubernetes](managing-vpc-cni.md) kann der Load Balancer Controller einen AWS Lastausgleich auf Amazon EC2 IP- oder Instance-Ziele und Fargate-IP-Ziele durchführen. Bei Verwendung von [Alternativen kompatiblen CNI-Plugins](alternate-cni-plugins.md) kann der Controller die Last nur auf Instance-Ziele ausgleichen, es sei denn, Sie führen das Load Balancing in Amazon EKS Hybrid Nodes durch. Bei Hybridknoten kann der Controller die IP-Ziele ausgleichen. Weitere Informationen zu Network-Load-Balancer-Zieltypen finden Sie unter [Zieltyp](https://docs.aws.amazon.com/elasticloadbalancing/latest/network/load-balancer-target-groups.html#target-type) im Benutzerhandbuch für Network Load Balancers.
+ Wenn Sie dem Load Balancer Tags hinzufügen möchten, wenn oder nachdem er erstellt wurde, fügen Sie die folgende Annotation in Ihre Service-Spezifikation ein. Weitere Informationen finden Sie unter [AWS Resource Tags](https://kubernetes-sigs.github.io/aws-load-balancer-controller/latest/guide/service/annotations/#aws-resource-tags) in der Load AWS Balancer Controller-Dokumentation.

  ```
  service.beta.kubernetes.io/aws-load-balancer-additional-resource-tags
  ```
+ Sie können [Elastic IP-Adressen](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/elastic-ip-addresses-eip.html) zum Network Load Balancer hinzufügen, indem Sie die folgende Anmerkung hinzufügen. Ersetzen Sie die Beispielwerte durch die `Allocation IDs` Ihrer Elastic IP-Adressen. Die Anzahl der `Allocation IDs` muss mit der Anzahl der Subnetze übereinstimmen, die für den Load Balancer verwendet werden. Weitere Informationen finden Sie unter Ressourcen-Tags in der [AWS -Load-Balancer-Controller](https://kubernetes-sigs.github.io/aws-load-balancer-controller/latest/guide/service/annotations/#eip-allocations)-Dokumentation.

  ```
  service.beta.kubernetes.io/aws-load-balancer-eip-allocations: eipalloc-xxxxxxxxxxxxxxxxx,eipalloc-yyyyyyyyyyyyyyyyy
  ```
+ Für jeden Network Load Balancer, den Sie erstellen, fügt Amazon EKS der Sicherheitsgruppe des Knotens für Client-Datenverkehr eine eingehende Regel und für jedes Load-Balancer-Subnetz in der VPC für Integritätsprüfungen eine Regel hinzu. Bereitstellung eines Dienstes vom Typ`LoadBalancer`kann fehlschlagen, wenn Amazon EKS versucht, Regeln zu erstellen, die das Kontingent für die maximal zulässige Anzahl von Regeln für eine Sicherheitsgruppe überschreiten. Weitere Informationen dazu finden Sie im Abschnitt [Sicherheitsgruppe](https://docs.aws.amazon.com/vpc/latest/userguide/amazon-vpc-limits.html#vpc-limits-security-groups) in Amazon VPC-Kontingenten im Amazon VPC-Benutzerhandbuch. Berücksichtigen Sie die folgenden Optionen, um die Wahrscheinlichkeit zu minimieren, dass die maximale Anzahl von Regeln für eine Sicherheitsgruppe überschritten wird:
  + Fordern Sie eine Erhöhung Ihrer Regeln pro Sicherheitsgruppenkontingent an. Weitere Informationen dazu finden Sie unter [Beantragen einer Kontingenterhöhung](https://docs.aws.amazon.com/servicequotas/latest/userguide/request-quota-increase.html) im Service-Quotas-Benutzerhandbuch.
  + Verwenden Sie IP-Ziele anstelle von Instance-Zielen. Mit IP-Zielen können Sie Regeln für dieselben Zielports freigeben. Sie können Load-Balancer-Subnetze manuell mit einer Anmerkung angeben. Weitere Informationen finden Sie unter [Anmerkungen zu](https://kubernetes-sigs.github.io/aws-load-balancer-controller/latest/guide/service/annotations/) GitHub.
  + Verwenden Sie einen Eingang anstelle eines Services vom Typ `LoadBalancer`, um Datenverkehr an Ihren Service zu senden. Der AWS Application Load Balancer benötigt weniger Regeln als Network Load Balancer. Sie können einen ALB für mehrere Eingänge freigeben. Weitere Informationen finden Sie unter [Anwendungen und HTTP-Datenverkehr mit Application Load Balancers weiterleiten](alb-ingress.md). Sie können einen Network Load Balancer nicht über mehrere Services hinweg freigeben.
  + Stellen Sie Ihre Cluster für mehrere Konten bereit.
+ Wenn Ihre Pods unter Windows in einem Amazon-EKS-Cluster ausgeführt werden, kann ein einzelner Service mit einem Load Balancer bis zu 1024 Backend-Pods unterstützen. Jeder Pod hat seine eigene eindeutige IP-Adresse.
+ Wir empfehlen, nur neue Network Load Balancer mit dem Load AWS Balancer Controller zu erstellen. Der Versuch, vorhandene Network Load Balancer zu ersetzen, die mit dem Load Balancer-Controller des AWS Cloud-Anbieters erstellt wurden, kann zu mehreren Network Load Balancers führen, was zu Anwendungsausfällen führen kann.

## Erstellen eines Network Load Balancers
<a name="network-load-balancer"></a>

Sie können einen Netzwerk-Load-Balancer mit IP- oder Instance-Zielen erstellen.

### Network Load Balancer erstellen – IP-Ziele
<a name="_create_network_load_balancerip_targets"></a>
+ Sie können IP-Ziele mit Pods verwenden, die auf EC2 Amazon-Knoten, Fargate oder Amazon EKS-Hybridknoten bereitgestellt werden. Ihr Kubernetes-Service muss als Typ `LoadBalancer` erstellt werden. Weitere Informationen finden Sie LoadBalancer in der Kubernetes-Dokumentation unter [Type](https://kubernetes.io/docs/concepts/services-networking/service/#loadbalancer).

  Um einen Load Balancer zu erstellen, der IP-Ziele verwendet, fügen Sie die folgende Anmerkung zu einem Service-Manifest hinzu und stellen Sie den Dienst bereit. Der `external` `aws-load-balancer-type` Wert für veranlasst den Load AWS Balancer Controller und nicht den Load Balancer Controller des AWS Cloud-Anbieters, den Network Load Balancer zu erstellen. Sie können ein [Beispiel-Service-Manifest](#network-load-balancing-service-sample-manifest) mit den Anmerkungen anzeigen.

  ```
  service.beta.kubernetes.io/aws-load-balancer-type: "external"
  service.beta.kubernetes.io/aws-load-balancer-nlb-target-type: "ip"
  ```
**Anmerkung**  
Wenn Sie Load Balancing auf `IPv6` Pods durchführen, fügen Sie die folgende Annotation hinzu. Load Balancing über `IPv6` funktioniert nur auf IP-Ziele, nicht auf Instance-Ziele. Ohne diese Anmerkung verläuft das Load Balancing über `IPv4`.

  ```
  service.beta.kubernetes.io/aws-load-balancer-ip-address-type: dualstack
  ```

  Network Load Balancer werden standardmäßig mit dem `internal` `aws-load-balancer-scheme` erstellt. Sie können Network Load Balancer in jedem Subnetz in der VPC Ihres Clusters starten, einschließlich Subnetze, die bei der Erstellung Ihres Clusters nicht angegeben wurden.

  Kubernetes untersucht die Routing-Tabelle auf Ihre Subnetze, um zu identifizieren, ob sie öffentlich oder privat sind. Öffentliche Subnetze verfügen über einen direkten Zugang zum Internet über ein Internet-Gateway, nicht aber private Subnetze.

  Wenn Sie einen Network Load Balancer in einem öffentlichen Subnetz für den Lastenausgleich auf EC2 Amazon-Knoten erstellen möchten (Fargate kann nur privat sein), geben Sie dies `internet-facing` mit der folgenden Anmerkung an:

  ```
  service.beta.kubernetes.io/aws-load-balancer-scheme: "internet-facing"
  ```
**Anmerkung**  
Aus Gründen der Abwärtskompatibilität wird `service.beta.kubernetes.io/aws-load-balancer-type: "nlb-ip"` weiterhin unterstützt. Wir empfehlen jedoch die Verwendung der vorherigen Anmerkungen für neue Load Balancer anstelle von `service.beta.kubernetes.io/aws-load-balancer-type: "nlb-ip"`.
**Wichtig**  
Bearbeiten Sie die Anmerkungen nicht, nachdem Sie Ihren Service erstellt haben. Wenn Sie es ändern müssen, löschen Sie das Service-Objekt und erstellen es erneut mit dem gewünschten Wert für diese Anmerkung.

### Network Load Balancer erstellen – Instance-Ziele
<a name="_create_network_load_balancerinstance_targets"></a>
+ Der Load Balancer-Controller des AWS Cloud-Anbieters erstellt Network Load Balancer nur mit Instanzzielen. Version `2.2.0` und höher des Load AWS Balancer Controllers erstellen auch Network Load Balancer mit Instanzzielen. Wir empfehlen, ihn anstelle des Load Balancer-Controllers des AWS Cloud-Anbieters zu verwenden, um neue Network Load Balancer zu erstellen. Sie können Network Load Balancer Balancer-Instance-Ziele mit Pods verwenden, die auf EC2 Amazon-Knoten, aber nicht auf Fargate bereitgestellt werden. Um den Netzwerkverkehr über Pods auszugleichen, die in Fargate bereitgestellt werden, müssen Sie IP-Ziele verwenden.

  Um einen Network Load Balancer in einem privaten Subnetz bereitzustellen, muss Ihre Service-Spezifikation über die folgenden Anmerkungen verfügen. Sie können ein [Beispiel-Service-Manifest](#network-load-balancing-service-sample-manifest) mit den Anmerkungen anzeigen. Der `external` `aws-load-balancer-type` Wert für veranlasst den Load AWS Balancer Controller und nicht den Load Balancer Controller des AWS Cloud-Anbieters, den Network Load Balancer zu erstellen.

  ```
  service.beta.kubernetes.io/aws-load-balancer-type: "external"
  service.beta.kubernetes.io/aws-load-balancer-nlb-target-type: "instance"
  ```

  Network Load Balancer werden standardmäßig mit dem `internal` `aws-load-balancer-scheme` erstellt. Für interne Network Load Balancer muss Ihr Amazon-EKS-Cluster so konfiguriert werden, dass er mindestens ein privates Subnetz in Ihrer VPC verwendet. Kubernetes untersucht die Routing-Tabelle auf Ihre Subnetze, um zu identifizieren, ob sie öffentlich oder privat sind. Öffentliche Subnetze verfügen über einen direkten Zugang zum Internet über ein Internet-Gateway, nicht aber private Subnetze.

  Wenn Sie einen Network Load Balancer in einem öffentlichen Subnetz für den Lastenausgleich auf EC2 Amazon-Knoten erstellen möchten, geben Sie dies `internet-facing` mit der folgenden Anmerkung an:

  ```
  service.beta.kubernetes.io/aws-load-balancer-scheme: "internet-facing"
  ```
**Wichtig**  
Bearbeiten Sie die Anmerkungen nicht, nachdem Sie Ihren Service erstellt haben. Wenn Sie es ändern müssen, löschen Sie das Service-Objekt und erstellen es erneut mit dem gewünschten Wert für diese Anmerkung.

## (Optional) Bereitstellen einer Beispielanwendung
<a name="load-balancer-sample-application"></a>
+ Mindestens ein öffentliches oder privates Subnetz in Ihrer Cluster-VPC.
+ Lassen Sie den AWS Load Balancer Controller auf Ihrem Cluster bereitstellen. Weitere Informationen finden Sie unter [Internetverkehr mit AWS Load Balancer Controller weiterleiten](aws-load-balancer-controller.md). Wir empfehlen Version `2.7.2` oder höher.

  1. Wenn Sie für Fargate bereitstellen, stellen Sie sicher, dass Sie über ein verfügbares privates Subnetz in Ihrer VPC verfügen, und erstellen Sie ein Fargate-Profil. Wenn Sie keine Bereitstellung für Fargate durchführen, überspringen Sie diesen Schritt. Sie können das Profil erstellen, indem Sie den folgenden Befehl ausführen oder in [AWS-Managementkonsole](fargate-profile.md#create-fargate-profile) die gleichen Werte für `name` und `namespace` verwenden, die im Befehl enthalten sind. Ersetzen Sie die Beispielwerte durch Ihre eigenen Werte.

     ```
     eksctl create fargateprofile \
         --cluster my-cluster \
         --region region-code \
         --name nlb-sample-app \
         --namespace nlb-sample-app
     ```

  1. Bereitstellen einer Beispielanwendung

     1. Erstellen Sie einen Namespace für die Anwendung.

        ```
        kubectl create namespace nlb-sample-app
        ```

     1. Speichern Sie den folgenden Inhalt in einer Datei mit dem Namen `sample-deployment.yaml` auf Ihrem Computer.

        ```
        apiVersion: apps/v1
        kind: Deployment
        metadata:
          name: nlb-sample-app
          namespace: nlb-sample-app
        spec:
          replicas: 3
          selector:
            matchLabels:
              app: nginx
          template:
            metadata:
              labels:
                app: nginx
            spec:
              containers:
                - name: nginx
                  image: public.ecr.aws/nginx/nginx:1.23
                  ports:
                    - name: tcp
                      containerPort: 80
        ```

     1. Wenden Sie die Manifestdatei auf Ihren Cluster an.

        ```
        kubectl apply -f sample-deployment.yaml
        ```

  1. Erstellen Sie einen Service mit einem zum Internet offenen Network Load Balancer, der Load Balancing auf IP-Ziele vornimmt.

     1.  Speichern Sie den folgenden Inhalt in einer Datei mit dem Namen `sample-service.yaml` file auf Ihrem Computer. Wenn Sie in Fargate-Knoten bereitstellen, entfernen Sie die `service.beta.kubernetes.io/aws-load-balancer-scheme: internet-facing`-Zeile.

        ```
        apiVersion: v1
        kind: Service
        metadata:
          name: nlb-sample-service
          namespace: nlb-sample-app
          annotations:
            service.beta.kubernetes.io/aws-load-balancer-type: external
            service.beta.kubernetes.io/aws-load-balancer-nlb-target-type: ip
            service.beta.kubernetes.io/aws-load-balancer-scheme: internet-facing
        spec:
          ports:
            - port: 80
              targetPort: 80
              protocol: TCP
          type: LoadBalancer
          selector:
            app: nginx
        ```

     1. Wenden Sie die Manifestdatei auf Ihren Cluster an.

        ```
        kubectl apply -f sample-service.yaml
        ```

  1.  Stellen Sie sicher, dass der Dienst bereitgestellt wurde.

     ```
     kubectl get svc nlb-sample-service -n nlb-sample-app
     ```

     Eine Beispielausgabe sieht wie folgt aus.

     ```
     NAME            TYPE           CLUSTER-IP         EXTERNAL-IP                                                                    PORT(S)        AGE
     sample-service  LoadBalancer   10.100.240.137   k8s-nlbsampl-nlbsampl-xxxxxxxxxx-xxxxxxxxxxxxxxxx.elb.region-code.amazonaws.com  80:32400/TCP   16h
     ```
**Anmerkung**  
Die Werte für *10.100.240.137* und *xxxxxxxxxx* - unterscheiden *xxxxxxxxxxxxxxxx* sich von der Beispielausgabe (sie gelten nur für Ihren Load Balancer) und *us-west-2* können für Sie unterschiedlich sein, je nachdem, in welcher AWS Region sich Ihr Cluster befindet.

  1. Öffne den [Amazon EC2 AWS-Managementkonsole](https://console.aws.amazon.com/ec2). Wählen Sie **Target Groups** (Zielgruppen) unter **Load Balancing** (Lastausgleich) im linken Navigationsbereich aus. Wählen Sie in der Spalte **Name** den Namen der Zielgruppe aus, wobei der Wert in der Spalte **Load Balancer** einem Teil des Namens in der `EXTERNAL-IP`-Spalte der Ausgabe im vorherigen Schritt entspricht. Sie wählen beispielsweise die Zielgruppe mit dem Namen `k8s-default-samplese-xxxxxxxxxx `, wenn Ihre Ausgabe mit der vorigen Ausgabe übereinstimmte. Der **Zieltyp** ist `IP`, weil dies im Beispiel-Manifest des Services angegeben wurde.

  1. Wählen Sie Ihre **Zielgruppe** und danach die Registerkarte **Ziele** aus. Unter **Registrierte Ziele** sollten Sie drei IP-Adressen der drei Replikate sehen, die in einem vorherigen Schritt bereitgestellt wurden. Warten Sie, bis der Status aller Ziele **fehlerfrei** ist, bevor Sie fortfahren. Möglicherweise dauert es ein paar Minuten, bis alle Ziele `healthy` sind. Die Ziele können sich in einem `unhealthy`-Zustand befinden, bevor sie in einen `healthy`-Zustand wechseln.

  1. Senden Sie Datenverkehr an den Dienst, indem Sie *xxxxxxxxxx-xxxxxxxxxxxxxxxx* und *us-west-2* durch die Werte ersetzen, die in der Ausgabe für einen [vorherigen Schritt](#nlb-sample-app-verify-deployment) für `EXTERNAL-IP` zurückgegeben wurden. Wenn Sie in einem privaten Subnetz bereitgestellt haben, müssen Sie die Seite von einem Gerät in Ihrer VPC aus anzeigen, z. B. von einem Bastion-Host. Weitere Informationen finden Sie unter [Linux-Bastion-Hosts in AWS](https://aws.amazon.com/quickstart/architecture/linux-bastion/).

     ```
     curl k8s-default-samplese-xxxxxxxxxx-xxxxxxxxxxxxxxxx.elb.region-code.amazonaws.com
     ```

     Eine Beispielausgabe sieht wie folgt aus.

     ```
     <!DOCTYPE html>
     <html>
     <head>
     <title>Welcome to nginx!</title>
     [...]
     ```

  1. Wenn Sie mit der Beispiel-Bereitstellung, dem Service und Namespace fertig sind, entfernen Sie sie.

     ```
     kubectl delete namespace nlb-sample-app
     ```

# Anwendungen und HTTP-Datenverkehr mit Application Load Balancers weiterleiten
<a name="alb-ingress"></a>

**Anmerkung**  
 **Neu:** Amazon EKS Auto Mode automatisiert Routineaufgaben für den Lastausgleich. Weitere Informationen finden Sie unter:  
 [Bereitstellung einer Beispiel-Workload für Load Balancer in EKS Auto Mode](auto-elb-example.md) 
 [Erstellen Sie einen IngressClass , um einen Application Load Balancer zu konfigurieren](auto-configure-alb.md) 

Wenn Sie ein Kubernetes erstellen`ingress`, wird ein AWS Application Load Balancer (ALB) bereitgestellt, der den Anwendungsdatenverkehr ausgleicht. Weitere Informationen finden Sie unter [Was ist ein Application Load Balancer](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/introduction.html)? im *Application Load Balancers-Benutzerhandbuch* und [Ingress](https://kubernetes.io/docs/concepts/services-networking/ingress/) in der Kubernetes-Dokumentation. ALBs kann mit Pods verwendet werden, die auf Knoten oder in AWS Fargate bereitgestellt werden. Sie können einen ALB für öffentliche oder private Subnetze bereitstellen.

Der Anwendungsverkehr wird bei `L7` des OSI-Modells ausgeglichen. Um den Netzwerkverkehr auf `L4` auszugleichen, stellen Sie einen Kubernetes-`service` vom Typ `LoadBalancer` bereit. Dieser Typ stellt einen AWS Network Load Balancer bereit. Weitere Informationen finden Sie unter [Weiterleitung von TCP- und UDP-Datenverkehr mit Network Load Balancers](network-load-balancing.md). Weitere Informationen zu den Unterschieden zwischen den beiden Arten von Load Balancing finden Sie auf der AWS Website unter [Elastic Load Balancing Balancing-Funktionen](https://aws.amazon.com/elasticloadbalancing/features/).

## Voraussetzungen
<a name="_prerequisites"></a>

Bevor Sie den Anwendungsdatenverkehr auf eine Anwendung verteilen können, müssen Sie die folgenden Anforderungen erfüllen.
+ Ein Cluster ist vorhanden. Falls Sie keinen vorhandenen Cluster haben, siehe [Erste Schritte mit Amazon EKS](getting-started.md). Wenn Sie die Version eines vorhandenen Clusters aktualisieren müssen, finden Sie Informationen dazu unter [Aktualisierung des vorhandenen Clusters auf die neue Kubernetes-Version](update-cluster.md).
+ Lassen Sie den AWS Load Balancer Controller auf Ihrem Cluster bereitstellen. Weitere Informationen finden Sie unter [Internetverkehr mit AWS Load Balancer Controller weiterleiten](aws-load-balancer-controller.md). Wir empfehlen Version `2.7.2` oder höher.
+ Mindestens zwei Subnetze in verschiedenen Availability Zones. Der AWS Load Balancer Controller wählt aus jeder Availability Zone ein Subnetz aus. Wenn mehrere markierte Subnetze in einer Availability Zone gefunden werden, wählt der Controller das Subnetz aus, dessen Subnetz-ID lexikografisch an erster Stelle steht. Ein Subnetz muss jeweils mindestens acht verfügbare IP-Adressen aufweisen.

  Wenn Sie mehrere an den Worker-Knoten angefügte Sicherheitsgruppen verwenden, muss genau eine Sicherheitsgruppe wie folgt gekennzeichnet werden. Ersetzen Sie *my-cluster* mit Ihrem Clusternamen.
  +  **Schlüssel** – `kubernetes.io/cluster/<my-cluster>` 
  +  **Wert** – `shared` oder `owned` 
+ Wenn Sie die Load AWS Balancer Controller-Version `2.1.1` oder eine frühere Version verwenden, müssen Subnetze im folgenden Format gekennzeichnet werden. Wenn Sie Version `2.1.2` oder höher verwenden, ist die Kennzeichnung optional. Wir empfehlen jedoch, ein Subnetz zu markieren, falls einer der folgenden Fälle zutrifft. Sie haben mehrere Cluster, die in derselben VPC ausgeführt werden, oder Sie haben mehrere AWS Dienste, die sich Subnetze in einer VPC teilen. Oder Sie möchten mehr Kontrolle darüber haben, wo Load Balancer für jeden Cluster bereitgestellt werden. Ersetzen Sie *my-cluster* durch Ihren Clusternamen.
  +  **Schlüssel** – `kubernetes.io/cluster/<my-cluster>` 
  +  **Wert** – `shared` oder `owned` 
+ Ihre öffentlichen und privaten Subnetze müssen die folgenden Anforderungen erfüllen. Dies ist der Fall, es sei denn, Sie geben das Subnetz explizit IDs als Anmerkung zu einem Service- oder Eingangsobjekt an. Gehen Sie davon aus, dass Sie Load Balancer bereitstellen, indem Sie das Subnetz explizit IDs als Anmerkung zu einem Dienst- oder Eingangsobjekt angeben. In dieser Situation verwenden Kubernetes und der AWS Load Balancer-Controller diese Subnetze direkt, um den Load Balancer zu erstellen, und die folgenden Tags sind nicht erforderlich.
  +  **Private Subnetze** – Müssen im folgenden Format markiert sein. Auf diese Weise wissen Kubernetes und der Load Balancer-Controller, dass die Subnetze für interne Load AWS Balancer verwendet werden können. Wenn Sie nach dem 26. März 2020 eine Amazon AWS CloudFormation EKS-Vorlage verwenden`eksctl`, um Ihre VPC zu erstellen, werden die Subnetze bei der Erstellung entsprechend gekennzeichnet. Weitere Informationen zu den Amazon AWS CloudFormation EKS-VPC-Vorlagen finden Sie unter[Erstellung einer Amazon VPC für Ihren Amazon-EKS-Cluster](creating-a-vpc.md).
    +  **Schlüssel** – `kubernetes.io/role/internal-elb` 
    +  **Wert** – `1` 
  +  **Öffentliche Subnetze** – Müssen im folgenden Format markiert sein. So erkennt Kubernetes, dass nur die Subnetze verwendbar sind, die für externe Load Balancer angegeben wurden. Auf diese Weise wählt Kubernetes nicht in jeder Availability Zone ein öffentliches Subnetz (lexikografisch basierend auf ihrer Subnetz-ID). Wenn Sie nach dem 26. März 2020 eine Amazon AWS CloudFormation EKS-Vorlage verwenden`eksctl`, um Ihre VPC zu erstellen, werden die Subnetze bei der Erstellung entsprechend gekennzeichnet. Weitere Informationen zu den Amazon AWS CloudFormation EKS-VPC-Vorlagen finden Sie unter[Erstellung einer Amazon VPC für Ihren Amazon-EKS-Cluster](creating-a-vpc.md).
    +  **Schlüssel** – `kubernetes.io/role/elb` 
    +  **Wert** – `1` 

  Wenn die Subnetz-Rollen-Tags nicht explizit hinzugefügt werden, untersucht der Kubernetes-Service-Controller die Routing-Tabelle Ihrer Cluster-VPC-Subnetze. Dadurch wird festgestellt, ob das Subnetz privat oder öffentlich ist. Wir empfehlen, sich nicht auf dieses Verhalten zu verlassen. Fügen Sie stattdessen explizit die Rollen-Tags privat oder öffentlich hinzu. Der AWS Load Balancer Controller untersucht keine Routentabellen. Außerdem müssen die Tags privat und öffentlich für eine erfolgreiche automatische Erkennung vorhanden sein.
+ Der [Load AWS Balancer Controller](https://github.com/kubernetes-sigs/aws-load-balancer-controller) erstellt ALBs und die erforderlichen unterstützenden AWS Ressourcen, wenn eine Kubernetes-Eingangsressource auf dem Cluster mit der Anmerkung erstellt wird. `kubernetes.io/ingress.class: alb` Die Ressource für eingehenden Datenverkehr konfiguriert den ALB so, dass HTTP- oder HTTPS-Datenverkehr an verschiedene Pods im Cluster weitergeleitet wird. Um sicherzustellen, dass Ihre Ingress-Objekte den Load AWS Balancer Controller verwenden, fügen Sie Ihrer Kubernetes-Ingress-Spezifikation die folgende Anmerkung hinzu. Weitere Informationen finden Sie unter [Ingress-Spezifikation](https://kubernetes-sigs.github.io/aws-load-balancer-controller/latest/guide/ingress/spec/) auf GitHub.

  ```
  annotations:
      kubernetes.io/ingress.class: alb
  ```
**Anmerkung**  
Wenn Sie Load Balancing für `IPv6`-Pods verwenden, fügen Sie die folgende Annotation zu Ihrer Ingress-Spezifikation hinzu. Load Balancing über `IPv6` funktioniert nur auf IP-Ziele, nicht auf Instance-Ziele. Ohne diese Anmerkung verläuft das Load Balancing über `IPv4`.

  ```
  alb.ingress.kubernetes.io/ip-address-type: dualstack
  ```
+ Der AWS Load Balancer Controller unterstützt die folgenden Verkehrsmodi:
  +  **Instance** – Registriert Knoten in Ihrem Cluster als Ziele für den ALB. Der Datenverkehr, der den ALB erreicht, wird für Ihren Service an `NodePort` und dann an Ihre Pods weitergeleitet. Dies ist der standardmäßige Datenverkehrsmodus. Sie können ihn auch explizit mit der `alb.ingress.kubernetes.io/target-type: instance`-Anmerkung angeben.
**Anmerkung**  
Ihr Kubernetes-Service muss den Typ `NodePort` oder `LoadBalancer` angeben, um diesen Datenverkehrsmodus verwenden zu können.
  +  **IP** – Registriert Pods als Ziele für den ALB. Der Datenverkehr, der den ALB erreicht, wird für Ihren Service direkt an Pods weitergeleitet. Sie müssen die `alb.ingress.kubernetes.io/target-type: ip`-Anmerkung angeben, um diesen Datenverkehrsmodus verwenden zu können. Der IP-Zieltyp ist erforderlich, wenn Ziel-Pods in Fargate oder Amazon EKS Hybrid Nodes ausgeführt werden.
+ Um ein vom Controller ALBs erstelltes Tag zu erstellen, fügen Sie dem Controller die folgende Anmerkung hinzu:`alb.ingress.kubernetes.io/tags`. Eine Liste aller verfügbaren Anmerkungen, die vom Load AWS Balancer Controller unterstützt werden, finden Sie unter [Ingress-Anmerkungen](https://kubernetes-sigs.github.io/aws-load-balancer-controller/latest/guide/ingress/annotations/) auf. GitHub
+ Ein Upgrade oder Downgrade der ALB-Controller-Version kann zu einer Unterbrechung der Abwärtskompatibilität für Features führen, die darauf angewiesen sind. Weitere Informationen zu den Breaking Changes, die in jeder Version eingeführt werden, finden Sie in den Versionshinweisen zum [ALB-Controller](https://github.com/kubernetes-sigs/aws-load-balancer-controller/releases) auf GitHub.

## Wiederverwendung mit Ingress-Gruppen ALBs
<a name="_reuse_albs_with_ingress_groups"></a>

Sie können einen Application Load Balancer über mehrere Service-Ressourcen hinweg mithilfe von `IngressGroups` gemeinsam nutzen.

Um einen Ingress einer Gruppe hinzuzufügen, fügen Sie die folgende Anmerkung zu einer Kubernetes-Ingress-Ressourcenspezifikation hinzu.

```
alb.ingress.kubernetes.io/group.name: my-group
```

Der Gruppenname muss:
+ Eine Länge von 63 oder weniger Zeichen haben.
+ Aus Kleinbuchstaben, Zahlen, `-` und `.` bestehen 
+ Muss mit einer Zahl oder einem Buchstaben beginnen und enden.

Der Controller führt automatisch Ingress-Regeln für alle Ingresses in derselben Ingress-Gruppe zusammen. Es unterstützt sie mit einem einzigen ALB. Die meisten Anmerkungen, die auf einem Ingress definiert sind, gelten nur für die von diesem Ingress definierten Pfade. Standardmäßig gehören Ingress-Ressourcen keiner Ingress-Gruppe an.

**Warnung**  
 **Potentielles Sicherheitsrisiko**   
Geben Sie nur dann eine Ingress-Gruppe für einen Ingress an, wenn alle Kubernetes-Benutzer mit RBAC-Berechtigung zum Erstellen oder Ändern von Ingress-Ressourcen innerhalb derselben Vertrauensgrenze liegen. Wenn Sie die Anmerkung mit einem Gruppennamen hinzufügen, können andere Kubernetes-Benutzer ihre Ingresses erstellen oder ändern, sodass sie derselben Ingress-Gruppe angehören. Dies kann zu unerwünschtem Verhalten führen, z. B. zum Überschreiben vorhandener Regeln durch Regeln mit höherer Priorität.

Sie können eine Reihenfolgennummer zu Ihrer Ingress-Ressource hinzufügen.

```
alb.ingress.kubernetes.io/group.order: '10'
```

Die Zahl kann 1-1000 sein. Die niedrigste Zahl für alle Ingresse in derselben Ingress-Gruppe wird zuerst ausgewertet. Alle Ingresses ohne diese Anmerkung werden mit dem Wert null bewertet. Doppelte Regeln mit einer höheren Nummer können Regeln mit einer niedrigeren Nummer überschreiben. Standardmäßig wird die Regelreihenfolge zwischen Ingressen innerhalb derselben Ingress-Gruppe lexikografisch basierend auf Namespace und Name bestimmt.

**Wichtig**  
Stellen Sie sicher, dass jeder Ingress in derselben Ingress-Gruppe eine eindeutige Prioritätsnummer hat. In Ingresses dürfen keine doppelten Bestellnummern vorhanden sein.

## (Optional) Bereitstellen einer Beispielanwendung
<a name="application-load-balancer-sample-application"></a>
+ Mindestens ein öffentliches oder privates Subnetz in Ihrer Cluster-VPC.
+ Lassen Sie den AWS Load Balancer Controller auf Ihrem Cluster bereitstellen. Weitere Informationen finden Sie unter [Internetverkehr mit AWS Load Balancer Controller weiterleiten](aws-load-balancer-controller.md). Wir empfehlen Version `2.7.2` oder höher.

Sie können die Beispielanwendung auf einem Cluster ausführen, der EC2 Amazon-Knoten, Fargate Pods oder beides hat.

1. Wenn Sie keine Bereitstellung für Fargate durchführen, überspringen Sie diesen Schritt. Wenn Sie Fargate bereitstellen, erstellen Sie ein Fargate-Profil. Sie können das Profil erstellen, indem Sie den folgenden Befehl ausführen oder in [AWS-Managementkonsole](fargate-profile.md#create-fargate-profile) die gleichen Werte für `name` und `namespace` verwenden, die im Befehl enthalten sind. Ersetzen Sie die Beispielwerte durch Ihre eigenen Werte.

   ```
   eksctl create fargateprofile \
       --cluster my-cluster \
       --region region-code \
       --name alb-sample-app \
       --namespace game-2048
   ```

1. Stellen Sie das Spiel [2048](https://play2048.co/) als Beispielanwendung bereit, um zu überprüfen, ob der Load AWS Balancer Controller als Ergebnis des AWS Eingangsobjekts eine ALB erstellt. Führen Sie die Schritte für den Typ des Subnetzes aus, in dem Sie bereitstellen.

   1. Wenn Sie in Pods in einem Cluster bereitstellen, den Sie mit der `IPv6`-Familie erstellt haben, fahren Sie mit dem nächsten Schritt fort.
      +  **Öffentlich**::

      ```
      kubectl apply -f https://raw.githubusercontent.com/kubernetes-sigs/aws-load-balancer-controller/v2.14.1/docs/examples/2048/2048_full.yaml
      ```
      +  **Privat**::

        1. Laden Sie das Manifest herunter.

           ```
           curl -O https://raw.githubusercontent.com/kubernetes-sigs/aws-load-balancer-controller/v2.14.1/docs/examples/2048/2048_full.yaml
           ```

        1. Bearbeiten Sie die Datei und suchen Sie die Zeile mit der Aufschrift `alb.ingress.kubernetes.io/scheme: internet-facing`.

        1. Ändern Sie *internet-facing* in `internal` und speichern Sie die Datei.

        1. Wenden Sie das Manifest auf Ihren Cluster an.

           ```
           kubectl apply -f 2048_full.yaml
           ```

   1. Wenn Sie die Bereitstellung auf Pods in einem Cluster durchführen, den Sie mit der [IPv6 Familie](cni-ipv6.md) erstellt haben, gehen Sie wie folgt vor.

      1. Laden Sie das Manifest herunter.

         ```
         curl -O https://raw.githubusercontent.com/kubernetes-sigs/aws-load-balancer-controller/v2.14.1/docs/examples/2048/2048_full.yaml
         ```

      1. Öffnen Sie die Datei in einem Editor und fügen Sie die folgende Zeile zu den Anmerkungen in der Ingress-Spezifikation hinzu.

         ```
         alb.ingress.kubernetes.io/ip-address-type: dualstack
         ```

      1. Wenn Sie den Lastenausgleich in interne Pods anstelle von internetfähige-Pods anwenden, ändern Sie die Zeile, die `alb.ingress.kubernetes.io/scheme: internet-facing ` zu `alb.ingress.kubernetes.io/scheme: internal` angibt 

      1. Speichern Sie die Datei.

      1. Wenden Sie das Manifest auf Ihren Cluster an.

         ```
         kubectl apply -f 2048_full.yaml
         ```

1. Überprüfen Sie nach ein paar Minuten mit dem folgenden Befehl, ob die Ressource für eingehenden Datenverkehr erstellt wurde.

   ```
   kubectl get ingress/ingress-2048 -n game-2048
   ```

   Eine Beispielausgabe sieht wie folgt aus.

   ```
   NAME           CLASS    HOSTS   ADDRESS                                                                   PORTS   AGE
   ingress-2048   <none>   *       k8s-game2048-ingress2-xxxxxxxxxx-yyyyyyyyyy.region-code.elb.amazonaws.com   80      2m32s
   ```
**Anmerkung**  
Wenn Sie den Load Balancer in einem privaten Subnetz erstellt haben, wird dem Wert unter `ADDRESS` in der vorherigen Ausgabe `internal-` vorangestellt.

Wenn Ihr Ingress nach einigen Minuten nicht erfolgreich erstellt wurde, führen Sie den folgenden Befehl aus, um die Load AWS Balancer Controller-Protokolle anzuzeigen. Diese Protokolle können Fehlermeldungen enthalten, mit denen Sie Probleme mit Ihrer Bereitstellung diagnostizieren können.

```
kubectl logs -f -n kube-system -l app.kubernetes.io/instance=aws-load-balancer-controller
```

1. Wenn Sie in einem öffentlichen Subnetz bereitgestellt haben, öffnen Sie einen Browser, und navigieren Sie zur `ADDRESS`-URL aus der vorherigen Befehlausgabe, um die Beispielanwendung anzuzeigen. Wenn nichts angezeigt wird, aktualisieren Sie Ihren Browser und versuchen Sie es erneut. Wenn Sie in einem privaten Subnetz bereitgestellt haben, müssen Sie die Seite von einem Gerät in Ihrer VPC aus anzeigen, z. B. von einem Bastion-Host. Weitere Informationen finden Sie unter [Linux-Bastion-Hosts in AWS](https://aws.amazon.com/quickstart/architecture/linux-bastion/).  
![\[2048-Beispielanwendung\]](http://docs.aws.amazon.com/de_de/eks/latest/userguide/images/2048.png)

1. Wenn Sie mit dem Experimentieren mit Ihrer Beispielanwendung fertig sind, löschen Sie sie, indem Sie einen der folgenden Befehle ausführen.
   + Wenn Sie das Manifest angewendet haben, anstatt eine heruntergeladene Kopie anzuwenden, verwenden Sie den folgenden Befehl.

     ```
     kubectl delete -f https://raw.githubusercontent.com/kubernetes-sigs/aws-load-balancer-controller/v2.14.1/docs/examples/2048/2048_full.yaml
     ```
   + Wenn Sie das Manifest heruntergeladen und bearbeitet haben, verwenden Sie den folgenden Befehl.

     ```
     kubectl delete -f 2048_full.yaml
     ```

# Einschränkung externer IP-Adressen, die Services zugewiesen werden können
<a name="restrict-service-external-ip"></a>

Kubernetes-Services können von innerhalb eines Clusters aus erreicht werden durch:
+ Eine Cluster-IP-Adresse, die automatisch von Kubernetes zugewiesen wird
+ Jede IP-Adresse, die Sie für die `externalIPs`-Eigenschaft in einer Service-Spezifikation festlegen. Externe IP-Adressen werden nicht von Kubernetes verwaltet und liegen in der Verantwortung des Cluster-Administrators. Externe IP-Adressen, die mit `externalIPs` festgelegt sind, unterscheiden sich von der externen IP-Adresse, die einem Service vom Typ `LoadBalancer` von einem Cloud-Anbieter zugewiesen ist.

Für weitere Informationen über Kubernetes Service, siehe [Service](https://kubernetes.io/docs/concepts/services-networking/service/) in der Kubernetes-Dokumentation. Sie können die IP-Adressen einschränken, die für `externalIPs` in einer Service-Spezifikation festgelegt werden können.

1. Stellen Sie `cert-manager` bereit, um Webhook-Zertifikate zu verwalten. Weitere Informationen dazu finden Sie in der [cert-manager](https://cert-manager.io/docs/)-Dokumentation.

   ```
   kubectl apply -f https://github.com/jetstack/cert-manager/releases/download/v1.5.4/cert-manager.yaml
   ```

1. Überprüfen Sie, ob die `cert-manager`-Pods ausgeführt werden.

   ```
   kubectl get pods -n cert-manager
   ```

   Eine Beispielausgabe sieht wie folgt aus.

   ```
   NAME                                       READY   STATUS    RESTARTS   AGE
   cert-manager-58c8844bb8-nlx7q              1/1     Running   0          15s
   cert-manager-cainjector-745768f6ff-696h5   1/1     Running   0          15s
   cert-manager-webhook-67cc76975b-4v4nk      1/1     Running   0          14s
   ```

1. Überprüfen Sie Ihre vorhandenen Services, um sicherzustellen, dass keiner von ihnen externe IP-Adressen zugewiesen sind, die nicht in dem CIDR-Block enthalten sind, auf den Sie Adressen beschränken möchten.

   ```
   kubectl get services -A
   ```

   Eine Beispielausgabe sieht wie folgt aus.

   ```
   NAMESPACE                      NAME                                    TYPE           CLUSTER-IP       EXTERNAL-IP     PORT(S)         AGE
   cert-manager                   cert-manager                            ClusterIP      10.100.102.137   <none>          9402/TCP        20m
   cert-manager                   cert-manager-webhook                    ClusterIP      10.100.6.136     <none>          443/TCP         20m
   default                        kubernetes                              ClusterIP      10.100.0.1       <none>          443/TCP         2d1h
   externalip-validation-system   externalip-validation-webhook-service   ClusterIP      10.100.234.179   <none>          443/TCP         16s
   kube-system                    kube-dns                                ClusterIP      10.100.0.10      <none>          53/UDP,53/TCP   2d1h
   my-namespace                   my-service                              ClusterIP      10.100.128.10    192.168.1.1     80/TCP          149m
   ```

   Wenn es sich bei einem der Werte um IP-Adressen handelt, die sich nicht innerhalb des Blocks befinden, auf den Sie den Zugriff einschränken möchten, müssen Sie die Adressen so ändern, dass sie sich innerhalb des Blocks befinden, und die Services erneut bereitstellen. Zum Beispiel, der `my-service`-Service in der vorherigen Ausgabe hat eine externe IP-Adresse zugewiesen, die sich nicht innerhalb des CIDR-Blockbeispiels in Schritt 5 befindet.

1. Laden Sie das externe IP-Webhook-Verzeichnis herunter. Sie können auch den [Quellcode für Webhook](https://github.com/kubernetes-sigs/externalip-webhook) auf GitHub ansehen.

   ```
   curl -O https://s3.us-west-2.amazonaws.com/amazon-eks/docs/externalip-webhook.yaml
   ```

1. CIDR-Blöcke angeben. Öffnen Sie die heruntergeladene Datei in Ihrem Editor und entfernen Sie `\#` beim Start der folgenden Zeilen.

   ```
   #args:
   #- --allowed-external-ip-cidrs=10.0.0.0/8
   ```

   Ersetzen Sie `10.0.0.0/8` mit Ihrem eigenen CIDR-Block. Sie können so viele Blöcke wie gewünscht festlegen. Wenn Sie mehrere Blöcke angeben, fügen Sie ein Komma zwischen Blöcken hinzu.

1. Wenn sich Ihr Cluster nicht in der Region `us-west-2` AWS befindet, ersetzen Sie `us-west-2`, `602401143452` und `amazonaws.com` in der Datei durch die folgenden Befehle. Ersetzen Sie vor dem Ausführen der Befehle *region-code* und *111122223333* durch den Wert für Ihre AWS-Region aus der Liste in [Amazon-Container-Image-Registrierungen für Amazon-EKS-Add-Ons anzeigen](add-ons-images.md).

   ```
   sed -i.bak -e 's|602401143452|111122223333|' externalip-webhook.yaml
   sed -i.bak -e 's|us-west-2|region-code|' externalip-webhook.yaml
   sed -i.bak -e 's|amazonaws.com||' externalip-webhook.yaml
   ```

1. Wenden Sie das Manifest auf Ihren Cluster an.

   ```
   kubectl apply -f externalip-webhook.yaml
   ```

   Ein Versuch, einen Service auf Ihrem Cluster mit einer IP-Adresse bereitzustellen, die für `externalIPs` festgelegt ist, die nicht in den Blöcken enthalten ist, die Sie im Schritt CIDR-Blöcke angeben angegeben haben, schlägt fehl.

# Kopieren eines Container-Images von einem Repository in ein anderes
<a name="copy-image-to-repository"></a>

In diesem Thema wird beschrieben, wie Sie ein Container-Image aus einem Repository abrufen, auf das Ihre Knoten keinen Zugriff haben, und in ein Repository verschieben, auf das sie Zugriff haben. Das Image können Sie in Amazon ECR oder ein alternatives Repository verschieben, auf das die Knoten Zugriff haben.
+ Die Docker-Engine ist auf Ihrem Computer installiert und konfiguriert. Weitere Informationen finden Sie unter [Installieren der Docker-Engine](https://docs.docker.com/engine/install/) in der Docker-Dokumentation.
+ Version `2.12.3` oder höher oder Version `1.27.160` oder höher der auf Ihrem Gerät installierten und konfigurierten AWS Befehlszeilenschnittstelle (AWS CLI) oder AWS CloudShell. Um Ihre aktuelle Version zu überprüfen, verwenden Sie `aws --version | cut -d / -f2 | cut -d ' ' -f1`. Paketmanager wie `yum``apt-get`, oder Homebrew für macOS liegen oft mehrere Versionen hinter der neuesten Version der AWS CLI. Informationen zur Installation der neuesten Version finden Sie unter [Installation](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-install.html) und [Schnellkonfiguration mit aws configure](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-quickstart.html#cli-configure-quickstart-config) 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 im * AWS CloudShell Benutzerhandbuch* unter [AWS CLI in Ihrem Home-Verzeichnis installieren](https://docs.aws.amazon.com/cloudshell/latest/userguide/vm-specs.html#install-cli-software).
+ Ein Schnittstellen-VPC-Endpunkt für Amazon ECR, wenn die Nodes Container-Images aus einem privaten Amazon-ECR-Repository über das Amazon-Netzwerk abrufen bzw. in ein solches verschieben sollen. Weitere Informationen finden Sie unter [Erstellen der VPC Endpunkte für Amazon ECR](https://docs.aws.amazon.com/AmazonECR/latest/userguide/vpc-endpoints.html#ecr-setting-up-vpc-create) im Benutzerhandbuch von Amazon Elastic Container Registry.

Gehen Sie wie folgt vor, um ein Container-Image aus einem Repository abzurufen und es in ein eigenes Repository zu verschieben. In den folgenden Beispielen, die in diesem Thema bereitgestellt werden, wird das Image für das [Amazon-VPC-CNI-Plugin für den Kubernetes-Metrik-Helper](https://github.com/aws/amazon-vpc-cni-k8s/blob/master/cmd/cni-metrics-helper/README.md) abgerufen. Ersetzen Sie beim Ausführen dieser Schritte die Beispielwerte unbedingt durch eigene Werte.

1. Wenn Sie noch nicht über ein Amazon-ECR-Repository oder ein anderes Repository verfügen, erstellen Sie eines, auf das die Knoten zugreifen können. Mit dem folgenden Befehl wird ein privates Amazon-ECR-Repository erstellt. Der Name eines privaten Amazon-ECR-Repositorys muss mit einem Buchstaben beginnen. Er darf nur Kleinbuchstaben, Zahlen, Bindestriche (-), Unterstriche (\$1) und Schrägstriche (/) enthalten. Weitere Informationen finden Sie unter [Erstellen eines privaten Repositorys](https://docs.aws.amazon.com/AmazonECR/latest/userguide/repository-create.html) im Benutzerhandbuch von Amazon Elastic Container Registry.

   Sie können *cni-metrics-helper* mit einem beliebigen Namen ersetzen, den Sie wählen. Erstellen Sie – als bewährte Methode – ein separates Repository für jedes Image. Das wird empfohlen, weil Image-Tags in einem Repository eindeutig sein müssen. *region-code*Ersetzen Sie durch eine [AWS Region, die von Amazon ECR unterstützt wird](https://docs.aws.amazon.com/general/latest/gr/ecr.html).

   ```
   aws ecr create-repository --region region-code --repository-name cni-metrics-helper
   ```

1. Bestimmen Sie die Registrierung, das Repository und das Tag (optional) des Images, das die Knoten abrufen müssen. Diese Informationen liegen im Format `registry/repository[:tag]` vor.

   Bei vielen der Amazon-EKS-Themen zur Installation von Images müssen Sie eine Manifestdatei anwenden oder das Image mithilfe eines Helm-Charts installieren. Bevor Sie eine Manifest-Datei anwenden oder ein Helm-Chart installieren, sollten Sie sich jedoch zunächst den Inhalt des Manifests oder der Datei `values.yaml` des Charts ansehen. So können Sie die Registrierung, das Repository und das Tag für den Abrufvorgang bestimmen.

   Die folgende Zeile beispielsweise finden Sie in der [Manifest-Datei](https://raw.githubusercontent.com/aws/amazon-vpc-cni-k8s/v1.12.6/config/master/cni-metrics-helper.yaml) für das [Amazon-VPC-CNI-Plugin für den Kubernetes-Metrik-Helper](https://github.com/aws/amazon-vpc-cni-k8s/blob/master/cmd/cni-metrics-helper/README.md). Die Registrierung ist `602401143452.dkr.ecr.us-west-2.amazonaws.com`, eine private Amazon-ECR-Registrierung. Das Repository ist `cni-metrics-helper`.

   ```
   image: "602401143452.dkr.ecr.us-west-2.amazonaws.com/cni-metrics-helper:v1.12.6"
   ```

   Die folgenden Variationen sind bei einem Image-Speicherort möglich:
   + Nur `repository-name:tag`. In diesem Fall ist in der Regel `docker.io` die Registrierung, aber nicht spezifiziert, da Kubernetes sie standardmäßig einem Repository-Namen voranstellt, wenn keine Registrierung angegeben ist.
   +  `repository-name/repository-namespace/repository:tag`. Ein Repository-Namespace ist optional, wird jedoch manchmal vom Repository-Besitzer zum Kategorisieren von Images angegeben. Beispielsweise verwenden alle [ EC2 Amazon-Bilder in der Amazon ECR Public Gallery](https://gallery.ecr.aws/aws-ec2/) den `aws-ec2` Namespace.

     Zeigen Sie vor dem Installieren eines Images mit Helm die Helm-Datei `values.yaml` an, um den Image-Speicherort zu bestimmen. Beispielsweise enthält die Datei [values.yaml](https://github.com/aws/amazon-vpc-cni-k8s/blob/master/charts/cni-metrics-helper/values.yaml#L5-L9) für das [Amazon-VPC-CNI-Plugin für den Kubernetes-Metrik-Helper](https://github.com/aws/amazon-vpc-cni-k8s/blob/master/cmd/cni-metrics-helper/README.md) die folgenden Zeilen.

     ```
     image:
       region: us-west-2
       tag: v1.12.6
       account: "602401143452"
       domain: "amazonaws.com"
     ```

1. Rufen Sie das in der Manifestdatei angegebene Container-Image ab.

   1. Beim Abruf aus einer öffentlichen Registry wie zum Beispiel [Amazon ECR Public Gallery](https://gallery.ecr.aws/) können Sie zum nächsten Unterschritt springen, da keine Authentifizierung erforderlich ist. In diesem Beispiel authentifizieren Sie sich bei einer privaten Amazon-ECR-Registrierung, die das Repository für das Helper-Image für CNI-Kennzahlen enthält. Amazon EKS verwaltet das Image in jeder Registry, die unter [Amazon-Container-Image-Registries für Amazon-EKS-Add-Ons anzeigen](add-ons-images.md) aufgeführt ist. Die Authentifizierung ist bei jeder der Registrierungen möglich. Dazu ersetzen Sie *602401143452* und *region-code* durch die Informationen für eine andere Registrierung. Für jede [AWS -Region, in der Amazon EKS unterstützt wird](https://docs.aws.amazon.com/general/latest/gr/eks.html#eks_region), existiert eine separate Registry.

      ```
      aws ecr get-login-password --region region-code | docker login --username AWS --password-stdin 602401143452.dkr.ecr.region-code.amazonaws.com
      ```

   1. Rufen Sie das Image ab. In diesem Beispiel erfolgt der Abruf aus der Registrierung, bei der Sie sich im letzten Unterschritt authentifiziert haben. Ersetzen Sie *602401143452* und *region-code* durch die Informationen, die Sie im vorherigen Unterschritt angegeben haben.

      ```
      docker pull 602401143452.dkr.ecr.region-code.amazonaws.com/cni-metrics-helper:v1.12.6
      ```

1. Markieren Sie das abgerufene Image mit Ihrer Registrierung, Ihrem Repository und Ihrem Tag. Im folgenden Beispiel wird davon ausgegangen, dass Sie das Image über die Manifestdatei abgerufen haben und es in das private Amazon-ECR-Repository verschieben, das Sie im ersten Schritt erstellt haben. Ersetzen Sie *111122223333* durch Ihre Konto-ID. *region-code*Ersetzen Sie es durch die AWS Region, in der Sie Ihr privates Amazon ECR-Repository erstellt haben.

   ```
   docker tag cni-metrics-helper:v1.12.6 111122223333.dkr.ecr.region-code.amazonaws.com/cni-metrics-helper:v1.12.6
   ```

1. Authentifizieren Sie sich bei Ihrer Registrierung. In diesem Beispiel authentifizieren Sie sich bei der privaten Amazon-ECR-Registrierung, die Sie im ersten Schritt erstellt haben. Weitere Informationen finden Sie unter [Registrierungsauthentifizierung](https://docs.aws.amazon.com/AmazonECR/latest/userguide/Registries.html#registry_auth) im Benutzerhandbuch von Amazon Elastic Container Registry.

   ```
   aws ecr get-login-password --region region-code | docker login --username AWS --password-stdin 111122223333.dkr.ecr.region-code.amazonaws.com
   ```

1. Verschieben Sie das Image in Ihr Repository. In diesem Beispiel verschieben Sie das Image in das private Amazon-ECR-Repository, das Sie im ersten Schritt erstellt haben. Weitere Informationen finden Sie unter [Verschieben eines Docker-Images](https://docs.aws.amazon.com/AmazonECR/latest/userguide/docker-push-ecr-image.html) im Benutzerhandbuch von Amazon Elastic Container Registry.

   ```
   docker push 111122223333.dkr.ecr.region-code.amazonaws.com/cni-metrics-helper:v1.12.6
   ```

1. Aktualisieren Sie die Manifestdatei, mit deren Hilfe Sie das Image in einem vorherigen Schritt bestimmt haben, mit den Werten `registry/repository:tag` für das verschobene Image. Bei der Installation mit einem Helm-Chart gibt es oft eine Option zur Angabe von `registry/repository:tag`. Geben Sie bei der Installation des Charts die Werte `registry/repository:tag` für das Image an, das Sie in das Repository verschoben haben.

# Amazon-Container-Image-Registries für Amazon-EKS-Add-Ons anzeigen
<a name="add-ons-images"></a>

Wenn Sie [Add-Ons von AWS Amazon-EKS](workloads-add-ons-available-eks.md) in Ihrem Cluster bereitstellen, rufen Ihre Knoten die erforderlichen Container-Images aus der Registrierung ab, die im Installationsmechanismus für das Add-On angegeben ist, z. B. ein Installationsmanifest oder eine `values.yaml`-Helm-Datei. Die Images werden aus einem privaten Amazon-ECR-Repository abgerufen. Amazon EKS repliziert die Bilder in ein Repository in jeder von Amazon EKS unterstützten AWS Region. Die Knoten können das Container-Image über das Internet aus einer der folgenden Registrierungen abrufen. Alternativ können Ihre Knoten das Image über das Netzwerk von Amazon abrufen, wenn Sie in Ihrer [VPC einen VPC-Schnittstellen-Endpunkt für Amazon ECR (AWS PrivateLink)](https://docs.aws.amazon.com/AmazonECR/latest/userguide/vpc-endpoints.html) erstellt haben. Die Registries erfordern eine Authentifizierung mit einem IAM-Konto. AWS Ihre Knoten authentifizieren sich mithilfe der [Amazon EKS-Knoten-IAM-Rolle](create-node-role.md), der die Berechtigungen in der [Amazon EC2 ContainerRegistryReadOnly](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonEC2ContainerRegistryReadOnly.html) Managed IAM-Richtlinie zugeordnet sind.


|  AWS Region | Registrierung | 
| --- | --- | 
|  af-south-1  |  877085696533.dkr.ecr.af-south-1.amazonaws.com  | 
|  ap-east-1  |  800184023465.dkr.ecr.ap-east-1.amazonaws.com  | 
|  ap-east-2  |  533267051163.dkr. ecr.ap-east-1.amazonaws.com  | 
|  ap-southeast-3  |  296578399912.dkr.ecr.ap-southeast-3.amazonaws.com  | 
|  ap-south-2  |  900889452093.dkr.ecr.ap-south-2.amazonaws.com  | 
|  ap-southeast-4  |  491585149902.dkr.ecr.ap-southeast-4.amazonaws.com  | 
|  ap-southeast-5  |  151610086707.dkr. ecr.ap-southeast-5.amazonaws.com  | 
|  ap-southeast-6  |  333609536671.dkr. ecr.ap-southeast-6.amazonaws.com  | 
|  ap-south-1  |  602401143452.dkr.ecr.ap-south-1.amazonaws.com  | 
|  ap-northeast-3  |  602401143452.dkr.ecr.ap-northeast-3.amazonaws.com  | 
|  ap-northeast-2  |  602401143452.dkr.ecr.ap-northeast-2.amazonaws.com  | 
|  ap-southeast-1  |  602401143452.dkr.ecr.ap-southeast-1.amazonaws.com  | 
|  ap-southeast-2  |  602401143452.dkr.ecr.ap-southeast-2.amazonaws.com  | 
|  ap-southeast-7  |  121268973566.dkr. ecr.ap-southeast-7.amazonaws.com  | 
|  ap-northeast-1  |  602401143452.dkr.ecr.ap-northeast-1.amazonaws.com  | 
|  cn-north-1  |  918309763551---dkr---ecr---cn-north-1.amazonaws.com.rproxy.govskope.us.cn  | 
|  cn-northwest-1  |  961992271922---dkr---ecr---cn-northwest-1.amazonaws.com.rproxy.govskope.us.cn  | 
|  eu-central-1  |  602401143452.dkr.ecr.eu-central-1.amazonaws.com  | 
|  eu-west-1  |  602401143452.dkr.ecr.eu-west-1.amazonaws.com  | 
|  eu-west-2  |  602401143452.dkr.ecr.eu-west-2.amazonaws.com  | 
|  eu-south-1  |  590381155156.dkr.ecr.eu-south-1.amazonaws.com  | 
|  eu-west-3  |  602401143452.dkr.ecr.eu-west-3.amazonaws.com  | 
|  eu-south-2  |  455263428931.dkr.ecr.eu-south-2.amazonaws.com  | 
|  eu-north-1  |  602401143452.dkr.ecr.eu-north-1.amazonaws.com  | 
|  eu-central-2  |  900612956339.dkr.ecr.eu-central-2.amazonaws.com  | 
|  il-central-1  |  066635153087.dkr.ecr.il-central-1.amazonaws.com  | 
|  mx-central-1  |  730335286997.dkr.ecr.mx-central-1.amazonaws.com  | 
|  me-south-1  |  558608220178.dkr.ecr.me-south-1.amazonaws.com  | 
|  me-central-1  |  759879836304.dkr.ecr.me-central-1.amazonaws.com  | 
|  us-east-1  |  602401143452.dkr.ecr.us-east-1.amazonaws.com  | 
|  us-east-2  |  602401143452.dkr.ecr.us-east-2.amazonaws.com  | 
|  us-west-1  |  602401143452.dkr.ecr.us-west-1.amazonaws.com  | 
|  us-west-2  |  602401143452.dkr.ecr.us-west-2.amazonaws.com  | 
|  ca-central-1  |  602401143452.dkr.ecr.ca-central-1.amazonaws.com  | 
|  ca-west-1  |  761377655185.dkr.ecr.ca-west-1.amazonaws.com  | 
|  sa-east-1  |  602401143452.dkr.ecr.sa-east-1.amazonaws.com  | 
|  us-gov-east-1  |  151742754352.dkr.ecr. us-gov-east-1.amazonaws.com  | 
|  us-gov-west-1  |  013241004608.dkr.ecr. us-gov-west-1.amazonaws.com  | 
|  eusc-de-east-1  |  877088126301.dkr.ecr. eusc-de-east-1. amazonaws.eu  | 

# Amazon-EKS-Add-ons
<a name="eks-add-ons"></a>

Ein Add-on ist eine Software, die unterstützende Betriebsfunktionen für Kubernetes-Anwendungen bereitstellt, aber nicht anwendungsspezifisch ist. Dazu gehören Software wie Observability-Agenten oder Kubernetes-Treiber, die es dem Cluster ermöglichen, mit den zugrunde liegenden AWS Ressourcen für Netzwerke, Berechnungen und Speicher zu interagieren. Zusatzsoftware wird in der Regel von der Kubernetes-Community, Cloud-Anbietern oder Drittanbietern entwickelt und verwaltet. AWS Amazon EKS installiert automatisch selbstverwaltete Add-Ons wie das Amazon-VPC-CNI-Plugin für Kubernetes, `kube-proxy` und CoreDNS für jeden Cluster. Beachten Sie, dass das VPC-CNI-Add-On nicht mit Amazon EKS Hybrid Nodes kompatibel ist und nicht in Hybridknoten bereitgestellt wird. Sie können die Standardkonfiguration der Add-ons ändern und sie bei Bedarf aktualisieren.

Amazon-EKS-Add-ons bieten die Installation und Verwaltung eines ausgewählten Satzes von Add-ons für Amazon-EKS-Cluster. Alle Amazon EKS-Add-Ons enthalten die neuesten Sicherheitspatches und Bugfixes und sind für die Verwendung AWS mit Amazon EKS validiert. Mit Amazon-EKS-Add-ons können Sie konsequent sicherstellen, dass Ihre Amazon-EKS-Cluster sicher und stabil sind und den Arbeitsaufwand reduzieren, den Sie für die Installation, Konfiguration und Aktualisierung von Add-ons benötigen. Wenn ein selbstverwaltetes Add-on wie `kube-proxy` bereits auf Ihrem Cluster ausgeführt wird und als Amazon-EKS-Add-on verfügbar ist, können Sie das Amazon-EKS-Add-on `kube-proxy` installieren, um die Vorteile der Funktionen von Amazon-EKS-Add-ons zu nutzen.

Sie können bestimmte von Amazon EKS verwaltete Konfigurationsfelder für Amazon-EKS-Add-ons über die Amazon EKS API aktualisieren. Sie können auch Konfigurationsfelder, die nicht von Amazon EKS verwaltet werden, direkt im Kubernetes-Cluster ändern, sobald das Add-on gestartet wird. Dazu gehört das Definieren spezifischer Konfigurationsfelder für ein Add-on, falls zutreffend. Diese Änderungen werden von Amazon EKS nicht überschrieben, sobald sie vorgenommen wurden. Dies ist möglich mit der serverseitigen Anwendungsfunktion von Kubernetes. Weitere Informationen finden Sie unter [Felder für die Anpassung von Amazon-EKS-Add-Ons festlegen](kubernetes-field-management.md).

Sie können Amazon-EKS-Add-Ons mit allen Amazon-EKS-Knotentypen verwenden. Weitere Informationen finden Sie unter [Verwaltung von Datenverarbeitungsressourcen mithilfe von Knoten](eks-compute.md).

Sie können Amazon EKS-Add-Ons mithilfe der Amazon EKS-API, AWS CLI und hinzufügen AWS-Managementkonsole, aktualisieren oder löschen`eksctl`. Sie können Amazon-EKS-Add-ons auch mit [AWS CloudFormation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-addon.html) erstellen.

## Überlegungen
<a name="eks-add-ons-considerations"></a>

Beachten Sie Folgendes, wenn Sie Amazon-EKS-Add-Ons verwenden:
+ Um Add-ons für den Cluster zu konfigurieren, muss der [IAM–Prinzipal](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html#iam-term-principal) über IAM-Berechtigungen verfügen, um mit Add-ons zu arbeiten. Weitere Informationen finden Sie in den Aktionen mit `Addon` in ihrem Namen in [Von Amazon Elastic Kubernetes Service definierte Aktionen](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonelastickubernetesservice.html#amazonelastickubernetesservice-actions-as-permissions).
+ Amazon-EKS-Add-ons werden auf den Knoten ausgeführt, die Sie für Ihren Cluster bereitstellen oder konfigurieren. Zu den Knotentypen gehören EC2 Amazon-Instances, Fargate und Hybridknoten.
+ Sie können Felder ändern, die nicht von Amazon EKS verwaltet werden, um die Installation eines Amazon-EKS-Add-Ons anzupassen. Weitere Informationen finden Sie unter [Felder für die Anpassung von Amazon-EKS-Add-Ons festlegen](kubernetes-field-management.md).
+ Wenn Sie einen Cluster mit den Add-Ons Amazon EKS AWS-Managementkonsole`kube-proxy`, Amazon VPC CNI für Kubernetes und CoreDNS erstellen, werden Amazon EKS Add-Ons automatisch zu Ihrem Cluster hinzugefügt. Wenn Sie `config` verwenden, um Ihren Cluster mit einer `eksctl`-Datei zu erstellen, kann `eksctl`den Cluster auch mit Amazon-EKS-Add-ons erstellen. Wenn Sie einen Cluster mit `eksctl` ohne eine `config`-Datei oder mit einem anderen Tool erstellen, werden die selbstverwalteten `kube-proxy`, Amazon-VPC-CNI-Plugin für Kubernetes und CoreDNS-Add-Ons anstelle der Amazon-EKS-Add-Ons installiert. Sie können sie entweder selbst verwalten oder die Amazon-EKS-Add-ons nach der Clustererstellung manuell hinzufügen. Unabhängig von der Methode, die Sie zum Erstellen Ihres Clusters verwenden, wird das VPC-CNI-Add-On nicht auf Hybridknoten installiert.
+ Die `eks:addon-cluster-admin` `ClusterRoleBinding` verknüpft das `cluster-admin` `ClusterRole` mit der `eks:addon-manager`-Kubernetes-Identität. Die Rolle verfügt über die erforderlichen Berechtigungen für die `eks:addon-manager`-Identität, um Kubernetes-Namespaces zu erstellen und Add-Ons in Namespaces zu installieren. Wenn `eks:addon-cluster-admin` `ClusterRoleBinding` entfernt wird, funktioniert der Amazon-EKS-Cluster weiterhin, Amazon EKS kann jedoch keine Add-Ons mehr verwalten. Alle Cluster ab den folgenden Plattformversionen verwenden das neue `ClusterRoleBinding`.
+ Eine Teilmenge der EKS-Add-Ons von AWS wurde auf ihre Kompatibilität mit Amazon EKS Hybrid Nodes überprüft. Weitere Informationen finden Sie in der Kompatibilitätstabelle unter [AWS Add-Ons](workloads-add-ons-available-eks.md).

## Benutzerdefinierter Namespace für Add-Ons
<a name="custom-namespace"></a>

Für Community- und AWS Add-Ons können Sie bei der Erstellung des Add-ons optional einen benutzerdefinierten Namespace angeben. Wenn Sie ein Add-On in einem bestimmten Namespace installieren, müssen Sie das Add-On entfernen und neu erstellen, um seinen Namespace zu ändern.

Wenn Sie keinen Namespace angeben, wird der vordefinierte Namespace für das Add-on verwendet.

Verwenden Sie benutzerdefinierte Namespaces für eine bessere Organisation und Isolierung von Add-on-Objekten innerhalb Ihres EKS-Clusters. Diese Flexibilität ermöglicht es Ihnen, Add-Ons an Ihre betrieblichen Anforderungen und Ihre vorhandene Namespace-Strategie anzupassen.

Sie können beim Erstellen eines Add-Ons einen benutzerdefinierten Namespace festlegen. Weitere Informationen finden Sie unter [Erstellung eines Amazon-EKS-Add-Ons](creating-an-add-on.md).

### Vordefinierten Namespace für Add-Ons abrufen
<a name="_get_predefined_namespace_for_add_on"></a>

Der vordefinierte Namespace für ein Add-On ist der Namespace, in dem es installiert wird, wenn Sie keinen angeben.

Um den vordefinierten Namespace für ein Add-On abzurufen, verwenden Sie den folgenden Befehl:

```
aws eks describe-addon-versions --addon-name <addon-name> --query "addons[].defaultNamespace"
```

Beispielausgabe:

```
[
    "kube-system"
]
```

## Überlegungen zu Amazon EKS Auto Mode
<a name="addon-consider-auto"></a>

Amazon EKS Auto Mode umfasst Funktionen, die wesentliche Cluster-Funktionalitäten bereitstellen, darunter:
+ Pod-Netzwerke
+ Service-Netzwerke
+ Cluster DNS
+ Auto Scaling
+ Blockspeicher
+ Load Balancer Controller
+ Pod Identity Agent
+ Knotenüberwachungsagent

Mit der automatischen Berechnungsfunktion werden viele häufig verwendete EKS-Add-Ons überflüssig, darunter:
+ Amazon VPC CNI
+ kube-proxy
+ CoreDNS
+ Amazon-EBS-CSI-Treiber
+ EKS Pod Identity Agent

Wenn Ihr Cluster den automatischen Modus jedoch mit anderen Rechenoptionen wie selbstverwalteten EC2 Instances, Managed Node Groups oder AWS Fargate kombiniert, bleiben diese Add-Ons weiterhin erforderlich. AWS hat EKS-Add-Ons um Anti-Affinitätsregeln erweitert, die automatisch sicherstellen, dass Add-On-Pods nur für unterstützte Compute-Typen geplant werden. Darüber hinaus können Benutzer jetzt die `DescribeAddonVersions`-API der EKS-Add-Ons nutzen, um die unterstützten ComputeTypes für jedes Add-On und seine spezifischen Versionen zu überprüfen. Darüber hinaus laufen die oben aufgeführten Controller im EKS-Automatikmodus auf der AWS eigenen Infrastruktur. Daher werden sie möglicherweise nicht in Ihren Konten angezeigt, es sei denn, Sie verwenden EKS Auto Mode mit anderen Rechnertypen. In diesem Fall werden die Controller angezeigt, die Sie in Ihrem Cluster installiert haben.

Wenn Sie EKS Auto Mode in einem vorhandenen Cluster aktivieren möchten, müssen Sie möglicherweise die Version bestimmter Add-Ons aktualisieren. Weitere Informationen finden Sie unter [Erforderliche Add-On-Versionen](auto-enable-existing.md#auto-addons-required) EKS Auto Mode.

## Support
<a name="addon-support"></a>

 AWS veröffentlicht mehrere Arten von Add-Ons mit unterschiedlichen Unterstützungsstufen.
+  ** AWS -Add-Ons:** Diese Add-Ons werden von AWS entwickelt und vollständig unterstützt.
  + Verwenden Sie ein AWS Add-on, um mit anderen AWS Diensten wie Amazon EFS zu arbeiten.
  + Weitere Informationen finden Sie unter [AWS Add-Ons](workloads-add-ons-available-eks.md).
+  ** AWS Marketplace-Add-ons:** Diese Add-Ons werden von einem unabhängigen AWS Partner gescannt AWS und von diesem unterstützt.
  + Nutzen Sie ein Marktplatz-Add-On, um Ihrem Cluster wertvolle und anspruchsvolle Features hinzuzufügen, wie beispielsweise die Überwachung mit Splunk.
  + Weitere Informationen finden Sie unter [AWS Marketplace-Add-ons](workloads-add-ons-available-vendors.md).
+  **Community-Add-Ons**: Diese Add-Ons werden von der Open-Source-Community gescannt, AWS aber von ihr unterstützt.
  + Verwenden Sie ein Community-Add-On, um die Installation gängiger Open-Source-Software wie Kubernetes Metrics Server zu vereinfachen.
  + Community-Add-Ons werden aus dem Quellcode von gepackt AWS. AWS validiert nur Community-Add-Ons auf Versionskompatibilität.
  + Weitere Informationen finden Sie unter [Community-Erweiterungen](community-addons.md).

Die folgende Tabelle enthält Einzelheiten zum Support-Umfang für jeden Add-On-Typ:


| Kategorie | Feature |  AWS Add-Ons |  AWS Marketplace-Add-ons | Community-Erweiterungen | 
| --- | --- | --- | --- | --- | 
|  Entwicklung  |  Gebaut von AWS   |  Ja  |  Nein  |  Ja  | 
|  Entwicklung  |  Validiert von AWS   |  Ja  |  Nein  |  Ja\$1  | 
|  Entwicklung  |  Vom AWS Partner validiert  |  Nein  |  Ja  |  Nein  | 
|  Wartung  |  Gescannt von AWS   |  Ja  |  Ja  |  Ja  | 
|  Wartung  |  Gepatcht von AWS   |  Ja  |  Nein  |  Ja  | 
|  Wartung  |  Vom Partner gepatcht AWS   |  Nein  |  Ja  |  Nein  | 
|  Distribution  |  Veröffentlicht von AWS   |  Ja  |  Nein  |  Ja  | 
|  Distribution  |  Herausgegeben von AWS Partner  |  Nein  |  Ja  |  Nein  | 
|  Support  |  Grundlegende Installationsunterstützung von AWS   |  Ja  |  Ja  |  Ja  | 
|  Support  |  Umfassender AWS Support  |  Ja  |  Nein  |  Nein  | 
|  Support  |   AWS Umfassender Partner-Support  |  Nein  |  Ja  |  Nein  | 

 `*`: Die Validierung für Community-Add-Ons umfasst nur die Kubernetes-Versionskompatibilität. Wenn Sie beispielsweise ein Community-Add-on auf einem Cluster installieren, prüfen Sie, AWS ob es mit der Kubernetes-Version Ihres Clusters kompatibel ist.

 AWS Marketplace-Add-Ons können zusätzliche Softwareabhängigkeiten von externen Quellen außerhalb von herunterladen AWS. Diese externen Abhängigkeiten werden von nicht gescannt oder validiert AWS. Berücksichtigen Sie Ihre Sicherheitsanforderungen bei der Bereitstellung von AWS Marketplace-Add-Ons, die externe Abhängigkeiten abrufen.

# AWS Add-Ons
<a name="workloads-add-ons-available-eks"></a>

Die folgenden Amazon-EKS-Add-Ons können in Ihrem Cluster erstellt werden. Sie können die aktuelle Liste der verfügbaren Add-Ons mithilfe `eksctl` der AWS-Managementkonsole oder der AWS CLI anzeigen. Informationen zu allen verfügbaren Add-Ons oder zur Installation eines Add-Ons finden Sie unter [Erstellung eines Amazon-EKS-Add-Ons](creating-an-add-on.md). Wenn ein Add-On IAM-Berechtigungen erfordert, müssen Sie über einen IAM OpenID Connect (OIDC)-Anbieter für Ihren Cluster verfügen. Um festzustellen, ob Sie über einen solchen verfügen oder um einen zu erstellen, lesen Sie [Erstellen Sie einen IAM-OIDC-Anbieter für Ihren Cluster](enable-iam-roles-for-service-accounts.md). Sie können ein Add-On erstellen oder löschen, nachdem Sie es installiert haben. Für weitere Informationen siehe [Aktualisierung eines Amazon-EKS-Add-Ons](updating-an-add-on.md) oder [Entfernung eines Amazon-EKS-Add-Ons aus einem Cluster](removing-an-add-on.md). Weitere Informationen zu den spezifischen Überlegungen zur Ausführung von EKS-Add-Ons mit Amazon EKS Hybrid Nodes finden Sie unter [Konfiguration von Add-Ons für Hybridknoten](hybrid-nodes-add-ons.md).

Sie können jedes der folgenden Amazon-EKS-Add-Ons verwenden.


| Description | Weitere Informationen | Kompatible Rechentypen | 
| --- | --- | --- | 
|  Bereitstellung eines nativen VPC-Netzwerks für Ihren Cluster  |   [Amazon-VPC-CNI-Plugin für Kubernetes](#add-ons-vpc-cni)   |  EC2  | 
|  Ein flexibler, erweiterbarer DNS-Server, der als DNS für den Kubernetes-Cluster dienen kann  |   [CoreDNS](#add-ons-coredns)   |  EC2, Fargate, EKS Auto Mode, EKS-Hybridknoten  | 
|  Verwaltung der Netzwerkregeln auf jedem Amazon-EC2-Knoten  |   [`Kube-proxy`](#add-ons-kube-proxy)   |  EC2, EKS-Hybridknoten  | 
|  Bereitstellung von Amazon-EBS-Speicher für Ihren Cluster  |   [Amazon-EBS-CSI-Treiber](#add-ons-aws-ebs-csi-driver)   |  EC2  | 
|  Bereitstellung von Amazon-EFS-Speicher für Ihren Cluster  |   [Amazon EFS-CSI-Treiber](#add-ons-aws-efs-csi-driver)   |  EC2, EKS Auto Mode  | 
|  Stellen Sie Amazon FSx for Lustre-Speicher für Ihren Cluster bereit  |   [Amazon FSx CSI-Treiber](#add-ons-aws-fsx-csi-driver)   |  EC2, EKS Auto Mode  | 
|  Bereitstellung von Amazon-S3-Speicher für Ihren Cluster  |   [CSI-Treiber für Mountpoint für Amazon S3](#mountpoint-for-s3-add-on)   |  EC2, EKS Auto Mode  | 
|  Erkennen zusätzlicher Knotenintegritätsprobleme  |   [Knotenüberwachungsagent](#add-ons-eks-node-monitoring-agent)   |  EC2, EKS-Hybridknoten  | 
|  Aktivierung der Verwendung der Snapshot-Funktionalität in kompatiblen CSI-Treibern, wie beispielsweise dem Amazon-EBS-CSI-Treiber  |   [CSI-Snapshot-Controller](#addons-csi-snapshot-controller)   |  EC2, Fargate, EKS Auto Mode, EKS-Hybridknoten  | 
|  SageMaker HyperPod Task Governance optimiert die Zuweisung und Nutzung von Rechenressourcen durch Teams in Amazon EKS-Clustern und behebt so Ineffizienzen bei der Priorisierung von Aufgaben und der gemeinsamen Nutzung von Ressourcen.  |   [SageMaker HyperPod Amazon-Aufgabenverwaltung](#addons-hyperpod)   |  EC2, EKS Auto Mode,  | 
|  Amazon SageMaker HyperPod Observability AddOn bietet umfassende Überwachungs- und Beobachtbarkeitsfunktionen für HyperPod Cluster.  |   [Amazon SageMaker HyperPod Observability-Zusatzmodul](#addons-hyperpod-observability)   |  EC2, EKS Auto Mode,  | 
|  Amazon SageMaker HyperPod Training Operator ermöglicht effiziente verteilte Schulungen auf Amazon EKS-Clustern mit erweiterten Planungs- und Ressourcenverwaltungsfunktionen.  |   [SageMaker HyperPod Amazon-Schulungsleiter](#addons-hyperpod-training-operator)   |  EC2, EKS Auto Mode  | 
|  Amazon SageMaker HyperPod Inference Operator ermöglicht die Bereitstellung und Verwaltung von leistungsstarken KI-Inferenz-Workloads mit optimierter Ressourcennutzung und Kosteneffizienz.  |   [SageMaker HyperPod Amazon-Inferenzoperator](#addons-hyperpod-inference-operator)   |  EC2, EKS Auto Mode  | 
|  Ein Kubernetes-Agent, der Netzwerkflussdaten sammelt und an Amazon CloudWatch meldet und so eine umfassende Überwachung von TCP-Verbindungen zwischen Clusterknoten ermöglicht.  |   [AWS Network Flow Monitor-Agent](#addons-network-flow)   |  EC2, EKS Auto Mode  | 
|  Sicherer, produktionsreifer und AWS unterstützter Vertrieb des Projekts OpenTelemetry   |   [AWS Distribution für OpenTelemetry](#add-ons-adot)   |  EC2, Fargate, EKS Auto Mode, EKS-Hybridknoten  | 
|  Sicherheitsüberwachungsservice, der grundlegende Datenquellen analysiert und verarbeitet, darunter AWS CloudTrail Verwaltungsereignisse und Amazon VPC-Flow-Logs. Amazon verarbeitet GuardDuty auch Funktionen wie Kubernetes-Audit-Logs und Laufzeitüberwachung  |   [GuardDuty Amazon-Vertreter](#add-ons-guard-duty)   |  EC2, EKS Auto Mode  | 
|  Überwachungs- und Beobachtbarkeitsservice bereitgestellt von AWS. Dieses Add-on installiert den CloudWatch Agenten und aktiviert sowohl CloudWatch Application Signals als auch CloudWatch Container Insights mit verbesserter Observability für Amazon EKS  |   [Amazon CloudWatch Observability-Agent](#amazon-cloudwatch-observability)   |  EC2, EKS Auto Mode, EKS-Hybridknoten  | 
|  Möglichkeit, Anmeldeinformationen für Ihre Anwendungen zu verwalten, ähnlich wie EC2- Instance-Profile Anmeldeinformationen für EC2-Instances bereitstellen  |   [EKS Pod Identity Agent](#add-ons-pod-id)   |  EC2, EKS-Hybridknoten  | 
|  Aktivieren Sie den Cert-Manager, um X.509-Zertifikate von Private CA auszustellen. AWS Erfordert cert-manager.  |   [AWS Privater CA-Connector für Kubernetes](#add-ons-aws-privateca-connector)   |  EC2, Fargate, EKS Auto Mode, EKS-Hybridknoten  | 
|  Generierung von Prometheus-Metriken zur Leistung von SR-IOV-Netzwerkgeräten  |   [SR-IOV-Netzwerkmetrik-Exportprogramm](#add-ons-sriov-network-metrics-exporter)   |  EC2  | 
|  Rufen Sie Geheimnisse aus AWS Secrets Manager und Parameter aus dem AWS Systems Manager Parameter Store ab und mounten Sie sie als Dateien in Kubernetes-Pods.  |   [AWS Secrets Store CSI-Treiberanbieter](#add-ons-aws-secrets-store-csi-driver-provider)   |  EC2, EKS Auto Mode, EKS-Hybridknoten  | 
|  Mit Spaces können Sie Code-Editor-Anwendungen erstellen JupyterLab und verwalten, um interaktive ML-Workloads auszuführen.  |   [Amazon SageMaker Spaces](#add-ons-amazon-sagemaker-spaces)   |  Hyperpod  | 

## Amazon-VPC-CNI-Plugin für Kubernetes
<a name="add-ons-vpc-cni"></a>

Das Amazon-VPC-CNI-Plugin für das Kubernetes Amazon-EKS-Add-On ist ein Kubernetes Container Network Interface (CNI)-Plugin, das native VPC-Netzwerke für Ihren Cluster bereitstellt. Der selbstverwaltete oder verwaltete Typ dieses Add-Ons ist standardmäßig auf jedem Amazon-EC2-Knoten installiert. Weitere Informationen finden Sie unter [Kubernetes Container Network Interface (CNI)-Plugin](https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/network-plugins/).

**Anmerkung**  
Sie müssen dieses Add-On nicht in Clustern von Amazon EKS Auto Mode installieren. Weitere Informationen finden Sie unter [Überlegungen zu Amazon EKS Auto Mode](eks-add-ons.md#addon-consider-auto).

Der Name des Amazon-EKS-Add-Ons lautet `vpc-cni`.

### Erforderliche IAM-Berechtigungen
<a name="add-ons-vpc-cni-iam-permissions"></a>

Dieses Add-on verwendet die IAM-Rollen für die Servicekontofunktion von Amazon EKS. Weitere Informationen finden Sie unter [IAM-Rollen für Servicekonten](iam-roles-for-service-accounts.md).

Wenn Ihr Cluster die `IPv4`-Familie verwendet, sind die Berechtigungen in der [AmazonEKS\$1CNI\$1Policy](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonEKS_CNI_Policy.html) erforderlich. [Wenn Ihr Cluster die `IPv6` Familie verwendet, müssen Sie [eine IAM-Richtlinie mit den Berechtigungen im IPv6 Modus erstellen](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create.html).](https://github.com/aws/amazon-vpc-cni-k8s/blob/master/docs/iam-policy.md#ipv6-mode) Sie können eine IAM-Rolle erstellen, ihr eine der Richtlinien anfügen und das vom Add-On verwendete Kubernetes-Servicekonto mit dem folgenden Befehl kommentieren.

Ersetzen Sie *my-cluster* durch den Namen Ihres Clusters und *AmazonEKSVPCCNIRole* durch den Namen Ihrer Rolle. Wenn der Cluster die `IPv6`-Familie verwendet, ersetzen Sie *AmazonEKS\$1CNI\$1Policy* durch den Namen der Richtlinie, die Sie erstellt haben. Dieser Befehl erfordert, dass Sie [eksctl](https://eksctl.io) auf Ihrem Gerät installiert haben. Wenn Sie ein anderes Tool verwenden müssen, um die Rolle zu erstellen, ihr die Richtlinie zuzuordnen und das Kubernetes-Servicekonto mit Annotationen zu versehen, siehe [IAM-Rollen Kubernetes-Servicekonten zuweisen](associate-service-account-role.md).

```
eksctl create iamserviceaccount --name aws-node --namespace kube-system --cluster my-cluster --role-name AmazonEKSVPCCNIRole \
    --role-only --attach-policy-arn arn:aws: iam::aws:policy/AmazonEKS_CNI_Policy --approve
```

### Aktualisieren der Informationen
<a name="add-ons-vpc-cni-update-information"></a>

Sie können jeweils nur eine Nebenversion aktualisieren. Wenn Ihre aktuelle Version beispielsweise `1.28.x-eksbuild.y ` ist und Sie auf `1.30.x-eksbuild.y ` aktualisieren möchten, müssen Sie zuerst ihre aktuelle Version auf `1.29.x-eksbuild.y ` und dann auf `1.30.x-eksbuild.y ` aktualisieren. Weitere Informationen zum Aktualisieren des Add-ons finden Sie unter [Aktualisieren der Amazon VPC CNI (Amazon-EKS-Add-On)](vpc-add-on-update.md).

## CoreDNS
<a name="add-ons-coredns"></a>

CoreDNS-Amazon-EKS-Add-On ist ein flexibler, erweiterbarer DNS-Server, der als Kubernetes-Cluster-DNS dienen kann. Der selbstverwaltete oder verwaltete Typ dieses Add-Ons wurde standardmäßig installiert, als Sie Ihren Cluster erstellt haben. Wenn Sie einen Amazon-EKS-Cluster mit mindestens einem Knoten starten, werden standardmäßig zwei Replikate des CoreDNS-Image bereitgestellt, unabhängig von der Anzahl der in Ihrem Cluster bereitgestellten Knoten. Die CoreDNS-Pods bieten eine Namensauflösung für alle Pods im Cluster. Sie können CoreDNS-Pods in Fargate-Knoten bereitstellen, wenn Ihr Cluster ein Fargate-Profil mit einem Namespace enthält, der mit dem Namespace für die CoreDNS-Bereitstellung übereinstimmt. Weitere Informationen finden Sie unter [Festlegung, welche Pods beim Start AWS Fargate verwenden](fargate-profile.md). 

**Anmerkung**  
Sie müssen dieses Add-On nicht in Clustern von Amazon EKS Auto Mode installieren. Weitere Informationen finden Sie unter [Überlegungen zu Amazon EKS Auto Mode](eks-add-ons.md#addon-consider-auto).

Der Name des Amazon-EKS-Add-Ons lautet `coredns`.

### Erforderliche IAM-Berechtigungen
<a name="add-ons-coredns-iam-permissions"></a>

Dieses Add-On erfordert keine Berechtigungen.

### Zusätzliche Informationen
<a name="add-ons-coredns-information"></a>

Weitere Informationen zu CoreDNS finden Sie unter [Verwenden von CoreDNS für die Serviceerkennung](https://kubernetes.io/docs/tasks/administer-cluster/coredns/) und [Anpassen des DNS-Services](https://kubernetes.io/docs/tasks/administer-cluster/dns-custom-nameservers/) in der Kubernetes-Dokumentation.

## `Kube-proxy`
<a name="add-ons-kube-proxy"></a>

Das `Kube-proxy`-Amazon-EKS-Add-On verwaltet Netzwerkregeln auf jedem Amazon-EC2-Knoten. Es ermöglicht die Netzwerkkommunikation zu Ihren Pods. Der selbstverwaltete oder verwaltete Typ dieses Add-Ons wird standardmäßig auf jedem Amazon-EC2-Knoten in Ihrem Cluster installiert.

**Anmerkung**  
Sie müssen dieses Add-On nicht in Clustern von Amazon EKS Auto Mode installieren. Weitere Informationen finden Sie unter [Überlegungen zu Amazon EKS Auto Mode](eks-add-ons.md#addon-consider-auto).

Der Name des Amazon-EKS-Add-Ons lautet `kube-proxy`.

### Erforderliche IAM-Berechtigungen
<a name="add-ons-kube-proxy-iam-permissions"></a>

Dieses Add-On erfordert keine Berechtigungen.

### Aktualisieren der Informationen
<a name="add-ons-kube-proxy-update-information"></a>

Bevor Sie Ihre aktuelle Version aktualisieren, sollten Sie die folgenden Anforderungen berücksichtigen:
+  `Kube-proxy` in einem Amazon-EKS-Cluster verfügt über die gleiche [Kompatibilitäts- und Skew-Richtlinie wie Kubernetes](https://kubernetes.io/releases/version-skew-policy/#kube-proxy).

### Zusätzliche Informationen
<a name="add-ons-kube-proxy-information"></a>

Weitere Informationen zu `kube-proxy` finden Sie unter [kube-proxy](https://kubernetes.io/docs/reference/command-line-tools-reference/kube-proxy/) in der Kubernetes-Dokumentation.

## Amazon-EBS-CSI-Treiber
<a name="add-ons-aws-ebs-csi-driver"></a>

Das Amazon-EKS-Add-On für Amazon-EBS-CSI-Treiber ist ein Kubernetes Container Storage Interface (CSI)-Plugin, das Amazon-EBS-Speicher für Ihren Cluster bereitstellt.

**Anmerkung**  
Sie müssen dieses Add-On nicht in Clustern von Amazon EKS Auto Mode installieren. Der Automatikmodus umfasst eine Block-Speicherfunktion. Weitere Informationen finden Sie unter [Bereitstellung einer Beispiel-Workload mit Statusverwaltung in EKS Auto Mode](sample-storage-workload.md).

Der Name des Amazon-EKS-Add-Ons lautet `aws-ebs-csi-driver`.

### Erforderliche IAM-Berechtigungen
<a name="add-ons-aws-ebs-csi-driver-iam-permissions"></a>

Dieses Add-On nutzt die IAM-Rollen für Servicekonten-Funktionalität von Amazon EKS. Weitere Informationen finden Sie unter [IAM-Rollen für Servicekonten](iam-roles-for-service-accounts.md). Die Berechtigungen in der von [Amazon EBSCSIDriver Policy](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonEBSCSIDriverPolicy.html) AWS verwalteten Richtlinie sind erforderlich. Sie können eine IAM-Rolle erstellen und ihr die verwaltete Richtlinie mit dem folgenden Befehl anfügen. Ersetzen Sie *my-cluster* durch den Namen Ihres Clusters und *AmazonEKS\$1EBS\$1CSI\$1DriverRole* durch den Namen Ihrer Rolle. Dieser Befehl erfordert, dass Sie [eksctl](https://eksctl.io) auf Ihrem Gerät installiert haben. Wenn Sie ein anderes Tool oder einen benutzerdefinierten [KMS-Schlüssel](https://aws.amazon.com/kms/) für die Verschlüsselung verwenden müssen, finden Sie weitere Informationen unter [Schritt 1: Erstellen einer IAM-Rolle](ebs-csi.md#csi-iam-role).

```
eksctl create iamserviceaccount \
    --name ebs-csi-controller-sa \
    --namespace kube-system \
    --cluster my-cluster \
    --role-name AmazonEKS_EBS_CSI_DriverRole \
    --role-only \
    --attach-policy-arn arn:aws: iam::aws:policy/service-role/AmazonEBSCSIDriverPolicy \
    --approve
```

### Zusätzliche Informationen
<a name="add-ons-aws-ebs-csi-driver-information"></a>

Weitere Informationen zum Add-On finden Sie unter [Kubernetes-Volume-Speicher mit Amazon EBS verwenden](ebs-csi.md).

## Amazon EFS-CSI-Treiber
<a name="add-ons-aws-efs-csi-driver"></a>

Das Amazon-EKS-Add-On für Amazon-EFS-CSI-Treiber ist ein Kubernetes Container Storage Interface (CSI)-Plugin, das Amazon-EFS-Speicher für Ihren Cluster bereitstellt.

Der Name des Amazon-EKS-Add-Ons lautet `aws-efs-csi-driver`.

### Erforderliche IAM-Berechtigungen
<a name="add-ons-aws-efs-csi-driver-iam-permissions"></a>

 **Erforderliche IAM-Berechtigungen** – Dieses Add-On nutzt die Funktion IAM-Rollen für Servicekonten von Amazon EKS. Weitere Informationen finden Sie unter [IAM-Rollen für Servicekonten](iam-roles-for-service-accounts.md). Die Berechtigungen in der von [Amazon EFSCSIDriver Policy](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonEFSCSIDriverPolicy.html) AWS verwalteten Richtlinie sind erforderlich. Sie können eine IAM-Rolle erstellen und ihr die verwaltete Richtlinie mit dem folgenden Befehl anfügen. Ersetzen Sie *my-cluster* durch den Namen Ihres Clusters und *AmazonEKS\$1EFS\$1CSI\$1DriverRole* durch den Namen Ihrer Rolle. Diese Befehle erfordern, dass Sie [eksctl](https://eksctl.io) auf Ihrem Gerät installiert haben. Wenn Sie ein anderes Tool verwenden müssen, finden Sie Informationen unter [Schritt 1: Erstellen einer IAM-Rolle](efs-csi.md#efs-create-iam-resources).

```
export cluster_name=my-cluster
export role_name=AmazonEKS_EFS_CSI_DriverRole
eksctl create iamserviceaccount \
    --name efs-csi-controller-sa \
    --namespace kube-system \
    --cluster $cluster_name \
    --role-name $role_name \
    --role-only \
    --attach-policy-arn arn:aws: iam::aws:policy/service-role/AmazonEFSCSIDriverPolicy \
    --approve
TRUST_POLICY=$(aws iam get-role --output json --role-name $role_name --query 'Role.AssumeRolePolicyDocument' | \
    sed -e 's/efs-csi-controller-sa/efs-csi-*/' -e 's/StringEquals/StringLike/')
aws iam update-assume-role-policy --role-name $role_name --policy-document "$TRUST_POLICY"
```

### Zusätzliche Informationen
<a name="add-ons-aws-efs-csi-driver-information"></a>

Weitere Informationen zum Add-On finden Sie unter [Verwendung von elastischem Dateisystemspeicher mit Amazon EFS](efs-csi.md).

## Amazon FSx CSI-Treiber
<a name="add-ons-aws-fsx-csi-driver"></a>

Das Amazon EKS-Add-on für Amazon FSx CSI-Treiber ist ein Kubernetes Container Storage Interface (CSI) -Plugin, das Amazon FSx for Lustre-Speicher für Ihren Cluster bereitstellt.

Der Name des Amazon-EKS-Add-Ons lautet `aws-fsx-csi-driver`.

**Anmerkung**  
Bereits vorhandene Amazon FSx CSI-Treiberinstallationen im Cluster können zu Fehlern bei der Installation von Add-Ons führen. Wenn Sie versuchen, die Amazon EKS-Add-On-Version zu installieren, während ein FSx Nicht-EKS-CSI-Treiber vorhanden ist, schlägt die Installation aufgrund von Ressourcenkonflikten fehl. Verwenden Sie während der Installation das Flag `OVERWRITE`, um dieses Problem zu beheben:  

  ```
  aws eks create-addon --addon-name aws-fsx-csi-driver --cluster-name my-cluster --resolve-conflicts OVERWRITE
  ```
Das Amazon FSx CSI Driver EKS-Add-On benötigt den EKS Pod Identity-Agenten für die Authentifizierung. Ohne diese Komponente schlägt das Add-On mit dem Fehler `Amazon EKS Pod Identity agent is not installed in the cluster` fehl, wodurch Volume-Operationen verhindert werden. Installieren Sie den Pod Identity-Agenten vor oder nach der Bereitstellung des FSx CSI-Treiber-Add-ons. Weitere Informationen finden Sie unter [Einrichtung des Amazon-EKS-Pod-Identity-Agenten](pod-id-agent-setup.md).

### Erforderliche IAM-Berechtigungen
<a name="add-ons-aws-fsx-csi-driver-iam-permissions"></a>

Dieses Add-On nutzt die IAM-Rollen für Servicekonten-Funktionalität von Amazon EKS. Weitere Informationen finden Sie unter [IAM-Rollen für Servicekonten](iam-roles-for-service-accounts.md). Die Berechtigungen in der von [Amazon FSx FullAccess](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonFSxFullAccess.html) AWS verwalteten Richtlinie sind erforderlich. Sie können eine IAM-Rolle erstellen und ihr die verwaltete Richtlinie mit dem folgenden Befehl anfügen. Ersetzen Sie *my-cluster* durch den Namen Ihres Clusters und *AmazonEKS\$1FSx\$1CSI\$1DriverRole* durch den Namen Ihrer Rolle. Dieser Befehl erfordert, dass Sie [eksctl](https://eksctl.io) auf Ihrem Gerät installiert haben.

```
eksctl create iamserviceaccount \
    --name fsx-csi-controller-sa \
    --namespace kube-system \
    --cluster my-cluster \
    --role-name AmazonEKS_FSx_CSI_DriverRole \
    --role-only \
    --attach-policy-arn arn:aws: iam::aws:policy/AmazonFSxFullAccess \
    --approve
```

### Zusätzliche Informationen
<a name="add-ons-aws-fsx-csi-driver-information"></a>

Weitere Informationen zum Add-On finden Sie unter [Verwendung von leistungsstarkem App-Speicher mit Amazon FSx für Lustre](fsx-csi.md).

## CSI-Treiber für Mountpoint für Amazon S3
<a name="mountpoint-for-s3-add-on"></a>

Das Amazon-EKS-Add-On für CSI-Treiber für Mountpoint für Amazon S3 ist ein Kubernetes Container Storage Interface (CSI)-Plugin, das Amazon-S3-Speicher für Ihren Cluster bereitstellt.

Der Name des Amazon-EKS-Add-Ons lautet `aws-mountpoint-s3-csi-driver`.

### Erforderliche IAM-Berechtigungen
<a name="add-ons-mountpoint-for-s3-add-on-iam-permissions"></a>

Dieses Add-on verwendet die IAM-Rollen für die Servicekontofunktion von Amazon EKS. Weitere Informationen finden Sie unter [IAM-Rollen für Servicekonten](iam-roles-for-service-accounts.md).

Für die erstellte IAM-Rolle ist eine Richtlinie erforderlich, die Zugriff auf S3 gewährt. Folgen Sie bei der Erstellung der Richtlinie den [Empfehlungen für Mountpoint-IAM-Berechtigungen](https://github.com/awslabs/mountpoint-s3/blob/main/doc/CONFIGURATION.md#iam-permissions). Alternativ können Sie die AWS verwaltete Richtlinie [AmazonS3](https://console.aws.amazon.com/iam/home?#/policies/arn:aws:iam::aws:policy/AmazonS3FullAccess$jsonEditor) verwendenFullAccess, aber diese verwaltete Richtlinie gewährt mehr Berechtigungen, als für Mountpoint erforderlich sind.

Sie können eine IAM-Rolle erstellen und ihr Ihre Richtlinie mit dem folgenden Befehl anfügen. *my-cluster*Ersetzen Sie es durch den Namen Ihres Clusters, *region-code* durch den richtigen AWS Regionalcode, *AmazonEKS\$1S3\$1CSI\$1DriverRole* durch den Namen für Ihre Rolle und *AmazonEKS\$1S3\$1CSI\$1DriverRole\$1ARN* durch den Rollen-ARN. Diese Befehle erfordern, dass Sie [eksctl](https://eksctl.io) auf Ihrem Gerät installiert haben. Anweisungen zur Verwendung der IAM-Konsole oder AWS CLI finden Sie unter[Schritt 2: Erstellen einer IAM-Rolle](s3-csi-create.md#s3-create-iam-role).

```
CLUSTER_NAME=my-cluster
REGION=region-code
ROLE_NAME=AmazonEKS_S3_CSI_DriverRole
POLICY_ARN=AmazonEKS_S3_CSI_DriverRole_ARN
eksctl create iamserviceaccount \
    --name s3-csi-driver-sa \
    --namespace kube-system \
    --cluster $CLUSTER_NAME \
    --attach-policy-arn $POLICY_ARN \
    --approve \
    --role-name $ROLE_NAME \
    --region $REGION \
    --role-only
```

### Zusätzliche Informationen
<a name="add-ons-mountpoint-for-s3-add-on-information"></a>

Weitere Informationen zum Add-On finden Sie unter [Zugriff auf Amazon-S3-Objekte mit dem CSI-Treiber für Mountpoint für Amazon S3](s3-csi.md).

## CSI-Snapshot-Controller
<a name="addons-csi-snapshot-controller"></a>

Der Container Storage Interface (CSI)-Snapshot-Controller ermöglicht die Verwendung der Snapshot-Funktion in kompatiblen CSI-Treibern, wie dem Amazon-EBS-CSI-Treiber.

Der Name des Amazon-EKS-Add-Ons lautet `snapshot-controller`.

### Erforderliche IAM-Berechtigungen
<a name="add-ons-csi-snapshot-controller-iam-permissions"></a>

Dieses Add-On erfordert keine Berechtigungen.

### Zusätzliche Informationen
<a name="add-ons-csi-snapshot-controller-information"></a>

Weitere Informationen zum Add-On finden Sie unter [Snapshot-Funktion für CSI-Volumes aktivieren](csi-snapshot-controller.md).

## SageMaker HyperPod Amazon-Aufgabenverwaltung
<a name="addons-hyperpod"></a>

SageMaker HyperPod Task Governance ist ein robustes Managementsystem, das entwickelt wurde, um die Ressourcenzuweisung zu optimieren und eine effiziente Nutzung der Rechenressourcen durch Teams und Projekte für Ihre Amazon EKS-Cluster sicherzustellen. Dadurch haben Administratoren die Möglichkeit, Folgendes festzulegen:
+ Prioritätsstufen für verschiedene Aufgaben
+ Rechenkapazitätszuweisung für jedes Team
+ Wie jedes Team ungenutzte Rechenleistung verleiht und ausleiht
+ Wenn ein Team seine eigenen Aufgaben vorwegnimmt

HyperPod Task Governance bietet auch Amazon EKS-Cluster-Observability und bietet so Echtzeiteinblicke in die Clusterkapazität. Dazu gehört die Verfügbarkeit und Nutzung von Rechenleistung, die Zuweisung und Auslastung von Teams sowie Informationen zu Aufgabenausführung und Wartezeiten, sodass Sie fundierte Entscheidungen treffen und Ressourcen proaktiv verwalten können.

Der Name des Amazon-EKS-Add-Ons lautet `amazon-sagemaker-hyperpod-taskgovernance`.

### Erforderliche IAM-Berechtigungen
<a name="_required_iam_permissions"></a>

Dieses Add-On erfordert keine Berechtigungen.

### Zusätzliche Informationen
<a name="_additional_information"></a>

Weitere Informationen über das Add-on finden Sie unter [SageMaker HyperPod Task Governance](https://docs.aws.amazon.com/sagemaker/latest/dg/sagemaker-hyperpod-eks-operate-console-ui-governance.html) 

## Amazon SageMaker HyperPod Observability-Zusatzmodul
<a name="addons-hyperpod-observability"></a>

Das Amazon SageMaker HyperPod Observability Add-on bietet umfassende Überwachungs- und Beobachtbarkeitsfunktionen für HyperPod Cluster. Dieses Add-on implementiert und verwaltet automatisch wichtige Überwachungskomponenten wie den Node-Exporter, den DCGM-Exporter und den EFA-Exporter. kube-state-metrics Es erfasst Metriken und leitet diese an eine vom Kunden festgelegte Amazon Managed Prometheus (AMP)-Instance weiter. Darüber hinaus stellt es einen OTLP-Endpunkt für benutzerdefinierte Metriken und die Erfassung von Ereignissen aus Kunden-Trainingsaufträgen bereit.

Das Add-on lässt sich in das breitere HyperPod Ökosystem integrieren, indem es Metriken aus verschiedenen Komponenten wie dem HyperPod Task Governance-Add-on, Training Operator, HyperPod Kubeflow und KEDA abruft. Alle erfassten Metriken werden in Amazon Managed Prometheus zentralisiert, sodass Kunden über Dashboards zu Amazon Managed Grafana eine einheitliche Übersicht erhalten. Dies bietet end-to-end Einblick in den Zustand des Clusters, die Ressourcennutzung und die Leistung der Schulungsaufgaben in der gesamten Umgebung. HyperPod 

Der Name des Amazon-EKS-Add-Ons lautet `amazon-sagemaker-hyperpod-observability`.

### Erforderliche IAM-Berechtigungen
<a name="_required_iam_permissions_2"></a>

Dieses Add-on verwendet die IAM-Rollen für die Servicekontofunktion von Amazon EKS. Weitere Informationen finden Sie unter [IAM-Rollen für Servicekonten](iam-roles-for-service-accounts.md). Die folgenden verwalteten Richtlinien sind erforderlich.
+  `AmazonPrometheusRemoteWriteAccess` – für Schreibmetriken aus der Ferne vom Cluster zu AMP
+  `CloudWatchAgentServerPolicy`- für das Remote-Schreiben der Protokolle vom Cluster in CloudWatch

### Zusätzliche Informationen
<a name="_additional_information_2"></a>

Weitere Informationen über das Add-on und seine Funktionen finden Sie unter [SageMaker HyperPod Observability](https://docs.aws.amazon.com/sagemaker/latest/dg/sagemaker-hyperpod-eks-cluster-observability-cluster.html).

## SageMaker HyperPod Amazon-Schulungsleiter
<a name="addons-hyperpod-training-operator"></a>

Der Amazon SageMaker HyperPod Training Operator hilft Ihnen dabei, die Entwicklung generativer KI-Modelle zu beschleunigen, indem er verteilte Schulungen über große GPU-Cluster effizient verwaltet. Er bietet intelligente Funktionen zur Fehlerbehebung, Erkennung von Blockierungen und Verwaltungsfunktionen auf Prozessebene, die Trainingsunterbrechungen minimieren und Kosten senken. Im Gegensatz zur herkömmlichen Trainingsinfrastruktur, bei der der Job bei Ausfällen komplett neu gestartet werden muss, implementiert dieser Operator die Wiederherstellung chirurgischer Prozesse, um einen reibungslosen Ablauf Ihrer Trainingsaufgaben zu gewährleisten.

Der Operator arbeitet auch mit HyperPod den Funktionen zur Zustandsüberwachung und Beobachtbarkeit und bietet so Echtzeiteinblicke in die Trainingsausführung sowie die automatische Überwachung kritischer Kennzahlen wie Verlustspitzen und Durchsatzeinbußen. Sie können Wiederherstellungsrichtlinien durch einfache YAML-Konfigurationen ohne Codeänderungen definieren, sodass Sie schnell auf nicht wiederherstellbare Trainingszustände reagieren und diese beheben können. Diese Überwachungs- und Wiederherstellungsfunktionen sorgen gemeinsam für eine optimale Trainingsleistung bei minimalem Betriebsaufwand.

Der Name des Amazon-EKS-Add-Ons lautet `amazon-sagemaker-hyperpod-training-operator`.

Weitere Informationen finden Sie unter [Using the HyperPod Training Operator](https://docs.aws.amazon.com/sagemaker/latest/dg/sagemaker-eks-operator.html) im *Amazon SageMaker Developer Guide*.

### Erforderliche IAM-Berechtigungen
<a name="_required_iam_permissions_3"></a>

Dieses Add-On erfordert IAM-Berechtigungen und verwendet EKS Pod Identity.

 AWS schlägt die `AmazonSageMakerHyperPodTrainingOperatorAccess` [verwaltete Richtlinie](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonSageMakerHyperPodTrainingOperatorAccess.html) vor.

Weitere Informationen finden Sie unter [Installation des Training Operators](https://docs.aws.amazon.com/sagemaker/latest/dg/sagemaker-eks-operator-install.html#sagemaker-eks-operator-install-operator) im *Amazon SageMaker Developer Guide*.

### Zusätzliche Informationen
<a name="_additional_information_3"></a>

Weitere Informationen über das Add-on finden Sie unter [SageMaker HyperPod Training Operator](https://docs.aws.amazon.com/sagemaker/latest/dg/sagemaker-eks-operator.html).

## SageMaker HyperPod Amazon-Inferenzoperator
<a name="addons-hyperpod-inference-operator"></a>

Amazon SageMaker HyperPod bietet eine end-to-end Erfahrung, die den gesamten Lebenszyklus der KI-Entwicklung unterstützt, von interaktiven Experimenten und Schulungen bis hin zu Inferenz- und Workflows nach dem Training. Es bietet jetzt eine umfassende Inferenzplattform, die die Flexibilität von Kubernetes mit der operativen Exzellenz eines verwalteten Erlebnisses kombiniert. Stellen Sie Ihre GenAI-Modelle mit Zuverlässigkeit auf Unternehmensniveau bereit, skalieren und optimieren Sie sie mit derselben HyperPod Rechenleistung während des gesamten Modelllebenszyklus.

Amazon SageMaker HyperPod bietet flexible Bereitstellungsschnittstellen, mit denen Sie Modelle über mehrere Methoden bereitstellen können, darunter kubectl, Python SDK, Amazon SageMaker Studio UI oder HyperPod CLI. Diese Funktion bietet erweiterte Autoscaling-Funktionen mit dynamischer Ressourcenzuweisung, die sich automatisch an den Bedarf anpasst. Darüber hinaus umfasst sie umfassende Beobachtungs- und Überwachungsfunktionen, die wichtige Messwerte wie time-to-first-token Latenz und GPU-Auslastung verfolgen, um Sie bei der Leistungsoptimierung zu unterstützen.

Der Name des Amazon-EKS-Add-Ons lautet `amazon-sagemaker-hyperpod-inference`.

### Methoden zur Installation
<a name="_installation_methods"></a>

Sie können dieses Add-on mit einer der folgenden Methoden installieren:
+  **SageMaker Konsole (empfohlen)**: Bietet eine optimierte Installation mit geführter Konfiguration.
+  **EKS Add-ons Console oder CLI**: Erfordert die manuelle Installation von Abhängigkeits-Add-Ons vor der Installation des Inferenzoperators. Die erforderlichen Abhängigkeiten finden Sie im Abschnitt „Voraussetzungen“ weiter unten.

### Voraussetzungen
<a name="_prerequisites"></a>

Stellen Sie vor der Installation des Inferenzoperator-Add-ons über die EKS Add-ons Console oder CLI sicher, dass die folgenden Abhängigkeiten installiert sind.

Erforderliche EKS-Add-Ons:
+ Amazon S3 Mountpoint CSI-Treiber (Mindestversion: v1.14.1-eksbuild.1)
+ Metrics Server (Mindestversion: v0.7.2-eksbuild.4)
+ Amazon FSx CSI-Treiber (Mindestversion: v1.6.0-eksbuild.1)
+ Cert Manager (Mindestversion: v1.18.2-eksbuild.2)

[Detaillierte Installationsanweisungen für jede Abhängigkeit finden Sie unter Installation des Inferenzoperators.](https://docs.aws.amazon.com/sagemaker/latest/dg/sagemaker-hyperpod-model-deployment-setup.html)

### Erforderliche IAM-Berechtigungen
<a name="_required_iam_permissions_4"></a>

Dieses Add-on benötigt IAM-Berechtigungen und verwendet OIDC/IRSA.

Die folgenden verwalteten Richtlinien werden empfohlen, da sie die Mindestberechtigungen für den Gültigkeitsbereich bereitstellen:
+  `AmazonSageMakerHyperPodInferenceAccess`— bietet Administratorrechte, die für die Einrichtung des Inferenzoperators erforderlich sind
+  `AmazonSageMakerHyperPodGatedModelAccess`- bietet SageMaker HyperPod Zugriff auf geschützte Modelle in SageMaker Jumpstart (z. B. Meta Llama, GPT-Neo)

Weitere Informationen finden Sie unter [Installation des](https://docs.aws.amazon.com/sagemaker/latest/dg/sagemaker-hyperpod-model-deployment-setup.html) Inferenzoperators.

### Zusätzliche Informationen
<a name="_additional_information_4"></a>

Weitere Informationen über den SageMaker HyperPod Amazon-Inferenzoperator finden Sie unter [SageMaker HyperPod Inferenzoperator](https://docs.aws.amazon.com/sagemaker/latest/dg/sagemaker-hyperpod-model-deployment.html).

Informationen zur Fehlerbehebung finden Sie unter [Problembehandlung bei der SageMaker HyperPod Modellbereitstellung.](https://docs.aws.amazon.com/sagemaker/latest/dg/sagemaker-hyperpod-model-deployment-ts.html)

## AWS Network Flow Monitor-Agent
<a name="addons-network-flow"></a>

Der Amazon CloudWatch Network Flow Monitor Agent ist eine Kubernetes-Anwendung, die TCP-Verbindungsstatistiken von allen Knoten in einem Cluster sammelt und Netzwerkflussberichte für Amazon CloudWatch Network Flow Monitor Ingestion veröffentlicht. APIs

Der Name des Amazon-EKS-Add-Ons lautet `aws-network-flow-monitoring-agent`.

### Erforderliche IAM-Berechtigungen
<a name="_required_iam_permissions_5"></a>

Für dieses Add-On sind IAM -Berechtigungen erforderlich.

Sie müssen die von `CloudWatchNetworkFlowMonitorAgentPublishPolicy` verwaltete Richtlinie an das AddO-n anfügen.

Weitere Informationen zum erforderlichen IAM-Setup finden Sie unter [IAM-Richtlinie](https://github.com/aws/network-flow-monitor-agent?tab=readme-ov-file#iam-policy) im Amazon CloudWatch Network Flow Monitor GitHub Agent-Repository.

Weitere Informationen zur verwalteten Richtlinie finden Sie [CloudWatchNetworkFlowMonitorAgentPublishPolicy](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/security-iam-awsmanpol-network-flow-monitor.html#security-iam-awsmanpol-CloudWatchNetworkFlowMonitorAgentPublishPolicy)im CloudWatch Amazon-Benutzerhandbuch.

### Zusätzliche Informationen
<a name="_additional_information_5"></a>

Weitere Informationen über das Add-on finden Sie im [Amazon CloudWatch Network Flow Monitor Agent GitHub Repo](https://github.com/aws/network-flow-monitor-agent?tab=readme-ov-file).

## Knotenüberwachungsagent
<a name="add-ons-eks-node-monitoring-agent"></a>

Das Amazon-EKS-Add-On für den Knoten-Überwachungsagent kann zusätzliche Probleme mit der Knotenintegrität erkennen. Diese zusätzlichen Zustandssignale können auch vom optionalen automatischen Knotenreparaturfeature genutzt werden, um Knoten bei Bedarf automatisch zu ersetzen.

**Anmerkung**  
Sie müssen dieses Add-On nicht in Clustern von Amazon EKS Auto Mode installieren. Weitere Informationen finden Sie unter [Überlegungen zu Amazon EKS Auto Mode](eks-add-ons.md#addon-consider-auto).

Der Name des Amazon-EKS-Add-Ons lautet `eks-node-monitoring-agent`.

### Erforderliche IAM-Berechtigungen
<a name="add-ons-eks-node-monitoring-agent-iam-permissions"></a>

Dieses Add-On erfordert keine zusätzlichen Berechtigungen.

### Zusätzliche Informationen
<a name="add-ons-eks-node-monitoring-agent-information"></a>

Weitere Informationen finden Sie unter [Erkennen Sie Probleme mit dem Knotenstatus und aktivieren Sie die automatische Knotenreparatur](node-health.md).

## AWS Distribution für OpenTelemetry
<a name="add-ons-adot"></a>

Das Add-on AWS Distro for OpenTelemetry Amazon EKS ist eine sichere, produktionsbereite und AWS unterstützte Distribution des Projekts. OpenTelemetry Weitere Informationen finden Sie unter [AWS Distro](https://aws-otel.github.io/) for on. OpenTelemetry GitHub

Der Name des Amazon-EKS-Add-Ons lautet `adot`.

### Erforderliche IAM-Berechtigungen
<a name="add-ons-adot-iam-permissions"></a>

Für dieses Add-On sind nur dann IAM-Berechtigungen erforderlich, wenn Sie eine der vorkonfigurierten benutzerdefinierten Ressourcen verwenden, die über die erweiterte Konfiguration aktiviert werden können.

### Zusätzliche Informationen
<a name="add-ons-adot-information"></a>

Weitere Informationen finden Sie in der Dokumentation unter [Erste Schritte mit AWS Distro für die OpenTelemetry Verwendung von EKS-Add-Ons](https://aws-otel.github.io/docs/getting-started/adot-eks-add-on) in der AWS Distro. OpenTelemetry 

ADOT setzt voraus, dass das `cert-manager` Add-on auf dem Cluster bereitgestellt wird. Andernfalls funktioniert dieses Add-on nicht, wenn es direkt über https://registry.terraform bereitgestellt wird. io/modules/terraform-aws-modules/eks/aws/latest`cluster_addons`Eigentum. Weitere Anforderungen finden Sie in der Dokumentation unter [Anforderungen für die ersten Schritte mit AWS Distro für die OpenTelemetry Verwendung von EKS-Add-Ons](https://aws-otel.github.io/docs/getting-started/adot-eks-add-on/requirements) in der AWS Distro. OpenTelemetry 

## GuardDuty Amazon-Vertreter
<a name="add-ons-guard-duty"></a>

Das Amazon EKS-Add-on für GuardDuty Agenten sammelt [Laufzeitereignisse](https://docs.aws.amazon.com/guardduty/latest/ug/runtime-monitoring-collected-events.html) (Dateizugriff, Prozessausführung, Netzwerkverbindungen) von Ihren EKS-Clusterknoten zur Analyse durch GuardDuty Runtime Monitoring. GuardDuty selbst (nicht der Agent) ist der Sicherheitsüberwachungsdienst, der [grundlegende Datenquellen](https://docs.aws.amazon.com/guardduty/latest/ug/guardduty_data-sources.html) wie AWS CloudTrail Verwaltungsereignisse und Amazon VPC-Flow-Logs sowie [Funktionen](https://docs.aws.amazon.com/guardduty/latest/ug/guardduty-features-activation-model.html) wie Kubernetes-Auditprotokolle und Laufzeitüberwachung analysiert und verarbeitet.

Der Name des Amazon-EKS-Add-Ons lautet `aws-guardduty-agent`.

### Erforderliche IAM-Berechtigungen
<a name="add-ons-guard-duty-iam-permissions"></a>

Dieses Add-On erfordert keine Berechtigungen.

### Zusätzliche Informationen
<a name="add-ons-guard-duty-information"></a>

Weitere Informationen finden Sie unter [Laufzeitüberwachung für Amazon EKS-Cluster in Amazon GuardDuty](https://docs.aws.amazon.com/guardduty/latest/ug/how-runtime-monitoring-works-eks.html).
+ Um potenzielle Sicherheitsbedrohungen in Ihren Amazon EKS-Clustern zu erkennen, aktivieren Sie Amazon GuardDuty Runtime Monitoring und stellen Sie den GuardDuty Security Agent auf Ihren Amazon EKS-Clustern bereit.

## Amazon CloudWatch Observability-Agent
<a name="amazon-cloudwatch-observability"></a>

Der Amazon CloudWatch Observability-Agent Amazon EKS erweitert den Überwachungs- und Observabilitätsservice von. AWS Dieses Add-on installiert den CloudWatch Agenten und aktiviert sowohl CloudWatch Application Signals als auch CloudWatch Container Insights mit verbesserter Observability für Amazon EKS. Weitere Informationen finden Sie unter [Amazon CloudWatch Agent](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/Install-CloudWatch-Agent.html).

Der Name des Amazon-EKS-Add-Ons lautet `amazon-cloudwatch-observability`.

### Erforderliche IAM-Berechtigungen
<a name="amazon-cloudwatch-observability-iam-permissions"></a>

Dieses Add-on verwendet die IAM-Rollen für die Servicekontofunktion von Amazon EKS. Weitere Informationen finden Sie unter [IAM-Rollen für Servicekonten](iam-roles-for-service-accounts.md). Die Berechtigungen in den [AWSXrayWriteOnlyAccess](https://console.aws.amazon.com/iam/home#/policies/arn:aws:iam::aws:policy/AWSXrayWriteOnlyAccess)und den [CloudWatchAgentServerPolicy](https://console.aws.amazon.com/iam/home#/policies/arn:aws:iam::aws:policy/CloudWatchAgentServerPolicy) AWS verwalteten Richtlinien sind erforderlich. Sie können eine IAM-Rolle erstellen, ihr die verwalteten Richtlinien anfügen und das vom Add-On verwendete Kubernetes-Servicekonto mit dem folgenden Befehl annotieren. Ersetzen Sie *my-cluster* durch den Namen Ihres Clusters und *AmazonEKS\$1Observability\$1role* durch den Namen Ihrer Rolle. Dieser Befehl erfordert, dass Sie [eksctl](https://eksctl.io) auf Ihrem Gerät installiert haben. Wenn Sie ein anderes Tool verwenden müssen, um die Rolle zu erstellen, ihr die Richtlinie zuzuordnen und das Kubernetes-Servicekonto mit Annotationen zu versehen, siehe [IAM-Rollen Kubernetes-Servicekonten zuweisen](associate-service-account-role.md).

```
eksctl create iamserviceaccount \
    --name cloudwatch-agent \
    --namespace amazon-cloudwatch \
    --cluster my-cluster \
    --role-name AmazonEKS_Observability_Role \
    --role-only \
    --attach-policy-arn arn:aws: iam::aws:policy/AWSXrayWriteOnlyAccess \
    --attach-policy-arn arn:aws: iam::aws:policy/CloudWatchAgentServerPolicy \
    --approve
```

### Zusätzliche Informationen
<a name="amazon-cloudwatch-observability-information"></a>

Weitere Informationen finden [Sie unter Den CloudWatch Agenten installieren](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/install-CloudWatch-Observability-EKS-addon.html).

## AWS Privater CA-Connector für Kubernetes
<a name="add-ons-aws-privateca-connector"></a>

Der AWS Private CA Connector for Kubernetes ist ein Add-on für Cert-Manager, mit dem Benutzer Zertifikate von einer AWS privaten Zertifizierungsstelle (Private CA) erhalten können.AWS 
+ Der Name des Amazon-EKS-Add-Ons lautet `aws-privateca-connector-for-kubernetes`.
+ Der Add-On-Namespace lautet `aws-privateca-issuer`.

Dieses Add-On erfordert `cert-manager`. `cert-manager` ist in Amazon EKS als Community-Add-On verfügbar. Weitere Informationen zu diesem Add-On finden Sie unter [Cert Manager](community-addons.md#addon-cert-manager). Weitere Informationen zur Installation von Add-Ons finden Sie unter [Erstellung eines Amazon-EKS-Add-Ons](creating-an-add-on.md).

### Erforderliche IAM-Berechtigungen
<a name="add-ons-aws-privateca-connector-iam-permissions"></a>

Für dieses Add-On sind IAM-Berechtigungen erforderlich.

Verwenden Sie EKS Pod Identities, um die `AWSPrivateCAConnectorForKubernetesPolicy`-IAM-Richtlinie an das `aws-privateca-issuer`-Kubernetes-Servicekonto anzufügen. Weitere Informationen finden Sie unter [Verwendung von Pod Identities zum Zuweisen einer IAM-Rolle zu einem Amazon-EKS-Add-On](update-addon-role.md).

Informationen zu den erforderlichen Berechtigungen finden Sie [AWSPrivateCAConnectorForKubernetesPolicy](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AWSPrivateCAConnectorForKubernetesPolicy.html)in der Managed Policy Reference. AWS 

### Zusätzliche Informationen
<a name="add-ons-aws-privateca-connector-information"></a>

Weitere Informationen finden Sie im Repository [AWS Private CA Issuer for Kubernetes GitHub ](https://github.com/cert-manager/aws-privateca-issuer).

Weitere Informationen zur Konfiguration des Add-ons finden Sie unter [values.yaml](https://github.com/cert-manager/aws-privateca-issuer/blob/main/charts/aws-pca-issuer/values.yaml) im Repo. `aws-privateca-issuer` GitHub Bestätigen Sie, dass die Version von values.yaml mit der Version des in Ihrem Cluster installierten Add-Ons übereinstimmt.

Dieses Add-on toleriert den `CriticalAddonsOnly` Makel, der im automatischen Modus von EKS verwendet wird. `system` NodePool Weitere Informationen finden Sie unter [Kritische Add-Ons in dedizierten Instances ausführen](critical-workload.md).

## EKS Pod Identity Agent
<a name="add-ons-pod-id"></a>

Amazon-EKS-Add-On für EKS Pod Identity Agent bietet die Möglichkeit, Anmeldeinformationen für Ihre Anwendungen zu verwalten, ähnlich wie Amazon-EC2-Instance-Profile Anmeldeinformationen für Amazon-EC2-Instances bereitstellen.

**Anmerkung**  
Sie müssen dieses Add-On nicht in Clustern von Amazon EKS Auto Mode installieren. Amazon EKS Auto Mode ist in EKS Pod Identity integriert. Weitere Informationen finden Sie unter [Überlegungen zu Amazon EKS Auto Mode](eks-add-ons.md#addon-consider-auto).

Der Name des Amazon-EKS-Add-Ons lautet `eks-pod-identity-agent`.

### Erforderliche IAM-Berechtigungen
<a name="add-ons-pod-id-iam-permissions"></a>

Das Pod-Identity-Agent-Add-On selbst erfordert keine IAM-Rolle. Es nutzt Berechtigungen der [IAM-Rolle des Amazon-EKS-Knotens](create-node-role.md), benötigt jedoch keine dedizierte IAM-Rolle für das Add-On.

### Aktualisieren der Informationen
<a name="add-ons-pod-id-update-information"></a>

Sie können jeweils nur eine Nebenversion aktualisieren. Wenn Ihre aktuelle Version beispielsweise `1.28.x-eksbuild.y` ist und Sie auf `1.30.x-eksbuild.y` aktualisieren möchten, müssen Sie zuerst ihre aktuelle Version auf `1.29.x-eksbuild.y` und dann auf `1.30.x-eksbuild.y` aktualisieren. Weitere Informationen zum Aktualisieren des Add-ons finden Sie unter [Aktualisierung eines Amazon-EKS-Add-Ons](updating-an-add-on.md).

## SR-IOV-Netzwerkmetrik-Exportprogramm
<a name="add-ons-sriov-network-metrics-exporter"></a>

Das Amazon-EKS-Add-On für das SR-IOV-Netzwerkmetrik-Exportprogramm erfasst und stellt Metriken zu SR-IOV-Netzwerkgeräten im Prometheus-Format bereit. Es ermöglicht die Überwachung der SR-IOV-Netzwerkleistung in EKS-Bare-Metal-Knoten. Der Exporter läuft als DaemonSet On-Knoten mit SR-IOV-capable Netzwerkschnittstellen und exportiert Metriken, die von Prometheus gescrappt werden können.

**Anmerkung**  
Für dieses Add-on sind Knoten mit Netzwerkschnittstellen erforderlich. SR-IOV-capable


| Eigenschaft | Wert | 
| --- | --- | 
|  Add-On-Name  |   `sriov-network-metrics-exporter`   | 
|  Namespace  |   `monitoring`   | 
|  Dokumentation  |   [Das SR-IOV Network Metrics Exporter-Repository GitHub ](https://github.com/k8snetworkplumbingwg/sriov-network-metrics-exporter)   | 
|  Servicekonto-Name  |  Keine  | 
|  Verwaltete IAM-Richtlinie  |  Keine  | 
|  Benutzerdefinierte IAM-Berechtigungen  |  Keine  | 

### AWS Secrets Store CSI-Treiberanbieter
<a name="add-ons-aws-secrets-store-csi-driver-provider"></a>

Der AWS Anbieter für den Secrets Store CSI Driver ist ein Add-on, mit dem AWS Secrets Manager und Parameter aus dem AWS Systems Manager Parameter Store abgerufen und als Dateien in Kubernetes-Pods bereitgestellt werden können.

### Erforderliche IAM-Berechtigungen
<a name="add-ons-ascp-iam-permissions"></a>

Für das Add-on sind keine IAM-Berechtigungen erforderlich. Anwendungs-Pods benötigen jedoch IAM-Berechtigungen, um Secrets aus AWS Secrets Manager und Parameter aus dem AWS Systems Manager Parameter Store abzurufen. Nach der Installation des Add-ons muss der Zugriff über IAM Roles for Service Accounts (IRSA) oder EKS Pod Identity konfiguriert werden. Informationen zur Verwendung von IRSA finden Sie in der Secrets Manager [IRSA-Setup-Dokumentation](https://docs.aws.amazon.com/secretsmanager/latest/userguide/integrating_ascp_irsa.html). Informationen zur Verwendung von EKS Pod Identity finden Sie in der [Setup-Dokumentation für Secrets Manager Pod Identity](https://docs.aws.amazon.com/secretsmanager/latest/userguide/ascp-pod-identity-integration.html).

 AWS schlägt die `AWSSecretsManagerClientReadOnlyAccess` [verwaltete Richtlinie](https://docs.aws.amazon.com/secretsmanager/latest/userguide/reference_available-policies.html#security-iam-awsmanpol-AWSSecretsManagerClientReadOnlyAccess) vor.

Weitere Informationen zu den erforderlichen Berechtigungen finden Sie `AWSSecretsManagerClientReadOnlyAccess` in der Referenz zu AWS verwalteten Richtlinien.

### Zusätzliche Informationen
<a name="_additional_information_6"></a>

[Weitere Informationen finden Sie im secrets-store-csi-driver GitHub -provider-aws-Repository.](https://github.com/aws/secrets-store-csi-driver-provider-aws)

Weitere Informationen zum Add-on finden Sie in der [AWS Secrets Manager Manager-Dokumentation für das Add-on](https://docs.aws.amazon.com/secretsmanager/latest/userguide/ascp-eks-installation.html).

## Amazon SageMaker Spaces
<a name="add-ons-amazon-sagemaker-spaces"></a>

Das Amazon SageMaker Spaces-Add-on ermöglicht die Ausführung IDEs von Notebooks auf EKS- oder HyperPod -EKS-Clustern. Administratoren können die EKS-Konsole verwenden, um das Add-on auf ihrem Cluster zu installieren und Standardspeicherkonfigurationen wie Bilder, Rechenressourcen, lokalen Speicher für Notebook-Einstellungen (zusätzlicher Speicher, der an ihre Spaces angehängt werden muss), Dateisysteme und Initialisierungsskripten zu definieren.

KI-Entwickler können kubectl verwenden, um Spaces zu erstellen, zu aktualisieren und zu löschen. Sie haben die Flexibilität, von Administratoren bereitgestellte Standardkonfigurationen zu verwenden oder Einstellungen anzupassen. KI-Entwickler können mithilfe ihres lokalen VS Codes, ihres Webbrowsers, der sie hostet, oder ihrer CodeEditor IDE auf einer benutzerdefinierten DNS-Domain IDEs, and/or die von ihren Administratoren konfiguriert wurde, auf ihre Bereiche in HyperPod EKS JupyterLab oder -EKS zugreifen. Sie können auch die Portweiterleitungsfunktion von Kubernetes verwenden, um auf Bereiche in ihren Webbrowsern zuzugreifen.

Der Name des Amazon-EKS-Add-Ons lautet `amazon-sagemaker-spaces`.

### Erforderliche IAM-Berechtigungen
<a name="_required_iam_permissions_6"></a>

Für dieses Add-On sind IAM-Berechtigungen erforderlich. Weitere Informationen zur erforderlichen IAM-Einrichtung finden Sie unter Einrichtung von [IAM-Berechtigungen](https://docs.aws.amazon.com/sagemaker/latest/dg/permission-setup.html) im *Amazon SageMaker Developer Guide*.

### Zusätzliche Informationen
<a name="_additional_information_7"></a>

Weitere Informationen über das Add-on und seine Funktionen finden Sie unter [SageMaker AI Notebooks HyperPod](https://docs.aws.amazon.com/sagemaker/latest/dg/sagemaker-hyperpod-eks-cluster-ide.html) im *Amazon SageMaker Developer Guide*.

# Community-Erweiterungen
<a name="community-addons"></a>

Sie können AWS APIs Community-Add-Ons wie den Kubernetes Metrics Server installieren. Sie haben die Möglichkeit, Community-Add-Ons als Amazon-EKS-Add-Ons zu installieren, um die Komplexität der Wartung der Software auf mehreren Clustern zu reduzieren.

Sie können beispielsweise die AWS API, CLI oder die Management Console verwenden, um Community-Add-Ons zu installieren. Sie können während der Cluster-Erstellung ein Community-Add-On installieren.

Sie verwalten Community-Add-Ons genauso wie vorhandene Amazon-EKS-Add-Ons. Community-Add-Ons unterscheiden sich von vorhandenen Add-Ons dadurch, dass sie einen einzigartigen Support-Umfang bieten.

**Anmerkung**  
Die Verwendung von Community-Add-Ons liegt in Ihrem Ermessen. Im Rahmen des [Modells der gemeinsamen Verantwortung](security.md) zwischen Ihnen und Ihnen wird erwartet AWS, dass Sie wissen, was Sie für diese Drittanbieter-Plugins in Ihrem Cluster installieren. Sie sind auch dafür verantwortlich, dass die Community-Add-Ons Ihren Cluster-Sicherheitsanforderungen entsprechen. Weitere Informationen finden Sie unter [Support für in EKS bereitgestellte Software](related-projects.md#oss-scope).

Community-Add-Ons wurden nicht von entwickelt AWS. AWS validiert nur Community-Add-Ons auf Versionskompatibilität. Wenn Sie beispielsweise ein Community-Add-on auf einem Cluster installieren, wird AWS geprüft, ob es mit der Kubernetes-Version Ihres Clusters kompatibel ist.

Wichtig ist, dass Community-Add-Ons AWS nicht vollständig unterstützt werden. AWS unterstützt nur Lebenszyklusvorgänge, die mithilfe von Add-Ons ausgeführt werden AWS APIs, z. B. das Installieren von Add-Ons oder das Löschen von Add-Ons

Wenn Sie Support für ein Community-Add-On benötigen, nutzen Sie die vorhandenen Projektressourcen. Sie können beispielsweise ein GitHub Problem im Repository für das Projekt erstellen.

## Add-On-Typ ermitteln
<a name="_determine_add_on_type"></a>

Sie können die AWS CLI verwenden, um den Typ eines Amazon EKS-Add-ons zu bestimmen.

Verwenden Sie den folgenden CLI-Befehl, um Informationen zu einem Add-On abzurufen. Sie können `metrics-server` durch den Namen eines beliebigen Add-Ons ersetzen.

```
aws eks describe-addon-versions --addon-name metrics-server
```

Überprüfen Sie die CLI-Ausgabe für das `owner`-Feld.

```
{
    "addons": [
        {
            "addonName": "metrics-server",
            "type": "observability",
            "owner": "community",
            "addonVersions": [
```

Wenn der Wert von gleich `owner` ist`community`, handelt es sich bei dem Add-On um ein Community-Add-On. AWS bietet nur Unterstützung für die Installation, Aktualisierung und Deinstallation des Add-ons. Wenn Sie Fragen zur Funktionalität und zum Betrieb des Add-ons selbst haben, nutzen Sie Community-Ressourcen wie GitHub Issues.

## Community-Add-On installieren oder aktualisieren
<a name="_install_or_update_community_add_on"></a>

Sie installieren oder aktualisieren Community-Add-Ons auf dieselbe Weise wie andere Amazon-EKS-Add-Ons.
+  [Erstellung eines Amazon-EKS-Add-Ons](creating-an-add-on.md) 
+  [Aktualisierung eines Amazon-EKS-Add-Ons](updating-an-add-on.md) 
+  [Entfernung eines Amazon-EKS-Add-Ons aus einem Cluster](removing-an-add-on.md) 

## Verfügbare Community-Add-Ons
<a name="_available_community_add_ons"></a>

Die folgenden Community-Add-Ons sind bei Amazon EKS verfügbar.
+  [Kubernetes-Metriken-Server](#kubernetes-metrics-server) 
+  [kube-state-metrics](#kube-state-metrics) 
+  [Prometheus-Knoten-Exporter](#prometheus-node-exporter) 
+  [Cert Manager](#addon-cert-manager) 
+  [Externes DNS](#external-dns) 
+  [Fluent Bit](#fluent-bit) 

### Kubernetes-Metriken-Server
<a name="kubernetes-metrics-server"></a>

Der Kubernetes-Metriken-Server ist eine skalierbare und effiziente Quelle für Container-Ressourcen-Metriken für die in Kubernetes integrierten Pipelines zur automatischen Skalierung. Es erfasst Ressourcenmetriken von Kubelets und stellt sie über die Metrik-API im Kubernetes-Apiserver zur Verfügung, damit sie vom Horizontal Pod Autoscaler und Vertical Pod Autoscaler genutzt werden können.


| Eigenschaft | Wert | 
| --- | --- | 
|  Add-On-Name  |   `metrics-server`   | 
|  Namespace  |   `kube-system`   | 
|  Dokumentation  |   [GitHub Readme](https://github.com/kubernetes-sigs/metrics-server)   | 
|  Servicekonto-Name  |  Keine  | 
|  Verwaltete IAM-Richtlinie  |  Keine  | 
|  Benutzerdefinierte IAM-Berechtigungen  |  Keine  | 

### kube-state-metrics
<a name="kube-state-metrics"></a>

Add-On-Agent zum Generieren und Bereitstellen von Metriken auf Cluster-Ebene.

Der Status von Kubernetes-Objekten in der Kubernetes-API kann als Metriken dargestellt werden. Ein sogenannter Add-On-Agent kube-state-metrics kann eine Verbindung zum Kubernetes-API-Server herstellen und einen HTTP-Endpunkt mit Metriken bereitstellen, die aus dem Status einzelner Objekte im Cluster generiert werden. Es werden verschiedene Informationen über den Status von Objekten angezeigt, wie Beschriftungen und Annotationen, Startup- und Beendigungszeiten, Status oder die Phase, in der sich das Objekt derzeit befindet.


| Eigenschaft | Wert | 
| --- | --- | 
|  Add-On-Name  |   `kube-state-metrics`   | 
|  Namespace  |   `kube-state-metrics`   | 
|  Dokumentation  |   [Metriken für Kubernetes-Objektzustände](https://kubernetes.io/docs/concepts/cluster-administration/kube-state-metrics/) in der Kubernetes-Dokumentation  | 
|  Servicekonto-Name  |  Keine  | 
|  Verwaltete IAM-Richtlinie  |  Keine  | 
|  Benutzerdefinierte IAM-Berechtigungen  |  Keine  | 

### Prometheus-Knoten-Exporter
<a name="prometheus-node-exporter"></a>

Prometheus-Exporter für Hardware- und Betriebssystemmetriken, die von \$1NIX-Kernels bereitgestellt werden, geschrieben in Go mit pluggbaren Metrik-Kollektoren. Der Prometheus-Knoten-Exporter stellt eine Vielzahl von hardware- und kernellastigen Metriken bereit.


| Eigenschaft | Wert | 
| --- | --- | 
|  Add-On-Name  |   `prometheus-node-exporter`   | 
|  Namespace  |   `prometheus-node-exporter`   | 
|  Dokumentation  |   [Überwachung von Linux-Host-Metriken mit dem Knoten-Exporter](https://prometheus.io/docs/guides/node-exporter/#monitoring-linux-host-metrics-with-the-node-exporter) in Prometheus-Dokumentation  | 
|  Servicekonto-Name  |  Keine  | 
|  Verwaltete IAM-Richtlinie  |  Keine  | 
|  Benutzerdefinierte IAM-Berechtigungen  |  Keine  | 

### Cert Manager
<a name="addon-cert-manager"></a>

Cert Manager kann zur Verwaltung der Erstellung und Erneuerung von Zertifikaten verwendet werden.


| Eigenschaft | Wert | 
| --- | --- | 
|  Add-On-Name  |   `cert-manager`   | 
|  Namespace  |   `cert-manager`   | 
|  Dokumentation  |   [Cert-Manager-Dokumente](https://cert-manager.io/docs/)   | 
|  Servicekonto-Name  |  Keine  | 
|  Verwaltete IAM-Richtlinie  |  Keine  | 
|  Benutzerdefinierte IAM-Berechtigungen  |  Keine  | 

### Externes DNS
<a name="external-dns"></a>

Mit dem Add-On Externes DNS EKS können Sie Route53-DNS-Einträge über Kubernetes-Ressourcen verwalten.

Externe DNS-Berechtigungen können für die gehosteten Zonen, die Sie verwalten möchten, auf `route53:ChangeResourceRecordSets`, `route53:ListHostedZones` und `route53:ListResourceRecordSets` reduziert werden.


| Eigenschaft | Wert | 
| --- | --- | 
|  Add-On-Name  |   `external-dns`   | 
|  Namespace  |   `external-dns`   | 
|  Dokumentation  |   [GitHub Readme](https://github.com/kubernetes-sigs/external-dns)   | 
|  Servicekonto-Name  |   `external-dns`   | 
|  Verwaltete IAM-Richtlinie  |   ` arn:aws: iam::aws:policy/AmazonRoute53FullAccess`   | 
|  Benutzerdefinierte IAM-Berechtigungen  |  Keine  | 

### Fluent Bit
<a name="fluent-bit"></a>

Fluent Bit ist ein unkomplizierter und leistungsstarker Protokollprozessor und -weiterleiter. Es ermöglicht Ihnen, Daten data/logs aus verschiedenen Quellen zu sammeln, zu vereinheitlichen und an mehrere Ziele zu senden, darunter Amazon CloudWatch Logs, Amazon S3 und Amazon Kinesis Data Firehose. Fluent Bit wurde im Hinblick auf Leistung und Ressourceneffizienz entwickelt und ist daher ideal für Kubernetes-Umgebungen.

Dieses Add-On erfordert in der Standardkonfiguration keine IAM-Berechtigungen. Möglicherweise müssen Sie diesem Add-on jedoch IAM-Berechtigungen erteilen, wenn Sie einen Ausgabespeicherort konfigurieren. AWS Weitere Informationen finden Sie unter [Verwendung von Pod Identities zum Zuweisen einer IAM-Rolle zu einem Amazon-EKS-Add-On](update-addon-role.md).


| Eigenschaft | Wert | 
| --- | --- | 
|  Add-On-Name  |   `fluent-bit`   | 
|  Namespace  |   `fluent-bit`   | 
|  Dokumentation  |   [Fluent-Bit-Dokumentation](https://docs.fluentbit.io/manual/)   | 
|  Servicekonto-Name  |   `fluent-bit`   | 
|  Verwaltete IAM-Richtlinie  |  Keine  | 
|  Benutzerdefinierte IAM-Berechtigungen  |  Keine  | 

## Zuordnungen anzeigen
<a name="_view_attributions"></a>

Sie können die Open-Source-Zuordnungen und Lizenzinformationen für Community-Add-Ons herunterladen.

1. Ermitteln Sie den Namen und die Version des Add-Ons, für das Sie die Zuordnungen herunterladen möchten.

1. Aktualisieren Sie den folgenden Befehl mit dem Namen und der Version:

   ```
   curl -O https://amazon-eks-docs.s3.amazonaws.com/attributions/<add-on-name>/<add-on-version>/attributions.zip
   ```

   Beispiel:

   ```
   curl -O https://amazon-eks-docs.s3.amazonaws.com/attributions/kube-state-metrics/v2.14.0-eksbuild.1/attributions.zip
   ```

1. Verwenden Sie den Befehl, um die Datei herunterzuladen.

Verwenden Sie diese ZIP-Datei, um Informationen zu den Lizenz-Zuordnungen anzuzeigen.

# AWS Marketplace-Add-ons
<a name="workloads-add-ons-available-vendors"></a>

Zusätzlich zur vorherigen Liste der Amazon-EKS-Add-Ons können Sie auch eine große Auswahl an Amazon-EKS-Add-Ons für Betriebssoftware von unabhängigen Softwareanbietern hinzufügen. Wählen Sie ein Add-on aus, um mehr darüber und seine Installationsanforderungen zu erfahren.

[![AWS Videos](http://img.youtube.com/vi/https://www.youtube.com/embed/IIPj119mspc?rel=0/0.jpg)](http://www.youtube.com/watch?v=https://www.youtube.com/embed/IIPj119mspc?rel=0)


## Accuknox
<a name="add-on-accuknox"></a>

Der Add-On-Name lautet `accuknox_kubearmor` und der Namespace ist `kubearmor`. Accuknox veröffentlicht das Add-On.

Informationen zum Add-on finden Sie KubeArmor in der KubeArmor Dokumentation unter [Erste Schritte mit](https://docs.kubearmor.io/kubearmor/quick-links/deployment_guide).

### Servicekonto-Name
<a name="add-on-accuknox-service-account-name"></a>

Ein Servicekonto wird mit diesem Add-On nicht verwendet.

### AWS verwaltete IAM-Richtlinie
<a name="add-on-accuknox-managed-policy"></a>

Eine verwaltete Richtlinie wird mit diesem Add-On nicht verwendet.

### Benutzerdefinierte IAM-Berechtigungen
<a name="add-on-accuknox-custom-permissions"></a>

Benutzerdefinierte Berechtigungen werden mit diesem Add-On nicht verwendet.

## Akuity
<a name="add-on-akuity"></a>

Der Add-On-Name lautet `akuity_agent` und der Namespace ist `akuity`. Akuity veröffentlicht das Add-On.

Informationen zur Verwendung des Add-Ons finden Sie unter [Installieren des Akuity-Agenten in Amazon EKS mit dem Akuity-EKS-Add-On](https://docs.akuity.io/tutorials/eks-addon-agent-install/) in der Dokumentation zur Akuity-Plattform.

### Servicekonto-Name
<a name="add-on-akuity-service-account-name"></a>

Ein Servicekonto wird mit diesem Add-On nicht verwendet.

### AWS verwaltete IAM-Richtlinie
<a name="add-on-akuity-managed-policy"></a>

Eine verwaltete Richtlinie wird mit diesem Add-On nicht verwendet.

### Benutzerdefinierte IAM-Berechtigungen
<a name="add-on-akuity-custom-permissions"></a>

Benutzerdefinierte Berechtigungen werden mit diesem Add-On nicht verwendet.

## Calyptia
<a name="add-on-calyptia"></a>

Der Add-On-Name lautet `calyptia_fluent-bit` und der Namespace ist `calytia-fluentbit`. Calyptia veröffentlicht das Add-On.

Informationen zum Add-on finden Sie unter [Erste Schritte mit dem Calyptia-Haupt-Agent](https://docs.akuity.io/tutorials/eks-addon-agent-install/) auf der Calyptia-Dokumentations-Website.

### Servicekonto-Name
<a name="add-on-calyptia-service-account-name"></a>

Der Name des Servicekontos lautet `clyptia-fluentbit`.

### AWS verwaltete IAM-Richtlinie
<a name="add-on-calyptia-managed-policy"></a>

Dieses Add-On verwendet die von `AWSMarketplaceMeteringRegisterUsage` verwaltete Richtlinie. Weitere Informationen finden Sie [AWSMarketplaceMeteringRegisterUsage](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AWSMarketplaceMeteringRegisterUsage.html)im Referenzhandbuch für AWS verwaltete Richtlinien.

### Befehl zum Erstellen der erforderlichen IAM-Rolle
<a name="add-on-calyptia-custom-permissions"></a>

Für den folgenden Befehl ist es erforderlich, dass Sie über einen IAM OpenID Connect (OIDC)-Anbieter für Ihren Cluster verfügen. Um festzustellen, ob Sie über einen solchen verfügen oder um einen zu erstellen, lesen Sie [Erstellen Sie einen IAM-OIDC-Anbieter für Ihren Cluster](enable-iam-roles-for-service-accounts.md). Ersetzen Sie *my-cluster* durch den Namen Ihres Clusters und *my-calyptia-role* durch den Namen Ihrer Rolle. Dieser Befehl erfordert, dass Sie [eksctl](https://eksctl.io) auf Ihrem Gerät installiert haben. Wenn Sie ein anderes Tool verwenden müssen, um die Rolle zu erstellen und das Kubernetes-Servicekonto zu annotieren, lesen Sie [IAM-Rollen Kubernetes-Servicekonten zuweisen](associate-service-account-role.md).

```
eksctl create iamserviceaccount --name service-account-name  --namespace calyptia-fluentbit --cluster my-cluster --role-name my-calyptia-role \
    --role-only --attach-policy-arn arn:aws: iam::aws:policy/AWSMarketplaceMeteringRegisterUsage --approve
```

## Cisco-Beobachtbarkeits-Collector
<a name="add-on-cisco-collector"></a>

Der Add-On-Name lautet `cisco_cisco-cloud-observability-collectors` und der Namespace ist `appdynamics`. Cisco veröffentlicht das Add-On.

Informationen zum Add-on finden Sie unter [Verwenden der Cisco Cloud Observability AWS Marketplace-Add-Ons](https://docs.appdynamics.com/observability/cisco-cloud-observability/en/kubernetes-and-app-service-monitoring/install-kubernetes-and-app-service-monitoring-with-amazon-elastic-kubernetes-service/use-the-cisco-cloud-observability-aws-marketplace-add-ons) in der AppDynamics Cisco-Dokumentation.

### Servicekonto-Name
<a name="add-on-cisco-collector-service-account-name"></a>

Ein Servicekonto wird mit diesem Add-On nicht verwendet.

### AWS verwaltete IAM-Richtlinie
<a name="add-on-cisco-collector-managed-policy"></a>

Eine verwaltete Richtlinie wird mit diesem Add-On nicht verwendet.

### Benutzerdefinierte IAM-Berechtigungen
<a name="add-on-cisco-collector-custom-permissions"></a>

Benutzerdefinierte Berechtigungen werden mit diesem Add-On nicht verwendet.

## Cisco-Beobachtbarkeits-Operator
<a name="add-on-cisco-operator"></a>

Der Add-On-Name lautet `cisco_cisco-cloud-observability-operators` und der Namespace ist `appdynamics`. Cisco veröffentlicht das Add-On.

Informationen zum Add-on finden Sie unter [Verwenden der Cisco Cloud Observability AWS Marketplace-Add-Ons](https://docs.appdynamics.com/observability/cisco-cloud-observability/en/kubernetes-and-app-service-monitoring/install-kubernetes-and-app-service-monitoring-with-amazon-elastic-kubernetes-service/use-the-cisco-cloud-observability-aws-marketplace-add-ons) in der AppDynamics Cisco-Dokumentation.

### Servicekonto-Name
<a name="add-on-cisco-operator-service-account-name"></a>

Ein Servicekonto wird mit diesem Add-On nicht verwendet.

### AWS verwaltete IAM-Richtlinie
<a name="add-on-cisco-operator-managed-policy"></a>

Eine verwaltete Richtlinie wird mit diesem Add-On nicht verwendet.

### Benutzerdefinierte IAM-Berechtigungen
<a name="add-on-cisco-operator-custom-permissions"></a>

Benutzerdefinierte Berechtigungen werden mit diesem Add-On nicht verwendet.

## CLOUDSOFT
<a name="add-on-cloudsoft"></a>

Der Add-On-Name lautet `cloudsoft_cloudsoft-amp` und der Namespace ist `cloudsoft-amp`. CLOUDSOFT veröffentlicht das Add-On.

Informationen zum Add-On finden Sie unter [Amazon-EKS-ADDON](https://docs.cloudsoft.io/operations/configuration/aws-eks-addon.html) in der CLOUDSOFT-Dokumentation.

### Servicekonto-Name
<a name="add-on-cloudsoft-service-account-name"></a>

Ein Servicekonto wird mit diesem Add-On nicht verwendet.

### AWS verwaltete IAM-Richtlinie
<a name="add-on-cloudsoft-managed-policy"></a>

Eine verwaltete Richtlinie wird mit diesem Add-On nicht verwendet.

### Benutzerdefinierte IAM-Berechtigungen
<a name="add-on-cloudsoft-custom-permissions"></a>

Benutzerdefinierte Berechtigungen werden mit diesem Add-On nicht verwendet.

## Cribl
<a name="add-on-cribl"></a>

Der Add-On-Name lautet `cribl_cribledge` und der Namespace ist `cribledge`. Cribl veröffentlicht das Add-On.

Informationen zum Add-On finden Sie unter [Installieren des Cribl-Amazon-EKS-Add-Ons für Edge](https://docs.cribl.io/edge/usecase-edge-aws-eks/) in der Cribl-Dokumentation.

### Servicekonto-Name
<a name="add-on-cribl-service-account-name"></a>

Ein Servicekonto wird mit diesem Add-On nicht verwendet.

### AWS verwaltete IAM-Richtlinie
<a name="add-on-cribl-managed-policy"></a>

Eine verwaltete Richtlinie wird mit diesem Add-On nicht verwendet.

### Benutzerdefinierte IAM-Berechtigungen
<a name="add-on-cribl-custom-permissions"></a>

Benutzerdefinierte Berechtigungen werden mit diesem Add-On nicht verwendet.

## Dynatrace
<a name="add-on-dynatrace"></a>

Der Add-On-Name lautet `dynatrace_dynatrace-operator` und der Namespace ist `dynatrace`. Dynatrace veröffentlicht das Add-On.

Informationen zum Add-On finden Sie unter [Kubernetes-Überwachung](https://www.dynatrace.com/technologies/kubernetes-monitoring/) in der Dynatrace-Dokumentation.

### Servicekonto-Name
<a name="add-on-dynatrace-service-account-name"></a>

Ein Servicekonto wird mit diesem Add-On nicht verwendet.

### AWS verwaltete IAM-Richtlinie
<a name="add-on-dynatrace-managed-policy"></a>

Eine verwaltete Richtlinie wird mit diesem Add-On nicht verwendet.

### Benutzerdefinierte IAM-Berechtigungen
<a name="add-on-dynatrace-custom-permissions"></a>

Benutzerdefinierte Berechtigungen werden mit diesem Add-On nicht verwendet.

## Datree
<a name="add-on-datree-pro"></a>

Der Add-On-Name lautet `datree_engine-pro` und der Namespace ist `datree`. Datree veröffentlicht das Add-On.

Informationen zum Add-On finden Sie unter [Amazon-EKS-Integration](https://hub.datree.io/integrations/eks-integration) in der Datree-Dokumentation.

### Servicekonto-Name
<a name="add-on-datree-pro-service-account-name"></a>

Der Name des Dienstkontos lautet datree-webhook-server-awsmp.

### AWS verwaltete IAM-Richtlinie
<a name="add-on-datree-pro-managed-policy"></a>

Die verwaltete Richtlinie ist AWSLicenseManagerConsumptionPolicy. Weitere Informationen finden Sie [AWSLicenseManagerConsumptionPolicy](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AWSLicenseManagerConsumptionPolicy.html)im Referenzhandbuch für AWS verwaltete Richtlinien..

### Befehl zum Erstellen der erforderlichen IAM-Rolle
<a name="add-on-datree-pro-iam-command"></a>

Für den folgenden Befehl ist es erforderlich, dass Sie über einen IAM OpenID Connect (OIDC)-Anbieter für Ihren Cluster verfügen. Um festzustellen, ob Sie über einen solchen verfügen oder um einen zu erstellen, lesen Sie [Erstellen Sie einen IAM-OIDC-Anbieter für Ihren Cluster](enable-iam-roles-for-service-accounts.md). Ersetzen Sie *my-cluster* durch den Namen Ihres Clusters und *my-datree-role* durch den Namen Ihrer Rolle. Dieser Befehl erfordert, dass Sie [eksctl](https://eksctl.io) auf Ihrem Gerät installiert haben. Wenn Sie ein anderes Tool verwenden müssen, um die Rolle zu erstellen und das Kubernetes-Servicekonto zu annotieren, lesen Sie [IAM-Rollen Kubernetes-Servicekonten zuweisen](associate-service-account-role.md).

```
eksctl create iamserviceaccount --name datree-webhook-server-awsmp --namespace datree --cluster my-cluster --role-name my-datree-role \
    --role-only --attach-policy-arn arn:aws: iam::aws:policy/service-role/AWSLicenseManagerConsumptionPolicy --approve
```

### Benutzerdefinierte Berechtigungen
<a name="add-on-datree-pro-custom-permissions"></a>

Benutzerdefinierte Berechtigungen werden mit diesem Add-On nicht verwendet.

## Datadog
<a name="add-on-datadog"></a>

Der Add-On-Name lautet `datadog_operator` und der Namespace ist `datadog-agent`. Datadog veröffentlicht das Add-On.

Informationen zum Add-on finden Sie unter [Installieren des Datadog-Agenten in Amazon EKS mit dem Datadog-Operator-Add-On](https://docs.datadoghq.com/containers/guide/operator-eks-addon/?tab=console) in der Datadog-Dokumentation.

### Servicekonto-Name
<a name="add-on-datadog-service-account-name"></a>

Ein Servicekonto wird mit diesem Add-On nicht verwendet.

### AWS verwaltete IAM-Richtlinie
<a name="add-on-datadog-managed-policy"></a>

Eine verwaltete Richtlinie wird mit diesem Add-On nicht verwendet.

### Benutzerdefinierte IAM-Berechtigungen
<a name="add-on-datadog-custom-permissions"></a>

Benutzerdefinierte Berechtigungen werden mit diesem Add-On nicht verwendet.

## Groundcover
<a name="add-on-groundcover"></a>

Der Add-On-Name lautet `groundcover_agent` und der Namespace lautet `groundcover`. Groundcover veröffentlicht das Add-On.

Informationen zum Add-on finden Sie unter [Installieren des Groundcover-Amazon-EKS-Add-Ons](https://docs.groundcover.com/docs/~/changes/VhDDAl1gy1VIO3RIcgxD/configuration/customization-guide/customize-deployment/eks-add-on) in der Groundcover-Dokumentation.

### Servicekonto-Name
<a name="add-on-groundcover-service-account-name"></a>

Ein Servicekonto wird mit diesem Add-On nicht verwendet.

### AWS verwaltete IAM-Richtlinie
<a name="add-on-groundcover-managed-policy"></a>

Eine verwaltete Richtlinie wird mit diesem Add-On nicht verwendet.

### Benutzerdefinierte IAM-Berechtigungen
<a name="add-on-groundcover-custom-permissions"></a>

Benutzerdefinierte Berechtigungen werden mit diesem Add-On nicht verwendet.

## IBM Instana
<a name="add-on-instana"></a>

Der Add-On-Name lautet `instana-agent` und der Namespace ist `instana-agent`. IBM veröffentlicht das Add-On.

Informationen zum Add-on finden Sie unter [Implementieren von Observability für Amazon EKS-Workloads mithilfe des Instana Amazon EKS-Add-ons](https://aws.amazon.com/blogs/ibm-redhat/implement-observability-for-amazon-eks-workloads-using-the-instana-amazon-eks-add-on/) und [Überwachen und Optimieren der Amazon EKS-Kosten mit IBM Instana und Kubecost](https://aws.amazon.com/blogs/ibm-redhat/monitor-and-optimize-amazon-eks-costs-with-ibm-instana-and-kubecost/) im Blog. AWS 

Instana-Beobachtbarkeit (Instana) bietet ein Amazon-EKS-Add-On, das Instana-Agenten in Amazon-EKS-Clustern bereitstellt. Kunden können dieses Add-On verwenden, um Leistungsdaten in Echtzeit zu erfassen und zu analysieren und so Einblicke in ihre containerisierten Anwendungen zu gewinnen. Das Amazon-EKS-Add-On von Instana bietet Sichtbarkeit über Ihre Kubernetes-Umgebungen hinweg. Nach der Bereitstellung erkennt der Instana-Agent automatisch Komponenten innerhalb Ihrer Amazon-EKS-Cluster, darunter Knoten, Namespaces, Bereitstellungen, Services und Pods.

### Servicekonto-Name
<a name="add-on-instana-service-account-name"></a>

Ein Servicekonto wird mit diesem Add-On nicht verwendet.

### AWS verwaltete IAM-Richtlinie
<a name="add-on-instana-managed-policy"></a>

Eine verwaltete Richtlinie wird mit diesem Add-On nicht verwendet.

### Benutzerdefinierte IAM-Berechtigungen
<a name="add-on-instana-custom-permissions"></a>

Benutzerdefinierte Berechtigungen werden mit diesem Add-On nicht verwendet.

## Grafana Labs
<a name="add-on-grafana"></a>

Der Add-On-Name lautet `grafana-labs_kubernetes-monitoring` und der Namespace ist `monitoring`. Grafana Labs veröffentlicht das Add-On.

Informationen zum Add-On finden Sie unter [Konfigurieren der Kubernetes-Überwachung als Add-On mit Amazon EKS](https://grafana.com/docs/grafana-cloud/monitor-infrastructure/kubernetes-monitoring/configuration/config-aws-eks/) in der Grafana-Labs-Dokumentation.

### Servicekonto-Name
<a name="add-on-grafana-service-account-name"></a>

Ein Servicekonto wird mit diesem Add-On nicht verwendet.

### AWS verwaltete IAM-Richtlinie
<a name="add-on-grafana-managed-policy"></a>

Eine verwaltete Richtlinie wird mit diesem Add-On nicht verwendet.

### Benutzerdefinierte IAM-Berechtigungen
<a name="add-on-grafana-custom-permissions"></a>

Benutzerdefinierte Berechtigungen werden mit diesem Add-On nicht verwendet.

## Guance
<a name="add-on-guance"></a>
+  **Publisher** – GUANCE
+  **Name (Name** – `guance_datakit` 
+  **Namespace** – `datakit` 
+  **Servicekonto-Name** – Ein Servicekonto wird mit diesem Add-On nicht verwendet.
+  **Von AWS verwaltete IAM-Richtlinie** – Eine verwaltete Richtlinie wird mit diesem Add-On nicht verwendet.
+  **Benutzerdefinierte IAM-Berechtigungen** – Benutzerdefinierte Berechtigungen werden mit diesem Add-On nicht verwendet.
+  **Anweisungen zur Einrichtung und Verwendung** – Lesen Sie [Verwenden des Amazon-EKS-Add-Ons](https://docs.guance.com/en/datakit/datakit-eks-deploy/#add-on-install) in der Guance-Dokumentation.

## HA Proxy
<a name="add-on-ha-proxy"></a>

Der Name lautet `haproxy-technologies_kubernetes-ingress-ee` und der Namespace ist `haproxy-controller`. HA Proxy veröffentlicht das Add-On.

Informationen zum Add-On finden Sie unter [Amazon-EKS-Integration](https://hub.datree.io/integrations/eks-integration) in der Datree-Dokumentation.

### Servicekonto-Name
<a name="add-on-ha-proxy-service-account-name"></a>

Der Name des Servicekontos lautet `customer defined`.

### AWS verwaltete IAM-Richtlinie
<a name="add-on-ha-proxy-managed-policy"></a>

Die verwaltete Richtlinie ist AWSLicenseManagerConsumptionPolicy. Weitere Informationen finden Sie [AWSLicenseManagerConsumptionPolicy](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AWSLicenseManagerConsumptionPolicy.html)im Referenzhandbuch für AWS verwaltete Richtlinien..

### Befehl zum Erstellen der erforderlichen IAM-Rolle
<a name="add-on-ha-proxy-iam-command"></a>

Für den folgenden Befehl ist es erforderlich, dass Sie über einen IAM OpenID Connect (OIDC)-Anbieter für Ihren Cluster verfügen. Um festzustellen, ob Sie über einen solchen verfügen oder um einen zu erstellen, lesen Sie [Erstellen Sie einen IAM-OIDC-Anbieter für Ihren Cluster](enable-iam-roles-for-service-accounts.md). Ersetzen Sie *my-cluster* durch den Namen Ihres Clusters und *my-haproxy-role* durch den Namen Ihrer Rolle. Dieser Befehl erfordert, dass Sie [eksctl](https://eksctl.io) auf Ihrem Gerät installiert haben. Wenn Sie ein anderes Tool verwenden müssen, um die Rolle zu erstellen und das Kubernetes-Servicekonto zu annotieren, lesen Sie [IAM-Rollen Kubernetes-Servicekonten zuweisen](associate-service-account-role.md).

```
eksctl create iamserviceaccount --name service-account-name  --namespace haproxy-controller --cluster my-cluster --role-name my-haproxy-role \
    --role-only --attach-policy-arn arn:aws: iam::aws:policy/service-role/AWSLicenseManagerConsumptionPolicy --approve
```

### Benutzerdefinierte Berechtigungen
<a name="add-on-ha-proxy-custom-permissions"></a>

Benutzerdefinierte Berechtigungen werden mit diesem Add-On nicht verwendet.

## Kpow
<a name="add-on-kpow"></a>

Der Add-On-Name lautet `factorhouse_kpow` und der Namespace ist `factorhouse`. Factorhouse veröffentlicht das Add-On.

Informationen zum Add-On finden Sie unter [AWS Marketplace LM](https://docs.kpow.io/installation/aws-marketplace-lm/) in der Kpow-Dokumentation.

### Servicekonto-Name
<a name="add-on-kpow-service-account-name"></a>

Der Name des Servicekontos lautet `kpow`.

### AWS verwaltete IAM-Richtlinie
<a name="add-on-kpow-managed-policy"></a>

Die verwaltete Richtlinie ist AWSLicenseManagerConsumptionPolicy. Weitere Informationen finden Sie [AWSLicenseManagerConsumptionPolicy](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AWSLicenseManagerConsumptionPolicy.html)im Referenzhandbuch für AWS verwaltete Richtlinien..

### Befehl zum Erstellen der erforderlichen IAM-Rolle
<a name="add-on-kpow-iam-command"></a>

Für den folgenden Befehl ist es erforderlich, dass Sie über einen IAM OpenID Connect (OIDC)-Anbieter für Ihren Cluster verfügen. Um festzustellen, ob Sie über einen solchen verfügen oder um einen zu erstellen, lesen Sie [Erstellen Sie einen IAM-OIDC-Anbieter für Ihren Cluster](enable-iam-roles-for-service-accounts.md). Ersetzen Sie *my-cluster* durch den Namen Ihres Clusters und *my-kpow-role* durch den Namen Ihrer Rolle. Dieser Befehl erfordert, dass Sie [eksctl](https://eksctl.io) auf Ihrem Gerät installiert haben. Wenn Sie ein anderes Tool verwenden müssen, um die Rolle zu erstellen und das Kubernetes-Servicekonto zu annotieren, lesen Sie [IAM-Rollen Kubernetes-Servicekonten zuweisen](associate-service-account-role.md).

```
eksctl create iamserviceaccount --name kpow --namespace factorhouse --cluster my-cluster --role-name my-kpow-role \
    --role-only --attach-policy-arn arn:aws: iam::aws:policy/service-role/AWSLicenseManagerConsumptionPolicy --approve
```

### Benutzerdefinierte Berechtigungen
<a name="add-on-kpow-custom-permissions"></a>

Benutzerdefinierte Berechtigungen werden mit diesem Add-On nicht verwendet.

## Kubecost
<a name="add-on-kubecost"></a>

Der Add-On-Name lautet `kubecost_kubecost` und der Namespace ist `kubecost`. Kubecost veröffentlicht das Add-On.

Informationen zum Add-On finden Sie unter [Integration der AWS -Cloud- Fakturierung](https://docs.kubecost.com/install-and-configure/install/cloud-integration/aws-cloud-integrations) in der Kubecost-Dokumentation.

Sie müssen die [Speichern von Kubernetes-Volumes mit Amazon EBS](ebs-csi.md) auf Ihrem Cluster installiert haben. Andernfalls erhalten Sie eine Fehlermeldung.

### Servicekonto-Name
<a name="add-on-kubecost-service-account-name"></a>

Ein Servicekonto wird mit diesem Add-On nicht verwendet.

### AWS verwaltete IAM-Richtlinie
<a name="add-on-kubecost-managed-policy"></a>

Eine verwaltete Richtlinie wird mit diesem Add-On nicht verwendet.

### Benutzerdefinierte IAM-Berechtigungen
<a name="add-on-kubecost-custom-permissions"></a>

Benutzerdefinierte Berechtigungen werden mit diesem Add-On nicht verwendet.

## Kasten
<a name="add-on-kasten"></a>

Der Add-On-Name lautet `kasten_k10` und der Namespace ist `kasten-io`. Kasten von Veeam veröffentlicht das Add-On.

Informationen zum Add-on finden Sie unter [Installation von K10 unter AWS Verwendung des Amazon EKS Add-ons](https://docs.kasten.io/latest/install/aws-eks-addon/aws-eks-addon.html) in der Kasten-Dokumentation.

Sie müssen den Amazon-EBS-CSI-Treiber mit einem Standard-`StorageClass` auf Ihrem Cluster installiert haben.

### Servicekonto-Name
<a name="add-on-kasten-service-account-name"></a>

Der Name des Servicekontos lautet `k10-k10`.

### AWS verwaltete IAM-Richtlinie
<a name="add-on-kasten-managed-policy"></a>

Die verwaltete Richtlinie ist AWSLicenseManagerConsumptionPolicy. Weitere Informationen finden Sie [AWSLicenseManagerConsumptionPolicy](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AWSLicenseManagerConsumptionPolicy.html)im Referenzhandbuch für AWS verwaltete Richtlinien..

### Befehl zum Erstellen der erforderlichen IAM-Rolle
<a name="add-on-kasten-iam-command"></a>

Für den folgenden Befehl ist es erforderlich, dass Sie über einen IAM OpenID Connect (OIDC)-Anbieter für Ihren Cluster verfügen. Um festzustellen, ob Sie über einen solchen verfügen oder um einen zu erstellen, lesen Sie [Erstellen Sie einen IAM-OIDC-Anbieter für Ihren Cluster](enable-iam-roles-for-service-accounts.md). Ersetzen Sie *my-cluster* durch den Namen Ihres Clusters und *my-kasten-role* durch den Namen Ihrer Rolle. Dieser Befehl erfordert, dass Sie [eksctl](https://eksctl.io) auf Ihrem Gerät installiert haben. Wenn Sie ein anderes Tool verwenden müssen, um die Rolle zu erstellen und das Kubernetes-Servicekonto zu annotieren, lesen Sie [IAM-Rollen Kubernetes-Servicekonten zuweisen](associate-service-account-role.md).

```
eksctl create iamserviceaccount --name k10-k10 --namespace kasten-io --cluster my-cluster --role-name my-kasten-role \
    --role-only --attach-policy-arn arn:aws: iam::aws:policy/service-role/AWSLicenseManagerConsumptionPolicy --approve
```

### Benutzerdefinierte Berechtigungen
<a name="add-on-kasten-custom-permissions"></a>

Benutzerdefinierte Berechtigungen werden mit diesem Add-On nicht verwendet.

## Kong
<a name="add-on-kong"></a>

Der Add-On-Name lautet `kong_konnect-ri` und der Namespace ist `kong`. Kong veröffentlicht das Add-On.

Informationen zum Add-On finden Sie unter [Installieren des EKS-Add-Ons für Kong-Gateway](https://kong.github.io/aws-marketplace-addon-kong-gateway/) in der Kong-Dokumentation.

Sie müssen die [Speichern von Kubernetes-Volumes mit Amazon EBS](ebs-csi.md) auf Ihrem Cluster installiert haben. Andernfalls erhalten Sie eine Fehlermeldung.

### Servicekonto-Name
<a name="add-on-kong-service-account-name"></a>

Ein Servicekonto wird mit diesem Add-On nicht verwendet.

### AWS verwaltete IAM-Richtlinie
<a name="add-on-kong-managed-policy"></a>

Eine verwaltete Richtlinie wird mit diesem Add-On nicht verwendet.

### Benutzerdefinierte IAM-Berechtigungen
<a name="add-on-kong-custom-permissions"></a>

Benutzerdefinierte Berechtigungen werden mit diesem Add-On nicht verwendet.

## LeakSignal
<a name="add-on-leaksignal"></a>

Der Name des Add-ons lautet `leaksignal_leakagent` und der Namespace ist`leakagent`. LeakSignal veröffentlicht das Add-on.

Informationen zum Add-on finden Sie in der Dokumentation unter https://www.leaksignal.com/docs/ LeakAgent /Deployment/AWS%20EKS%20Addon/ [Das Add-on installieren] LeakAgent LeakSignal 

Sie müssen die [Speichern von Kubernetes-Volumes mit Amazon EBS](ebs-csi.md) auf Ihrem Cluster installiert haben. Andernfalls erhalten Sie eine Fehlermeldung.

### Servicekonto-Name
<a name="add-on-leaksignal-service-account-name"></a>

Ein Servicekonto wird mit diesem Add-On nicht verwendet.

### AWS verwaltete IAM-Richtlinie
<a name="add-on-leaksignal-managed-policy"></a>

Eine verwaltete Richtlinie wird mit diesem Add-On nicht verwendet.

### Benutzerdefinierte IAM-Berechtigungen
<a name="add-on-leaksignal-custom-permissions"></a>

Benutzerdefinierte Berechtigungen werden mit diesem Add-On nicht verwendet.

## NetApp
<a name="add-on-netapp"></a>

Der Name des Add-ons lautet `netapp_trident-operator` und der Namespace ist`trident`. NetApp veröffentlicht das Add-on.

Informationen zum Add-on finden Sie in der NetApp Dokumentation unter [Konfiguration des Trident EKS-Add-ons](https://docs.netapp.com/us-en/trident/trident-use/trident-aws-addon.html).

### Servicekonto-Name
<a name="add-on-netapp-service-account-name"></a>

Ein Servicekonto wird mit diesem Add-On nicht verwendet.

### AWS verwaltete IAM-Richtlinie
<a name="add-on-netapp-managed-policy"></a>

Eine verwaltete Richtlinie wird mit diesem Add-On nicht verwendet.

### Benutzerdefinierte IAM-Berechtigungen
<a name="add-on-netapp-custom-permissions"></a>

Benutzerdefinierte Berechtigungen werden mit diesem Add-On nicht verwendet.

## New Relic
<a name="add-on-new-relic"></a>

Der Add-On-Name lautet `new-relic_kubernetes-operator` und der Namespace ist `newrelic`. New Relic veröffentlicht das Add-On.

Informationen zum Add-on finden Sie unter [Installieren des New-Relic-Add-Ons für EKS](https://docs.newrelic.com/docs/infrastructure/amazon-integrations/connect/eks-add-on) in der New-Relic-Dokumentation.

### Servicekonto-Name
<a name="add-on-new-relic-service-account-name"></a>

Ein Servicekonto wird mit diesem Add-On nicht verwendet.

### AWS verwaltete IAM-Richtlinie
<a name="add-on-new-relic-managed-policy"></a>

Eine verwaltete Richtlinie wird mit diesem Add-On nicht verwendet.

### Benutzerdefinierte IAM-Berechtigungen
<a name="add-on-new-relic-custom-permissions"></a>

Benutzerdefinierte Berechtigungen werden mit diesem Add-On nicht verwendet.

## Rafay
<a name="add-on-rafay"></a>

Der Add-On-Name lautet `rafay-systems_rafay-operator` und der Namespace ist `rafay-system`. Rafay veröffentlicht das Add-On.

Informationen zum Add-On finden Sie unter [Installieren des Rafay-Amazon-EKS-Add-Ons](https://docs.rafay.co/clusters/import/eksaddon/) in der Rafay-Dokumentation.

### Servicekonto-Name
<a name="add-on-rafay-service-account-name"></a>

Ein Servicekonto wird mit diesem Add-On nicht verwendet.

### AWS verwaltete IAM-Richtlinie
<a name="add-on-rafay-managed-policy"></a>

Eine verwaltete Richtlinie wird mit diesem Add-On nicht verwendet.

### Benutzerdefinierte IAM-Berechtigungen
<a name="add-on-rafay-custom-permissions"></a>

Benutzerdefinierte Berechtigungen werden mit diesem Add-On nicht verwendet.

## Rad Security
<a name="add-on-rad"></a>
+  **Publisher** – RAD SECURITY
+  **Name (Name** – `rad-security_rad-security` 
+  **Namespace** – `ksoc` 
+  **Servicekonto-Name** – Ein Servicekonto wird mit diesem Add-On nicht verwendet.
+  **Von AWS verwaltete IAM-Richtlinie** – Eine verwaltete Richtlinie wird mit diesem Add-On nicht verwendet.
+  **Benutzerdefinierte IAM-Berechtigungen** – Benutzerdefinierte Berechtigungen werden mit diesem Add-On nicht verwendet.
+  **Anweisungen zur Einrichtung und Verwendung** — Weitere Informationen finden Sie unter [Installation von Rad Through The AWS Marketplace](https://docs.rad.security/docs/installing-ksoc-in-the-aws-marketplace) in der Rad Security-Dokumentation.

## SolarWinds
<a name="add-on-solarwinds"></a>
+  **Publisher** – SOLARWINDS
+  **Name (Name** – `solarwinds_swo-k8s-collector-addon` 
+  **Namespace** – `solarwinds` 
+  **Servicekonto-Name** – Ein Servicekonto wird mit diesem Add-On nicht verwendet.
+  **Von AWS verwaltete IAM-Richtlinie** – Eine verwaltete Richtlinie wird mit diesem Add-On nicht verwendet.
+  **Benutzerdefinierte IAM-Berechtigungen** – Benutzerdefinierte Berechtigungen werden mit diesem Add-On nicht verwendet.
+  **Anweisungen zur Einrichtung und Verwendung** — siehe [Überwachen eines Amazon EKS-Clusters](https://documentation.solarwinds.com/en/success_center/observability/content/configure/configure-kubernetes.htm#MonitorAmazonEKS) in der SolarWinds Dokumentation.

## Solo
<a name="add-on-solo"></a>

Der Add-On-Name lautet `solo-io_istio-distro` und der Namespace ist `istio-system`. Solo veröffentlicht das Add-On.

Informationen zum Add-On finden Sie unter [Installation von Istio](https://docs.solo.io/gloo-mesh-enterprise/main/setup/install/eks_addon/) in der Solo.io-Dokumentation.

### Servicekonto-Name
<a name="add-on-solo-service-account-name"></a>

Ein Servicekonto wird mit diesem Add-On nicht verwendet.

### AWS verwaltete IAM-Richtlinie
<a name="add-on-solo-managed-policy"></a>

Eine verwaltete Richtlinie wird mit diesem Add-On nicht verwendet.

### Benutzerdefinierte IAM-Berechtigungen
<a name="add-on-solo-custom-permissions"></a>

Benutzerdefinierte Berechtigungen werden mit diesem Add-On nicht verwendet.

## Snyk
<a name="add-on-snyk"></a>
+  **Publisher** – SNYK
+  **Name (Name** – `snyk_runtime-sensor` 
+  **Namespace** – `snyk_runtime-sensor` 
+  **Servicekonto-Name** – Ein Servicekonto wird mit diesem Add-On nicht verwendet.
+  **Von AWS verwaltete IAM-Richtlinie** – Eine verwaltete Richtlinie wird mit diesem Add-On nicht verwendet.
+  **Benutzerdefinierte IAM-Berechtigungen** – Benutzerdefinierte Berechtigungen werden mit diesem Add-On nicht verwendet.
+  **Anleitung zur Einrichtung und Verwendung** – Beachten Sie den [Snyk-Laufzeitsensor](https://docs.snyk.io/integrate-with-snyk/snyk-runtime-sensor) in der Snyk-Benutzerdokumentation.

## Stormforge
<a name="add-on-stormforge"></a>

Der Add-On-Name lautet `stormforge_optimize-Live` und der Namespace ist `stormforge-system`. Stormforge veröffentlicht das Add-On.

Informationen zum Add-on finden Sie in [der StormForge Dokumentation unter Installation des StormForge Agenten](https://docs.stormforge.io/optimize-live/getting-started/install-v2/).

### Servicekonto-Name
<a name="add-on-stormforge-service-account-name"></a>

Ein Servicekonto wird mit diesem Add-On nicht verwendet.

### AWS verwaltete IAM-Richtlinie
<a name="add-on-stormforge-managed-policy"></a>

Eine verwaltete Richtlinie wird mit diesem Add-On nicht verwendet.

### Benutzerdefinierte IAM-Berechtigungen
<a name="add-on-stormforge-custom-permissions"></a>

Benutzerdefinierte Berechtigungen werden mit diesem Add-On nicht verwendet.

## SUSE
<a name="add-on-suse"></a>
+  **Publisher** – SUSE
+  **Name (Name** – `suse_observability-agent` 
+  **Namespace** – `suse-observability` 
+  **Servicekonto-Name** – Ein Servicekonto wird mit diesem Add-On nicht verwendet.
+  **Von AWS verwaltete IAM-Richtlinie** – Eine verwaltete Richtlinie wird mit diesem Add-On nicht verwendet.
+  **Benutzerdefinierte IAM-Berechtigungen** – Benutzerdefinierte Berechtigungen werden mit diesem Add-On nicht verwendet.
+  **Anweisungen zur Einrichtung und Verwendung** – Lesen Sie [Schnellstart](https://docs.stackstate.com/get-started/k8s-quick-start-guide#amazon-eks) in der SUSE-Dokumentation.

## Splunk
<a name="add-on-splunk"></a>

Der Add-On-Name lautet `splunk_splunk-otel-collector-chart` und der Namespace ist `splunk-monitoring`. Splunk veröffentlicht das Add-On.

Informationen zum Add-On finden Sie unter [Installieren des Splunk-Add-Ons für Amazon EKS](https://help.splunk.com/en/splunk-observability-cloud/manage-data/splunk-distribution-of-the-opentelemetry-collector/get-started-with-the-splunk-distribution-of-the-opentelemetry-collector/collector-for-kubernetes/kubernetes-eks-add-on) in der Splunk-Dokumentation

### Servicekonto-Name
<a name="add-on-splunk-service-account-name"></a>

Ein Servicekonto wird mit diesem Add-On nicht verwendet.

### AWS verwaltete IAM-Richtlinie
<a name="add-on-splunk-managed-policy"></a>

Eine verwaltete Richtlinie wird mit diesem Add-On nicht verwendet.

### Benutzerdefinierte IAM-Berechtigungen
<a name="add-on-splunk-custom-permissions"></a>

Benutzerdefinierte Berechtigungen werden mit diesem Add-On nicht verwendet.

## Teleport
<a name="add-on-teleport"></a>

Der Add-On-Name lautet `teleport_teleport` und der Namespace ist `teleport`. Teleport veröffentlicht das Add-On.

Informationen zum Add-On finden Sie unter [Funktionsweise von Teleport](https://goteleport.com/how-it-works/) in der Teleport-Dokumentation.

### Servicekonto-Name
<a name="add-on-teleport-service-account-name"></a>

Ein Servicekonto wird mit diesem Add-On nicht verwendet.

### AWS verwaltete IAM-Richtlinie
<a name="add-on-teleport-managed-policy"></a>

Eine verwaltete Richtlinie wird mit diesem Add-On nicht verwendet.

### Benutzerdefinierte IAM-Berechtigungen
<a name="add-on-teleport-custom-permissions"></a>

Benutzerdefinierte Berechtigungen werden mit diesem Add-On nicht verwendet.

## Tetrate
<a name="add-on-tetrate"></a>

Der Add-On-Name lautet `tetrate-io_istio-distro` und der Namespace ist `istio-system`. Tetrate Io veröffentlicht das Add-On.

Informationen zum Add-On finden Sie auf der Website von [Tetrate Istio Distro](https://tetratelabs.io/).

### Servicekonto-Name
<a name="add-on-tetrate-service-account-name"></a>

Ein Servicekonto wird mit diesem Add-On nicht verwendet.

### AWS verwaltete IAM-Richtlinie
<a name="add-on-tetrate-managed-policy"></a>

Eine verwaltete Richtlinie wird mit diesem Add-On nicht verwendet.

### Benutzerdefinierte IAM-Berechtigungen
<a name="add-on-tetrate-custom-permissions"></a>

Benutzerdefinierte Berechtigungen werden mit diesem Add-On nicht verwendet.

## Upbound Universal Crossplane
<a name="add-on-upbound"></a>

Der Add-On-Name lautet `upbound_universal-crossplane` und der Namespace ist `upbound-system`. Upbound veröffentlicht das Add-On.

Informationen zum Add-On finden Sie unter [Upbound Universal Crossplane (UXP)](https://docs.upbound.io/uxp/) in der Upbound-Dokumentation

### Servicekonto-Name
<a name="add-on-upbound-service-account-name"></a>

Ein Servicekonto wird mit diesem Add-On nicht verwendet.

### AWS verwaltete IAM-Richtlinie
<a name="add-on-upbound-managed-policy"></a>

Eine verwaltete Richtlinie wird mit diesem Add-On nicht verwendet.

### Benutzerdefinierte IAM-Berechtigungen
<a name="add-on-upbound-custom-permissions"></a>

Benutzerdefinierte Berechtigungen werden mit diesem Add-On nicht verwendet.

## Upwind
<a name="add-on-upwind"></a>

Der Add-On-Name lautet `upwind` und der Namespace ist `upwind`. Upwind veröffentlicht das Add-On.

Informationen zum Add-On finden Sie in der [Upwind-Dokumentation](https://docs.upwind.io/install-sensor/kubernetes/install?installation-method=amazon-eks-addon).

### Servicekonto-Name
<a name="add-on-upwind-service-account-name"></a>

Ein Servicekonto wird mit diesem Add-On nicht verwendet.

### AWS verwaltete IAM-Richtlinie
<a name="add-on-upwind-managed-policy"></a>

Eine verwaltete Richtlinie wird mit diesem Add-On nicht verwendet.

### Benutzerdefinierte IAM-Berechtigungen
<a name="add-on-upwind-custom-permissions"></a>

Benutzerdefinierte Berechtigungen werden mit diesem Add-On nicht verwendet.

# Erstellung eines Amazon-EKS-Add-Ons
<a name="creating-an-add-on"></a>

Amazon-EKS-Add-Ons sind Zusatzsoftware für Amazon-EKS-Cluster. Alle Amazon-EKS-Add-Ons:
+ Sie enthalten die neuesten Sicherheits-Patches und Fehlerbehebungen.
+ Sind für die Verwendung AWS mit Amazon EKS validiert.
+ Sie reduzieren den Arbeitsaufwand für die Verwaltung der Add-On-Software.

Sie können ein Amazon EKS-Add-on mithilfe `eksctl` der AWS-Managementkonsole oder der AWS CLI erstellen. Wenn das Add-On eine IAM-Rolle erfordert, finden Sie weitere Informationen zum Erstellen der Rolle in den Details zum jeweiligen Add-On unter [Amazon-EKS-Add-Ons](eks-add-ons.md).

## Voraussetzungen
<a name="creating-an-add-on-prereq"></a>

Führen Sie Folgendes aus, bevor Sie ein Add-On erstellen:
+ Der Cluster muss vorhanden sein, bevor Sie ein Add-On dafür erstellen. Weitere Informationen finden Sie unter [Amazon-EKS-Cluster erstellen](create-cluster.md).
+ Überprüfen Sie, ob Ihr Add-On eine IAM-Rolle erfordert. Weitere Informationen finden Sie unter [Kompatibilität der Add-On-Version von Amazon EKS mit einem Cluster überprüfen](addon-compat.md).
+ Stellen Sie sicher, dass die Amazon-EKS-Add-On-Version mit Ihrem Cluster kompatibel ist. Weitere Informationen finden Sie unter [Kompatibilität der Add-On-Version von Amazon EKS mit einem Cluster überprüfen](addon-compat.md).
+ Vergewissern Sie sich, dass Version 0.190.0 oder höher des `eksctl` Befehlszeilentools auf Ihrem Computer installiert ist oder. AWS CloudShell Weitere Informationen finden Sie unter [Installation](https://eksctl.io/installation/) auf der `eksctl`-Website.

## Verfahren
<a name="creating-an-add-on-procedure"></a>

Sie können ein Amazon EKS-Add-on mithilfe `eksctl` der AWS-Managementkonsole oder der AWS CLI erstellen. Wenn das Add-On eine IAM-Rolle erfordert, finden Sie in den Details zum jeweiligen Add-On unter [Verfügbare Amazon-EKS-Add-Ons von AWS](workloads-add-ons-available-eks.md) Einzelheiten zum Erstellen der Rolle.

## Add-On erstellen (eksctl)
<a name="_create_add_on_eksctl"></a>

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

   ```
   eksctl utils describe-addon-versions --kubernetes-version 1.35 | 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",
                           [...]
   ```

1. Zeigen Sie die Versionen des Add-Ons an, die für das Add-On verfügbar sind, das Sie erstellen möchten. Ersetzen Sie *1.35* durch die Version Ihres Clusters. Ersetzen Sie *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 in den vorherigen Schritten zurückgegeben wurden.

   ```
   eksctl utils describe-addon-versions --kubernetes-version 1.35 --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.35 --name name-of-addon | grep ProductUrl
      ```

      Wenn keine Ausgabe zurückgegeben wird, handelt es sich bei dem Add-On um ein Amazon EKS. 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 der zurückgegebenen URL erfahren. 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 [IAM-Principal](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html#iam-term-principal), den Sie zum Erstellen des Add-ons verwenden, über die Berechtigung verfügen, die [AWSServiceRoleForAWSLicenseManagerRole](https://docs.aws.amazon.com/license-manager/latest/userguide/license-manager-role-core.html)serviceverknü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äts-Berechtigungen](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_manage-attach-detach.html) im IAM-Benutzerhandbuch.

1. Erstellen Sie ein Amazon-EKS-Add-On. Kopieren Sie den Befehl und ersetzen Sie ihn *user-data* wie folgt:
   + Ersetzen Sie *my-cluster* mit dem Namen Ihres Clusters.
   + Ersetzen Sie *name-of-addon* durch den Namen des Add-Ons, das Sie erstellen möchten.
   + Wenn Sie eine Version des Add-ons verwenden möchten, die älter als die neueste Version ist, *latest* ersetzen Sie sie durch die Versionsnummer, die in der Ausgabe eines vorherigen Schritts zurückgegeben wurde, den Sie verwenden möchten.
   + Wenn das Add-On eine Servicekonto-Rolle verwendet, ersetzen Sie *111122223333* durch Ihre Konto-ID und *role-name* durch den Namen der Rolle. Anweisungen zum Erstellen einer Rolle für Ihr Servicekonto finden Sie in der Dokumentation für das Add-On, das Sie erstellen. Eine Liste der Add-Ons finden Sie unter [AWS Add-Ons](workloads-add-ons-available-eks.md). Die Angabe einer Servicekonto-Rolle setzt voraus, 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 IAM-OIDC-Anbieter für Ihren Cluster](enable-iam-roles-for-service-accounts.md).

     Wenn das Add-On keine Servicekonto-Rolle verwendet, löschen Sie `--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 die *--force* Option. Wenn Sie die Option entfernen und das Amazon-EKS-Add-On die Konfiguration eines vorhandenen selbstverwalteten Add-Ons benötigt, scheitert die Erstellung des Amazon-EKS-Add-Ons mit einer Fehlermeldung, die Sie bei der Behebung des Konflikts unterstützt. Stellen Sie vor der Angabe dieser Option sicher, dass das Amazon-EKS-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](https://eksctl.io/usage/addons/) in der `eksctl`-Dokumentation.

## Add-on erstellen (Konsole)AWS
<a name="create_add_on_console"></a>

1. Öffnen Sie die [Amazon-EKS-Konsole](https://console.aws.amazon.com/eks/home#/clusters).

1. Wählen Sie im linken Navigationsbereich **Cluster** aus.

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

1. Wählen Sie die Registerkarte **Add-ons**.

1. Wählen Sie **Weitere Add-Ons erhalten**.

1. 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 **Amazon EKS-Add-Ons** und ** AWS Marketplace-Add-Ons** hinzufügen, wie Sie benötigen.

   Für ** AWS Marketplace-Add-Ons** muss der [IAM-Principal](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html#iam-term-principal), den Sie zum Erstellen des Add-ons verwenden, über Berechtigungen zum Lesen von Berechtigungen für das Add-on aus dem verfügen. AWS LicenseManager AWS LicenseManager erfordert eine [AWSServiceRoleForAWSLicenseManagerRole](https://docs.aws.amazon.com/license-manager/latest/userguide/license-manager-role-core.html)serviceverknüpfte Rolle (SLR), die es AWS Ressourcen ermöglicht, Lizenzen in Ihrem Namen zu verwalten. Das SLR ist eine einmalige Anforderung pro Konto, und Sie müssen keine separaten SLRs für jedes Add-On oder jeden Cluster erstellen. Weitere Informationen zum Zuweisen von Berechtigungen zu einem [IAM-Prinzipal](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html#iam-term-principal) finden Sie unter [Hinzufügen und Entfernen von IAM-Identitäts-Berechtigungen](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_manage-attach-detach.html) 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**.

1. 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.

   1. Wählen Sie für **Version** die Version aus, welche 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 ein Add-On über eine empfohlene Version verfügt, lesen Sie die Dokumentation für das Add-On, das Sie erstellen. Eine Liste der Add-Ons finden Sie unter [AWS Add-Ons](workloads-add-ons-available-eks.md).

   1. Sie haben zwei Möglichkeiten, Rollen für Add-Ons zu konfigurieren: IAM-Rolle für EKS-Pod-Identitäten und IAM-Rollen für Servicekonten (IRSA). Befolgen Sie die entsprechenden nachfolgenden Schritte für die von Ihnen bevorzugte Option. Wenn für alle von Ihnen ausgewählten Add-Ons **Abonnement erforderlich** ist unter **Status**, wählen Sie **Weiter** aus. Sie können [diese Add-Ons konfigurieren](updating-an-add-on.md), wenn Sie sie nach der Erstellung Ihres Clusters abonniert haben. Für die Add-Ons, die kein **Abonnement erforderlich** unter **Status** haben, gehen Sie wie folgt vor:

      1. Für die **IAM-Rolle Pod Identity für Servicekonto** können Sie entweder eine vorhandene IAM-Rolle EKS Pod Identity verwenden oder mithilfe der Schaltfläche **Empfohlene Rolle erstellen** eine neue Rolle erstellen. In diesem Feld werden nur Optionen mit der entsprechenden Vertrauensrichtlinie bereitgestellt. Wenn keine Rolle zur Auswahl steht, verfügen Sie über keine vorhandene Rolle mit einer passenden Vertrauensrichtlinie. Um eine IAM-Rolle EKS Pod Identity für Servicekonten der ausgewählten Add-On 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 IAM-Rolle EKS Pod Identity erstellen möchten, die folgenden Schritte im IAM-Assistenten aus.
         + Im Schritt **Vertrauenswürdige Entität auswählen** sind die AWS Serviceoption für **EKS** und 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 IAM-Prinzipal pods.eks.amazonaws.com enthält, wie in [Vorteile von EKS-Pod-Identitäten](pod-identities.md#pod-id-benefits) beschrieben. Wählen Sie **Weiter** aus.
         + Im Schritt **Berechtigungen hinzufügen** wird die entsprechende verwaltete Richtlinie für die Rollenrichtlinie für das Add-On vorausgewählt. Beispielsweise wird für das Add-On für Amazon VPC CNI die Rolle mit der verwalteten Richtlinie `AmazonEKS_CNI_Policy` erstellt, wie in [Amazon-VPC-CNI-Plugin für Kubernetes](workloads-add-ons-available-eks.md#add-ons-vpc-cni) beschrieben. Wählen Sie **Weiter** aus.
         + Im Schritt **Name, überprüfen und erstellen** wird unter **Rollenname** automatisch der Standardrollenname für das Add-On eingetragen. **Für das **Amazon VPC CNI-Add-on** wird die Rolle beispielsweise mit dem Namen Amazon erstellt. EKSPod IdentityAmazon VPCCNIRole** Unter **Beschreibung** wird die Standardbeschreibung automatisch mit der entsprechenden Beschreibung für das Add-On eingetragen. Für das Amazon VPC CNI-Add-on wird die Rolle beispielsweise mit der Beschreibung **Erlaubt Pods, die im Amazon EKS-Cluster ausgeführt** werden, den Zugriff auf AWS Ressourcen erstellt. Zeigen Sie unter **Vertrauensrichtlinie** die ausgefüllte Vertrauensrichtlinie für das Add-On an. Wählen Sie **Rolle erstellen** aus.

           HINWEIS: Durch Beibehalten des Standard-Rollennamens kann EKS die Rolle für Add-Ons in neuen Clustern oder beim Hinzufügen von Add-Ons zu vorhandenen Clustern vorab auswählen. Sie können diesen Namen weiterhin überschreiben, und die Rolle steht dann für das Add-On in Ihren Clustern zur Verfügung, muss jedoch manuell aus der Dropdown-Liste ausgewählt werden.

      1. Informationen zu Add-Ons, bei denen unter **Status** nicht die Option **Abonnement erforderlich** angezeigt wird und bei denen Sie Rollen mithilfe von IRSA konfigurieren möchten, finden Sie in der Dokumentation des Add-Ons, das Sie erstellen, um eine IAM-Richtlinie zu erstellen und sie einer Rolle zuzuordnen. Eine Liste der Add-Ons finden Sie unter [AWS Add-Ons](workloads-add-ons-available-eks.md). Die Auswahl einer IAM-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 IAM-OIDC-Anbieter für Ihren Cluster](enable-iam-roles-for-service-accounts.md).

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

      1. Wenn für das Add-On eine Konfiguration erforderlich ist, geben Sie diese in das Feld **Configuration values** (Konfigurationswerte) ein. Um festzustellen, ob für das Add-On Konfigurationsinformationen erforderlich sind, lesen Sie die Dokumentation für das Add-On, das Sie erstellen. Eine Liste der Add-Ons finden Sie unter [AWS Add-Ons](workloads-add-ons-available-eks.md).

      1. Wählen Sie eine der verfügbaren Optionen für die **Konfliktlösungsmethode** aus. Wenn Sie **Überschreiben** für **Konfliktlösungsmethode** auswählen, können eine oder mehrere der Einstellungen für das vorhandene Add-On mit den Einstellungen des Amazon-EKS-Add-Ons überschrieben werden. Wenn Sie diese Option nicht aktivieren und ein Konflikt mit Ihren vorhandenen Einstellungen vorliegt, schlägt der Vorgang fehl. Sie können die sich daraus ergebende Fehlermeldung heranziehen, um den Konflikt zu beheben. Stellen Sie vor der Auswahl dieser Option sicher, dass das Amazon-EKS-Add-On keine Einstellungen verwaltet, die Sie selbst verwalten müssen.

      1. Wenn Sie das Add-On in einem bestimmten Namespace installieren möchten, geben Sie diesen in das Feld **Namespace** ein. Für Add-Ons AWS und Community-Erweiterungen können Sie einen benutzerdefinierten Kubernetes-Namespace definieren, in dem das Add-on installiert werden soll. Weitere Informationen finden Sie unter [Benutzerdefinierter Namespace für Add-Ons](eks-add-ons.md#custom-namespace).

      1. Wählen Sie **Weiter** aus.

1. 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.

1. 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).

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

   1. 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 das Abonnement bearbeitet wird, ist die Schaltfläche **Return to Amazon EKS Console** (Zurück zur Amazon-EKS-Konsole) ausgegraut.

   1. Sobald die Bearbeitung des Abonnements abgeschlossen ist, ist die Schaltfläche **Return to Amazon EKS Console** (Zurück zur Amazon-EKS-Konsole) nicht mehr ausgegraut. Wählen Sie die Schaltfläche aus, um zur Registerkarte **Add-ons** (Add-Ons) der Amazon-EKS-Konsole für Ihren Cluster zurückzukehren.

   1. 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)
<a name="create_add_on_shared_aws_cli"></a>

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 wie `yum``apt-get`, oder Homebrew für macOS liegen oft mehrere Versionen hinter der neuesten Version der AWS CLI. Informationen zur Installation der neuesten Version finden Sie unter [Installation](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-install.html) und [Schnellkonfiguration mit aws configure](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-quickstart.html#cli-configure-quickstart-config) 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 im * AWS CloudShell Benutzerhandbuch* unter [AWS CLI in Ihrem Home-Verzeichnis installieren](https://docs.aws.amazon.com/cloudshell/latest/userguide/vm-specs.html#install-cli-software).

1. 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 für Add-Ons sehen, die über den AWS Marketplace erhältlich sind. Ersetzen Sie *1.35* durch die Version Ihres Clusters.

   ```
   aws eks describe-addon-versions --kubernetes-version 1.35 \
       --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 mit `aws-marketplace` in der `Owner`-Spalte ist möglicherweise ein Abonnement erforderlich, bevor Sie sie installieren können. Sie können die URL besuchen, um mehr über das Add-On zu erfahren und es zu abonnieren.

1. Sie können anzeigen, welche Versionen für jedes Add-On verfügbar sind. Ersetzen Sie *1.35* durch die Version Ihres Clusters und *vpc-cni* durch den Namen eines Add-Ons, das im vorherigen Schritt zurückgegeben wurde.

   ```
   aws eks describe-addon-versions --kubernetes-version 1.35 --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.

1. (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 standardmäßiges JSON-Schema.

   Hier ist ein Beispiel für gültige Konfigurationswerte im JSON-Format, die mit dem obigen Schema funktionieren.

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

   Hier ist ein Beispiel für gültige Konfigurationswerte im YAML-Format, die mit dem obigen Schema funktionieren.

   ```
     resources:
       limits:
         cpu: 100m
   ```

1. Stellen Sie fest, ob das Add-On IAM-Berechtigungen erfordert. In diesem Fall müssen Sie (1) festlegen, ob Sie EKS Pod Identity oder IAM-Rollen für Servicekonten (IRSA) verwenden möchten, (2) die ARN der IAM-Rolle bestimmen, die mit dem Add-On verwendet werden soll, und (3) den Namen des Kubernetes-Servicekontos festlegen, das vom Add-On verwendet wird. Weitere Informationen finden Sie unter [Abrufen von IAM-Informationen zu einem Amazon-EKS-Add-On](retreive-iam-info.md).
   + Amazon EKS empfiehlt die Verwendung von EKS Pod Identities, sofern das Add-On dies unterstützt. Dies erfordert, dass der [Pod Identity Agent auf Ihrem Cluster installiert ist](pod-identities.md). Weitere Informationen zur Verwendung von Pod Identities mit Add-Ons finden Sie unter [IAM-Rollen für Amazon-EKS-Add-Ons](add-ons-iam.md).
   + Wenn das Add-On oder Ihr Cluster nicht für EKS Pod Identities eingerichtet ist, verwenden Sie IRSA. [Bestätigen Sie, dass IRSA auf Ihrem Cluster eingerichtet ist. ](iam-roles-for-service-accounts.md) 
   +  [Überprüfen Sie die Dokumentation zu Amazon-EKS-Add-Ons, um festzustellen, ob das Add-On IAM-Berechtigungen und den Namen des zugehörigen Kubernetes-Servicekontos erfordert. ](eks-add-ons.md) 

     1. Erstellen Sie ein Amazon-EKS-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 Sie *my-cluster* mit dem Namen Ihres Clusters.
   + Ersetzen Sie *vpc-cni* durch einen Add-On-Namen, der in der Ausgabe des vorherigen Schritts zurückgegeben wurde, den Sie erstellen möchten.
   + Ersetzen Sie *version-number* durch die in der Ausgabe des vorherigen Schritts zurückgegebene Version, die Sie verwenden möchten.
   + Wenn Sie das Add-On in einem benutzerdefinierten Kubernetes-Namespace installieren möchten, fügen Sie die `--namespace-config 'namespace=<my-namespace>`-Option hinzu. Diese Option ist nur für AWS Community-Add-Ons verfügbar. Weitere Informationen finden Sie unter [Benutzerdefinierter Namespace für Add-Ons](eks-add-ons.md#custom-namespace). 
   + Wenn für das Add-on keine IAM-Berechtigungen erforderlich sind, löschen Sie *<service-account-configuration>* es.
   + 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, *<service-account-configuration>* ersetzen Sie es durch die folgende Pod-Identitätszuordnung. Ersetzen Sie es *<service-account-name>* durch den Namen des Dienstkontos, der vom Add-on verwendet wird. Durch *<role-arn>* den ARN einer IAM-Rolle ersetzen. Die Rolle muss über die von EKS Pod Identities geforderte Vertrauensrichtlinie verfügen.

       ```
       --pod-identity-associations 'serviceAccount=<service-account-name>,roleArn=<role-arn>'
       ```
     + Wenn für das Add-on (1) IAM-Berechtigungen erforderlich sind und (2) Ihr Cluster IRSA verwendet, *<service-account-configuration>* ersetzen Sie es durch die folgende IRSA-Konfiguration. *111122223333*Ersetzen Sie es durch Ihre Konto-ID und *role-name* den Namen einer vorhandenen 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 unter [AWS Add-Ons](workloads-add-ons-available-eks.md). Die Angabe einer Servicekonto-Rolle setzt voraus, 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 IAM-OIDC-Anbieter für Ihren Cluster](enable-iam-roles-for-service-accounts.md).

       ```
       --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 die Konfiguration eines vorhandenen selbstverwalteten Add-Ons überschreibt, entfernen Sie die *--resolve-conflicts OVERWRITE* Option. Wenn Sie die Option entfernen und das Amazon-EKS-Add-On die Konfiguration eines vorhandenen selbstverwalteten Add-Ons benötigt, scheitert die Erstellung des Amazon-EKS-Add-Ons mit einer Fehlermeldung, die Sie bei der Behebung des Konflikts unterstützt. Stellen Sie vor der Angabe dieser Option sicher, dass das Amazon-EKS-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 unter ` [create-addon](https://docs.aws.amazon.com/cli/latest/reference/eks/create-addon.html) ` in der Amazon-EKS-Befehlszeilenreferenz. Wenn für das von Ihnen erstellte Add-On `aws-marketplace` in der `Owner`-Spalte eines vorherigen Schritts aufgeführt ist, kann die Erstellung fehlschlagen und Sie erhalten eine Fehlermeldung ähnlich der folgenden.

     ```
     {
         "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 die 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.

# Aktualisierung eines Amazon-EKS-Add-Ons
<a name="updating-an-add-on"></a>

Amazon EKS aktualisiert das Add-On nicht automatisch, wenn neue Versionen veröffentlicht werden oder nachdem Sie Ihren Cluster auf eine neue Kubernetes-Nebenversion aktualisiert haben. Um ein Add-On für einen vorhandenen Cluster zu aktualisieren, müssen Sie das Update initiieren. Nachdem Sie das Update initiiert haben, aktualisiert Amazon EKS das Add-On für Sie. Lesen Sie vor dem Aktualisieren eines Add-Ons die aktuelle Dokumentation für das Add-On. Eine Liste der verfügbaren Add-Ons finden Sie unter [AWS Add-Ons](workloads-add-ons-available-eks.md). Wenn das Add-On eine IAM-Rolle erfordert, finden Sie in den Details zum jeweiligen Add-On unter [Verfügbare Amazon-EKS-Add-Ons von AWS](workloads-add-ons-available-eks.md) Einzelheiten zum Erstellen der Rolle.

## Voraussetzungen
<a name="updating-an-add-on-prereq"></a>

Führen Sie Folgendes aus, bevor Sie ein Add-On erstellen:
+ Überprüfen Sie, ob Ihr Add-On eine IAM-Rolle erfordert. Weitere Informationen finden Sie unter [Amazon-EKS-Add-ons](eks-add-ons.md).
+ Stellen Sie sicher, dass die Amazon-EKS-Add-On-Version mit Ihrem Cluster kompatibel ist. Weitere Informationen finden Sie unter [Kompatibilität der Add-On-Version von Amazon EKS mit einem Cluster überprüfen](addon-compat.md).

## Verfahren
<a name="updating-an-add-on-procedure"></a>

Sie können ein Amazon EKS-Add-on mit `eksctl` AWS-Managementkonsole, der oder der AWS CLI aktualisieren.

## Add-On aktualisieren (eksctl)
<a name="_update_add_on_eksctl"></a>

1. Bestimmen Sie die aktuellen Add-Ons und Add-On-Versionen, die auf Ihrem Cluster installiert sind. Ersetzen Sie *my-cluster* mit dem Namen Ihres Clusters.

   ```
   eksctl get addon --cluster my-cluster
   ```

   Eine Beispielausgabe sieht wie folgt aus.

   ```
   NAME        VERSION              STATUS  ISSUES  IAMROLE  UPDATE AVAILABLE
   coredns     v1.8.7-eksbuild.2    ACTIVE  0
   kube-proxy  v1.23.7-eksbuild.1   ACTIVE  0                v1.23.8-eksbuild.2
   vpc-cni     v1.10.4-eksbuild.1   ACTIVE  0                v1.12.0-eksbuild.1,v1.11.4-eksbuild.1,v1.11.3-eksbuild.1,v1.11.2-eksbuild.1,v1.11.0-eksbuild.1
   ```

   IIhre Ausgabe sieht möglicherweise anders aus, je nachdem, welche Add-Ons und Versionen Sie auf Ihrem Cluster haben. Sie können sehen, dass in der vorherigen Beispielausgabe für zwei vorhandene Add-Ons auf dem Cluster neuere Versionen in der `UPDATE AVAILABLE`-Spalte verfügbar sind.

1. Aktualisieren Sie das Add-On.

   1. Kopieren Sie den folgenden Befehl auf Ihr Gerät. Nehmen Sie nach Bedarf die folgenden Änderungen am Befehl vor:
      + Ersetzen Sie *my-cluster* mit dem Namen Ihres Clusters.
      + *region-code*Ersetzen Sie es durch die AWS Region, in der sich Ihr Cluster befindet.
      + Ersetzen Sie *vpc-cni* durch den Namen eines Add-Ons, das in der Ausgabe des vorherigen Schritts zurückgegeben wurde, das Sie aktualisieren möchten.
      + Wenn Sie eine ältere Version als die neueste verfügbare Version aktualisieren möchten, dann ersetzen Sie *latest* durch die Versionsnummer, die in der Ausgabe des vorherigen Schritts zurückgegeben wurde, die Sie verwenden möchten. Für einige Add-Ons gibt es empfohlene Versionen. Weitere Informationen finden Sie in der Dokumentation für das Add-On, das Sie aktualisieren. Eine Liste der Add-Ons finden Sie unter[AWS Add-Ons](workloads-add-ons-available-eks.md). **\$1** Wenn das Add-on ein Kubernetes-Dienstkonto und eine IAM-Rolle verwendet, *111122223333* ersetzen Sie es durch Ihre Konto-ID und *role-name* durch den Namen einer vorhandenen 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 unter [AWS Add-Ons](workloads-add-ons-available-eks.md). Die Angabe einer Servicekonto-Rolle setzt voraus, 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 IAM-OIDC-Anbieter für Ihren Cluster](enable-iam-roles-for-service-accounts.md).

        Wenn das Add-On kein Kubernetes-Servicekonto und keine IAM-Rolle verwendet, löschen Sie die Zeile `serviceAccountRoleARN: arn:aws: iam::111122223333:role/role-name `.
      + Die *preserve*-Option behält die vorhandenen Werte für das Add-On bei. Wenn Sie benutzerdefinierte Werte für Add-On-Einstellungen 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 auf `overwrite` ä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 auf `none` ändern, ändert Amazon EKS den Wert der Einstellungen nicht, aber die Aktualisierung schlägt möglicherweise fehl. Wenn das Update fehlschlägt, erhalten Sie eine Fehlermeldung, die Sie bei der Behebung des Konflikts unterstützt.

        ```
        cat >update-addon.yaml <<EOF
        apiVersion: eksctl.io/v1alpha5
        kind: ClusterConfig
        metadata:
          name: my-cluster
          region: region-code
        
        addons:
        - name: vpc-cni
          version: latest
          serviceAccountRoleARN: arn:aws: iam::111122223333:role/role-name
          resolveConflicts: preserve
        EOF
        ```

   1. Führen Sie den bearbeiteten Befehl aus, um die `update-addon.yaml`-Datei zu erstellen.

   1. Wenden Sie die Konfigurationsdatei auf Ihren Cluster an.

      ```
      eksctl update addon -f update-addon.yaml
      ```

   Weitere Informationen zum Aktualisieren von Add-Ons finden Sie unter [Aktualisierung von Add-Ons](https://eksctl.io/usage/addons/#updating-addons) in der `eksctl`-Dokumentation.

## Add-on aktualisieren (Konsole)AWS
<a name="update_add_on_shared_aws_console"></a>

1. Öffnen Sie die [Amazon-EKS-Konsole](https://console.aws.amazon.com/eks/home#/clusters).

1. Wählen Sie im linken Navigationsbereich **Cluster** aus.

1. Wählen Sie den Namen des Clusters, für den Sie das Add-On aktualisieren möchten.

1. Wählen Sie die Registerkarte **Add-ons**.

1. Wählen Sie das Add-On, das Sie aktualisieren möchten.

1. Wählen Sie **Bearbeiten** aus.

1. Gehen Sie auf der *name of addon* Seite „**Konfigurieren**“ wie folgt vor:

   1. Wählen Sie die **Version** aus, die Sie verwenden möchten. Das Add-On verfügt möglicherweise über eine empfohlene Version. Weitere Informationen finden Sie in der Dokumentation für das Add-On, das Sie aktualisieren. Eine Liste der Add-Ons finden Sie unter [AWS Add-Ons](workloads-add-ons-available-eks.md).

   1. Sie haben zwei Möglichkeiten, Rollen für Add-Ons zu konfigurieren: IAM-Rolle für EKS-Pod-Identitäten und IAM-Rollen für Servicekonten (IRSA). Befolgen Sie die entsprechenden nachfolgenden Schritte für die von Ihnen bevorzugte Option. Wenn für alle von Ihnen ausgewählten Add-Ons **Abonnement erforderlich** ist unter **Status**, wählen Sie **Weiter** aus. Für die Add-Ons, die kein **Abonnement erforderlich** unter **Status** haben, gehen Sie wie folgt vor:

      1. Für die **IAM-Rolle Pod Identity für Servicekonto** können Sie entweder eine vorhandene IAM-Rolle EKS Pod Identity verwenden oder mithilfe der Schaltfläche **Empfohlene Rolle erstellen** eine neue Rolle erstellen. In diesem Feld werden nur Optionen mit der entsprechenden Vertrauensrichtlinie bereitgestellt. Wenn keine Rolle zur Auswahl steht, verfügen Sie über keine vorhandene Rolle mit einer passenden Vertrauensrichtlinie. Um eine IAM-Rolle EKS Pod Identity für Servicekonten der ausgewählten Add-On 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 IAM-Rolle EKS Pod Identity erstellen möchten, die folgenden Schritte im IAM-Assistenten aus.
         + Im Schritt **Vertrauenswürdige Entität auswählen** sind die AWS Serviceoption für **EKS** und 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 IAM-Prinzipal pods.eks.amazonaws.com enthält, wie in [Vorteile von EKS-Pod-Identitäten](pod-identities.md#pod-id-benefits) beschrieben. Wählen Sie **Weiter** aus.
         + Im Schritt **Berechtigungen hinzufügen** wird die entsprechende verwaltete Richtlinie für die Rollenrichtlinie für das Add-On vorausgewählt. Beispielsweise wird für das Add-On für Amazon VPC CNI die Rolle mit der verwalteten Richtlinie `AmazonEKS_CNI_Policy` erstellt, wie in [Amazon-VPC-CNI-Plugin für Kubernetes](workloads-add-ons-available-eks.md#add-ons-vpc-cni) beschrieben. Wählen Sie **Weiter** aus.
         + Im Schritt **Name, überprüfen und erstellen** wird unter **Rollenname** automatisch der Standardrollenname für das Add-On eingetragen. **Für das **Amazon VPC CNI-Add-on** wird die Rolle beispielsweise mit dem Namen Amazon erstellt. EKSPod IdentityAmazon VPCCNIRole** Unter **Beschreibung** wird die Standardbeschreibung automatisch mit der entsprechenden Beschreibung für das Add-On eingetragen. Für das Amazon VPC CNI-Add-on wird die Rolle beispielsweise mit der Beschreibung **Erlaubt Pods, die im Amazon EKS-Cluster ausgeführt** werden, den Zugriff auf AWS Ressourcen erstellt. Zeigen Sie unter **Vertrauensrichtlinie** die ausgefüllte Vertrauensrichtlinie für das Add-On an. Wählen Sie **Rolle erstellen** aus.
**Anmerkung**  
Durch die Beibehaltung des Standardrollennamens kann EKS die Rolle für Add-Ons in neuen Clustern oder beim Hinzufügen von Add-Ons zu bestehenden Clustern vorab auswählen. Sie können diesen Namen weiterhin überschreiben, und die Rolle steht dann für das Add-On in Ihren Clustern zur Verfügung, muss jedoch manuell aus der Dropdown-Liste ausgewählt werden.

      1. Informationen zu Add-Ons, bei denen unter **Status** nicht die Option **Abonnement erforderlich** angezeigt wird und bei denen Sie Rollen mithilfe von IRSA konfigurieren möchten, finden Sie in der Dokumentation des Add-Ons, das Sie erstellen, um eine IAM-Richtlinie zu erstellen und sie einer Rolle zuzuordnen. Eine Liste der Add-Ons finden Sie unter [AWS Add-Ons](workloads-add-ons-available-eks.md). Die Auswahl einer IAM-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 IAM-OIDC-Anbieter für Ihren Cluster](enable-iam-roles-for-service-accounts.md).

   1. Erweitern Sie **Optionale Konfigurationseinstellungen**.

   1. Geben Sie unter **Konfigurationswerte** alle Add-On-spezifischen Konfigurationsinformationen ein. Weitere Informationen finden Sie in der Dokumentation für das Add-On, das Sie aktualisieren. Eine Liste der Add-Ons finden Sie unter [AWS Add-Ons](workloads-add-ons-available-eks.md) …​ Wählen Sie für die **Konfliktlösungsmethode** eine der Optionen aus. Wenn Sie benutzerdefinierte Werte für Add-On-Einstellungen festgelegt haben, empfehlen wir die Option **Preserve** (Beibehalten). Wenn Sie diese Option nicht auswählen, ü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 auf „Überschreiben“ ä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 auf „Keine“ ändern, ändert Amazon EKS den Wert keiner der Einstellungen, aber die Aktualisierung schlägt möglicherweise fehl. Wenn das Update fehlschlägt, erhalten Sie eine Fehlermeldung, die Sie bei der Behebung des Konflikts unterstützt.

1. Wählen Sie **Änderungen speichern ** aus.

## Add-on aktualisieren (AWS CLI)
<a name="update_add_on_shared_aws_cli"></a>

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 wie `yum``apt-get`, oder Homebrew für macOS liegen oft mehrere Versionen hinter der neuesten Version der AWS CLI. Informationen zur Installation der neuesten Version finden Sie unter [Installation](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-install.html) und [Schnellkonfiguration mit aws configure](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-quickstart.html#cli-configure-quickstart-config) 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 im * AWS CloudShell Benutzerhandbuch* unter [AWS CLI in Ihrem Home-Verzeichnis installieren](https://docs.aws.amazon.com/cloudshell/latest/userguide/vm-specs.html#install-cli-software).

1. Hier finden Sie eine Liste der installierten Add-Ons. Ersetzen Sie *my-cluster* mit dem Namen Ihres Clusters.

   ```
   aws eks list-addons --cluster-name my-cluster
   ```

   Eine Beispielausgabe sieht wie folgt aus.

   ```
   {
       "addons": [
           "coredns",
           "kube-proxy",
           "vpc-cni"
       ]
   }
   ```

1. Zeigen Sie die aktuelle Version des Add-Ons an, die Sie aktualisieren möchten. Ersetzen Sie *my-cluster* mit Ihrem Clusternamen und *vpc-cni* mit dem Namen des Add-Ons, das Sie aktualisieren möchten.

   ```
   aws eks describe-addon --cluster-name my-cluster --addon-name vpc-cni --query "addon.addonVersion" --output text
   ```

   Eine Beispielausgabe sieht wie folgt aus.

   ```
   v1.10.4-eksbuild.1
   ```

1. Bestimmen Sie, welche Versionen des Add-Ons für die Version Ihres Clusters verfügbar sind. *1.35*Ersetzen Sie es durch die Version Ihres Clusters und *vpc-cni* durch den Namen des Add-ons, das Sie aktualisieren möchten.

   ```
   aws eks describe-addon-versions --kubernetes-version 1.35 --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.

1. Aktualisieren Sie Ihr Add-on. 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. Weitere Informationen zu diesem Befehl finden Sie unter [update-addon](https://docs.aws.amazon.com/cli/latest/reference/eks/update-addon.html) in der Amazon-EKS-Befehlszeilenreferenz.
   + Ersetzen Sie *my-cluster* mit dem Namen Ihres Clusters.
   + Ersetzen Sie *vpc-cni* durch den Namen des Add-Ons, das Sie aktualisieren möchten und das in der Ausgabe eines vorherigen Schritts zurückgegeben wurde.
   + Ersetzen Sie *version-number* durch die in der Ausgabe des vorherigen Schritts zurückgegebene Version, auf die Sie aktualisieren möchten. Für einige Add-Ons gibt es empfohlene Versionen. Weitere Informationen finden Sie in der Dokumentation für das Add-On, das Sie aktualisieren. Eine Liste der Add-Ons finden Sie unter[AWS Add-Ons](workloads-add-ons-available-eks.md). **\$1** Wenn das Add-on ein Kubernetes-Dienstkonto und eine IAM-Rolle verwendet, *111122223333* ersetzen Sie es durch Ihre Konto-ID und *role-name* durch den Namen einer vorhandenen 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 unter [AWS Add-Ons](workloads-add-ons-available-eks.md). Die Angabe einer Servicekonto-Rolle setzt voraus, 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 IAM-OIDC-Anbieter für Ihren Cluster](enable-iam-roles-for-service-accounts.md).

     Wenn das Add-On kein Kubernetes-Servicekonto und keine IAM-Rolle verwendet, löschen Sie die Zeile `serviceAccountRoleARN: arn:aws: iam::111122223333:role/role-name `.
   + Die `--resolve-conflicts PRESERVE`-Option behält die vorhandenen Werte für das Add-On bei. Wenn Sie benutzerdefinierte Werte für Add-On-Einstellungen 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 auf `OVERWRITE` ä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 auf `NONE` ändern, ändert Amazon EKS den Wert der Einstellungen nicht, aber die Aktualisierung 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 die gesamte benutzerdefinierte Konfiguration entfernen möchten, führen Sie das Update mit der *--configuration-values '\$1\$1'*-Option durch. Dadurch werden alle benutzerdefinierten Konfigurationen auf die Standardwerte zurückgesetzt. Wenn Sie Ihre benutzerdefinierte Konfiguration nicht ändern möchten, geben Sie das Kennzeichen nicht an. *--configuration-values* Wenn Sie eine benutzerdefinierte Konfiguration anpassen möchten, ersetzen Sie *\$1\$1* durch die neuen Parameter.

     ```
     aws eks update-addon --cluster-name my-cluster --addon-name vpc-cni --addon-version version-number \
         --service-account-role-arn arn:aws: iam::111122223333:role/role-name --configuration-values '{}' --resolve-conflicts PRESERVE
     ```

1. Überprüfen Sie den Status des Updates. *my-cluster*Ersetzen Sie es durch den Namen Ihres Clusters und *vpc-cni* durch den Namen des Add-ons, das Sie aktualisieren.

   ```
   aws eks describe-addon --cluster-name my-cluster --addon-name vpc-cni
   ```

   Eine Beispielausgabe sieht wie folgt aus.

   ```
   {
       "addon": {
           "addonName": "vpc-cni",
           "clusterName": "my-cluster",
           "status": "UPDATING",
       }
   }
   ```

   Das Update ist abgeschlossen, wenn der Status `ACTIVE` ist.

# Kompatibilität der Add-On-Version von Amazon EKS mit einem Cluster überprüfen
<a name="addon-compat"></a>

Bevor Sie ein Amazon-EKS-Add-On erstellen, müssen Sie sicherstellen, dass die Version des Amazon-EKS-Add-Ons mit Ihrem Cluster kompatibel ist.

Verwenden Sie die [describe-addon-versions API](https://docs.aws.amazon.com/eks/latest/APIReference/API_DescribeAddonVersions.html), um die verfügbaren Versionen von EKS-Add-Ons aufzulisten und aufzulisten, welche Kubernetes-Versionen jede Addon-Version unterstützt.

1. Stellen Sie sicher, dass die AWS CLI installiert ist und mit ihr funktioniert`aws sts get-caller-identity`. Wenn dieser Befehl nicht funktioniert, erfahren Sie, wie [Sie mit der AWS CLI beginnen können.](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-getting-started.html) 

1. Bestimmen Sie den Namen des Add-Ons, für das Sie Informationen zur Versionskompatibilität abrufen möchten, z. B. `amazon-cloudwatch-observability`.

1. Bestimmen Sie die Kubernetes-Version Ihres Clusters, z. B. `1.35`.

1. Verwenden Sie die AWS CLI, um die Addon-Versionen abzurufen, die mit der Kubernetes-Version Ihres Clusters kompatibel sind.

   ```
   aws eks describe-addon-versions --addon-name amazon-cloudwatch-observability --kubernetes-version 1.35
   ```

   Eine Beispielausgabe sieht wie folgt aus.

   ```
   {
       "addons": [
           {
               "addonName": "amazon-cloudwatch-observability",
               "type": "observability",
               "addonVersions": [
                   {
                       "addonVersion": "vX.X.X-eksbuild.X",
                       "architecture": [
                           "amd64",
                           "arm64"
                       ],
                       "computeTypes": [
                           "ec2",
                           "auto",
                           "hybrid"
                       ],
                       "compatibilities": [
                           {
                               "clusterVersion": "1.35",
                               "platformVersions": [
                                   "*"
                               ],
                               "defaultVersion": true
                           }
                       ],
                   }
               ]
           }
       ]
   }
   ```

   Diese Ausgabe zeigt, dass die Add-On-Version `vX.X.X-eksbuild.X` mit der Kubernetes-Clusterversion `1.35` kompatibel ist.

## Kompatibilität von Add-Ons mit Datenverarbeitungstypen
<a name="_add_on_compatibility_with_compute_types"></a>

Das `computeTypes`-Feld in der Ausgabe `describe-addon-versions` gibt die Kompatibilität eines Add-Ons mit EKS Auto Mode verwaltete Knoten oder Hybridknoten an. Die markierten Add-Ons `auto` funktionieren mit der cloudbasierten, AWS verwalteten Infrastruktur von EKS Auto Mode, wohingegen die markierten Add-Ons auf lokalen Knoten ausgeführt `hybrid` werden können, die mit der EKS-Cloud-Steuerebene verbunden sind.

Weitere Informationen finden Sie unter [Überlegungen zu Amazon EKS Auto Mode](eks-add-ons.md#addon-consider-auto).

# Entfernung eines Amazon-EKS-Add-Ons aus einem Cluster
<a name="removing-an-add-on"></a>

Sie können ein Amazon EKS-Add-on mithilfe `eksctl` der oder der AWS-Managementkonsole AWS CLI aus Ihrem Cluster entfernen.

Wenn Sie ein Amazon-EKS-Add-On aus einem Cluster entfernen:
+ Es gibt keine Ausfallzeit für die Funktionalität, die das Add-On bereitstellt.
+ Wenn Sie IAM-Rollen für Servicekonten (IRSA) verwenden und das Add-On einer IAM-Rolle zugeordnet ist, wird die IAM-Rolle nicht entfernt.
+ Wenn Sie Pod Identities verwenden, werden alle Pod-Identity-Zuordnungen, die dem Add-On gehören, entfernt. Wenn Sie die `--preserve` Option für die AWS CLI angeben, werden die Verknüpfungen beibehalten.
+ Amazon EKS beendet die Verwaltung der Einstellungen für das Add-On.
+ Die Konsole benachrichtigt Sie nicht mehr, wenn neue Versionen verfügbar sind.
+ Sie können das Add-on nicht mit irgendwelchen AWS Tools oder aktualisieren APIs.
+ Sie können die Add-On-Software auf Ihrem Cluster beibehalten, damit Sie sie selbst verwalten können, oder Sie können die Add-On-Software aus Ihrem Cluster entfernen. Sie sollten die Add-On-Software nur dann aus Ihrem Cluster entfernen, wenn keine Ressourcen in Ihrem Cluster von der Funktionalität abhängen, die das Add-On bereitstellt.

## Voraussetzungen
<a name="removing-an-add-on-prereq"></a>

Führen Sie Folgendes aus, bevor Sie ein Add-On erstellen:
+ Ein vorhandener Amazon-EKS-Cluster. Informationen zum Bereitstellen finden Sie unter [Erste Schritte mit Amazon EKS](getting-started.md).
+ Überprüfen Sie, ob Ihr Add-On eine IAM-Rolle erfordert. Die Ausgabe des obigen Befehls sieht in etwa folgendermaßen aus (JSON format).
+ Version `0.215.0` oder höher des `eksctl`-Befehlszeilen-Tools, das auf Ihrem Computer oder in der AWS CloudShell installiert ist. Informationen zum Installieren und Aktualisieren von `eksctl` finden Sie in der Dokumentation zu `eksctl` unter [Installation](https://eksctl.io/installation).

## Verfahren
<a name="removing-an-add-on-procedure"></a>

Beim Entfernen eines Amazon-EKS-Add-Ons stehen Ihnen zwei Optionen zur Verfügung:
+  **Beibehalten von Add-on-Software auf Ihrem Cluster** – Diese Option entfernt die Amazon-EKS-Verwaltung aller Einstellungen. Amazon EKS wird außerdem die Möglichkeit aufgehoben, Sie über Updates zu informieren und das Amazon-EKS-Add-on automatisch zu aktualisieren, nachdem Sie ein Update eingeleitet haben. Es behält jedoch die Add-on-Software auf Ihrem Cluster bei. Diese Option macht das Add-on zu einem selbstverwalteten Add-on statt einem Amazon-EKS-Add-on. Bei dieser Option gibt es keine Ausfallzeiten für das Add-On.
+  **Entfernen Sie die Add-on-Software vollständig aus Ihrem Cluster** – Wir empfehlen, dass Sie das Amazon-EKS-Add-on nur aus Ihrem Cluster entfernen, wenn auf Ihrem Cluster keine Ressourcen vorhanden sind, die davon abhängig sind.

Sie können ein Amazon EKS-Add-on mithilfe `eksctl` der AWS-Managementkonsole oder der AWS CLI entfernen.

### Add-on entfernen (eksctl)
<a name="_remove_add_on_eksctl"></a>

1. Bestimmen Sie die aktuell auf Ihrem Cluster installierten Add-Ons. Ersetzen Sie *my-cluster* mit dem Namen Ihres Clusters.

   ```
   eksctl get addon --cluster my-cluster
   ```

   Eine Beispielausgabe sieht wie folgt aus.

   ```
   NAME        VERSION              STATUS  ISSUES  IAMROLE  UPDATE AVAILABLE
   coredns     v1.8.7-eksbuild.2    ACTIVE  0
   kube-proxy  v1.23.7-eksbuild.1   ACTIVE  0
   vpc-cni     v1.10.4-eksbuild.1   ACTIVE  0
   [...]
   ```

   IIhre Ausgabe sieht möglicherweise anders aus, je nachdem, welche Add-Ons und Versionen Sie auf Ihrem Cluster haben.

1. Entfernen Sie das Add-On. Ersetzen Sie *my-cluster* mit dem Namen Ihres Clusters und *name-of-add-on* mit dem Namen des Add-Ons, das in der Ausgabe des vorherigen Schritts zurückgegeben wurde. Wenn Sie die *--preserve* Option entfernen, wird die Zusatzsoftware nicht mehr von Amazon EKS verwaltet, sondern auch aus Ihrem Cluster gelöscht.

   ```
   eksctl delete addon --cluster my-cluster --name name-of-addon --preserve
   ```

   Weitere Informationen zum Entfernen von Add-Ons finden Sie unter [Entfernung von Add-Ons](https://eksctl.io/usage/addons/#deleting-addons) in der `eksctl`-Dokumentation.

### Add-on entfernen (AWS Konsole)
<a name="remove_add_on_shared_aws_console"></a>

1. Öffnen Sie die [Amazon-EKS-Konsole](https://console.aws.amazon.com/eks/home#/clusters).

1. Wählen Sie im linken Navigationsbereich **Cluster** aus.

1. Wählen Sie den Namen des Clusters aus, für den Sie das Amazon-EKS-Add-On entfernen möchten.

1. Wählen Sie die Registerkarte **Add-ons**.

1. Wählen Sie das Add-On aus, das Sie entfernen möchten.

1. Wählen Sie **Remove (Entfernen)** aus.

1. Gehen **Sie im *name of addon* Bestätigungsdialogfeld Entfernen:** wie folgt vor:

   1. Wenn Amazon EKS die Verwaltung von Einstellungen für das Add-on einstellen soll, wählen Sie **Auf dem Cluster beibehalten**. Tun Sie dies, wenn Sie die Add-on-Software auf Ihrem Cluster behalten möchten. Auf diese Weise können Sie alle Einstellungen des Add-ons selbst verwalten.

   1. Geben Sie den Add-On-Namen ein.

   1. Wählen Sie **Remove (Entfernen)** aus.

### Add-on entfernen (AWS CLI)
<a name="remove_add_on_shared_aws_cli"></a>

1. Sie benötigen eine Version `0.215.0` oder eine neuere Version des `eksctl` Befehlszeilentools, das auf Ihrem Gerät installiert ist oder AWS CloudShell. Informationen zum Installieren und Aktualisieren von `eksctl` finden Sie in der Dokumentation zu `eksctl` unter [Installation](https://eksctl.io/installation).

1. Hier finden Sie eine Liste der installierten Add-Ons. Ersetzen Sie *my-cluster* mit dem Namen Ihres Clusters.

   ```
   aws eks list-addons --cluster-name my-cluster
   ```

   Eine Beispielausgabe sieht wie folgt aus.

   ```
   {
       "addons": [
           "coredns",
           "kube-proxy",
           "vpc-cni",
           "name-of-addon"
       ]
   }
   ```

1. Entfernen Sie das installierte Add-On. Ersetzen Sie *my-cluster* durch den Namen Ihres Clusters und *name-of-add-on* durch den Namen des Add-Ons, das Sie entfernen. Durch das Entfernen *--preserve* wird die Zusatzsoftware aus Ihrem Cluster gelöscht.

   ```
   aws eks delete-addon --cluster-name my-cluster --addon-name name-of-addon --preserve
   ```

   Die gekürzte Beispielausgabe lautet wie folgt.

   ```
   {
       "addon": {
           "addonName": "name-of-add-on",
           "clusterName": "my-cluster",
           "status": "DELETING",
       }
   }
   ```

1. Überprüfen Sie den Status der Entfernung. *my-cluster*Ersetzen Sie es durch den Namen Ihres Clusters und *name-of-addon* durch den Namen des Add-ons, das Sie entfernen möchten.

   ```
   aws eks describe-addon --cluster-name my-cluster --addon-name name-of-addon
   ```

   Nachdem das Add-On entfernt wurde, sieht die Beispielausgabe wie folgt aus.

   ```
   An error occurred (ResourceNotFoundException) when calling the DescribeAddon operation: No addon: name-of-addon found in cluster: my-cluster
   ```

# IAM-Rollen für Amazon-EKS-Add-Ons
<a name="add-ons-iam"></a>

Bestimmte Amazon-EKS-Add-Ons erfordern IAM-Rollen und -Berechtigungen, um AWS-APIs aufzurufen. Das Add-On für Amazon-VPC-CNI ruft beispielsweise bestimmte AWS-APIs auf, um die Netzwerkressourcen in Ihrem Konto zu konfigurieren. Für diese Add-Ons muss über IAM eine Berechtigung gewährt werden. Genauer gesagt muss das Servicekonto des Pods, in dem das Add-On ausgeführt wird, einer IAM-Rolle mit einer bestimmten IAM-Richtlinie zugeordnet werden.

Die empfohlene Methode zum Gewähren von AWS-Berechtigungen für Cluster-Workloads ist die Verwendung des Amazon-EKS-Features für Pod Identities. Sie können eine **Pod-Identity-Zuordnung** verwenden, um das Servicekonto eines Add-Ons einer IAM-Rolle zuzuordnen. Wenn ein Pod ein Servicekonto mit einer Zuordnung verwendet, legt Amazon EKS Umgebungsvariablen in den Containern des Pods fest. Die Umgebungsvariablen konfigurieren die AWS-SDKs, einschließlich der AWS-CLI, für die Verwendung der Anmeldeinformationen für EKS Pod Identity. Weitere Informationen finden Sie unter [Erfahren Sie, wie EKS Pod Identity Pods Zugriff auf AWS-Services gewährt](pod-identities.md). 

Amazon-EKS-Add-Ons können Sie bei der Verwaltung des Lebenszyklus von Pod-Identity-Zuordnungen unterstützen, die dem Add-On entsprechen. Beispielsweise können Sie ein Amazon-EKS-Add-On und die erforderliche Pod-Identity-Zuordnung mit einem einzigen API-Aufruf erstellen oder aktualisieren. Amazon EKS stellt auch eine API zum Abrufen empfohlener IAM-Richtlinien zur Verfügung.

1. Überprüfen Sie, ob der [Amazon EKS Pod Identity Agent](pod-id-agent-setup.md) in Ihrem Cluster eingerichtet ist.

1. Ermitteln Sie mithilfe der `describe-addon-versions` AWS-CLI-Operation, ob das Add-On, das Sie installieren möchten, IAM-Berechtigungen erfordert. Wenn es sich beim `requiresIamPermissions`-Flag um `true` handelt, sollten Sie die `describe-addon-configurations`-Operation verwenden, um die vom Add-On benötigten Berechtigungen zu ermitteln. Die Antwort enthält eine Liste mit vorgeschlagenen verwalteten IAM-Richtlinien.

1. Rufen Sie den Namen des Kubernetes- Servicekontos und die IAM-Richtlinie mithilfe der `describe-addon-configuration`-CLI-Operation ab. Bewerten Sie den Umfang der vorgeschlagenen Richtlinie anhand Ihrer Sicherheitsanforderungen.

1. Erstellen Sie eine IAM-Rolle mithilfe der vorgeschlagenen Berechtigungsrichtlinie und der von Pod Identity benötigten Vertrauensrichtlinie. Weitere Informationen finden Sie unter [Erstellen Sie eine Pod Identity-Zuordnung (AWS Konsole)](pod-id-association.md#pod-id-association-create).

1. Erstellen oder aktualisieren Sie ein Amazon-EKS-Add-On mithilfe der CLI. Geben Sie mindestens eine Pod-Identity-Zuordnung an. Eine Pod-Identity-Zuordnung besteht aus dem Namen eines Kubernetes-Servicekontos und der ARN der IAM-Rolle.
   + Pod-Identitätszuordnungen, die mithilfe der Add-On-APIs erstellt wurden, sind Eigentum des jeweiligen Add-Ons. Wenn Sie das Add-On löschen, wird auch die Pod-Identity-Zuordnung gelöscht. Sie können diese kaskadenartige Löschung verhindern, indem Sie beim Löschen eines Add-Ons über die AWS-CLI oder API die entsprechende `preserve`-Option verwenden. Bei Bedarf können Sie die Pod-Identity-Zuordnung auch direkt aktualisieren oder löschen. Add-Ons können keine vorhandenen Pod-Identity-Zuordnungen übernehmen. Sie müssen die vorhandene Zuordnung löschen und sie mithilfe eines Vorgangs zu Add-On-Erstellung oder -Aktualisierung neu erstellen.
   + Amazon EKS empfiehlt die Verwendung von Pod-Identity-Zuordnungen zur Verwaltung von IAM-Berechtigungen für Add-Ons. Die bisherige Methode, IAM-Rollen für Servicekonten (IRSA), wird weiterhin unterstützt. Sie können sowohl eine IRSA-`serviceAccountRoleArn` als auch eine Pod-Identity-Zuordnung für ein Add-On festlegen. Wenn der EKS-Pod-Identity-Agent auf dem Cluster installiert ist, wird die `serviceAccountRoleArn` ignoriert, und EKS verwendet die bereitgestellte Pod-Identity-Zuordnung. Wenn die Pod Identity nicht aktiviert ist, wird die `serviceAccountRoleArn` verwendet.
   + Wenn Sie die Pod-Identity-Zuordnungen für ein vorhandenes Add-On aktualisieren, initiiert Amazon EKS einen fortlaufenden Neustart der Add-On-Pods.

# Abrufen von IAM-Informationen zu einem Amazon-EKS-Add-On
<a name="retreive-iam-info"></a>

Bevor Sie ein Add-On erstellen, ermitteln Sie mithilfe der AWS-CLI:
+ Ob das Add-On IAM-Berechtigungen benötigt
+ Die empfohlene zu verwendende IAM-Richtlinie

## Verfahren
<a name="_procedure"></a>

1. Bestimmen Sie den Namen des Add-ons, das Sie installieren möchten, und die Kubernetes-Version Ihres Clusters. Weitere Informationen zu Add-ons finden Sie unter [Amazon-EKS-Add-ons](eks-add-ons.md).

1. Verwenden Sie die AWS-CLI, um zu bestimmen, ob das AddO-n IAM-Berechtigungen erfordert.

   ```
   aws eks describe-addon-versions \
   --addon-name <addon-name> \
   --kubernetes-version <kubernetes-version>
   ```

   Zum Beispiel:

   ```
   aws eks describe-addon-versions \
   --addon-name aws-ebs-csi-driver \
   --kubernetes-version 1.30
   ```

   Sehen Sie sich die folgende Beispielausgabe an. Beachten Sie, dass `requiresIamPermissions` `true` ist und die Standard-Add-On-Version darstellt. Sie müssen die Add-On-Version angeben, wenn Sie die empfohlene IAM-Richtlinie abrufen.

   ```
   {
       "addons": [
           {
               "addonName": "aws-ebs-csi-driver",
               "type": "storage",
               "addonVersions": [
                   {
                       "addonVersion": "v1.31.0-eksbuild.1",
                       "architecture": [
                           "amd64",
                           "arm64"
                       ],
                       "compatibilities": [
                           {
                               "clusterVersion": "1.30",
                               "platformVersions": [
                                   "*"
                               ],
                               "defaultVersion": true
                           }
                       ],
                       "requiresConfiguration": false,
                       "requiresIamPermissions": true
                   },
   [...]
   ```

1. Wenn das Add-On IAM-Berechtigungen erfordert, verwenden Sie die AWS-CLI, um eine empfohlene IAM-Richtlinie abzurufen.

   ```
   aws eks describe-addon-configuration \
   --query podIdentityConfiguration \
   --addon-name <addon-name> \
   --addon-version <addon-version>
   ```

   Zum Beispiel:

   ```
   aws eks describe-addon-configuration \
   --query podIdentityConfiguration \
   --addon-name aws-ebs-csi-driver \
   --addon-version v1.31.0-eksbuild.1
   ```

   Überprüfen Sie die folgende Ausgabe. Beachten Sie den `recommendedManagedPolicies`.

   ```
   [
       {
           "serviceAccount": "ebs-csi-controller-sa",
           "recommendedManagedPolicies": [
               "arn:aws:iam::aws:policy/service-role/AmazonEBSCSIDriverPolicy"
           ]
       }
   ]
   ```

1. Erstellen Sie eine IAM-Rolle und fügen Sie die empfohlene verwaltete Richtlinie an. Alternativ können Sie die verwaltete Richtlinie überprüfen und die Berechtigungen entsprechend einschränken. Weitere Informationen finden Sie unter [Erstellen Sie eine Pod Identity-Zuordnung (AWS Konsole)](pod-id-association.md#pod-id-association-create).

## Unterstützungsreferenz für Pod Identity
<a name="pod-id-add-on-versions"></a>

Die folgende Tabelle gibt an, ob bestimmte Amazon-EKS-Add-Ons EKS Pod Identity unterstützen.


| Add-On-Name | Unterstützung für Pod Identity | Erforderliche Mindestversion | 
| --- | --- | --- | 
|   [Amazon-EBS-CSI-Treiber](workloads-add-ons-available-eks.md#add-ons-aws-ebs-csi-driver)   |  Ja  |  v1.26.0-eksbuild.1  | 
|   [Amazon VPC CNI](workloads-add-ons-available-eks.md#add-ons-vpc-cni)   |  Ja  |  v1.15.5-eksbuild.1  | 
|   [Amazon EFS-CSI-Treiber](workloads-add-ons-available-eks.md#add-ons-aws-efs-csi-driver)   |  Ja  |  v2.0.5-eksbuild.1  | 
|   [AWS Distro for OpenTelemetry](workloads-add-ons-available-eks.md#add-ons-adot)   |  Ja  |  v0.94.1-eksbuild.1  | 
|   [CSI-Treiber für Mountpoint für Amazon S3](workloads-add-ons-available-eks.md#mountpoint-for-s3-add-on)   |  Nein  |  N/A  | 
|   [Amazon-CloudWatch-Beobachtbarkeits-Agent](workloads-add-ons-available-eks.md#amazon-cloudwatch-observability)   |  Ja  |  v3.1.0-eksbuild.1  | 

Diese Tabelle wurde zuletzt am 28. Oktober 2024 aktualisiert.

# Verwendung von Pod Identities zum Zuweisen einer IAM-Rolle zu einem Amazon-EKS-Add-On
<a name="update-addon-role"></a>

Bestimmte Amazon-EKS-Add-Ons erfordern IAM-Rollen und -Berechtigungen. Bevor Sie ein Amazon-EKS-Add-On aktualisieren, um eine Pod-Identity-Zuordnung zu verwenden, überprüfen Sie die zu verwendende Rolle und Richtlinie. Weitere Informationen finden Sie unter [Abrufen von IAM-Informationen zu einem Amazon-EKS-Add-On](retreive-iam-info.md).

1. Bestimmen Sie:
   +  `cluster-name` – Den Namen des Clusters, auf dem das Add-On installiert werden soll.
   +  `addon-name` – Den Namen des zu installierenden Add-ons.
   +  `service-account-name` – Den Namen des vom Add-On verwendeten Kubernetes- Servicekontos.
   +  `iam-role-arn` – Die ARN einer IAM-Rolle mit ausreichenden Berechtigungen für das Add-On. Die Rolle muss über die erforderliche Vertrauensrichtlinie für die EKS Pod Identity verfügen. Weitere Informationen finden Sie unter [Erstellen Sie eine Pod Identity-Zuordnung (AWS Konsole)](pod-id-association.md#pod-id-association-create).

1. Aktualisieren Sie das Add-on mithilfe der AWS-CLI. Sie können beim Erstellen eines Add-Ons mit derselben `--pod-identity-assocations`-Syntax auch Pod-Identity-Zuordnungen angeben. Beachten Sie, dass beim Angeben von Pod-Identity-Zuordnungen beim Aktualisieren eines Add-Ons alle vorherigen Pod-Identity-Zuordnungen überschrieben werden.

   ```
   aws eks update-addon --cluster-name <cluster-name> \
   --addon-name <addon-name> \
   --pod-identity-associations 'serviceAccount=<service-account-name>,roleArn=<role-arn>'
   ```

   Zum Beispiel:

   ```
   aws eks update-addon --cluster-name mycluster \
   --addon-name aws-ebs-csi-driver \
   --pod-identity-associations 'serviceAccount=ebs-csi-controller-sa,roleArn=arn:aws:iam::123456789012:role/StorageDriver'
   ```

1. Überprüfen Sie, ob die Pod-Identity-Zuordnung erstellt wurde:

   ```
   aws eks list-pod-identity-associations --cluster-name <cluster-name>
   ```

   Wenn Sie erfolgreich waren, sollte die Ausgabe folgendermaßen oder ähnlich aussehen. Notieren Sie sich die OwnerARN des EKS-Add-Ons.

   ```
   {
       "associations": [
           {
               "clusterName": "mycluster",
               "namespace": "kube-system",
               "serviceAccount": "ebs-csi-controller-sa",
               "associationArn": "arn:aws:eks:us-west-2:123456789012:podidentityassociation/mycluster/a-4wvljrezsukshq1bv",
               "associationId": "a-4wvljrezsukshq1bv",
               "ownerArn": "arn:aws:eks:us-west-2:123456789012:addon/mycluster/aws-ebs-csi-driver/9cc7ce8c-2e15-b0a7-f311-426691cd8546"
           }
       ]
   }
   ```

# Entfernung von Pod-Identity-Zuordnungen aus einem Amazon-EKS-Add-On
<a name="remove-addon-role"></a>

Entfernen Sie die Pod-Identity-Zuordnungen aus einem Amazon-EKS-Add-On.

1. Bestimmen Sie:
   +  `cluster-name` – Den Namen des EKS-Clusters, auf dem das Add-On installiert werden soll.
   +  `addon-name` – Den Namen des zu installierenden Amazon-EKS-Add-Ons.

1. Aktualisieren Sie das Add-On, um ein leeres Array mit Pod-ldentity-Zuordnungen anzugeben.

   ```
   aws eks update-addon --cluster-name <cluster-name> \
   --addon-name <addon-name> \
   --pod-identity-associations "[]"
   ```

# Fehlerbehebung bei Pod Identities für EKS-Add-Ons
<a name="addon-id-troubleshoot"></a>

Wenn bei Ihren Add-Ons beim Ausführen von AWS-API-, SDK- oder CLI-Operationen Fehler auftreten, überprüfen Sie Folgendes:
+ Der Pod Identity Agent ist in Ihrem Cluster installiert.
  + Informationen zur Installation des Pod Identity Agent finden Sie unter [Einrichtung des Amazon-EKS-Pod-Identity-Agenten](pod-id-agent-setup.md).
+ Das Add-On verfügt über eine gültige Pod-Identity-Zuordnung.
  + Verwenden Sie die AWS-CLI, um die Zuordnungen für den vom AddO-n verwendeten Servicekonto-Namen abzurufen.

    ```
    aws eks list-pod-identity-associations --cluster-name <cluster-name>
    ```
+ Die IAM-Rolle verfügt über die erforderliche Vertrauensrichtlinie für Pod Identities.
  + Verwenden Sie die AWS-CLI, um die Vertrauensrichtlinie für ein Add-On abzurufen.

    ```
    aws iam get-role --role-name <role-name> --query Role.AssumeRolePolicyDocument
    ```
+ Die IAM-Rolle verfügt über die erforderlichen Berechtigungen für das Add-On.
  + Verwenden Sie AWS CloudTrail, um `AccessDenied` oder `UnauthorizedOperation`-Ereignisse zu überprüfen.
+ Der Name des Servicekontos in der Pod-Identity-Zuordnung entspricht dem vom Add-On verwendeten Namen des Servicekontos.
  + Informationen zu den verfügbaren Add-Ons finden Sie unter [AWS Add-Ons](workloads-add-ons-available-eks.md).
+ Konfiguration von MutatingWebhookConfiguration mit dem Namen `pod-identity-webhook` überprüfen 
  +  `admissionReviewVersions` des Webhooks muss `v1beta1` sein und ist mit `v1` nicht kompatibel.

# Felder für die Anpassung von Amazon-EKS-Add-Ons festlegen
<a name="kubernetes-field-management"></a>

Amazon-EKS-Add-ons werden in Ihrem Cluster unter Verwendung von bewährten Standardkonfigurationen installiert. Weitere Informationen zum Hinzufügen eines Amazon-EKS-Add-ons zu Ihrem Cluster finden Sie unter [Amazon-EKS-Add-ons](eks-add-ons.md).

Möglicherweise möchten Sie die Konfiguration eines Amazon-EKS-Add-ons anpassen, um erweiterte Funktionen zu aktivieren. Amazon EKS verwendet das serverseitige Feature Kubernetes, um die Verwaltung eines Add-Ons durch Amazon EKS zu ermöglichen, ohne Ihre Einstellungen zu überschreiben, die nicht von Amazon EKS verwaltet werden. Weitere Informationen dazu finden Sie unter [Serverseitiges Anwenden](https://kubernetes.io/docs/reference/using-api/server-side-apply/) in der Kubernetes-Dokumentation. Um dies zu erreichen, verwaltet Amazon EKS einen Mindestsatz von Feldern für jedes Add-on, das installiert wird. Sie können alle Felder problemlos ändern, die nicht von Amazon EKS oder einem anderen Prozess der Kubernetes-Steuerebene verwaltet werden, z. B. `kube-controller-manager`.

**Wichtig**  
Das Ändern eines von Amazon EKS verwalteten Felds verhindert, dass Amazon EKS das Add-on verwaltet und kann dazu führen, dass Ihre Änderungen überschrieben werden, wenn ein Add-on aktualisiert wird.

## Syntax für Feldmanagement
<a name="add-on-config-management-understanding-field-management"></a>

Wenn Sie Details für ein Kubernetes-Objekt anzeigen, werden sowohl verwaltete als auch nicht verwaltete Felder in der Ausgabe zurückgegeben. Verwaltete Felder können einer der folgenden Typen sein:
+  **Vollständig verwaltet** – Alle Schlüssel für das Feld werden von Amazon EKS verwaltet. Änderungen an einem beliebigen Wert verursachen einen Konflikt.
+  **Teilweise verwaltet** – Einige Schlüssel für das Feld werden von Amazon EKS verwaltet. Nur Änderungen an den Schlüsseln, die explizit von Amazon EKS verwaltet werden, verursachen einen Konflikt.

Beide Arten von Feldern sind gekennzeichnet mit `manager: eks`.

Jeder Schlüssel ist entweder ein `.`, welches das Feld darstellt, das immer einem leeren Satz zugeordnet wird, oder eine Zeichenfolge, die ein Unterfeld oder Element darstellt. Die Ausgabe für die Feldverwaltung besteht aus folgenden Angabetypen:
+  `f:name `, wobei *name* der Name eines Feldes in einer Liste ist.
+  `k:keys `, wo *keys* sich eine Karte der Felder eines Listenelements befindet.
+  `v:value `, wobei *value* der exakte JSON-formatierte Wert eines Listenelements ist.
+  `i:index `, wobei *index* die Position eines Elements in der Liste ist.

Die folgenden Ausgabeteile für das CoreDNS Add-on veranschaulichen die vorherigen Angaben:
+  **Vollständig verwaltete Felder** – Wenn ein verwaltetes Feld ein `f:` (Feld) festgelegt hat, aber keinen `k:` (Schlüssel), dann wird das gesamte Feld verwaltet. Änderungen an Werten in diesem Feld verursachen einen Konflikt.

  In der folgenden Ausgabe sehen Sie, dass der Container mit dem Namen `coredns` verwaltet von `eks`. Die`args`, `image` und `imagePullPolicy` Unterfelder werden auch verwaltet von `eks`. Änderungen an Werten in diesen Feldern verursachen einen Konflikt.

  ```
  [...]
  f:containers:
    k:{"name":"coredns"}:
    .: {}
    f:args: {}
    f:image: {}
    f:imagePullPolicy: {}
  [...]
  manager: eks
  [...]
  ```
+  **Teilweise verwaltete Felder** – Wenn für einen verwalteten Schlüssel ein Wert angegeben ist, werden die angegebenen Schlüssel für dieses Feld verwaltet. Das Ändern der angegebenen Schlüssel führt zu einem Konflikt.

  In der folgenden Ausgabe sehen Sie, dass `eks` die `config-volume` und `tmp` Volumes verwaltet, welche mit dem `name`-Schlüssel eingestellt wurden.

  ```
  [...]
  f:volumes:
    k:{"name":"config-volume"}:
      .: {}
      f:configMap:
        f:items: {}
        f:name: {}
      f:name: {}
    k:{"name":"tmp"}:
      .: {}
      f:name: {}
  [...]
  manager: eks
  [...]
  ```
+  **Hinzufügen von Schlüsseln zu teilweise verwalteten Feldern** – Wenn nur ein bestimmter Schlüsselwert verwaltet wird, können Sie sicher zusätzliche Schlüssel wie Argumente zu einem Feld hinzufügen, ohne einen Konflikt zu verursachen. Wenn Sie zusätzliche Schlüssel hinzufügen, stellen Sie sicher, dass das Feld nicht zuerst verwaltet wird. Das Hinzufügen oder Ändern eines verwalteten Werts verursacht einen Konflikt.

  In der folgenden Ausgabe sehen Sie, dass sowohl der Schlüssel `name` als auch das Feld `name` verwaltet werden. Das Hinzufügen oder Ändern eines Containernamens verursacht einen Konflikt mit diesem verwalteten Schlüssel.

  ```
  [...]
  f:containers:
    k:{"name":"coredns"}:
  [...]
      f:name: {}
  [...]
  manager: eks
  [...]
  ```

## Verfahren
<a name="view-field-management"></a>

Sie können `kubectl` verwenden, um zu sehen, welche Felder von Amazon EKS für ein Amazon EKS Add-on verwaltet werden.

Sie können alle Felder problemlos ändern, die nicht von Amazon EKS oder einem anderen Prozess der Kubernetes-Steuerebene verwaltet werden, z. B. `kube-controller-manager`.

1. Bestimmen Sie das Add-on, das Sie überprüfen möchten. Eine Übersicht aller in Ihrem Cluster DaemonSets bereitgestellten `deployments` und bereitgestellten Daten finden Sie unter[Kubernetes-Ressourcen anzeigen in der AWS-Managementkonsole](view-kubernetes-resources.md).

1. Führen Sie den folgenden Befehl aus, um die verwalteten Felder für ein Add-on anzuzeigen:

   ```
   kubectl get type/add-on-name -n add-on-namespace -o yaml
   ```

   Sie können beispielsweise die verwalteten Felder für das CoreDNS Add-on mit dem folgenden Befehl sehen.

   ```
   kubectl get deployment/coredns -n kube-system -o yaml
   ```

   Die Feldverwaltung wird im folgenden Abschnitt in der zurückgegebenen Ausgabe aufgeführt.

   ```
   [...]
   managedFields:
     - apiVersion: apps/v1
       fieldsType: FieldsV1
       fieldsV1:
   [...]
   ```
**Anmerkung**  
Wenn `managedFields` in der Ausgabe nicht angezeigt wird, fügen Sie dem Befehl `--show-managed-fields` hinzu, und führen Sie ihn erneut aus. Die Version von `kubectl`, die Sie verwenden, bestimmt, ob verwaltete Felder standardmäßig zurückgegeben werden.

## Nächste Schritte
<a name="view-field-management-next-steps"></a>

Passen Sie die Felder an, die nicht AWS Ihrem Add-on gehören.

# Validierung von Container-Image-Signaturen während der Bereitstellung
<a name="image-verification"></a>

Wenn Sie [AWS Signer](https://docs.aws.amazon.com/signer/latest/developerguide/Welcome.html) nutzen und zum Zeitpunkt der Bereitstellung signierte Container-Images verifizieren möchten, können Sie auf eine der folgenden Lösungen zurückgreifen:
+  [Gatekeeper und Ratify](https://ratify.dev/docs/1.0/quickstarts/ratify-on-aws) – Verwenden Sie Gatekeeper als Zugangs-Controller und Ratify (mit einem konfigurierten AWS-Signer-Plugin) als Webhook für die Validierung von Signaturen.
+  [Kyverno](https://github.com/nirmata/kyverno-notation-aws) – Eine Kubernetes-Richtlinien-Engine, die mit einem AWS-Signer-Plugin zur Validierung von Signaturen konfiguriert ist.

**Anmerkung**  
Bevor Sie die Signaturen von Container-Images verifizieren, müssen Sie den Trust Store und die Vertrauensrichtlinie für die [Notation](https://github.com/notaryproject/notation#readme) entsprechend den Anforderungen des ausgewählten Zugangscontrollers konfigurieren.