Just running through a blog on AWS… I will be contrasting and comparing different ways to make it go.
Here is the link to the blog I followed:
https://aws.amazon.com/blogs/networking-and-content-delivery/using-aws-lambda-to-enable-static-ip-addresses-for-application-load-balancers/
We need some infrastructure upfront to start this:
- Network Load Balancer (NLB) that has an IP based target group
- Internal Application Load Balancer (ALB)
- The ALB and NLB both need to be in the same Availability Zone (AZ)
- S3
The first method we will use is manually launching it using the “Launch Stack” button in the blog with the provided CloudFormation template. I am not going to out line this but do want to see it. It is literally a guided experience so nothing to see here.
The second method will be to use the CloudFormation template launched with Terraform.
The third method will be to just Terraform it out. This is my preferred option going into it but the second option was mentioned so I am going to try it out. The deployable project in the end needs to handle multiple lambdas to manage multiple ALB’s.