Load balancing is the ability for a cluster to distribute workload evenly (or based on some policy) to target servers comprising the cluster. Usually, this load balancing is calculated based on the perceived load on each of the target servers. Various techniques are available to perform IP load balancing for a System z® sysplex. These techniques typically fall into the following categories:
These solutions typically rely on a component executing within the z/OS® sysplex to perform the load balancing with very few dependencies on the external network. Because they are executing within the sysplex environment, these solutions typically have access to information that can be used to optimize load balancing, such as system capacity and current load information. An example of this technique is the sysplex distributor.
These solutions are typically comprised of an external load balancer that relies on components inside the z/OS sysplex for advice on how workload should be distributed. As a result, these solutions usually provide for load balancing that is optimized for a z/OS sysplex environment. Examples of these solutions include the IBM® Network Dispatcher and any external load balancing solution that supports the Server/Application State Protocol (SASP) provided by the z/OS Load Balancing Advisor (for example, the CISCO Content Switching Module).
These solutions are usually comprised of load balancing components that execute outside of the z/OS sysplex, typically on one or more hosts or routers in the network, with little or no specific awareness of the z/OS sysplex environment. Several vendors provide such load balancing solutions.
This information describes and compares these three load balancing techniques and selected associated solutions. Each solution identifies the target System z servers that can receive client connections based on some specification.
By providing load balancing, clustering techniques must also provide for other system requirements in addition to the dispatching of connections. These include the ability to advertise some single systemwide image or identity so that clients can uniquely and easily identify the service. Additionally, clustering techniques should also provide for horizontal growth of the system and ease of management.