ServerIron ADX Server Load Balancing Guide
Release 12.0.00
June 15, 2009

Table of Contents Previous Next Print


Server Load Balancing > Group Sticky: L4 SLB to Server Group

Group Sticky: L4 SLB to Server Group
L4 load balancing to server groups is performed through a Group Sticky function. This sticky behavior supports Group Sticky and Group Failover functionality.
Enabling Group Sticky
The group sticky feature enables sticky connections to be load balanced among servers in the same group. Without this feature, normal sticky behavior always sends a specific client IP to a specific server. Group Sticky is useful when the server farm is grouped into clusters, and each cluster has servers with replicated (mirrored) content.
To enable Group Sticky, use the port <type> group-sticky command.
Configuration Example
Figure 2.14
Figure 2.14 shows two server groups: group-id 1 1 and group-id 2 2. The configured VIP is serving the clients and load balancing traffic across the servers in their respective groups.
When a client first enters the system, the ServerIron ADX inspects the defined groups, predictors, and chooses a server within a group to create a sticky session. When a new connection comes in from the same client and group sticky is configured, the ServerIron ADX will find all the servers belonging to the group and will load balance among the servers.
Perform the following steps:
1.
Set up the real servers and group IDs. The rs1 and rs2 are in group 1. The devices Web1, Web2, and Web3 are in group 2:
server real rs1 20.20.1.40
port http
port http url "HEAD /"
port http group-id 1 1
 
server real rs2 20.20.1.41
port http
port http url "HEAD /"
port http group-id 1 1
 
server real Web1 20.20.1.42
port http
port http url "HEAD /"
port http group-id 2 2
 
server real Web2 20.20.1.43
port http
port http url "HEAD /"
port http group-id 2 2
 
server real Web3 20.20.1.44
port http
port http url "HEAD /"
port http group-id 2 2
2.
On the VIP, ensure the minimum required commands for Group Sticky are present: port <type> group-sticky and port <type> sticky. If stickiness is not configured, load balancing among the group will not work:
ServerIron(config-vs-v1)# server virtual-name-or-ip vip1 40.40.1.10
ServerIron(config-vs-vip1)# predictor round-robin
ServerIron(config-vs-vip1)# port http sticky !(or port http client-subnet-sticky)
ServerIron(config-vs-vip1)# port http group-sticky
ServerIron(config-vs-vip1)# bind http rs1 http rs2 http Web1 http Web2 http
ServerIron(config-vs-vip1)# bind http Web3 http
Once a group sticky session is created, all subsequent traffic will be load balanced across the group. The first incoming sticky session will go to a real server in group 1. All subsequent connections will also go to group 1.
If multiple clients are in the same subnet, then use the port http client-subnet-sticky command instead of port http sticky. The group-sticky behavior will apply itself to the client-subnet-sticky.
NOTE: When a real server’s port is part of two groups, the group-sticky feature takes the first listed group ID only, if the first connection is load balanced to this server.
3.
Identify what server the sticky session is pointed to. In the example below, the sticky session was originated from the client 30.30.1.1 to the VIP 40.40.1.10 using real server rs1. All the traffic to/from the client is being load balanced across the group (group-id 1 1) to which the real server rs1 belongs. Enter the show session all 0 command such as the following:
NOTE: In most cases, an "S-port" of value "0" indicates a sticky session. Regardless of the source port (S-port) of the connection, the sticky session will stick to Src-IP 30.30.1.1, Dst-IP 40.40.1.10, and D-port 80 in the example.
To clear a sticky session, use the clear server session command.
Enabling Group Sticky Failover
Normal Group Sticky behavior sends connections to a group of servers. When an entire server group is unreachable, Group Sticky Failover sends connections to a different reachable group. The sticky session is removed from the unreachable group; a connection request is forwarded to a new group, and a new sticky session is then formed with that group.
To enable group sticky failover, enter commands such as the following:
ServerIron(config)#server virtual-name-or-ip vip1 40.40.1.10
ServerIron(config-vs-vip1)# predictor round-robin
ServerIron(config-vs-vip1)# port http sticky
ServerIron(config-vs-vip1)# port http group-sticky
ServerIron(config-vs-vip1)# port http group-sticky-failover
ServerIron(config-vs-vip1)# bind http rs1 http rs2 http rs3 http rs4 http
ServerIron(config-vs-vip1)# bind http rs5 http
 
Use the required port http group-sticky-failover command in addition to port http sticky and port http group-sticky commands. The group-sticky-failover option alone will not work.
Syntax: port <type> group-sticky-failover
NOTE: The server sticky-age mechanism can also be applied to a sticky group, as shown:
ServerIron(config)#server sticky-age ?
DECIMAL Number

Server Load Balancing > Group Sticky: L4 SLB to Server Group

Table of Contents Previous Next Print
Copyright © 2009 Brocade Communications Systems, Inc.