0

J'ai deux fonctions Lambda distinctes: l'une pour lire un fichier à partir d'un compartiment S3 et l'autre pour écrire dans le cluster memcache. Ils fonctionnent bien individuellement. Cependant, je suis incapable de les «fusionner» ensemble. Premièrement, la fonction de lecture à partir de S3 fonctionne à partir du paramètre «Pas de VPC» alors que la fonction d'écriture dans Elastic Cache ne fonctionne que lorsque la fonction et le cluster sont dans le même VPC.Fonction AWS Lambda à lire à partir de S3 et écrire dans Elastic Cache

Deuxièmement, la fonction à lire à partir de S3 n'avait que la politique AmazonS3FullAccess appliquée. Bien que j'ai maintenant appliqué le AWSLambdaVPCAccessExecutionRole également, je ne suis pas sûr, si ce paramètre fonctionnera en raison de la différence de VPC mentionnée ci-dessus.

La fonction AWS Step est-elle la réponse? Comment créer une application sans serveur qui lit un fichier à partir de S3 et écrit dans le cluster Elastic Cache?

Répondre

1

Vous n'avez pas besoin de fonctions pas pour cela. Exécutez la fonction dans le VPC avec votre cluster ElastiCache. Ajoutez un point de terminaison S3 à votre VPC ou une passerelle NAT. Le point de terminaison S3 est la solution la plus simple. Votre fonction aura alors accès à ElastiCache et à S3.

Pour le rôle IAM, vous devez entrer dans IAM et créer un nouveau rôle ayant les autorisations AWSLambdaVPCAccessExecutionRole ainsi que les autorisations S3 nécessaires. Vous pouvez affecter plusieurs stratégies à un seul rôle si nécessaire. Puis affectez ce rôle à la fonction Lambda.

+0

Cette option semble avoir fonctionné. Merci! – cogitoergosum