How to choose Elastic IP when my aws lambda function execute

拈花ヽ惹草 提交于 2019-12-24 10:46:26

问题


I want to select specific Elastic IP my own when my lambda function executed.

my service has to respond to several situations, and by user's attributes. Could I write code in a lambda function, that can choose specific my own elastic IP?

I had searched for this. but old information says it cannot do. but recently I heard about it is possible by using Network Load Balancer or Application Load Balancer. But I don't know how to use this for the problem.


回答1:


No. You cannot associate an Elastic IP (EIP) address with an AWS Lambda function.

Well, actually you can, but I wouldn't recommend it. When a Lambda function is associated with a VPC, it connects via an Elastic Network Interface (ENI). It is possible to attach an EIP to an ENI. This also grants access to the Internet if it is attached to a public subnet.

So why avoid it? Because Lambda might create additional ENIs, especially if the Lambda function is frequently invoked and run in parallel. This means it will not have a consistent ENI.

An alternative method is:

  • Attach the AWS Lambda function to a private subnet
  • Put a NAT Gateway in a public subnet
  • Associate an Elastic IP address with the NAT Gateway
  • All traffic from the Lambda function to the Internet will then come from the NAT Gateway's EIP (however, I don't think you can change that EIP)


来源:https://stackoverflow.com/questions/55771064/how-to-choose-elastic-ip-when-my-aws-lambda-function-execute

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!