Wie kann ich zusätzliche Listener für AWS-Elastic-Beanstalk-Umgebungen erstellen, die einen gemeinsamen Load Balancer verwenden?

Lesedauer: 2 Minute
0

Ich möchte zusätzliche Listener für AWS-Elastic-Beanstalk-Umgebungen erstellen, die einen gemeinsamen Load Balancer verwenden.

Kurzbeschreibung

Wenn Sie einen gemeinsam genutzten Load Balancer mit Elastic Beanstalk verwenden, können Sie mit der Optionseinstellung aws:elbv2:listener:listener_port oder der Elastic-Beanstalk-Konsole keine zusätzlichen Listener erstellen. Das liegt daran, dass Elastic Beanstalk den Load Balancer nicht verwaltet.

Sie können mit .ebextension benutzerdefinierte Ressourcen verwenden, um zusätzliche Listener für eine Elastic-Beanstalk-Umgebung mit einem gemeinsam genutzten Load Balancer zu erstellen.

**Hinweis:**Es hat sich bewährt, je nach dem Lebenszyklus der Umgebung zusätzliche Listener zuzuordnen und die Listener zu entfernen, wenn Sie die Umgebung beenden.

Lösung

  1. Erstellen Sie einen Application Load Balancer, der einen Standard-Listener und eine Standard-Zielgruppe enthält.

  2. Erstellen Sie eine YAML-Konfigurationsdatei mit dem Namen additional-listener.config:

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

**Hinweis:**Die vorherige YAML-Konfigurationsdatei folgt der AWS-CloudFormation-Spezifikation für die Ressource AWS::ElasticLoadBalancingV2: :Listener.

  1. Fügen Sie die Konfigurationsdatei dem Ordner .ebextensions hinzu, der Teil des Anwendungsquellpakets ist.

4.Erstellen Sie eine ZIP-Datei des aktualisierten Anwendungsquellpakets.

  1. Verwenden Sie die ZIP-Datei, um eine neue Elastic-Beanstalk-Umgebung zu erstellen. Oder aktualisieren Sie eine bestehende Umgebung, die mit dem gemeinsam genutzten Load Balancer aus dem vorherigen Schritt konfiguriert wurde.

Die Konfigurationsdatei erstellt einen HTTP-Listener auf Port 8080 für den gemeinsam genutzten Load Balancer, der Ihrer Elastic-Beanstalk-Umgebung zugeordnet ist. Anschließend leitet der Listener den gesamten Datenverkehr an den Standardprozess weiter. Um dem Listener Regeln hinzuzufügen, verwenden Sie die Ressourcendefinition AWS::ElasticLoadBalancingV2::ListenerRule, um die Konfigurationsdatei zu erweitern. Da dieser Listener als zusätzliche Ressource als Teil der Elastic-Beanstalk-Umgebung erstellt wird, wird der Listener entfernt, wenn die Umgebung beendet wird. Weitere Informationen finden Sie unter Konfigurieren eines gemeinsam genutzten Application Load Balancers.

AWS OFFICIAL
AWS OFFICIALAktualisiert vor 9 Monaten