More Related Content Similar to Continuous availability deployment for IBM BPM (20) Continuous availability deployment for IBM BPM3. Action: update MONITOR-PS from v0 -> v1
BPM Cell
BPMDmgr
Node01
Administration
Node Agent Node02 Node Agent
Master Repository
AppClusterAppSrv.01
MONITOR-PS v0
BOA-AS v2 AppSrv.02
MONITOR-PS v0
BOA-AS v2
SupClusterSupSrv.01 SupSrv.02
MesClusterMesSrv.01 MesSrv.02
IHS(01,02)
plugin-cfg.xml
<ServerCluster Name=“AppCluster”>
<Server Name=“AppSrv.01” LoadBalanceWeight=“2”/>
<Server Name=“AppSrv.02” LoadBalanceWeight=“2”/>
</ServerCluster>
J2CMessageEndpoints 01
J2CMessageEndpoints 02
BPEScheduler 01
BPEScheduler 02
MONITOR-PS v0
BOA-AS v2
Incoming
traffic
BPEL
JMS/MQ
Table Event
HTTP
4. 1st step: Disable all nodes’ synchronization & restart all node’s
agents
BPM Cell
BPMDmgr
Node01
Administration
Node Agent Node02 Node Agent
Master Repository
AppClusterAppSrv.01
MONITOR-PS v0
BOA-AS v2 AppSrv.02
MONITOR-PS v0
BOA-AS v2
SupClusterSupSrv.01 SupSrv.02
MesClusterMesSrv.01 MesSrv.02
IHS(01,02)
plugin-cfg.xml
<ServerCluster Name=“AppCluster”>
<Server Name=“AppSrv.01” LoadBalanceWeight=“2”/>
<Server Name=“AppSrv.02” LoadBalanceWeight=“2”/>
</ServerCluster>
J2CMessageEndpoints 01
J2CMessageEndpoints 02
BPEScheduler 01
BPEScheduler 02
MONITOR-PS v0
BOA-AS v2
Incoming
traffic
BPEL
JMS/MQ
Table Event
HTTP
5. 2nd step: Update MONITOR-PS to v1 DMG
BPM Cell
BPMDmgr
Node01
Administration
Node Agent Node02 Node Agent
Master Repository
AppClusterAppSrv.01
MONITOR-PS v0
BOA-AS v2 AppSrv.02
MONITOR-PS v0
BOA-AS v2
SupClusterSupSrv.01 SupSrv.02
MesClusterMesSrv.01 MesSrv.02
Incoming
traffic
BPEL
JMS/MQ
Table Event
HTTP
IHS(01,02)
plugin-cfg.xml
<ServerCluster Name=“AppCluster”>
<Server Name=“AppSrv.01” LoadBalanceWeight=“2”/>
<Server Name=“AppSrv.02” LoadBalanceWeight=“2”/>
</ServerCluster>
J2CMessageEndpoints 01
J2CMessageEndpoints 02
BPEScheduler 01
BPEScheduler 02
MONITOR-PS v1
BOA-AS v2
6. 3rd step: Stop all incoming traffic to Node1
BPM Cell
BPMDmgr
Node01
Administration
Node Agent Node02 Node Agent
Master Repository
AppClusterAppSrv.01
MONITOR-PS v0
BOA-AS v2 AppSrv.02
MONITOR-PS v0
BOA-AS v2
SupClusterSupSrv.01 SupSrv.02
MesClusterMesSrv.01 MesSrv.02
IHS(01,02)
plugin-cfg.xml
<ServerCluster Name=“AppCluster”>
<Server Name=“AppSrv.01” LoadBalanceWeight=“0”/>
<Server Name=“AppSrv.02” LoadBalanceWeight=“2”/>
</ServerCluster>
J2CMessageEndpoints 01
J2CMessageEndpoints 02
BPEScheduler 01
BPEScheduler 02
MONITOR-PS v1
BOA-AS v2
Incoming
traffic
BPEL
JMS/MQ
Table Event
HTTP
7. 4th step: Stop (in order) all cluster members on Node1
BPM Cell
BPMDmgr
Node01
Administration
Node Agent Node02 Node Agent
Master Repository
AppClusterAppSrv.01
MONITOR-PS v0
BOA-AS v2 AppSrv.02
MONITOR-PS v0
BOA-AS v2
SupClusterSupSrv.01 SupSrv.02
MesClusterMesSrv.01 MesSrv.02
IHS(01,02)
plugin-cfg.xml
<ServerCluster Name=“AppCluster”>
<Server Name=“AppSrv.01” LoadBalanceWeight=“0”/>
<Server Name=“AppSrv.02” LoadBalanceWeight=“2”/>
</ServerCluster>
J2CMessageEndpoints 01
J2CMessageEndpoints 02
BPEScheduler 01
BPEScheduler 02
MONITOR-PS v1
BOA-AS v2
Incoming
traffic
BPEL
JMS/MQ
Table Event
HTTP
Stopping order:
1st: AppSrv01
2nd: SupSrv01
3rd: MesSrv01
SupSrv & MesSrv must be also stopped in order to avoid receiving
messages sent by asynchronous invocations
8. 5th step: Enable Node1 synchronization &restart its Node Agent &
synchronize
BPM Cell
BPMDmgr
Node01
Administration
Node Agent Node02 Node Agent
Master Repository
AppClusterAppSrv.01
MONITOR-PS v1
BOA-AS v2 AppSrv.02
MONITOR-PS v0
BOA-AS v2
SupClusterSupSrv.01 SupSrv.02
MesClusterMesSrv.01 MesSrv.02
IHS(01,02)
plugin-cfg.xml
<ServerCluster Name=“AppCluster”>
<Server Name=“AppSrv.01” LoadBalanceWeight=“0”/>
<Server Name=“AppSrv.02” LoadBalanceWeight=“2”/>
</ServerCluster>
J2CMessageEndpoints 01
J2CMessageEndpoints 02
BPEScheduler 01
BPEScheduler 02
MONITOR-PS v1
BOA-AS v2
Incoming
traffic
BPEL
JMS/MQ
Table Event
HTTP
9. 6th step: Start (in reverse order) all cluster members on Node1
BPM Cell
BPMDmgr
Node01
Administration
Node Agent Node02 Node Agent
Master Repository
AppClusterAppSrv.01
MONITOR-PS v1
BOA-AS v2
AppSrv.02
MONITOR-PS v0
BOA-AS v2
SupClusterSupSrv.01 SupSrv.02
MesClusterMesSrv.01 MesSrv.02
IHS(01,02)
plugin-cfg.xml
<ServerCluster Name=“AppCluster”>
<Server Name=“AppSrv.01” LoadBalanceWeight=“0”/>
<Server Name=“AppSrv.02” LoadBalanceWeight=“2”/>
</ServerCluster>
J2CMessageEndpoints 01
J2CMessageEndpoints 02
BPEScheduler 01
BPEScheduler 02
MONITOR-PS v1
BOA-AS v2
Incoming
traffic
BPEL
JMS/MQ
Table Event
HTTP
Starting order:
1st: MesSrv01
2nd: SupSrv01
3rd: AppSrv01
10. 7th step: Enable HTTP incoming traffic on Node1
Stop all incoming traffic to Node2
BPM Cell
BPMDmgr
Node01
Administration
Node Agent Node02 Node Agent
Master Repository
AppClusterAppSrv.01
MONITOR-PS v1
BOA-AS v2
AppSrv.02
MONITOR-PS v0
BOA-AS v2
SupClusterSupSrv.01 SupSrv.02
MesClusterMesSrv.01 MesSrv.02
IHS(01,02)
plugin-cfg.xml
<ServerCluster Name=“AppCluster”>
<Server Name=“AppSrv.01” LoadBalanceWeight=“2”/>
<Server Name=“AppSrv.02” LoadBalanceWeight=“0”/>
</ServerCluster>
J2CMessageEndpoints 01
J2CMessageEndpoints 02
BPEScheduler 01
BPEScheduler 02
MONITOR-PS v1
BOA-AS v2
Incoming
traffic
BPEL
JMS/MQ
Table Event
HTTP
11. 8th step: Stop (in order) all cluster members on Node2
BPM Cell
BPMDmgr
Node01
Administration
Node Agent Node02 Node Agent
Master Repository
AppClusterAppSrv.01
MONITOR-PS v1
BOA-AS v2
AppSrv.02
MONITOR-PS v0
BOA-AS v2
SupClusterSupSrv.01 SupSrv.02
MesClusterMesSrv.01 MesSrv.02
IHS(01,02)
plugin-cfg.xml
<ServerCluster Name=“AppCluster”>
<Server Name=“AppSrv.01” LoadBalanceWeight=“2”/>
<Server Name=“AppSrv.02” LoadBalanceWeight=“0”/>
</ServerCluster>
J2CMessageEndpoints 01
J2CMessageEndpoints 02
BPEScheduler 01
BPEScheduler 02
MONITOR-PS v1
BOA-AS v2
Incoming
traffic
BPEL
JMS/MQ
Table Event
HTTP
Stopping order:
1st: AppSrv02
2nd: SupSrv02
3rd: MesSrv02
12. 9th step: Enable Node1 synchronization and restart its Node Agent
BPM Cell
BPMDmgr
Node01
Administration
Node Agent Node02 Node Agent
Master Repository
AppClusterAppSrv.01
MONITOR-PS v1
BOA-AS v2
AppSrv.02
MONITOR-PS v1
BOA-AS v2
SupClusterSupSrv.01 SupSrv.02
MesClusterMesSrv.01 MesSrv.02
IHS(01,02)
plugin-cfg.xml
<ServerCluster Name=“AppCluster”>
<Server Name=“AppSrv.01” LoadBalanceWeight=“2”/>
<Server Name=“AppSrv.02” LoadBalanceWeight=“0”/>
</ServerCluster>
J2CMessageEndpoints 01
J2CMessageEndpoints 02
BPEScheduler 01
BPEScheduler 02
MONITOR-PS v1
BOA-AS v2
Incoming
traffic
BPEL
JMS/MQ
Table Event
HTTP
13. 10th step: Start (in reverse order) all cluster members on Node2
BPM Cell
BPMDmgr
Node01
Administration
Node Agent Node02 Node Agent
Master Repository
AppClusterAppSrv.01
MONITOR-PS v1
BOA-AS v2 AppSrv.02
MONITOR-PS v1
BOA-AS v2
SupClusterSupSrv.01 SupSrv.02
MesClusterMesSrv.01 MesSrv.02
IHS(01,02)
plugin-cfg.xml
<ServerCluster Name=“AppCluster”>
<Server Name=“AppSrv.01” LoadBalanceWeight=“2”/>
<Server Name=“AppSrv.02” LoadBalanceWeight=“0”/>
</ServerCluster>
J2CMessageEndpoints 01
J2CMessageEndpoints 02
BPEScheduler 01
BPEScheduler 02
MONITOR-PS v1
BOA-AS v2
Incoming
traffic
BPEL
JMS/MQ
Table Event
HTTP
Starting order:
1st: MesSrv02
2nd: SupSrv02
3rd: AppSrv02
14. 11th step: Enable HTTP incoming traffic on Node2
BPM Cell
BPMDmgr
Node01
Administration
Node Agent Node02 Node Agent
Master Repository
AppClusterAppSrv.01
MONITOR-PS v1
BOA-AS v2 AppSrv.02
MONITOR-PS v1
BOA-AS v2
SupClusterSupSrv.01 SupSrv.02
MesClusterMesSrv.01 MesSrv.02
IHS(01,02)
plugin-cfg.xml
<ServerCluster Name=“AppCluster”>
<Server Name=“AppSrv.01” LoadBalanceWeight=“2”/>
<Server Name=“AppSrv.02” LoadBalanceWeight=“2”/>
</ServerCluster>
J2CMessageEndpoints 01
J2CMessageEndpoints 02
BPEScheduler 01
BPEScheduler 02
MONITOR-PS v1
BOA-AS v2
Incoming
traffic
BPEL
JMS/MQ
Table Event
HTTP
15. 12th step: Resubmit any failed event that may have occurred during
the procedure
BPM Cell
BPMDmgr
Node01
Administration
Node Agent Node02 Node Agent
Master Repository
AppClusterAppSrv.01
MONITOR-PS v1
BOA-AS v2 AppSrv.02
MONITOR-PS v1
BOA-AS v2
SupClusterSupSrv.01 SupSrv.02
MesClusterMesSrv.01 MesSrv.02
IHS(01,02)
plugin-cfg.xml
<ServerCluster Name=“AppCluster”>
<Server Name=“AppSrv.01” LoadBalanceWeight=“2”/>
<Server Name=“AppSrv.02” LoadBalanceWeight=“2”/>
</ServerCluster>
J2CMessageEndpoints 01
J2CMessageEndpoints 02
BPEScheduler 01
BPEScheduler 02
MONITOR-PS v1
BOA-AS v2
Incoming
traffic
BPEL
JMS/MQ
Table Event
HTTP
17. Extra configuration
• IHS plug-in propagation
• Change permission for /usr/bpm85/Plugins/config/webserver1/plugin-cfg.xml: 664 / bpmadmin/ihsadmins