Choosing a load balancing solution

Several load balancing solutions are available for a z/OS® environment. The solution that is best for your environment depends on several factors that are related to your environment and the workload being load balanced, including:

While a single load balancing solution might be desirable for all workloads in some environments, you can select multiple solutions based on your specific requirements. For example, you might select an external load balancing solution for a particular workload, while an internal load balancing solution might be enabled for another workload. Table 1 lists some of the key attributes of the various load balancing techniques and specific solutions that were discussed in this information. It can be used as a quick reference for comparing these solutions.

Table 1. Load balancing solution quick reference
Features or considerations Sysplex distributor External load balancers with SASP External load balancers
How is the solution configured and administered? Initial setup might require some interaction with the network (dynamic routing protocols, DNS updates for dynamic VIPAs, and so on). Ongoing administration (adding and removing target server applications and systems) typically confined within z/OS systems. Initial setup and configuration on load balancer and on z/OS. Ongoing administration might need to be performed on both the load balancer and the z/OS systems. Initial setup and configuration on load balancer, some configuration on z/OS might be required. Ongoing administration should be mostly confined to the load balancer, although z/OS configuration might be necessary, such as when adding new target systems.
When is the server instance decision made? Connection setup (in line Syn segment) Connection setup (in line Syn segment) Connection setup (in line Syn segment)
Support for TCP and UDP applications? TCP only Depends on the load balancer implementation; SASP supports both TCP and UDP Depends on the load balancer implementation
Extra network flows? No, for outbound traffic. Yes, for inbound traffic. Inbound traffic must traverse the sysplex distributor node. If sysplex distributor is configured as service manager for CISCO routers, the inbound traffic can flow directly to the target application. Depends on the load balancer implementation; can be avoided if the load balancer is implemented as part of a router or switch. Depends on the load balancer implementation; can be avoided if the load balancer is implemented as part of a router or switch.
Support for affinities between TCP connection requests based on data content? No, but support does exist for timer-based affinities Depends on implementation; some support affinities for HTTP and HTTPS requests by inspecting data content (correlating cookies, jsessionid) Depends on implementation; some support affinities for HTTP and HTTPS requests by inspecting data content (correlating cookies, jsessionid)
Network address translation? Not needed; client and server IP addresses are not modified Might be required by some implementations; client and server IP addresses might be translated Might be required by some implementations; client and server IP addresses might be translated
Support for IPv6? Yes Depends on the load balancer implementation; SASP supports both IPv4 and IPv6 Depends on the load balancer implementation
z/OS WLM recommendations? Yes, system level and server level Yes, system level and server level Depends on the load balancer implementation
z/OS network QoS recommendations? Yes, based on z/OS QoS policy No No
z/OS TCP/IP server health information? Yes Yes No
Detection of target application and target system state changes, active or inactive? Yes, application and system state changes are detected in near real-time fashion. Yes, the z/OS Load Balancing Advisor and Agents detect application and system state changes within a configurable time period, 60 seconds by default. How quickly external load balancers become aware of these changes depends on several factors:
  • If the load balancer is using a push model with SASP, the Load Balancing Advisor sends a notification of a state change as soon as it is detected.
  • If the load balancer is using a poll model with SASP, it depends on the load balancer's polling interval.
  • The load balancer might also have additional mechanisms for detecting application and system state changes, which might provide for faster detection of these changes.
Depends on the load balancer implementation.
High availability solution, load balancing continues even if the primary load balancing component becomes unavailable? Yes, one or more backups can be configured to enable dynamic takeover in cases where the TCP/IP stack, or system that is acting as the distributor, fails. For failures to the load balancer, it depends on the load balancer implementation. Some solutions provide for backup load balancers that can dynamically take over load balancing responsibilities in cases of failures. The z/OS Load Balancing Advisor and Agents can be configured for high availability to minimize the impact of an Advisor, Agent, or system failure. For failures to the load balancer, it depends on the load balancer implementation. Some solutions provide for backup load balancers that can dynamically take over load balancing responsibilities in cases of failures.
Caching issues? No, every new connection request is eligible for load balancing. No, every new connection request is eligible for load balancing. No, every new connection request is eligible for load balancing.