Fügen Sie eine Listener-Regel für Ihren Application Load Balancer hinzu - Elastic Load Balancing

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Fügen Sie eine Listener-Regel für Ihren Application Load Balancer hinzu

Sie definieren eine Standardregel, wenn Sie einen Listener erstellen. Sie können jederzeit zusätzliche Regeln definieren. Jede Regel muss eine Aktion und eine Bedingung angeben und kann optional Transformationen angeben. Weitere Informationen finden Sie hier:

Console
So fügen Sie eine Regel hinzu
  1. Öffnen Sie die EC2 Amazon-Konsole unter https://console.aws.amazon.com/ec2/.

  2. Wählen Sie im Navigationsbereich Load Balancers aus.

  3. Wählen Sie den Load Balancer aus.

  4. Wählen Sie auf der Registerkarte Listener und Regeln den Text in der Spalte Protokoll: Port aus, um die Detailseite für den Listener zu öffnen.

  5. Wählen Sie auf der Registerkarte Regeln die Option Regel hinzufügen aus.

  6. (Optional) Um einen Namen für Ihre Regel anzugeben, erweitern Sie Name und Tags und geben Sie den Namen ein. Um weitere Tags hinzuzufügen, wählen Sie Zusätzliche Tags hinzufügen aus und geben Sie den Tag-Schlüssel und den Tag-Wert ein.

  7. Wählen Sie für jede Bedingung Bedingung hinzufügen, wählen Sie den Bedingungstyp aus und geben Sie die erforderlichen Bedingungswerte ein:

    • Host-Header — Wählen Sie den Übereinstimmungsmustertyp aus und geben Sie den Host-Header ein.

      Werteabgleich — Maximal 128 Zeichen. Die Groß- und Kleinschreibung muss nicht berücksichtigt werden. Zulässige Zeichen sind a-z, A-Z, 0-9; die folgenden Sonderzeichen: -_.; und Platzhalter (* und ?). Sie müssen mindestens ein "."-Zeichen einschließen. Es können nur alphabethische Zeichen nach dem letzten "."-Zeichen angegeben werden.

      Regex-Abgleich — Maximal 128 Zeichen.

    • Pfad — Wählen Sie den Typ des Übereinstimmungsmusters aus und geben Sie den Pfad ein.

      Werteabgleich — Maximal 128 Zeichen. Groß-/Kleinschreibung ist zu beachten. Zulässige Zeichen sind a-z, A-Z, 0-9; die folgenden Sonderzeichen: _-.$/~"'@:+; &; und Platzhalter (* und ?).

      Regex-Abgleich — Maximal 128 Zeichen.

    • Abfragezeichenfolge — Geben Sie Schlüssel/Wert-Paare oder Werte ohne Schlüssel ein.

      Maximal 128 Zeichen. Die Groß- und Kleinschreibung muss nicht berücksichtigt werden. Zulässige Zeichen sind a-z, A-Z, 0-9; die folgenden Sonderzeichen: _-.$/~"'@:+&()!,;=; und Platzhalter (* und ?).

    • HTTP-Anforderungsmethode — Geben Sie die HTTP-Anforderungsmethode ein.

      Maximal 40 Zeichen. Groß-/Kleinschreibung ist zu beachten. Zulässige Zeichen sind A-Z und die folgenden Sonderzeichen: -_. Platzhalter werden nicht unterstützt.

    • HTTP-Header — Wählen Sie den Match-Mustertyp aus und geben Sie den Namen des Headers und die Vergleichszeichenfolgen ein.

      • HTTP-Header-Name – Die Regel bewertet Anforderungen, die diesen Header enthalten, um zu bestätigen, dass die Werte übereinstimmen.

        Werteabgleich — Maximal 40 Zeichen. Die Groß- und Kleinschreibung muss nicht berücksichtigt werden. Zulässige Zeichen sind a-z, A-Z, 0-9 und die folgenden Sonderzeichen: *?-!#$%&'+.^_`|~. Platzhalter werden nicht unterstützt.

        Regex-Abgleich — Maximal 128 Zeichen.

      • HTTP-Header-Wert – Geben Sie Zeichenfolgen ein, die mit dem HTTP-Header-Wert verglichen werden sollen.

        Entsprechender Wert Maximal 128 Zeichen. Die Groß- und Kleinschreibung muss nicht berücksichtigt werden. Zulässige Zeichen sind a-z, A-Z, 0-9; Leerzeichen; die folgenden Sonderzeichen:!“ #$%&' () +,. /:; <=>@ [] ^_` {|} ~-; und Platzhalter (* und?).

        Regex-Abgleich — Maximal 128 Zeichen.

    • Quell-IP – Definieren Sie die Quell-IP-Adresse im CIDR-Format. Beides IPv4 und IPv6 CIDRs sind erlaubt. Platzhalter werden nicht unterstützt.

  8. (Optional) Um eine Transformation hinzuzufügen, wählen Sie Transformation hinzufügen, wählen Sie den Transformationstyp aus und geben Sie einen passenden regulären Ausdruck und eine Ersatzzeichenfolge ein.

  9. (Optional) Um einem HTTPS-Listener eine Authentifizierungsregel hinzuzufügen, wählen Sie Aktionen, Benutzer authentifizieren, wählen Sie einen Identitätsanbieter aus und geben Sie die erforderlichen Informationen ein. Weitere Informationen finden Sie unter Authentifizieren von Benutzern mithilfe eines Application Load Balancers.

  10. Wählen Sie unter Aktionen, Routing-Aktion eine der folgenden Routing-Aktionen aus und geben Sie die erforderlichen Informationen ein:

    • An Zielgruppen weiterleiten — Wählen Sie eine Zielgruppe aus. Um eine weitere Zielgruppe hinzuzufügen, wählen Sie Zielgruppe hinzufügen, wählen Sie eine Zielgruppe aus, überprüfen Sie die relativen Gewichtungen und aktualisieren Sie die Gewichtungen nach Bedarf. Sie müssen Stickiness auf Gruppenebene aktivieren, wenn Sie Stickiness für eine der Zielgruppen aktiviert haben.

    • Zur URL weiterleiten — Geben Sie die URL ein, indem Sie jeden Teil einzeln auf der Registerkarte URI-Teile eingeben, oder indem Sie die vollständige Adresse auf der Registerkarte Vollständige URL eingeben. Wählen Sie für den Statuscode je nach Bedarf entweder temporär (HTTP 302) oder permanent (HTTP 301) aus.

    • Feste Antwort zurückgeben — Geben Sie den Antwortcode ein, der bei verworfenen Kundenanfragen zurückgegeben werden soll. Optional können Sie den Inhaltstyp und einen Antworttext angeben.

  11. Wählen Sie Weiter aus.

  12. Geben Sie für Priorität einen Wert zwischen 1 und 50.000 ein. Regeln werden in der Reihenfolge ihrer Priorität vom niedrigsten bis zum höchsten Wert bewertet.

  13. Wählen Sie Weiter aus.

  14. Wählen Sie auf der Seite Überprüfen und erstellen die Option Erstellen aus.

AWS CLI
So fügen Sie eine Regel hinzu

Verwenden Sie den Befehl create-rule.

Im folgenden Beispiel wird eine Regel mit einer forward Aktion und einer host-header Bedingung erstellt.

aws elbv2 create-rule \ --listener-arn listener-arn \ --priority 10 \ --conditions "Field=host-header,Values=example.com,www.example.com" \ --actions "Type=forward,TargetGroupArn=target-group-arn"

Um eine Forward-Aktion zu erstellen, die den Traffic auf zwei Zielgruppen verteilt, verwenden Sie stattdessen die folgende --actions Option.

--actions '[{ "Type":"forward", "ForwardConfig":{ "TargetGroups":[ {"TargetGroupArn":"target-group-1-arn","Weight":50}, {"TargetGroupArn":"target-group-2-arn","Weight":50} ] } }]'

Im folgenden Beispiel wird eine Regel mit einer fixed-response Aktion und einer source-ip Bedingung erstellt.

aws elbv2 create-rule \ --listener-arn listener-arn \ --priority 20 \ --conditions '[{"Field":"source-ip","SourceIpConfig":{"Values":["192.168.1.0/24","10.0.0.0/16"]}}]' \ --actions "Type=fixed-response,FixedResponseConfig={StatusCode=403,ContentType=text/plain,MessageBody='Access denied'}"

Im folgenden Beispiel wird eine Regel mit einer redirect Aktion und einer http-header Bedingung erstellt.

aws elbv2 create-rule \ --listener-arn listener-arn \ --priority 30 \ --conditions '[{"Field":"http-header","HttpHeaderConfig":{"HttpHeaderName":"User-Agent","Values":["*Mobile*","*Android*","*iPhone*"]}}]' \ --actions "Type=redirect,RedirectConfig={Host=m.example.com,StatusCode=HTTP_302}"
CloudFormation
So fügen Sie eine Regel hinzu

Definieren Sie eine Ressource des Typs AWS::ElasticLoadBalancingV2::ListenerRule.

Im folgenden Beispiel wird eine Regel mit einer forward Aktion und einer host-header Bedingung erstellt. Die Regel sendet Traffic an die angegebene Zielgruppe, wenn die Bedingung erfüllt ist.

Resources: myForwardListenerRule: Type: 'AWS::ElasticLoadBalancingV2::ListenerRule' Properties: ListenerArn: !Ref myListener Priority: 10 Conditions: - Field: host-header Values: - example.com - www.example.com Actions: - Type: forward TargetGroupArn: !Ref myTargetGroup

Um eine Weiterleitungsaktion zu erstellen, die den Verkehr zwischen zwei Zielgruppen verteilt, wenn die Bedingung erfüllt ist, definieren Sie alternativ Actions wie folgt.

Actions: - Type: forward ForwardConfig: TargetGroups: - TargetGroupArn: !Ref TargetGroup1 Weight: 50 - TargetGroupArn: !Ref TargetGroup2 Weight: 50

Im folgenden Beispiel wird eine Regel mit einer fixed-response Aktion und einer source-ip Bedingung erstellt.

Resources: myFixedResponseListenerRule: Type: 'AWS::ElasticLoadBalancingV2::ListenerRule' Properties: ListenerArn: !Ref myListener Priority: 20 Conditions: - Field: source-ip SourceIpConfig: Values: - 192.168.1.0/24 - 10.0.0.0/16 Actions: - Type: fixed-response FixedResponseConfig: StatusCode: 403 ContentType: text/plain MessageBody: "Access denied"

Im folgenden Beispiel wird eine Regel mit einer redirect Aktion und einer http-header Bedingung erstellt.

Resources: myRedirectListenerRule: Type: 'AWS::ElasticLoadBalancingV2::ListenerRule' Properties: ListenerArn: !Ref myListener Priority: 30 Conditions: - Field: http-header HttpHeaderConfig: HttpHeaderName: User-Agent Values: - "*Mobile*" - "*Android*" - "*iPhone*" Actions: - Type: redirect RedirectConfig: Host: m.example.com StatusCode: HTTP_302