Professional Documents
Culture Documents
[May 2011]
1 Introduction..........................................................................................................1
ii
3.2.5.4 Solaris Zones .......................................................................................... 11
3.2.5.5 Microsoft Hyper-V and Virtual Server ..................................................... 11
3.2.6 Custom Monitoring Solutions.................................................................. 12
7 Reporting ...........................................................................................................17
iii
1 Introduction
IT organizations are becoming more and more service oriented. As a result, when your
users complain that it takes a long time to login, execute a search, save a record, or run a
report in any of the IBM Maximo products, you are expected to quickly diagnose and
remedy the situation. Because the environment in which applications exist is becoming
more and more complex, performance problems are becoming more and more
complicated to solve. The issue could be with the application, the user’s workstation, the
network, one of many servers in the Maximo environment, the database, or any one of a
number of other products or systems unique to your environment. The problem may even
be with a vendor’s system – such as an ISP – whose technology is totally outside of your
system. In many cases, organizations lack the tools to properly diagnose and tune
problems so they just ‘throw hardware’ at the situation hoping that the problem goes away.
What is really needed is a set of tools to help accurately depict the environment in which
the application is running, show potential trouble spots, and even suggest remedies. This
tool needs to be easy to install and use and must have the ability to send the acquired data
to other interested parties for further analysis – such as technical support, other
departments, and even outside vendors. Ideally, the solution should be able to alert you
before the problem becomes apparent to your users so their lost productivity can be
avoided. Finally, the tool should be able to provide a set of availability and performance
reports to help you analyze your environment as well as have documented proof that you
have met your service level agreements (SLAs).
This paper documents how to use the IBM Tivoli Monitoring Agent for Maximo to effectively
monitor your Maximo environment. In most cases, the IBM Tivoli Monitoring Agent for
Maximo provides enough visibility into the performance and availability of your IBM
Maximo product environment. In some cases, you might want even more visibility into the
components of Maximo. Therefore, the paper discusses how to leverage IBM Tivoli
Monitoring (ITM) and some of the ITM and IBM Tivoli Composite Application Manager
(ITCAM) Agents to gain more visibility into Maximo. The paper documents how each of
the key components that make up your Maximo platform can be monitored using the
monitoring agent for basic monitoring and using the IBM Tivoli Monitoring and IBM Tivoli
Composite Application Monitoring Agents for deeper monitoring.
The IBM Tivoli Monitoring Agent for Maximo can monitor the various processes inside the
Maximo platform. It provides key metrics such as user sessions, cron task and object
instance counts, memory usage, database connections, and more. It also provides
configuration information about the Maximo applications that are installed, version
information, and more, which is useful when calling for technical support. All of this
information is displayed right along with the other system metrics available through ITM.
For additional information on IBM Tivoli Monitoring, see the following website:
http://www.ibm.com/software/tivoli/products/monitor/
1
Key IBM Maximo Platform Components
the response time of Maximo. It is important that end users experience good response
time with Maximo. Typically, this can be achieved by ensuring that all of the key Maximo
components are healthy. In a multi-tiered application, it can also be beneficial to provide
end to end transaction tracking. Transaction tracking allows you to monitor a transaction
from the time it gets initiated at the HTTP server, goes through the application server, and
finishes in the backend database server. Transaction tracking provides visibility into
where the transaction is spending its time, allowing you to quickly isolate and resolve
problems in the environment.
The following diagram outlines the key components in the Maximo application
environment:
2
Monitoring the Maximo Components
• Hub Tivoli Enterprise Monitoring Server (HTEMS) and remote Tivoli Enterprise
Monitoring Servers (RTEMS) for scalability and firewall negotiation
• Monitoring agents:
3
Monitoring the Maximo Components
Figure 1
If you decide that you need more monitoring capabilities than the IBM Tivoli Monitoring
Agent for Maximo can provide, then you need to purchase and other IBM Tivoli monitoring
products. These products include the following types of monitoring agents:
• Messaging
• Lotus Domino
4
Monitoring the Maximo Components
For more information on IBM Tivoli Composite Application Manager for Applications, see
the following website: http://www.ibm.com/software/tivoli/products/composite-application-
mgr-applications/
If you use WebLogic servers, you will need to install the IBM Tivoli Composite Application
Manager for J2EE Agent, which is not part of the IBM Tivoli Application Manager for
Applications bundle. For additional information on IBM Tivoli Composite Application
Manager for J2EE, see the following website:
http://www.ibm.com/software/tivoli/products/composite-application-mgr-itcam-
j2ee/index.html
3.1.1 Thresholds
The most important aspect of monitoring your environment is to set appropriate thresholds.
In ITM, thresholds are defined as “situations” using the Situation Editor. The Maximo
Agent and the ITM/ITCAM Agents ship with a set of out of the box situations. Use these
predefined situations as a starting point. Note that some of the out of the box situations
are not configured to run automatically. This is done to avoid high rates of events
triggering. If you think these situations are important, you can enable them. Please note
that these thresholds are defined for general environments. If you find that these
thresholds are either too high or too low for your Maximo environment, it is easy to modify
the thresholds or create your own situations. The specific thresholds that are critical to
monitor each Maximo component are listed in section 3.2.
While real-time monitoring is important, it is often important to be able to perform long term
trending analysis. IBM Tivoli Monitoring provides the capability of warehousing, or
collecting and storing, the metric data. This stores the historical data in a relational
database. Once warehoused, the data can be automatically summarized and pruned. In
5
Monitoring the Maximo Components
addition, Tivoli Common Reporting can be leveraged to provide formal reports using the
warehouse data. Recommendations for warehousing intervals are listed in section 3.2 for
each Maximo component.
In many cases, using a static threshold is inadequate. There are a number of reasons for
this. First, the behavior characteristics of the system vary depending on the time of day
and day of week. Second, behavior varies from server to server and it is often difficult to
choose an appropriate threshold. Third, it is nice to know when a server is behaving
abnormally even if it is below a predefined threshold such as 80% CPU utilization. Using
a capability called adaptive monitoring, you can set a threshold based on the previously
measured metrics that are stored in the warehouse. Consider using adaptive monitoring
for some of your monitoring thresholds to save time in defining meaningful thresholds and
to be notified when abnormal behavior occurs.
ITM 6.2.1 has a component called IBM Tivoli Performance Analyzer. IBM Tivoli
Performance Analyzer performs predictive analytics on the data that is stored in the
warehouse. This allows you to predict when errors will occur in the near-term future.
This is highly desirable in detecting problems like memory leaks or detecting when a server
will run out of capacity. If a server is nearing its capacity, this feature can provide you
with enough time to order hardware, offload work, or provision additional capacity.
Once you have detected a problem, it is possible to set up automated corrective actions.
IBM Tivoli Monitoring offers a capability called “Take Action” where you can execute any
command on the monitored system. These can be shell scripts, binaries, or executables.
Leverage Take Actions to fix problems as soon as they occur.
3.1.7 Workflows/Policies
Workflows can automate the best Situation is true Situation is true
practices of an organization and execute
them in a pre-emptive, consistent, error-
Resume
free manner. Workflows tie together
individual resource monitors to take
specific actions based on user-defined
criteria. For instance, a mission critical
application may depend on an Oracle
database. If the archive log directory fills
up, the database will hang, resulting in
monetary losses. By tying together the Action succeeded Situation is false
6
Monitoring the Maximo Components
With IBM Tivoli Monitoring, monitored processes can be extended to become automated,
pre-emptive workflow processes executing local best practices in a repetitive, error-free
manner.
Requests into Maximo are initiated through an HTTP Server. There are multiple ways to
monitor the HTTP Server. Initially, you want to monitor the general health of the HTTP
server. This can be done by using the Operating System monitors to ensure that the
HTTP server is running and is not consuming too much memory or CPU. The OS sgent
can be configured to monitor disk space utilization as well as high disk I/O and network I/O.
Use the out of the box OS agent situations to monitor the resources. Consider using
adaptive monitoring for the CPU utilization, disk I/O and network I/O to look for abnormal
behavior. Enable historical collection for CPU utilization, memory utilization, network I/O,
disk I/O, and disk space.
• KQ7_INTERNET_INFORMATION_SERVICES_GL
• KQ7_IIS_WEB_SERVER_SITE_STATUS
• KQ7_IIS_WEB_SERVER_STATUS
• KQ7_THREAD_POOL_STATUS
• KQ7_WEB_SERVICE
• KQ7_WEB_SERVICE_CACHE
• KQ7_ACTIVE_SERVER_PAGES
Consider using adaptive thresholding for some metrics. For example, you can use
adaptive monitoring to look for denial of service attacks by looking at the “Logon Attempts
Rate”. If the rate is significantly higher than normal, there may be a problem. Consider
using predictive analytics to look at request execution time. If the execution time is getting
slower over time, it may indicate a performance bottleneck.
Every Maximo environment uses an application server. The application server can either
be WebSphere Application Server or a Oracle WebLogic Application Server. In larger
environments, the application servers are configured on multiple servers in load balanced
configurations in order to achieve higher scalability. It is important that you monitor each
7
Monitoring the Maximo Components
of the application servers. The IBM Tivoli Monitoring Agent for Maximo provides key
monitoring capabilities for the application server:
• Memory utilization of each Maximo JVM: Ensure that each Maximo JVM has
available memory.
• JVM statistics: Ensure that the JVM is healthy and running within normal
specifications.
• Maximo cron tasks: Ensure that all Maximo cron jobs are scheduled and running
properly.
• Connected Users: Use this metric to ensure that no more than 50 concurrent
users are connected to a JVM, the best practice for Maximo implementations.
In most cases, these metrics are sufficient to determine whether the Maximo application
servers are healthy and performing well. We recommend you enable situations to monitor
the following:
Enable the following historical collection for the IBM Tivoli Monitoring Agent for Maximo.
By enabling this historical collection, you can create some useful historical reports and
leverage the adaptive monitoring and Predictive Analytics:
If the IBM Tivoli Monitoring Agent for Maximo does not provide enough visibility into the
Application Server, use ITCAM for Applications for in-depth monitoring of the application
server. Using the ITCAM for WebSphere Application Server Agent you will be able to do
deep monitoring of the WebSphere Application Server. For WebLogic, use the ITCAM for
J2EE Agent. These Agents provide visibility into and monitoring of:
• Application health
• Request analysis
• Log analysis
• Garbage collection
• Pool analysis
• EJB’s
8
Monitoring the Maximo Components
• DB connection pools
• Thread pools
• And more…
The out of the box situations are a good place to start for monitoring your application
aerver. For metrics that vary a lot from server to server, and for thresholds that are
difficult to define, consider using adaptive monitoring. Examples are request rates and
response times. IBM Tivoli Performance Analyzer can also provide good visibility into
where the request rates and response times are trending. It is very important to monitor
garbage collection, connection pools, and cache analysis metrics to ensure the application
server is healthy.
Enable the following Historical Collections. The IBM Tivoli Performance Analyzer utilizes
summarized data. Enable daily summarization except where noted:
• Dynamic cache
• Client communications
• EJB containers
• Data sources
• Request analysis
In addition to the application server specific metrics, always monitor the underlying
operating system. Using the OS agent and the default situations, monitor statistics such
as disk space, CPU utilization, memory, network I/O and more. Adaptive monitoring and
predictive analytics are well suited for monitoring metrics such as CPU utilization and
network I/O that are very dynamic and vary from server to server.
Maximo application environments contain a database server. This database server may
be a stand-alone server that is used by the Maximo application or may be part of a large
database server that supports multiple applications. Either way, it is essential to monitor
the database server to make sure it is performing well. The IBM Tivoli Monitoring Agent
for Maximo contains monitor of the database server to ensure that basic database services
are available to the Maximo servers. In addition, Tivoli offers Monitoring Agents for all of
the major database vendors (Oracle, IBM, Microsoftand Sybase) to provide a deeper set of
monitoring of the Database Server. The IBM Tivoli Monitoring Agent for Maximo will
monitor the database connections from each Maximo server.
9
Monitoring the Maximo Components
Using the IBM Tivoli Monitoring database agents, monitor the following key attributes:
tablespaces, buffer pools, and lock conflicts. There are out of the box situations for each
of these. In addition, monitor the number of failed SQL statements. If a number of SQL
statements are failing, your DBA should be alerted so that they can investigate. Finally,
monitor the number of concurrent database connections. If the database connections are
too high, it may indicate that too many concurrent users are logged into Maximo. If the
database connections are too low, it may indicate a problem in one of the other
components in the Maximo environment.
For the DB2 agent historical collection, enable the following attribute groups. Similar
attribute groups are available for the other database vendors. These settings will allow you
to generate TCR reports and use the performance analyzer for predictive analytics. To
use performance analyzer with a DB2 warehouse database, enable daily summarization on
these metrics:
• DB2 Database00
• DB2 Database01
• DB2 Tablespace
In addition to the database server specific metrics, it is always important to monitor the
underlying operating system. Using the OS agent and the default situations, monitor
things like disk space, CPU utilization, memory, network I/O and more. Adaptive
monitoring and predictive analytics are well suited for monitoring metrics such as CPU
utilization and network I/O that are very dynamic and vary from server to server.
Optionally, some sites deploy an LDAP directory server such as IBM Tivoli Directory
Server. Since this is a key component for user authentication, it is critical that the directory
server have high availability. If you are using IBM Tivoli Directory Server as your LDAP
server, Tivoli provides a monitoring agent to monitor IBM Tivoli Directory Server. The
agent can monitor Microsoft Active Directory servers.
Monitor the LDAP server search rates for higher than desired levels. Monitor for high
LPAP write rates.
In addition to the IBM Tivoli Directory Server Agent specific metrics, it is always important
to monitor the underlying operating system. Using the OS agent and the default
situations, monitor things like disk space, CPU utilization, memory, network I/O and more.
Adaptive monitoring and predictive analytics are well suited for monitoring metrics such as
CPU utilization and network I/O that are very dynamic and vary from server to server.
10
Monitoring the Maximo Components
3.2.5.1 VMware
To monitor VMware ESX and ESXi environments, Tivoli has an agent called VMware VI
that is part of the ITCAM for Applications product. This agent is typically configured to
gather the performance metrics directly from VMware Virtual Center, but can also gather
metrics directly from the ESX servers.
To monitor Power Systems running AIX, Tivoli delivers four Agents that are specialized in
monitoring these environments:
• Premium AIX agent – Monitors the AIX Logical Partition (LPAR) utilization.
• CEC agent - Monitors the CEC utilization and LPAR usage for the frame. The
CEC is the Central Electronic Complex on Power System hardware.
• VIOS agent – Monitors the Virtual I/O erver (VIOS) utilization and IO mappings.
• HMC agent – Monitors the Hardware Management Console (HMC) and provides
visibility into the systems managed by the HMC.
3.2.5.3 z/VM
For monitoring Microsoft virtualized environments, Tivoli offers agents for Microsoft Hyper-
V and Microsoft Virtual Server. These agents provide visibility into the virtualized
resources. These agents are part of a different product called IBM Tivoli Monitoring for
Microsoft Applications. For more information on IBM Tivoli Monitoring for Microsoft
Applications, see the following website:
http://www.ibm.com/software/tivoli/products/monitoring-microsoft-applications/index.html
11
Preparing for Deployment
As with most monitoring solutions, there may be gaps in the monitoring that are critical to
your specific implementation. Tivoli offers a toolkit called the Agent Builder that allows
you to build custom solutions. The Agent Builder has built in data providers (collectors) to
gather data from:
• Scripts
• Logfiles
• Process/Service monitoring
In the case of Maximo, you might use the IBM Tivoli Monitoring gent Builder to create a
custom solution to monitor the following:
• Key logfiles on the applications server, HTTP server, and database server.
• Execute JDBC queries to gather key metrics from the Maximo database tables
After reading the Deployment Guide, you can look at the ITM 6.2.1 Installation Guide and
other ITM documentation. All of the base ITM documentation can be found here.
http://publib.boulder.ibm.com/infocenter/tivihelp/v15r1/index.jsp?topic=/com.ibm.itm.doc_6.
2.1/welcome.htm
The ITM Quick Start Guide will help you identify the CD part numbers you will want
to install:
12
Transaction Tracking
http://publib.boulder.ibm.com/infocenter/tivihelp/v15r1/topic/com.ibm.itm.doc_6.2
.1/itm621_qsg_en.htm
Each Agent has installation and usage documentation. Below is a list of documentation
for the Agents described in this document:
Documentation for the IBM Tivoli Monitoring Agent for Maximo is included in the ZIP file
that you downloaded from the OPAL website. Here is the URL: http://www-
01.ibm.com/software/brandcatalog/portal/opal/details?catalog.label=1TW10TM7S
Database Agents:
http://publib.boulder.ibm.com/infocenter/tivihelp/v15r1/index.jsp?topic=/com.ibm.itmfd.doc/
welcome.htm
Virtual Servers:
http://publib.boulder.ibm.com/infocenter/tivihelp/v15r1/topic/com.ibm.tivoli.itmvs.doc/welco
me.htm
5 Transaction Tracking
While monitoring of the Maximo components is important, one important aspect of any
application is response time. It is critical that end users experience good response time
with Maximo. In a multi-tiered application, it can also be beneficial to provide end to end
transaction tracking. ITCAM for Transaction Tracking allows you to monitor a transaction
from the time it gets initiated at the HTTP server, goes through the Application Server, and
finishes in the backend database server. ITCAM for Transaction Tracking provides
visibility into where the transaction is spending its time; thus allowing you to quickly isolate
and resolve problems in the environment. Tivoli provides a product called IBM Tivoli
Composite Application Manager (ITCAM) for Transactions to monitor these complex
environments. For more information on IBM Tivoli Composite Application Manager for
Transactions, see the following website:
http://www.ibm.com/software/tivoli/products/composite-application-mgr-transactions/
The following diagram outlines the key components in the Maximo application
environment:
13
Transaction Tracking
Figure 2
Use adaptive monitoring to set thresholds on end user response time and robotic response
time. Responses times that are more than two standard deviations above normal should
trigger an alert.
14
Transaction Tracking
When you monitor for transaction tracking, you can monitor for specific response time
thresholds. For example, if the application server portion of the transaction takes more
than 1000 milliseconds, you can raise an alert. Or, you can leverage the adaptive
monitoring capabilities to look for abnormal behavior. For example, you can set a
threshold to detect if the time spent within the application server is more than two standard
deviations above normal.
For more information on transaction monitoring, including installation instructions, see the
following web page:
http://publib.boulder.ibm.com/infocenter/tivihelp/v24r1/topic/com.ibm.itcamt.doc_7.1/welco
me.htm
15
Service Oriented Architectures
For more information on SOA monitoring, see the product documentation for ITCAM for
SOA:
http://publib.boulder.ibm.com/infocenter/tivihelp/v24r1/topic/com.ibm.itcamsoa.doc_6.2.1/w
elcome.htm
16
Reporting
7 Reporting
IBM Tivoli Monitoring includes a reporting solution called Tivoli Common Reporting. This
allows you to run and schedule reports. Many out of the box reports exist for the agents
documented in this paper. The out of the box reports are written to work with summarized
historical data (typically hourly or daily summarization). So, enable hourly or daily
Summarization for the data that you want to report on. It is possible to use the detailed
metric data in the warehouse for reporting, but you will need to define your own reports.
The reports are posted on the OPAL website at the following links:
If you need to define your own custom Tivoli Common Reporting reports, Tivoli has
provided a tool called BIRT Report Designer that can be found here: http://www-
01.ibm.com/software/brandcatalog/portal/opal/details?catalog.label=1TW10OT03
17
®
© Copyright IBM Corporation 2009
The e-business logo, the eServer logo, IBM, the IBM logo,
OS/390, zSeries, SecureWay, S/390, Tivoli, DB2, Lotus and
WebSphere are trademarks of International Business
Machines Corporation in the United States, other countries or
both.
19