+

Search Tips   |   Advanced Search

 

Create dynamic clusters

 

When you create a dynamic cluster, weights are used to dynamically balance the workloads of the cluster members, based on performance information that is collected from the cluster members.

 

Before you begin

You must have configurator administrative privileges.

Verify that the application placement controller is enabled. The application placement controller is enabled by default.

Operational policies | Autonomic managers | Application placement controller

Decide if you are going to use vertical stacking, which can improve bottleneck conditions in deployed applications by enabling the placement controller to start more than one instance of the dynamic cluster on a node. With vertical stacking enabled, the autonomic managers limit the processor percentage that is used by each stacked instance. The general formula is...

100% / max-number-of-stacked-instances

For example, if you configure three stacked instances, the workload is throttled to prevent any single instance from using more than 33% of the processor capacity.

If you are creating a dynamic cluster of externally created middleware servers with assisted life-cycle management, create representations of these servers in WebSphere XD environment before you create a dynamic cluster. All of these servers must have the same applications installed and have the same version of middleware software installed.

 

About this task

A dynamic cluster is an application deployment target that can expand and contract depending on the workload in your environment. Dynamic clusters work with autonomic managers, including the application placement controller and the dynamic workload manager to maximize the use of your computing resources. Dynamic clusters are required for many of WebSphere XD autonomic functions, including high availability and service policies.

IBM recommends not exceeding a maximum of 50 application servers, node agents, and on demand routers per core group. A dynamic cluster cannot span multiple core groups. Consider this limit when you set the stacking number for your dynamic cluster.

This limitation does not apply to dynamic clusters of assisted life-cycle servers or complete life-cycle dynamic clusters of PHP or WebSphere Application Server Community Edition servers.

If you already have over 50 servers in your core group, you can use the coregroupsplit.py script to split your existing cell into multiple core groups.

 

Procedure

  1. Create the dynamic cluster. In the administrative console, click...

    Servers | Dynamic clusters | New

  2. Select the dynamic cluster server type.

    The dynamic cluster server type determines the type of servers that are members of this dynamic cluster. Depending on the type, you enter the name of the dynamic cluster on this panel or when you select the membership method.

  3. For some dynamic cluster types, you can select the membership method. The membership method defines how servers join the dynamic cluster as cluster instances.

    • Automatically define cluster members with rules

      You can automatically define cluster members with rules if you are using servers with complete life-cycle management. With this option, you create a membership policy that defines the nodes on which cluster instances can be placed.

    • Manually define cluster members

      If you are using servers with assisted life-cycle management, you can manually define cluster members. With this option, you select existing servers to add to the dynamic cluster. The servers that you select must be homogenous: that is, they must be of the same server type, middleware server version, and have the same applications installed.

      If you plan to manually add members to the dynamic cluster after the dynamic cluster is created, remember to install your applications on the server and create a representation of the server and applications within the WebSphere Virtual Enterprise administrative console before you add the member to the dynamic cluster.

  4. Define the dynamic cluster members.

    • If you selected Automatically define cluster members with rules in the previous step, use the subexpression builder to build a membership policy expression for your dynamic cluster. This expression is compared to all the nodes in the cell, selecting any nodes for which the subexpression is true.

    • If you selected Manually define cluster members, then the action you take depends on what kind of servers are in your dynamic cluster.

      • If your server type is application server, choose an existing static cluster to convert to a dynamic cluster.

      • If your server type is an externally created middleware server with assisted life-cycle management, select servers from the list, and add them to your dynamic cluster. Before you add assisted life-cycle servers, be sure that they are the same type, middleware server version, and have the same set of applications installed.

  5. Select a dynamic cluster template.

    You can either build servers that are based on a default template, or you can use an existing server from your environment as the template. You can select a dynamic cluster server template only for dynamic clusters that consist of servers with complete life-cycle management. You can choose an existing predefined template, or create your own server templates to use when you create your dynamic cluster.

  6. Specify dynamic cluster-specific properties.

    1. Define the minimum number of cluster instances. The default minimum number of instances is one instance and the maximum default is no limit on instances.

    2. Define the maximum number of cluster instances. The default value has no limit on the number of cluster instances.

    3. Determine whether to enable vertical stacking. When you configure vertical stacking, more than one dynamic cluster instance can start on the same node.

    4. Specify an isolation preference for the dynamic cluster.

  7. Confirm the dynamic cluster creation. Click...

    Finish | Save

    ...to save the changes to the master configuration.

  8. Select the mode of operation. In the administrative console, click...

    Servers | Dynamic clusters | dynamic_cluster

    Choose the operational mode and click Set mode.

    To use dynamic application placement, click Automatic or Supervised as the mode of operation.

    If you have nodes that run on z/OS® systems, use dynamic clusters in supervised or automatic mode. If you want to prevent WebSphere Virtual Enterprise from automatically starting a cluster member on a logical partition (LPAR) that is hosting a dynamic cluster when the LPAR processor is too busy, then define the cpuUtilizationThreshold custom property. In this scenario, WebSphere XD starts the cluster member only if transaction demand requires additional cluster members and the processor utilization on the LPAR is less than the cpuUtilizationThreshold value. See cpuUtilizationThreshold custom property for more information.

 

Results

When the dynamic clusters start, at least one instance of each dynamic cluster in your environment becomes available as soon as possible. Multiple instances on the same node can start concurrently if you have multiple processors on the same node. For example, if you have two processors on a node, two instances can start concurrently. The application placement controller continues to start instances evenly across the nodes for all the dynamic clusters until the minimum number of instances for each dynamic cluster is reached.

 

Example

Use the following placement scenarios as a guideline for your dynamic cluster settings:

 

What to do next

To change your server ports after the server has been created, change the ports on each server instance. You cannot change the ports through the dynamic cluster template. Because multiple servers to be on the same node by configuring vertical stacking, the ports must be unique for each server instance.



Subtopics

Dynamic clusters
Dynamic cluster isolation
Application lazy start
Static clusters versus dynamic clusters
Configure vertical stacking

 

Next topic

PlacementControllerProcs.jacl script

 

Next topic

HmmControllerProcs.jacl

 

Related concepts

Components of dynamic operations

 

Related tasks

Deploying applications with defined service levels
Creating and managing reports
Creating PHP servers and PHP dynamic clusters

 

Related reference

Administrative roles and privileges
coregroupsplit.py script

Related information

Application placement custom properties