ADC

Configure metrics exchange protocol

The data centers in a GSLB setup exchange metric with each other through the metrics exchange protocol (MEP), which is a proprietary protocol for Citrix ADC appliance. The exchange of the metric information begins when you create a GSLB site. These metrics comprise load, network, and persistence information.

MEP is required for health checking of data centers to ensure their availability. A connection for exchanging network metric (round-trip time) can be initiated by either of the data centers involved in the exchange, but a connection for exchanging site metrics is always initiated by the data center with the lower IP address. By default, the data center uses a subnet IP address (SNIP) to establish a connection to the IP address of a different data center. However, you can configure a specific SNIP, virtual IP (VIP) address, or the NSIP address, as the source IP address for metrics exchange. The communication process between GSLB sites uses TCP port 3011 or 3009, so this port must be open on firewalls that are between the Citrix ADC appliances.

Note: You can configure a SNIP or a GSLB site IP address as the source IP address for metrics exchange. For more information, see Configure source IP address for an RPC node.

If the source and target sites (the site that initiates a MEP connection and the site that receives the connection request, respectively) have both private and public IP addresses configured, the sites exchange MEP information by using the public IP addresses.

You can also bind monitors to check the health of remote services as described in “Monitoring GSLB Services.” When monitors are bound, metric exchange does not control the state of the remote service. If a monitor is bound to a remote service and metric exchange is enabled, the monitor controls the health status. Binding the monitors to the remote service enables the Citrix ADC appliance to interact with a non-citrix ADC load balancing device. The Citrix ADC appliance can monitor non-citrix ADC devices but cannot perform load balancing on them unless monitors are bound to all GSLB services and only static load balancing methods (such as the round robin, static proximity, or hash-based methods) are used.

With NetScaler release 11.1.51.x or later, to avoid unnecessary disruption of services, you can set a time delay for marking GSLB services as DOWN when a MEP connection goes DOWN.

MEP state in a high availability setup

In a high availability setup, the primary node establishes connections with the remote sites and the MEP state is not synchronized from the primary node to secondary nodes. Therefore, the MEP state in secondary node remains DOWN. When the secondary node becomes primary, it establishes MEP connections with the new GSLB site and updates the MEP state accordingly.

Enable site metrics exchange

Site metrics exchanged between the GSLB sites include the status of each load balancing, or content switching virtual server, the current number of connections, the current packet rate, and current bandwidth usage information.

The Citrix ADC appliance needs this information to perform load balancing between the sites. The site metric exchange interval is 1 second. A remote GSLB service must be bound to a local GSLB virtual server to enable the exchange of site metrics with the remote service.

To enable or disable site metrics exchange by using the command line interface

At a command prompt, type the following commands to enable or disable site metric exchange and verify the configuration:

set gslb site <siteName> -metricExchange (ENABLED|DISABLED)
show gslb site** <siteName>
<!--NeedCopy-->

Example:

set gslb site Site-GSLB-East-Coast -metricExchange ENABLED
set gslb site Site-GSLB-East-Coast -metricExchange DISABLED
show gslb site Site-GSLB-East-Coast
<!--NeedCopy-->

To enable or disable site metric exchange by using the GUI

  1. Navigate to Traffic Management > GSLB > Sites, and select the site.
  2. In the Configure GSLB Site dialog box, select the Metric Exchange option.

Enable network metric exchange

If your GSLB sites use the round-trip time (RTT) load balancing method, you can enable or disable the exchange of RTT information about the client’s local DNS service. This information is exchanged every 5 seconds.

For details about changing the GSLB method to a method based on RTT, see GSLB Methods.

To enable or disable network metric information exchange by using the command line interface

At the command prompt, type the following commands to enable or disable network metric information exchange and verify the configuration:

set gslb site <siteName> -nwmetricExchange (ENABLED|DISABLED)
show gslb site <<siteName>
<!--NeedCopy-->

Example:

set gslb site Site-GSLB-East-Coast -nwmetricExchange ENABLED
set gslb site Site-GSLB-East-Coast -nwmetricExchange DISABLED
show gslb site Site-GSLB-East-Coast
<!--NeedCopy-->

To enable or disable network metric information exchange by using the GUI

  1. Navigate to Traffic Management > GSLB > Sites.
  2. In the Configure GSLB Site dialog box, select the Network Metric Exchange option.

Configuring a time delay for the GSLB services to be marked as DOWN when a MEP connection goes DOWN

If the status of a MEP connection to a remote site changes to DOWN, the status of every GSLB service on that remote site is marked as DOWN, although the site might not actually be DOWN.

You can now set a delay to allow some time for reestablishment of the MEP connection before the site is marked as DOWN. If the MEP connection is back UP before the delay expires, the services are not affected.

For example, if you set the delay 10, the GSLB services are marked as DOWN until the MEP connection has been DOWN for 10 seconds. If the MEP connection is back UP within 10 seconds, the GSLB services remain in the UP state.

Note: This delay is applicable only to services not bound to a monitor. The delay does not affect the trigger monitors.

To set a time delay by using the command line interface

At the command prompt, type the following command:

set gslb parameter** - GSLBSvcStateDelayTime <sec>
<!--NeedCopy-->

Example:

set gslb parameter - GSLBSvcStateDelayTime 10

Note

In a hierarchical deployment (parent-child topology), if you configure the GSLB service on both the parent and child sites, set the GSLB parameter on both the parent and child sites. If you do not configure the GSLB service on the child site, set the GSLB parameter only on the parent site.

To set a time delay by using the GUI

  1. Navigate to Configuration > Traffic Management > GSLB > Change GSLB Settings.
  2. In the GSLB Service State Delay Time (secs) box, type the time delay in seconds.

Configure a learning time for GSLB services when MEP connection status comes up to avoid flaps on GSLB services

When a node reboots or during HA failover, the system is initialized. Then, the node must learn current information about the configured local and child services to communicate the service state to remote nodes through MEP. The node takes some time to learn the correct information. Meanwhile, if a peer node connects to this node and requests for an update, the node might send an incorrect service state and statistics. This incorrect information might cause service flap and other functionality related issues on the remote peer nodes. To avoid this scenario, you can now set a learning time for the local and child GSLB service.

When a learning timeout is configured, the GSLB site gets some buffer time (learning timeout) to learn the correct statistics about its local and child services. When a service is in a learning phase, the remote GSLB site gets this information in MEP update, and does not honor the primary site state and statistics received through MEP for that service.

GSLB services enter the learning phase in any of the following scenarios.

  • Citrix ADC appliance is rebooted
  • High availability failover has occurred
  • Owner node in a cluster GSLB setup is changed
  • MEP is enabled on a local node
  • GSLB site comes out of island scenario. A GSLB Site becomes island when it is not connected to any other site.

In a parent-child deployment, the backup parent (if configured) selectively moves the adopted child site’s GSLB services to the learning phase when the primary parent goes DOWN.

To set a service state learning time by using the CLI

At the command prompt, type the following command:

set gslb parameter – SvcStateLearningTime <sec>
<!--NeedCopy-->

You can set “SvcStateLearningTime” in seconds. Default value is 0 and maximum value is 3600. This parameter is applicable only if monitors are not bound to GSLB services.

Example:

set gslb parameter – SvcStateLearningTime 10
<!--NeedCopy-->

To set a service state learning time by using the GUI

  1. Navigate to Configuration > Traffic Management > GSLB > Dashboard > Change GSLB Settings.

    The Set GSLB Parameters page appears.

  2. In the GSLB Service State Learning Time (secs) field, type the learning time in seconds.

Enable persistence information exchange

You can configure Citrix ADC appliance to provide persistent connections, so that a client transmission to any virtual server in a group can be directed to a server that has received previous transmissions from the same client.

You can enable or disable the exchange of persistence information at each site. This information is exchanged once every 5 seconds between Citrix ADC appliances participating in GSLB.

For details about configuring persistence, see Configuring Persistent Connections.

To enable or disable persistence information exchange by using the command line interface

At the command prompt, type the following commands to enable or disable persistence-information exchange and verify the configuration:

set gslb site <siteName> -sessionExchange (ENABLED|DISABLED)
show gslb site** <siteName>
<!--NeedCopy-->

Example:

set gslb site Site-GSLB-East-Coast -sessionExchange  ENABLED
set gslb site Site-GSLB-East-Coast -sessionExchange  DISABLED
show gslb site Site-GSLB-East-Coast
<!--NeedCopy-->

To enable or disable persistence information exchange by using the GUI

  1. Navigate to Traffic Management > GSLB > Sites, and double-click the site.
  2. In the Configure GSLB Site dialog box, select, or clear the Persistence Session Entry Exchange check box.