Konfiguration von Elastic Load Balancing mit dem AWS Toolkit für Visual Studio - AWS Elastic Beanstalk

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.

Konfiguration von Elastic Load Balancing mit dem AWS Toolkit für Visual Studio

Elastic Load Balancing ist ein Amazon-Webservice, der Ihnen hilft, die Verfügbarkeit und Skalierbarkeit Ihrer Anwendung zu verbessern. Dieser Service macht es Ihnen leicht, Anwendungslasten auf zwei oder mehr EC2 Amazon-Instances zu verteilen. Elastic Load Balancing verbessert die Verfügbarkeit durch die Bereitstellung zusätzlicher Redundanz und unterstützt wachsenden Datenverkehr für Ihre Anwendung.

Mit Elastic Load Balancing können Sie den eingehenden Anwendungsdatenverkehr automatisch auf alle ausgeführten Instances verteilen und ausgleichen. Sie können auch ganz einfach neue Instances hinzufügen, wenn eine Erhöhung der Kapazität Ihrer Anwendung erforderlich ist.

Elastic Beanstalk stellt Elastic Load Balancing automatisch bereit, wenn Sie eine Anwendung bereitstellen. Sie können die EC2 Amazon-Instance-Konfiguration der Elastic Beanstalk Beanstalk-Umgebung mit der Registerkarte Load Balancer innerhalb Ihrer Anwendungsumgebung in AWS Toolkit for Visual Studio bearbeiten.

Screenshot des Load Balancer-Konfigurationsfensters in Visual Studio Toolkit für Elastic Beanstalk

In den folgenden Abschnitten werden die Elastic Load Balancing-Parameter beschrieben, die Sie für Ihre Anwendung konfigurieren können.

Ports

Der Load Balancer, der für die Bearbeitung von Anfragen für Ihre Elastic Beanstalk Beanstalk-Anwendung bereitgestellt wurde, sendet Anfragen an die EC2 Amazon-Instances, auf denen Ihre Anwendung ausgeführt wird. Der bereitgestellte Load Balancer kann auf Anfragen HTTP und HTTPS Ports warten und Anfragen an die EC2 Amazon-Instances in Ihrer AWS Elastic Beanstalk Anwendung weiterleiten. Standardmäßig verarbeitet der Load Balancer Anfragen am Port. HTTP Damit dies funktioniert, muss mindestens einer der Ports (entweder HTTP oderHTTPS) aktiviert sein.

Elastic Beanstalk Elastic Load Balancing-Konfiguration – Ports
Wichtig

Stellen Sie sicher, dass der von Ihnen angegebene Port nicht gesperrt ist. Andernfalls können Sie keine Verbindung zu Ihrer Elastic Beanstalk-Anwendung herstellen.

Den HTTP Port steuern

Um den HTTP Port auszuschalten, wählen Sie OFFHTTPListener Port aus. Um den HTTP Port einzuschalten, wählen Sie einen HTTP Port (z. B. 80) aus der Liste aus.

Anmerkung

Für den Zugriff auf Ihre Umgebung mit einem anderen als dem Standardport 80, z. B. Port 8080, fügen Sie dem vorhandenen Load Balancer einen Listener hinzu und konfigurieren Sie den neuen Listener für die Überwachung des entsprechenden Ports.

Geben Sie beispielsweise mithilfe von AWS CLI für Classic Load Balancer den folgenden Befehl ein und ersetzen Sie LOAD_BALANCER_NAME mit dem Namen Ihres Load Balancers für Elastic Beanstalk.

aws elb create-load-balancer-listeners --load-balancer-name LOAD_BALANCER_NAME --listeners "Protocol=HTTP, LoadBalancerPort=8080, InstanceProtocol=HTTP, InstancePort=80"

Geben Sie beispielsweise AWS CLI für Application Load Balancers den folgenden Befehl ein und ersetzen Sie LOAD_BALANCER_ARN mit dem ARN Ihres Load Balancers für Elastic Beanstalk.

aws elbv2 create-listener --load-balancer-arn LOAD_BALANCER_ARN --protocol HTTP --port 8080

Wenn Elastic Beanstalk Ihre Umgebung überwachen soll, entfernen Sie den Listener für Port 80 nicht.

Den Port steuern HTTPS

Elastic Load Balancing unterstützt dasHTTPS/TLS-Protokoll, um die Verschlüsselung des Datenverkehrs für Client-Verbindungen zum Load Balancer zu ermöglichen. Verbindungen vom Load Balancer zu den EC2 Instances verwenden Klartextverschlüsselung. Standardmäßig ist der HTTPS Port ausgeschaltet.

Um den HTTPS Port einzuschalten
  1. Erstellen Sie mit AWS Certificate Manager (ACM) ein neues Zertifikat oder laden Sie ein Zertifikat und einen Schlüssel zu AWS Identity and Access Management (IAM) hoch. Weitere Informationen zum Anfordern eines ACM Zertifikats finden Sie unter Zertifikat anfordern im AWS Certificate Manager Benutzerhandbuch. Weitere Informationen zum Importieren von Zertifikaten von Drittanbietern in ACM finden Sie unter Zertifikate importieren im AWS Certificate Manager Benutzerhandbuch. Wenn dies in Ihrer Region nicht verfügbar ACM ist, verwenden Sie AWS Identity and Access Management (IAM), um ein Zertifikat eines Drittanbieters hochzuladen. Die ACM IAM Dienste speichern das Zertifikat und stellen einen Amazon-Ressourcennamen (ARN) für das SSL Zertifikat bereit. Weitere Informationen zum Erstellen und Hochladen von Zertifikaten auf IAM finden Sie unter Arbeiten mit Serverzertifikaten im IAMBenutzerhandbuch.

  2. Geben Sie den HTTPS Port an, indem Sie einen Port für den HTTPSListener-Port auswählen.

    Elastic Beanstalk Elastic Load Balancing Balancing-Konfiguration - SSL
  3. Geben Sie als SSLZertifikat-ID den Amazon-Ressourcennamen (ARN) Ihres SSL Zertifikats ein. Zum Beispiel arn:aws:iam::123456789012:server-certificate/abc/certs/build oder arn:aws:acm:us-east-2:123456789012:certificate/12345678-12ab-34cd-56ef-12345678. Verwenden Sie das SSL Zertifikat, das Sie in Schritt 1 erstellt oder hochgeladen haben.

Um den HTTPS Port auszuschalten, wählen Sie OFFHTTPSListener-Port aus.

Health checks (Zustandsprüfungen)

Die Definition der Integritätsprüfung beinhaltet URL zum Beispiel einen Zustand, der abgefragt werden muss. Standardmäßig verwendet:80 für Elastic Beanstalk, die keine Legacy-Container sind, und:80 TCP für Legacy-Container. HTTP Sie können die Standardeinstellung so überschreibenURL, dass sie einer vorhandenen Ressource in Ihrer Anwendung entspricht (z. B./myapp/default.aspx), indem Sie sie in das URL Kontrollkästchen Anwendungsintegritätsprüfung eingeben. Wenn Sie die Standardeinstellung überschreibenURL, verwendet Elastic Beanstalk sie, HTTP um die Ressource abzufragen. Wenn Sie überprüfen möchten, ob Sie einen Legacy-Container verwenden, erhalten Sie Informationen unter Warum sind einige Plattformversionen als Legacy gekennzeichnet?

Sie können die Einstellungen für die Integritätsprüfung im Bereich EC2Instance Health Check im Bereich Load Balancing steuern.

Elastic Beanstalk Elastic Load Balancing-Konfiguration – Zustandsprüfungen

Die Definition des Integritätschecks beinhaltet URL zum Beispiel einen Zustand, der abgefragt werden muss. Überschreiben Sie URL die Standardeinstellung, sodass sie einer vorhandenen Ressource in Ihrer Anwendung entspricht (z. B./myapp/index.jsp), indem Sie sie in das URLKontrollkästchen Anwendungsstatus eingeben.

In der folgenden Liste werden die Zustandsprüfungs-Parameter beschrieben, die Sie für Ihre Anwendung festlegen können.

  • Geben Sie für Health Check Interval (Sekunden) die Anzahl der Sekunden ein, die Elastic Load Balancing zwischen den Zustandsprüfungen für die EC2 Amazon-Instances Ihrer Anwendung wartet.

  • Für Health Check Timeout (seconds) (Zustandsprüfungs-Timeout (Sekunden)) geben Sie die Anzahl der Sekunden ein, die Elastic Load Balancing auf eine Antwort wartet, bevor die Instance als nicht reagierend eingestuft wird.

  • Geben Sie für Healthy Check Count Threshold und Unhealthy Check Count Threshold die Anzahl der aufeinanderfolgenden erfolgreichen oder erfolglosen URL Tests an, bevor Elastic Load Balancing den Integritätsstatus der Instance ändert. Wenn Sie beispielsweise den Schwellenwert 5 für die Anzahl ungesunder Prüfungen angeben, bedeutet dies, dass fünfmal hintereinander eine Fehlermeldung oder ein Timeout zurückgegeben werden URL muss, bevor Elastic Load Balancing die Integritätsprüfung als fehlgeschlagen betrachtet.

Sitzungen

Standardmäßig leitet ein Load Balancer jede Anforderung getrennt an die Server-Instance mit der kleinsten Last weiter. Im Vergleich dazu bindet eine Sticky Session eine Benutzersitzung an eine bestimmte Server-Instance, sodass alle vom Benutzer während der Sitzung gesendeten Anforderungen an die gleiche Server-Instance übermittelt werden.

Elastic Beanstalk verwendet vom Load Balancer generierte HTTP Cookies, wenn Sticky Sessions für eine Anwendung aktiviert sind. Der Load Balancer verwendet ein vom Load-Balancer generiertes spezielles Cookie, um die Anwendungs-Instance für jede Anforderung nachzuverfolgen. Wenn der Load Balancer eine Anforderung empfängt, prüft er zunächst, ob dieses Cookie in der Anforderung vorhanden ist. Wenn er vorhanden ist, wird die Anforderung an die Anwendungs-Instance gesendet, die im Cookie angegeben ist. Wenn kein Cookie vorhanden ist, wählt der Load Balancer eine Anwendungs-Instance basierend auf dem vorhandenen Load Balancing-Algorithmus aus. Ein Cookie wird in die Antwort eingefügt, um nachfolgende Anforderungen von demselben Benutzer an diese Anwendungs-Instance zu binden. Mit der Konfiguration der Richtlinie wird ein Cookie-Ablauf definiert, der die Dauer der Gültigkeit für jedes Cookie festlegt.

Sie können über den Abschnitt Sessions (Sitzungen) auf der Registerkarte Load Balancer angeben, ob der Load Balancer für Ihre Anwendung "Sticky Sessions" erlaubt.

Elastic Beanstalk Elastic Load Balancing-Konfiguration – Sitzungen

Weitere Informationen zu Elastic Load Balancing finden Sie im Elastic Load Balancing-Entwicklerhandbuch.