To support various customizations, the ServiceNow and vRealize Network Insight integration supports a generic configuration. The CMDB configuration must be in the JSON format.

The configuration includes:
  • the configuration items
  • the relation between the configuration items
  • the rules for the dependency graph traversal.
You can customize the CMDB configuration based on your implementations.
Note: When you change the configuration, a complete fetch happens and all the applications are recomputed. So, this process might take at least 30 minutes to appear on the Discovered Application Dashboard.
Field Name Description
fetchOnlyApprovedApplications Allows the boolean value to fetch only approved applications from ServiceNow. By default, the value is set to False.
nameBasedSearchForVm Allows the boolean value to indicate whether to create a custom VM search criteria with the VM name if the ServiceNow VM is not present in vRealize Network Insight. If the value is set to True, then a custom VM name criteria is created and count will be reflected when corresponding VM is detected in vRealize Network Insight without recomputing the application.

This can be used when you create the dependency graphs or the service map manually, without using Service Mapping. By default, the value is set to False.

ignoreWorkloadCheck Allows a boolean value to indicate whether to add an entity to the tier even when an associated workload entity does not exist.

This can be used when you create the dependency graphs or the service map manually, without using Service Mapping and when relationships are not defined till the workload layer. By default, the value is set to False.

ciGroup Defines configuration items and relationships to fetch from ServiceNow. This field allows the following properties:
  • Name: Name for the configuration item group
  • Value: List of ServiceNow class names that are part of this group.
  • ValueType: Allows CI_CLASS (the class name to fetch) and CI_VALUE.
    • CI_CLASS - to fetch the class.
    • CI_VALUE
      Note: vRealize Network Insight always fetches applicationClasses, workloadCIClasses, trackedCIClasses, workloadCIClasses, and relationClasses.
  • systemGenerated: Allows the boolean value to indicate whether the class is a user-defined class or a default class.
  • expandCIClass - Allows the boolean field to indicate whether to fetch the subclasses of the configuration item class listed in Value.
Rules for graph traversal Supports three types of traversal rules:
  • traversalRule: All allowed or valid traversals.
  • traversalStopRule: Traversals that are not allowed.
    Note: The rules in traversalStopRule have higher priority than the rules in traversalRule.
  • associationRule: Traversals that are allowed for the associated workload with entity.

Properties of a rule:

  • fromNode: List of ciGroup that are the source of the traversal.
  • toNode: List of ciGroup that are the destination of traversal.
  • relationship: List of ciGroup that have a relationship in a type of traversal.
  • priority: If a ciGroup matches two rules, then the rule for the ciGroup is set based on the priority. Greater the priority number higher the priority value.
applicationClasses Lists all entry point configuration item classes for the graph traversal. These classes represent the configuration item types which are used as application classes in the CMDB.

The default configuration uses cmdb_ci_service_discovered class. This class represents applications created by the ServiceMapping feature of ServiceNow.

workloadCIClasses Lists all the configuration items that host either a software-based service or an operating system like Linux Server, Windows Server. Example, VMs, AWS instances, Physical Servers.

Typically, workload configuration items are placed towards the end of the dependency graph. Tiers are not created for the configuration item classes that are mentioned in this group.

The default configuration contains the following configuration item classes:
  • cmdb_ci_computer: Represents all compute related configuration items. This is a super class for all Linux and Windows Servers.
  • cmdb_ci_vm_instance: Represents virtual compute entities like VMs and AWS instances.
  • cmdb_ci_vmware_instance: Represents VMware VMs.
trackedCIClasses Lists all configuration items that can be part of the dependency graphs, but are not applicationClass or workloadCIClass. The configuration items in this group are required for the graph to complete from applicationClasses to workloadCIClasses.

vRealize Network Insight creates tiers for all the classes mentioned in trackedCIClasses, unless the class is mentioned under ignoredTierCiClasses.

relationshipTypeClasses Lists all related configuration items represented by relation configuration items classes or relation types.

The default configuration uses * to fetch all relation types.

workloadRelationshipTypeClasses: lists relation types which typically represent the relations with workload entities. Following are the relations supported by default in ServiceNow:
  • Hosted on::Hosts
  • Instantiates::Instantiated by
  • Runs on::Runs
  • Virtualized by::Virtualizes
ignoredCiClasses Lists all the configuration items that vRealize Network Insight must ignore to fetch from ServiceNow CMDB.

This is useful while fetching a super class, to ignore the unnecessary subclasses.

By default, cmdb_ci_vcenter_server_obj is listed under ignoredCiClasses as vCenter Server are not required for the application discovery.

ignoredTierCiClasses Lists all the configuration items for which tiers must not be created.