GSLB, Global Service Load Balancing
For IT Pros: This page contains information about the Technology Services Global Server Load Balancing (GSLB) service, how to request GSLB service, and how to use the GSLB service. Most of this information is for IT professionals; end users should only need the campus DNS server's IP address.
Global Server Load Balancing (GSLB) is using hardware to modify DNS responses for server names. This allows the service manager for a client service to decide what IP address is returned to the client “on the fly”, based on server availability, server load (health checks), or other pre-configured metrics.
DNS has a built-in system called “round-robin”. If you give a host name more than one IP address, it will take turns putting each IP address at the top of the list when it responds to a DNS query of the IP associated with a specific name. GSLB takes this a step further by changing that order or even removing an IP address (or multiple addresses) from the DNS response if the GSLB controller knows that a server is down or overloaded.
Because it modifies DNS requests instead of balancing server traffic directly, the hardware providing GSLB doesn’t have to sit in front of the real servers that provide their service to its customers. This allows the real servers to be at multiple locations, making the service “global”. GSLB can be used to balance between multiple real servers, between multiple VIPs, or a combination of the two. GSLB can weight a specific IP address to give it more (or all) of your service's traffic so that you can allow hardware of differing abilities to get an appropriate share of the load; or you can even setup a primary/backup system where the backup only gets traffic if the primary is off-line.
When working directly with the IP address of a real server, the GSLB can perform basic availability checks, such as ping, and does a TCP port open to decide whether or not to leave an IP address in the DNS response. When working with a VIP from a service using SLB, the GSLB controller can get actual load and health check data from the hardware providing SLB and can use that data to decide an appropriate DNS response. Because of the health checks available, some people may choose to put single servers behind the SLB service at multiple locations to give GSLB the best data to decide which ones to include in the DNS response.
If the GSLB cannot talk to any of the real or virtual servers for some reason, it will not modify the DNS response at all. Instead, it will return all of the IP addresses on its list, presuming that the problem is within itself rather than within any of the servers. It will presume that everything outside of itself is working properly until communication with its servers is restored.
Where can I get GSLB?
Anywhere.
What do I need to know to use GSLB?
- What are the IP addresses of your service in each location you want to include?
- How do you want to direct traffic? (load balance vs. primary/backup)
- What weighting do you want? (primary/backup, simple round-robin, or weighted round-robin)
- What traffic patterns would you prefer? (campus traffic to campus service IPs, etc.)
There are limits on what is available. - What DNS name do you want your service to have once it is behind GSLB?
Unless there are technical issues, your service will have a DNS name of service.gslb.illinois.edu in the GSLB DNS server. You will be able to point any of your CNAMEs to that entry, and thereby control what uses GSLB and what doesn’t.
For example, ntp.illinois.edu points to ntp.gslb.illinois.edu which is configured in the GSLB controllers.
How do I start using the GSLB?
If you've never used GSLB before, you should setup a meeting with the GSLB service manager and make sure you have all the information you need to get started. Email net-trouble@illinois.edu with information on what you're interested in doing, and state that you'd like to setup a meeting to review the plans.
Once you have all your data together, email net-trouble@illinois.edu with all of your details. A ticket will be created for you to have the work done.