

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

# Verwendung von elastischem Dateisystemspeicher mit Amazon EFS
<a name="efs-csi"></a>

 [Amazon Elastic File System](https://docs.aws.amazon.com/efs/latest/ug/whatisefs.html) (Amazon EFS) bietet vollständig elastischen Serverless-Dateispeicher, sodass Sie Dateidaten gemeinsam nutzen können, ohne Speicherkapazität und Leistung bereitstellen oder verwalten zu müssen. Der [Amazon EFS Container Storage Interface (CSI) -Treiber](https://github.com/kubernetes-sigs/aws-efs-csi-driver) ermöglicht es Kubernetes-Clustern, auf denen Amazon EFS-Dateisysteme als persistente Volumes AWS zu mounten. In diesem Thema erfahren Sie, wie Sie den Amazon-EFS-CSI-Treiber für Ihren Amazon-EKS-Cluster bereitstellen.

## Überlegungen
<a name="efs-csi-considerations"></a>
+ Der Amazon-EFS-CSI-Treiber ist nicht mit Windows-basierten Container-Images kompatibel.
+ Sie können die [dynamische Bereitstellung](https://github.com/kubernetes-sigs/aws-efs-csi-driver/blob/master/examples/kubernetes/efs/dynamic_provisioning/README.md) für persistente Volumes mit Fargate-Knoten nicht verwenden, aber Sie können die [statische Bereitstellung](https://github.com/kubernetes-sigs/aws-efs-csi-driver/blob/master/examples/kubernetes/efs/static_provisioning/README.md) verwenden.
+  [Dynamische Bereitstellung](https://github.com/kubernetes-sigs/aws-efs-csi-driver/blob/master/examples/kubernetes/efs/dynamic_provisioning/README.md) erfordert Version [1.2](https://github.com/kubernetes-sigs/aws-efs-csi-driver/blob/master/CHANGELOG-1.x.md#v12) oder höher des Treibers. Sie können die [statische Bereitstellung](https://github.com/kubernetes-sigs/aws-efs-csi-driver/blob/master/examples/kubernetes/efs/static_provisioning/README.md) für persistente Volumes mithilfe der `1.1`-Version des Treibers in jeder unterstützten Amazon-EKS-Cluster-Version verwenden (siehe [Unterstützte Amazon-EKS-Versionen](https://docs.aws.amazon.com/eks/latest/userguide/kubernetes-versions.html)).
+ Version [1.3.2](https://github.com/kubernetes-sigs/aws-efs-csi-driver/blob/master/CHANGELOG-1.x.md#v132) oder höher dieses Treibers unterstützt die Arm64-Architektur, einschließlich auf Amazon EC2 Graviton basierenden Instances.
+ Version [1.4.2](https://github.com/kubernetes-sigs/aws-efs-csi-driver/blob/master/CHANGELOG-1.x.md#v142) oder höher dieses Treibers unterstützt die Verwendung von FIPS zum Einbinden von Dateisystemen.
+ Beachten Sie die Ressourcenkontingente für Amazon EFS. Weitere Informationen finden Sie unter [Amazon EFS-Kontingente](https://docs.aws.amazon.com/efs/latest/ug/limits.html).
+ Ab Version [2.0.0](https://github.com/kubernetes-sigs/aws-efs-csi-driver/blob/master/CHANGELOG-2.x.md#v200) wurde bei diesem Treiber für TLS-Verbindungen von der Verwendung von `stunnel` auf `efs-proxy` umgestellt. Bei Verwendung von `efs-proxy` wird eine Anzahl von Threads geöffnet, die eins plus der Anzahl der Kerne des Knotens entspricht, auf dem er ausgeführt wird.
+ Der Amazon-EFS-CSI-Treiber ist mit Amazon EKS Hybrid Nodes nicht kompatibel.

## Voraussetzungen
<a name="efs-csi-prereqs"></a>
+ Der Amazon EFS CSI-Treiber benötigt AWS Identity and Access Management (IAM) -Berechtigungen.
  +  AWS schlägt vor, EKS Pod Identities zu verwenden. Weitere Informationen finden Sie unter [Übersicht über die Einrichtung von EKS-Pod-Identitäten](pod-identities.md#pod-id-setup-overview).
  + Informationen zu IAM-Rollen für Servicekonten und zum Einrichten eines IAM OpenID Connect (OIDC)-Anbieters für Ihren Cluster finden Sie unter [Erstellen Sie einen IAM-OIDC-Anbieter für Ihren Cluster](enable-iam-roles-for-service-accounts.md).
+ 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).
+ Das `kubectl`-Befehlszeilen-Tool ist auf Ihrem Gerät oder in der AWS CloudShell installiert. Die Version kann mit der Kubernetes-Version Ihres Clusters identisch sein oder bis zu einer Nebenversion älter oder neuer sein. Wenn Ihre Clusterversion beispielsweise `1.29` ist, können Sie `kubectl`-Version `1.28`, `1.29`, oder `1.30` damit verwenden. Informationen zum Installieren oder Aktualisieren von `kubectl` finden Sie unter [`kubectl` und `eksctl` einrichten](install-kubectl.md).

**Anmerkung**  
Ein in Fargate ausgeführter Pod bindet automatisch ein Amazon-EFS-Dateisystem ein, ohne dass manuelle Schritte zur Treiberinstallation erforderlich sind.

## Schritt 1: Erstellen einer IAM-Rolle
<a name="efs-create-iam-resources"></a>

Der Amazon-EFS-CSI-Treiber benötigt IAM-Berechtigungen, um mit Ihrem Dateisystem zu interagieren. Erstellen Sie eine IAM-Rolle und fügen Sie ihr die ` arn:aws: iam::aws:policy/service-role/AmazonEFSCSIDriverPolicy` verwaltete Richtlinie hinzu.

**Anmerkung**  
Wenn Sie sowohl den Amazon EFS- als auch den Amazon S3 S3-Dateisystemspeicher verwenden möchten, müssen Sie `AmazonEFSCSIDriverPolicy` sowohl die als auch die `AmazonS3FilesCSIDriverPolicy` verwalteten Richtlinien an Ihre IAM-Rolle anhängen. Weitere Informationen zum Amazon S3 S3-Dateisystemspeicher finden Sie unter[Verwenden Sie den Amazon S3 S3-Dateisystemspeicher mit dem Amazon EFS CSI-Treiber](s3files-csi.md).

Um dieses Verfahren umzusetzen, können Sie eines dieser Tools verwenden:
+  [`eksctl`](#eksctl_efs_store_app_data) 
+  [AWS-Managementkonsole](#console_efs_store_app_data) 
+  [AWS CLI](#awscli_efs_store_app_data) 

**Anmerkung**  
Die spezifischen Schritte in diesem Verfahren sind für die Verwendung des Treibers als Amazon-EKS-Add-on geschrieben. Ausführliche Informationen zu selbstverwalteten Installationen finden Sie auf GitHub unter [Set up driver permission](https://github.com/kubernetes-sigs/aws-efs-csi-driver/blob/master/docs/install.md#set-up-driver-permission).

### `eksctl`
<a name="eksctl_efs_store_app_data"></a>

#### Bei Verwendung von Pod Identities
<a name="efs-eksctl-pod-identities"></a>

Führen Sie die folgenden Befehle aus, um eine IAM-Rolle und eine Pod-Identity-Zuordnung mit `eksctl` zu erstellen. Ersetzen Sie `my-cluster` mit Ihrem Clusternamen. Sie können `AmazonEKS_EFS_CSI_DriverRole` durch einen anderen Namen ersetzen.

```
export cluster_name=my-cluster
export role_name=AmazonEKS_EFS_CSI_DriverRole
eksctl create podidentityassociation \
    --service-account-name efs-csi-controller-sa \
    --namespace kube-system \
    --cluster $cluster_name \
    --role-name $role_name \
    --permission-policy-arns arn:aws: iam::aws:policy/service-role/AmazonEFSCSIDriverPolicy
```

#### Bei Verwendung von IAM-Rollen für Servicekonten
<a name="efs-eksctl-irsa"></a>

Führen Sie die folgenden Befehle aus, um eine IAM-Rolle mit `eksctl` zu erstellen. Ersetzen Sie `my-cluster` mit Ihrem Clusternamen. Sie können `AmazonEKS_EFS_CSI_DriverRole` durch einen anderen Namen ersetzen.

```
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"
```

### AWS-Managementkonsole
<a name="console_efs_store_app_data"></a>

Führen Sie den folgenden Befehl aus, um eine IAM-Rolle mit AWS-Managementkonsole zu erstellen.

1. Öffnen Sie die IAM-Konsole unter. https://console.aws.amazon.com/iam/

1. Wählen Sie im linken Navigationsbereich **Roles** aus.

1. Klicken Sie auf der Seite **Roles (Rollen)** auf **Create role (Rolle erstellen)**.

1. Gehen Sie auf der Seite **Select trusted entity** (Vertrauenswürdige Entität auswählen) wie folgt vor:

   1. Bei Verwendung von EKS Pod Identities:

      1. Wählen Sie im Abschnitt **Vertrauenswürdiger Entitätstyp** die Option ** AWS Service** aus.

      1. Wählen Sie im Dropdown-Menü **Service oder Anwendungsfall** die Option **EKS** aus.

      1. Wählen Sie im Abschnitt **Anwendungsfall** die Option **EKS – Pod Identity** aus.

      1. Wählen Sie **Weiter** aus.

   1. Bei Verwendung von IAM-Rollen für Servicekonten:

      1. Wählen Sie im Abschnitt **Trusted entity type** (Typ der vertrauenswürdigen Entität) die Option **Web identity** (Web-Identität) aus.

      1. Wählen Sie für **Identity provider** (Identitätsanbieter) die Option **OpenID Connect provider URL** (OpenID-Connect-Anbieter-URL) für Ihren Cluster aus (wie unter **Overview** (Übersicht) in Amazon EKS gezeigt).

      1. Wählen Sie für **Audience (Zielgruppe)** `sts.amazonaws.com`.

      1. Wählen Sie **Weiter** aus.

1. Gehen Sie auf der Seite **Add permissions** (Berechtigungen hinzufügen) wie folgt vor:

   1. Geben Sie im Feld **Filter policies (Filterrichtlinien)** `AmazonEFSCSIDriverPolicy` ein.

   1. Aktivieren Sie das Kontrollkästchen links neben der `AmazonEFSCSIDriverPolicy`, die bei der Suche zurückgegeben wurde.

   1. Wählen Sie **Weiter** aus.

1. Gehen Sie auf der Seite **Name, review, and create** (Benennen, überprüfen und erstellen) wie folgt vor:

   1. Geben Sie unter **Role name** (Rollenname) einen eindeutigen Namen für die Rolle ein, z. B. `AmazonEKS_EFS_CSI_DriverRole`.

   1. Fügen Sie der Rolle unter **Tags hinzufügen (optional)** Metadaten hinzu, indem Sie Tags als Schlüssel-Wert-Paare anfügen. Weitere Informationen zur Verwendung von Tags in IAM finden Sie unter [Markieren von IAM-Ressourcen](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html) im *IAM-Benutzerhandbuch*.

   1. Wählen Sie **Rolle erstellen** aus.

1. Nachdem die Rolle erstellt wurde:

   1. Bei Verwendung von EKS Pod Identities:

      1. Öffnen Sie die [Amazon-EKS-Konsole](https://console.aws.amazon.com/eks/home#/clusters).

      1. Wählen Sie im linken Navigationsbereich **Cluster** aus und anschließend den Namen des Clusters, für den Sie die EKS-Pod-Identity-Zuordnung konfigurieren möchten.

      1. Wählen Sie die Registerkarte **Zugriff** aus.

      1. Wählen Sie unter **Pod-Identity-Zuordnungen** die Option **Erstellen** aus.

      1. Wählen Sie das Dropdown-Menü **IAM-Rolle** und wählen Sie Ihre neu erstellte Rolle aus.

      1. Wählen Sie das Feld **Kubernetes-Namespace** und geben Sie `kube-system` ein.

      1. Wählen Sie das Feld **Kubernetes-Servicekonto** und geben Sie `efs-csi-controller-sa` ein.

      1. Wählen Sie **Erstellen** aus.

      1. Weitere Informationen zum Erstellen von Pod-Identity-Zuordnungen finden Sie unter [Erstellen Sie eine Pod Identity-Zuordnung (AWS Konsole)](pod-id-association.md#pod-id-association-create).

   1. Bei Verwendung von IAM-Rollen für Servicekonten:

      1. Wählen Sie die Rolle aus, um sie zur Bearbeitung zu öffnen.

      1. Wählen Sie die Registerkarte **Trust Relationships** (Vertrauensstellungen) und dann **Edit trust policy** (Vertrauensrichtlinie bearbeiten) aus.

      1. Suchen Sie die Zeile, die der folgenden Zeile ähnelt:

         ```
         "oidc.eks.region-code.amazonaws.com/id/<EXAMPLED539D4633E53DE1B71EXAMPLE>:aud": "sts.amazonaws.com"
         ```

         Fügen Sie die folgende Zeile über der vorherigen Zeile hinzu. `<region-code>`Ersetzen Sie es durch die AWS Region, in der sich Ihr Cluster befindet. Ersetzen Sie `<EXAMPLED539D4633E53DE1B71EXAMPLE>` mit dem OIDC-Anbieter-ID Ihres Clusters.

         ```
         "oidc.eks.<region-code>.amazonaws.com/id/<EXAMPLED539D4633E53DE1B71EXAMPLE>:sub": "system:serviceaccount:kube-system:efs-csi-*",
         ```

      1. Ändern Sie den `Condition`-Operator von `"StringEquals"` zu `"StringLike"`.

      1. Wählen Sie **Update Policy** (Richtlinie aktualisieren) aus, um den Vorgang abzuschließen.

### AWS CLI
<a name="awscli_efs_store_app_data"></a>

Führen Sie die folgenden Befehle aus, um eine IAM-Rolle mit AWS CLI zu erstellen.

#### Bei Verwendung von Pod Identities
<a name="efs-cli-pod-identities"></a>

1. Erstellen Sie die IAM-Rolle, die dem `pods.eks.amazonaws.com`-Service die Aktionen `AssumeRole` und `TagSession` gewährt.

   1. Kopieren Sie den folgenden Inhalt in eine Datei namens `aws-efs-csi-driver-trust-policy-pod-identity.json`.

      ```
      {
          "Version":"2012-10-17",		 	 	 
          "Statement": [
              {
                  "Sid": "AllowEksAuthToAssumeRoleForPodIdentity",
                  "Effect": "Allow",
                  "Principal": {
                      "Service": "pods.eks.amazonaws.com"
                  },
                  "Action": [
                      "sts:AssumeRole",
                      "sts:TagSession"
                  ]
              }
          ]
      }
      ```

   1. Erstellen Sie die Rolle. Ersetzen Sie `my-cluster` mit Ihrem Clusternamen. Sie können `AmazonEKS_EFS_CSI_DriverRole` durch einen anderen Namen ersetzen.

      ```
      export cluster_name=my-cluster
      export role_name=AmazonEKS_EFS_CSI_DriverRole
      aws iam create-role \
        --role-name $role_name \
        --assume-role-policy-document file://"aws-efs-csi-driver-trust-policy-pod-identity.json"
      ```

1. Fügen Sie der Rolle mit dem folgenden Befehl die erforderliche AWS verwaltete Richtlinie hinzu.

   ```
   aws iam attach-role-policy \
     --policy-arn arn:aws: iam::aws:policy/service-role/AmazonEFSCSIDriverPolicy \
     --role-name $role_name
   ```

1. Führen Sie den folgenden Befehl aus, um die Pod-Identity-Zuordnung zu erstellen. Ersetzen Sie `<111122223333>` durch Ihre Konto-ID.

   ```
   aws eks create-pod-identity-association --cluster-name $cluster_name --role-arn {arn-aws}iam::<111122223333>:role/$role_name --namespace kube-system --service-account efs-csi-controller-sa
   ```

1. Weitere Informationen zum Erstellen von Pod-Identity-Zuordnungen finden Sie unter [Erstellen Sie eine Pod Identity-Zuordnung (AWS Konsole)](pod-id-association.md#pod-id-association-create).

#### Bei Verwendung von IAM-Rollen für Servicekonten
<a name="efs-cli-irsa"></a>

1. Zeigen Sie die OIDC-Anbieter-URL Ihres Clusters an. Ersetzen Sie `my-cluster` mit Ihrem Clusternamen. Sie können `AmazonEKS_EFS_CSI_DriverRole` durch einen anderen Namen ersetzen.

   ```
   export cluster_name=my-cluster
   export role_name=AmazonEKS_EFS_CSI_DriverRole
   aws eks describe-cluster --name $cluster_name --query "cluster.identity.oidc.issuer" --output text
   ```

   Eine Beispielausgabe sieht wie folgt aus.

   ```
   https://oidc.eks.<region-code>.amazonaws.com/id/<EXAMPLED539D4633E53DE1B71EXAMPLE>
   ```

   Wenn die Ausgabe des Befehls `None` ist, überprüfen Sie die **Voraussetzungen**.

1. Erstellen Sie die IAM-Rolle, die die Aktion `AssumeRoleWithWebIdentity` erlaubt.

   1. Kopieren Sie den folgenden Inhalt in eine Datei namens `aws-efs-csi-driver-trust-policy.json`. Ersetzen Sie `<111122223333>` durch Ihre Konto-ID. Ersetzen Sie `<EXAMPLED539D4633E53DE1B71EXAMPLE>` und `<region-code>` mit den im vorherigen Schritt zurückgegebenen Werten.

      ```
      {
        "Version":"2012-10-17",		 	 	 
        "Statement": [
          {
            "Effect": "Allow",
            "Principal": {
              "Federated": "arn:aws:iam::123456789012:oidc-provider/oidc.eks.us-east-1.amazonaws.com/id/EXAMPLED539D4633E53DE1B71EXAMPLE"
            },
            "Action": "sts:AssumeRoleWithWebIdentity",
            "Condition": {
              "StringLike": {
                "oidc.eks.us-east-1.amazonaws.com/id/EXAMPLED539D4633E53DE1B71EXAMPLE:sub": "system:serviceaccount:kube-system:efs-csi-*",
                "oidc.eks.us-east-1.amazonaws.com/id/EXAMPLED539D4633E53DE1B71EXAMPLE:aud": "sts.amazonaws.com"
              }
            }
          }
        ]
      }
      ```

   1. Erstellen Sie die Rolle.

      ```
      aws iam create-role \
        --role-name $role_name \
        --assume-role-policy-document file://"aws-efs-csi-driver-trust-policy.json"
      ```

1. Fügen Sie der Rolle mit dem folgenden Befehl die erforderliche AWS verwaltete Richtlinie hinzu.

   ```
   aws iam attach-role-policy \
     --policy-arn arn:aws: iam::aws:policy/service-role/AmazonEFSCSIDriverPolicy \
     --role-name $role_name
   ```

## Schritt 2: Amazon-EFS-CSI-Treiber herunterladen
<a name="efs-install-driver"></a>

Wir empfehlen, den Amazon-EFS-CSI-Treiber über das Amazon-EKS-Add-on zu installieren. Wenn Sie ein Amazon-EKS-Add-on zu Ihrem Cluster hinzufügen möchten, lesen Sie [Erstellung eines Amazon-EKS-Add-Ons](creating-an-add-on.md). Weitere Informationen zu Add-ons finden Sie unter [Amazon-EKS-Add-ons](eks-add-ons.md). Wenn Sie das Amazon EKS-Add-on nicht verwenden können, empfehlen wir Ihnen, ein Problem mit der Begründung, warum Sie das nicht können, an das [ GitHub Container-Roadmap-Repository](https://github.com/aws/containers-roadmap/issues) zu senden.

**Wichtig**  
Bevor Sie den Amazon-EFS-Treiber als Amazon-EKS-Add-On hinzufügen, vergewissern Sie sich, dass auf Ihrem Cluster keine selbstverwaltete Version des Treibers installiert ist. Falls ja, finden Sie weitere Informationen unter [Deinstallieren des Amazon EFS CSI-Treibers](https://github.com/kubernetes-sigs/aws-efs-csi-driver/blob/master/docs/install.md#uninstalling-the-amazon-efs-csi-driver) auf GitHub.

Wenn Sie alternativ eine selbstverwaltete Installation des Amazon-EFS-CSI-Treibers wünschen, finden Sie Informationen unter [Installation](https://github.com/kubernetes-sigs/aws-efs-csi-driver/blob/master/docs/install.md) in  GitHub.

## Schritt 3: Erstellen eines Amazon EFS-Dateisystems
<a name="efs-create-filesystem"></a>

Informationen zum Erstellen eines Amazon-EFS-Dateisystems finden Sie unter [Erstellen eines Amazon-EFS-Dateisystems für Amazon EKS](https://github.com/kubernetes-sigs/aws-efs-csi-driver/blob/master/docs/efs-create-filesystem.md) in  GitHub.

## Schritt 4: Beispielanwendung bereitstellen
<a name="efs-sample-app"></a>

Sie können eine Vielzahl von Beispiel-Apps bereitstellen und diese nach Bedarf ändern. Weitere Informationen finden Sie unter [Beispiele](https://github.com/kubernetes-sigs/aws-efs-csi-driver/tree/master/examples/kubernetes) unter GitHub.