Load Balancer-Typen - Amazon ECS

Load Balancer-Typen

Elastic Load Balancing unterstützt die folgenden Arten von Load Balancern: Application Load Balancer, Network Load Balancer und Classic Load Balancer. Amazon-ECS-Services können diese Arten von Load Balancer verwenden. Application Load Balancer werden zum Weiterleiten von HTTP/HTTPS-Datenverkehr (oder Layer 7) verwendet. Network Load Balancers und Classic Load Balancers werden verwendet, um TCP-Datenverkehr (oder Layer 4) zu leiten.

Application Load Balancer

Ein Application Load Balancer trifft Routing-Entscheidungen auf Anwendungsebene (HTTP/HTTPS), unterstützt pfadbasiertes Routing und kann Anfragen an einen oder mehrere Ports jeder Container-Instance in Ihrem Cluster weiterleiten. Application Load Balancer unterstützen dynamische Host-Port-Zuweisung. Wenn die Containerdefinition Ihrer Aufgabe beispielsweise Port 80 als NGINX-Container-Port and Port 0 als Host-Port angibt, wird der Host-Port dynamisch aus dem flüchtigen Port-Bereich der Container-Instance ausgewählt (z. B. 32768 bis 61000 beim aktuellen Amazon ECS-optimierten AMI). Beim Start der Aufgabe wird der NGINX-Container bei dem Application Load Balancer als Instance-ID- und Port-Kombination registriert, und der Datenverkehr wird an die Instance-ID und den Port verteilt, die diesem Container entsprechen. Aufgrund dieser dynamischen Zuordnung können Sie mehrere Aufgaben über einen einzelnen Service auf derselben Container-Instance durchführen. Weitere Informationen finden Sie im Benutzerhandbuch für Application Load Balancers.


                        Application Load Balancer

Network Load Balancer

Ein Network Load Balancer trifft Routing-Entscheidungen auf der Transportebene (TCP/SSL). Er kann Millionen Anfragen pro Sekunde verarbeiten. Nachdem der Load Balancer eine Verbindung erhalten hat, wählt er mithilfe eines Flow-Hash-Routing-Algorithmus ein Ziel aus der Zielgruppe für die Standardregel aus. Er versucht, eine TCP-Verbindung zu dem ausgewählten Ziel auf dem in der Listener-Konfiguration angegebenen Port zu öffnen. Es leitet die Anforderung ohne Ändern der Headers weiter. Network Load Balancer unterstützen dynamische Host-Port-Zuweisung. Wenn die Containerdefinition Ihrer Aufgabe beispielsweise Port 80 als NGINX-Container-Port and Port 0 als Host-Port angibt, wird der Host-Port dynamisch aus dem flüchtigen Port-Bereich der Container-Instance ausgewählt (z. B. 32768 bis 61000 beim aktuellen Amazon ECS-optimierten AMI). Beim Start der Aufgabe wird der NGINX-Container bei dem Network Load Balancer als Instance-ID- und Port-Kombination registriert, und der Datenverkehr wird an die Instance-ID und den Port verteilt, die diesem Container entsprechen. Aufgrund dieser dynamischen Zuordnung können Sie mehrere Aufgaben über einen einzelnen Service auf derselben Container-Instance durchführen. Weitere Informationen finden Sie im Benutzerhandbuch für Network Load Balancers.


                        Network Load Balancer

Gateway Load Balancer

Gateway-Load Balancer ermöglichen die Bereitstellung, Skalierung und Verwaltung virtueller Geräte, wie Firewalls, Systeme zur Angriffserkennung und -Abwehr und Deep-Packet-Inspection-Systeme. Es kombiniert ein transparentes Netzwerkgateway (d. h. ein einziger Ein- und Ausstiegspunkt für den gesamten Datenverkehr) und verteilt den Datenverkehr, während Ihre virtuellen Appliances mit dem Bedarf skaliert werden. Ein Gateway Load Balancer arbeitet auf der dritten Ebene des Open Systems Interconnection (OSI) -Modells, der Netzwerkschicht. Es überwacht alle IP-Pakete über alle Ports und leitet den Datenverkehr an die Zielgruppe weiter, die in der Listener-Regel angegeben ist. Es behält die Klebrigkeit der Flows zu einer bestimmten Ziel-Appliance mit 5-Tupel (für TCP/UDP-Flows) oder 3-Tupel (für Nicht-TCP/UDP-Flows) bei. Der Gateway Load Balancer und seine registrierten virtuellen Appliance-Instances tauschen Anwendungsdatenverkehr über das GENEVE-Protokoll auf Port 6081 aus. Er unterstützt eine maximale Übertragungseinheit (MTU) Größe von 8500 Bytes. Gateway Load Balancers verwenden Gateway Load Balancer-Endpunkte, um Datenverkehr über VPC-Grenzen hinweg sicher auszutauschen. Ein Gateway Load Balancer-Endpunkt ist ein VPC-Endpunkt, der private Konnektivität zwischen virtuellen Appliances in der Serviceanbieter-VPC und Anwendungsservern in der Service-Consumer-VPC bereitstellt. Sie stellen den Gateway Load Balancer in derselben VPC wie die virtuellen Appliances bereit. Sie registrieren die virtuellen Appliances bei einer Zielgruppe für den Gateway Load Balancer. Weitere Informationen finden Sie im Gateway Load Balancing-Benutzerhandbuch.