Get Hands-on with Amazon EKS - Workshop Event Series
Whether you're taking your first steps with Kubernetes or you're an experienced practitioner looking to sharpen your skills, our Amazon EKS workshop series delivers practical, real-world experience that moves you forward. Learn directly from AWS solutions architects and EKS specialists through hands-on sessions designed to build your confidence with Kubernetes. Register now and start building with Amazon EKS!
Comment utiliser des couches pour intégrer la dernière version d’AWS SDK pour JavaScript dans ma fonction Lambda Node.js ?
Certaines fonctionnalités de la dernière version d’un kit AWS SDK sont manquantes dans l’environnement d’exécution AWS Lambda. Je souhaite intégrer la dernière version d’AWS SDK pour JavaScript dans ma fonction Lambda Node.js.
Brève description
Pour intégrer la dernière version d’un kit AWS SDK dans le package de déploiement de votre fonction Lambda, créez une couche Lambda. Ajoutez ensuite cette couche à votre fonction.
Remarque : Pour les versions 16 et ultérieures de Node.js, les exécutions Lambda Node.js incluent le kit AWS SDK pour JavaScript version 2. Pour les versions 18 et ultérieures de Node.js, les exécutions Lambda Node.js incluent le kit AWS SDK pour JavaScript version 3. Pour plus d'informations, consultez la documentation du kit AWS SDK pour JavaScript.
Pour obtenir la liste complète des exécutions et des versions des kits AWS SDK utilisés par Lambda, consultez la page Environnements d’exécution Lambda.
Remarque : La résolution suivante augmente la taille du package de déploiement de votre fonction. Pour en savoir plus sur les quotas de stockage Lambda, consultez la page Quotas Lambda.
Résolution
Remarque : Si des erreurs surviennent lorsque vous exécutez des commandes de l'interface de la ligne de commande AWS (AWS CLI), consultez la section Résoudre des erreurs liées à l’AWS CLI. Vérifiez également que vous utilisez bien la version la plus récente de l'interface.
(Facultatif) Identifier la version du kit AWS SDK utilisé par votre fonction
Procédez comme suit :
Remarque : Cette méthode doit uniquement être utilisée pour les versions 16 et antérieures de Node.js.
-
Mettez à jour le code de la fonction pour renvoyer la version du kit AWS SDK que la fonction utilise lorsque vous invoquez celle-ci :
const AWS = require('aws-sdk') exports.handler = async (event) => { return AWS.VERSION; }; -
Comparez la version du kit AWS SDK renvoyée par votre fonction avec la dernière version du kit AWS SDK dans la documentation AWS SDK.
Installer et packager la dernière version du kit AWS SDK
Remarque : Les packages de déploiement doivent être compatibles avec l’exécution Lambda que vous utilisez. Il est recommandé d’utiliser le même système d’exploitation (OS) pour votre exécution que celui spécifié dans la section Environnements d’exécution Lambda.
Dans un environnement de développement local compatible avec Lambda, procédez comme suit :
-
Exécutez la commande suivante pour créer un répertoire :
mkdir -p aws-sdk-layer/nodejs -
Exécutez la commande suivante pour passer au répertoire :
cd aws-sdk-layer/nodejs -
Installez le kit AWS SDK pour votre version d’exécution de Node.js :
Node.js 16 et versions antérieures (AWS SDK version 2)
Pour installer la dernière version du kit AWS SDK version 2, utilisez une instance compatible avec Amazon Linux 2 afin d’exécuter la commande suivante :npm install aws-sdkPour plus d'informations, consultez la section Tutoriel : Configuration de Node.js sur une instance Amazon EC2.
Remarque : Il est recommandé d’utiliser un environnement Amazon Linux 2 lors du développement de ressources Lambda.
-ou-
Si vous utilisez un système d’exploitation Windows ou macOS pour le développement, utilisez Docker pour exécuter la commande suivante :docker run --entrypoint "" -v "$PWD":/var/task "public.ecr.aws/lambda/nodejs:<version>" /bin/sh -c "npm install aws-sdk; exit"Remarque : Avant d’exécuter cette commande, consultez le site Web de Docker pour vérifier que vous utilisez la version la plus récente de Docker.
Node.js 18 et versions ultérieures (AWS SDK version 3)
Pour installer la dernière version du SDK AWS version 3, consultez la section Installer le kit SDK pour JavaScript. -
Créez un fichier .zip à charger sur votre couche Lambda :
zip -r ../package.zip ../ -
(Facultatif) Vérifiez la version du kit AWS SDK que vous avez installé :
cat package-lock.jsonExemple de sortie :
{ "requires": true, "lockfileVersion": 1, "dependencies": { "aws-sdk": { "version": "2.888.0", ...
Utiliser l’AWS CLI ou la console Lambda pour créer une couche Lambda et l’ajouter à votre fonction
AWS CLI
-
Pour créer une nouvelle couche Lambda qui inclut la dernière version du kit AWS SDK, exécutez la commande publish-layer-version suivante :
aws lambda publish-layer-version --layer-name node_sdk --description "My layer" --license-info "MIT" --compatible-runtimes --zip-file fileb://../package.zip --regionRemarque : Remplacez node_sdk par le nom de votre couche et My layer par une description de la couche. Remplacez également la valeur compatible-runtimes par l’exécution que vous utilisez et la valeur region par la région AWS dans laquelle se trouvent votre fonction et votre couche.
-
Dans la sortie, copiez la valeur de LayerVersionArn à utiliser à l'étape suivante.
-
Pour ajouter la couche à votre fonction, exécutez la commande update-function-configuration suivante :
aws lambda update-function-configuration --function-name my-function --layers arn:aws:lambda:us-east-2:123456789012:layer:node_sdk:1 --regionRemarque : Remplacez les valeurs my-function par le nom de votre fonction, arn:aws:lambda:us-east-2:123456789012:layer:node_sdk:1 par la valeur LayerVersionArn de votre sortie et region par votre région.
Pour plus d'informations, consultez la section Gestion des dépendances Lambda à l'aide de couches.
Console Lambda
Pour créer une couche Lambda et l'ajouter à votre fonction dans la console Lambda, procédez comme suit :
- Ouvrez la page Couches de la console Lambda.
- Choisissez Créer une couche.
- Dans Nom, saisissez un nom pour la nouvelle couche.
- Choisissez Charger un fichier .zip, puis choisissez le nom du fichier .zip de votre package de déploiement.
- Sélectionnez Créer.
- Ouvrez la page Fonctions de la console Lambda, puis choisissez le nom de la fonction à laquelle vous souhaitez ajouter la couche.
- Dans Couches, choisissez Ajouter une couche.
- Sous Choisir une couche, choisissez Couches personnalisées.
- Choisissez la liste déroulante Couches personnalisées, puis choisissez votre couche personnalisée.
- Sélectionnez Ajouter.
(Facultatif) Tester la configuration
Suivez les étapes décrites dans la section (Facultatif) Identification de la version du kit AWS SDK utilisé par votre fonction pour invoquer votre fonction. La fonction renvoie la version du kit AWS SDK qu’elle utilise.
Informations connexes
Bonnes pratiques d’utilisation des fonctions AWS Lambda
Comment créer un package de déploiement Lambda pour Node.js ?
- Sujets
- ServerlessCompute
- Balises
- AWS Lambda
- Langue
- Français
Vidéos associées


Contenus pertinents
- demandé il y a 6 mois
- demandé il y a 2 ans
- demandé il y a 2 ans
AWS OFFICIELA mis à jour il y a 3 ans