CMDB Asset Import

Mukti Shah
Tera Contributor
Hi There, Is it recommended or allowed to use the cmdb_ci table as an identifier table for third-party application development?
 
 
 
1 REPLY 1

CMDB Whisperer
Mega Sage
Mega Sage

I think this question needs more clarification. 

 

1.  Given the subject of your post, what are the "assets" you are importing into the CMDB?

2.  In the context of importing "assets" into the CMDB, is your question about which table you should be importing into if they refer to applications developed by a third party?

 

Regarding question 1, we don't technically import "assets" into the CMDB per se.  In ServiceNow's terminology and data model, the asset represents a thing of financial value, whereas the configuration item (CI) represents how that asset is configured for use or service.  The asset is recorded in the Asset (alm_asset) table or one of its child tables, and the CI is referenced in the Configuration Item (cmdb_ci) table, or one of its child tables.  The asset and CI pair reference one another and synchronize with one another.

 

Regarding question 2, an "application" won't typically have an asset record at all.  There are three main CI classes that make up what we loosely call an "application":

  • Business Application (cmdb_ci_business_app) - Represents the technology solution itself, i.e. the software solution that was selected to serve a specific purpose (i.e. provide a business capability), whether that solution is purchased, licensed, or built from scratch, regardless of whether it was built in-house or by a third party.
  • Application Service (cmdb_ci_service_auto - and several child tables) - Represents individual deployed instance of a business application, and all of the smaller applications, components, infrastructure and configurations that make up the entire system for that instance.  One business application typically has several deployed instances across different environment types (e.g. Production, Test, QA, Development) and possibly for different locations or organizations, but all of them provide the same basic business capabilities.
  • Application - (cmdb_ci_appl - and several child tables) - Represents a specific piece of software that is installed and running as a process on a specific server, typically as part of an overall system, or Application Service.  For example, a single Web-based application deployed in an environment as an Application Service will contain multiple smaller Applications such as a Web Server, Application Server, Database Instance, and other components that must be running as part of the application.  Typical examples could include Tomcat, Apache, SQL Server, or a proprietary software application executable that was built in-house or by a third-party.

Again, note that none of these "applications" are actually "assets" from a ServiceNow perspective.  They are configuration items.  And they should be represented as one or more, or probably all, of the application classes listed above.


The opinions expressed here are the opinions of the author, and are not endorsed by ServiceNow or any other employer, company, or entity.