wake-up-neo.net

Amazon ELB für EC2-Instanzen im privaten Subnetz in VPC

Ich verwende Amazon EC2 und möchte eine ELB (Load Balancer) für das Internet auf 2 Instanzen in einem privaten Subnetz setzen. Ich verwende VPC mit öffentlichen und privaten Subnetzen.

  • Wenn ich nur das private Subnetz zur ELB hinzufüge, werden keine Verbindungen hergestellt.
  • Wenn ich beide Subnetze an die ELB anschließe, kann auf die Instanzen zugegriffen werden, es kommt jedoch häufig zu Zeitüberschreitungen. (Siehe Screenshot 1)
  • Wenn ich mich nur mit dem öffentlichen Subnetz verbinde, erhält meine mit ELB verbundene Instanz OutOfService, da ich keine Instanz im öffentlichen Subnetz habe. Die Instanzzählung zeigt 0. (Siehe Screenshot 2)

Screenshot 1: Beide verbundenen Subnetze Both subnets attached

Screenshot 2: Nur angeschlossenes öffentliches Subnetz Only public subnet attached

Meine Frage ist eigentlich eine Erweiterung zu dieser Frage . Nachdem ich alle 6 in der akzeptierten Antwort genannten Schritte befolgt habe, bin ich immer noch betroffen, meine an ELB angeschlossene Instanz erhält OutOfService. Ich habe sogar versucht, Ports in den Sicherheitsgruppen für EC2-Instanzen und ELB zuzulassen, aber es hat nicht geholfen. 

Bitte helfen Sie, ich breche meinen Kopf damit. 

40
manish_s

Die andere SO - Frage, auf die Sie verwiesen haben, ist genau richtig. Doppelt/dreifach prüfen Sie Folgendes

  • Sie müssen nur öffentliche Subnetze an Ihre ELB anschließen und sicherstellen, dass die Verfügbarkeitszonen dieser Subnetze an den Verfügbarkeitszonen der privaten Subnetze ausgerichtet sind, in denen sich Ihre Instanzen befinden. 
  • Stellen Sie sicher, dass die Sicherheitsgruppe Ihrer Instanzen den Zugriff von der Sicherheitsgruppe Ihres Lastenausgleichs ermöglicht
  • Stellen Sie sicher, dass Ihre Integritätsprüfung lokal in der Instanz funktioniert. Wenn Ihre Integritätsprüfung in der ELB beispielsweise HTTP:8080/health_check lautet, können Sie in der Instanz curl x.x.x.x:8080/health_check (wobei x.x.x.x die private IP der Instanz ist) einen Antwortcode von 200 erhalten. 
  • Die Routing-Tabelle für öffentliche Subnetze sollte 0.0.0.0/0 an das an Ihre VPC angeschlossene Internet-Gateway weiterleiten.
  • Die Routing-Tabelle für private Subnetze sollte 0.0.0.0/0 an eine NAT - Instanz oder ein Gateway in einem öffentlichen Subnetz weiterleiten
66
Ben Whaley

Die andere SO Frage hat mir auch geholfen. Für mich vergaß ich immer wieder, dass ich Software auf dem Server installieren musste (d. H. Apache). Wenn Sie keine NAT GW oder eine andere Methode zum Zulassen von Softwareinstallationen erstellen, schlägt dies fehl. Wenn Sie einen automatisierten Modus ohne viel Aufwand ausprobieren möchten, können Sie ein Skript ausprobieren:

https://github.com/jouellnyc/AWS/tree/master/create_aws_vpc3

Beachten Sie, dass es bereits viele gute Dokumente und Diskussionen gibt, aber:

HTTP-Codes, die ich von der ELB erhalten habe:

  • 504 - Wahrscheinlich Sicherheitsgruppen - Erlauben Sie den Zugriff auf den Port 80 der Instanzen
  • 503 - Wahrscheinlich falsche Zielgruppeneinstellung
  • 502 - Wahrscheinlich wird Apache/Server nicht unter b/c ausgeführt. Es ist nicht installiert, da es keine von nat gw oder einer Methode für die Installation von Software gibt.
0
jouell