Populating the CMDB

  • Release version: Washingtondc
  • Updated February 1, 2024
  • 3 minutes to read
  • Summarize
    Summarized using AI
    This content was generated using new OpenAI-powered functionality. Results are provided on an as is basis and are not guaranteed to be accurate or complete.

    Summary of Populating the CMDB

    Populating the Configuration Management Database (CMDB) can be accomplished through various methods, including Discovery, IntegrationHub ETL, Import Sets, external integrations, or manual creation of Configuration Items (CIs). Each method allows for the creation of records within the cmdbci table or its extended tables, ensuring a comprehensive inventory of configuration data.

    Show full answer Show less

    Key Features

    • Discovery: Automatically populates the CMDB by scanning the network for devices and gathering configuration, provisioning, and status information using probes and sensors.
    • IntegrationHub ETL: Facilitates the import and integration of third-party data into the CMDB by creating ETL transform maps, enabling data importation and transformation as needed.
    • Import Sets: Allows for the importation of data from various file formats (XML, Excel, CSV) into the CMDB, including establishing relationships between CIs through the cmdbrelci table.
    • CMDB Instance API: Enables direct creation or updating of CMDB tables programmatically.
    • Manual CI Creation: Provides options for manually creating CIs by navigating through the CI Class Manager or directly to specific tables.

    Key Outcomes

    By effectively populating the CMDB, organizations can maintain an accurate inventory of their IT assets, leading to improved configuration management practices. Automated methods like Discovery enhance efficiency, while IntegrationHub ETL and Import Sets streamline data integration processes. Manual CI creation allows for flexibility in managing specific configuration items as needed.

    You can populate the CMDB by using Discovery, by using the IntegrationHub ETL or Import Sets to import and integrate data from a third-party source, by integrating with an external CMDB, or by manually creating CIs.

    When you populate the CMDB with information, you create a record for each configuration item in the cmdb_ci table or on one of the tables that extend that table.

    Related ServiceNow® Store apps and reference information:
    • CMDB schema model: A collection of class diagrams and class attributes for key CMDB classes.
    • CMDB tables descriptions: Descriptions of key CMDB tables in the base system.
    • CMDB CI Class Models: A ServiceNow Store app that adds class models that extend the base CMDB class hierarchy. This includes class descriptions, identification rules, identifier entries, and dependent relationships if applicable. You can then use the added classes as any other CMDB base class.
    • Discovery patterns: A ServiceNow Store app that provides a library of Discovery patterns for discovering specific devices and applications in the industry.
    • Getting started with Service Graph Connectors: ServiceNow Store apps that provide pre-defined integrations for importing and integrating common third-party data into CMDB classes. Also includes the IntegrationHub ETL wizard for creating new ETL transform maps.

    ITIL configuration management auto-discovery

    The key to any configuration management business practice is the initial and ongoing inventory or discovery of what you own. The ServiceNow platform provides three options for auto-discovery:
    • The separate and highly robust Discovery product.
    • For organizations that want to leverage the discovery technologies they already have deployed (SMS, Tally NetCensus, LanDesk, and so on), the ServiceNow platform supports integrations to those technologies via web services. Scanned data can be mapped directly into the CMDB.

    For further information on designing, constructing, and maintaining the CMDB, see the CMDB Design & Configuration white paper.

    Discovery

    The Discovery product automatically populates the CMDB. Discovery searches the network for all attached computers and devices, then populates the CMDB with information on each computer/device's configuration, provisioning, and current status. Discovery uses probes, sensors, and patterns, to collect and process data about computers, servers, printers, a variety of IP-enabled devices, and the relationships between all the items found. Discovery also reports on any software which is running, and the TCP connections between computer systems, thereby establishing their relationships. This information is sent back to the instance and is used to populate the CMDB.

    For more information about Discovery see:

    Integrate third-party data using IntegrationHub ETL

    Use the IntegrationHub ETL to import and integrate data from a third party into the CMDB. Using IntegrationHub ETL, create ETL transform maps which are used for integrating data from specific data sources. IntegrationHub ETL guides you through importing source data, transforming any data if needed, and selecting target CMDB classes and attributes to map the data to. You then preview the integration results and adjust any configurations before scheduling recurring integrations.

    Visit the ServiceNow Store website to view and download common integrations.

    Import data from another source using Import Sets

    You can import data to the CMDB using Import Sets. Import sets find files of information (in formats such as XML, Excel, or CSV), import them, and transform them onto the required table. This process can be scheduled or performed on demand.

    To import relationships between CIs, use import sets to populate the table [cmdb_rel_ci] with information on the parent, the child, and the nature of the relationship. The [cmdb_rel_ci] table displays a list of all CI relationships and is useful when importing CI data.

    Figure 1. Import Sets overview
    Import set overview.

    CMDB instance API

    Use the CMDB instance API to populate the CMDB by creating or updating CMDB tables.

    Manually create a CI

    Create a single CI for a specific class. The role required is based on the settings of the class table you select for the CI.

    1. Use the CI Class Manager:
      1. Navigate to All > Configuration > CI Class Manager.
      2. Click Hierarchy to display the list of CI Classes. Select the class to use for the CI.
      3. In the class navigation bar, select CI List and then on the CI list view, click New.
      4. Fill out the CI form and then click Submit.
    2. Or, directly use a table:
      1. Navigate to All > Configuration and then elect the class to use for the CI, such as Business Services.
      2. In the navigation filter of the application navigator, enter the table label (such as 'Linux'), or the table name in the format of <table name>.list (such as 'cmdb_ci_linux_server.list'). Then, press Enter.
      3. In the list view of the table, click New and fill out the form fields for the table.
      4. Click Submit.