The scenario in this series uses a simple monitoring application for a BPEL process as an example and covers the following:
Part 1 describes the steps to verify the cross-cell configuration between a clustered IBM Business Process Manager V7.5 Process Server (hereafter called Process Server) and a standalone IBM Business Monitor V7.5 server (hereafter called Monitor). For simplicity, the Process Server here is in a silver topology with two clusters: Application Target (AppTarget) and Messaging (ME) cluster. Each cluster contains one server member.
Part 2 focuses on installing monitor models and best practices for their deployment, including:
- Manually installing and uninstalling monitor models, and verifying their installation and uninstallation.
- Using Jython scripts to install and uninstall monitor models in a remote Common Event Infrastructure (CEI) configuration
- Performance tuning tips and deployment best practices for a cross-cell configuration
A single Process Server node, with two server profiles, is clustered in a silver topology, with the BPEL application deployed on the AppTarget cluster and the other supporting infrastructure, such as the CEI server, SI buses and messaging engines on the messaging cluster.
The BPEL application is deployed on the AppTarget cluster, which emits events to the CEI server using the CEI bus or a CEI event service, depending on whether the mode of communication between the Process Server and CEI is asynchronous or synchronous.
The Monitor server is a standalone server profile in a separate node that listens to the events coming from the Process Server node.
Enabling event flow between the clustered Process Server and the Monitor server
As discussed in the previous section, the Process Server and the Monitor server are in different cells; therefore, a cross-cell configuration needs to be established between the Process Server and Monitor Server to enable the flow of events from the Process Server side to the Monitor server.
The CEI server resides on the Process Server. BPEL process components send the Common Base Events to the CEI server, which then delivers them to the appropriate monitor models deployed on the Monitor server.
For cross-cell configuration of Process Server and Monitor server, please refer to Configuring queue-based event delivery in a multiple-cell environment in the
Once you have performed the cross-cell configuration, you need to make sure the communication channel for the events is configured properly between the two Process Server clusters, as well as between Process Server and the Monitor server. The following sections describe the various configurations you need to verify before deploying the monitor models.
Verifying cross-cell JARs on each Process Server profile
One of the issues faced during the cross-cell configuration is that the JARs for cross-cell configuration are not activated on all profiles of Process Server. This often results in a "JARs not resolved" error, which can be resolved using the steps described in the technote: Monitor model is not receiving events and instances are not viewable on the dashboard.
You need to make sure to run
the wps_root/Profiles/was_profile/bin directory of each cluster member or
server when the Process Server environment is shutdown. You need to make
sure to run
osgiCfgInit.sh from the
wps_root/Profiles/was_profile/bin directory of each cluster member or
server when the Process Server environment is shutdown. Please refer to
steps 1-3 in the "Resolving the problem" section of the technote Monitor model is not receiving events and instances are not viewable
on the dashboard.
Enabling event generation by the BPEL and human task components of the Process Server AppTarget cluster
Using the deployment manager administration console, enable CEI logging for both the Business Flow Manager, and the Human Task Manager on the AppTarget cluster, as shown Figures 1 and 2.
Figure 1. Enable CEI logging for the Business Flow Manager
Figure 2. Enable CEI logging for the Human Task Manager
You can verify these two settings from the deployment manager administration console by clicking Business Process Choreographer Containers => State Observers, as shown in Figures 3 and 4.
Figure 3. Business Process Choreographer containers
Figure 4. Enabling CEI logging through state observers
Verifying messaging engines and service integration bus (SIBus) links
Verify that five messaging engines are configured on the Process Server side and are up and running on the messaging cluster. Verify that there is a messaging engine for the CEI bus and one for the Monitor bus on the Process Server side. You can verify this by selecting your server cluster and then clicking the Messaging Engines option in the administrative console, as shown in Figure 5.
Figure 5. Verifying the messaging engines
The messaging engine is the runtime for a SIBus. For each messaging engine shown in Figure 5, you must be able to view five SIBuses on the administration console, as shown in Figure 6. You can optionally enable security on these SIBuses.
Figure 6. Verifying the SIBuses
Since the Monitor server is in a different cell, a SIBus link must be configured between Monitor bus on the Process Server side and the Monitor bus on the Monitor server side. Verify that this link exists and is in a running condition, as shown in Figure7.
Figure 7. Verifying the SIBus links
Note: If you can't find the SIBus link or if it's not running, it may mean that your cross-cell configuration was not done successfully.
Verifying CEI server and event service configuration
Now you need to verify whether the CEI server and the event service are properly configured on the Process Server side. The configuration shown in Figure 8 indicates that CEI server is enabled on the messaging cluster of the Process Server, which is in a silver topology in this example.
Figure 8. Verifying CEI server configuration
Figure 9 shows how to verify that the CEI event service is configured in the Process Server environment.
Note: The CEI service is the main component of any CEI server. Only after you've enabled the CEI server, will you see a CEI service here. Figure 8 where to enable the CEI server. Figures 9 and 10 show how you can modify the CEI server configuration setting after the CEI server is deployed.
Figure 9. Configuring the event service
Figure 10. Enabling the event service
If you want to view your events through the Common Base EventsBrowser, the events need to be persisted in a data store, as shown in Figure 11. Verify that Enable event data store is checked in your configuration. It's recommended that you uncheck this option in production scenarios where CEI is being used only to route events between Process Server and the Monitor Server.
Figure 11. Enabling event persistence
Also verify that an event emitter factory is configured, as shown in Figure 12. This will be used by the AppTarget cluster to push the events to the event service or the CEI bus depending upon the mode of communication (synchronous or asynchronous).
Figure 12. Configuring the event emitter factory
If Support event service transmission is checked, as shown in Figure 13, the mode of communication between the Process Server and CEI is synchronous, otherwise it is asynchronous.
Figure 13. Event emitter factory JNDI configuration
Verify that the AppTarget cluster is configured to use this event emitter factory to emit events. To do that, click the Clusters link in the left navigation pane in the administration console, then click AppTarget => Common Event Infrastructure => Common Event Infrastructure Destination to display the AppTarget properties, as shown in Figure 13.
Figure 14. AppTarget cluster properties
The emitter factory JNDI name must be prefixed with the
cell/clusters/cluster_name, which indicates
that the AppTarget will use this event emitter factory during runtime to
push the events to the CEI event service on the messaging cluster.
Finally, verify that the CEI service is enabled to start when the server is started at the container level for all cluster members, as shown in Figures 15 through 17.
Figure 15. Process Server cluster members
Figure 16. Enabling the CEI service on an AppTarget cluster member
Figure 17. Enabling the CEI service on a messaging cluster member
If all these settings are correct, events should flow smoothly between Process Server and the Business Monitor server in a cross-cell topology.
Part 2 of this series will walk through the process of installing monitor models and best practices for deploying the models.
- Achieving business agility with BPM and SOA together (PDF): This white paper describes the principles for the convergence of BPM and SOA from a business perspective.
- IBM Business Process Manager Information Center
- developerWorks BPM zone: Get the latest technical resources on IBM BPM solutions, including downloads, demos, articles, tutorials, events, webcasts, and more.
- IBM BPM Journal: Get the latest articles and columns on BPM solutions in this quarterly journal, also available in both Kindle and PDF versions.