Upgrade BPM 8.5.7 to BPM 8.6.0 CF2018.03
How to upgrade an AdvancedOnly deployment environment from 8.5.7 to 8.6.0 CF2018.03
Author(s): Tamas Bures | Created: 13 August 2019 | Last modified: 08 September 2024
Tested on: -
Table of contents
Upgrade BPM 8.5.7 to BPM 8.6.0 CF2018.03↑
In this tutorial you will see how can you upgrade an existing IBM BPM 8.5.7 to 8.6.0 CF2018.03 version, including Java upgrade from Java 6 to 8 on an IBM supported Linux operating system.
In this guide::
- BPM installation path is
/opt/IBM/WebSphere/BPM
- BPM hostname:
bpm1.test
- Database (DB2) installed on different server, hostname is
bpmdb.test
- Deployment Manager
- Profile name:
BPMDmgr
- Node name:
BPMDmgrManagerNode
- SOAP port:
8879
- Profile name:
- Managed node
- Profile name:
BPMCustom01
- Node name:
BPMCustom01Node01
- Profile name:
- Cluster names:
- Application:
AppCluster
- Messaging:
MECluster
- Support:
SuppCluster
- Application:
- Deployment environment
- Name:
BPMDe1
- Administrator:
deadmin
- Administrator password:
password
- Type:
AdvancedOnly
(formerly Process Server)
- Name:
Switch existing BPM 8.5.7 to Java 7 from Java 6 (if it did not already)↑
IBM Knowledge Center: Switching the edition of Java used in IBM BPM
-
Stop all Java processes by stopping the servers, nodeagents and finally Dmgr.
-
Identify the Java 7 bundle name with the following command:
/opt/IBM/WebSphere/BPM/bin/managesdk.sh -listAvailable
Example output:
CWSDK1003I: Available SDKs: CWSDK1005I: SDK name: 1.7.1_64 CWSDK1005I: SDK name: 1.6_64 CWSDK1001I: Successfully performed the requested managesdk task.
-
Set the default Java for command line environment and all future profiles:
/opt/IBM/WebSphere/BPM/bin/managesdk.sh -setCommandDefault -sdkname 1.7.1_64 /opt/IBM/WebSphere/BPM/bin/managesdk.sh -setNewProfileDefault -sdkname 1.7.1_64
-
To switch Java SDK for existing profiles , shutdown the servers, nodeagents and deployment manager as well.
-
Change Java version for deployment manager:
/opt/IBM/WebSphere/BPM/bin/managesdk.sh \ -enableProfile \ -profileName BPMDmgr \ -sdk_name 1.7.1_64
-
Start the Deployment Manager:
/opt/IBM/WebSphere/BPM/profiles/BPMDmgr/bin/startManager.sh
-
Manually synchronize the managed nodes:
/opt/IBM/WebSphere/BPM/bin/syncNode.sh bpm1.test 8879 \ -profileName BPMNode01 \ -user deadmin \ -password password
-
Change Java version for the managed node:
/opt/IBM/WebSphere/BPM/bin/managesdk.sh \ -enableProfile \ -profileName BPMNode01 \ -sdk_name 1.7.1_64 \ -user deadmin \ -password password
-
Manually synchronize the managed nodes:
/opt/IBM/WebSphere/BPM/bin/syncNode.sh bpm1.test 8879 \ -profileName BPMNode01 \ -user deadmin \ -password password
-
Validate changes:
/opt/IBM/WebSphere/BPM/bin/managesdk.sh -listEnabledProfileAll
Example output:
CWSDK1004I: Profile BPMDmgr : CWSDK1006I: PROFILE_COMMAND_SDK = 1.7.1_64 CWSDK1008I: Node BPMDmgrManagerNode SDK name: 1.7.1_64 CWSDK1009I: Server dmgr SDK name: 1.7.1_64 CWSDK1004I: Profile BPMCustom01 : CWSDK1006I: PROFILE_COMMAND_SDK = 1.7.1_64 CWSDK1008I: Node BPMCustom01Node01 SDK name: 1.7.1_64 CWSDK1009I: Server AppCluster.server1 SDK name: 1.7.1_64 CWSDK1009I: Server MECluster.server1 SDK name: 1.7.1_64 CWSDK1009I: Server SuppCluster.server1 SDK name: 1.7.1_64 CWSDK1009I: Server nodeagent SDK name: 1.7.1_64 CWSDK1001I: Successfully performed the requested managesdk task.
-
Start the environment in the right order.
Upgrading DB2↑
-
Stop all Java processes by stopping the servers, nodeagents and finally Dmgr.
-
Backup all databases.
for db in `db2 list db directory | grep -i "Database alias" | cut -d"=" -f2-`; do \ db2 backup db $db to /opt/backup compress; \ done
-
Shut down DB2 instance(s) and the admin server (if any):
db2stop db2admin stop
-
Make sure environment variable
LANG
is set to supported locale (default isC
). If not, DB2 tools likedb2checkprereq
might fail.export | grep -i lang
Sample output:
declare -x LANG="en_US.UTF-8"
If something different is set, for example:
hu_hu.utf-8
, to be on the safe side, set it toC
:export LANG=C
-
Install the newer DB2 binary and do not create any instances.
-
Upgrade DB2 instance(s), but before check that
LD_LIBRARY_PATH
environment variable is not contains path to the old DB2 version. If it does, clear it, otherwise DB2 tools fail:export | grep LD_LIBRARY_PATH
If empty, go on, if not, clear it:
export LD_LIBRARY_PATH=
Upgrade db2 instance(s):
<NEW_DB2_INSTALL_PATH>/instance/db2iupgrade <istance name>
For example:
/opt/ibm/db2/V10.5/instance/db2iupgrade db2inst1
If you have multiple instances, repeat the command above.
-
Start the database instance(s) and admin server (if any):
db2start db2admin start
-
Upgrade the database(s) in instance(s) using the instance owner user:
for db in `db2 list db directory | grep -i "Database alias" | cut -d"=" -f2-`; do \ db2 upgrade db $db; \ done
-
Copy the JDBC drivers to the BPM to make sure BPM is using the right version of JDBC driver to this newly upgraded DB2. The JDBC JAR files can be found:
<NEW_DB2_INSTALL_PATH>/java/db2jcc*.jar
For example:
/opt/ibm/db2/V10.5/java/db2jcc*.jar
-
Start the BPM environment in the right order to validate all OK.
Upgrading BPM on primary node↑
-
Stop all Java processes by stopping the servers, nodeagents and finally Deployment Manager.
-
Create backup directories:
bpm1.test
mkdir -p /opt/backup
bpmdb.test
mkdir -p /opt/backup
-
Create offline backup from profiles and databases:
bpm1.test
for p in BPMDmgr BPMCustom01; do \ /opt/IBM/WebSphere/BPM/profiles/$p/bin/backupConfig.sh /opt/backup/$p_`date +"%Y_%m_%d"`.zip \ -logfile /opt/backup/$p_`date +"%Y_%m_%d"`.log ; done
bpmdb.test
for db in `db2 list db directory |grep -i "Database alias"|cut -d"=" -f2-`; do \ db2 backup db $db to /opt/backup compress; \ done
-
Install
WAS 8.5.5 FP15
andBPM 8.6 CF2018.03
on primary node using Installation Manager. -
Start the Deployment Manager. The start process will be longer than usual, because the product upgrades the Dmgr configuration, enables Java 8 and performaing maintenance tasks. So be patient.
/opt/IBM/WebSphere/BPM/profiles/BPMDmgr/bin/startManager.sh
-
Identify the Java 8 SDK bundle name with the following command:
/opt/IBM/WebSphere/BPM/bin/managesdk.sh -listAvailable
Example output:
CWSDK1003I: Available SDKs: CWSDK1005I: SDK name: 1.8_64_bundled CWSDK1005I: SDK name: 1.7.1_64 CWSDK1005I: SDK name: 1.6_64 CWSDK1001I: Successfully performed the requested managesdk task.
-
Set the default Java for command line environment and all future profiles:
/opt/IBM/WebSphere/BPM/bin/managesdk.sh -setCommandDefault -sdkname 1.8_64_bundled /opt/IBM/WebSphere/BPM/bin/managesdk.sh -setNewProfileDefault -sdkname 1.8_64_bundled
-
Verify, that Deployment Manager is running and is set to Java 8. Managed nodes should be still on older Java, that's normal.
/opt/IBM/WebSphere/BPM/bin/managesdk.sh -listEnabledProfileAll
Example output:
CWSDK1004I: Profile BPMDmgr : CWSDK1006I: PROFILE_COMMAND_SDK = 1.8_64_bundled CWSDK1008I: Node BPMDmgrManagerNode SDK name: 1.8_64_bundled CWSDK1009I: Server dmgr SDK name: 1.8_64_bundled CWSDK1004I: Profile BPMCustom01 : CWSDK1006I: PROFILE_COMMAND_SDK = 1.7_64 CWSDK1008I: Node BPMCustom01Node01 SDK name: 1.7_64 CWSDK1009I: Server AppCluster.server1 SDK name: 1.7_64 CWSDK1009I: Server MECluster.server1 SDK name: 1.7_64 CWSDK1009I: Server SuppCluster.server1 SDK name: 1.7_64 CWSDK1009I: Server nodeagent SDK name: 1.7_64 CWSDK1001I: Successfully performed the requested managesdk task.
-
Upgrade web server plugins using the WebSphere administration console.
-
Manually synchronize the managed node:
/opt/IBM/WebSphere/BPM/profiles/BPMCustom01/bin/syncNode.sh bpm1.test 8879 \ -user deadmin \ -password password
-
Enable Java 8 for the managed node:
/opt/IBM/WebSphere/BPM/bin/managesdk.sh \ -enableProfile \ -profileName BPMCustom01 \ -sdk_name 1.8_64_bundled \ -user deadmin \ -password password \ -enableServers
-
Manually synchronize again the managed node:
/opt/IBM/WebSphere/BPM/profiles/BPMCustom01/bin/syncNode.sh bpm1.test 8879 \ -user deadmin \ -password password
-
Validate changes:
/opt/IBM/WebSphere/BPM/bin/managesdk.sh -listEnabledProfileAll
Example output:
CWSDK1004I: Profile BPMDmgr : CWSDK1006I: PROFILE_COMMAND_SDK = 1.8_64_bundled CWSDK1008I: Node BPMDmgrManagerNode SDK name: 1.8_64_bundled CWSDK1009I: Server dmgr SDK name: 1.8_64_bundled CWSDK1004I: Profile BPMCustom01 : CWSDK1006I: PROFILE_COMMAND_SDK = 1.8_64_bundled CWSDK1008I: Node BPMCustom01Node01 SDK name: 1.8_64_bundled CWSDK1009I: Server AppCluster.server1 SDK name: 1.8_64_bundled CWSDK1009I: Server MECluster.server1 SDK name: 1.8_64_bundled CWSDK1009I: Server SuppCluster.server1 SDK name: 1.8_64_bundled CWSDK1009I: Server nodeagent SDK name: 1.8_64_bundled CWSDK1001I: Successfully performed the requested managesdk task.
-
Start the managed node:
/opt/IBM/WebSphere/BPM/profiles/BPMCustom01/bin/startNode.sh
-
Start the cluster members using the admin console on Deployment Manager.