Product Documentation

Configuring Service Groups

Jan 04, 2016

Configuring a service group enables you to manage a group of services as easily as a single service. For example, if you enable or disable any option, such as compression, health monitoring or graceful shutdown, for a service group, the option gets enabled for all the members of the service group.

After creating a service group, you can bind it to a virtual server, and you can add services to the group. You can also bind monitors to service groups.

The members of a service group can be identified by IP address or server name.

Using domain-name based service (DBS) group members is advantageous because you need not reconfigure the member on the NetScaler appliance if the IP address of the member changes. The appliance automatically senses such changes through the configured name server. This feature is particularly useful in cloud scenarios, where the service provider can change a physical server or change the IP address for a service. If you specify a DBS group member, the NetScaler learns the IP address dynamically.

You can bind both IP-based and DBS members to the same service group.

Note: If you use DBS service group members, make sure that either a name server is specified or a DNS server is configured on the NetScaler. A domain name will be resolved into an IP address only if the corresponding address record is present on the NetScaler or the name server.

Creating Service Groups

You can configure up to 8192 service groups on the NetScaler appliance.

To create a service group by using the command line

At the command prompt, type:

add servicegroup <ServiceGroupName> <Protocol>

Example

add servicegroup Service-Group-1 HTTP

To create a service group by using the configuration utility

Navigate to Traffic Management > Load Balancing > Service Groups, and add a service group.

Binding a Service Group to a Virtual Server

When you bind a service group to a virtual server, the member services are bound to the virtual server.

To bind a service group to a virtual server by using the command line interface

At the command prompt, type:

bind lb vserver <name>@ <serviceGroupName>

Example

bind lb vserver Vserver-LB-1 Service-Group-1

To bind a service group to a virtual server by using the configuration utility

  1. Navigate to Traffic Management > Load Balancing > Virtual Servers, and open a virtual server.
  2. In Advanced Settings, select Service Groups.

Binding a Member to a Service Group

Adding services to a service group enables the service group to manage the servers. You can add the servers to a service group by specifying the IP addresses or the names of the servers.

In the configuration utility, if you want to add a domain-name based service group member, select Server Based.

With this option, you can add any server that has been assigned a name, regardless of whether the name is an IP address or a user-assigned name.

To add members to a service group by using the command line interface

To configure a service group, at the command prompt, type:

bind servicegroup <serviceGroupName> (<IP>@ | <serverName>) <port>

Examples

bind servicegroup Service-Group-1 10.102.29.30 80 
 
bind servicegroup Service-Group-2 1000:0000:0000:0000:0005:0600:700a:888b 80 
 
bind servicegroup CitrixEdu s1.citrite.net

To add members to a service group by using the configuration utility

  1. Navigate to Traffic Management > Load Balancing > Service Groupsand open a service group.
  2. Click in the Service Group section, and do one of the following:
    • To add a new IP based service group member, select IP Based.
    • To add a server-name based service group member, select Server Based.
    If you want to add a domain-name based service group member, select Server Based. With this option, you can add any server that has been assigned a name, regardless of whether the name is an IP address or a user-assigned name.
  3. If adding a new IP based member, in the IP Address text box, type the IP address. If the IP address uses IPv6 format, select the IPv6 check box and then enter the address in the IP Address text box.

     

    Note: You can add a range of IP addresses. The IP addresses in the range must be consecutive. Specify the range by entering the starting IP address in the IP Address text box (for example, 10.102.29.30). Specify the end byte of the IP address range in the text box under Range (for example, 35). In the Port text box type the port (for example, 80), and then click Add.
  4. Click Create.

Binding a Monitor to a Service Group

When you create a service group, the default monitor of the type appropriate for the group is automatically bound to it. Monitors periodically probe the servers in the service group to which they are bound and update the state of the service groups.

You can bind a different monitor of your own choice to the service group.

To bind a monitor to a service group by using the command line interface

At the command prompt, type:

bind serviceGroup <serviceGroupName> -monitorName <string> -monState ( ENABLED | DISABLED)

Example

bind serviceGroup Service-Group-1 -monitorName monitor-HTTP-1

To a bind monitor to a service group by using the configuration utility

  1. Navigate to Traffic Management > Load Balancing > Service Groups.
  2. Open a service group and, in Advanced Settings, click Monitors.

Retaining the Original State of a Service Group Member after Disabling and Enabling a Virtual Server

From build 64.x, a new global option, –retainDisableServer, enables you to retain a service-group member's state when a server is disabled and reenabled.

Previously, a member's state would change from DISABLED to ENABLED under the following set of conditions:

  • Two applications are deployed on the same port on a virtual server.
  • Two service groups with a common member are bound to this virtual server, and the common member is enabled in one group and disabled in the other.
  • The server is disabled and then reenabled.

Under these conditions, disabling the server disables all the service group members, and reenabling the server enables all the members, by default, regardless of their earlier states. To bring the members back to the original states, you must manually disable those member(s) in the service group.  This is a cumbersome task and prone to errors.