Extending the CMDB

//Extending the CMDB

Extending the CMDB

O

ne of the most basic needs that a customer has when building out their CMDB is extending it to match the types of CIs that they’re currently using in their company.  This is especially true when bringing data in from a 3rd-party CMDB (such as IBM’s CCMDB, HP’s uCMDB, etc) with Service-now.  Some of these CMDBs have hundreds of class types with scores of fields for each class.  How can you get the 3rd-party data into Service-now when the schema is so different?

There are essentially four main steps to accomplish this: decide what classes and fields need to be brought across, create a mapping document, extend the Service-now CMDB to accept the new classes, and send the data from the 3rd party CMDB to Service-now.

1) Decide what classes and fields should be included in Service-now

Every integration discussion starts out the same, “Can Service-now receive my 200+ different CI class types and how long will it take for us to do this?”  While it is good to know the capabilities of Service-now before embarking on such a task, perhaps the more important question that product managers should be asking is, “out of these 200 class types, what are the +/- 20 classes that make sense to integrate with our service desk?”  The first answer is usually, “All of them!”  However, when looked at more carefully, it usually makes sense to only bring over a small subset of the entire collection.

2) Create a mapping document

The difficulty of this step largely depends on the number of classes and fields that were decided in step one.  Again, you’ll want to pear down the number of fields in each class to be small and relevant.  The more common items such as IP address and MAC address will be similarly named in each system.  Determine what fields are missing in SN in this step so that you know which fields need to be added in step 3.

3) Extend the Service-now CMDB

If steps 1 and 2 were done correctly, this step should be straightforward.  The attached video is a demonstration that I put together to show how simple it is to extend the CMDB and how to go about doing it.  You should use your mapping  document to show you which classes need to be added and what fields need to be in those classes.  For the classes that already exist, you will simply be adding the new fields to the already existing class.

4) Send the data to Service-now

This is the step that scares some people and is mistakenly seen and the most difficult and time consuming step.  However, when the previous steps are completed beforehand, this step is actually the simplest of them all.

The most common method of bringing CMDB CI data into Service-now is by using a CSV/XML file. This is a perfect choice when you’re wanting to do a one-time load of CI data into your system. This can be done by creating a new data source and attaching your CSV / XML file to the record. More details on this can be found here: http://wiki.service-now.com/index.php?title=Importing_Data_Using_Import_Sets

In a CMDB integration, the most common way of sending data to Service-now from a 3rd-party is by using JDBC connection to the source of record.  A simple (or not so simple) SQL statement retrieves the classes that you’re interested in and sends them to Service-now to be mapped.

Another common way of sending data to SN is by using web services.  If your CMDB or discovery solution supports sending SOAP, then you might consider this option as well.  I cover this in the attached video as well.

A CMDB integration can be daunting.  However, if you follow this guide, you should have a good idea how to approach it in a way that encourages a successful and timely outcome!

By | 2010-10-21T15:03:57-06:00 February 24th, 2010|Categories: CMDB|Tags: , |7 Comments

About the Author:

Jacob is the co-founder of Crossfuze, a ServiceNow implementation product and services company. He is one of the foremost ServiceNow integration experts in the world and designed/wrote many of the plugins found in the ServiceNow product today. Prior to co-founding Crossfuze he worked at ServiceNow during its startup years to write the SSO solutions and 3rd-party integrations.

7 Comments

  1. John February 25, 2010 at 12:33 am - Reply

    I have been involved in some recent CMDB integration discussions. This was a good primer. You nailed the steps on this!

  2. m13l13 March 2, 2010 at 8:02 pm - Reply

    I like it… If you take 2 steps back and look at the collection component, this may fit nicely into this post: http://blog.sintrex.com/?p=142

    I’ll link back to this from our blog as well, thanks 🙂

  3. William April 28, 2010 at 3:57 am - Reply

    Maybe it’s me but I cannot see the video that is referenced in step 3.

    I need to see all the different “Classes” for the SNC CMDB and I have not been able to find this table, less to add classes to it. can anybody help?

  4. Martijn May 4, 2010 at 11:54 pm - Reply

    Don´t forget to take translations of fields into account in the second step. Apart from that, you will also need to remember to interface changes in base data / master data (such as lookup lists), too.

  5. Jacob Andersen May 5, 2010 at 2:20 am - Reply

    Martijn,

    Thanks for the feedback. You are correct, those items would be good additions the second step.

  6. Vikas Sharma September 17, 2010 at 6:21 pm - Reply

    this is very helpful…….!

Leave A Comment