Key takeaways
- GSLB gives you control over which sites end users are directed to when looking up your applications namespace.
- GSLB provides more control and capabilities than alternatives like DNS load balancing or layer-3/4 failover services.
What is GSLB?
With server load balancing, you’re managing application requests across a pool of application servers. With GSLB you’re managing DNS lookups across a pool of sites. This allows you to distribute application traffic across a global network of sites for high availability and performance.
How GSLB works
GSLB solutions like LoadMaster GEO work via DNS. When a DNS lookup is made for your application (e.g. www.company.com), the request is delegated to a GSLB device such as Kemp’s Loadmaster GEO. The GSLB device uses health checks to ensure only working sites are used and scheduling algorithms (such as round robin, proximity or GEOIP location) to decide which site to return to the DNS client. Once the DNS request is completed the end user devices create a connection to the site they received.
Figure 1: GSLB principle of operation scheme
It is important to understand that the actual DNS requester is often a DNS server (such as Google DNS) acting on behalf of an end user rather than an end user device talking directly to the GSLB device. GSLB works best when your end users are all using different DNS services that are local to them (such as DNS provided by their ISP or their corporate DNS server).
GSLB vs DNS load balancing
DNS allows you to define multiple IP addresses for an application – this is called DNS load balancing. The problem is you can’t control how an end user device will use this information. Some clients will always use the first record, causing connections to become very uneven. End user devices might also select a location that’s far away from them, causing latency, or send them to a site where the application is down. All of these limitations result in availability and performance problems.
GSLB has built-in health checks to ensure only sites with working copies of the application are used, and uses advanced scheduling algorithms to return the best response to an end user DNS lookup. This allows you control over which site will be returned based on things like GEOIP data to send users to the closest site or to create active and passive sites for disaster recovery scenarios.
GSLB vs layer-3/4 failover
Many ISPs offer a layer-3/4 failover service that allows you to move your public IP from a primary datacenter to a secondary datacenter in case of an outage. This allows you to redirect end users to the secondary datacenter. This type of service is usually quite expensive and can take minutes or even hours before new BGP routes are propagated, which leads to an outage. With LoadMaster GEO, you can achieve the same result automatically in seconds and at a fraction of the cost. GSLB keeps you in control of the failover and failback process instead of relying on a 3rd party.
GSLB and network telemetry
Network Telemetry together with Flowmon Collector can help you understand network utilization, bandwidth distribution and performance metrics over application workloads across multiple sites similarly to server load balancing in a single data center. All LoadMasters have to be configured to export Network Telemetry in IPFIX to Flowmon Collector to understand per-site traffic and drill down to details.
Figure 2: Bandwidth utilization and performance metrics of application workloads from two different geo sites.
Summary
GSLB is an essential tool for any NetOps or DevOps team. Whether you have multiple sites across the globe or just two datacenters within a single campus, GSLB works alongside server load balancing to achieve a great application experience and meeting your availability and performance SLAs. It can be used to replace more expensive or less capable solutions like layer-3/4 failover and DNS load balancing.