Monday, 24 September 2018

Deploying IBM Business Automation Workflow 18.0.0.1

Another aide memoire for me, et al , as I know I'll need this again before too long ….

Environment

VMware Fusion ( macOS 10 )

50 GB disk ( allocated to / file-system )
8 GB RAM
4 cores

Hostname

workflow.uk.ibm.com

Disable/Stop Firewall

systemctl disable firewalld
systemctl stop firewalld


Disable SELinux

sed -i'' 's/SELINUX\=enforcing/SELINUX\=disabled/g' /etc/selinux/config

Set Ulimits etc.

vi /etc/security/limits.d/20-nproc.conf

# - nofile - max number of open files
wasadmin   soft    nofile  65536
wasadmin   hard    nofile  65536

# - nproc - max number of processes
wasadmin   soft    nproc   16384
wasadmin   hard    nproc   16384


vi /etc/security/limits.conf

* hard nofile 10240
* soft nofile 10240


vi /etc/sysctl.conf

fs.file-max = 524288

Create Groups and Users

groupadd db2iadm1
useradd -g db2iadm1 -d /home/db2inst1 db2inst1
echo "passw0rd" | passwd db2inst1 --stdin

groupadd db2users
useradd -g db2users -d /home/db2user1 db2user1
echo "passw0rd" | passwd db2user1 --stdin

groupadd db2fadm1
useradd -g db2fadm1 -d /home/db2fenc1 db2fenc1
echo "passw0rd" | passwd db2fenc1 --stdin

groupadd dasadm1
useradd -g dasadm1 -d /home/dasusr1 dasusr1
echo "passw0rd" | passwd dasusr1 --stdin

groupadd wasadmins
useradd -g wasadmins -d /home/wasadmin wasadmin
echo "passw0rd" | passwd wasadmin --stdin


Create File Systems

mkdir /opt/ibm
mkdir /opt/ibm/InstallationManager
mkdir /opt/ibm/IMShared
mkdir /opt/ibm/WebSphere
mkdir /opt/ibm/HTTPServer


chown -R wasadmin:wasadmins /opt/ibm/InstallationManager
chown -R wasadmin:wasadmins /opt/ibm/IMShared
chown -R wasadmin:wasadmins /opt/ibm/WebSphere
chown -R wasadmin:wasadmins /opt/ibm/HTTPServer


Mount VMware Shared Folder

vmhgfs-fuse -o allow_other .host:/Repo /mnt

Install DB2

/mnt/DB2/Product/server/db2setup -r /mnt/ResponseFiles/db2server111.rsp

Install Fixpack

/mnt/DB2/Fixpack/universal/installFixPack -n -b /opt/ibm/db2/V11.1/

Create DAS

/opt/ibm/db2/V11.1/instance/dascrt -u dasusr1

Create Instance

/opt/ibm/db2/V11.1/instance/db2icrt -a SERVER -u db2fenc1 db2inst1

Setup Services file ( note, need to edit to remove port 50000 )

sed -i'' 's/50000/60006/g' /etc/services

Set Instance to use TCP/IP, autostart etc.

su - db2inst1
db2 update database manager configuration using svcename db2c_db2inst1
db2set DB2COMM=tcpip
db2set DB2AUTOSTART=YES
db2start
exit


Set Instance to Auto Start post-reboot

/opt/ibm/db2/V11.1/bin/db2fm -i db2inst1 -f on

Validate Listener is running

netstat -aon | grep LISTEN | grep 600

...
tcp        0      0 0.0.0.0:60006           0.0.0.0:*               LISTEN      off (0.00/0/0)
...

Switch to wasadmin user

su - wasadmin

Check available IIM version

/mnt/IIM/tools/imcl version

...
Version: 1.8.9.1
...

Install IIM

/mnt/IIM/tools/imcl -input /mnt/ResponseFiles/installIIM1891.rsp -acceptLicense

...
Installed com.ibm.cic.agent_1.8.9001.20180709_1302 to the /opt/ibm/InstallationManager/eclipse directory.
...

See what's available to install

/opt/ibm/InstallationManager/eclipse/tools/imcl listAvailablePackages -repositories /mnt/BAW18001/Product/repository/repos_64bit/repository.config

com.ibm.bpm.ADV.v85_8.6.10018001.20180628_0740
com.ibm.websphere.ND.v85_8.5.5013.20180112_1418
com.ibm.ws.DB2EXP.linuxia64_11.1.0.20180627_0249


/opt/ibm/InstallationManager/eclipse/tools/imcl listAvailablePackages -repositories /mnt/BAW18001/Product/repository/repos_64bit/repository.config -features

com.ibm.bpm.ADV.v85_8.6.10018001.20180628_0740 : WorkflowEnterprise.Production,WorkflowEnterprise.NonProduction
com.ibm.websphere.ND.v85_8.5.5013.20180112_1418 : core.feature,ejbdeploy,thinclient,embeddablecontainer,samples,com.ibm.sdk.6_32bit,com.ibm.sdk.6_64bit
com.ibm.ws.DB2EXP.linuxia64_11.1.0.20180627_0249 : db2exp.linuxia64.feature

Install WAS, Java, BAW

/opt/ibm/InstallationManager/eclipse/tools/imcl -input /mnt/ResponseFiles/installBAW18001.rsp -acceptLicense

Installed com.ibm.bpm.ADV.v85_8.6.10018001.20180628_0740 to the /opt/ibm/WebSphere/AppServer directory.
Installed com.ibm.websphere.ND.v85_8.5.5013.20180112_1418 to the /opt/ibm/WebSphere/AppServer directory.


See Available BAW Fixes

/opt/ibm/InstallationManager/eclipse/tools/imcl listAvailableFixes com.ibm.bpm.ADV.v85_8.6.10018001.20180628_0740 -repositories /mnt/BAW18001/Fixpack/8.6.10018001-WS-BPM-IFJR59569.zip,/mnt/BAW18001/Fixpack/8.6.10018001-WS-BPM-IFJR59939.zip

8.6.10018001-WS-BPM-IFJR59569_8.6.10018001.20180829_1311
8.6.10018001-WS-BPMPCPD-IFPD59569_8.6.10018001.20180829_1322
8.6.10018001-WS-BPM-IFJR59939_8.6.10018001.20180905_0257


Install BAW Fixes

/opt/ibm/InstallationManager/eclipse/tools/imcl install 8.6.10018001-WS-BPM-IFJR59569_8.6.10018001.20180829_1311 -repositories /mnt/BAW18001/Fixpack/8.6.10018001-WS-BPM-IFJR59569.zip -installationDirectory /opt/ibm/WebSphere/AppServer/

Installed 8.6.10018001-WS-BPM-IFJR59569_8.6.10018001.20180829_1311 to the /opt/ibm/WebSphere/AppServer directory.

/opt/ibm/InstallationManager/eclipse/tools/imcl install 8.6.10018001-WS-BPMPCPD-IFPD59569_8.6.10018001.20180829_1322 -repositories /mnt/BAW18001/Fixpack/8.6.10018001-WS-BPM-IFJR59569.zip -installationDirectory /opt/ibm/WebSphere/AppServer/

Installed 8.6.10018001-WS-BPMPCPD-IFPD59569_8.6.10018001.20180829_1322 to the /opt/ibm/WebSphere/AppServer directory.

/opt/ibm/InstallationManager/eclipse/tools/imcl install 8.6.10018001-WS-BPM-IFJR59939_8.6.10018001.20180905_0257 -repositories /mnt/BAW18001/Fixpack/8.6.10018001-WS-BPM-IFJR59939.zip -installationDirectory /opt/ibm/WebSphere/AppServer/

Installed 8.6.10018001-WS-BPM-IFJR59939_8.6.10018001.20180905_0257 to the /opt/ibm/WebSphere/AppServer directory.

Validate Installation

/opt/ibm/InstallationManager/eclipse/tools/imcl listInstalledPackages

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


/opt/ibm/WebSphere/AppServer/bin/versionInfo.sh

...
Name                  IBM Business Automation Workflow Enterprise
Version               8.6.1.18001
ID                    BPMPC
Build Level           20180628-051953
Build Date            6/28/18
Package               com.ibm.bpm.ADV.v85_8.6.10018001.20180628_0740
Architecture          x86-64 (64 bit)
Installed Features    IBM Business Automation Workflow Enterprise Non-production License

Installed Product
--------------------------------------------------------------------------------
Name                  IBM WebSphere Application Server Network Deployment
Version               8.5.5.13
ID                    ND
Build Level           cf131801.05
Build Date            1/12/18
Package               com.ibm.websphere.ND.v85_8.5.5013.20180112_1418
Java SE Version       8
Architecture          x86-64 (64 bit)
Installed Features    IBM 64-bit WebSphere SDK for Java
                      WebSphere Application Server Full Profile
                      EJBDeploy tool for pre-EJB 3.0 modules
                      Embeddable EJB container
                      Stand-alone thin clients and resource adapters

...

Check Java SDK Version

/opt/ibm/WebSphere/AppServer/bin/managesdk.sh -listAvailable

CWSDK1003I: Available SDKs :
CWSDK1005I: SDK name: 1.8_64_bundled
CWSDK1001I: Successfully performed the requested managesdk task.


/opt/ibm/WebSphere/AppServer/java/bin/java -version

java version "1.8.0_151"
Java(TM) SE Runtime Environment (build 8.0.5.6 - pxa6480sr5fp6-20171124_02(SR5 FP6))
IBM J9 VM (build 2.9, JRE 1.8.0 Linux amd64-64 Compressed References 20171122_371101 (JIT enabled, AOT enabled)
OpenJ9   - 8e3c85d
OMR      - 713f08e
IBM      - c041ee8)
JCL - 20171113_01 based on Oracle jdk8u151-b12


Copy BPMConfig sample properties file

cp /opt/ibm/WebSphere/AppServer/BPM/samples/config/advanced/Advanced-PC-ThreeClusters-DB2.properties .

Update properties file

vi ~/Advanced-PC-ThreeClusters-DB2.properties

Create Deployment Environment

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

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

Switch to db2inst1 user

su - db2inst1

Create DB Artefacts

cd /opt/ibm/WebSphere/AppServer/profiles/Dmgr01/dbscripts/PCCell1/DB2/CMNDB
./createDatabase.sh
db2 connect to CMNDB
db2 -tvf createSchema_Advanced.sql
db2 terminate

cd /opt/ibm/WebSphere/AppServer/profiles/Dmgr01/dbscripts/PCCell1.De1/DB2/CMNDB
db2 connect to CMNDB
db2 -tvf createSchema_Advanced.sql
db2 -tvf createSchema_Messaging.sql
db2 terminate

cd /opt/ibm/WebSphere/AppServer/profiles/Dmgr01/dbscripts/PCCell1.De1/DB2/BPMDB
./createDatabase.sh
db2 connect to BPMDB
db2 -tvf createSchema_Advanced.sql
db2 -tdGO -vf createProcedure_Advanced.sql
db2 terminate

cd /opt/ibm/WebSphere/AppServer/profiles/Dmgr01/dbscripts/PCCell1.De1/DB2/PDWDB
./createDatabase.sh
db2 connect to PDWDB
db2 -tvf createSchema_Advanced.sql
db2 terminate

cd /opt/ibm/WebSphere/AppServer/profiles/Dmgr01/dbscripts/PCCell1.De1/DB2/CPEDB
./createDatabase_ECM.sh
db2 -tvf createTablespace_Advanced.sql
db2 connect to CPEDB
db2 -tvf createSchema_Advanced.sql
db2 terminate

Switch to wasadmin user

su - wasadmin

Start Deployment Manager

/opt/ibm/WebSphere/AppServer/profiles/Dmgr01/bin/startManager.sh

Start Node Agent

/opt/ibm/WebSphere/AppServer/profiles/AppSrv01/bin/startNode.sh

Fix JDBC Data Source ( cell-scoped )

- Needed to avoid: -

...
The test connection operation failed for data source BPM CellScopedDB data source on server dmgr at node Dmgr with the following exception: com.ibm.wsspi.runtime.variable.UndefinedVariableException: Undefined variable WAS_INSTALL_ROOT.
...

/opt/ibm/WebSphere/AppServer/profiles/Dmgr01/bin/wsadmin.sh -lang jython -username wasadmin -password passw0rd -f /mnt/Scripts/fixJDBC_DB2.jy

Test JDBC Data Sources

/opt/ibm/WebSphere/AppServer/profiles/Dmgr01/bin/wsadmin.sh -lang jython -username wasadmin -password passw0rd -f /mnt/Scripts/testDataSource.jy

Bootstrap DB

/opt/ibm/WebSphere/AppServer/profiles/Dmgr01/bin/bootstrapProcessServerData.sh -clusterName AppCluster

Start Deployment Environment

/opt/ibm/WebSphere/AppServer/bin/BPMConfig.sh -start -profile Dmgr01 -de De1

Monitor Logs

tail -f /opt/ibm/WebSphere/AppServer/profiles/AppSrv01/logs/MEClusterMember1/SystemOut.log /opt/ibm/WebSphere/AppServer/profiles/AppSrv01/logs/SupClusterMember1/SystemOut.log /opt/ibm/WebSphere/AppServer/profiles/AppSrv01/logs/AppClusterMember1/SystemOut.log

Functional Test

WAS Integrated Solutions Console

https://workflow.uk.ibm.com:9043/ibm/console







IBM Content Navigator - Case Administrator

https://workflow.uk.ibm.com:9444/navigator/?desktop=bawadmin


IBM Content Navigator - Case Builder

https://workflow.uk.ibm.com:9444/CaseBuilder

Content Platform Engine Administration Console

https://workflow.uk.ibm.com:9445/acce/login.jsp


Business Process Choreographer Explorer

https://workflow.uk.ibm.com:9445/bpc

Install and Configure IHS / Plugin

/opt/ibm/InstallationManager/eclipse/tools/imcl -input /mnt/ResponseFiles/installIHS85513.rsp -acceptLicense

Installed com.ibm.websphere.IHS.v85_8.5.5013.20180112_1418 to the /opt/ibm/HTTPServer directory.
Installed com.ibm.websphere.PLG.v85_8.5.5013.20180112_1418 to the /opt/ibm/WebSphere/Plugins directory.


Setup HTTPD.CONF

/mnt/Scripts/setupIHS.sh

Federate IHS into WAS Cell

/mnt/Scripts/federateIHS_BPM.sh passw0rd

Create IHS SSL Configuration

/mnt/Scripts/createIHS_SSL.sh

Update IHS Configuration

vi /opt/ibm/HTTPServer/BPM/conf/httpd.conf

Add/amend: -

LoadModule ibm_ssl_module modules/mod_ibm_ssl.so
Listen 8443
<VirtualHost *:8443>
SSLProtocolEnable TLSv12
SSLProtocolDisable SSLv2 SSLv3 TLSv10 TLSv11
SSLEnable
</VirtualHost>
KeyFile /opt/ibm/HTTPServer/BPM/ssl/keystore.kdb
SSLDisable


Append: -

LoadModule was_ap22_module "/opt/ibm/WebSphere/Plugins/bin/64bits/mod_was_ap22_http.so"
WebSpherePluginConfig /opt/ibm/WebSphere/Plugins/config/BPM_webserver1/plugin-cfg.xml


Start IHS

/opt/ibm/HTTPServer/bin/apachectl -k start -f /opt/ibm/HTTPServer/BPM/conf/httpd.conf

Complete WAS -> IHS configuration

/opt/ibm/WebSphere/AppServer/profiles/Dmgr01/bin/wsadmin.sh -lang jython -username wasadmin -password passw0rd -f /mnt/Scripts/completeIHS_config.jy

Configure BPM URL

/opt/ibm/WebSphere/AppServer/profiles/Dmgr01/bin/wsadmin.sh -lang jython -username wasadmin -password passw0rd -f /mnt/Scripts/configureBPMURL.jy

Configure REST endpoint URLs

/opt/ibm/WebSphere/AppServer/profiles/Dmgr01/bin/wsadmin.sh -lang jython -username wasadmin -password passw0rd -f /mnt/Scripts/updateREST.jy

Restart AppCluster

/opt/ibm/WebSphere/AppServer/profiles/Dmgr01/bin/wsadmin.sh -lang jython -username wasadmin -password passw0rd -f /mnt/Scripts/restartAppCluster.jy

Restart SupCluster

/opt/ibm/WebSphere/AppServer/profiles/Dmgr01/bin/wsadmin.sh -lang jython -username wasadmin -password passw0rd -f /mnt/Scripts/restartSupCluster.jy

Functional Test

WAS Integrated Solutions Console

https://workflow.uk.ibm.com:9043/ibm/console









IBM Content Navigator

- Need to log in as deAdmin

https://workflow.uk.ibm.com:8443/navigator/

IBM Content Navigator - Case Administrator

https://workflow.uk.ibm.com:8443/navigator/?desktop=bawadmin

IBM Content Navigator - Case Manager


IBM Content Navigator - Case Builder

https://workflow.uk.ibm.com:8443/CaseBuilder

Content Platform Engine Administration Console

https://workflow.uk.ibm.com:8443/acce/login.jsp


Business Process Choreographer Explorer

https://workflow.uk.ibm.com:8443/bpc

Finished :-) 


4 comments:

Unknown said...

Did you have to separately install Case Manager or was it part of DAW 18.0.0.1 packega?

Dave Hay said...

Morning Rahul

As far as I am aware, Case Manager was installed as part of the BAW installation. I certainly didn't install any additional components.

The BAW announcement would seem to confirm this: -

...
IBM Business Automation Workflow combines IBM Business Process Manager and IBM Case Manager in one workflow solution.
...

IBM Business Automation Workflow Version 18.0

Mahesh's Blog said...

Dave, I have installed the BAWv19.0.0.3 well from scratch with new brand installation, but i didn't see any ACCE as part of install in admin console. please send me the whole response files along with your scripts to chittibonu.mahesh@gmail.com
Content Platform Engine Administration Console:- https://maheshlabs:8443/acce/login.jsp

Dave Hay said...

Hi Mahesh

Thanks for your comment.

I've not worked with BAW etc. since I changed jobs at the beginning of 2019, moving into K8s development.

Therefore, I'm not best placed to support you here.

Please work with your local IBM team, and/or raise a support ticket - https://www.ibm.com/support/home/

Cheers, and good luck, Dave

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="{...