Akamai Diversity

The Akamai Blog

Akamai Load Balancing to Lock-in Quality

The Right Service from the Right Edge at the Right Time

Introduction

As Akamai's Global Traffic Management for Cloud, Data Centers and CDNs blog introduces, Akamai's Intelligent Edge™ platform includes DNS and Layer 7 load balancing capabilities that combine to get users to the right edge at the right time. In this blog, Akamai poses a use case and describes how to address it using Akamai Global Traffic Management (GTM) and Application Load Balancing (ALB).

Two Cloud-Based GSLB Solutions from Akamai

Akamai has two solid, scalable, and robust GSLB services used by thousands of customers throughout the world. Most people do not think of Akamai as a global load balancing provider. Yet, the essence of Akamai's business is scaling the Internet. Moving the GSLB function into the cloud is a critical element for Akamai to help our customers scale their operations.

Akamai offers two GSLB tools: Global Traffic Management (GTM) for any traffic to any data center (e.g., API traffic shaping) and Application Load balancer (ALB) to optimize origin traffic flows, layer 7 routing, and layer 7 session affinity (e.g., origin switching). GTM is a flexible multi-use, multi-protocol tool to manage traffic for tools, databases, data centers, multiple-CDNs, and a surprising range of other services. ALB leverages the power of Akamai's Global Traffic Management to make Layer 3 DNS routing decisions, and adds layer 7 capabilities for additional traffic routing control. Both GTM and ALB follow Akamai's practice of maximizing reliability, availability, and scale in all conditions independent of any underlying stressors.

Akamia's Global Traffic Management (GTM)

Akamai's GTM is a highly reliable and DevOps-optimized GSLB service that operates at the edge of the network across the Akamai Intelligent Edge, a diverse, distributed network of networks. GTM is enhanced through Akamai's Information Security program, which governs with world-class controls and compliance, as well as its Network Operations Command Center, which operates 24/7. GTM allows for a range of controls including weighted and performance balancing, geo-mapping, and failover.

Because GTM is available globally as an integral part of Akamai's Intelligent Edge platform, it provides organizations flexibility to move services to optimal geographic locations. GTM services such as geo-mapping allow operations to deploy applications on multiple clouds and route user application connections to the geographically or topologically closest edge servers. Akamai's performance monitoring is an outside-in approach, setting up monitors worldwide. Akamai's GTM performance monitoring leverages the same monitoring used for Akamai's media, web, cloud, and security products, which some of the world's largest application, media, and network providers depend on every minute of every day.

Akamai's Application Load Balancer (ALB)

ALB adds layer 7 visibility and control when traffic is delivered through the Akamai platform, enhancing origin routing and reducing risk to the user experience when expected outages occur. Layer 7 capabilities include:

  • Routing decisions based on header information such as URL, device type, or content characteristics
  • Session affinity to protect the user experience by binding users to an individual origin during normal runtime operation maintaining critical data such as login, shopping cart, or other user unique data
  • Instant failover to reduce downtime risk when unexpected outages occur by rerouting user requests to backup origins with no disruption to the user experience

ALB Plus GTM

There will be architectural situations where an organization will deploy GTM to cover resiliency for some functions and ALB to cover specific applications. The combination of ALB and GTM provides devops, network architects, and system engineers the flexibility to choose the optimal cloud-based GSLB solution. Some architects might need Cloudlet ALB functionality to manage in-line experiences that Akamai delivers. At the same time, network architects for that same company might need to shape traffic between cloud deployments and providers. With GTM and ALB, engineers and application developers have full control - the power of AND.

Use Case

For every thing in the world with moving parts, stuff happens. A good service design takes into account the worst case scenario to maintain quality when software, hardware, or networking issues occur. An example scenario might be a streaming service that has many types of long playing content that a user selects from a menu. A web system might render the menu of content and perform functions such as account authentication and authorization. Clicking a menu item enables a streaming session for the user. Requirements might include:

  • Global coverage - multiple data centers in Europe, US East / West, LatAm, and Asia
  • Mapping by geography - constrain a geographic region's traffic to data centers within that region
  • Measuring data center performance with a monitoring network and user feedback transactions
  • Accepting policy data changes programmatically with API transactions
  • Traffic shaping across each of the data centers - manage the traffic load
  • Establishing a maintenance mode to allow a data center to come offline for maintenance

Let's focus on the website traffic to highlight how combing GTM and ALB enables an optimal solution. The following diagram illustrates the high level components and interactions.

Load Balancing.png

As a first step in the overall flow, Global Traffic Managements directs the user to the correct edge service from Akamai or a third party service. This decision considers load, performance, availability, real user measurements, and geography when an application attempts to find the right location of the service using DNS. Service endpoints may exist anywhere in the world. After connecting to the correct data center, Akamai's edge servers and Application Load Balancer then take over to ensure a great experience. With Akamai, this means that ALB owns the connection and ensures fidelity to origin content servers and session resiliency.

Set Up

To enable this use case, one simply follows these high level steps:

Step 1: Create a Global Traffic Management Domain and Property

Step 2: Create an Application Load Balancer Cloudlet

Step 3: Update DNS to direct traffic

Step 1: Create a Global Traffic Management Domain and Property

GTM addresses services with DNS domain names. Queries to GTM domain names have responses that direct users to ideal edge services given the current state of the Internet. Tasks in this step include:

The resulting domain and property will bind to a domain name such as website.property.akadns.net. Applications such as browser using an OS stub resolver find edge services with DNS queries to this name. Responses point applications to ALB or third party services depending on settings. The following example DNS response fragment points the application to an ALB property (e.g., www-alb.jdgri.me.edgesuite.net). Other valid responses might direct the application to use another service. The application gets this direction by first looking for a service location with the primary domain name (e.g.,  www.example.com). Note the alias (CNAME) from the primary domain to the GTM domain and GTM domain to the ALB domain.

;; ANSWER SECTION:

www.example.com. 1 IN CNAME website-gtm.property.akadns.net.

website-gtm.property.akadns.net. 1 IN CNAME www-alb.jdgri.me.edgesuite.net.


Step 2: Create an Application Load Balancer Cloudlet

ALB addresses services with DNS domain names as well. Queries to ALB domain names have responses that direct users to ideal edge servers given the state of the Internet. Tasks in this step include:

  • Determine which Akamai property to use
  • Add Cloudlet origins (Data Centers)
  • Configure Cloudlet origins
  • Set up a load balancing configuration
  • Create a policy
  • Add rules to the policy
  • Set up application load balancer behavior

The resulting configuration will have a fully qualified domain name and resource record set like the following that gets the user to the right edge server:

;; ANSWER SECTION:

www-alb.jdgri.me.edgesuite.net.  21600 IN CNAME      a1234.dscb.akamai.net.

a1234.dscb.akamai.net.     20    IN    A     1.2.3.4

As described above, GTM can use this service name as one of its targets to distribute for relevant queries and applications seeking service locations.

Step 3: Update DNS to Direct Traffic

With a GTM Domain and Property and an ALB Cloudlet, one can then direct application traffic to the service by also using DNS with a CNAME bound to the GTM Domain that contains configurations pointing to the ALB property and possibly other third party services. The initial zone configuration might simply look like this.

www.example.com. CNAME website-gtm.property.akadns.net.

With this service name, an application can leverage GTM and ALB to determine which edge server should deliver the service given the state of the Internet for that application. Note the alias (CNAME) from the primary domain to the GTM domain. With the right edge server at the right time, the user experience is then optimal.

Next Steps

What does the Future Hold?

GTM and ALB are an integral part of Akamai's Intelligent Edge platform. Stay tuned to Akamai's blogs and subscribe to Akamai's Community to follow new updates, articles, and presentations as our solutions continually evolve to meet our customer's needs.

Find out More About Akamai's GTM and ALB

Use the "Get in Touch" icon on Akamai.com to chat with someone in Akamai right now for more information about Akamai's GTM and ALB services. The following are some additional links to materials.

Leave a comment