Démarrage avec Lambda - AWS Lambda

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 appeler une fonction, puis afficher les journaux et les métriques.

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
  1. Ouvrez https://portal.aws.amazon.com/billing/signup.

  2. 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 créez 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/ et en cliquant sur Mon compte.

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écuriser votre Utilisateur racine d'un compte AWS
  1. 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.

  2. 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 exercice de mise en route, créez une fonction Lambda en utilisant un plan. Un plan fournit un exemple de code pour effectuer un traitement minimal. La plupart des plans traitent des événements provenant de sources d'événements spécifiques, comme Amazon Simple Storage Service (Amazon S3), Amazon DynamoDB ou une application personnalisée.

Pour créer une fonction Lambda à l'aide de la console
  1. Ouvrez la page Functions (Fonctions) de la console Lambda.

  2. Choisissez Créer une fonction.

  3. Sélectionnez Use a blueprint (Utiliser un plan).

  4. Ouvrez la liste déroulante Sélectionner un plan et recherchez la fonction Hello world. Sélectionnez la version nodejs14.x ou python3.7 du plan.

  5. Indiquez un Function name (Nom de fonction).

  6. Pour Execution role (Rôle d'exécution), choisissez Create a new role with basic Lambda permissions (Créer un nouveau rôle avec les autorisations Lambda de base). Lambda crée un rôle d'exécution qui accorde à la fonction l'autorisation de charger des journaux sur Amazon CloudWatch. La fonction Lambda endosse le rôle d'exécution lorsque vous appelez votre fonction, et l'utilise pour créer des informations d'identification pour le kit SDK AWS et lire les données à partir des sources d'événements.

Appeler la fonction

Pour appeler la fonction depuis la console, créez un événement de test.

  1. Choisissez l’onglet Test.

  2. Pour Test event action (Action relative à l'événement de test), choisissez Create new event (Créer un événement).

  3. Pour Nom de l'événement, entrez le nom de l'événement de test.

  4. Pour Event sharing settings (Paramètres de partage de l'événement), choisissez Private (Privé).

  5. Pour Template (Modèle), laissez l'option hello-world par défaut.

  6. Dans le Event JSON (JSON d'événement), remplacez value1 par hello, world!. Ne modifiez pas key1 ni la structure de l'événement. Exemple :

    { "key1": "hello, world!", "key2": "value2", "key3": "value3" }
  7. Choisissez Save (Enregistrer), puis Test (Tester). Lambda appelle la fonction en votre nom. Le gestionnaire de fonctions reçoit et traite l'exemple d'événement.

  8. Examinez le Execution result (Résultat de l'exécution). Sous Details (Détails), vous devriez voir la valeur que vous avez saisie à l'étape 6 : "hello, world!". Le résultat de l'exécution comprend également les informations suivantes :

    • La section Summary (Récapitulatif) montre les informations clés de la ligne REPORT dans le journal d'appels.

    • La section Log output (Sortie de journal) montre le journal d'appels complet. Lambda écrit tous les journaux d'appels dans Amazon CloudWatch.

  9. Choisissez Test (Tester) pour appeler la fonction quelques fois de plus et recueillir des métriques supplémentaires que vous pourrez consulter à l'étape suivante.

  10. Choisissez l'onglet Monitor (Surveiller). Cette page affiche des graphiques pour les métriques que Lambda envoie à CloudWatch.

    Note

    L'affichage des journaux après l'appel d'une fonction peut prendre de 5 à 10 minutes.

    Pour en savoir plus sur ces graphiques, consultez Surveillance des fonctions sur la console Lambda.

Nettoyage

Si 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
  1. Ouvrez la page Functions (Fonctions) de la console Lambda.

  2. Choisissez une fonction.

  3. Sélectionnez Actions, Delete (Supprimer).

  4. Dans la fenêtre de dialogue Delete function (Supprimer la fonction), saisissez delete, puis sélectionnez Delete (Supprimer).

Pour supprimer le groupe de journaux
  1. Ouvrez la page Log Groups (Groupes de journaux) de la console CloudWatch.

  2. Sélectionnez le groupe de journaux de la fonction (/aws/lambda/my-function).

  3. Sélectionnez Actions, Delete log group(s) (Supprimer le ou les groupes de journaux).

  4. 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
  1. Accédez à la page Roles (Rôles) de la AWS Identity and Access Management console (IAM).

  2. Sélectionnez le rôle d'exécution de la fonction (par exemple, my-function-role-31exxmpl).

  3. Choisissez Supprimer.

  4. 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). Pour obtenir des exemples d'applications entièrement fonctionnelles, consultez Exemples d'applications Lambda.

Ressources supplémentaires

Après avoir créé votre première fonction Lambda, essayez un tutoriel :

Pour en savoir plus sur le développement d'applications sans serveur avec Lambda, consultez ce qui suit :

Accès à Lambda

Vous pouvez créer, appeler et gérer les fonctions Lambda à l'aide de l'une des interfaces suivantes :

  • Console de gestion AWS – Fournit une interface web pour accéder à vos fonctions. Pour plus d'informations, consultez Console Lambda.

  • AWS Command Line Interface (AWS CLI) – Fournit des commandes pour un vaste ensemble de services AWS, dont Lambda, pris en charge sur Windows, macOS et Linux. Pour plus d'informations, consultez Utilisation de Lambda avec AWS CLI.

  • Kits SDK AWS – Fournissent des API spécifiques du langage et gèrent de nombreux détails de la connexion, tels que le calcul de signature, la gestion des nouvelles tentatives de demande et la gestion des erreurs. Pour plus d'informations, consultez Kits SDK AWS.

  • AWS CloudFormation – Permet de créer des modèles qui définissent vos applications Lambda. Pour plus d'informations, consultez AWS LambdaApplications . AWS CloudFormation prend également en charge AWS Cloud Development Kit (AWS CDK).

  • AWS Serverless Application Model (AWS SAM) – Fournit des modèles et une interface de ligne de commande pour configurer et gérer les applications AWS sans serveur. Pour plus d'informations, consultez Démarrez avec AWS SAM.

Création et déploiement de fonctions

Le tableau suivant répertorie les langages que Lambda prend en charge, ainsi que les outils et les options que vous pouvez utiliser. Les outils et les options proposés varient en fonction :

  • Langue que vous utilisez pour écrire le code de votre fonction Lambda.

  • Des bibliothèques que vous utilisez dans votre code. Les runtimes Lambda fournissent certaines bibliothèques, et vous devez charger les bibliothèques supplémentaires dont vous avez besoin.

Langage Outils et options pour la création de code

Node.js

Java

C#

Python

Ruby

  • Console Lambda

  • Votre propre environnement de création

Go

  • Votre propre environnement de création

PowerShell

Vous déployez votre code de fonction sur Lambda à l'aide d'un package de déploiement. Lambda prend en charge deux types de packages de déploiement :