Sélectionner vos préférences de cookies

Nous utilisons des cookies essentiels et des outils similaires qui sont nécessaires au fonctionnement de notre site et à la fourniture de nos services. Nous utilisons des cookies de performance pour collecter des statistiques anonymes afin de comprendre comment les clients utilisent notre site et d’apporter des améliorations. Les cookies essentiels ne peuvent pas être désactivés, mais vous pouvez cliquer sur « Personnaliser » ou « Refuser » pour refuser les cookies de performance.

Si vous êtes d’accord, AWS et les tiers approuvés utiliseront également des cookies pour fournir des fonctionnalités utiles au site, mémoriser vos préférences et afficher du contenu pertinent, y compris des publicités pertinentes. Pour accepter ou refuser tous les cookies non essentiels, cliquez sur « Accepter » ou « Refuser ». Pour effectuer des choix plus détaillés, cliquez sur « Personnaliser ».

Accédez aux objets Amazon S3 avec le pilote CSI Mountpoint pour Amazon S3

Mode de mise au point
Accédez aux objets Amazon S3 avec le pilote CSI Mountpoint pour Amazon S3 - Amazon EKS

Aidez à améliorer cette page

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Pour contribuer à ce guide de l'utilisateur, cliquez sur le GitHub lien Modifier cette page sur qui se trouve dans le volet droit de chaque page.

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Aidez à améliorer cette page

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Pour contribuer à ce guide de l'utilisateur, cliquez sur le GitHub lien Modifier cette page sur qui se trouve dans le volet droit de chaque page.

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Avec le pilote Mountpoint for Amazon S3 Container Storage Interface (CSI), vos applications Kubernetes peuvent accéder aux objets Amazon S3 via une interface de système de fichiers, ce qui permet d'obtenir un débit agrégé élevé sans modifier le code de l'application. Construit sur Mountpoint pour Amazon S3, le pilote CSI présente un compartiment Amazon S3 sous la forme d'un volume accessible par des conteneurs dans Amazon EKS et des clusters Kubernetes autogérés. Cette rubrique explique comment déployer le pilote CSI Mountpoint pour Amazon S3 sur votre cluster Amazon EKS.

Considérations

  • Le pilote CSI Mountpoint pour Amazon S3 n'est actuellement pas compatible avec les images de conteneur basées sur Windows.

  • Le pilote CSI Mountpoint pour Amazon S3 n'est actuellement pas compatible avec les nœuds hybrides Amazon EKS.

  • Le pilote CSI Mountpoint pour Amazon S3 ne prend pas en charge Fargate. AWS Toutefois, les conteneurs qui s'exécutent dans Amazon EC2 (soit avec Amazon EKS, soit avec une installation Kubernetes personnalisée) sont pris en charge.

  • Le pilote CSI Mountpoint pour Amazon S3 ne prend en charge que le provisionnement statique. Le provisionnement dynamique, ou la création de nouveaux compartiments, n'est pas pris en charge.

    Note

    Le provisionnement statique fait référence à l'utilisation d'un compartiment Amazon S3 existant spécifié comme étant bucketName volumeAttributes dans l'PersistentVolumeobjet. Pour plus d'informations, consultez Static Provisioning on GitHub.

  • Les volumes montés avec le pilote CSI Mountpoint pour Amazon S3 ne prennent pas en charge toutes les fonctionnalités du système de fichiers POSIX. Pour plus d'informations sur le comportement du système de fichiers, consultez Mountpoint pour le comportement du système de fichiers Amazon S3 sur. GitHub

Prérequis

  • Un fournisseur IAM ( AWS Identity and Access Management) (IAM) OpenID Connect (OIDC) existant pour votre cluster. Pour déterminer si vous en avez déjà un, ou pour en créer un, consultez Créer un fournisseur d'identité OIDC IAM pour votre cluster.

  • Version 2.12.3 ou ultérieure de la AWS CLI installée et configurée sur votre appareil ou. AWS CloudShell

  • L'outil de ligne de commande kubectl est installé sur votre appareil ou AWS CloudShell. La version peut être identique ou supérieure à une version mineure antérieure ou ultérieure à la version Kubernetes de votre cluster. Par exemple, si la version de votre cluster est 1.29, vous pouvez utiliser la version kubectl 1.28, 1.29 ou 1.30. Pour installer ou mettre à niveau kubectl, veuillez consulter Configurez kubectl et eksctl.

Créer une politique IAM

Le pilote CSI Mountpoint pour Amazon S3 nécessite des autorisations Amazon S3 pour interagir avec votre système de fichiers. Cette section montre comment créer une politique IAM qui accorde les autorisations nécessaires.

L'exemple de politique suivant suit les recommandations d'autorisation IAM pour Mountpoint. Vous pouvez également utiliser la politique AWS gérée AmazonS3 FullAccess, mais cette politique gérée accorde plus d'autorisations que ce qui est nécessaire pour Mountpoint.

Pour plus d'informations sur les autorisations recommandées pour Mountpoint, consultez la section Autorisations Mountpoint IAM sur. GitHub

  1. Ouvrez la console IAM à l'adresse https://console.aws.amazon.com/iam/.

  2. Dans le volet de navigation de gauche, choisissez Politiques.

  3. Sur la page Politiques, choisissez Créer une politique.

  4. Dans Éditeur de politique, choisissez JSON.

  5. Sous Éditeur de politique, copiez et collez ce qui suit :

    Important

    Remplacez amzn-s3-demo-bucket1 par votre propre nom de compartiment Amazon S3.

    { "Version": "2012-10-17", "Statement": [ { "Sid": "MountpointFullBucketAccess", "Effect": "Allow", "Action": [ "s3:ListBucket" ], "Resource": [ "arn:aws: s3:::amzn-s3-demo-bucket1" ] }, { "Sid": "MountpointFullObjectAccess", "Effect": "Allow", "Action": [ "s3:GetObject", "s3:PutObject", "s3:AbortMultipartUpload", "s3:DeleteObject" ], "Resource": [ "arn:aws: s3:::amzn-s3-demo-bucket1/*" ] } ] }

    Les compartiments de répertoire, introduits avec la classe de stockage Amazon S3 Express One Zone, utilisent un mécanisme d'authentification différent de celui des compartiments à usage général. Au lieu d'utiliser s3:* des actions, vous devez utiliser l's3express:CreateSessionaction. Pour plus d'informations sur les compartiments de répertoire, consultez la section Buckets de répertoire dans le guide de l'utilisateur Amazon S3.

    Vous trouverez ci-dessous un exemple de politique de moindre privilège que vous utiliseriez pour un bucket de répertoire.

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "s3express:CreateSession", "Resource": "arn:aws: s3express:us-west-2:111122223333:bucket/amzn-s3-demo-bucket1--usw2-az1--x-s3" } ] }
  6. Choisissez Suivant.

  7. Sur la page Vérifier et créer, donnez un nom à votre politique. Cet exemple de démonstration utilise le nom AmazonS3CSIDriverPolicy.

  8. Choisissez Create Policy (Créer une politique).

Créer un rôle IAM

Le pilote CSI Mountpoint pour Amazon S3 nécessite des autorisations Amazon S3 pour interagir avec votre système de fichiers. Cette section montre comment créer un rôle IAM pour déléguer ces autorisations. Pour créer ce rôle, vous pouvez utiliser l'un des outils suivants :

Note

La politique IAM AmazonS3CSIDriverPolicy a été créée dans la section précédente.

eksctl

Pour créer votre rôle IAM de pilote CSI Mountpoint pour Amazon S3 avec eksctl

Pour créer le rôle IAM et le compte de service Kubernetes, exécutez les commandes suivantes. Ces commandes associent également la politique AmazonS3CSIDriverPolicy IAM au rôle, annotent le compte de service Kubernetes (s3-csi-controller-sa) avec le nom de ressource Amazon (ARN) du rôle IAM et ajoutent le nom du compte de service Kubernetes à la politique de confiance du rôle IAM.

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

AWS Management Console

  1. Ouvrez la console IAM à l'adresse https://console.aws.amazon.com/iam/.

  2. Dans le volet de navigation de gauche, choisissez Rôles.

  3. Sur la page Rôles, choisissez Créer un rôle.

  4. Sur la page Select trusted entity (Sélectionnez une entité de confiance), procédez comme suit :

    1. Dans la section Trusted entity type (Type d'entité de confiance), sélectionnez Web identity (Identité web).

    2. Pour Fournisseur d'identité, choisissez l'URL du fournisseur OpenID Connect pour votre cluster (comme indiqué sous Présentation dans Amazon EKS).

      Si ce n' URLs est pas le cas, passez en revue les conditions préalables.

    3. Pour Audience, choisissez sts.amazonaws.com.

    4. Choisissez Suivant.

  5. Sur la page Add permissions (Ajouter des autorisations), procédez comme suit :

    1. Dans le champ Politiques de filtrage, saisissez la politique d'AmazonS3CSIDriver.

      Note

      Cette politique a été créée dans la section précédente.

    2. Cochez la case à gauche du résultat AmazonS3CSIDriverPolicy renvoyé par la recherche.

    3. Choisissez Suivant.

  6. Sur la page Name, review, and create (Nommer, vérifier et créer), procédez comme suit :

    1. Dans Nom du rôle, entrez un nom unique pour votre rôle, tel que DriverRole AmazoneKS_S3_CSI_.

    2. Sous Ajouter des balises (Facultatif), ajoutez des métadonnées au rôle en attachant les identifications sous forme de paires clé-valeur. Pour plus d'informations sur l'utilisation des balises dans IAM, consultez la rubrique Balisage des ressources IAM dans le Guide de l'utilisateur IAM.

    3. Sélectionnez Créer un rôle.

  7. Une fois le rôle créé, choisissez le rôle dans la console pour l'ouvrir et le modifier.

  8. Sélectionnez l'onglet Trust relationships (Relations d'approbation), puis Edit trust policy (Modifier la politique d'approbation).

  9. Trouvez la ligne qui ressemble à ce qui suit :

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

    Ajoutez une virgule à la fin de la ligne précédente, puis ajoutez la ligne suivante. Remplacez region-code par la AWS région dans laquelle se trouve votre cluster. EXAMPLED539D4633E53DE1B71EXAMPLERemplacez-le par l'ID du fournisseur OIDC de votre cluster.

    "oidc.eks.region-code.amazonaws.com/id/EXAMPLED539D4633E53DE1B71EXAMPLE:sub": "system:serviceaccount:kube-system:s3-csi-driver-sa"
  10. Assurez-vous que l'Conditionopérateur est réglé sur"StringEquals".

  11. Sélectionnez Update Trust Policy (Mettre à jour la politique d'approbation) pour terminer.

AWS CLI

  1. Affichez l'URL du fournisseur OIDC de votre cluster. Remplacez my-cluster par le nom de votre cluster. Si la sortie de la commande est None, consultez Prérequis.

    aws eks describe-cluster --name my-cluster --query "cluster.identity.oidc.issuer" --output text

    L'exemple qui suit illustre un résultat.

    https://oidc.eks.region-code.amazonaws.com/id/EXAMPLED539D4633E53DE1B71EXAMPLE
  2. Créez le rôle IAM, en accordant au compte de service Kubernetes l'action AssumeRoleWithWebIdentity.

    1. Copiez le contenu suivant dans un fichier nommé aws-s3-csi-driver-trust-policy.json. Remplacez 111122223333 par votre ID de compte. Remplacez EXAMPLED539D4633E53DE1B71EXAMPLE et region-code par les valeurs renvoyées par l'étape précédente.

      { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Federated": "arn:aws: iam::111122223333:oidc-provider/oidc.eks.region-code.amazonaws.com/id/EXAMPLED539D4633E53DE1B71EXAMPLE" }, "Action": "sts:AssumeRoleWithWebIdentity", "Condition": { "StringEquals": { "oidc.eks.region-code.amazonaws.com/id/EXAMPLED539D4633E53DE1B71EXAMPLE:sub": "system:serviceaccount:kube-system:s3-csi-driver-sa", "oidc.eks.region-code.amazonaws.com/id/EXAMPLED539D4633E53DE1B71EXAMPLE:aud": "sts.amazonaws.com" } } } ] }
    2. Créez le rôle. Vous pouvez changer le nom de AmazonEKS_S3_CSI_DriverRole. Dans ce cas, veillez à le changer également dans les étapes suivantes.

      aws iam create-role \ --role-name AmazonEKS_S3_CSI_DriverRole \ --assume-role-policy-document file://"aws-s3-csi-driver-trust-policy.json"
  3. Attachez la politique IAM créée précédemment au rôle à l'aide de la commande suivante.

    aws iam attach-role-policy \ --policy-arn arn:aws: iam::aws:policy/AmazonS3CSIDriverPolicy \ --role-name AmazonEKS_S3_CSI_DriverRole
    Note

    La politique IAM AmazonS3CSIDriverPolicy a été créée dans la section précédente.

  4. Ignorez cette étape si vous installez le pilote en tant que module complémentaire Amazon EKS. Pour les installations autogérées du pilote, créez des comptes de service Kubernetes annotés avec l'ARN du rôle IAM que vous avez créé.

    1. Enregistrez le contenu suivant dans un fichier nommé mountpoint-s3-service-account.yaml. Remplacez 111122223333 par votre ID de compte.

      --- apiVersion: v1 kind: ServiceAccount metadata: labels: app.kubernetes.io/name: aws-mountpoint-s3-csi-driver name: mountpoint-s3-csi-controller-sa namespace: kube-system annotations: eks.amazonaws.com/role-arn: arn:aws: iam::111122223333:role/AmazonEKS_S3_CSI_DriverRole
    2. Créez le compte de service Kubernetes sur votre cluster. Le compte de service Kubernetes (mountpoint-s3-csi-controller-sa) est annoté avec le nom du rôle IAM que vous avez créé. AmazonEKS_S3_CSI_DriverRole

      kubectl apply -f mountpoint-s3-service-account.yaml
      Note

      Lorsque vous déployez le plugin dans cette procédure, il crée et est configuré pour utiliser un compte de service nommé s3-csi-driver-sa.

Installation du pilote CSI Mountpoint pour Amazon S3

Vous pouvez installer le pilote CSI Mountpoint pour Amazon S3 via le module complémentaire Amazon EKS. Vous pouvez utiliser les outils suivants pour ajouter le module complémentaire à votre cluster :

Vous pouvez également installer le pilote CSI Mountpoint pour Amazon S3 en tant qu'installation autogérée. Pour savoir comment procéder à une installation autogérée, consultez Installation sur GitHub.

À partir dev1.8.0, vous pouvez configurer les taches pour tolérer les pods du pilote CSI. Pour ce faire, spécifiez un ensemble personnalisé de teintures à tolérer node.tolerations ou tolérez toutes les taches. node.tolerateAllTaints Pour plus d'informations, consultez Taints and Tolerations dans la documentation de Kubernetes.

eksctl

Pour ajouter le module complémentaire Amazon S3 CSI à l'aide de eksctl

Exécutez la commande suivante. Remplacez my-cluster par le nom de votre cluster, 111122223333 par l'ID de votre compte et AmazonEKS_S3_CSI_DriverRole par le nom du rôle IAM créé précédemment.

eksctl create addon --name aws-mountpoint-s3-csi-driver --cluster my-cluster \ --service-account-role-arn arn:aws: iam::111122223333:role/AmazonEKS_S3_CSI_DriverRole --force

Si vous supprimez l'option --force et si des paramètres du module complémentaire Amazon EKS entrent en conflit avec vos paramètres existants, alors la mise à jour du module complémentaire Amazon EKS échoue et vous recevez un message d'erreur pour vous aider à résoudre le conflit. Avant de spécifier cette option, assurez-vous que le module complémentaire Amazon EKS ne gère pas les paramètres que vous devez gérer, car ces paramètres sont remplacés par cette option. Pour plus d'informations sur les autres options de ce paramètre, consultez Modules complémentaires dans la documentation eksctl. Pour plus d'informations sur la gestion des champs Amazon EKS Kubernetes, consultez. Déterminez les champs que vous pouvez personnaliser pour les modules complémentaires Amazon EKS

Vous pouvez le personnaliser eksctl à l'aide de fichiers de configuration. Pour plus d'informations, consultez la section Utilisation des valeurs de configuration dans la eksctl documentation. L'exemple suivant montre comment tolérer toutes les souillures.

# config.yaml ... addons: - name: aws-mountpoint-s3-csi-driver serviceAccountRoleARN: arn:aws: iam::111122223333:role/AmazonEKS_S3_CSI_DriverRole configurationValues: |- node: tolerateAllTaints: true

AWS Management Console

  1. Ouvrez la console Amazon EKS.

  2. Dans le volet de navigation de gauche, choisissez Clusters.

  3. Choisissez le nom du cluster pour lequel vous souhaitez configurer le module complémentaire Mountpoint for Amazon S3 CSI.

  4. Choisissez l'onglet Modules complémentaires.

  5. Choisissez Obtenez plus de modules complémentaires.

  6. Sur la page Sélectionner des modules complémentaires, procédez comme suit :

    1. Dans la section Amazon EKS-Addons, cochez la case Mountpoint for Amazon S3 CSI Driver.

    2. Choisissez Suivant.

  7. Sur la page Configurer les paramètres des modules complémentaires sélectionnés, procédez comme suit :

    1. Sélectionnez la version que vous souhaitez utiliser.

    2. Pour Select IAM role, sélectionnez le nom d'un rôle IAM auquel vous avez associé la politique IAM du pilote CSI Mountpoint for Amazon S3.

    3. (Facultatif) Mettez à jour la méthode de résolution des conflits après avoir étendu les paramètres de configuration facultatifs. Si vous sélectionnez Remplacer, un ou plusieurs paramètres du module complémentaire existant peuvent être remplacés par les paramètres du module complémentaire Amazon EKS. Si vous n'activez pas cette option et qu'il y a un conflit avec vos paramètres existants, l'opération échoue. Vous pouvez utiliser le message d'erreur qui en résulte pour résoudre le conflit. Avant de sélectionner cette option, assurez-vous que le module complémentaire Amazon EKS ne gère pas les paramètres que vous devez gérer vous-même.

    4. (Facultatif) Configurez les tolérances dans le champ Valeurs de configuration après avoir étendu les paramètres de configuration facultatifs.

    5. Choisissez Suivant.

  8. Sur la page Vérifier et ajouter, choisissez Créer. Une fois l'installation du module complémentaire terminée, vous pouvez voir le module complémentaire installé.

AWS CLI

Pour ajouter le module complémentaire CSI Mountpoint pour Amazon S3 à l'aide de la CLI AWS

Exécutez la commande suivante. Remplacez my-cluster par le nom de votre cluster, 111122223333 par l'ID de votre compte, et AmazonEKS_S3_CSI_DriverRole par le nom du rôle créé précédemment.

aws eks create-addon --cluster-name my-cluster --addon-name aws-mountpoint-s3-csi-driver \ --service-account-role-arn arn:aws: iam::111122223333:role/AmazonEKS_S3_CSI_DriverRole

Vous pouvez personnaliser la commande à l'aide du --configuration-values drapeau. L'exemple alternatif suivant montre comment tolérer toutes les souillures.

aws eks create-addon --cluster-name my-cluster --addon-name aws-mountpoint-s3-csi-driver \ --service-account-role-arn arn:aws: iam::111122223333:role/AmazonEKS_S3_CSI_DriverRole \ --configuration-values '{"node":{"tolerateAllTaints":true}}'

Configurer Mountpoint pour Amazon S3

Dans la plupart des cas, vous pouvez configurer Mountpoint pour Amazon S3 avec uniquement un nom de compartiment. Pour obtenir des instructions sur la configuration de Mountpoint pour Amazon S3, consultez Configuration de Mountpoint pour Amazon S3 sur. GitHub

Déployer un exemple d’application

Vous pouvez déployer l'allocation statique au pilote sur un compartiment Amazon S3 existant. Pour plus d'informations, consultez la section Provisionnement statique activé GitHub.

Supprimer le pilote CSI Mountpoint pour Amazon S3

Vous avez deux options pour supprimer un module complémentaire Amazon EKS.

  • Conserver le logiciel complémentaire sur votre cluster : cette option supprime la gestion de tous les paramètres par Amazon EKS. Elle supprime également la possibilité pour Amazon EKS de vous informer des mises à jour et de mettre automatiquement à jour le module complémentaire Amazon EKS après le lancement d'une mise à jour. Toutefois, elle préserve le logiciel complémentaire sur votre cluster. Cette option fait du module complémentaire une installation autogérée plutôt qu'un module complémentaire Amazon EKS. Avec cette option, il n'y a aucun temps d'arrêt pour le module complémentaire. Les commandes dans cette procédure utilisent cette option.

  • Supprimer entièrement le logiciel complémentaire de votre cluster : nous vous recommandons de supprimer le module complémentaire Amazon EKS de votre cluster uniquement si aucune ressource de votre cluster n'en dépend. Pour effectuer cette option, supprimez --preserve à partir de la commande que vous utilisez dans cette procédure.

Si un compte IAM est associé au module complémentaire, celui-ci n'est pas supprimé.

Vous pouvez utiliser les outils suivants pour supprimer le module complémentaire Amazon S3 CSI :

eksctl

Pour supprimer le module complémentaire Amazon S3 CSI à l'aide de eksctl

Remplacez my-cluster avec le nom de votre cluster, puis exécutez la commande suivante.

eksctl delete addon --cluster my-cluster --name aws-mountpoint-s3-csi-driver --preserve

AWS Management Console

  1. Ouvrez la console Amazon EKS.

  2. Dans le volet de navigation de gauche, choisissez Clusters.

  3. Choisissez le nom du cluster pour lequel vous souhaitez supprimer le module complémentaire CSI Amazon EBS.

  4. Choisissez l'onglet Modules complémentaires.

  5. Choisissez Mountpoint pour Amazon S3 CSI Driver.

  6. Sélectionnez Remove (Supprimer).

  7. Dans la boîte de dialogue de confirmation Remove : aws-mountpoint-s 3-csi-driver, procédez comme suit :

    1. Si vous voulez qu'Amazon EKS cesse de gérer les paramètres du module complémentaire, sélectionnez Conserver sur le cluster. Faites ceci si vous voulez retenir le logiciel du module complémentaire sur votre cluster. Ceci afin que vous puissiez gérer vous-même tous les paramètres du module complémentaire.

    2. Saisissez aws-mountpoint-s3-csi-driver.

    3. Sélectionnez Remove (Retirer).

AWS CLI

Pour supprimer le module complémentaire Amazon S3 CSI à l'aide de la CLI AWS

Remplacez my-cluster avec le nom de votre cluster, puis exécutez la commande suivante.

aws eks delete-addon --cluster-name my-cluster --addon-name aws-mountpoint-s3-csi-driver --preserve

Rubrique précédente :

Cache de fichiers Amazon
ConfidentialitéConditions d'utilisation du sitePréférences de cookies
© 2025, Amazon Web Services, Inc. ou ses affiliés. Tous droits réservés.