Modifying cluster member templates using wsadmin scripting

Use the AdminConfig object and the wsadmin tool to modify cluster member templates for application server, generic server, and proxy server clusters.

About this task

A copy of the first cluster member that you create is stored in the cluster scope as a template. You can create the first cluster member using any existing server as a template or a default server template. You can also create a first cluster member when you create the cluster by converting a server to a cluster. When you create a first cluster member, the template of the cluster member is stored under the scope of the cluster. Additional cluster members are created using the cluster member template stored in the cluster scope.

A cluster can be either homogeneous or heterogeneous in nature. A homogeneous cluster spans nodes that are of the same product version. A heterogeneous cluster spans nodes of different products versions. Since a cluster can contain members from nodes that run on different versions of the product, one template will be stored for each version of the application server node that is configured as a cluster member. The cluster member template will not exist for a given node version until you create a first member in a node of the same version. For example, if a cluster contains several Version 7 nodes and several Version 6.1 nodes, there will be one cluster member template for the Version 7 nodes and one for the Version 6.1 nodes, such as the following:
  • The $dmgr_profile_root/config/templates/clusters/clusterName/servers/V8.5MemberTemplate template will be used as the template for any member that is created in a Version 8.5 node.
  • The $dmgr_profile_root/config/templates/clusters/clusterName/servers/V8.0MemberTemplate template will be used as the template for any member that is created in a Version 8.0 node.
  • The $dmgr_profile_root/config/templates/clusters/clusterName/servers/V7MemberTemplate template will be used as the template for any member that is created in a Version 7 node.
  • The $app_server_root/config/clusters/clusterName/servers/V6.1MemberTemplate template will be used as the template for any member that is created in a Version 6.1 node.
  • The $app_server_root/config/clusters/clusterName/servers/V6MemberTemplate template will be used as the template for any member that is created in a Version 6 node.

Therefore, when you make a configuration change to cluster members, you must make the same configuration change to the template that is stored in the corresponding cluster scope in order to keep the template in sync with the existing members. Similarly, when you make a configuration change to the template, you should make the same configuration change to existing cluster members.

You can modify a cluster member template using the wsadmin tool similar to how you modify a server. You cannot modify a cluster member template using the administrative console. Perform the following steps to modify a cluster member template using the wsadmin tool:

Procedure

  1. Start the wsadmin scripting tool.
  2. Obtain the cluster template under the cluster scope. For example, the following example obtains the version 7 cluster member template for the cluster1 cluster:
    • Using Jacl:

      set c [$AdminConfig listTemplates Server cluster1/servers/V7]
      
      puts [$AdminConfig showall $c]
      

      Using Jython:

      c = AdminConfig.listTemplates('Server','cluster1/servers/V7')
      
      print AdminConfig.showall(c)
      
  3. Modify the attributes of the template. For example:
    • Using Jacl:

      $AdminConfig modify $c {{attrName attrVal}}
      

      Using Jython:

      AdminConfig.modify(c, [[attrName, attrVal]])
      
  4. Save the configuration changes.
  5. In a network deployment environment only, synchronize the node. See the topic about synchronizing nodes using the wsadmin scripting tool for more information.