Which solution will meet these requirements with the LEAST effort?
Migrate public DNS to Amazon Route 53. Create CNAME records for the apex domain to point to the ALB. Use a geolocation routing policy to route traffic based on user location.
Place a Network Load Balancer (NLB) in front of the ALMigrate public DNS to Amazon Route 53. Create a CNAME record for the apex domain to point to the NLB’s static IP address. Use a geolocation routing policy to route traffic based on user location.
Create an AWS Global Accelerator accelerator with multiple endpoint groups that target endpoints in appropriate AWS Regions. Use the accelerator’s static IP address to create a record in public DNS for the apex domain.
Create an Amazon API Gateway API that is backed by AWS Lambda in one of the AWS Regions. Configure a Lambda function to route traffic to application deployments by using the round robin method. Create CNAME records for the apex domain to point to the API’s URL.
Explanations:
CNAME records cannot be used at the apex domain due to DNS limitations; instead, an ALIAS or A record is required. While using Route 53 and geolocation routing is valid, the CNAME issue makes this option incorrect.
Similar to option A, CNAME records cannot be used at the apex domain. Furthermore, using a static IP address with an NLB would not allow for easy management and scalability, as NLBs do not support DNS-based load balancing directly at the apex.
AWS Global Accelerator provides static IP addresses that can be used for an apex domain, enabling low-latency routing to the nearest AWS Region. This solution meets the requirements with minimal effort and manages global traffic efficiently.
Using Amazon API Gateway with AWS Lambda for traffic routing adds unnecessary complexity. API Gateway is not designed to manage routing based on user location like Global Accelerator or Route 53 geolocation routing does. Additionally, it is less efficient for a multi-Region application with global tables.