Configuration de l'accès au système de fichiers pour les fonctions Lambda - AWS Lambda

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.

Configuration de l'accès au système de fichiers pour les fonctions Lambda

Vous pouvez configurer une fonction pour monter un système de fichiers Amazon Elastic File System (Amazon EFS) dans un répertoire local. Avec Amazon EFS, votre code de fonction peut accéder aux ressources partagées et les modifier en toute sécurité et avec une haute simultanéité.

Rôle d'exécution et autorisations utilisateur

Si le système de fichiers n'a pas de stratégie configurée par l'utilisateur AWS Identity and Access Management (IAM), EFS utilise une politique par défaut qui accorde un accès complet à tout client qui peut se connecter au système de fichiers à l'aide d'une cible de montage du système de fichiers. Si le système de fichiers dispose d'une stratégie IAM configurée par l'utilisateur, le rôle d'exécution de votre fonction doit avoir le bon.elasticfilesystemAutorisations.

Autorisations du rôle d’exécution
  • système de fichiers élastique : ClientMount

  • elasticfilesystem : ClientWrite (non requis pour les connexions en lecture seule)

Ces autorisations sont incluses dans la politique AmazonElasticFileSystemClientReadWriteAccessgérée. En outre, votre rôle d'exécution doit posséder leautorisations requises pour se connecter au VPC du système de fichiers.

Lorsque vous configurez un système de fichiers, Lambda utilise vos autorisations pour vérifier les cibles de montage. Pour configurer une fonction pour vous connecter à un système de fichiers, votre utilisateur a besoin des autorisations suivantes :

Autorisations des utilisateurs
  • elasticfilesystem : cibles DescribeMount

Configuration d'un système de fichiers et d'un point d'accès

Créez un système de fichiers Amazon EFS avec une cible de montage dans chaque zone de disponibilité à laquelle votre fonction se connecte. Pour les performances et une résilience, utilisez au moins deux zones de disponibilité. Par exemple, dans une configuration simple, vous pouvez avoir un VPC avec deux sous-réseaux privés dans des zones de disponibilité distinctes. La fonction se connecte aux deux sous-réseaux et une cible de montage est disponible dans chacun. Assurez-vous que le trafic NFS (port 2049) est autorisé par les groupes de sécurité utilisés par la fonction et les cibles de montage.

Note

Lorsque vous créez un système de fichiers, vous choisissez un mode de performances qui ne peut pas être modifié ultérieurement. Le mode Usage général a une latence plus faible, et le mode I/O max prend en charge un débit maximal et des I/O par seconde plus élevées. Pour orienter votre choix, consultez Performances d'Amazon EFS dans le Guide de l'utilisateur Amazon Elastic File System.

Un point d'accès relie chaque instance de la fonction à la cible de montage droite pour la zone de disponibilité à laquelle elle se connecte. Pour des performances optimales, créez un point d'accès avec un chemin non racine et limitez le nombre de fichiers que vous créez dans chaque répertoire. L'exemple suivant crée un répertoire nommé my-function sur le système de fichiers et définit l'ID propriétaire sur 1001 avec les autorisations d'annuaire standard (755).

Exemple configuration du point d'accès
  • Nomfiles

  • ID de l'utilisateur1001

  • ID du groupe1001

  • Chemin/my-function

  • Permissions (Autorisations755

  • ID d'utilisateur du propriétaire1001

  • ID d'utilisateur du groupe1001

Lorsqu'une fonction utilise le point d'accès, elle reçoit l'ID utilisateur 1001 et dispose d'un accès complet au répertoire.

Pour plus d'informations, consultez les rubriques suivantes dans le Guide de l'utilisateur Amazon Elastic File System User.

Connexion à un système de fichiers (console)

Une fonction se connecte à un système de fichiers sur le réseau local dans un VPC. Les sous-réseaux auquel votre fonction se connecte peuvent être les mêmes sous-réseaux qui contiennent des points de montage pour votre système de fichiers, ou des sous-réseaux de la même zone de disponibilité qui peuvent acheminer le trafic NFS (port 2049) vers le système de fichiers.

Note

Si votre fonction n'est pas déjà connectée à un VPC, veuillez consulter Permettre aux fonctions Lambda d'accéder aux ressources d'un Amazon VPC.

Pour configurer l'accès au système de fichiers
  1. Ouvrez la page Functions (Fonctions) de la console Lambda.

  2. Choisissez une fonction.

  3. Sélectionnez Configuration, puis File systems (Systèmes de fichiers).

  4. Sous Système de fichiers, choisissez Ajouter un système de fichiers.

  5. Configurez les propriétés suivantes :

    • Système de fichiers EFS – Point d'accès d'un système de fichiers dans le même VPC.

    • Chemin de montage local – Emplacement où le système de fichiers est monté sur la fonction Lambda, commençant par /mnt/.

Tarification

Amazon EFS facture le stockage et le débit, avec des tarifs qui varient selon la classe de stockage. Pour plus d'informations, consultez Tarification Amazon EFS.

Lambda facture le transfert de données entre VPC. Cela ne s'applique que si le VPC de votre fonction est appairé à un autre VPC avec un système de fichiers. Les tarifs sont les mêmes que pour le transfert de données Amazon EC2 entre VPC dans une même région. Pour plus d’informations, consultez Tarification ambda.

Pour plus d'informations sur l'intégration de Lambda avec Amazon EFS, consultez Utilisation d’Amazon EFS avec Lambda.