Oracle Cloud Infrastructure (OCI) discovery
ServiceNow Discovery uses the Oracle Cloud Infrastructure (OCI) discovery patterns to provide real-time elasticity for enterprise applications by combining Oracle autonomous services, integrated security, and cloud compute. Discovering some of these resources may require updating to the latest version of the Discovery and Service Mapping Patterns application from the ServiceNow Store.
Starting with version 1.29.0, Discovery and Service Mapping Patterns supports the discovery of OCI GovCloud accounts.
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
- Verify that the following applications are installed
- Verify that the following applications are installed and up to date:
- Cloud Access Interface (starting from version 1.0.0)
- Visibility Content
- CMDB CI Class Models
- Discovery and Service Mapping Patterns
- Configure Oracle API credentials
- Ensure that your OCI credentials are configured and that your private and public keys are converted to the RSA format. For more information, see Create Oracle API credentials.
- Create OCI service account
- For more information, see Create OCI service accounts.
- Create a cloud discovery schedule
- To run a cloud discovery at scale, see Create an OCI Discovery schedule in Discovery Admin Workspace.
- (Optional) Populate Service Account and Logical Datacenter fields in cloud CIs
- Starting with Discovery and Service Mapping Patterns version 1.30.0, you can improve query performance by populating Service Account and Logical Datacenter fields directly in cloud CIs. For more information, see Improved query performance with direct field population in CI tables.
Verify the REST API Permissions
Download the Cloud Discovery patterns spreadsheet so you can grant user permissions required for running the Discovery patterns. In addition to permissions, the spreadsheet also includes useful information such as pattern names, types, CI Classes, and links to vendor documentation. New patterns are available quarterly, so check periodically to be sure you have the latest version of the spreadsheet.
Data collected by Discovery during horizontal discovery
The discovered Oracle configuration data includes the following table and fields.
| Field | Description |
|---|---|
| Cloud Database (cmdb_ci_cloud_database) | |
| name | The name of the database. |
| object_id | Unique identifier of the database. |
| operational_status | Operational status of the database. |
| vendor | The vendor, Oracle. |
| type | The Oracle database type. |
| version | Version of the database. |
| state | State of the database. |
| comments | The attribute is issued for the delete strategy. |
| install_status | Install status. |
| Image (cmdb_ci_os_template) | |
| name | The image name. |
| object_id | Unique identifier of the image. |
| version | The version of the guest OS. |
| guest_os | The name of the guest OS. |
| Service Account (cmdb_ci_cloud_service_account) | |
| name | The account name. |
| datacenter_type | Datacenter type. |
| account_id | Unique identifier of the account. |
| object_id | Unique identifier of the account (same value as the account id). |
| discovery_credentials | The credentials related to the service account. |
| is_master_account | true when it is the root compartment. false when it is not the root compartment. |
| Network (cmdb_ci_network) | |
| name | The network name. |
| object_id | Unique identifier of the network. |
| cidr | The cidr of the network. |
| domain_name | The domain name. |
| state | The state of the network. |
| NIC (cmdb_ci_nic) | |
| name | The NIC name. |
| object_id | Unique identifier of the NIC. |
| public_ip | The public IP address. |
| mac_address | The MAC address. |
| primary | Set true/false according to the setup. |
| private_ip | The private ip address. |
| state | The state of the NIC. |
| Storage Volume (cmdb_ci_storage_volume) | |
| name | The name of the storage volume. |
| object_id | Unique identifier of storage volume. |
| state | The state of the storage volume. |
| volume_id | Unique identifier of the storage volume (same value as the account id). |
| size | The storage volume size. |
| size_bytes | The storage volume size in bytes. |
| Subnet (cmdb_ci_cloud_subnet) | |
| name | The name of the subnet. |
| object_id | Unique identifier of subnet. |
| cidr | The cidr of the subnet. |
| domain_name | The domain name. |
| state | The state of the subnet. |
| Virtual Machine (cmdb_ci_vm_instance) | |
| name | The VM name. |
| object_id | Unique identifier of VM. |
| state | The state of the VM. |
| memory | Memory size. |
| cpus | Number of CPUs. |
Tags are populated to the cmdb_key_value table and related to the relevant cmdb ci resource. In order to support it, the extension sections were created for the following resources:
- Autonomous DB
- Exadata DB
- Image
- Network
- NIC
- Storage Volume
- Account
- Subnet
- Virtual Machine
CI Relationships
| CI | Relationship | CI |
|---|---|---|
| cmdb_ci_oci_datacenter | Contains::Contained by | cmdb_ci_availablity_zone |
| CI | Relationship | CI |
|---|---|---|
| cmdb_ci_vm_instance | Use End Point To::Use End Point From | cmdb_ci_endpoint_block |
| cmdb_ci_endpoint_block | Implement End Point To::Implement End Point From | cmdb_ci_storage_volume |
| CI | Relationship | CI |
|---|---|---|
| cmdb_ci_oci_datacenter | Contains::Contained by | cmdb_ci_availability_zone |
| CI | Relationship | CI |
|---|---|---|
| cmdb_ci_os_template | Hosted on::Hosts | cmdb_ci_oci_datacenter |
| CI | Relationship | CI |
|---|---|---|
| cmdb_ci_oci_datacenter | Hosted on::Hosts | cmdb_ci_cloud_service_account |
| CI | Relationship | CI |
|---|---|---|
| cmdb_ci_network | Hosted on::Hosts | cmdb_ci_oci_datacenter |
| CI | Relationship | CI |
|---|---|---|
| cmdb_ci_vm_instance | Use End Point To::Use End Point From | cmdb_ci_endpoint_subnet |
| cmdb_ci_vm_instance | Use End Point To::Use End Point From | cmdb_ci_endpoint_vnic |
| cmdb_ci_endpoint_vnic | Implement End Point To::Implement End Point From | cmdb_ci_nic |
| cmdb_ci_cloud_subnet | Implement End Point To::Implement End Point From | cmdb_ci_endpoint_subnet |
| CI | Relationship | CI |
|---|---|---|
| cmdb_ci_nic | Hosted on::Hosts | cmdb_ci_oci_datacenter |
| CI | Relationship | CI |
|---|---|---|
| cmdb_ci_availablity_zone | Contains::Contained by | cmdb_ci_storage_volume |
| cmdb_ci_storage_volume | Hosted on::Hosts | cmdb_ci_oci_datacenter |
| CI | Relationship | CI |
|---|---|---|
| cmdb_ci_network | Contains::Contained by | cmdb_ci_cloud_subnet |
| CI | Relationship | CI |
|---|---|---|
| cmdb_ci_vm_instance | Hosted on::Hosts | cmdb_ci_oci_datacenter |
| cmdb_ci_vm_instance | Provisioned From::Provisioned | cmdb_ci_os_template |
| cmdb_ci_vm_instance | Provisioned From:Provisioned | cmdb_ci_compute_template |
| cmdb_ci_vm_instance | DR provided by::Provides DR for | cmdb_ci_avaliability_zone |
| cmdb_ci_avaliability_zone | Contains::Contained by | cmdb_ci_vm_instance |