IBM WebSphere server discovery using probes
Summarize
Summary of IBM WebSphere server discovery using probes
IBM WebSphere Application Server discovery using probes enables ServiceNow customers to automatically detect and update Configuration Management Database (CMDB) records for WebSphere servers running on Windows or Linux. This process helps maintain accurate and up-to-date information about WebSphere instances, their components, and relationships within the CMDB.
Show less
Note that starting with Visibility Content version 6.1.0, pattern-based discovery is the default for WebSphere, and the traditional WebSphere probes are disabled by default.
Requirements for Discovery
- Windows: PowerShell must be enabled on the MID Server to allow probes to run.
- Linux: SSH must be enabled on the WebSphere server, and execute/read permissions must be set appropriately on configuration files (
serverindex.xml,cell.xml,server.xml).
Privileged commands may require elevated rights, especially for Unix-based hosts, to ensure successful discovery and service mapping.
Discovery Process and Probes
Discovery identifies running WebSphere application servers by detecting the com.ibm.ws.runtime.WsServer process on both Windows and Linux. When detected, a record is created in the cmdbciappserverwebsphere table.
Specific probes then extract detailed configuration data by locating and reading key XML files:
- Cell probe: Finds and parses
cell.xmlto populate WebSphere Cell records. - Web Applications probe: Reads
serverindex.xmlto populate Web Application records. - Web Services probe: Reads
server.xmlto populate Web Service records.
File paths are derived from parameters within the running WebSphere process, enabling precise location of configuration files.
Data Collected
Discovery populates the following key CMDB tables with data extracted from the configuration files:
- cmdbciappserverwebsphere: Server name from the running process.
- cmdbciwebspherecell: Cell name, ID, type, and discovery protocol from
cell.xml. - cmdbciwebapplication: Application names from
serverindex.xml. - cmdbciwebservice: Service names and IDs from
server.xml.
Relationships Created
The discovery process establishes vital relationships in the CMDB to reflect real-world dependencies:
- WebSphere application servers run on Windows or Linux servers (
Runs on::Runsrelationships). - WebSphere servers contain web applications (
Contains::Contained byrelationship). - WebSphere servers run web services (
Runs on::Runsrelationship). - WebSphere cells are contained by the WebSphere application server (
Contains::Contained byrelationship).
Benefits for ServiceNow Customers
By leveraging this probe-based discovery method, customers can:
- Automatically detect WebSphere application servers and their components.
- Maintain accurate CMDB records reflecting server configurations and interdependencies.
- Enable improved service mapping and impact analysis through detailed relationships.
- Ensure compliance and operational visibility for WebSphere environments.
The IBM WebSphere application server is a software framework with middleware that hosts Java-based web applications. Discovery creates or updates a CMDB record when it detects an instance of a WebSphere application server running on a Windows or Linux system.
Websphere discovery on Windows
Requirements for discovery:
For WebSphere application servers running on Windows systems, enable PowerShell on the MID Server.
Websphere discovery on Linux
- Enable SSH on the WebSphere Application Server.
- Set execute privileges to enable the following probes to run commands:
- WebSphere - Get serverindex.xml: cat/read permissions on the serverindex.xml file
- WebSphere - Get cell.xml: cat/read permissions on the cell.xml file
- WebSphere - Get server.xml: cat/read permissions on the server.xml file
For a list of privileged commands that you need for Discovery and Service Mapping, see Service Mapping commands requiring a privileged user. This list includes commands that require elevated rights to discover and map Unix-based hosts in your organization.
Probes and sensors
Discovery uses this process to identify Linux WebSphere application servers:
- The Unix - Active Processes probe detects a running process that matches the
com.ibm.ws.runtime.WsServer. For example, the
...com.ibm.ws.bootstrap.WSLauncher com.ibm.ws.runtime.WsServer process
output has a parameter of /opt/IBM/WPS/profiles/ccmdb/config localhostNode01Cell
ccmdb01 server1. The values are:
- last parameter = server_name = server1
- last parameter - 1 = node_name = ccmdb01
- last parameter - 2 = cell_name = localhostNode01Cell
- last parameter - 3 = config_path = ‘/opt/IBM/WPS/profiles/ccmdb/config’
- If there is a match, a record is created in the IBM Websphere
[cmdb_ci_app_server_websphere] table. The following probes are triggered:
- WebSphere - Cell
- WebSphere - Web Applications
- WebSphere –Web Services
- The WebSphere - Cell probe searches for the cell.xml file for the instance by using the parameters in the running process, and then searching in the related <config_path>\cells\<cell_name>\ directory.
- If the probe successfully finds the cell.xml file, the sensor reads its contents and populates additional Websphere Cell [cmdb_ci_websphere_cell] table records as necessary.
- If the probe successfully finds the serverindex.xml file, the sensor reads its contents and populates additional Web Application [cmdb_ci_web_application] table records as necessary.
- If the probe successfully finds the server.xml file, the sensor reads its contents and populates additional Web Service [cmdb_ci_web_service] table records as necessary.
Discovery uses this process to identify Windows WebSphere application servers:
- The Windows - Active Processes probe detects a running process that matches the
com.ibm.ws.runtime.WsServer. For example, the
...com.ibm.ws.bootstrap.WSLauncher com.ibm.ws.runtime.WsServer process
output has a parameter of /opt/IBM/WPS/profiles/ccmdb/config localhostNode01Cell
ccmdb01 server1. The values are:
- last parameter = server_name = server1
- last parameter - 1 = node_name = ccmdb01
- last parameter - 2 = cell_name = localhostNode01Cell
- last parameter - 3 = config_path = ‘/opt/IBM/WPS/profiles/ccmdb/config’
- If there is a match, a record is created in the IBM Websphere
[cmdb_ci_app_server_websphere] table. The following probes are triggered:
- Windows - WebSphere - Cell
- Windows - WebSphere - Web Applications
- Windows - WebSphere –Web Services
- The Windows - WebSphere - Cell probe searches for the cell.xml file for the instance by using the parameters in the running process, and then searching in the related <config_path>\cells\<cell_name>\ directory.
- If the probe successfully finds the cell.xml file, the sensor reads its contents and populates additional Websphere Cell [cmdb_ci_websphere_cell] table records as necessary.
- The Windows - WebSphere - Web Applications probe searches the serverindex.xml file for the instance by using the parameters in the running process, and then searching in the related <config_path>\cells\<cell_name>\nodes\<node_name> directory.
- If the probe successfully finds the serverindex.xml file, the sensor reads its contents and populates additional Web Application [cmdb_ci_web_application] table records as necessary.
- The Windows WebSphere - Web Services probe searches for the server.xml file for the instance by using the parameters in the running process, and then searching in the related <config_path>\cells\<cell_name>\nodes\<node_name>\servers\<server_name> directory.
- If the probe successfully finds the server.xml file, the sensor reads its contents and populates additional Web Service [cmdb_ci_web_service] table records as necessary.
Data collected
| Table | Field | Source |
|---|---|---|
| cmdb_ci_app_server_websphere | Name (name) | Running process |
| cmdb_ci_websphere_cell | Name (name) | cell.xml |
| cmdb_ci_websphere_cell | Cell ID (cell_id) | cell.xml |
| cmdb_ci_websphere_cell | Cell type (cell_type) | cell.xml |
| cmdb_ci_websphere_cell | Cell discovery protocol (cell_discovery_protocol) | cell.xml |
| cmdb_ci_web_service | Name (name) | server.xml |
| cmdb_ci_web_service | Service ID (service_id) | server.xml |
| cmdb_ci_web_application | Name (name) | serverindex.xml |
| Label | Table Name | Field Name | Source |
|---|---|---|---|
| Name | cmdb_ci_websphere_cell | name | server.xml |
| App server | cmdb_ci_web_service | app_server | Internal reference |
| Name | cmdb_ci_web_service | name | server.xml |
| Name | cmdb_ci_web_application | name | serverindex.xml |
| App server | cmdb_ci_web_application | app_server | serverindex.xml |
Relationships
These relationships are created in the CI Relationship [cmdb_rel_ci] table.| Parent class | Relationship type | Child class |
|---|---|---|
| cmdb_ci_app_server_websphere | Runs on::Runs | cmdb_ci_linux_server |
| cmdb_ci_win_server | Runs on::Runs | cmdb_ci_win_server |
| cmdb_ci_app_server_websphere | Contains::Contained by | cmdb_ci_web_application |
| cmdb_ci_web_service | Runs on::Runs | cmdb_ci_app_server_websphere |
| cmdb_ci_websphere_cell | Contains::Contained by | cmdb_ci_app_server_websphere |