AWS Global Accelerator is a service that allows you to route traffic to your applications using the AWS global network instead of the internet. The internet can be congested and AWS claim that by using their private network infrastructure you can improve the connection speed and performance by as much as 60%.
Global Accelerator (GA) provides you with two public static IP addresses that users can connect to in order to reach your application endpoint. GA then optimises the path from those IP addresses to your application which results in lower latency and better network performance.
When something goes wrong network wise, GA will re route traffic along a different route to the application endpoints you have defined, such as application load balancers, network load balancers, EC2 instances or Elastic IPs without the end user having to take any action on their end. GA finds the nearest healthy endpoint and takes traffic down that route to reach your application.
GA can be initiated with a single action in the Elastic Load Balancing console or in a couple of minutes if you connect to your application in a different way using either UDP and TCP traffic.
You can of course visualize your AWS architecture easily by connecting Hava. Automated diagrams show you what is running where.
Whether your users are distributed locally or across the globe, you are always going to want them to connect to your application using the fastest reliable connection with the lowest latency which is something the public internet may not be able to provide consistently. Because GA can detect unhealthy endpoints and swap traffic to a healthy option within 30 seconds, it provides a seamless method of ensuring you have the fastest method of delivering traffic to your application endpoints and resolving issues as they occur.
Global Accelerator for Single Region Applications
GA helps single region applications by bridging the gap between local and global traffic. Getting users globally off the internet and onto the AWS global network bypasses congestion and local outages via a network of over 90 global edge locations which find the fastest route to your application endpoint.
Global Accelerator for Multi Region Applications
When your application is deployed over multiple regions, you can accumulate a long list of user facing IP addresses and ever increasing traffic routing logic. GA simplifies this by providing just two static IP addresses that are anycast from the AWS edge locations giving a single entry point to your application regardless of how many regions it is deployed in.
When you are using Global Accelerator, you can use the console to add or remove origins, availability zones or entire regions without impacting the availability of your application. If GA is routing traffic to a region or availability zone that experiences an outage, it will find the nearest healthy region or AZ and route traffic there.
AWS Global Accelerator leverages the AWS Edge network which now has over 100 data centres in 86 cities across 47 countries. These locations Anycast your allocated static IP addresses that route to your application or resource endpoints in one or multiple regions.
Fault tolerance is built into AWS GA using network zones. When you instantiate GA you are allocated two static IP addresses. These are serviced by two separate network zones which run in separate physical infrastructure. If one of your IP addresses becomes unavailable due to network disruptions or third party IP address blocking, you can swap to the alternate address.
AWS GA also allows you to bring your own IP (BYOIP) as a fixed entry point to your application. You can use up to two /24 IPv4 address ranges and choose which /32 IP addresses to use during the Accelerator set up process.
AWS Global Accelerator Traffic Dials
You can control the percentage of traffic that goes to specific regions using the GA traffic dials. For each region or endpoint group you can set a traffic dial to control the percentage of traffic that is directed to that region.
AWS GA Continuous Availability
AWS GA continuously monitors the health of your application endpoints by performing HTTP/S and TCP health checks. When a problem is detected it instantly reacts by redirecting traffic to a healthy endpoint which ensures the best performance and availability of your application to your users. Also built into the edge infrastructure is DDoS resiliency. AWS GA is protected by AWS Shield (standard) network flow monitoring and automated in-line mitigation protocols.
AWS GA Custom Routing Accelerators
A custom routing accelerator allows you to use your own application logic to route traffic to a specific Amazon EC2 instance. A standard AWS GA instance will redirect traffic to the closest available healthy endpoint so you have no control over exactly which EC2 instance will be served, which can be a problem if you have say applications in different languages residing in separate instances.
To overcome the problem, when you set up a custom routing accelerator, you set up separate ports that map to specific EC2 instances that run across the AWS edge infrastructure which means you get all the benefits of using the AWS infrastructure (not the internet) but maintain fine grained control over where your application users are sent.
Setting up AWS Global Accelerator
Setting up AWS GA is reasonably straightforward. Once you have an endpoint like an EC2 instance established, you then
- Go to the GA console and “Create Accelerator”
- Create a standard accelerator
- Name it
- Select standard type
- Select IPv4 or Dual-stack
- Add tags if required
- Add Listeners
- Specify ports or port ranges
- Specify protocols for the selected ports
- Specify whether client affinity is required. If yes, specify a source IP that all traffic should be routed to. If no affinity is specified, AWS GA will distribute traffic evenly.
- Add any more listeners you require.
- Add endpoint groups
- In the listener settings, add endpoint group by selecting a region from the dropdown
- Optionally set a percentage traffic dial
- Optionally set a custom health check
- Add Endpoints
- Create Endpoint
- Select an endpoint from the dropdown
- Optionally set a weight 0-255 to proportionally weight the amount of traffic sent to this endpoint
See https://docs.aws.amazon.com/global-accelerator/latest/dg/getting-started.html for detailed information.
That’s a quick look at AWS Global Accelerator. If you are looking to lift performance and availability of your AWS based application that’s currently accessed via the internet, you should probably check it out.
What you should also check out is the automated diagrams created by hava.io (see what I did there). By connecting your AWS, Azure, GCP accounts or Kubernetes Clusters to Hava, you’ll have well laid out interactive network topology diagrams, security group diagrams and AWS compliance reports that are automatically generated. From there Hava will continuously poll your cloud config and update your diagrams when changes are detected.
Superseded diagrams are retained in version history so you can audit and identify changes to your network.
Hava diagram endpoints can be embedded in external web properties like Wikis, intranets or markdown documents like your Github readme.md files which will auto update without having to re-embed them. These diagrams can be viewed without consuming a Hava user.
You can find out more about Hava including how to get a free 14 day trial using the button below.