web-dev-qa-db-fra.com

Attribution d'une adresse IP statique à AWS Load Balancer

Comment attribuer une adresse IP statique à un ELB? On dirait que je ne peux pas.

Certains articles en ligne demandent de créer un enregistrement Route 53, mais cela nécessite de changer le nom de domaine CNAME, qui redirige également le trafic de messagerie. Je veux juste changer un enregistrement, pas CNAME.

Certains articles mentionnent également que je peux utiliser une instance EC2 en tant que proxy inverse. Mais un seul proxy sera-t-il capable de gérer beaucoup de trafic?

Une solution pour ça?

35
Narayan Prusty

Elastic Load Balancer d'AWS est en réalité élastique sur deux niveaux, comme décrit ici: http://shlomoswidler.com/2009/07/elastic-in-elastic-load-balancing-elb.html

Le premier niveau est l'équilibreur de charge lui-même. Pour vous assurer que ELB peut s’adapter au volume que vous avez et au volume que vous rencontrez, AWS attribue un nom d’hôte DNS "statique" (par exemple, MyDomainELB-918273645.us-east-1.elb.amazonaws.com). Ce nom d'hôte pointe vers plusieurs adresses IP. Vous pouvez voir cela (à partir d'une ligne de commande) en lançant

$ Host MyDomainELB-918273645.us-east-1.elb.amazonaws.com
MyDomainELB-918273645.us-east-1.elb.amazonaws.com 172.31.7.2
MyDomainELB-918273645.us-east-1.elb.amazonaws.com 172.31.11.33

La deuxième forme d'élasticité au sein de l'ELB est évidemment l'ELB qui dirige la requête vers l'une de vos instances EC2 du pool.

Ainsi, vous pouvez voir que tenter d'attribuer une adresse IP statique à l'équilibreur de charge serait contre-productif.

L'utilisation d'une instance EC2 en tant que proxy inverse semblerait également vouée à l'échec, car vous créeriez alors un goulot d'étranglement avant même d'accéder à l'ELB. Vous pouvez également créer votre propre équilibreur de charge.

La solution recommandée (que vous avez indiquée) consiste à créer un CNAME pointant vers le nom d'hôte ELB (qui ne changera pas).

c'est-à-dire my-app.mycompany.com -> MyDomainELB-918273645.us-east-1.elb.amazonaws.com

Cela vous permettrait d'intégrer votre application évolutive, derrière l'ELB dans votre domaine.

Je ne suis pas sûr de bien comprendre pourquoi vous ne pouvez pas créer un CNAME dans votre DNS ou ce que cela a à voir avec la gestion du trafic de courrier électronique, pouvez-vous expliquer?

44
Brooks

Une nouvelle fonctionnalité dans AWS (je crois qu'elle a été annoncée lors de Re: Invent 2017) permet les adresses IP statiques avec des équilibreurs de charge réseau (NLB). NLB ne peut gérer que la couche 4 (TCP) et non les spécificités HTTP (couche 7).

Vous pouvez attribuer une adresse IP Elastic par zone de disponibilité.

Pour plus de détails, voir article de blog AWS ou documentation NLB .

"Classic Load Balancer" et "Application Load Balancer" ne prennent pas en charge les adresses IP statiques. Si vous avez besoin d'une fonctionnalité fournie uniquement par ceux-ci, vous devez vous rabattre sur la solution CNAME décrite ci-dessus.

9
Bernhard

Le support AWS a récemment publié un blog utilisant ce sujet pour NLB afin de fournir une adresse IP statique à Classic et à l'équilibreur de charge Application - https://aws.Amazon.com/blogs/networking-and-content-delivery/using- static-ip-adresses-for-application-load-balancers /

Résumé de la solution tel que décrit par le poste

Nous nous retrouvons avec un auditeur TCP sur un NLB qui accepte le trafic et le transmet à un ALB interne. Le ALB termine TLS, examine les en-têtes HTTP et achemine les demandes en fonction de vos règles configurées vers des groupes cibles Avec la fonction AWS Lambda, tout est synchronisé en surveillant ALB pour connaître les modifications d'adresse IP et en mettant à jour le groupe cible NLB. Au final, nous aurons quelques adresses IP statiques faciles à mettre en liste blanche, et nous ne perdrons aucun des avantages d'ALB. Notez que nous allons envoyer tout le trafic via deux équilibreurs de charge.

8
Aditya

Contrairement à l'équilibreur de charge réseau, l'équilibreur de charge d'application (ALB) ne prend pas en charge les adresses IP élastiques, mais ce n'est pas le pire. Si vous utilisez Route 53 avec ALB, le DNS définit automatiquement le TTL sur 60 secondes). Cela semble poser problème à nos clients institutionnels - principalement les gouvernements - qui utilisent des serveurs DNS Windows plus anciens. Il est tout simplement impossible de suivre le programme Listener d'ALB qui modifie son adresse IP grand public en un temps aussi court.La vieille infrastructure DNS ne respecte pas ou n'est pas en mesure de gérer un TTL aussi agressif.

Bien que cela ne me plaise pas, AWS recommande de placer un équilibreur de charge réseau devant celui-ci, comme suit: https://aws.Amazon.com/blogs/networking-and-content-delivery/using-static-ip-adresses-for-application-load-balancers /

0
Slawomir