Intelligent Management: application edition management administrative tasks
Use the Jacl or Jython scripting languages to manage application editions. We can also use the AdminApp object to manage applications with specific editions.
Use the following commands to activate, deactivate, perform a rollout on, validate, list, and verify an application edition. We can also clone an existing dynamic cluster to use a different node group, and we can cancel the validation mode on an application edition:
- activateEdition
- deactivateEdition
- rolloutEdition
- validateEdition
- listEditions
- isEditionExists
- cloneDynamicCluster
- cancelValidation
- getEditionState
We can perform the following operations using the AdminApp object in wsadmin to manage applications with editions:
- Install an application with an edition
- Update an application with an edition
- Edit an application with an edition
- Uninstall an application with an edition
activateEdition
Activate an edition.
Target object: None.
Parameters
- -appName
- Name of the application. (String)
- -edition
- Name of the application edition. (String)
Return value.
The command returns:
- true: success
- false: failure
Batch mode example usage
- Use Jacl:
$AdminTask activateEdition {-appName BeenThere -edition 1.0}
- Use Jython string:
AdminTask.activateEdition ('[-appName BeenThere -edition 1.0]')
- Use Jython list:
AdminTask.activateEdition (['-appName', 'BeenThere', '-edition', '1.0'])
Interactive mode example usage
- Use Jacl:
$AdminTask activateEdition {-interactive}
- Use Jython string:
AdminTask.activateEdition ('[-interactive]')
- Use Jython list:
AdminTask.activateEdition (['-interactive'])
deactivateEdition
Deactivate an edition.
Target object: None.
Parameters
- -appName
- Name of the application. (String)
- -edition
- Name of the application edition. (String)
Return value.
The command returns:
- true: success
- false: failure
Batch mode example usage
- Use Jacl:
$AdminTask deactivateEdition {-appName BeenThere -edition 1.0}
Using Jython string:
AdminTask.deactivateEdition ('[-appName BeenThere -edition 1.0]')
- Use Jython list:
AdminTask.deactivateEdition (['-appName', 'BeenThere', '-edition', '1.0'])
Interactive mode example usage
- Use Jacl:
$AdminTask deactivateEdition {-interactive}
Using Jython string:AdminTask.deactivateEdition ('[-interactive]')
- Use Jython list:
AdminTask.deactivateEdition (['-interactive'])
rolloutEdition
Roll out an edition and specify the group size.
Target object: None.
Parameters
- -appName
- Name of the application. (String)
- -edition
- Value of the custom property. (String)
- -params
- Specifies configuration values for the rollout. (String)
- rollout strategy
- grouped: Activates the specified application in place of the current edition of the same application across the cluster on which the application cluster deploys, N servers at a time, as specified by the groupSize keyword. The default group size is 1. During rollout, both editions of the application can serve requests. Always set the group number to be at least one less than the cluster size so that at least one cluster member serves the old edition while the rollout of the new edition starts.
- atomic: Activates the specified application in place of the current edition of the same application across the cluster on which the application cluster deploys, one half of the cluster at a time, such that only one edition of the application serves requests at any given time.
- reset strategy
- Specifies how to start an application edition instance during the rollout operation.
- hard: Stops or restarts the application server.
- soft: Stops or restarts the application instance, while leaving the application server running.
- group size for group rollout
- Number of servers to update when rolloutStrategy is grouped.
- integer
- drainage interval
- Number of seconds to wait before stopping an application edition instance during the rollout such that sessions can complete. The default is 30 seconds.
- integer
Specify the following properties for SIP application rollout:
- quiesce strategy
- Specifies if cluster members and servers quiesce after all active dialogs and sessions are complete, or if the cluster members and servers quiesce after a specified interval.
DEFAULT: Cluster members and servers quiesce when active dialogs and sessions complete.
INTERVAL: Cluster members and servers quiesce after a specified interval. We must also specify the quiesceInterval as an integer value in number of seconds.
Return value.
The command returns:
- true: success
- false: failure
Batch mode example usage
- Use Jacl:
$AdminTask rolloutEdition {-appName BeenThere -edition 1.0 -params "{quiesceStrategy INTERVAL}{quiesceInterval 30}"}
Using Jython string:AdminTask.rolloutEdition ('[-appName BeenThere -edition 1.0 -params "{quiesceStrategy INTERVAL}{quiesceInterval 30}"]')
The following example applies only to v6.1.0.5 running with WebSphere Application Server Network Deployment Version 7.0.0.x.
AdminTask.rolloutEdition ('[-appName BeenThere -edition 1.0 -params [[rolloutStrategy grouped][resetStrategy soft] [groupSize 1][drainageInterval 30]]]')
- Use Jython list:
AdminTask.rolloutEdition (['-appName', 'BeenThere', '-edition', '1.0', '-params', '{quiesceStrategy INTERVAL}{quiesceInterval 30}'])
The following example applies only to v6.1.0.5 running with WAS Network Deployment Version 7.0.0.x.
AdminTask.rolloutEdition (['-appName', 'BeenThere', '-edition', '1.0', '-params', '[[rolloutStrategy grouped][resetStrategy soft] [groupSize 1][drainageInterval 30]]'])
Interactive mode example usage
- Use Jacl:
$AdminTask rolloutEdition {-interactive}
Using Jython string:AdminTask.rolloutEdition ('[-interactive]')
- Use Jython list:
AdminTask.rolloutEdition (['-interactive'])
validateEdition
Validates an edition.
Target object: None.
Parameters
- -appName
- Name of the application. (String)
- -edition
- Name of the application edition. (String)
- -params
- Specifies settings for the cloned cluster created during validation.
For dynamic clusters, the size of the original cluster is used for the cloned cluster.
- Dynamic cluster:
- dynClusterMaxSize
- Maximum number of dynamic cluster instances that will start.
- dynClusterMinSize
- Minimum number of dynamic cluster instances that will start.
- Static cluster:
- staticClusterSize
- Size of the static cluster. The value of staticClusterSize cannot exceed the size of the static cluster being used cloned.
Return value.
The command returns:
- true: success
- false: failure
Batch mode example usage
- Use Jacl:
$AdminTask validateEdition {-appName BeenThere -edition 1.0 -params "{dynClusterMaxSize 2}{dynClusterMinSize 1}"}
Using Jython string:AdminTask.validateEdition ('[-appName BeenThere -edition 1.0 -params "{dynClusterMaxSize 2}{dynClusterMinSize 1}"]')
The following example applies only to v6.1.0.5 running with WAS Network Deployment Version 7.0.0.x.
AdminTask.validateEdition ('[-appName BeenThere -edition 1.0 -params [[dynClusterMaxSize 2][dynClusterMinSize 1]]]')
- Use Jython list:
AdminTask.validateEdition (['-appName', 'BeenThere', '-edition', '1.0', '-params', '{dynClusterMaxSize 2}{dynClusterMinSize 1}'])
The following example applies only to v6.1.0.5 running with WAS Network Deployment Version 7.0.0.x.
AdminTask.validateEdition (['-appName', 'BeenThere', '-edition', '1.0', '-params', '[[dynClusterMaxSize 2][dynClusterMinSize 1]]'])
Interactive mode example usage
- Use Jacl:
$AdminTask validateEdition {-interactive}
Using Jython string:AdminTask.validateEdition ('[-interactive]')
- Use Jython list:
AdminTask.validateEdition (['-interactive'])
listEditions
Provide a list of all the installed editions of the application.
Target object: None.
Parameters
- -appName
- Name of the application. (String)
Return value.
The command returns a string array of all the installed editions of the application.
The return value for base editions is displayed as "".
Batch mode example usage
- Use Jacl:
$AdminTask listEditions {-appName HelloWorld}
Using Jython string:AdminTask.listEditions ('[-appName HelloWorld]')
- Use Jython list:
AdminTask.listEditions (['-appName', 'HelloWorld'])
Interactive mode example usage
- Use Jacl:
$AdminTask listEditions {-interactive}
Using Jython string:AdminTask.listEditions ('[-interactive]')
- Use Jython list:
AdminTask.listEditions (['-interactive'])
isEditionExists
Verify that the specified edition exists for the particular application.
Target object: None.
Parameters
- -appName
- Name of the application. (String)
- -edition
- Name of the application edition. (String)
Return value.
The command returns:
- true: success
- false: failure
Batch mode example usage
- Use Jacl:
$AdminTask isEditionExists {-appName HelloWorld -edition 2.0}
Using Jython string:AdminTask.isEditionExists ('[-appName HelloWorld -edition 2.0]')
- Use Jython list:
AdminTask.isEditionExists (['-appName', 'HelloWorld', '-edition', '2.0'])
Interactive mode example usage
- Use Jacl:
$AdminTask isEditionExists {-interactive}
Using Jython string:AdminTask.isEditionExists ('[-interactive]')
- Use Jython list:
AdminTask.isEditionExists (['-interactive'])
cloneDynamicCluster
Clone a dynamic cluster to use a different node group.
Target object: None.
Parameters
- -clusterName
- Name of the original dynamic cluster. (String)
- -newClusterName
- Name of the cloned dynamic cluster. (String)
- -nodeGroupName
- Name of the node group in which the cloned dynamic cluster is located. Be default, the name is set to the current node group if this parameter is not specified. (String)
- -opMode
- Operational mode of the cloned dynamic cluster. By default, the mode of the original dynamic cluster is used if this parameter is not specified. Set the value to automatic, manual, or supervised. (String)
- -templateName
- Name of an existing template in the format of cell/node/server. The template is used to create the server instances of the cloned cluster.
Batch mode example usage
- Use Jacl:
$AdminTask cloneDynamicCluster {-clusterName SourceCluster -newClusterName newCluster -nodeGroupName CloneNodeGroup -opMode supervised}
$AdminTask cloneDynamicCluster {-clusterName SourceCluster -newClusterName newCluster -nodeGroupName CloneNodeGroup -opMode supervised -templateName xdCell/xdNode/SourceCluster_member1}
Using Jython string:AdminTask.cloneDynamicCluster ('[-clusterName SourceCluster -newClusterName newCluster -nodeGroupName CloneNodeGroup -opMode supervised]')
AdminTask.cloneDynamicCluster ('[-clusterName SourceCluster -newClusterName newCluster -nodeGroupName CloneNodeGroup -opMode supervised -templateName xdCell/xdNode/SourceCluster_member1]')
- Use Jython list:
AdminTask.cloneDynamicCluster (['-clusterName', 'SourceCluster', '-newClusterName', 'newCluster', '-nodeGroupName', 'CloneNodeGroup', '-opMode', 'supervised'])
AdminTask.cloneDynamicCluster (['-clusterName', 'SourceCluster', '-newClusterName', 'newCluster', '-nodeGroupName', 'CloneNodeGroup', '-opMode', 'supervised','-templateName', 'xdCell/xdNode/SourceCluster_member1'])
Interactive mode example usage
- Use Jacl:
$AdminTask cloneDynamicCluster {-interactive}
- Use Jython string:
AdminTask.cloneDynamicCluster ('[-interactive]')
- Use Jython list:
AdminTask.cloneDynamicCluster (['-interactive'])
cancelValidation
Cancel the validation mode on an application edition.
The getEditionState command returns the state of the application edition. The state of an existing edition can be either ACTIVE, INACTIVE or VALIDATE. For a non-existent application or edition the method returns null.
Target object: None.
Parameters
- -appName
- Name of the application. (String)
- -edition
- Name of the application edition. (String)
Return value.
The command returns:
- true: The cancellation of the validation succeeded.
- false: The cancelation of the validation failed.
Batch mode example usage
- Use Jacl:
$AdminTask cancelValidation {-appName BeenThere -edition 1.0}
- Use Jython string:
AdminTask.cancelValidation ('[-appName BeenThere -edition 1.0]')
- Use Jython list:
AdminTask.cancelValidation (['-appName', 'BeenThere', '-edition', '1.0'])
Interactive mode example usage
- Use Jacl:
$AdminTask cancelValidation {-interactive}
- Use Jython string:
AdminTask.cancelValidation ('[-interactive]')
- Use Jython list:
AdminTask.cancelValidation (['-interactive'])
getEditionState
Return the state of the application edition. The state of an existing edition can be either ACTIVE, INACTIVE or VALIDATE. For a non-existent application or edition, the method returns null.
Target object: None.
Parameters
- -appName
- Name of the application. (String)
- -edition
- Name of the application edition. (String)
Return value.
The command returns:
- ACTIVE
- INACTIVE
- VALIDATE
Batch mode example usage
- Use Jacl:
$AdminTask getEditionState {-appName BeenThere -edition 1.0}
- Use Jython string:
AdminTask.getEditionState ('[-appName BeenThere -edition 1.0]')
- Use Jython list:
AdminTask.getEditionState (['-appName', 'BeenThere', '-edition', '1.0'])
Interactive mode example usage
- Use Jacl:
$AdminTask getEditionState {-interactive}
- Use Jython string:
AdminTask.getEditionState ('[-interactive]')
- Use Jython list:
AdminTask.getEditionState (['-interactive'])
Install an application with an edition
Use the AdminApp install command to install an application with an edition. We must pass the -edition parameter to specify the edition identifier.
Use the following example in wsadmin to install the application BeenThere with edition 1.0.
- Use Jacl:
$AdminApp install /tmp/BeenThere1.0.ear {-appname BeenThere -edition 1.0 -nopreCompileJSPs -distributeApp -nouseMetaDataFromBinary -nodeployejb -createMBeansForResources -noreloadEnabled -nodeployws -validateinstall warn -noprocessEmbeddedConfig -filepermission .*\.dll=755#.*\.so=755#.*\.a=755#.*\.sl=755 -noallowDispatchRemoteInclude -noallowServiceRemoteInclude -MapModulesToServers {{"BeenThere WAR" BeenThere.war,WEB-INF/web.xml WebSphere:cell=TestCell,cluster=TestClusterB} {"BeenThere EJB" BeenThere.jar,META-INF/ejb-jar.xml WebSphere:cell=TestCell,cluster=TestClusterB}}}
- Use Jython:
AdminApp.install("/tmp/BeenThere1.0.ear", '[-appname BeenThere -edition 1.0 -nopreCompileJSPs -distributeApp -nouseMetaDataFromBinary -nodeployejb -createMBeansForResources -noreloadEnabled -nodeployws -validateinstall off -processEmbeddedConfig -filepermission .*\.dll=755#.*\.so=755#.*\.a=755#.*\.sl=755 -buildVersion Unknown -noallowDispatchRemoteInclude -noallowServiceRemoteInclude -MapModulesToServers [["BeenThere WAR" BeenThere.war,WEB-INF/web.xml WebSphere:cell=TestCell,cluster=TestClusterB] ["BeenThere EJB" BeenThere.jar,META-INF/ejb-jar.xml WebSphere:cell=TestCell,cluster=TestClusterB]]]')
Update an application with an edition
Use the AdminApp update command to update an application with an edition. Pass the full application name, which is the name of the application and the edition, to specify the edition.
Use the following example in wsadmin to update edition 1.0 of the application BeenThere with the BeenThereE1-update.ear file.
- Use Jacl:
$AdminApp update BeenThere-edition1.0 app {-operation update -contents /tmp/BeenThereE1-update.ear -nopreCompileJSPs -distributeApp -nouseMetaDataFromBinary -nodeployejb -createMBeansForResources -noreloadEnabled -nodeployws -validateinstall warn -noprocessEmbeddedConfig -filepermission .*\.dll=755#.*\.so=755#.*\.a=755#.*\.sl=755 -noallowDispatchRemoteInclude -noallowServiceRemoteInclude}
- Use Jython:
AdminApp.update('BeenThere-edition1.0', 'app', '[-operation update -contents /tmp/BeenThereE1-update.ear -nopreCompileJSPs -distributeApp -nouseMetaDataFromBinary -nodeployejb -createMBeansForResources -noreloadEnabled -nodeployws -validateinstall warn -noprocessEmbeddedConfig -filepermission .*\.dll=755#.*\.so=755#.*\.a=755#.*\.sl=755 -noallowDispatchRemoteInclude -noallowServiceRemoteInclude]')
Edit an application with an edition
Use the AdminApp edit command to edit an application with an edition. Pass the full application name, which is the name of the application and the edition, to specify the edition.
Use the following example in wsadmin to edit edition 1.0 of the application BeenThere by changing the context root of the Web module to /beenthere.
- Use Jacl:
$AdminApp edit BeenThere-edition1.0 {-CtxRootForWebMod {{"BeenThere WAR" BeenThere.war,WEB-INF/web.xml /beenthere}}}
- Use Jython:
AdminApp.edit('BeenThere-edition1.0', '[-CtxRootForWebMod [["BeenThere WAR" BeenThere.war,WEB-INF/web.xml /beenthere]]]')
Uninstall an application with an edition
Use the AdminApp uninstall command to uninstall an application with an edition. Pass the full application name, which is the name of the application and the edition, to specify the edition.
Use the following example in wsadmin to uninstall edition 1.0 of the application BeenThere.
- Use Jacl:
$AdminApp uninstall BeenThere-edition1.0
- Use Jython:
AdminApp.uninstall('BeenThere-edition1.0')
Related:
Application edition manager Deploy and manage application editions with Intelligent Management Perform a rollout on an edition Canceling an application validation Install an application edition Commands for the AdminApp object Dynamic clusters