Configure vertical stacking
We can configure vertical stacking to enable the application placement controller to start more than one instance of the dynamic cluster to improve bottleneck conditions within an application.
- Vertical stacking is supported on the z/OS operating system, but the WebSphere Application Server for z/OS multiple servant feature is the preferred alternative. Consider using vertical stacking for application servers on the z/OS operating systems only for application servers that host applications that are constrained to run in a single servant application server.
- To use vertical stacking, the nodes in our dynamic cluster must be at the same product version as the deployment manager, or at a later version. Nodes that are at an earlier release than the deployment manager cannot start multiple server instances on the same node.
- Vertical stacking can occur only on nodes that have complete life cycle management. We cannot configure vertical stacking for dynamic clusters that have manually defined cluster members.
Deprecated feature: Assisted and Complete Lifecycle servers have been deprecated in WAS v9.0. Migrate WebSphere Liberty servers to a Liberty Collective configuration. There is no recommended migration action for other server types.depfeat
Use vertical stacking to improve bottleneck conditions in the application. With vertical stacking, multiple server instances can start on a node. By configuring multiple server instances, we can use all the power that is available on the nodes when a large workload exists for the application.
Tasks
- Determine whether the application has an internal bottleneck by profiling the application. The application placement controller assumes that the only resource bottleneck an application might have is either in the processor or in memory. Otherwise, the application might have an internal bottleneck.
- Run an instance of the application on each node.
- Increase the load for the application.
- Analyze the runtime reports, the throughput curves and processor utilization charts for the nodes running the application. Click Runtime operation > Reports.
If the throughput curve saturates while increasing the load, but the processor utilization remains well under 100%, the application might have an internal bottleneck. Configure vertical stacking to improve these bottleneck conditions. If the server instances are able to reach processor utilization near 100%, do not enable vertical stacking.
- Determine the appropriate stacking number.
The stacking number is the number of application servers for a cluster needed to use all the power of a node. For more information about determining a stacking number, read about determining the stacking number for a dynamic cluster.
- Enable vertical stacking and the stacking number.
If our dynamic cluster is deployed to a node group that has homogeneous nodes, we can configure the stacking number one time in the administrative console. If our dynamic cluster is deployed to a node group that has heterogeneous nodes, configure the stacking number by specifying custom properties.
- See: Configure a dynamic cluster with homogeneous nodes to support vertical stacking
- See: Configure a dynamic cluster with heterogeneous nodes to support vertical stacking
When a large workload exists, the application placement controller can fully use the power of the nodes by starting multiple cluster instances on each node.
The general formula to determine the percentage of the processor used by each instance on a node is 100%/maximum_number_of_stacked_instances. For example, if three instances are stacked, then workload is throttled to prevent any one of these instances from using more than 33% of the processor.
What to do next
Tune and monitor the application placement configuration.
Subtopics
- Determining the stacking number for a dynamic cluster
- Configure a dynamic cluster with homogeneous nodes to support vertical stacking
- Configure a dynamic cluster with heterogeneous nodes to support vertical stacking
Related:
Dynamic clusters Monitor and tuning the application placement controller Create dynamic clusters Deploy enterprise applications Intelligent Management: static clusters versus dynamic clusters Intelligent Management: application placement custom properties