Comment résoudre l'erreur que je reçois lorsque mes instances Amazon EC2 ne parviennent pas à communiquer avec Elastic Beanstalk ?

Dernière mise à jour : 04/03/2021

Lorsque j'essaie de créer un environnement AWS Elastic Beanstalk, je reçois le message d'erreur suivant : « The EC2 instances failed to communicate with AWS Elastic Beanstalk, either because of configuration problems with the VPC or a failed EC2 instance. Check your VPC configuration and try launching the environment again. » (Les instances EC2 n'ont pas réussi à communiquer avec AWS Elastic Beanstalk. Cette erreur peut être due à des problèmes de configuration au niveau du VPC ou à un échec de l'instance EC2. Vérifiez la configuration de votre VPC et essayez à nouveau de lancer l'environnement.)

Brève description

Cette erreur se produit si vos instances Amazon Elastic Compute Cloud (Amazon EC2) ne sont pas configurées pour initier des connexions sortantes vers Elastic Beanstalk et d'autres points de terminaison de service. Vos instances doivent avoir accès à ces points de terminaison via un sous-réseau public, un sous-réseau privé ou des points de terminaison Amazon Virtual Private Cloud (Amazon VPC).

Résolution

  1. Vérifiez que la liste ACL réseau associée à vos sous-réseaux autorise les connexions sortantes vers Internet. Par exemple : 0.0.0.0/0
  2. Si vous sélectionnez un VPC Amazon personnalisé lors de la création de votre environnement Elastic Beanstalk, choisissez les sous-réseaux appropriés pour la visibilité de l'instance et de l'équilibreur de charge.
  3. Si vos instances EC2 se trouvent dans un sous-réseau public, vérifiez que la table de routage comporte une route vers Internet via une passerelle Internet. Par exemple : 0.0.0.0/0
  4. Si vos instances EC2 se trouvent dans un sous-réseau privé, vérifiez que la table de routage associée à la passerelle NAT ou à l'instance NAT dispose d'une route vers Internet. Par exemple : 0.0.0.0/0
    Remarque : votre passerelle NAT ou votre instance NAT doit être dans un sous-réseau public pour pouvoir communiquer avec Internet.
  5. Vérifiez que les attributs enableDnsHostnames et enableDnsSupport sont activés dans le VPC où vous avez lancé votre environnement Elastic Beanstalk.
  6. Si votre environnement Elastic Beanstalk utilise des points de terminaison d'un VPC, configurez les points de terminaison suivants pour lancer correctement votre environnement :
    Amazon Simple Queue Service (Amazon SQS)
    AWS CloudFormation
    Elastic Beanstalk (com.amazonaws.votre-région.elasticbeanstalk)
    Elastic Beanstalk health (elasticbeanstalk-health.votre-région.amazonaws.com)
    Amazon Simple Storage Service (Amazon S3)
    Remarque : si votre environnement doit interagir avec d'autres services AWS, créez les points de terminaison VPC appropriés pour ces services.