Erste Schritte mit Gateway Load Balancers mithilfe der AWS CLI - 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.

Erste Schritte mit Gateway Load Balancers mithilfe der AWS CLI

Gateway Load Balancers erleichtern die Bereitstellung, Skalierung und Verwaltung virtueller Appliances von Drittanbietern, wie z. B. Sicherheits-Appliances.

In diesem Tutorial werden wir ein Inspektionssystem mit einem Gateway Load Balancer und einem Gateway Load Balancer-Endpunkt implementieren.

Übersicht

Ein Gateway Load Balancer-Endpunkt ist ein VPC Endpunkt, der private Konnektivität zwischen virtuellen Appliances im Service Provider VPC und Anwendungsservern im Service Consumer VPC bereitstellt. Der Gateway Load Balancer wird genauso eingesetzt VPC wie der der virtuellen Appliances. Diese Appliances werden als Zielgruppe des Gateway Load Balancers registriert.

Die Anwendungsserver werden in einem Subnetz (Zielsubnetz) im Service Consumer ausgeführtVPC, während sich der Gateway Load Balancer-Endpunkt in einem anderen Subnetz desselben Subnetzes befindet. VPC Der gesamte Datenverkehr, der VPC über das Internet-Gateway in den Service Consumer eingeht, wird zuerst an den Gateway Load Balancer-Endpunkt und dann an das Zielsubnetz weitergeleitet.

Ebenso wird der gesamte Datenverkehr, der die Anwendungsserver (Ziel-Subnetz) verlässt, an den Gateway Load Balancer-Endpunkt weitergeleitet, bevor er zurück ins Internet geleitet wird. Das folgende Netzwerkdiagramm veranschaulicht, wie ein Gateway Load Balancer-Endpunkt für den Zugriff auf einen Endpunktdienst verwendet wird.

Verwenden eines Gateway Load Balancer-Endpunkts für den Zugriff auf einen Endpunktdienst

Die folgenden nummerierten Punkte heben die in der vorangehenden Abbildung gezeigten Elemente hervor und erläutern sie.

Verkehr vom Internet zur Anwendung (blaue Pfeile):
  1. Der Datenverkehr gelangt VPC über das Internet-Gateway zum Servicenutzer.

  2. Der Verkehr wird als Ergebnis des Ingress-Routings an den Gateway Load Balancer-Endpunkt gesendet.

  3. Der Datenverkehr wird an den Gateway Load Balancer gesendet, der den Datenverkehr an eine der Security Appliances weiterleitet.

  4. Der Datenverkehr wird an den Gateway Load Balancer-Endpunkt zurückgesendet, nachdem er von der Security Appliance geprüft wurde.

  5. Der Verkehr wird an die Anwendungsserver (Ziel-Subnetz) gesendet.

Verkehr von der Anwendung zum Internet (orangefarbene Pfeile):
  1. Der Datenverkehr wird aufgrund der im Subnetz des Anwendungsservers konfigurierten Standardroute an den Gateway Load Balancer-Endpunkt gesendet.

  2. Der Datenverkehr wird an den Gateway Load Balancer gesendet, der den Datenverkehr an eine der Security Appliances weiterleitet.

  3. Der Datenverkehr wird an den Gateway Load Balancer-Endpunkt zurückgesendet, nachdem er von der Security Appliance geprüft wurde.

  4. Der Datenverkehr wird basierend auf der Routing-Tabellenkonfiguration an das Internet-Gateway gesendet.

  5. Der Datenverkehr wird zurück ins Internet geleitet.

Routing

Die Routing-Tabelle des Internet-Gateways muss einen Eintrag enthalten, der den für die Anwendungsserver bestimmten Datenverkehr an den Gateway Load Balancer-Endpunkt weiterleitet. Um den Gateway Load Balancer-Endpunkt anzugeben, verwenden Sie die ID des VPC Endpunkts. Das folgende Beispiel zeigt die Routen für eine Dualstack-Konfiguration.

Bestimmungsort Ziel
VPC IPv4 CIDR Local
VPC IPv6 CIDR Local
Subnet 1 IPv4 CIDR vpc-endpoint-id
Subnet 1 IPv6 CIDR vpc-endpoint-id

Die Routing-Tabelle für das Subnetz mit den Anwendungsservern muss Einträge enthalten, die den gesamten Verkehr von den Anwendungsservern zum Gateway Load Balancer-Endpunkt leiten.

Bestimmungsort Ziel
VPC IPv4 CIDR Local
VPC IPv6 CIDR Local
0.0.0.0/0 vpc-endpoint-id
::/0 vpc-endpoint-id

Die Routing-Tabelle für das Subnetz mit dem Gateway Load Balancer-Endpunkt muss den Verkehr, der von der Prüfung zurückkommt, an sein endgültiges Ziel leiten. Bei Datenverkehr, der aus dem Internet stammt, sorgt die lokale Route dafür, dass er die Anwendungsserver erreicht. Fügen Sie für den Datenverkehr, der von den Anwendungsservern stammt, Einträge hinzu, die den gesamten Datenverkehr an das Internet-Gateway weiterleiten.

Bestimmungsort Ziel
VPC IPv4 CIDR Local
VPC IPv6 CIDR Local
0.0.0.0/0 internet-gateway-id
::/0 internet-gateway-id

Voraussetzungen

  • Installieren Sie die AWS CLI oder aktualisieren Sie sie auf die aktuelle Version von, AWS CLI wenn Sie eine Version verwenden, die Gateway Load Balancers nicht unterstützt. Weitere Informationen finden Sie unter Installieren der AWS Command Line Interface im AWS Command Line Interface -Benutzerhandbuch.

  • Stellen Sie sicher, dass der Service Consumer VPC über mindestens zwei Subnetze für jede Availability Zone verfügt, die Anwendungsserver enthält. Ein Subnetz ist für den Gateway Load Balancer-Endpunkt, das andere für die Anwendungsserver.

  • Stellen Sie sicher, dass der Dienstanbieter VPC über mindestens zwei Subnetze für jede Availability Zone verfügt, die Sicherheits-Appliance-Instanzen enthält. Ein Subnetz ist für den Gateway Load Balancer, das andere für die Instances.

  • Starten Sie mindestens eine Sicherheits-Appliance-Instanz in jedem Sicherheits-Appliance-Subnetz des Service Providers. VPC Die Sicherheitsgruppen für diese Instanzen müssen den UDP Verkehr auf Port 6081 zulassen.

Schritt 1: Erstellen Sie einen Gateway Load Balancer und registrieren Sie Ziele

Gehen Sie wie folgt vor, um Ihre Load Balancer-, Listener- und Zielgruppen zu erstellen und um Ihre Security Appliance Instances als Ziele zu registrieren.

So erstellen Sie einen Gateway Load Balancer und registrieren Ziele
  1. Verwenden Sie den create-load-balancerBefehl, um einen Load Balancer des Typs zu erstellen. gateway Sie können für jede Verfügbarkeitszone, in der Sie Security Appliance Instances gestartet haben, ein Subnetz angeben.

    aws elbv2 create-load-balancer --name my-load-balancer --type gateway --subnets provider-subnet-id

    Standardmäßig werden nur IPv4 Adressen unterstützt. Um IPv4 sowohl IPv6 Adressen als auch zu unterstützen, fügen Sie die --ip-address-type dualstack Option hinzu.

    Die Ausgabe enthält den Amazon-Ressourcennamen (ARN) des Load Balancers mit dem im folgenden Beispiel gezeigten Format.

    arn:aws:elasticloadbalancing:us-east-2:123456789012:loadbalancer/gwy/my-load-balancer/1234567890123456
  2. Verwenden Sie den create-target-groupBefehl, um eine Zielgruppe zu erstellen, und geben Sie dabei den Dienstanbieter an, VPC bei dem Sie Ihre Instances gestartet haben.

    aws elbv2 create-target-group --name my-targets --protocol GENEVE --port 6081 --vpc-id provider-vpc-id

    Die Ausgabe umfasst die ARN der Zielgruppe mit dem folgenden Format.

    arn:aws:elasticloadbalancing:us-east-2:123456789012:targetgroup/my-targets/0123456789012345
  3. Verwenden Sie den Befehl register-targets, um Ihre Instances bei Ihrer Zielgruppe zu registrieren.

    aws elbv2 register-targets --target-group-arn targetgroup-arn --targets Id=i-1234567890abcdef0 Id=i-0abcdef1234567890
  4. Verwenden Sie den Befehl create-listener, um einen Listener für Ihren Load Balancer mit einer Standardregel zu erstellen, die Anfragen an Ihre Zielgruppe weiterleitet.

    aws elbv2 create-listener --load-balancer-arn loadbalancer-arn --default-actions Type=forward,TargetGroupArn=targetgroup-arn

    Die Ausgabe enthält die ARN des Zuhörers im folgenden Format.

    arn:aws:elasticloadbalancing:us-east-2:123456789012:listener/gwy/my-load-balancer/1234567890123456/abc1234567890123
  5. (Optional) Sie können den Zustand der registrierten Ziele für Ihre Zielgruppe mit dem folgenden describe-target-healthBefehl überprüfen.

    aws elbv2 describe-target-health --target-group-arn targetgroup-arn

Schritt 2: Erstellen eines Gateway Load Balancer-Endpunkts

Gehen Sie wie folgt vor, um einen Gateway Load Balancer-Endpunkt zu erstellen. Gateway Load Balancer Endpunkte sind zonal. Es wird empfohlen, einen Gateway Load Balancer-Endpunkt pro Zone zu erstellen. Weitere Informationen finden Sie unter Zugriff auf virtuelle Appliances über AWS PrivateLink.

So erstellen Sie einen Gateway Load Balancer-Endpunkt
  1. Verwenden Sie den Befehl create-vpc-endpoint-service-configuration, um mit Ihrem Gateway Load Balancer eine Endpunktdienstkonfiguration zu erstellen.

    aws ec2 create-vpc-endpoint-service-configuration --gateway-load-balancer-arns loadbalancer-arn --no-acceptance-required

    Um sowohl IPv4 IPv6 Adressen als auch zu unterstützen, fügen Sie die --supported-ip-address-types ipv4 ipv6 Option hinzu.

    Die Ausgabe enthält die Dienst-ID (z. B. vpce-svc-12345678901234567) und den Dienstnamen (z. B. com.amazonaws.vpce.us-east-2.vpce-svc-12345678901234567).

  2. Verwenden Sie den Befehl modify-vpc-endpoint-service-permissions, um es Servicekunden zu ermöglichen, einen Endpunkt für Ihren Service zu erstellen. Ein Dienstnutzer kann ein Benutzer, eine IAM Rolle oder AWS-Konto sein. Im folgenden Beispiel wird die Berechtigung für das angegebene Objekt hinzugefügt AWS-Konto.

    aws ec2 modify-vpc-endpoint-service-permissions --service-id vpce-svc-12345678901234567 --add-allowed-principals arn:aws:iam::123456789012:root
  3. Verwenden Sie den create-vpc-endpointBefehl, um den Gateway Load Balancer-Endpunkt für Ihren Service zu erstellen.

    aws ec2 create-vpc-endpoint --vpc-endpoint-type GatewayLoadBalancer --service-name com.amazonaws.vpce.us-east-2.vpce-svc-12345678901234567 --vpc-id consumer-vpc-id --subnet-ids consumer-subnet-id

    Um sowohl IPv4 IPv6 Adressen als auch zu unterstützen, fügen Sie die --ip-address-type dualstack Option hinzu.

    Die Ausgabe enthält die ID des Gateway Load Balancer-Endpunkts (z. B. vpce-01234567890abcdef).

Schritt 3: Routing konfigurieren

Konfigurieren Sie die Routing-Tabellen für den Service Consumer VPC wie folgt. Dadurch können die Security Appliances eine Sicherheitsüberprüfung des eingehenden Datenverkehrs durchführen, der für die Anwendungsserver bestimmt ist.

So konfigurieren Sie das Routing
  1. Verwenden Sie den Befehl create-route, um der Routing-Tabelle für das Internet-Gateway Einträge hinzuzufügen, die den für die Anwendungsserver bestimmten Verkehr an den Gateway Load Balancer-Endpunkt weiterleiten.

    aws ec2 create-route --route-table-id gateway-rtb --destination-cidr-block Subnet 1 IPv4 CIDR --vpc-endpoint-id vpce-01234567890abcdef

    Wenn Sie dies unterstützenIPv6, fügen Sie die folgende Route hinzu.

    aws ec2 create-route --route-table-id gateway-rtb --destination-cidr-block Subnet 1 IPv6 CIDR --vpc-endpoint-id vpce-01234567890abcdef
  2. Verwenden Sie den Befehl create-route, um der Routing-Tabelle für das Subnetz mit den Anwendungsservern einen Eintrag hinzuzufügen, der den gesamten Datenverkehr von den Anwendungsservern an den Gateway Load Balancer-Endpunkt leitet.

    aws ec2 create-route --route-table-id application-rtb --destination-cidr-block 0.0.0.0/0 --vpc-endpoint-id vpce-01234567890abcdef

    Wenn Sie dies unterstützenIPv6, fügen Sie die folgende Route hinzu.

    aws ec2 create-route --route-table-id application-rtb --destination-cidr-block ::/0 --vpc-endpoint-id vpce-01234567890abcdef
  3. Verwenden Sie den Befehl create-route, um der Routing-Tabelle für das Subnetz mit dem Gateway Load Balancer-Endpunkt einen Eintrag hinzuzufügen, der den gesamten von den Anwendungsservern stammenden Datenverkehr an das Internet-Gateway weiterleitet.

    aws ec2 create-route --route-table-id endpoint-rtb --destination-cidr-block 0.0.0.0/0 --gateway-id igw-01234567890abcdef

    Wenn Sie dies unterstützenIPv6, fügen Sie die folgende Route hinzu.

    aws ec2 create-route --route-table-id endpoint-rtb --destination-cidr-block ::/0 --gateway-id igw-01234567890abcdef
  4. Wiederholen Sie diesen Vorgang für jede Anwendungsteilnetz-Routing-Tabelle in jeder Zone.