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?

已提问 7 个月前237 查看次数
4 回答
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
专家
已回答 7 个月前
0
已接受的回答

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
专家
已回答 7 个月前
profile picture
专家
已审核 7 个月前
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
已回答 7 个月前
0

Thanks a lot guys!

已回答 7 个月前

您未登录。 登录 发布回答。

一个好的回答可以清楚地解答问题和提供建设性反馈,并能促进提问者的职业发展。

回答问题的准则