About Me
Facebook
Facebook
Linked In
Linked In
Twitter
Twitter
YouTube
YouTube
Google +
Google +

October 02, 2015

IBM BPM: Topology, Security, Basic Administration, and Monitoring



Introduction
The maintenance of a clustered server environment for IBM® Business Process Manager (BPM) that interacts with many back-end and front-end systems and services can be challenging task. Administrators can follow the IBM Business Process Manager Operation overview series to guide their daily operation work. This article helps administrators with topology, security, and basic administrative and monitoring operations.
Overview
IT departments strive to maintain a healthy production environment for their systems. To help you maintain a clustered server environment for IBM BPM that interacts with many back-end and front-end systems and services, this series provides an operation overview. Part 1 introduces the following basic operations for IBM BPM:
ü  Topology best practices
ü  Security configuration
ü  Administering applications and processes
ü  Monitoring.
A typical IBM BPM project contains the following administrative user roles:
Ø  The IBM BPM administrator, who completes the following tasks:
·        Provides all system aspects for successfully installing, configuring, and running day-to-day maintenance of IBM BPM systems.
·        Provides all system and software aspects for successfully deploying process application snapshots from Process Center to both online and offline Process Servers.
·        Provides all IBM BPM process operations, for example, accessing the Process Admin Console and the Process Inspector.
·        Looks after the health of processes and services that are running in IBM BPM.
Ø  The database administrator, who provides information about database setup and configuration and the organization's corporate policies for governance and change management for databases. The database administrator is also responsible for maintaining the ongoing optimal operation of the database by monitoring database performance and operation parameters (for example, table spaces and indexing).
Ø  The WebSphere Application Server administrator, who provides information about the setup and configuration of the application server middleware layer and the organization’s corporate policies for governance and change management for the application server. In some organizations, the IBM BPM administrator and the WebSphere administrator are the same person.
Ø  The system administrator, who provides information about hardware and network setup and configuration and the organization's corporate policies for governance and change management for hardware and networks.
This IBM BPM operation overview focuses on the basic operations tasks of the IBM BPM administrator.
IBM BPM Administrator Tasks
The IBM BPM administrator, who wants to maintain a healthy environment for IBM BPM systems needs to know topology best practices and basic operations for configuring security, administering applications and processes, and monitoring the IBM BPM system.
Topology Best Practices
A deployment environment is an IBM BPM term that describes the collection of clusters that IBMBPM requires.
IBM BPM offers the following three patterns for deployment environments:
v IBM BPM Standard (Process Center or Process Server): All capabilities of IBM BPM Standard (Process Server, Performance Data Warehouse, and embedded Enterprise Content Management)
v IBM BPM Advanced (Process Center or Process Server): All IBM BPM Standard capabilities plus advanced capabilities (includes service component architecture and Business Process Choreographer)
v IBM BPM Advanced with only Process Server: Only IBM BPM Advanced capabilities(includes service component architecture and Business Process Choreographer)
IBM BPM Express is a stand-alone environment that includes the same capabilities as IBM BPM Standard for getting started with IBM BPM, but it is not intended for a highly available production environment.
Below Figure shows examples of the three deployment environments for a Process Server.
For each of the three types of deployment environments, you have the following two choices for a cluster pattern (as shown in Figure below):
ü  Single Cluster
ü  Application, Remote Messaging, Remote Support (recommended)
A three-cluster pattern (Application, Remote Messaging, and Remote Support) is recommended for production. IBM BPM no longer offers the two-cluster or four-cluster patterns.
If you use three clusters, you can isolate your code on the application cluster and keep it separate from the messaging infrastructure cluster and from the supporting applications cluster, where much of the IBM BPM system infrastructure and support code runs. This approach can ease your operations and troubleshooting tasks. You get better runtime isolation and independent scaling with three clusters.
Figure 3 shows an illustration of the three-cluster pattern, with an application cluster, a remote messaging infrastructure cluster, and a remote supporting applications cluster. Figure 4 shows an example of the three-cluster pattern with the IBM BPM Standard Process Server deployment environment, Figure 5 shows an example of the three-cluster pattern with the IBM BPM Advanced Process Server deployment environment, and Figure 6 shows an example of the three-cluster pattern with the IBM BPM Advanced-only Process Server deployment environment.
The three-cluster pattern
IBM BPM Standard three-cluster pattern
IBM BPM Advanced three-cluster pattern
IBM BPM Advanced-only Process Server three-cluster pattern
Security Maintenance
Security is an important aspect for ongoing operation of the system and must be maintained regularly.
As part of your initial setup, complete the following steps:
1.      Review all IBM BPM security roles and the corresponding aliases and make sure that they are assigned to the correct security roles.
2.      Review your user registry configuration as documented in the IBM Business Process Manager Security overview topic in IBM Knowledge Center. For IBM BPM, the preferred user registry type is federated repositories (also referred to as Virtual Member Manager or VMM). Only this registry type allows you to use all features of IBM BPM and benefit from performance optimizations.
The following list includes regular security maintenance tasks:
·        Monitor IBM Fix Central for recommended security fixes, and install all of them in a timely manner. Subscribe to security bulletins as described in the IBM Smarter Process Security blog in IBM developer Works communities.
·        Review your security setup regularly, especially after any network-related infrastructure changes.
·        Track the expiration date for all your Secure Sockets Layer (SSL) certificates and make sure to renew them ahead of time. If necessary, alert your organization users about changes in certificates so they are not surprised by access denial when the certificates expired. See the Certificates need to be converted to use SHA256withRSA in WebSphere Application Server support document and the Renewing a certificate in SSL topic in IBM Knowledge Center.
·        Track the expiration date for all your administrative user IDs and passwords. As a good practice, use a “two users for one purpose” approach with interleaving expiration date so both users do not get locked out at the same time. For example, IBM BPM uses single user to connect to DB2. If you need to update its password without downtime, create two users in DB2 with identical permissions. In the authentication aliases, configure one of them. Just before its password expires, go into DB2, reset the password for the other user (so the user account has a fresh expiration time). Then, in IBM BPM, change the user for the authentication aliases from the first to the second.
·        For the IBM BPM system, schedule regular sync ups for users and groups with your user directory. See the Synchronizing users and groups topic in IBM Knowledge Center.
Administering applications and processes
After you install or deploy your applications to the runtime environment, you need to manage them. Management includes administering the process applications or service modules themselves and administering all the processes and components that are associated with them.
The tools that you use depend on the type of administration task that you are doing. The following administrative tools are available:
·        Commands (wsadmin scripting): Many regular administration tasks as available as wsadmin commands.
·        Process Admin Console: This console can be used to change your environment variables, monitor Event Manager, monitor caches, and monitor your Business Process Modeling Notation (BPMN)-based processes.
·        Process Inspector: The Process Inspector is part of the Process Admin Console and can be used to inspect the status of BPMN process instances.
·        Process Center console: The main Process Center console is used to check the current snapshot and deployment status of your applications for online Process Servers.
·        Performance Admin Console: Similar to the Process Admin Console, this console can be used to change the operation of Performance Data Warehouses.
·        WebSphere Application Server administrative console: Use this console for configuration that is related to security roles, database connections, and other WebSphere Application Server configuration.
·        Business Process Choreographer Explorer (in IBM BPM Advanced): Similar to the Process Inspector, the Business Process Choreographer Explorer is used to inspect the status of Business Process Execution Language (BPEL) process instances.
·        Failed event manager (in IBM BPM Advanced): Use this console to find and manage failed events for your IBM BPM Advanced applications on all servers in a deployment environment.
For details about administering applications and processes, see the Administering applications and processes in the runtime environment topic in IBM Knowledge Center.
Monitoring
In IBM BPM, you need to regularly monitor the following items, but to learn more about tools to use when you monitor and troubleshoot, in later articles of this series.
·        Check the JVM logs (SystemOut.log, SystemErr.log) and the first-failure data that is captured regularly for error messages.
·        Check the JVM memory usage and maximum heap settings, and adjust as necessary when your payload changes.
·        Monitor disk space such as logs directories, temp space, and the database file system to make sure that there is enough free space.
·        Monitor the number of completed process and task instances in the system. By having an active purging policy so you do not keep completed instances for an extended period, you ensure that the total number of completed instances is as low as possible and is not growing over time.
·        Use Java Management Extensions (JMX) or the Process Admin Console > Process Monitor capability to monitor the set of processes instances that are running and for how long.
ü  Check for looping business process definition (BPD) instances in Process Monitor if the CPU load is unusually high.
ü  For JMX, you can use utilities like JConsole or other JMX-compliant monitor tools (such as IBM Tivoli Monitoring), or you can access the data through programmatic means.

ü  Review and set up the system to check for infinite loops in JavaScript.
ü  In IBM BPM V8.5.6, it is possible to set up an alert definition to query for the number of process instances or tasks.
·        Monitor and act on failed BPD instances or instances with stopped activities for BPEL. All these instances might need manual interaction so that they complete.
·        Check the Event Manager on-hold tasks to replay any held Event Manager tasks.
·        Check the Event Manager Monitor for the execution state of schedulers.
·        Monitor queue depths of all destinations in the system integration buses of the environment. Assign thresholds based on results of usual behavior that is seen during a performance test and ensure that notifications are sent or actions are taken if those thresholds get exceeded.
·        For IBM BPM Advanced: Monitor the number of failed events in the system. Ensure that failed events are processed regularly so that the number is always 0 or very close to 0.
·        For IBM BPM Advanced: Monitor the state of WebSphere MQ listeners, if applicable. Ensure that they are started.
·        For IBM BPM Advanced: Monitor for event sequencing locks, if applicable. Ensure that locks get released, if not done automatically.
·        For IBM BPM Advanced: Check the Store and Forward status (also available in the failed event manager) and initiate the Forward option if applicable.
Consider the following tips for monitoring:
·        Use JMX or the Process Admin Console > Process Monitor function to monitor the set of processes instances that are running and for how long.(enhanced functions are available in V7.5.1.2, V8.0.1.2 and V8.5.5.0).
·        Verify the status of your environment with the IBM BPM Health Center as described in the Verifying the status of your environment by using the Health Center topic on IBM Knowledge Center.
·       Use IBM Tivoli Composite Application Manager Products, which provide ways to monitor the IBM BPM environment both on the WebSphere Application Server and on the IBM BPM level.
Conclusion
In this part of IBM BPM operation overview series, you learned about the following basic operations that are necessary for an IBM BPM administrator: topology best practices, security configuration, administering applications and processes, and monitoring.
I will be sharing the next parts in the series to learn about maintenance and migration tasks and about advanced operations and monitoring tasks.
Download
File Name
Size
Download
IBM BPM: Topology, Security, Basic Administration, and Monitoring.pdf
690KB

0 comments :

Post a Comment

Designed By AMEER BASHA G