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 accorder un accès Internet à une fonction Lambda connectée à Amazon VPC ?
Je souhaite accorder un accès Internet à ma fonction AWS Lambda dotée d’une connexion à un Amazon Virtual Private Cloud (Amazon VPC).
Brève description
Par défaut, les fonctions Lambda s'exécutent dans un VPC géré par Lambda qui dispose d'un accès Internet. Même lorsque vous associez une fonction Lambda à un sous-réseau public, elle ne peut pas se connecter à Internet car la fonction comporte une adresse IP privée.
Pour donner à votre fonction Lambda un accès Internet aux ressources d'un VPC de votre compte AWS, ajoutez une passerelle NAT ou une instance NAT. La configuration limite la fonction aux ressources du VPC, sauf si celui-ci dispose d'un accès Internet.
Remarque : Vous pouvez également utiliser les points de terminaison de VPC d’interface pour vous connecter aux services AWS pris en charge à partir d’une connexion Amazon VPC sans accès Internet.
Résolution
Vérifiez que les ressources suivantes accordent un accès Internet sortant à votre fonction Lambda :
- Tables de routage de sous-réseaux
- Règles relatives aux groupes de sécurité
- Règles de la liste de contrôle d’accès au réseau (ACL réseau)
Si l’une des ressources répertoriées ci-dessus ne permet pas à votre fonction Lambda d’accéder à Internet, vous devez la reconfigurer pour accorder à votre fonction un accès Internet. Vous pouvez exécuter AWSSupport-TroubleshootLambdaInternetAccess ou bien accorder manuellement un accès à Internet.
Utiliser le dossier d'exploitation AWSSupport-TroubleshootLambdaInternetAccess
Prérequis
Avant de démarrer le dossier d’exploitation, assurez-vous que votre utilisateur ou rôle Gestion des identités et des accès AWS (AWS IAM) dispose des autorisations requises. Pour plus d'informations, consultez la section Autorisations IAM requises de la rubrique AWSSupport-TroubleshootLambdaInternetAccess.
Procédez comme suit :
- Ouvrez la console Systems Manager.
- Dans le volet de navigation, développez Outils de gestion des modifications, puis sélectionnez Automatisation.
- Sélectionnez Exécuter le dossier d'exploitation.
- Choisissez l'onglet Appartenant à Amazon, puis recherchez TroubleshootLambdaInternetAccess.
- Choisissez la carte AWSSupport-TroubleshootLambdaInternetAccess.
Remarque : Ne choisissez pas le nom de l'automatisation. - Sélectionnez Suivant.
- Sélectionnez Exécuter.
Examinez la sortie du dossier d'exploitation pour déterminer la cause de la perte d'accès à Internet par votre fonction Lambda et comment résoudre le problème.
Accorder manuellement l'accès à Internet
Créer un sous-réseau public et un sous-réseau privé dans Amazon VPC
Créez un sous-réseau privé pour votre fonction Lambda et un sous-réseau public pour votre passerelle NAT. Dans le champ Identification de nom, saisissez un nom pour chaque sous-réseau qui l'identifie comme public ou privé. Par exemple, utilisez Sous-réseau public, Lambda privé 1 et Lambda privé 2.
Remarque : Il est recommandé de créer plusieurs sous-réseaux privés dans différentes zones de disponibilité. Cette action crée une redondance et permet à Lambda de maintenir une disponibilité élevée pour votre fonction.
Utiliser une passerelle Internet pour ajouter un accès Internet au sous-réseau
Créez une passerelle Internet. Puis, attachez-le à votre VPC.
Créer une passerelle NAT
Créez une passerelle NAT. Dans Sous-réseau, choisissez le sous-réseau que vous souhaitez rendre public. Par exemple, sélectionnez Sous-réseau public.
(Facultatif) Testez la configuration de votre passerelle NAT.
Créer deux tables de routage personnalisées
Remarque : Lorsqu'une fonction Lambda d'un VPC envoie des requêtes, elle sélectionne de manière aléatoire un sous-réseau associé. Si la fonction utilise un sous-réseau incorrectement configuré, un message d'erreur s'affiche. Pour éviter ce problème, assurez-vous d'utiliser la même configuration pour tous les sous-réseaux utilisés par votre fonction.
Pour configurer vos tables de routage personnalisées, procédez comme suit :
- Créez une table de routage pour le sous-réseau public et une autre pour le sous-réseau privé.
Dans le champ Identification de nom, saisissez un nom pour chaque table de routage afin de vous aider à identifier le sous-réseau auquel elle est associée. Par exemple, utilisez Sous-réseau public et Lambda privé. - Associez les sous-réseaux privés et publics aux tables de routage.
- Ajoutez une nouvelle route aux tables de routage et incluez les configurations suivantes :
Dans Destination, saisissez 0.0.0.0/0.
Dans Cible, choisissez Passerelle Internet pour le sous-réseau public et saisissez l'ID de la passerelle Internet. Choisissez Passerelle NAT pour le sous-réseau privé et saisissez l'ID de la passerelle NAT.
Important : Si vous utilisez une instance NAT au lieu d'une passerelle NAT, sélectionnez Interface réseau au lieu de Passerelle NAT. - Sélectionnez Enregistrer les routes.
Remarque : Vérifiez que les routes qui mènent à votre passerelle NAT sont à l’état Actif. Si vous supprimez la passerelle NAT et que vous n'avez pas mis à jour les routes, celles-ci indiquent l'état Blackhole.
Vérifier la configuration de votre ACL réseau
L'ACL réseau par défaut de votre VPC autorise l’intégralité du trafic entrant et sortant. Si vous modifiez les règles ACL réseau, vérifiez que vous autorisez toujours les requêtes sortantes provenant de votre fonction Lambda. Assurez-vous également que votre ACL réseau autorise le trafic entrant suivant :
- Pour un sous-réseau privé qui utilise une passerelle NAT, autorisez le trafic entrant sur les ports éphémères 1024-65535.
- Pour un sous-réseau privé qui utilise une instance NAT, autorisez le trafic entrant sur les ports éphémères qu'utilise le système d'exploitation de votre instance NAT.
Pour plus d’informations, consultez la section Garantir la confidentialité du trafic inter réseau dans Amazon VPC.
Créer un rôle d’exécution Lambda
Créez un rôle d'exécution Lambda pour votre VPC. Puis, mettez à jour la fonction Lambda pour utiliser le nouveau rôle d'exécution Lambda.
Configurer votre fonction Lambda pour la connecter à votre VPC
Attachez votre fonction à votre VPC. Dans Sous-réseaux, sélectionnez votre sous-réseau privé. Dans Groupes de sécurité, sélectionnez un groupe de sécurité.
Remarque : Le groupe de sécurité par défaut autorise tout le trafic Internet sortant et est suffisant pour la plupart des cas d'utilisation. Pour en savoir plus, consultez la section Contrôler le trafic vers vos ressources AWS à l’aide de groupes de sécurité.
Pour les fonctions Lambda dotées d’une connexion Amazon VPC, vous pouvez utiliser une passerelle Internet de sortie uniquement pour accéder à Internet. Pour plus d'informations, consultez la section IPv6 support.
Informations connexes
Résolution des problèmes de réseaux dans Lambda
Comment puis-je résoudre une erreur ETIMEDOUT dans ma fonction Lambda ?
Permettre aux fonctions Lambda d'accéder aux ressources d'un Amazon VPC
Comment puis-je corriger les défaillances de la fonction Lambda ?
- Langue
- Français
Vidéos associées


Contenus pertinents
- demandé il y a 2 ans
- 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 5 ans