Couchbase Database discovery
The ServiceNow Discovery application uses the Couchbase Instance discovery pattern to find and map Couchbase Database instances and their clusters. Discovering some of these resources may require updating to the latest version of the Discovery and Service Mapping Patterns application from the ServiceNow Store.
Couchbase Database is an open source, distributed database that manages JSON documents. One or more instances of a Couchbase Server constitute a cluster. Data and services are shared across the cluster.
Discovery uses the Couchbase Instance discovery pattern to run horizontal and top-down discovery. You can use this pattern on the ServiceNow AI Platform® using the Quebec release or later.
Request apps on the Store
Visit the ServiceNow Store to view all the available apps, and for information about submitting requests to the store. For cumulative release notes information for all released apps, see the ServiceNow Store version history release notes.
Prerequisites
- The Couchbase Database must be installed on a Linux Server: Red Hat 7.9 or Ubuntu 20.
- Ensure that CLI tools are installed on the servers.
- On the ServiceNow AI Platform, configure SSH credentials. Configure the credentials with the following permissions:
- Discovery permissions
- Permissions to list files, such as VERSION.txt, in the Couchbase installation folders on the Linux Server.
- Permissions to execute the command,
systemctl status couchbase-server, on the Linux Server.
<couchbase install dir>/bin/curl -u <username>:'<password>' http://"<couchbase server>:<access_port>/pools/<couchbase install dir>/bin/curl -u <username>:'<password>' http://"<couchbase server>:<access_port>/pools/<default Pool name><couchbase install dir>/bin/curl -u <username>:'<password>' http://"<couchbase server>:<access_port>/pools/<default Pool name>/buckets<couchbase install dir>/bin/curl -u <username>:'<password>' http://"<couchbase server>:<access_port>/pools/<default Pool name>/remoteClusters
Data collected by Discovery during horizontal discovery
The discovered data includes the following tables and fields.
| Table and field | Description |
|---|---|
| Main CI (Couchbase Instance) [cmdb_ci_couchbase_instance] | |
| name | The name of the Couchbase instance. |
| install_directory | The installation folder or directory of the Couchbase instance. |
| config_file | The main configuration file of the Couchbase instance. |
| version | The version of the Couchbase instance. |
| tcp_port | The port used for command line and Rest API access. |
| edition | Either the Basic or Enterprise edition of the Couchbase instance. |
| start_date | The date from which the Couchbase instance has been active. |
| Couchbase Cluster [cmdb_ci_couchbase_cluster] | |
| name | The name of the Couchbase cluster. |
| cluster_id | The ID of the Couchbase cluster. |
| install_status | The installed status, set to "1"/"installed". |
| cluster_type | The operational status, set to "1"/"operational". |
| Couchbase Cluster Node [cmdb_ci_couchbase_cluster_node] | |
| name | The name of the Cluster node. |
| install_status | The installed status, set to "1"/"installed". |
| operational_status | The operational status, set to "1"/"operational". |
| node_status | The Cluster node health status. |
| node_encryption | Field that indicates whether the node is encrypted. |
| configured_host_name | The configured host name of the Cluster node. |
| host_name | The actual host name of the Cluster node. |
| total_memory | The total memory. |
| free_memory | The free memory. |
| mcd_reserved_memory | The reserved MCD memory. |
| mcd_allocated_memory | The allocated MCD memory. |
| couch_api_base | The Couchbase base API URL. |
| couch_api_base_https | The Couchbase HTTPS API URL. |
| recovery_type | The recovery type. |
| otpnode | The OTP node. |
| node_uuid | The UUID of the Cluster node. |
| cluster_compatibility | The cluster compatibility of the Cluster node. |
| version | The version of the Cluster node. |
| os | The OS of the Cluster node. |
| cpu_count | The CPU count of the Cluster node. |
| edition | The Cluster node edition. The edition is the same as that of the Couchbase instance. |
| Couchbase Bucket [cmdb_ci_couchbase_bucket] | |
| name | The name of Couchbase bucket. |
| cluster | Reference to the Couchbase cluster. |
| install_status | The installed status, set to "1"/"installed". |
| Couchbase Cluster Resource [cmdb_ci_couchbase_cluster_resource] | |
| name | The name of the Couchbase service. |
| install_status | The installed status, set to "1"/"installed". |
| operational_status | The operational status, set to "1"/"operational". |
| cluster | Reference to the Couchbase cluster. |
CI relationships
These relationships are created to support Couchbase DB discovery.
| CI | Relationship | CI |
|---|---|---|
| Couchbase Instance [cmdb_ci_couchbase_instance] | Runs on::Runs Reference |
Linux Server [cmdb_ci_linux_server] |
| Couchbase Cluster Node [cmdb_ci_couchbase_cluster_node] | Cluster of::Cluster Reference |
Couchbase Cluster [cmdb_ci_couchbase_cluster] |
| Couchbase Cluster Node [cmdb_ci_couchbase_cluster_node] | Hosted on::Hosts Reference |
Linux Server [cmdb_ci_linux_server] |
| Couchbase Bucket [cmdb_ci_couchbase_bucket] | Uses::Used by Reference |
Couchbase Instance [cmdb_ci_couchbase_instance] |
| Couchbase Bucket [cmdb_ci_couchbase_bucket] | Hosted on::Hosts Reference |
Couchbase Cluster [cmdb_ci_couchbase_cluster] |
| Couchbase Cluster [cmdb_ci_couchbase_cluster] | Replicates to::Replicated by | Couchbase Cluster [cmdb_ci_couchbase_cluster] |