Associate Elastic IP to ELB network interface

0

Hi,

As the IP address on ELB can change over time, I need to associate an Elastic public IP address to the ELB network interface. The reason behind is for our business need, we need to publish a A record into our DNS to be RFC compliant, rather than using CNAME.

However, while there is no problem to reserve a public IP address as an Elastic IP, I cannot associate it to the ELB NetInterface due to not allowed permissions. It is not a question of user permissions since I'm using the root account.

How can I solve my issue without re-creating a NLB which will then impact all our business apps?

asked 7 months ago224 views
4 Answers
1

As well as Brettski answer, the other way is to deploy a Global Accelerator which gives you a Global Static IP which you can then also send to your ALB

https://aws.amazon.com/global-accelerator/

profile picture
EXPERT
answered 7 months ago
0
Accepted Answer

That is (unfortunately for your use case) how Application Load Balancers and Classic Load Balancers behave. You can't assigned a fixed IP to them.

One solution is (as you say) to use a Network Load Balancer in front of the load balancer you're using. I'm not sure how this will impact your business applications but let's assume that it isn't a viable solution for you.

You've hinted that the issue here is that you can't use an A record with an Application or Classic Load Balancer. You can - but your domain needs to be hosted using Route 53. So consider that as an option.

The other way to do this is to have something (Lambda perhaps?) monitor the DNS records for your load balancer and update your DNS servers with any changes. This isn't ideal but in general, when a load balancer is taken out of service (for scaling or lifecycle purposes) it isn't immediately terminated. It's still there while existing connections drain and while DNS records that hold the IP address for that node age out for whoever has made those queries. So you do have a little time to make this change without impacting your clients.

It's a bit more work to do it that way (using Route 53 is cleaner) but if you can't do that then I'd suggest using a script of some sort.

profile pictureAWS
EXPERT
answered 7 months ago
profile picture
EXPERT
reviewed 7 months ago
0

Hello,

This is explained in this article. After a Network Load Balancer is created, you can't change its subnets and Elastic IP addresses. However, you can use subnets for other Availability Zones to deploy additional NLB nodes with either AWS-assigned or Elastic IP addresses. The procedure to do it is described in the article.

AWS
Vincent
answered 7 months ago
0

Thanks a lot guys!

answered 7 months ago

You are not logged in. Log in to post an answer.

A good answer clearly answers the question and provides constructive feedback and encourages professional growth in the question asker.

Guidelines for Answering Questions