2016-02-10 12 views
14

Come posso assegnare un indirizzo IP statico a un ELB. Sembra che non possa.Assegnazione dell'indirizzo IP statico a AWS Load Balancer

Alcuni articoli online richiedono di creare un record Route 53 ma ciò richiede la modifica del dominio CNAME che reindirizza anche il traffico di posta elettronica. Voglio solo cambiare un record non CNAME.

Alcuni articoli indicano anche che posso utilizzare un'istanza EC2 come proxy inverso. Ma un singolo proxy sarà in grado di gestire un sacco di traffico?

Qualche soluzione per questo? Elastici di bilanciamento del carico

+1

Possibile duplicato di [AWS Load Balancer con un indirizzo IP statico] (http://stackoverflow.com/questions/13767349/aws-load-balancer-with-a-static-ip-address) –

+0

AWS ha [annunciato un bilanciamento del carico di rete] (https://aws.amazon.com/blogs/aws/new-network-load-balancer-effortless-scaling-to-millions-of-requests-per-second/) che supporta l'assegnazione di IP statici (PEI). Funziona a livello di TCP in modo da non essere in grado di utilizzare le funzionalità di livello 7 come ELB stickiness o terminazione ssl – Patrick

risposta

30

AWS' è in realtà elastico su due livelli, come descritto qui: http://shlomoswidler.com/2009/07/elastic-in-elastic-load-balancing-elb.html

Il primo livello è il bilanciamento del carico stesso. Per assicurarsi che ELB possa scalare a qualunque volume tu abbia e scoppiare a qualsiasi volume che incontri improvvisamente, AWS assegna un nome host DNS "statico" (ad es. MyDomainELB-918273645.us-east-1.elb.amazonaws.com). Quel nome host punta a più indirizzi IP. Si può vedere che (da una riga di comando) eseguendo

$ 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 seconda forma di elasticità all'interno della ELB è ovviamente poi ELB dirigere la query in una delle tue istanze EC2 in piscina.

Quindi, è possibile vedere che provare ad assegnare un indirizzo IP statico al servizio di bilanciamento del carico sarebbe controproducente.

L'utilizzo di un'istanza EC2 come proxy inverso sembrerebbe anche controproducente, in quanto si creerebbe un collo di bottiglia prima di arrivare anche all'ELB. Potrebbe anche creare il proprio bilanciamento del carico.

La soluzione consigliata (che hai indicato) consiste nel creare un CNAME che punta al nome host ELB (che non cambierà).

cioè my-app.mycompany.com -> MyDomainELB-918273645.us-east-1.elb.amazonaws.com

Questo permetterebbe di integrare l'applicazione scalabile, dietro la ELB all'interno del tuo dominio.

Non sono sicuro di comprendere appieno il motivo per cui non è possibile creare un CNAME nel DNS o che cosa ha a che fare con la direzione del traffico di posta elettronica, puoi spiegare?

+0

Se cambio CNAME, il mio traffico di posta elettronica indirizza anche ad AWS. Non lo voglio Il mio nome di dominio è registrato in 1and1. Se cambio CNAME, la mia posta 1 e 1 non funziona. Si prega di aiutare –

+4

Non si può semplicemente aggiungere un CNAME? Ottieni solo 1 CNAME? Non è per questo che si chiama 1and1, vero? – Brooks

+1

CNAME è solo per i sottodomini. E il dominio principale? Come posso indirizzare esempio.com a un servizio di bilanciamento del carico? –

0

È necessario aggiungere il record CNAME nella vostra zona di NDS per rendere funziona:

yourhostname IN CNAME some-lb-XXXXX.elb.amazon.com. 

Non dimenticate di punti alla fine del nome di bilanciamento del carico.

3

Una nuova funzione in AWS (credo sia stata annunciata in Re: Invent 2017) consente IP statici con Bilanciamento carico di rete (NLB). NLB può gestire solo layer 4 (TCP) e non specifici HTTP (layer 7).

È possibile assegnare un indirizzo IP elastico per zona di disponibilità.

Per dettagli, vedere AWS blog post o NLB documentation.

"Classic Load Balancer" e "Application Load Balancer" non supportano IP statici.Se è necessaria una funzione fornita da questi, è necessario ricorrere alla soluzione CNAME descritta sopra.

Problemi correlati