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.
Verwenden von Elastic Beanstalk mit Amazon VPC
In diesem Thema werden die Vorteile der Verwendung von VPC-Endpoints mit Elastic Beanstalk und die verschiedenen Arten von Konfigurationen, die Sie implementieren können, erklärt.
Sie können eine Amazon Virtual Private Cloud (Amazon VPC) verwenden, um ein sicheres Netzwerk für Ihre Elastic Beanstalk Beanstalk-Anwendung und zugehörige Ressourcen einzurichten. AWS Beim Erstellen Ihrer Umgebung wählen Sie VPC, Subnetze und Sicherheitsgruppen für Ihre Anwendungs-Instances und Load Balancer aus. Sie können die VPC-Konfiguration beliebig festlegen, solange sie die folgenden Voraussetzungen erfüllt.
VPC-Anforderungen
-
Internetzugriff – Instances müssen über eine der folgenden Methoden auf das Internet zugreifen können:
-
Öffentliches Subnetz – Instances besitzen eine öffentliche IP-Adresse und verwenden für den Zugriff auf das Internet ein Internet-Gateway.
-
Privates Subnetz – Instances verwenden für den Zugriff auf das Internet ein NAT-Gerät.
Anmerkung
Wenn Sie in Ihrer VPC VPC-Endpunkte für die Herstellung von Verbindungen mit
elasticbeanstalk
undelasticbeanstalk-health
konfigurieren, ist der Internetzugriff optional und nur erforderlich, wenn die Anwendung sie spezifisch benötigt. Wenn keine VPC-Endpunkte vorhanden sind, muss Ihre VPC Zugriff auf das Internet haben.Die Standard-VPC, die Elastic Beanstalk für Sie einrichtet, stellt einen Internetzugang bereit.
Elastic Beanstalk unterstützt keine Proxy-Einstellungen wie
HTTPS_PROXY
für die Konfiguration eines Web-Proxys. -
-
NTP – Instances in Ihrer Elastic Beanstalk-Umgebung verwenden das Network Time Protocol (NTP), um die Systemuhr zu synchronisieren. Wenn Instances nicht auf UDP-Port 123 kommunizieren können, ist die Uhr möglicherweise nicht synchron, wodurch Probleme mit den Elastic Beanstalk-Integritätsberichten verursacht werden. Stellen Sie sicher, dass Ihre VPC-Sicherheitsgruppen und Ihr Netzwerk eingehenden und ausgehenden UDP-Verkehr auf Port 123 ACLs zulassen, um diese Probleme zu vermeiden.
Das elastic-beanstalk-samples
Um Ressourcen mit einer Vorlage zu erstellen AWS CloudFormation
-
Klonen Sie das Beispiel-Repository oder laden Sie über die Links in der README
-Datei eine Vorlage herunter. -
Öffnen Sie die AWS CloudFormation -Konsole
. -
Wählen Sie Stack erstellen aus.
-
Wählen Sie Upload a template to Amazon S3 (Vorlage auf Amazon S3 hochladen) aus.
-
Wählen Sie Upload file (Datei hochladen) aus und laden Sie die Vorlagendatei von Ihrem lokalen Computer hoch.
-
Klicken Sie auf Next (Weiter) und befolgen Sie die Anweisungen zum Erstellen eines Stapels mit den Ressourcen in der Vorlage.
Wenn die Stack-Erstellung abgeschlossen ist, suchen Sie auf der Registerkarte Ausgaben nach der VPC-ID und dem IDs Subnetz. Verwenden Sie diese zum Konfigurieren der VPC in der neuen Netzwerkkonfigurationskategorie des Umgebungsassistenten.
Themen
Öffentliche VPC
AWS CloudFormation Vorlage — vpc-public.yaml
Einstellungen (mit Load Balancing)
-
Load balancer visibility (Load Balancer-Sichtbarkeit) – Öffentlich
-
Load balancer subnets (Load Balancer-Subnetze) – Beide öffentliche Subnetze
-
Instance public IP (Öffentliche IP der Instance) – Aktiviert
-
Instance subnets (Instance-Subnetze) – Beide öffentliche Subnetze
-
Instance security groups (Instance-Sicherheitsgruppen) – Standard-Sicherheitsgruppe hinzufügen
Einstellungen (einzelne Instance)
-
Instance subnets (Instance-Subnetze) – Eines der öffentlichen Subnetze
-
Instance security groups (Instance-Sicherheitsgruppen) – Standard-Sicherheitsgruppe hinzufügen
Ein einfaches rein öffentliches VPC-Layout umfasst mindestens ein öffentliches Subnetz, ein Internet-Gateway und eine Standardsicherheitsgruppe, die den Datenverkehr zwischen den Ressourcen in der VPC zulässt. Wenn Sie in der VPC eine Umgebung erstellen, generiert Elastic Beanstalk zusätzliche Ressourcen, die sich je nach Typ der Umgebung unterscheiden.
VPC-Ressourcen
-
Einzelne Instance – Elastic Beanstalk erstellt eine Sicherheitsgruppe für die Anwendungs-Instance, die Datenverkehr aus dem Internet auf Port 80 zulässt, und weist der Instance eine Elastic IP-Adresse zu, damit sie eine öffentliche IP-Adresse hat. Der Domänenname der Umgebung wird zur öffentlichen IP-Adresse der Instance aufgelöst.
-
Lastausgleich – Elastic Beanstalk erstellt eine Sicherheitsgruppe für den Load Balancer, der Datenverkehr aus dem Internet auf Port 80 zulässt, und eine Sicherheitsgruppe für die Anwendungs-Instances, die Datenverkehr aus der Sicherheitsgruppe für den Load Balancer zulassen. Der Domänenname der Umgebung wird zum öffentlichen Domänennamen für den Load Balancer aufgelöst.
Dies ähnelt der Art und Weise, wie Elastic Beanstalk die Netzwerke verwaltet, wenn Sie die Standard-VPC verwenden. Die Sicherheit in einem öffentlichen Subnetz hängt vom Load Balancer und von den Instance-Sicherheitsgruppen ab, die von Elastic Beanstalk erstellt wurden. Dies ist die kostengünstigste Konfiguration, da kein NAT-Gateway erforderlich ist.
Öffentliche/private VPC
AWS CloudFormation Vorlage — vpc-privatepublic.yaml
Einstellungen (mit Load Balancing)
-
Load balancer visibility (Load Balancer-Sichtbarkeit) – Öffentlich
-
Load balancer subnets (Load Balancer-Subnetze) – Beide öffentliche Subnetze
-
Instance public IP (Öffentliche IP der Instance) – Deaktiviert
-
Instance subnets (Instance-Subnetze) – Beide private Subnetze
-
Instance security groups (Instance-Sicherheitsgruppen) – Standard-Sicherheitsgruppe hinzufügen
Fügen Sie Ihrer VPC zur Erhöhung der Sicherheit private Subnetze hinzu, um ein öffentlich/privat-Layout zu erstellen. Dieses Layout erfordert einen Load Balancer und ein NAT-Gateway in den öffentlichen Subnetzen. Es bietet Ihnen die Möglichkeit, Anwendungs-Instances, Datenbanken und andere Ressourcen in privaten Subnetzen auszuführen. Instances in privaten Subnetzen können nur über den Load Balancer und das NAT-Gateway mit dem Internet kommunizieren.
Private VPC
AWS CloudFormation Vorlage — vpc-private.yaml
Einstellungen (mit Load Balancing)
-
Load balancer visibility (Load Balancer-Sichtbarkeit) – Privat
-
Load balancer subnets (Load Balancer-Subnetze) – Beide private Subnetze
-
Instance public IP (Öffentliche IP der Instance) – Deaktiviert
-
Instance subnets (Instance-Subnetze) – Beide private Subnetze
-
Instance security groups (Instance-Sicherheitsgruppen) – Standard-Sicherheitsgruppe hinzufügen
Im Fall interner Anwendungen, auf die kein Zugriff aus dem Internet möglich sein darf, können Sie alle Vorgänge in privaten Subnetzen ausführen und den Load Balancer so konfigurieren, dass er nur intern verfügbar ist. Hierzu ändern Sie den Wert für Load balancer visibility (Load Balancer-Sichtbarkeit) in Internal (Intern). Diese Vorlage erstellt eine VPC ohne öffentliche Subnetze und ohne Internet-Gateway. Verwenden Sie dieses Layout für Anwendungen, auf die der Zugriff nur über dieselbe VPC oder ein zugehöriges VPN möglich sein soll.
Ausführung einer Elastic Beanstalk-Umgebung in einer privaten VPC
Wenn Sie Ihre Elastic Beanstalk-Umgebung in einer privaten VPC erstellen, hat die Umgebung keinen Zugriff auf das Internet. Ihre Anwendung benötigt möglicherweise Zugriff auf den Elastic Beanstalk-Service oder andere Services. Ihre Umgebung könnte z. B. erweiterte Integritätsberichte verwenden. In diesem Fall senden die Umgebungs-Instances Integritätsdaten an den erweiterten Integritätsservice. Und Elastic Beanstalk Beanstalk-Code auf Umgebungsinstanzen sendet Traffic an andere AWS Services und anderen Traffic an AWS Nicht-Endpoints (zum Beispiel, um Abhängigkeitspakete für Ihre Anwendung herunterzuladen). Im Folgenden finden Sie einige Schritte, die Sie in diesem Fall möglicherweise ausführen müssen, um sicherzustellen, dass Ihre Umgebung ordnungsgemäß funktioniert.
-
Konfigurieren von VPC-Endpunkten für Elastic Beanstalk – Elastic Beanstalk und der erweiterte Integritätsservice unterstützen VPC-Endpunkte. Diese stellen sicher, dass der Datenverkehr zu diesen Services ausschließlich innerhalb des Amazon-Netzwerks ausgeführt wird und keinen Internetzugriff erfordert. Weitere Informationen finden Sie unter Verwenden von Elastic Beanstalk mit VPC-Endpunkten.
-
VPC-Endpunkte für zusätzliche Services konfigurieren — Elastic Beanstalk Beanstalk-Instances senden in Ihrem Namen Traffic an mehrere andere AWS Services: Amazon Simple Storage Service (Amazon S3), Amazon Simple Queue Service (Amazon SQS) und Amazon Logs. AWS CloudFormation CloudWatch Sie müssen auch für diese Services VPC-Endpunkte konfigurieren. Detaillierte Informationen zu VPC-Endpunkten einschließlich Links pro Service finden Sie unter VPC-Endpunkte im Amazon VPC-Benutzerhandbuch.
Anmerkung
Einige AWS Dienste, darunter Elastic Beanstalk, unterstützen VPC-Endpunkte in einer begrenzten Anzahl von Regionen. AWS Wenn Sie Ihre private VPC-Lösung entwerfen, stellen Sie sicher, dass Elastic Beanstalk und die anderen hier genannten abhängigen Dienste VPC-Endpoints in der AWS von Ihnen ausgewählten Region unterstützen.
-
Bereitstellen eines privaten Docker-Image – In einer Docker-Umgebung könnte Code auf den Umgebungs-Instances versuchen, während der Erstellung der Umgebung das konfigurierte Docker-Image aus dem Internet abzurufen, und fehlschlagen. Um diesen Fehler zu vermeiden, erstellen Sie in Ihrer Umgebung ein benutzerdefiniertes Docker-Image oder verwenden ein in Amazon Elastic Container Registry (Amazon ECR) gespeichertes Docker-Image und konfigurieren einen VPC-Endpunkt für den Amazon ECR-Service.
-
DNS-Namen aktivieren — Elastic Beanstalk Beanstalk-Code auf Umgebungsinstanzen sendet Traffic an alle AWS Services, die ihre öffentlichen Endpunkte verwenden. Damit dieser Datenverkehr das Ziel erreicht, wählen Sie während der Konfigurierung der VPC-Schnittstellenendpunkte die Option Enable DNS name (DNS-Name aktivieren) aus. Hierdurch wird ein DNS-Eintrag in Ihrer VPC hinzugefügt, der den Endpunkt für den öffentlichen Service dem VPC-Schnittstellenendpunkt zuordnet.
Wichtig
Wenn Ihre VPC nicht privat ist, Zugang zum öffentlichen Internet hat und Enable DNS name (DNS-Name aktivieren) für einen VPC-Endpunkt deaktiviert ist, wird der Datenverkehr zum jeweiligen Dienst über das öffentliche Internet transportiert. Das wird wahrscheinlich nicht von Ihnen gewünscht. Sie können dieses Problem bei einer privaten VPC leicht erkennen, da dies verhindert, dass der Datenverkehr das Ziel erreicht, und Ihnen Fehler angezeigt werden. Bei einer öffentlichen VPC erhalten Sie jedoch keine Hinweise.
-
Einschluss von Anwendungsabhängigkeiten – Wenn Ihre Anwendung Abhängigkeiten wie Sprachlaufzeitpakete besitzt, versucht sie möglicherweise, diese während der Erstellung der Umgebung aus dem Internet herunterzuladen und zu installieren, und schlägt fehl. Um diesen Fehler zu vermeiden, sollten Sie alle Abhängigkeitspakete in das Quellpaket Ihrer Anwendung einschließen.
-
Verwenden einer aktuellen Plattformversion – Stellen Sie sicher, dass Ihre Umgebung eine Plattformversion verwendet, die am 24. Februar 2020 oder später veröffentlicht wurde. Sie sollten insbesondere eine Plattformversion verwenden, die mit oder nach einem der folgenden beiden Updates veröffentlicht wurde: Linux Update 2020-02-28, Windows Update 2020-02-24.
Anmerkung
Eine aktuelle Plattformversion ist deswegen notwendig, weil in älteren Versionen ein Problem auftrat, das verhinderte, dass mit der Option Enable DNS name (DNS-Name aktivieren) erstellte DNS-Einträge für Amazon SQS ordnungsgemäß funktionieren.