GSLB is short for Global Server Load Balancing, and is a tried and tested way of improving the availability and speed of Internet-based services. GSLB enables distribution of traffic across multiple sites, manages disaster recovery, and ensures that applications are consistently accessible.
The Citrix NetScaler implementation of GSLB is DNS-based. DNS can be thought of as the Internet’s ‘Phone Book’, telling computers where different services are located. DNS-based Global Server Load Balancers are by far the most common type of GSLB device.
GSLB directs DNS requests to the best-performing GSLB site in a distributed Internet environment. When a client sends a DNS request, the system determines the best-performing site and returns its IP to the client. In the process of ascertaining the best- performing site, the system performs these intelligent decisions:
- Directs client requests to the geographically closest GSLB site (geographic and network proximity-based traffic redirection)
- Directs client requests to surviving data centers when an outage occurs
- Directs client requests to alternate data centers, when a pre-defined traffic load limit is reached
- Directs client requests to be distributed among multiple data centers (assigns each user to the GSLB site with lowest latency)
The system performs these intelligent decisions using the Metric Exchange Protocol (MEP), GSLB policies, and GSLB methods supported by the system.
GSLB policies direct the traffic to a pre-defined target site. GSLB methods are algorithms that control how the system load-balances client requests across distributed data centers. The system provides support for creating policies for distributing or redirecting client request.
Multiple sites exchange metrics with each other using the MEP. The system uses this protocol to exchange load, network, and persistence information between GSLB sites. The system also uses this information to perform load balancing between GSLB sites.
GSLB Entity Model
A typical GSLB deployment contains the entities described in the following figure.
To configure GSLB, you must configure a GSLB site. As shown in the figure, a GSLB site is the logical collection of GSLB vserver, GSLB service, LB vserver, service, domain, and ADNS service. It is the central entity in a GSLB deployment, and is represented by a name and an IP address.
To create a GSLB site, you must configure load balancing on the system. You must create GSLB vservers and GSLB services for each site. You must bind GSLB services to GSLB vservers. You must then create an ADNS service that provides the IP address of the best performing site to the client’s request.
A GSLB vserver is an entity that performs load balancing for the domains bound to it by returning the IP address of the best GSLB service. A GSLB service is a representation of the load balancing/content switching vserver. An LB vserver load balances incoming traffic by identifying the best server, then directs traffic to the corresponding service. It can also load-balance external DNS name servers. Services are entities that represent the servers. The domain is the domain name for which the system is the authoritative DNS server. By creating an ADNS service, the system can be configured as an authoritative DNS server.
Note: This is a modified version from the article How+GSLB+Works.