Monitoring Patterns in BMC Middleware Management Eric Olson Principal Consultant BMC Middleware Management Copyright 10/12/2010 BMC Software, Inc 1
Objectives At the end of this presentation, you should be able to: - Identify the Role of Monitoring in a Composite Application Environment - Describe the Architecture of the BMM Solutions - Identify Monitoring Patterns corresponding to Application Patterns - Describe How Monitoring Patterns are Implemented in BMM Copyright 10/12/2010 BMC Software, Inc 2
The Big Picture User Startup OrderEntry OrderApproval OrderShipping OrderBilling Orchestration IBM Process Server AquaLogic BPM MS BizTalk Mediation Message Broker WESB ALSB WebApp (WAS) SAP Siebel Shipping App EDI Services Billing App CICS Transport JMS/XMS/MQ HTTP/S Copyright 10/12/2010 BMC Software, Inc 3
Management Functions Problem Management - Tell me something is wrong and where Operations Management - Let me look at the status of components Performance Management - How well is my application processing messages over time Configuration Management - Let me control the state of my environment from a single console Transaction Management - How is a transaction moving through the process Copyright 10/12/2010 BMC Software, Inc 4
BMC Middleware Management Solutions BMM Performance and Availability Functionality: Problem, Operations, and Performance Management Business Value: Alerts identify infrastructure failures specific to a particular component reducing time to resolution by up to 85% Provides secure, application-centric views into the environment easing troubleshooting and centralizing analysis Provides objective reports on the performance of each component allowing you to identify bottlenecks and plan capacity requirements Q PASA! BMM Administration Functionality: Web-based Configuration Management for WebSphere MQ and TIBCO EMS Middleware Business Value: Provides Web-based access allows central management of all systems from any point increasing administrator productivity Secure, user/group based access allows developers/testers to see and control their objects and no others, reducing dependence on administrators Audit Trail of all configuration changes eases troubleshooting and aids regulatory compliance AppWatch AppWise Functionality: Transaction level extension of Problem, Operations, and Performance Management Business Value: Q NAMI! Identification of problems related to specific transactions improves granularity of problem detection Extraction of payload data from transactions provides better diagnostic information for problem repair Secure self-service access by users to status of individual transactions improves productivity Decompose the latency of specific transactions to clearly identify bottlenecks. Transactions can be categorized by payload. Extraction of payload data adds business intelligence BMM Transaction Analytics Functionality: Insight into WebSphere MQ transaction performance trends and transaction delivery disputes Business Value: SLA Reporting Across MQ Audit of MQ Messages StatWatch Copyright 10/12/2010 BMC Software, Inc 6
BMM Architecture BMM Database DB2 Oracle SQL Server HISTORY SERVICE WEB APP SERVICE Has History Service Subscribed? Receives Object info Sends info subscribed to Who has access? TOPIC SERVICE Client subscribes to information needed for views Has Event Service Subscribed? SECURITY SERVICE YES Topic Service works as a broker EVENT SERVICE BMM Agents Agent Extensions HOST 1 HOST 2.... HOST n Agents publish information related to changes WAS WMB MQ Copyright 10/12/2010 BMC Software, Inc 8
Infrastructure Building Blocks Physical Views Modern Applications are Composites - Modular components in multiple runtimes (WAS, CICS,.NET, ) - Different Systems (UNIX, Windows, z/os, iseries, ) - Connected by middleware (MQ, EMS, WMB, ALSB, IIS, WAS, WLS, ) - Assembled into applications BMM Monitoring solution follows the same pattern - Monitor individual components (BMM Agents & Extensions) - Abstract the data (pub/sub architecture) - Provide metrics organized by each component type (BMM Management Console) - Select key metrics to achieve overview building blocks (Physical View Tabs) - Assemble building blocks as with application (Logical Views) Copyright 10/12/2010 BMC Software, Inc 10
BMM Physical Topic Hierarchy Copyright 10/12/2010 BMC Software, Inc 11
Local Queue Physical View Copyright 10/12/2010 BMC Software, Inc 12
Physical View Tabs Copyright 10/12/2010 BMC Software, Inc 13
Physical View Examples WebSphere MQ - Queue Manager - Local Queue - Topic - Channel WebSphere Message Broker - Broker - Execution Group - Message Flow - Node WebSphere Application Server - Server - Servlet - EJB - EJB Method Copyright 10/12/2010 BMC Software, Inc 14
Logical Views and Alternative Relationships Physical Hierarchy is only one possible set of relationships - By Application - By Technology Type - By Job Role/Task Topics can be sorted any way that you like - Logical Types & Hierarchy Create Composite Objects - Logical Views Set Display for Composite Objects - User/Group Navigation Tabs Alternative Hierarchy of Physical & Logical objects Available by User or Group Membership Copyright 10/12/2010 BMC Software, Inc 15
MQ Administrator Views Copyright 10/12/2010 BMC Software, Inc 17
MQ Administrator Views Copyright 10/12/2010 BMC Software, Inc 18
MQ Administrator Views Copyright 10/12/2010 BMC Software, Inc 19
MQ Developer Views Copyright 10/12/2010 BMC Software, Inc 21
Message Broker Administrator Views Broker Summary Flow Summary Copyright 10/12/2010 BMC Software, Inc 22
Message Broker Developer Views Copyright 10/12/2010 BMC Software, Inc 23
Message Broker Developer Views Copyright 10/12/2010 BMC Software, Inc 24
Application Server Administrator Views Copyright 10/12/2010 BMC Software, Inc 26
Application Server Administrator Views Copyright 10/12/2010 BMC Software, Inc 27
Application Server Administrator Views Copyright 10/12/2010 BMC Software, Inc 28
WAS Developer Views Copyright 10/12/2010 BMC Software, Inc 30
J MQ_ARR_MQ Application Overview Copyright 10/12/2010 BMC Software, Inc 31
MQ_ARR_MQ Application Overview (cont.) Copyright 10/12/2010 BMC Software, Inc 32
J Application Problems Copyright 10/12/2010 BMC Software, Inc 33
J Application Recovery Copyright 10/12/2010 BMC Software, Inc 34
J Application Performance Management Copyright 10/12/2010 BMC Software, Inc 35
Application Performance Management Copyright 10/12/2010 BMC Software, Inc 36
J Application Performance Reports Copyright 10/12/2010 BMC Software, Inc 37
Why Patterns? SOA Allows Services to Act as Building Blocks But what do you want to build? - Assembly of Service Components is a Slow Task in Itself - Reinventing the Wheel Slight Variations Limit Reuse Potential for Errors Requires Increased Testing and Iteration Does Not Take Advantage of Lessons Learned Functional Requirements Dictate That Most Integrations Will Be Similar - Protocol Requirements Transactional Behavior Synchronicity Distribution Patterns - Industry Verticals Regulations Best Practices and Consistency Copyright 10/12/2010 BMC Software, Inc 38
Application Lifecycle Monitoring is part of the application lifecycle Model Integrate Manage Analyze What Actions? What Order? Under What Conditions? Bind Existing Services Develop New Services Mediate Existing Programs Detect Problems Track Performance Track Transactions View State Identify Bottlenecks Plan Capacity Simulate Changes Copyright 10/12/2010 BMC Software, Inc 39
Business Service Management in Composite Applications - Summary & Drill Down Silo Views of Individual Components Are Not Effective - Difficult to Assess Impact - Relationships are Unclear - Sheer Number Slows Troubleshooting Start With Summary View - By Job Role - Gather and Encapsulate Key Properties of Each Object (Object Summary) - Position Object Summaries To Demonstrate Relationships Create Drill Down Links from Object Summary - May be Direct to Physical - May Have Multiple Levels Create Additional Tabs to Address Specific Tasks - Performance Assessment - Recovery Copyright 10/12/2010 BMC Software, Inc 40
Service Levels and KPIs Server Components (e.g. Queue Managers) - Up/Down - Resource Usage - Pools All Application Components - Pooling - Up time - Last Time Processed Asynchronous Components (e.g. MQ Apps) - Call Rate (Enqueue Rate) - Process Rate (Dequeue Rate) - Backlog (Queue Depth) - Oldest Waiting Message Synchronous Components (e.g. Web Services) - Call Rate - Response Time Copyright 10/12/2010 BMC Software, Inc 41
Reusing Patterns KPIs for Each Component Type Are Consistent - Event Templates - History Templates - View Templates Create a Summary Block for Each Object Type Copy and Paste to Create Composite Types Common Relationships Between Components - MQ Channel SDR RCVR XMITQ - MQ Request Reply Link Request Channel Request Queue Reply Channel Reply Queue - ESB Patterns See IBM Redbook Copyright 10/12/2010 BMC Software, Inc 42
What is the PatternTool? Java Utility to ease the creation of logical types with their underlying views and instances Runs in three modes - MODE=EXPORT generates a pattern from an existing logical type and instance - MODE=IMPORT prompts the user interactively for each parameter needed to create a new logical instance based on an existing pattern - MODE=SILENT generates one or more logical instances based on a pattern by taking input from a comma separated file Patterns are simply sets of files in a directory arranged in the manner understood by the tool - The Pattern Workspace is the top level working directory for the tool Each pattern has its own sub-directory as a child of the workspace directory - Each Pattern Directory contains the other files One (usually) or More Logical Type ZIP Files One Logical Instance Archetype file called mqsexport.xml A sample CSV file for passing the parameters of the pattern instances for MODE=SILENT Copyright 10/12/2010 BMC Software, Inc 43
Installing the PatternTool Create two directories on your system - One {INSTALL_DIR} to hold the Jar and Bat files - The other {WORKSPACE_DIR} to hold the patterns Can be a subdirectory of {INSTALL_DIR} Extract BMMPatternTool.zip to {INSTALL_DIR} Edit BMMPatternWizard.bat - Replace the value after DIR with your {WORKSPACE_DIR} - Save BMMPatternWizard.bat Extract BMMSamplePatterns.zip to {WORKSPACE_DIR} BMMPatternWizard.bat with appropriate arguments runs the tool Copyright 10/12/2010 BMC Software, Inc 44
What Patterns are Available? The intention is to create a public sharing site on BMC Communities - BMM will provide sample patterns - Users (including SCs) will be able to upload patterns - Users can freely download patterns As a starter set, Eric Olson has created the following patterns: - MQ Request-Reply Application - MQ SDR-RCVR Channel - MQ Cluster Channel - MQ-WMB Mediated Asynchronous Request-Response - JMS-WMB Mediated Asynchronous Request-Response - HTTP-WMB Mediated Synchronous Request-Response - Load Balanced Application (2 Instances) - EJB Web Service (WAS 6.X) The intention is to create a full set matching the IBM WMB Application Patterns Copyright 10/12/2010 BMC Software, Inc 45
Generating Your Own BMM Pattern Using MODE=EXPORT Steps to Generate a pattern - Navigate to BMM Management Console - Enter Edit Mode - Right click on Logical and Select Logical Instances - Expand the Logical Type folder representing your pattern - Select a Logical Instance from beneath the folder (which one does not matter) - Collect the Information {TypeName} and {InstanceName} from the Upper Right - Navigate to a command prompt on the BMM server in the BMM Patterns Tool Directory - Run BMMPatternWizard.bat as follows: BMMPatternWizard MODE export TYPE {TypeName} INSTANCE {InstanceName} PATTERN {TypeName} If your MQS_HOME environment variable does not point to the BMM Server installation, you will be prompted for that installation directory You will be prompted for the BMM UserId and Password to perform the export If the PATTERN directory already exists, you will be prompted to overwrite You will get a final confirmation prompt Copyright 10/12/2010 BMC Software, Inc 46
Go Into the BMM Management Console Edit Mode Click Edit Mode Copyright 10/12/2010 BMC Software, Inc 47
Gather the Information about your Logical Type and Instance Right Click on Logical Select Logical Instances Click + next to your Logical type to expand Select a Logical Instanc e of your type (Any one will do) Note the values of Instance Name and Type Name Copyright 10/12/2010 BMC Software, Inc 48
Run the Utility With MODE=EXPORT Copyright 10/12/2010 BMC Software, Inc 49
Compress the Project Directory Into a ZIP for Transfer In Windows Explorer (see right) - Expand the tree to show the project folder - Right click on the Project Folder in the left hand pane and select Send To Compressed (zipped) Folder - Result (up one directory, shown below) in EJB_WebService.zip Copyright 10/12/2010 BMC Software, Inc 50
Instantiating & Importing a Pattern Create instances by adding rows to the {PATTERN_NAME}InstanceCatalog.csv file - Located in the Pattern Directory (subdirectory of the workspace) - Do Not Edit the First Row - Copy the second row and paste it in as a third row - Edit the parameters in the new row to match the parameters of the objects that you want for the logical instance (e.g. Channel Name, Hostname, ) - Repeat the copy and edit to add as many instances as you want - There is no need to remove the original second row as long as you leave it unchanged - Save the file If you edited in MS Excel, make sure to save as a pure CSV file BMMPatternWizard.bat MODE silent OBJFILE {PATTERN_DIR}/{PATTERN_NAME}InstanceCatalog.csv -PATTERN {PATTERN_NAME} - This will import the logical type, create logical instances for each row in the CSV (except the first) and then import those logical instances - If your MQS_HOME environment variable does not point to the BMM Server installation, you will be prompted for that installation directory - You will be prompted for the BMM UserId and Password to perform the import Copyright 10/12/2010 BMC Software, Inc 51
Business Intelligence Pricing Requests by Department Meats Produce Gifts Health Total Store Orders Fulfilled Meats Produce Gifts Health Total Orders Orders Store Orders by Department Meats Produce Gifts Orders Health Orders Copyright 10/12/2010 BMC Software, Inc 52
J Cluster Performance Copyright 10/12/2010 BMC Software, Inc 53
J Cluster Performance Reports Copyright 10/12/2010 BMC Software, Inc 54
J MQ Channel Performance Copyright 10/12/2010 BMC Software, Inc 55
Performance Properties in WMB Copyright 10/12/2010 BMC Software, Inc 56
WMB Instances and Capacity Management Copyright 10/12/2010 BMC Software, Inc 57
Service Level Trending Copyright 10/12/2010 BMC Software, Inc 58