ADC

Share persistent sessions between virtual servers

In some customer environments (telecom and ISP), a single server handles both control and data traffic. For a given client IP address, both control and data traffic have to be directed to the same back-end server. For this, one virtual server is required for handling client authentication traffic, and usually rule based persistency is configured on it. For example, Radius.req.avp(8).value.typecast_text_t’. The second virtual server for handling data traffic. Usually, SourceIP persistence is configured on it.

Previously, persistence entries were local to the vserver. If you had to apply persistence across multiple vservers, you had to add the vservers to a load balancing group and then apply a common persistence type to the group. The above requirement could not be achieved, because all the vservers bound to a load balancing group inherited the persistency configured on the group.

With the persistency sharing between vservers feature, you can set the new useVserverPersistency parameter for a load balancing group to allow the vservers in the group to use their own persistency parameters instead of inheriting them from the group settings. You can configure separate rule-based persistency on each vserver.

Optionally, you can also designate one of the vservers in the group as a master vserver. When a vserver is designated as a master vserver, only that vserver creates the persistence entries, which are used by all the vservers in the group. If the master vserver is down, the Citrix ADC appliance does not create any new persistence entries.

Note: Persistence sharing across vservers is supported only for rule based persistency methods. You must configure compatible rule based persistence parameters on the member virtual servers.

Example:

Assume v1 and v2 are bound to a load balancing group, v1 is a RADIUS type vserver and v2 is an HTTP type vserver. ‘Radius.req.avp(8).value.typecast_text_t’ persistency is configured on v1 and ‘client.ip.src’ is configured on v2.

When traffic flows through the RADIUS vserver v1, it creates a persistent entry based on the evaluated rule string. Later, when traffic reaches the HTTP type vserver v2, v2 checks for the persistence entries on the load balancing group and uses the same persistence session to direct traffic to the same back-end server.

配置Sharing of Persistent Sessions

To share persistency parameters across vservers in a load balancing group, you must first enable the useVserverPersistency parameter and then designate one of the vservers in the group as a master server.

To enable the useVserverPersistency parameter by using the command line interface

At the command prompt, type:

set lb group  -useVserverPersistency ( ENABLED) 

Example:

set lb group lb_grp1 -useVserverPersistency ENABLED 

To enable the useVserverPersistency parameter by using the GUI

  1. Navigate toConfiguration>Traffic Management>Load Balancing>Persistency Groups.
  2. ClickAddto add a new group or select an existing group and clickEdit.
  3. SelectUse Vserver Persistence.

To designate a vserver as a master vserver by using the command line interface

At the command prompt, type:

set lb group  -useVserverPersistency ( ENABLED ) -masterVserver  

Example:

set lb group lb_grp1 -useVserverPersistency ENABLED –masterVserver vs1 

To designate a vserver as a master vserver by using the GUI

  1. Navigate toConfiguration>Traffic Management>Load Balancing>Persistency Groups.
  2. ClickAddto add a new group or select an existing group and clickEdit.
  3. SelectUse Vserver Persistence.
  4. In theVirtual Server Namebox, click+to add the vservers to the group. You can select the available vservers or create new vservers.
  5. ClickCreateif you are adding a new group orCloseif you are modifying an existing group.
  6. Select the group for which you have enabled the useVserverPersistency parameter and clickEditto set a vserver as a master to create persistence entries.
  7. From theMaster vServerlist, select the vserver that has to be designated as a master vserver.

Arguments

useVserverPersistency

Allow the virtual servers in a group to use their own persistency parameters to create persistent sessions, instead of inheriting the persistency settings from the group settings. When this parameter is enabled, persistence cannot be set on the load balancing group.

When this parameter is disabled, the group’s virtual servers inherit the persistency parameters from the group settings.

When this parameter is toggled on the load balancing group, the Citrix ADC appliance flushes all the corresponding persistence entries of the group and the member virtual servers.

Possible values: ENABLED, DISABLED

Default: DISABLED

Example:

set lb group lb_grp1 -useVserverPersistency ENABLED 

masterVserver

Designate a virtual server as a master virtual server in its load balancing group. Once designated, only the master virtual server can create the persistent entries used by the group.

Note: This parameter can be set only if the useVserverPersistency parameter is enabled.

Example:

set lb group lb_grp1 –masterVserver vs1 

Example Configuration of Sharing Persistent Sessions by Using the Command Line Interface

The virtual servers are created

add lb vs vs1 http 10.1.10.11 80 –persistence rule –rule ‘client.ip.src’ add lb vs vs2 radius 10.2.2.2 1812 –persistenceType rule –rule ‘Radius.req.avp(8).value.typecast_text_t’ 

The groups are created.

add lb group lb_grp1 –persistenceType NONE –useVserverPersistency ENABLED 

A virtual server in a group is designated as master vserver.

set lb group lb_grp1 –masterVserver vs1 

The virtual servers are bound to the group.

绑定lb组lb_grp1 vs1绑定lb组lb_grp1 vs2 

For more details, seeSetting Up Basic Load Balancingand配置Persistence Groups.