web-dev-qa-db-fra.com

IP statique à l'aide d'Elastic Beanstalk

J'ai besoin de l'IP statique pour autoriser l'accès à un réseau pare-feu qui n'est pas sur le réseau AWS.

Est-il possible d'obtenir une IP statique pour une application à charge équilibrée à l'aide d'Elastic Beanstalk? Je suis le AWS docs concernant l'utilisation de Route 53 pour héberger mon application avec un nom de domaine, mais d'après ce que j'ai lu, cela ne garantit pas une adresse IP statique car il utilise essentiellement un CNAME permettant l'IP dans les coulisses pour changer. Est-ce la bonne compréhension? Est-ce possible du tout?

23
Seth

Amazon a publié un nouvel exemple spécialement pour vous: http://docs.aws.Amazon.com/elasticbeanstalk/latest/dg/vpc-basic.html

Vous pouvez déployer une application Elastic Beanstalk dans un environnement d'équilibrage de charge et de mise à l'échelle automatique dans un VPC qui possède à la fois un sous-réseau public et privé. Utilisez cette configuration si vous souhaitez qu'Elastic Beanstalk attribue des adresses IP privées à vos instances Amazon EC2.

0
dang

Déployez votre environnement beanstalk dans VPC, et avec la bonne configuration, une IP statique pour le trafic sortant est facile.

Dans cette configuration, vos instances relaient toutes leur trafic sortant via une seule machine, à laquelle vous pouvez attribuer une adresse IP élastique. Tout le trafic d'origine Internet, lié à Internet, provenant de toutes les instances situées derrière, apparaîtra, depuis l'autre réseau, pour être utilisé en utilisant cette adresse IP élastique unique.

La partie RDS des éléments suivants peut ne pas correspondre à vos besoins, mais les principes sont les mêmes.

http://docs.aws.Amazon.com/elasticbeanstalk/latest/dg/AWSHowTo-vpc-rds.html

12
Michael - sqlbot

Cette publication m'a aidé à obtenir une adresse IP statique pour les demandes sortantes en utilisant une passerelle NAT, et en acheminant des demandes spécifiques à travers elle.

J'avais besoin de cette adresse IP statique pour être ajoutée à la liste blanche d'un fournisseur d'API externe.

J'ai trouvé cette façon beaucoup plus facile que celle fournie par AWS , sans avoir besoin de créer un nouveau VPC et des sous-réseaux privés et publics.

Fondamentalement, ce que j'ai fait était:

  • Créez un nouveau sous-réseau pour héberger la passerelle NAT.
  • Créez la passerelle NAT dans le sous-réseau ci-dessus et attribuez une nouvelle adresse IP élastique. Celle-ci sera notre adresse IP sortante pour les API externes.
  • Créez une table de routage pour le sous-réseau NAT. Tout le trafic sortant (0.0.0.0/0) doit être acheminé via la passerelle NAT. Attribuez le sous-réseau créé pour utiliser la nouvelle table de routage.
  • Modifiez la table de routage principale (celle qui gère toutes nos demandes d'instances EC2) et ajoutez les adresses IP de l'API externe, en définissant sa cible sur la passerelle NAT.

De cette façon, nous pouvons acheminer n'importe quelle demande vers les IP d'API externes via la passerelle NAT. Toutes les autres demandes sont acheminées via la passerelle Internet par défaut.

Comme le disent les articles, ce n'est pas une solution Multi AZ, donc si l'AZ qui contient notre NAT Gateway échoue, nous pouvons perdre la connexion à l'API externe.

Mise à jour :

Voir le commentaire @TimObezuk pour en faire une solution multi-AZ.

6
SebaGra