

# PERF04-BP04 Lastausgleich verwenden, um den Datenverkehr auf mehrere Ressourcen zu verteilen
<a name="perf_networking_load_balancing_distribute_traffic"></a>

 Verteilen Sie den Datenverkehr auf mehrere Ressourcen oder Services, um von der Elastizität der Cloud zu profitieren. Sie können den Lastausgleich auch nutzen, um die Terminierung von Verschlüsselung auszulagern. So lässt sich die Leistung und Zuverlässigkeit optimieren und der Datenverkehr effektiv verwalten und weiterleiten. 

 **Typische Anti-Muster:** 
+  Sie berücksichtigen bei der Wahl des Load Balancer-Typs nicht die Anforderungen Ihres Workloads. 
+  Sie nutzen die Funktionen des Load Balancers nicht zur Optimierung der Leistung. 
+  Der Workload ist direkt mit dem Internet verbunden, ohne dass ein Load Balancer zum Einsatz kommt. 
+  Sie leiten den gesamten Internetverkehr über vorhandene Load Balancer weiter. 
+  Sie nutzen einen generischen TCP-Lastausgleich und lassen die SSL-Verschlüsselung von den einzelnen Rechenknoten verarbeiten. 

 **Vorteile der Nutzung dieser bewährten Methode:** Ein Load Balancer verarbeitet die variierende Last des Anwendungsdatenverkehrs in einer einzigen oder in mehreren Availability Zones und ermöglicht eine hohe Verfügbarkeit, Auto Scaling sowie eine bessere Nutzung für Ihre Workload. 

 **Risikostufe bei fehlender Befolgung dieser Best Practice:** Hoch 

## Implementierungsleitfaden
<a name="implementation-guidance"></a>

 Load Balancer fungieren als Eingangspunkt für Ihren Workload und verteilen den Datenverkehr von dort aus auf Ihre Backend-Ziele – wie Computing-Instances oder Container –, um die Nutzung zu verbessern. 

 Die Wahl des richtigen Load Balancer-Typs ist der erste Schritt zur Optimierung Ihrer Architektur. Starten Sie mit einer Auflistung Ihrer Workload-Merkmale wie Protokoll (z. B. TCP, HTTP, TLS oder WebSockets), Zieltyp (z. B. Instances, Container oder Serverless), Anwendungsanforderungen (z. B. langfristige Verbindungen, Benutzerauthentifizierung oder Stickiness) und Platzierung (z. B. Region, lokale Zone, Outposts oder Zonenisolierung). 

 AWS stellt für Ihre Anwendungen mehrere Modelle zur Verwendung des Lastausgleichs bereit. [Application Load Balancer](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/introduction.html) eignet sich optimal für den Lastausgleich von HTTP- und HTTPS-Datenverkehr. Sie profitieren hierbei von einer erweiterten Weiterleitung von Anforderungen, die es Ihnen ermöglicht, moderne Anwendungsarchitekturen mit Microservices und Containern bereitzustellen. 

 [Network Load Balancer](https://docs.aws.amazon.com/elasticloadbalancing/latest/network/introduction.html) eignet sich optimal für den Lastausgleich von TCP-Datenverkehr, wenn eine hohe Leistung erforderlich ist. Hiermit lassen sich mit konstant geringer Latenz Millionen Anforderungen pro Sekunde und plötzliche Datenverkehrsspitzen oder schwankende Datenverkehrsmuster verarbeiten. 

 [Elastic Load Balancing](https://aws.amazon.com/elasticloadbalancing/) ermöglicht die integrierte Zertifikatverwaltung und SSL/TLS-Entschlüsselung. Auf diese Weise können Sie die SSL-Einstellungen des Load Balancers flexibel zentral verwalten und CPU-intensive Arbeitsschritte für Ihren Workload auslagern. 

 Nachdem Sie sich für den richtigen Load Balancer entschieden haben, können Sie damit beginnen, seine Features zu nutzen, um die Belastung Ihres Backends durch den Datenverkehr zu verringern. 

 So können Sie beispielsweise sowohl mit Application Load Balancer (ALB) als auch mit Network Load Balancer (NLB) die SSL/TLS-Verschlüsselung auslagern, was die Möglichkeit bietet, den CPU-intensiven TLS-Handshake bei Ihren Zielen zu vermeiden und die Verwaltung der Zertifikate zu verbessern. 

 Wenn Sie SSL/TLS-Offloading in Ihrem Load Balancer konfigurieren, übernimmt dieser die Verschlüsselung des Datenverkehrs von und zu den Clients. Er leitet den Datenverkehr dann unverschlüsselt an Ihre Backends weiter, wodurch Ihre Backend-Ressourcen entlastet werden und die Reaktionszeit für die Clients verbessert wird. 

 Application Load Balancer kann außerdem HTTP/2-Datenverkehr ausliefern, ohne dass Sie ihn auf Ihren Zielen unterstützen müssen. Diese einfache Entscheidung kann die Reaktionszeit Ihrer Anwendung verbessern, da HTTP/2 TCP-Verbindungen effizienter nutzt. 

 Bei der Definition der Architektur sollten Sie die Anforderungen an die Latenz Ihres Workloads berücksichtigen. Wenn Sie beispielsweise eine latenzempfindliche Anwendung haben, können Sie sich für Network Load Balancer mit einer extrem niedrigen Latenz entscheiden. Alternativ können Sie Ihren Workload auch näher an Ihre Kunden heranbringen, indem Sie Application Load Balancer in [AWS Local Zones](https://aws.amazon.com/about-aws/global-infrastructure/localzones/) oder sogar [AWS Outposts](https://aws.amazon.com/outposts/rack/)einsetzen. 

 Eine weitere Überlegung für latenzempfindliche Workloads ist das zonenübergreifende Load-Balancing. Beim zonenübergreifenden Lastausgleich nimmt jeder Load Balancer-Knoten eine Verteilung des Datenverkehrs auf die registrierten Ziele in allen zulässigen Availability Zones vor. 

 Verwenden Sie die Auto Scaling-Integration für Ihren Load Balancer. Einer der Schlüssel für ein leistungsfähiges System ist die richtige Größenanpassung Ihrer Backend-Ressourcen. Zu diesem Zweck können Sie Load Balancer-Integrationen für Backend-Zielressourcen nutzen. Mithilfe der Load Balancer-Integration mit Auto Scaling-Gruppen werden Ziele je nach Bedarf als Reaktion auf den eingehenden Datenverkehr zum Load-Balancer hinzugefügt oder aus ihm entfernt. Load Balancer können auch in [Amazon ECS](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-load-balancing.html) und [Amazon EKS](https://docs.aws.amazon.com/eks/latest/userguide/alb-ingress.html) für containerisierte Workloads integriert werden. 
+  [Amazon ECS – Service-Lastausgleich](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-load-balancing.html) 
+  [Anwendungslastausgleich auf Amazon EKS](https://docs.aws.amazon.com/eks/latest/userguide/alb-ingress.html) 
+  [Netzwerklastausgleich Amazon EKS](https://docs.aws.amazon.com/eks/latest/userguide/network-load-balancing.html) 

### Implementierungsschritte
<a name="implementation-steps"></a>
+  Definieren Sie Ihre Anforderungen an den Lastausgleich, einschließlich Datenverkehrsvolumen, Verfügbarkeit und Anwendungsskalierbarkeit. 
+  Wählen Sie den richtigen Load Balancer-Typ für Ihre Anwendung. 
  +  Verwenden Sie Application Load Balancer für HTTP/HTTPS Workloads. 
  +  Verwenden Sie Network Load Balancer für Nicht-HTTP-Workloads, die TCP oder UDP nutzen. 
  +  Verwenden Sie eine Kombination aus beidem ([ALB als Ziel des NLB](https://aws.amazon.com/blogs/networking-and-content-delivery/application-load-balancer-type-target-group-for-network-load-balancer/)), wenn Sie die Features beider Produkte nutzen möchten. Dies ist zum Beispiel möglich, wenn Sie die statischen IP-Adressen von NLB zusammen mit dem HTTP-Header-basierten Routing von ALB verwenden möchten oder wenn Sie Ihren HTTP-Workload an [AWS PrivateLink](https://docs.aws.amazon.com/vpc/latest/privatelink/privatelink-share-your-services.html)anbinden möchten. 
  +  Einen vollständigen Vergleich der Load Balancer finden Sie unter [ELB-Produktvergleich](https://aws.amazon.com/elasticloadbalancing/features/). 
+  Verwenden Sie nach Möglichkeit SSL/TLS-Offloading. 
  +  Konfigurieren Sie HTTPS/TLS-Listeners mit [Application Load Balancer](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/create-https-listener.html) und [Network Load Balancer](https://docs.aws.amazon.com/elasticloadbalancing/latest/network/create-tls-listener.html) , integriert mit [AWS Certificate Manager](https://aws.amazon.com/certificate-manager/). 
  +  Beachten Sie, dass einige Workloads aus Compliance-Gründen eine Ende-zu-Ende-Verschlüsselung benötigen können. In diesem Fall ist es erforderlich, die Verschlüsselung an den Zielen zuzulassen. 
  +  Best Practices für die Sicherheit finden Sie unter [SEC09-BP02 Erzwingen einer Verschlüsselung bei der Übertragung](https://docs.aws.amazon.com/wellarchitected/latest/security-pillar/sec_protect_data_transit_encrypt.html). 
+  Wählen Sie den richtigen Routing-Algorithmus (nur ALB) aus. 
  +  Der Routing-Algorithmus kann einen entscheidenden Einfluss darauf haben, wie gut Ihre Backend-Ziele ausgelastet sind und wie sie die Leistung beeinflussen. ALB bietet beispielsweise [zwei Optionen für Routing-Algorithmen](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/load-balancer-target-groups.html#modify-routing-algorithm): 
  +  **Am wenigsten ausstehende Anfragen:** Verwenden Sie diese Option, um eine bessere Verteilung der Last auf Ihre Backend-Ziele zu erreichen, wenn die Anfragen für Ihre Anwendung unterschiedlich komplex sind oder Ihre Ziele unterschiedliche Kapazitäten für die Verarbeitung haben. 
  +  **Round Robin:** Verwenden Sie diese Option, wenn die Anfragen und Ziele ähnlich sind oder wenn Sie die Anfragen gleichmäßig auf die Ziele verteilen müssen. 
+  Ziehen Sie eine zonenübergreifende Verarbeitung oder Zonenisolierung in Betracht. 
  +  Verwenden Sie die deaktivierte zonenübergreifende Isolierung (Zonenisolierung), um die Latenz zu verbessern und Domänen mit Zonenfehlern zu vermeiden. Sie ist standardmäßig in NLB deaktiviert und [Sie können sie in ALB pro Zielgruppe ausschalten.](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/disable-cross-zone.html). 
  +  Verwenden Sie die aktivierte zonenübergreifende Verarbeitung für eine höhere Verfügbarkeit und Flexibilität. Standardmäßig ist Cross-Zone für ALB aktiviert und [Sie können sie in NLB pro Zielgruppe aktivieren](https://docs.aws.amazon.com/elasticloadbalancing/latest/network/target-group-cross-zone.html). 
+  Aktivieren Sie HTTP-Keep-Alives für Ihre HTTP-Workloads (nur ALB). Mit diesem Feature kann der Load Balancer Backend-Verbindungen wiederverwenden, bis die Keep-Alive-Zeit abgelaufen ist, wodurch sich Ihre HTTP-Anfrage- und Reaktionszeiten verbessern und die Auslastung der Ressourcen auf Ihren Backend-Zielen reduziert wird. Details zu dieser Funktion für Apache und Nginx können, finden Sie unter [Was sind die optimalen Einstellungen für die Verwendung von Apache oder NGINX als Backend-Server für ELB?](https://aws.amazon.com/premiumsupport/knowledge-center/apache-backend-elb/) 
+  Aktivieren Sie die Überwachung für Ihren Load Balancer. 
  +  Aktivieren Sie die Zugriffsprotokolle für Ihren [Application Load Balancer](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/enable-access-logging.html) und [Network Load Balancer](https://docs.aws.amazon.com/elasticloadbalancing/latest/network/load-balancer-access-logs.html). 
  +  Die wichtigsten zu berücksichtigenden Elemente für ALB sind `request_processing_time`, `request_processing_time`und `response_processing_time`. 
  +  Die wichtigsten Elemente für NLB sind `connection_time` und `tls_handshake_time`. 
  +  Bereiten Sie sich darauf vor, die Protokolle bei Bedarf abfragen zu können. Sie können Amazon Athena verwenden, um sowohl [ALB-Protokolle](https://docs.aws.amazon.com/athena/latest/ug/application-load-balancer-logs.html) als auch [NLB-Protokolle](https://docs.aws.amazon.com/athena/latest/ug/networkloadbalancer-classic-logs.html). 
  +  Erstellen Sie Warnungen für leistungsbezogene Metriken wie [`TargetResponseTime` für ALB](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/load-balancer-cloudwatch-metrics.html). 

## Ressourcen
<a name="resources"></a>

 **Zugehörige Dokumente:** 
+  [ELB-Produktvergleich ](https://aws.amazon.com/elasticloadbalancing/features/) 
+  [Globale AWS-Infrastruktur ](https://aws.amazon.com/about-aws/global-infrastructure/) 
+  [Improving Performance and Reducing Cost Using Availability Zone Affinity (Verbesserung der Leistung und Senkung der Kosten durch Availability Zone-Affinität) ](https://aws.amazon.com/blogs/architecture/improving-performance-and-reducing-cost-using-availability-zone-affinity/) 
+  [Step by step for Log Analysis with Amazon Athena (Schritt für Schritt zur Protokollanalyse mit Amazon Athena) ](https://github.com/aws/elastic-load-balancing-tools/tree/master/amazon-athena-for-elb) 
+  [Abfragen von Application Load Balancer-Protokollen](https://docs.aws.amazon.com/athena/latest/ug/application-load-balancer-logs.html) 
+  [Monitor your Application Load Balancers (Überwachen Ihrer Application Load Balancers)](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/load-balancer-monitoring.html) 
+  [Monitor your Network Load Balancer (Überwachen Ihres Network Load Balancer)](https://docs.aws.amazon.com/elasticloadbalancing/latest/network/load-balancer-monitoring.html) 
+  [Um den Datenverkehr über die Instances in Ihrer Auto Scaling-Gruppe zu verteilen, verwenden Sie Elastic Load Balancing](https://docs.aws.amazon.com/autoscaling/ec2/userguide/autoscaling-load-balancer.html) 

 **Zugehörige Videos:** 
+  [AWS re:Invent 2018: Elastic Load Balancing: Deep Dive and Best Practices (Deep Dive und Best Practices)](https://www.youtube.com/watch?v=VIgAT7vjol8) 
+  [AWS re:Invent 2021 – How to choose the right load balancer for your AWS-workloads (AWS re:Invent 2021 – So wählen Sie den richtigen Load Balancer für Ihre AWS-Workloads aus) ](https://www.youtube.com/watch?v=p0YZBF03r5A) 
+  [AWS re:Inforce 2022 - How to use Elastic Load Balancing to enhance your security posture at scale (AWS re:Inforce 2022 – So verbessen Sie mit Elastic Load Balancing Ihren Sicherheitsstatus im großen Umfang)](https://www.youtube.com/watch?v=YhNc5VSzOGQ) 
+  [AWS re:Invent 2019: Get the most from Elastic Load Balancing for different workloads (AWS re:Invent 2019: Holen Sie das Beste aus Elastic Load Balancing für verschiedene Workloads heraus)](https://www.youtube.com/watch?v=HKh54BkaOK0) 

 **Zugehörige Beispiele:** 
+  [CDK and CloudFormation samples for Log Analysis with Amazon Athena (CDK und CloudFormation-Beispiele für die Protokollanalyse mit Amazon Athena) ](https://github.com/aws/elastic-load-balancing-tools/tree/master/log-analysis-elb-cdk-cf-template) 