Comment faire pour créer des écouteurs supplémentaires pour les environnements AWS Elastic Beanstalk qui utilisent un équilibreur de charge partagé ?

Date de la dernière mise à jour : 12/03/2021

Je souhaite créer des écouteurs supplémentaires pour les environnements AWS Elastic Beanstalk qui utilisent un équilibreur de charge partagé.

Brève description

Si vous utilisez un équilibreur de charge partagé avec Elastic Beanstalk, vous ne pouvez pas créer d'écouteurs supplémentaires en utilisant le paramètre d'option aws:elbv2:listener:listener_port ou la console Elastic Beanstalk. Cela est dû au fait que l'équilibreur de charge n'est pas géré par Elastic Beanstalk.

Vous pouvez utiliser les ressources personnalisées .ebextension pour créer des écouteurs supplémentaires dans un environnement Elastic Beanstalk avec un équilibreur de charge partagé.

Conseil : Il est recommandé d'associer des écouteurs supplémentaires au cycle de vie de l'environnement et de supprimer les écouteurs si vous mettez fin à l'environnement.

Résolution

1.    Créez un Application Load Balancer qui inclut un écouteur et un groupe cible par défaut.

2.    Créez un fichier de configuration appelé additional-listener.config qui inclut les éléments suivants :

Resources:
  AdditionalHttpListener:
      Type: AWS::ElasticLoadBalancingV2::Listener
      Properties:
        LoadBalancerArn:
          "Fn::GetOptionSetting":
            Namespace: "aws:elbv2:loadbalancer"
            OptionName: "SharedLoadBalancer"
        DefaultActions:
        - Type: forward
          TargetGroupArn:
            Ref: AWSEBV2LoadBalancerTargetGroup
        Port: 8080
        Protocol: HTTP

Remarque : Le fichier YAML de l'étape 2 suit la spécification AWS CloudFormation pour la ressource AWS።ElasticLoadBalancingV2።Listener.

3.    Placez le fichier de l'étape 2 dans le dossier .ebextensions qui fait partie du groupe source de votre application.

4.    Créez un fichier ZIP de votre groupe source d'application mis à jour.

5.    Utilisez le fichier ZIP de l'étape 4 pour créer un nouvel environnement Elastic Beanstalk ou mettez à jour un environnement existant configuré avec l'équilibreur de charge partagé à partir de l'étape 1.

Le fichier de configuration de l'étape 2 crée un écouteur HTTP sur le port 8080 pour l'équilibreur de charge partagé associé à votre environnement Elastic Beanstalk. Ensuite, l'écouteur transfère tout le trafic au processus par défaut. Vous pouvez étendre davantage ce fichier de configuration pour ajouter des règles supplémentaires à l'écouteur à l'aide de la définition de la ressource AWS።ElasticLoadBalancingV2።ListenerRule dans CloudFormation.

Important : Cet écouteur étant créé en tant que ressource supplémentaire dans le cadre de l'environnement Elastic Beanstalk, l'écouteur est supprimé si l'environnement est terminé.

Remarque : Pour en savoir plus sur les équilibreurs de charge partagés et les règles d'écouteur par défaut, consultez Configuration d'un Application Load Balancer partagé.


Cet article vous a-t-il été utile ?


Besoin d'aide pour une question technique ou de facturation ?