Thursday, 20 September 2018

IBM Business Automation Workflow (BAW) and the Insufficient Memory

I'm just getting to grips with the (relatively) new package, IBM Business Automation Workflow (BAW), which includes new ( to me ) ECM capabilities such as Content Navigator.

Having installed the binaries: -

com.ibm.cic.agent_1.8.9001.20180709_1302
com.ibm.bpm.ADV.v85_8.6.10018001.20180628_0740
com.ibm.websphere.ND.v85_8.5.5013.20180112_1418
8.6.10018001-WS-BPM-IFJR59569_8.6.10018001.20180829_1311
8.6.10018001-WS-BPM-IFJR59939_8.6.10018001.20180905_0257
8.6.10018001-WS-BPMPCPD-IFPD59569_8.6.10018001.20180829_1322


and updated the Deployment Environment (DE) properties file, I started to create the DE: -

/opt/ibm/WebSphere/AppServer/bin/BPMConfig.sh -create -de ~/Advanced-PC-ThreeClusters-DB2.properties

This ran for a while ( whilst I was out at lunch ) and then borked with: _

...
The HTTP and HTTPS ports for server MEClusterMember1 on node Node1 are added to the virtual hosts list.
The HTTP and HTTPS ports for server AppClusterMember1 on node Node1 are added to the virtual hosts list.
/opt/ibm/WebSphere/AppServer/bin/BPMConfig.sh: line 87:  7581 Killed                  "$JAVA_HOME/bin/java" $EXTRA_X_ARG $WAS_DEBUG $CONSOLE_ENCODING $CUSTOMPWDPROPS -Declipse.bundle.setTCCL=false -Dws.ext.dirs="$WAS_EXT_DIRS" -Djava.endorsed.dirs="$WAS_ENDORSED_DIRS" -Dwas.install.root="$WAS_HOME" $PERF_JVM_OPTIONS ${JAASSOAP:+"$JAASSOAP"} $WAS_LOGGING $EXTRA_D_ARG $JVM_EXTRA_CMD_ARGS -classpath "$WAS_CLASSPATH":"$WAS_HOME"/lib/j2ee.jar:"$WAS_HOME"/BPM/Lombardi/lib/xbean.jar:"$WAS_HOME"/plugins/com.ibm.ws.prereq.rxa.jar:"$WAS_HOME"/ECMClient/updateUserInfo.jar:"$WAS_HOME"/properties com.ibm.wsspi.bootstrap.WSPreLauncher -nosplash -application com.ibm.ws.bootstrap.WSLauncher com.ibm.bpm.config.BPMConfig "$@"



with no other obvious symptoms.

Working on a hunch, I checked the free memory on my Red Hat Enterprise Linux (RHEL) VM :-

free 

              total        used        free      shared  buff/cache   available
Mem:        1865252      482608      972292        3200      410352     1194476
Swap:       2138108      726300     1411808


Using the assumption that 1.8 GB may well NOT be enough to build the DE etc. I quadrupled the RAM in the VM, and rebooted.

Now it looks better: -

 free 

              total        used        free      shared  buff/cache   available
Mem:        7992312      543908     6665304       59204      783100     7115580
Swap:       2138108           0     2138108


More importantly ….

...
The HTTP and HTTPS ports for server MEClusterMember1 on node Node1 are added to the virtual hosts list.
The HTTP and HTTPS ports for server AppClusterMember1 on node Node1 are added to the virtual hosts list.
The HTTP and HTTPS ports for server SupClusterMember1 on node Node1 are added to the virtual hosts list.
Configuring the REST services end points.
Saving configuration changes...
Synchronizing node Node1.
ADMU0116I: Tool information is being logged in file
           /opt/ibm/WebSphere/AppServer/profiles/AppSrv01/logs/syncNode.log
ADMU0128I: Starting tool with the AppSrv01 profile
ADMU0401I: Begin syncNode operation for node Node1 with Deployment Manager
           workflow.uk.ibm.com: 8879
ADMU0016I: Synchronizing configuration between node and cell.
ADMU0402I: The configuration for node Node1 has been synchronized with
           Deployment Manager workflow.uk.ibm.com: 8879
Stopping deployment manager profile Dmgr01.
ADMU0116I: Tool information is being logged in file
           /opt/ibm/WebSphere/AppServer/profiles/Dmgr01/logs/dmgr/stopServer.log
ADMU0128I: Starting tool with the Dmgr01 profile
ADMU3100I: Reading configuration for server: dmgr
ADMU3201I: Server stop request issued. Waiting for stop status.
ADMU4000I: Server dmgr stop completed.

The 'BPMConfig.sh -create -de /home/wasadmin/Advanced-PC-ThreeClusters-DB2.properties' command completed successfully.


Coincidence ?

Methinks not !

No comments:

Note to self - use kubectl to query images in a pod or deployment

In both cases, we use JSON ... For a deployment, we can do this: - kubectl get deployment foobar --namespace snafu --output jsonpath="{...