Démarrage avec Lambda
Pour démarrer avec Lambda, utilisez la console Lambda pour créer une fonction. En quelques minutes, vous pouvez créer et déployer une fonction, mais aussi la tester dans la console.
Au cours du didacticiel, vous apprendrez certains concepts fondamentaux de Lambda, tels que la façon de transmettre des arguments à votre fonction à l'aide de l'objet d'événement Lambda. Vous apprendrez également à renvoyer les résultats des journaux de votre fonction et comment consulter les journaux d'invocation de votre fonction dans CloudWatch Logs.
Pour simplifier les choses, vous devez créer votre fonction à l'aide de l'exécution Python ou Node.js. Avec ces langages interprétés, vous pouvez modifier le code de fonction directement dans l'éditeur de code intégré à la console. Avec des langages compilés tels que Java et C#, vous devez créer un package de déploiement sur votre machine de génération locale et le télécharger sur Lambda. Pour en savoir plus sur le déploiement de fonctions sur Lambda à l'aide d'autres environnements d'exécution, consultez les liens figurant dans la section Ressources supplémentaires et prochaines étapes.
Astuce
Pour apprendre à créer des solutions sans serveur, consultez le Guide du développeur sans serveur.
Prérequis
Si vous n'avez pas de compte Compte AWS, procédez comme suit pour en créer un.
Pour s'inscrire à un Compte AWS
Suivez les instructions en ligne.
Dans le cadre de la procédure d'inscription, vous recevrez un appel téléphonique et vous saisirez un code de vérification en utilisant le clavier numérique du téléphone.
Lorsque vous souscrivez à un Compte AWS, un Utilisateur racine d'un compte AWS est créé. Par défaut, seul l'utilisateur root a accès à l'ensemble des Services AWS et des ressources de ce compte. En tant que bonne pratique de sécurité, attribuer un accès administratif à un utilisateur administratif, et utilisez uniquement l'utilisateur root pour effectuer tâches nécessitant un accès utilisateur root.
AWS vous envoie un e-mail de confirmation lorsque le processus d'inscription est terminé. Vous pouvez afficher l'activité en cours de votre compte et gérer votre compte à tout moment en accédant à https://aws.amazon.com/
Une fois que vous vous êtes inscrit à un Compte AWS, créez un utilisateur administratif afin de ne pas utiliser l'utilisateur root pour les tâches quotidiennes.
Sécurisation de votre Utilisateur racine d'un compte AWS
-
Connectez-vous à la AWS Management Console
en tant que propriétaire du compte en sélectionnant Root user (Utilisateur racine) et en saisissant l'adresse e-mail de Compte AWS. Sur la page suivante, saisissez votre mot de passe. Pour obtenir de l'aide pour vous connecter en utilisant l'utilisateur root, consultez Connexion en tant qu'utilisateur root dans le Guide de l'utilisateur Connexion à AWS.
-
Activez l'authentification multifactorielle (MFA) pour votre utilisateur root.
Pour obtenir des instructions, consultez Activation d'un dispositif MFA virtuel pour l'utilisateur root de votre Compte AWS (console) dans le Guide de l'utilisateur IAM.
Création d'un utilisateur administratif
-
Pour vos tâches administratives quotidiennes, octroyez un accès administratif à un utilisateur administratif dans AWS IAM Identity Center (successor to AWS Single Sign-On).
Pour plus d'informations, consultez Mise en route dans le Guide de l'utilisateur AWS IAM Identity Center (successor to AWS Single Sign-On).
Connexion en tant qu'utilisateur administratif
-
Pour vous connecter avec votre utilisateur IAM Identity Center, utilisez l'URL de connexion qui a été envoyée à votre adresse e-mail lorsque vous avez créé l'utilisateur IAM Identity Center.
Pour obtenir de l'aide pour vous connecter à l'aide d'un utilisateur IAM Identity Center, consultez Connexion au portail d'accès AWS dans le Guide de l'utilisateur Connexion à AWS.
Créer une fonction Lambda à l'aide de la console
Dans cet exemple, votre fonction prend un objet JSON contenant deux valeurs entières étiquetées "length"
et "width"
. La fonction multiplie ces valeurs pour calculer une zone et la renvoie sous forme de chaîne JSON.
Votre fonction imprime également la zone calculée, ainsi que le nom de son groupe de journaux CloudWatch. Plus loin dans le didacticiel, vous apprendrez à utiliser CloudWatch Logs pour consulter les enregistrements de l'invocation de vos fonctions.
Pour créer votre fonction, vous utilisez d'abord la console pour créer une fonction Hello world de base. À l'étape suivante, vous devez ensuite ajouter votre propre code de fonction.
Pour créer une fonction Lambda Hello world à l'aide de la console
Ouvrez la page Functions
(Fonctions) de la console Lambda. -
Choisissez Créer une fonction.
-
Sélectionnez Créer à partir de zéro.
-
Dans le volet Informations de base, pour Nom de la fonction, entrez
.myLambdaFunction
-
Pour Environnement d'exécution, choisissez Node.js 18.x ou Python 3.11
-
Laissez architecture défini sur x86_64 et choisissez Créer une fonction.
Lambda crée une fonction qui renvoie le messageHello from Lambda!
Lambda crée également unrôle d'exécutionpour votre événement. Un rôle d'exécution est un rôle AWS Identity and Access Management (IAM) qui accorde à la fonction Lambda l'autorisation d'accéder aux Services AWS et aux ressources. Pour votre fonction, le rôle créé par Lambda accorde des autorisations d'écriture de base dans CloudWatch Logs.
Vous utilisez désormais l'éditeur de code intégré de la console pour remplacer le code Hello world créé par Lambda avec votre propre code de fonction.
Invoquer la fonction Lambda à l'aide de la console
Pour invoquer votre fonction à l'aide de la console Lambda, vous devez d'abord créer un événement de test à envoyer à votre fonction. L'événement est un document au format JSON contenant deux paires clé-valeur avec les clés "length"
et "width"
.
Pour créer l'événement de test
-
Dans le volet Source du code, choisissez Test.
-
Sélectionnez Créer un événement.
-
Dans Nom de l'événement, saisissez
myTestEvent
. -
Dans le panneau Événement JSON, remplacez les valeurs par défaut en collant ce qui suit :
{ "length": 6, "width": 7 }
-
Choisissez Enregistrer.
Vous pouvez maintenant tester votre fonction et utiliser la console Lambda et CloudWatch Logs pour consulter les enregistrements d'invocation de votre fonction.
Pour tester votre fonction et consulter les enregistrements d'invocation dans la console
-
Dans le volet Source du code, choisissez Test. Lorsque votre fonction termine son exécution, les journaux des réponses et des fonctions s'afficheront dans l'onglet Résultats d'exécution. Vous devriez voir des résultats similaires à ce qui suit.
Dans cet exemple, vous avez invoqué votre code à l'aide de la fonctionnalité de test de la console. Cela signifie que vous pouvez consulter les résultats d'exécution de votre fonction directement dans la console. Lorsque votre fonction est invoquée en dehors de la console, vous devez utiliser CloudWatch Logs.
Pour consulter les enregistrements d'invocation de votre fonction dans CloudWatch Logs
-
Ouvrez la page Log Groups
(Groupes de journaux) de la console CloudWatch. -
Choisissez le groupe de journaux de votre fonction (
/aws/lambda/myLambdaFunction
). Il s'agit du nom du groupe de journaux que votre fonction a imprimé sur la console. -
Dans l'onglet Flux de journaux, choisissez le flux de journaux pour l'invocation de votre fonction.
Vous devez voir des résultats similaires à ce qui suit :
Nettoyage
Lorsque vous avez terminé d'utiliser l'exemple de fonction, supprimez-le. Vous pouvez également supprimer le groupe de journaux qui stocke les journaux de la fonction, et le rôle d'exécution créé par la console.
Pour supprimer une fonction Lambda
Ouvrez la page Functions
(Fonctions) de la console Lambda. -
Choisissez une fonction.
-
Sélectionnez Actions, Delete (Supprimer).
-
Dans la fenêtre de dialogue Delete function (Supprimer la fonction), saisissez delete, puis sélectionnez Delete (Supprimer).
Pour supprimer le groupe de journaux
-
Ouvrez la page Log Groups (Groupes de journaux)
de la console CloudWatch. -
Sélectionnez le groupe de journaux de la fonction (
/aws/lambda/my-function
). -
Sélectionnez Actions, Delete log group(s) (Supprimer le ou les groupes de journaux).
-
Dans la boîte de dialogue Delete log group(s) (Supprimer le ou les groupes de journaux), sélectionnez Delete (Supprimer).
Pour supprimer le rôle d'exécution
-
Accédez à la page Roles (Rôles)
de la AWS Identity and Access Management console (IAM). -
Sélectionnez le rôle d'exécution de la fonction (par exemple,
myLambdaFunction-role-
).31exxmpl
-
Choisissez Supprimer.
-
Dans la fenêtre de dialogue Delete role (Supprimer le rôle), saisissez le nom du rôle, puis sélectionnez Delete (Supprimer).
Vous pouvez automatiser la création et le nettoyage des fonctions, des groupes de journaux et des rôles avec AWS CloudFormation et AWS Command Line Interface (AWS CLI).
Ressources supplémentaires et prochaines étapes
Maintenant que vous avez créé et testé une fonction Lambda simple à l'aide de la console, procédez comme suit :
-
Découvrez comment ajouter des dépendances à votre code et à les déployer à l'aide d'un package de déploiement .zip. Choisissez parmi les liens suivants les langages qui vous intéressent.
-
Suivez le didacticiel Utilisation d'un déclencheur Amazon S3 pour invoquer une fonction Lambda pour savoir comment configurer une fonction Lambda afin qu'elle soit invoquée par un autre Service AWS.
-
Choisissez l'un des didacticiels suivants pour un exemple plus complexe d'utilisation de Lambda avec d'autres Services AWS.
-
Utilisation de Lambda avec API Gateway : créez une API REST Amazon API Gateway qui invoque une fonction Lambda.
-
Utilisation d'une fonction Lambda pour accéder à une base de données Amazon RDS: utilisez une fonction Lambda pour écrire des données dans une base de données Amazon Relational Database Service (Amazon RDS) via un proxy RDS.
-
Utilisation d'un déclencheur Amazon S3 pour créer des images miniatures : utilisez une fonction Lambda pour créer une miniature chaque fois qu'un fichier image est chargé dans un compartiment Amazon S3.
-