Configure Cluster Members Topology

Vertical and Horizontal Scaling

In order to specify a number of cluster members on each node, set the following values:

#---------------------------------------------------
# Install the cluster members
#---------------------------------------------------

clusterName          = serverName
createClusterMember  = "true"
clusterCount         = 3
clusterIncrementer   = 3
removeOrigAppServer  = "true"

This will create 3 cluster members on each node in the cell, subject to the specified nodes set in the following section.

removeOrigAppServer removes the original application server on which the cluster was based.

createClusterMember must be set to true, otherwise just a single application server is created in the cluster on the primary node specified with serverNode.

If you want to change the name that is appended to every cluster member, you can set the next value in the websphere_profile_defaults.py file:

memberNameAttribute = "_clone"

So that the name of the n cluster member would be YourClusterMember+memberNameAttribute+n (Eg: YourClusterMember_clone7).

Specified Cluster Nodes

In your jython file, add the following in a clustered environment where your cluster members should only span some of the nodes in the cell:

#---------------------------------------------------
# Install the cluster members, and application only
# on specified nodes in the cell.
#---------------------------------------------------

useSpecifiedClusterNodes = "true"
specifiedNodes           = ["p13104dtp029", "p13105dtp030"]

This entry specifies that in the current cell, only nodeagents p13104dtp029 and p13105dtp030 will be deployed to. If the clusterCount is 2, then two cluster members are created on each of these nodes.

Create Cluster Members in a specified order

You may have 4 nodes in your production environment, two nodes (Eg: p21807prg005, p22207prg037) in Production 1 Data Center and two nodes (Eg: p21907prg006, p22307prg038) in Production 2 Data Center.

You want the clones to be created in the order specified in the py file.

#---------------------------------------------------
# Install the cluster members, and application only
# on specified nodes in the cell.
#---------------------------------------------------

useSpecifiedClusterNodes = "true"
specifiedNodes           = ["p21807prg005", "p22207prg037", "p21907prg006", "p22307prg038"]

So that for example

YourGreatServer_clone1 in p21807prg005
YourGreatServer_clone2 in p22207prg037
YourGreatServer_clone3 in p21907prg006
YourGreatServer_clone4 in p22307prg038

and so on ..

But you see that after deployment the clones created in different order than your expectation.

Eg:

YourGreatServer_clone1 in p21807prg005
YourGreatServer_clone2 in p21907prg006
YourGreatServer_clone3 in p22207prg037
YourGreatServer_clone4 in p22307prg038

Add a variable as shown below and you get the clones created precisely as you specified in the 'specifiedNodes' list.

#---------------------------------------------------
# Install the cluster members, and application only
# on specified nodes in the cell.
#---------------------------------------------------

useSpecifiedClusterNodes    = "true"
specifiedNodes              = ["p21807prg005", "p22207prg037", "p21907prg006", "p22307prg038"]
clonesInSpecifiedOrder      = "true"

Map Cluster Members to certain Nodes

First of all, make sure you've set up the Specified Cluster Nodes section.

Then, add the next structure of variables:

useMappedNodes     =    "true"
wasNode1_mapping   =    ["abc1","abc2","abc3"]
...
wasNodeN_mapping   =    ["cba1","cba2","cba3"]
specifiedNodes     =    ["node1","node2",...,"nodeN"]

Where useMappedNodes enables this mode of Cluster creation.

And remember you need at least the same number of wasNodeX_mapping variables as Nodes declared in the specifiedNodes variable. Less will result in an exception, and more will only go until the total number of Nodes specified.