Amazon EC2 Autoscaling-Instanzen mit elastischen IPs

8

Gibt es eine Möglichkeit, neue Instanzen zu einer Autoscaling-Gruppe hinzuzufügen, die einer elastischen IP zugeordnet ist? Ich habe einen Anwendungsfall, bei dem die Instanzen in meiner Autoscale-Gruppe auf Remote-Servern in die Whitelist aufgenommen werden müssen, so dass sie vorhersehbare IPs haben müssen.

Ich weiß, dass es Möglichkeiten gibt, dies programmatisch mit der API zu tun, aber ich frage mich, ob es anders geht. Es sieht so aus, als wäre CloudFormation dazu in der Lage.

    
skrewler 13.06.2012, 21:23
quelle

2 Antworten

4

Sie können ASG-Instanzen eine elastische IP-Adresse zuweisen, indem Sie manuelle oder skriptgesteuerte API-Aufrufe verwenden, wie Sie es auch bei jeder anderen Instanz tun würden. Es gibt jedoch keine automatische Möglichkeit, dies zu tun. ASG-Instanzen sind so konzipiert, dass sie kurzlebig / wegwerfbar sind, und die Elastic IP Association widerspricht dieser Philosophie.

Um Ihr Problem zu lösen: Whitelisting, haben Sie ein paar Optionen:

  1. Wenn das System, das voraussagbare Quell-IPs benötigt, sich auf EC2 befindet und unter Ihrer Kontrolle steht, können Sie IP-Einschränkungen deaktivieren und stattdessen EC2-Sicherheitsgruppen verwenden, um den Datenverkehr zu sichern
  2. Wenn das System nicht unter Ihrer Kontrolle steht, können Sie einen Proxy-Server mit einer Elastic IP einrichten und Ihre ASG-Instanzen den Proxy für ausgehenden Datenverkehr verwenden
  3. Sie können Ссылка verwenden, um vollständige Kontrolle über die Instanzadressierung zu erhalten, einschließlich der IP-Adressen für Netzwerkausgänge - auch wenn dies zeitaufwendig sein kann
gabrtv 14.06.2012 19:07
quelle
0

Es gibt 3 Ansätze, die ich dazu finden könnte. Cloud Formation wird es nur automatisieren, aber Sie müssen zuerst verstehen, was passiert.

1.-Wie @gabrtv erwähnt VPC verwenden, bietet sich für zwei Optionen. 1.1 - Verwenden Sie in einer VPC ein NAT-Gateway, um den gesamten Verkehr innerhalb und außerhalb des Gateways zu routen. Das Gateway verfügt über eine Elastic IP- und Internet-Datenverkehr und dann die Whitelist des NAT-Gateways auf der Serverseite. Suchen Sie in der AWS-Dokumentation nach dem NAT-Gateway.

1.2 - Erstellen Sie eine Virtual Private Gateway / VPN-Verbindung zu Ihren Back-End-Servern in Ihrem Rechenzentrum und leiten Sie den Datenverkehr durch diesen Server. 1.2.a - Erstellen Sie Ihre Instanzen in einem privaten DEDICATED-Subnetz. 1.2.b - Whitelist das gesamte Subnetz auf Ihrer Seite, jede Anfrage von diesem Subnetz wird erlaubt. 1.2.c Stellen Sie sicher, dass Ihre Routen im Subnetz korrekt sind.

(Ich überspringe 2 absichtlich, da das 1.2 ist)

3.-Der faule Weg: Verwenden Sie AWS Opsworks, um zwei Dinge zu tun: 1. Ordnen Sie einen RESOURCE-Pool elastischer IPs zu. 2.: Starten Sie LOAD-Instanzen bei Bedarf und AUTO weisen Sie ihnen eine elastische IP aus dem Pool zu. Für den zweiten Teil müssen die 24/7 Instanzen Ihr Minimum und die Load Instanzen Ihr MAX sein. AWS Opsworks ermöglicht Cloud Watch-Alarmen jetzt, den Instanzstart auszulösen, so dass sie ASG sehr ähnlich sind. Der einzige Nachteil von Opsworks besteht darin, dass Instanzen nicht beendet werden, sondern angehalten werden, wenn die Last ausfällt und Sie Instanzen zuvor "erstellen" müssen. Außerdem sind Sie darauf angewiesen, dass Chef Solo Ihre Instanzen initialisiert, aber dies ist die einzige Möglichkeit, EIPs automatisch den neu erstellten Instanzen zuzuweisen, die ich finden konnte.

Prost!

    
einarc 10.02.2016 20:03
quelle