Using AWS Global Accelerator service to distribute traffic across multiple regions

0

Hi Team,

I have a requirement to support Webhook (http notification requests) consumption and the applications/micro services which consumes these requests will be hosted on multiple regions in clusters. When http notification requests comes we want all these micro services running in different regions should get the requests equally so that proper load balancing will happen. Can we achieve this kind of functionality using AWS global accelerator service? If So, How? and is there any service along with AGA is needed ? Please let us know. Thank you so much in advance.

Also, We are looking to have one URL exposed which boils down to one Fqdn/static IP address listening on port 80.

1 Answer
3
Accepted Answer

Yes, AWS Global Accelerator (AGA) can help you achieve the functionality you described for load balancing HTTP notification requests across multiple regions.

To set this up using AGA, you can follow these steps:

  1. Create a listener on AGA for the HTTP port (port 80) and assign a static IP address to it.
  2. Create endpoints for each of the microservices running in different regions, and associate them with the listener.
  3. Configure endpoint groups for each region and associate the relevant endpoints with the corresponding endpoint groups.
  4. Create a traffic dial for each endpoint group to control the amount of traffic that is routed to each region.
  5. Update the DNS record for your FQDN to point to the static IP address assigned to the AGA listener.

By following these steps, you can have one URL (FQDN) exposed that maps to one static IP address listening on port 80. When an HTTP notification request is received, AGA will route the request to the appropriate endpoint group based on the configured traffic dials. This ensures that the load is balanced across all microservices running in different regions.

Note that AGA alone can provide the load balancing and traffic routing functionality you require, and no additional services are needed. However, you may need to ensure that your microservices are designed to handle traffic from different regions and that they are deployed in a highly available and fault-tolerant configuration to ensure maximum uptime and performance.

profile picture
EXPERT
answered a year ago
  • AGA will not send traffic to all Regions as requirement states, it will route traffic to closest Region. There for this requires a closer look at the architecture.

  • Hi sdtslmn, Thank you so much for your answer. So in case if endpoint is down or or not reachable and could not handle the request. Does AGA provides failover mechanism? to send the request to another endpoint running in another region? Also, I am reading everywhere that AGA always route the traffic to closest region. But Please confirm me if by using traffic dial i should be able to achieve load balancing. Thank you in Advance

  • Endpoints will have healthchecks associated with them, so if healthcheck fails traffic will not be sent to that endpoint. But again to emphasize, traffic will only be sent to a particular region and particular endpoint, it will not be mirrored to all Regions/Endpoints.

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