Understanding Metric Exchange Protocol and Monitors for Global Server Load Balancing

Understanding Metric Exchange Protocol and Monitors for Global Server Load Balancing

book

Article ID: CTX111081

calendar_today

Updated On:

Description

This article contains information about the overview of Global Server Load Balancing (GSLB), Metric Exchange Protocol (MEP), monitors, and their relationship in the load balancing decision. Please also reference CTX251348  for deeper detail and explanation on this topic.

Requirements

  • An understanding of the Domain Name System (DNS) process.
  • Before configuring GSLB, you must have a properly working load balancing virtual server or service configuration.

MEP

MEP is a proprietary protocol used by the Citrix ADC (NetScaler) appliances to exchange site metrics, network metrics, and persistence information to other sites participating in GSLB. The communication process is accomplished between each GSLB site on TCP port 3011 (or 3009 for secure communication) and therefore must be open on firewalls that are between the Citrix ADC (NetScaler) appliances.

The metrics that are exchanged are the load balancing metrics that are configured on the load balancing virtual server. For example, if you have three GSLB sites and each geographic site has a load balancing virtual server and this load balancing virtual server is configured for a method of Least Connections, each geographic site has its own Least Connection value that is based upon that current connection of the site. When a request is made, the GSLB site compares these metrics for that particular virtual server receiving the request for resolution and then resolves that request to the site that has the least connections.
Note: CNAME based services will not use MEP for state. Refer to Citrix Documentation - Creating CNAME-Based GSLB Services.


Configuration

By default, MEP status is UP status and it exchanges the necessary data for GSLB. To use the load balancing method, as defined on the load balancing virtual servers as a means to resolution, it is necessary to enable MEP on all GSLB sites. 

To toggle MEP on a GSLB Site, run the following command:

set gslb site <sitename> [-metricExchange (ENABLED | DISABLED)]

When this protocol is enabled, load balancing metrics are exchanged between all GSLB sites including the health of the GSLB services as per the vServer's monitor configurations. GSLB services are associated with a GSLB site. If at any point the MEP status changes to DOWN on any one site, the entire load balancing method as defined by the virtual server is disabled and falls back to a Round Robin load balancing method. After all the MEP statuses are marked as UP, it starts to use the defined load balancing metrics.

Monitors

Monitors used in GLSB are typically the same as any other monitoring configured for a load balancing virtual server. Monitors can be bound to a GSLB service (which in turn is associated with a vServer) if an administrator needs to add additional logic to determine GSLB service health above and beyond the monitors that may already be configured on the vServer itself. This is possible as the GSLB service is an abstraction layer on top of the underlying service. Normally, it is not necessary to bind monitors to GSLB services as MEP is sufficient in most instances, relying on the monitors of the vServer associated with the GSLB service. 

There are circumstances where binding monitors to a GSLB service may be warranted, however, such as in the case where GSLB services are associated with SSL VPN \ Citrix Gateway vServers. Short of unbinding a certificate from such vServers, the vServer itself will not ever be marked DOWN and users who interact with it might be impacted if a back-end dependency such as a local StoreFront VIP or LDAPS VIP went offline at the Citrix Gateway vServer's GSLB site. On a GSLB service, we can bind custom monitors such as ping or TCP etc. to check the health of a local StoreFront, XML, LDAPS, etc. VIPs which may be dependencies of the vServer, by specifying the VIP IP in the custom monitor for the aforementioned services. In this way, if the local StoreFront or LDAP VIP failed, the GSLB service can mark the site as DOWN and avoid sending users to a non-functional location. 

When binding a monitor to a GSLB service, MEP for the service will be ignored by default as it overrides MEP although the "Trigger Monitors " parameter of the GSLB service can be modified to change this behavior. For the above example, it is useful to bind a simple HTTPS monitor (that accepts 200, 302) to the GSLB service as well, so that explicitly setting the vServer to DISABLED will properly take the GSLB site offline. 

Note: No round trip times or metrics from the monitors are used to determine GSLB resolutions.

Configuration

To bind a monitor to a GSLB service, use the following command:
bind monitor http <gslbservicename> -state ENABLED
The following table represents the interaction between MEP and monitors:
 
Monitoring MEP Enabled MEP Disabled
Explicit monitorsHealth status is controlled by monitoringHealth status is controlled by monitoring
No explicit monitorsHealth status controlled by MEPAll services belonging to that site are marked down

Additional Resources

CTX251348 - Citrix ADC GSLB MEP vs Monitors
CTX110348 - How to Configure Global Server Load Balancing with NetScaler Appliances

Issue/Introduction

This article contains information about the overview of Global Server Load Balancing (GSLB), Metric Exchange Protocol (MEP), monitors, and their relationship in the load balancing decision.