Integration Plumbers // Docs

Documentation for Integration Plumbers products.

Prerequisites

What the plug-in needs falls into four groups: Enterprise Manager and an agent that can reach the database; a network path over Db2’s listener port; a least-privilege monitoring user; and, only for the five local-only administrative jobs and diagnostic-log monitoring, an agent co-located on the Db2 host. The three remote administrative jobs need a separate Db2 admin user instead. Optional TLS or DRDA encryption is configured entirely on the client side and needs no extra database grant.

Where to find it: every item below is a one-time setup step outside the plug-in itself; nothing here is checked live on a console page in this release.

In this page: Supported versions and platforms · Enterprise Manager and agents · The JDBC driver · Network and ports · The monitoring role · Optional transport security (TLS / DRDA) · Preferred Credentials for jobs · Sizing · Prerequisites checklist

Supported versions and platforms

Component Supported
Oracle Enterprise Manager 13.5 and 24ai
IBM Db2 LUW 12.1 (certified at the Comprehensive level) and 11.5 (certified at the Basic level). Every metric collects on both; the level is the certification label in Enterprise Manager’s plug-in catalog
Db2 LUW 11.1 and below Not supported
Db2 topology A single-partition database on Db2 LUW Enterprise Server, or any single-member edition
Partitioned (DPF) and pureScale databases Not supported
Db2 for z/OS Not supported
Agent platforms Linux x86-64 (64-bit), Microsoft Windows x86-64 (64-bit)
Amazon RDS for Db2 Not certified. Monitoring may work, but it has not been certified, and the local-only features are unavailable there — see Troubleshooting

What happens on an unsupported version or topology. The plug-in detects both when a target is added. Availability (Response) is still monitored on any Db2 version, so the target is never left without an up/down status. Every other metric group is gated off, and the target’s CollectorStatus metric reports each one as DISABLED with the reason — “Unsupported Db2 version …” or “Unsupported topology …”. If the topology cannot be read, the database is treated as single-partition, so a detection problem never stops a supported database from being monitored.

Enterprise Manager and agents

This release ships as two plug-in builds with the same features: 24.1.1.0.0 for Enterprise Manager 24ai and 13.5.2.0.0 for Enterprise Manager 13.5. Enterprise Manager refuses the build it was not compiled for at import (Incompatible version), so use the artifact that matches your OMS.

Requirement Detail
OMS / repository Enterprise Manager 13.5 or 24ai, up and running
Management Agent An Enterprise Manager Management Agent on a host that can reach the Db2 server, on Linux x86-64 or Windows x86-64
Agent JRE The agent’s Java runtime (JAVA_HOME) runs the plug-in’s collector; no separate JDK install is required

Before you add any target, import the plug-in OPAR, deploy it to the OMS, then deploy it to each agent that will monitor a Db2 database. See Install and upgrade.

A valid licence key for ip.em.xdb2 is required to monitor a target; it is a target property. See Licensing.

The JDBC driver

No separate driver installation is required. The IBM Data Server Driver for JDBC and SQLJ (type-4, db2jcc4.jar, jcc 12.1.4.0) ships bundled inside the plug-in’s collector JAR, and connects to both certified Db2 versions.

You do not need to supply a driver or a licence JAR. The bundled type-4 driver connects to Db2 11.5 and 12.1 on Linux, UNIX and Windows without one. IBM’s db2jcc_license_cisuz.jar is for Db2 Connect to Db2 for z/OS and IBM i, which this plug-in does not support.

The plug-in still reads one directory on each agent, for support-directed use such as a diagnostic driver build. It survives plug-in upgrades:

<agentStateDir>/ip_plugin/xdb2/lib/

agentStateDir is an agent property (see emd.properties); on a typical Linux agent it is the agent instance directory. The directory belongs to this plug-in alone.

Network and ports

The agent needs a TCP path to the Db2 server on the Db2 listener port, 50000 by default (a TLS-enabled instance normally uses a separate ssl_svcename port). Open that path from every agent host to every database it will monitor.

Local-only features. Diagnostic-log monitoring and the plug-in’s five local administrative jobs — start instance, stop instance, quiesce, unquiesce, and kill application — require the agent to be co-located on the same host as the Db2 instance. The plug-in enforces this: each of those jobs refuses to run unless the agent is on the Db2 host. Remote monitoring of metrics works over the network regardless, and so do the three remote administrative jobs, which need only the target’s JDBC connection. The local-only features are unavailable on managed services such as Amazon RDS for Db2, where there is no host to co-locate an agent on. See Jobs and Troubleshooting.

The monitoring role

The plug-in connects over JDBC as a dedicated, low-privilege monitoring user — never SYSADM, DBADM, or DATAACCESS. Db2 LUW authenticates externally (OS or LDAP), so create the OS user first (example: oem_monitor), then grant it database authorities:

-- Connect as an instance/DB administrator to the monitored database:
--   db2 connect to <DBNAME>

-- 1. Allow the user to connect to the database.
GRANT CONNECT ON DATABASE TO USER oem_monitor;

-- 2. SQLADM carries EXECUTE on the MON_GET_* monitoring table functions
--    (and EXPLAIN / RUNSTATS) without broad data access.
GRANT SQLADM ON DATABASE TO USER oem_monitor;

SQLADM is the single grant that covers the whole current metric surface: it executes every MON_GET_* table function the plug-in uses, and it is SELECT-able on the SYSIBMADM.DB_HISTORY recovery-history view the backup-history metric reads. The plug-in uses no discontinued SNAP_GET_* interfaces.

Both halves of that are measured, not asserted — certified against a live Db2 12.1.4 instance:

SYSIBMADM.DB_HISTORY is covered too, though by CONNECT rather than SQLADM — that view stays readable with SQLADM revoked. So the one grant pair covers the whole current metric surface.

More granular alternative (optional)

If policy forbids SQLADM, grant EXECUTE on each MON_GET_* function the plug-in calls instead. This is verbose and must be extended as metric families grow:

GRANT EXECUTE ON FUNCTION SYSPROC.MON_GET_DATABASE   TO USER oem_monitor;
GRANT EXECUTE ON FUNCTION SYSPROC.MON_GET_BUFFERPOOL TO USER oem_monitor;
-- ...one GRANT EXECUTE per MON_GET_* function used by the collections...

Audit-posture catalog views

The audit-posture compliance rules read two catalog views: SYSCAT.AUDITPOLICIES and SYSCAT.AUDITUSE. In a default Db2 installation these need no extra grant — SELECT on SYSCAT catalog views is granted to PUBLIC, so oem_monitor reads them as-is. A hardened installation is the exception: security baselines such as the DISA STIG for Db2 LUW recommend revoking PUBLIC from them. Where that has been done, grant explicit read access:

GRANT SELECT ON TABLE SYSCAT.AUDITPOLICIES TO USER oem_monitor;
GRANT SELECT ON TABLE SYSCAT.AUDITUSE      TO USER oem_monitor;

These grants give read access to the audit configuration only — which policies exist, what they are attached to, which categories they cover — never to audit records, and never SECADM. If the grant is missing, the audit-posture collection alone fails with an authorization error; every other collection is unaffected, and the audit-posture rules simply have no data to evaluate, rather than silently passing. See Compliance standards.

Optional transport security (TLS / DRDA)

Transport security is configured on the client (agent) side and needs no database grant.

See Targets and properties for both properties in context.

Preferred Credentials for jobs

Monitoring needs only the monitoring user. The administrative jobs each run as a different account, held in a preferred credential set on the target. Set the ones you need under Setup → Security → Preferred Credentials → IBM DB2 Database, before you run the job:

Preferred credential set Holds Used by
IBM DB2 Database Host Credentials (DB2HostCreds) The Db2 instance owner’s OS account on the Db2 host The five local administrative jobs, including the Analysis page’s Kill Blocking Application button
IBM DB2 Plug-in Agent Owner Credentials (DB2AgentOwnerCreds) The account that owns the agent installation (commonly oracle) Purge Stale Plugin Cache, Collect IBM DB2 Plug-in Diagnostics, and the three remote administrative jobs
IBM DB2 Database Admin Credentials (DB2AdminCreds) A Db2 admin user (a database credential) The three remote administrative jobs only

On Linux and UNIX, the Db2 instance owner must also be able to read the agent’s plug-in files, so add it to the agent install owner’s group on the Db2 host — see Jobs. The authority the admin user needs is on Remote admin jobs. Each job’s credential needs, and the messages you see when one is missing, are on Jobs.

Sizing

Each metric collection is a short-lived Java process that the agent starts: it opens one JDBC connection, runs its query, prints the result and exits. A target runs about 180 collections an hour, on intervals from 5 minutes to 24 hours. Measured on an Enterprise Manager 24ai agent on an 8-vCPU Linux host against Db2 12.1:

Prerequisites checklist

Minimum (metric monitoring)

Full capability (adds to the minimum)

↑ IBM DB2 Plug-in documentation