Asset Management Integration Engine (AMIE) – Part 2

In the previous article we discussed the general principles behind AMIE and how to configure and connect it to an asset management tool. In this article we expand on this, and discuss how to customize and develop your own mapping files for more granular control of the information sent to LiveTime’s CMDB.

Naturally, it is important that users have a very good technical understanding of the asset management system they are connecting to.

Mapping

LiveTime provides discrete control over every aspect of the Item import process from third party discovery servers. Using an XML based mapping file, you can edit and create new descriptor files to add new functionality to the system dynamically.

The XML mapping file is divided into various sections. The master wrapper tag is the Import Definition, as it provides the name of the asset management system and what will be populated in the popup menu.

<IMPORT_DEFN SERVER="LiveTime Discovery" VERSION="2007" AUTHOR="LiveTime Software Inc.">
  <ITEM CATEGORY="Hardware" ID_KEY_FORMAT="Client.Client">
    <ASSET_ID_LIST PARAM_NAME="ASSETID">
      <SELECT>SELECT computer.client</SELECT>
      <FROM>FROM com.livetime.assetimport.Client computer</FROM>
      <WHERE>computer.propAddress is not null</WHERE>
      <SORT1 ASCENDING="true">client</SORT1>
      <ALIAS>computer</ALIAS>
    </ASSET_ID_LIST>

The next layer outlines the Item Categories that are to be imported from this definition. By default most descriptors include both Hardware and Software. Within each of these sections are various tags that map the foreign tables into LiveTimes’ CMDB format.

The tags contain pseudo SQL objects, which are then mapped internally by LiveTime. The normal representation is the LiveTime property object on the left and the foreign mapping parameter on the right.

<ITEM_PROPERTY FIELD="field1" VALUE_PREFIX="" VALUE="cpu.propSize" VALUE_SUFFIX="MHz" TYPE="LOOKUP" />
    <ITEM_PROPERTY FIELD="field2" VALUE_PREFIX="" VALUE="memory.propSize" VALUE_SUFFIX="KB" TYPE="LOOKUP" />
    <ITEM_PROPERTY FIELD="field3" VALUE_PREFIX="" VALUE="computer.propMacAddr1" VALUE_SUFFIX="" TYPE="LOOKUP" />

In the above example, “field1” represents the name of the LiveTime field within the Hardware category of the CMDB. A quick review of the Hardware category within LiveTime (listed in system order), identifies the attribute name it actually references. In this example “field1” maps to the CPU field as shown below.

Inheritance

When software assets are mapped into LiveTime, they are automatically linked as children of the parent hardware using a special relationship within LiveTime’s CMDB called ‘Parent of / Child of (Inherit Owner)’. LiveTime supports many types of relationships that are defined in the ITIL or CMS > Relationships window of the Administrator role.

Note the ‘Inherit Parents Ownership’ option, means that all Items created as children of a hardware device that uses this Relationship Type, in this case all the software, adopts the same owner as the hardware. This is the default behavior in all the built-in descriptors.

Ownership

Many asset systems are able to detect the ownership of each device, most commonly desktop computers, through centralized authentication servers based around LDAP. Since we know who is using the device, it is possible to map the owner to the hardware tree and therefore, to the software on that machine.

Since LiveTime also permits centralized authentication, owners can be associated to each Item during the synchronization process. However, this depends on the following:

  • LiveTime is setup to use centralized authentication
  • The Asset management system uses centralized authentication
  • The Asset management system supports Asset ownership ties
  • The XML Descriptor is configured to bring across ownership information.