Вы находитесь на странице: 1из 21

10/15/2014

Blog: BMC Atrium CMDB ... | BMC Communities

Communities
Products

Market Topics

bmc.com

Partners

User Groups

Customer Programs
BMC.com > All Places > Products > BMC Atrium >
BMC Atrium CMDB > Blog

Social Help
BMC Social

search bmc.com

YouTube Channel

BMC Podcasts

BMC Atrium CMDB

1 2 3
31 Posts

Delivering on a Promise of 'Why a CMDB?'


- Part 2

Previous
Next

Posted by Paul Buffington Sep 25, 2014


Share:

Google +

Buffer

In the first of the Effect-Tech CMDB webinar series we discussed the upfront aspects of properly setting the scope of your CMDB initiative. We
discussed the high level implementation choices and why a use-case driven approach might be the most optimal method to deliver value more
quickly. After discussing these options, we concluded part 1 with the introduction of a service model architecture that can be used to initially
model your IT environment and expand over time. If you missed the first webinar you can watch a replay of Part 1 at Effect-Tech Webinars
Please join us on October 9th as we continue the conversation in part 2 of this webinar series. We will explore the BMC Atrium classes and which
classes are most relevant to support the service model architecture introduced in part 1. Furthermore, we will talk about the role of discovery and
how it can and cannot be leveraged to keep your CI's up-to-date. After discussing the CMDB classes, we broach the topic of CI relationships and
simplifying which relationship types you should use to drive meaningful value without added complexity.
With classes and relationships out of the way, we steer clear of CI attributes for the time being and introduce the need to define multiple service
model views that allows users to better understand the numerous CI's and their relationships that result when a complex service model is built out.
Finally, we will explore the role of the CMDB to assist application support teams in the areas of event and incident management - and potentially
why integration to discovery tools are NOT required to provide value for these app groups.
Time permitting, we will introduce Effect-Tech's CMDB methodology and best practices that your organization can use to implement CMDB in a
structured and repeatable way. This methodology avoids the common implementation mistake that essentially turns your CMDB project into a data,
discovery, and reconciliation exercise. By implementing the CMDB using this systematic approach, we believe your organization will gain more value
from your CMDB project - more quickly.
This webinar series is presented by Rick Chen, Managing Principle at Effect-Tech. Rick shares from his wealth of CMDB knowledge and field experience.
Agenda:
CMDB class discussion
If it's all about relationships - what, why, and how much?
CMDB service model views - and why it matters
Addressing the needs of application support teams
Introducing implementation best practices to get more value, more quickly out of your CMS / CMDB
Date/Time: October 9th at 9am (PST)
Space is limited so reserve your webinar seat today - Register

118 Views

0 Comments

Permalink

Categories: Best Practices, Podcasts and Videos

Tags: cmdb, best_practices, service, service_models, service_model_architecture

CMDB @Engage
Posted by Stephen Earl Sep 14, 2014

https://communities.bmc.com/community/bmcdn/bmc_atrium_and_foundation_technologies/bmc_atrium_cmdb/blog?start=0

1/21

10/15/2014
Share:

Blog: BMC Atrium CMDB ... | BMC Communities


0

Google +

Buffer

I'm really looking forward to meeting our customers at


BMC Engage in Orlando, Florida starting October 13th. I'm hoping to catch up with those of
you I have met before and also to meet those of you I haven't met yet! I hope you will catch me in the corridors or at break or meal times to talk
CMDB.
As part of my Engage activities I will be presenting Session 63 CMDB, With Great Power Comes Great Responsibility along with
Darius Wallace where
we will be discussing CMDB Futures, Best Practices for Implementation of CMDB in your business. The CMDB is part of the core of any ITSM
implementation and implemented correctly can bring great benefits to your ITIL based processes, a great CMDB implementation can make you a
Hero. However it is easy to become so focused on the CMDB implementation that it, unintentionally, becomes the Super Villain of your environment.
We will be discussing our new Best Practices resource, how we at BMC intend to help your implementation become a Hero and discuss our
experiences in the field working with customers.
This session contains information you will find useful no matter what stage your implementation is at, no matter your skill level Introductory,
Intermediate or Advanced
We look forward to meeting you all in Orlando at the Swan & Dolphin in Walt Disney World from 13th - 16th October!

176 Views

0 Comments

Permalink

Tags: bmc_atrium_cmdb, engage

The Pulse: Finding Service Context at the


center
Posted by Daniel Hudsky Aug 22, 2014
Share:

Google +

Buffer

It is often said service is everybodys business. If you approach work in I.T.as a function of Business Service Management, then service is literally at the
very center of your business and your acronym. So how do you measure your impact on service? Everywhere and always. This is a story of a personal
journey looking where to configure it, and finding it built into the very fabric of the application. Just like service in the general sense.
So, I work in support and I thought I was doing pretty good with the daily "here I come to save the day" routine by now. Meeting after meeting, knocking
out one solution after another. Life was great. Then one day I got faced with an upgrade of AtriumCore 8.1 which added a new link to the AtriumCore
console that was labeled "Service Context Administration". So, of course I had to pursue it because something new is always interesting to me and
clicked the link out of curiosity. Nothing happened. I asked about it during a meeting with some colleagues and learned "It's an Asset Management
feature, it's configured for the Asset Management console". I was fine with that and went on with my life, but a seed of curiosity was planted.
Then one night while roasting peanuts and deep frying a fish, couple dwarves from the Lone Mountain came over. OK, they were not exactly dwarves,
but my adventure with Service Context began. I think it started with someone asking about UDDI Atrium Web Services, which turned out to actually
be the AR Server Midtier UDDI which does not resolve and hence we wrote that off as "AR Server" issue. But then "Atrium Web Service" and "Service
Context" came up in the same sentence. I looked at the documentation and once again realized that this is a service provided by the AR Web Services
and dismissed it. Once again, the murky waters of lake "Service Contextia" have been laid to rest to live another day.

But then, the date is August 12th 2014. We're having a team meeting and I am showing tricks on how to check and verify functionality of the AtriumCore
console which includes Federation configuration. I noticed that Service Context was now added to my lab system's Federation Manager console where I
had installed the 8.1 SP1 patch. Suddenly a government approved light bulb went off in my head. This must be it! Service Context was staring right back at
me.

https://communities.bmc.com/community/bmcdn/bmc_atrium_and_foundation_technologies/bmc_atrium_cmdb/blog?start=0

2/21

10/15/2014

Blog: BMC Atrium CMDB ... | BMC Communities

At this point I thought that this is going to be very simple. Federation is just a matter of having a plugin configured in the ar.cfg and loaded as java
process with the Atrium Shared Java Plugin (via pluginsvr_config.xml)
I checked that all is in order and then saw the Launch link in AtriumExplorer. At this point I thought I conquered the mountain and published a Webex
recording on how to make the best of the Service Context. That recording is now available on the WebEx service site. Click the link below to play it if you
like to see the details:
"How to enable ServiceContext link in AtriumExplorer"
https://bmc.webex.com/bmc/lsr.php?RCID=9d7bd305a80e4f3a96d38f6e93ef5c10

Duration: 5 min 26 sec


At this point I thought the matter is closed. I've put on my fedora hat, flipped my rain coat collar up and walked into the rain.
Next day I got an unexpected reply: This was still not it!
So, what could this possibly be? What is this "Service Context"? Let's go back to basics and see what the documentation says about it.
I downloaded the entire AtriumCore Help Documents package from EPD and started to look for "Service Context" and also checked the iDocs:
Troubleshooting BMC Atrium Service Context - BMC Atrium Core 8.1 - BMC Documentation
And now I hit the jack pot. Finally I found what I was looking for. So, if you're still reading this you probably want to know what it really is.
Here it goes in my own words. Say that you're in Asset Management console and you're looking at a list of ComputerSystem you need to work with. You
need to know if this system has any Business Services associated with it and what impact on those services you'd have if you were to put this system in
maintenance.
So, my confusion was whether this is an AtriumCore Web Service or if it's served by the Midtier. And the answer is The Midtier!!
I've captured the service registration below:

Here you can see that the Service Context is using the midtier arsys root directory to register it.
That's it. The installer actually did this already, so there was nothing for me to configure.

https://communities.bmc.com/community/bmcdn/bmc_atrium_and_foundation_technologies/bmc_atrium_cmdb/blog?start=0

3/21

10/15/2014

Blog: BMC Atrium CMDB ... | BMC Communities

So, basically this is the outcome of the quest. Start here:

And get this "Service Context" for that computer system Dell Rack System - 517P95J:

Seems too simple in hind sight.


In summary, if you're interested in using Service Context, but making that work seems like a quest to the Lost Mines of the Lonely Mountain, then perhaps
sharing my personal experience with this module can be of some help. I think just understanding of what the "context" means can help. A ComputerSystem
can be investigated from ITSM Asset Management console for context of related business services and this is what the Service Context feature of the
AtriumCore is all about. Did you have a similar experience?
To see more like this, see

409 Views

9 Comments

BMC Remedy Pulse blogs.

Permalink

Tags: customer_support, pulse

The Pulse: Reconciling with Identification


rules that use ADDMIntegrationID can
https://communities.bmc.com/community/bmcdn/bmc_atrium_and_foundation_technologies/bmc_atrium_cmdb/blog?start=0

4/21

10/15/2014

Blog: BMC Atrium CMDB ... | BMC Communities

have negative impact


Posted by Manish Patel Aug 7, 2014
Share:

Google +

Buffer

Recently, I was involved in helping customer to resolve some data issues. There were duplicate data in different CMDB classes populated in the ADDM
dataset as well as in the production dataset. The consuming applications were impacted due to inaccurate data in CMDB. While analyzing this, we
found that the root cause of duplicate CIs in the production dataset (i.e. the asset dataset) was mainly due to improper reconciliation identification
rules. The ADDM reconciliation job was using ADDMIntegrationid as part of identification rule which caused duplicate CIs E.g. there were two identical
computer system CIs in the asset dataset with different ADDMIntegrationIds. This is an example of how critical the reconciliation process is to
maintaining the quality and accuracy of configuration items in your CMDB.
Before we go further on ADDMIntegrationId use, lets understand how the ADDMIntegrationID is used by ADDM and CMDB.
The ADDMIntegrationId attribute in CMDB class holds a unique key populated by ADDM as part of CMDB Sync operation. This ADDM specific key helps
the CMDB sync operation to decide whether a CI already exists in CMDB before performing the insert or update operation.
Knowing that the ADDMIntegrationid is a unique Key to identify a CI, its tempting to use it in reconciliation identification rules. This is the most
common mistake seen in CMDB data issues. This attribute has in the past been used as work around in CMDB reconciliation rules for Software Server,
Database and Cluster CI classes. But with the fix described in KA411090 and this work around is no longer needed.
For reconciliation identification activity, it is very important to use attribute(s) which can provide CI uniqueness in reconciliation identification rules,
and its equally important to use discoverable CI attributes. E.g. for computer System, serial number, host name & domain attributes to determine CI
uniqueness.
Here are the few rules I follow when investigating issues like this:
1) Make sure you understand why there are errors before implementing changes to RE rules.
2) Avoid using ADDMIntegrationId for strong member CIs e.g. Computer System. If I am tempted to do this, revisit rule 1 above.
3) Using ADDMIntegrationId for weak class members is less risky because they dont have sufficient information in attributes to identify CIs uniquely
e.g. Processor, Monitor, Product etc. You can learn more about how to investigate data issues here
I hope this helps. Please rate my blog to let us know if it was useful. For more like this, see

340 Views

1 Comments

BMC Remedy Pulse Blogs.

Permalink

Tags: atrium, cmdb, bmc, customer_support, re, pulse, identification_rules, reconciliaton, engie, addmintgrationid, cmdb_data_issues

Federation in BMC Atrium CMDB


Posted by Kim Wharton Jun 24, 2014
Share:

Google +

Buffer

Hear from Amit Maity, a senior technical instructor at BMC Software.


Amit will review Federation in BMC Atrium CMDB including different types of data, provide considerations and recommendations on federating data,
review the methods of federation and provide a demo.

https://communities.bmc.com/community/bmcdn/bmc_atrium_and_foundation_technologies/bmc_atrium_cmdb/blog?start=0

5/21

10/15/2014

Blog: BMC Atrium CMDB ... | BMC Communities

View our IT training for Atrium CMDB


Join the
397 Views

BMC Global Services community. Hear from experts in consulting, education and our centers of excellence.
0 Comments

Permalink

Categories: Podcasts and Videos, Demonstrations

Tags: training, education, consulting

The Pulse: The good and bad of inventory


retention (in BMC.ASSET dataset)
Posted by Daniel Hudsky Apr 30, 2014
Share:

Google +

Buffer

I'd like to use terminology like "age old" idea in this case, however it's bit early to call software issues "age old" just yet because software has not really
been around for ages just yet. But then again when I look at my 10 year old son there I could fit a couple "ages" of 10 year olds into the era where
software has been around. So I think I'll be OK to say that the concept of retaining software records for a specific purpose has been linked to an "age
old" problem with that type of retention. In our case, the case of BMC AtriumCore CMDB, that type of record would be an Asset record, a CI,
Configuration Item or what some may think of or understand as "an inventory".
Inventory records are definitely useful to have. Specifically for trends, cost audits, outage research and so on. Especially if the status of the record has
been tracked for historic changes and what we refer to as Asset Life Cycle (AssetLifecycleStatus). You can see when the CI was Ordered, Deployed, End
of Life'd and Deleted. All useful stuff. All of these lifecycle states have their purpose and a CI will live very happily in the BMC.ASSET dataset. But not
"ever after". Enter the arena: Mark As Deleted = Yes.
You see the last status I've listed, namely "Deleted", is actually an instruction for the CMDB workflow to purge that record and hence that record is "no
more" once BMC AtriumCore Reconciliation Engine (RE for short) reconciles that data. OK, so why is this a problem?
The issue with this is people's expectations on what these records should be and their presence in the BMC.ASSET dataset is that they are indeed
inventory records and they should be retained even if they are marked as deleted, or also known as "soft" deleted. The record is still present in the
database, but no longer an active asset in the production environment.
So, on first thought that should actually be no problem. The CI is there for me to look at historical changes that include its time of order, deployment
and removal (deletion) from production. No issues there. The problem is with the relationships that were hosted on that computer.
Let me explain why.
A typical CI is not a standalone record, it is related to other CIs and these relationships have attributes. For example we have cardinality, where the CI
relationship can be defined as one to many, many to one and many to many. Then there is Weak type relationship where the CI on the "left" side of
the relationship has to exist before the "right" side can be detected by some means of electronic discovery. This means that without the CI on the left,
usually a ComputerSystem CI, none of the hosted components on the right would exist. There may be a license cost related to the operating system
that's running on that computer, but no discovery tool could scan it if the computer is not deployed and turned on. Additionally there is a Cascade
Delete option which is not enabled out of the box but can be toggled to be enabled for Hosted System Component relationships.
So, back to "Mark As Deleted = Yes", which I am going to refer to as MAD.Y and MAD.N for Yes and No. What is not immediately obvious is that there is

https://communities.bmc.com/community/bmcdn/bmc_atrium_and_foundation_technologies/bmc_atrium_cmdb/blog?start=0

6/21

10/15/2014

Blog: BMC Atrium CMDB ... | BMC Communities

workflow that will act on changes done to MAD. All relationships are removed from a CI when the MAD.Y is set. If you have the Cascade Delete on, then
MAD.Y will also propagate that MAD.Y flag to the Hosted System Component CIs. This means that the computer system will be set for deletion on the
next Purge activity as well as the Operating System that was hosted on it. This means that if you're tracking the license of that Operating System then
that record would now be gone.
This can be a problem for customers that like to retrace the license management back to the Computer System on where it was hosted. Generally end
user's Operating System would not be a big deal, but Oracle license or Server license that can easily exceed $10,000. Losing track of that CI could
present issues when Audits are conducted. So, keeping the ComputerSystem and the hosted Product CIs now becomes an inventory issue. What do
we do with these records? Once they are MAD.Y their relationship is fragmented and not backward traceable without some effort. Certainly not via
automation. However this is exactly what ends up happening when Purge activity is not performed on that data in BMC.ASSET. Eventually it will
require some clean up. And that is bad because nobody is very happy when they have to do it.
We'll have cases that arrive in our incident management tracking system where customer may complain about performance, or errors seen in
reconciliation logs related to Multiple Matches found. Many of these issues result from data retention policy where the customer does not allow Purge
of the MAD.Y records from BMC.ASSET for the reasons I've outlined above. However, it does not have be that way.
As of now, most Reconciliation jobs use this sequence:
Identify
Merge
Purge (or Delete) BMC.ADDM and BMC.ASSET (Identified Only)
Although this sequence makes the most sense, it includes the not so popular Purge of the MAD.Y records from BMC.ASSET. The truth is that if you
want your data to be healthy then it needs to include the Purge. However, not all is lost. There is a better sequence that allows record retention.
Identify
Merge
Copy Dataset (with a qualificatn of "MarkAsDeleted = Yes" AND (ClassId = "BMC_Product" or class id of interest))
Purge (or Delete) BMC.ADDM and BMC.ASSET (Identified only)
In this scenario you can use a qualification to first copy all CIs you're interested in where the MAD.Y is set and ClassId = 'BMC_COMPUTERSYSTEM AND
ClassId = 'BMC_PRODUCT' or your asset class of interest.
Please see Jared Jones' PULSE blog on License Management:

https://communities.bmc.com/community/bmcdn/bmc_it_service_support/bmc_asset_management/blog/2013/11/08/the-pulse-getting-started-in-softwareWhere covers new feature specific to Asset Management License Management :


" SP1 includes the expanded capabilities. If you get it installed you will see quite a few additional License Types out of the box. Essentially all
the previous License Types now have an additional "_All" type that includes the other software classes."
Your copied dataset can then hold the name like BMC.ASSETS.PURGED where you can return to at any given time and run reports on.
It would only hold records that were at one point Marked As Deleted in the BMC.ASSET dataset and purged. Keep in mind that the "License
Management" will be updated accordingly as configured in the Licensing Job related to the reconcilation job that handles the ADDM data.
That said, it just means that this is not yet fully automated out of the box or even considered as Best Practice because CMDB is not intended for asses
inventory retention, but within the parameters of capabilities of the AtriumCore and not all that complex to add as a functionality enhancement.
In conclusion, is inventory retention in BMC.ASSET dataset good or bad? Well, it's definitely not in the design of the CMDB which is supposed to keep
records of Configured items in production environments and it can cause data clean up issues. So, my vote tends to lean in the direction of "bad". You
can do better with this "age old" problem.
I hope this helps, please rate my blog below or add comments on your experiences. See more like this at

BMC Remedy Pulse Blogs.

Daniel Hudsky

527 Views

1 Comments

Permalink

Categories: Best Practices, Data Management, Consuming Applications, Administration

Tags: customer_support, ci_in_inventory, deleted, ci's, pulse

The Pulse: The Pre-checker becomes


Remedy Configuration Check Utility
Posted by Manish Patel Mar 20, 2014

https://communities.bmc.com/community/bmcdn/bmc_atrium_and_foundation_technologies/bmc_atrium_cmdb/blog?start=0

7/21

10/15/2014

Blog: BMC Atrium CMDB ... | BMC Communities

Share:

Google +

Buffer

This post shares some diagnostic enhancements included in the Remedy Configuration Check Utility in BMC Remedy AR System Server (ARSystem)
and BMC Atrium CMDB Suite (CMDB) version 8.1.01 (Service Pack 1). The goal of the enhancements it to simplify the process of identifying, correcting,
and reporting on configuration issues in the product.

A little background
The earlier post
12 steps toward a systems approach to diagnostics outlines different kinds of diagnostics which may be required for products such
as BMC Atrium CMDB, and the subsequent post
7 Tools to verify BMC Atrium CMDB is working well describes the diagnostics available in CMDB at
the time.
In Service Pack 1, we looked at how we could automate or simplify these diagnostics so they can be executed and collected more easily when
required. We looked at the AtriumCoreMaintenanceTool Health Check and the pre-checker described in this post
BMC Remedy Pre-checker for Remedy 8.1 (unsupported) to see which would be the appropriate tool to extend. The Health Check functionality in
the Maintenance Tool is also at the completion of the installation as the Post Install check. This design limits which checks can or should be run
from it. For example, if we automated the process of checking recommended configurations they would always fail in the post install check as there
would be no opportunity to configure the product yet. So we decided the next step in the journey of automating diagnostics was to extend the Prechecker to provide a simplified user interface to execute diagnostics.

See the product documentation to learn more about the features of the BMC Remedy Configuration Check utility and how to access it.
The Pre-Checker was originally designed to detect environmental issues for install and upgrade, but since the scope of the tool has changed, it has
been renamed the Remedy Configuration Check utility. It can be used not only to check the environment configuration before install or upgrade, but
also to detect product configuration issues which are the causes of many post installation issues. This tool will also enable us to automate frequent
issue troubleshooting steps.

BMC Remedy Configuration Check utility


The goals are to 1. Help administrators to troubleshoot configuration issues
2. If the administrator is not able to resolve the issue, make it easy to gather and share test results

How it works
The BMC Remedy Configuration Check Utility is included with BMC Remedy AR System 8.1.01 (Service Pack 1) media. The file can be extracted to the
system to begin using it. For more information on downloading and extracting the utility, see To Obtain the BMC Remedy Configuration Check

utility.

CMDB checks included in BMC Remedy Configuration Check utility


In Service Pack 1, the following list of checks has been added for CMDB.
1) CMDB - System Information
This feature makes it easy to collect information about the system easily. This feature may also make it easier to compare different systems
running BMC Atrium CMDB or report it when working with Customer Support.
Note - Going forward, this check will be moved in the information gathering category.

2) CMDB Metadata Check


This check detects for pending CMDB class changes. This check performs the same test which can be performed manually using the command
line cdmchecker tool with the g option.
You can find more info on cdmchecker in the product documentation.

3) CMDB Class Overlay Check


Overlay on CMDB could cause issue in upgrade process. This check detects overlay on CMDB classes

4) CMDB - RE Private Port


We recommend that Reconciliation Engine private queue configuration for performance reasons. If private queue configuration is not configured
correctly, then there wont be any performance gain. This check can be used to detect improper private queue configuration.

https://communities.bmc.com/community/bmcdn/bmc_atrium_and_foundation_technologies/bmc_atrium_cmdb/blog?start=0

8/21

10/15/2014

Blog: BMC Atrium CMDB ... | BMC Communities

5) CMDB - Index Check


This check will provide references to out of the box indexes in CMDB version 8.1.01 and validate the indexes exist. It will report error if any index
is missing.

This blog post hopefully provides a better way of why the Pre-check utility was renamed and some of the new capabilities added. This expanded
functionality should make it easier to diagnose issues. A few checks were added to this tool in version 8.1.01.
Stay tuned for new additions in future releases.
I hope you found this blog useful, please rate it below or add comments. To find similar information, see

662 Views

Permalink

1 Comments

BMC Remedy Blog Posts.

Tags: cmdb, configuration, support, customer_support, check, config, checker, pulse, pre-checker

Your new BMC Atrium CMDB product


manager is...... Me!
Posted by Stephen Earl Mar 20, 2014
Share:

Google +

Buffer

Hi All,
I have recently joined BMC Software as the new Product Manager for the Atrium CMDB and thought I should do an introduction to myself so that you
can get an idea of what makes me tick and also understand my drive to make the Atrium CMDB a tool that can drive realisation of value for you our
Customers.
I have been part of the BMC Remedy world since 2004 when I worked for an ISP and was given the mantle of 'the Remedy guy' for the entire
organisation, I had never seen Remedy before and actually had no idea what it was. After a mild baptism by fire I immediately saw the value that the
Remedy Action Request System could give the Network Operations Centre I ran at the time and also the wider organisation, back then we were rolling
out ITSM 5.1.2.
Since that time I have been involved in many rollouts of BMC Remedy ARS based solutions, and most recently I lead the Remedy development
organisation for BlackBerry rolling out ITSM across that organisation and recently spent sometime at ServiceNow before coming to BMC Software.
My desire is to actively engage with the community (you) and have what I hope are active discussions through this forum and others in order to
ensure that we are building a tool that helps you solve your business challenges on a daily basis. Part of my role here at BMC is to ensure that your
voice is heard and that we are investing in the right areas to drive our product and your success forward.
When I'm not talking about CMDB, working on the product roadmap or out talking with you, our customers, I spend my spare time watching movies,
enjoying company of friends and a new past time of Husky Scootering, feel free to ask me more about that if you really want to know!
I'm based in the University town of Cambridge in the UK and look forward to our interactions whatever the medium as we at BMC evolve Atrium
CMDB to meet your needs and supporting your success.
Contact me via twitter @flirble or via this community of course :-)
If you are having issues with Atrium CMDB I strongly suggest you log an issue with support and your account team before engaging me directly but if
you feel I might be able to help then I'm happy to do so where I can.
TTFN
Stephen

3845 Views

3 Comments

Permalink

Tags: atrium, cmdb, introduction, product_manager

The Pulse: Finding your Zen with CMDB


Extensions
Posted by Daniel Hudsky Feb 4, 2014

https://communities.bmc.com/community/bmcdn/bmc_atrium_and_foundation_technologies/bmc_atrium_cmdb/blog?start=0

9/21

10/15/2014
Share:

Blog: BMC Atrium CMDB ... | BMC Communities


0

Google +

Buffer

CMDB is great out of the box. All the classes and relationships we ship are very well inline with the business environments that our products serve.
However! Every once in a while you'll have to extend the common data model with a couple more attributes, class definitions or product data loads.
Last October, I presented a Webinar "How to unlock the potential of Common Data Model in BMC Atrium CMDB" covering how to extend the CDM
using Class Manager. You can view the recording
here. In this blog post, I would like to extend on the topic to talk about products which extend the
CDM as part of an installer or by loading a CMDB Extension with the Maintenance Tool.
Several current products use extensions to the CMDB including BMC ProactiveNet Performance Manager (BPPM), Configuration Discovery Integration
for CMDB (CDI), and it is also used for loading Product Catalog data updates. The reason for the separate install step is to make all the required
changes semi-automatically, and hopefully painlessly. This takes the element of human error out of it, so it can be an either "it worked, no big deal" or
"it didnt work " what happened?" experience. Whenever I look at a failure, I always ask the question " "What was unexpected in the environment that
blocked the operations the extension was trying to perform?" I seek to understand. There is a "Zen" to it. It should be a rational exercise, not a
physical one like trying to stuff pythons in a paper bag. Below, I will highlight some of the ways the product has tried to prevent, improve, or minimize
the room for failure, and share some of the ways I think about it as I look into issues. Hopefully it leads to a more peaceful state for your CMDB and
yourself.
As far as ensuring the server is in a good state before running the install, this is a general feature. It is a good feature to have even when not running
installations, so the AtriumCoreMaintenanceTool has a Health Check feature. You can read more about it in the documentation here. You can find
more about other tools that can help in this regard in Jesses post
7 Tools to verify BMC Atrium CMDB is working well in the section on Verifying
Product Installation and Environment.
If you've had to extend the model or planning on doing so then this is what you should know:
Extending the CDM means that you're altering tables in the database to add additional columns or maybe even creating an altogether new table to
house the data you'll be collecting from your environment. Simply said, we need to add more labels so we have to define containers for our data.
With that in mind imagine that already have a physical container defined like a cupboard or jar and you needed to add just a few things to it and you
were able to add two labels but could not fit the third because it ran out of space. This would make sense to us humans, but the installer still thinks
that 1 and 2 need to be added because it was not told otherwise. You could argue "cant the installer be made more intelligent, to examine what is
already in the cupboard or jar?". Now consider the case that the items interact with one another as they are added, and have different rules on what
can be stored multiple times.
Does that make the challenge of ensuring reliable completion more complex? You bet it does!So the extension installer follows strict orders " install,
check for errors. In case of unforeseen circumstances, wait for further instruction. Basically the extension installer is instructed to add all three items
and that is exactly what it tries to do. If it fails during the install, and the install is attempted again This causes a data structure collision because 1 and 2
already exist and hence a failure of the extension loader. Running it again will not change these results. It will keep failing on exactly the same collisions
points it failed before. So, don't run the extension loader again hoping for different results. Instead look at the logs and see where the installer hit its
first issue. There could have been a requirement to create a dataset first, either a manual step that was missed or a dependency that was violated.
When investigating issues, it is sometimes useful to look at the manifest of files in the extension to see what it is trying to load. This helps to
understand why an error occurs.
There are two types of extension loaders. One that comes with an executable e.g. simExtLoader.exe or pnExtLoader.exe) and
AtriumCore\AtriumCoreMaintenanceTool.cmd. AtriumCoreMaintenanceTool is installed with Atrium Core version 7.5 and later and provides the tool
for loading CMDB extensions, so more information about extensions and what they contain can be found in the Atrium Core documentation.
Executable loaders can use CMDBDRIVER to deliver their "payload" from each subdirectory of the loader. For example 500-SIM-CDM-Extensions
directory for simExtLoader has Class extensions as well as *OSD.txt files that have instructions on what to do. The reason for executable loaders is to
perform additional steps or checks as part of the install, but the subset which is installing CMDB extensions is largely the same.
Some loaders also add Normalization or Reconciliation jobs, Federated Launch Links and so on. These will be stored in the "arx" files in subdirectories
of the extension loader. These additional records can also be only added once and if you run the installer again they will cause further failures but this
time as a data collision rather than data structure collision. Again, here the installer is programmed to install all these things as if they never existed
and the instructions basically say:
"Create New", rather than using this logic: "If you find it there already, then update it or move on to the next".
This is so because the original need to extend the CMDB still applies and the installer just knows that it has not been completed yet.
Above, I mentioned the marching orders of the Extension loader: install, check for errors. In case of unforeseen circumstances, wait for further
instruction. The latter part of that was added in CMDB 7.6.04. If an extension is currently loading, or has attempted to load and has failed, why should
it be allowed to run again and make a mess of things? It shouldnt, so a simple mechanism was put in place to prevent that situation. When it runs, it
adds records to a form called "Share:Application_Properties" that reflects the version of the extension and record the Status of the installation
progress. If the installer needs to install Product Catalog data, which is also considered to be "an extension" of the CMDB then you'd be referencing the
ProductCatalogData-2012_07_03.xml. The name of this file reflects the 2013 Product Catalog data load made available in July 3rd. Its contents will have
GUID reference for Share:Application_Properties that checks the version of the PCT installed on your system.
In the case of Product Catalog that ID is "PD00C04FA081BA0SvxQgaxH66Q1wQA" and it is validated for version 7.6.04 or greater.
The next GUID it will then add to Share:Application_Properties (SAP) form is going to be "BMCPC00C04FA081BAbpfqSA9gV41Ar". This particular ID is
then used to track the progress of the data load. This is done by adding a record to SAP with Name of Status and Value of Running. If the install fails
the value will be changed to Failed.

https://communities.bmc.com/community/bmcdn/bmc_atrium_and_foundation_technologies/bmc_atrium_cmdb/blog?start=0

10/21

10/15/2014

Blog: BMC Atrium CMDB ... | BMC Communities

At the conclusion of the install's completion this Status record is removed. If this record still exists and has Failed status then the installer is not going
to let you do it again.
@BMC Software we have designed this part specifically for the reasons described above which are:
- Run the Health Check or verify the system is in a good state before installing extensions
- Run it once only
- Evaluate reasons for failure and address them individually
- If you can't complete them manually then restore the database and fix the original condition and run the installer once. Repeat if necessary, or
identify individual component failures and complete the extension loading manually component by component.
I hope this post provides a better understanding of the rules that the extension loaders live by, and some of the thinking behind them.Hopefully this
leads to more zen-like experiences with extending the CDM. I have probably skipped something so I am looking forward to see further questions on
this topic so that we can have a full disclosure here for anyone to follow.

If you like content like this, see

BMC Remedy Pulse Blogs for more like it.

If you have ideas on ways for Customer Support work better with you to enable success, join the
ideas, feedback, or suggested improvements.

Customer Support Community and provide

Thank you for reading!


Daniel

649 Views

2 Comments

Permalink

Tags: cmdb, cdm_extension, atrium_cmdb_extensions;, pulse

BMC Atrium Integrator (Practical Example


of Data Transformation Using Spoon)
Posted by Velan Ramakrishnan Dec 27, 2013
Share:

Google +

Buffer

BM C Atrium Integrator (Practical Example of Data Transformation Using Spoon)


The Digital Voice: ETL: Practical Example of Data Transformation Using Kettle
Kettle (K.E.T.T.L.E - Kettle ETTL Environment) has been recently aquired by the Pentaho group and renamed to
Pentaho Data Integration. Kettle is a leading open source ETL application on the market. It is classified as an
ETL tool, however the concept of classic ETL process (extract, transform, load) has been slightly modified in
Kettle as it is composed of four elements, ETTL, which stands for:
Pentaho Data Integration
Shows how to generate data warehouse surrogate keys in Pentaho Data Integration
Surrogate key generation in PDI
Data Sanitization Pentaho Data Integration (PDI) example
Data masking in Kettle Spoon
Data Allocation Pentaho Data Integration example
Data allocation example in PDI
Parameters and Variables - Atrium Integrator (Spoon)
Parameters and Variables - Atrium Integrator (Spoon)
BM C Atrium Integrator (About and Useful Links)
BMC Atrium Integrator (About and Useful Links)
https://communities.bmc.com/community/bmcdn/bmc_atrium_and_foundation_technologies/bmc_atrium_cmdb/blog?start=0

11/21

10/15/2014

Blog: BMC Atrium CMDB ... | BMC Communities

Permalink
1039 Views
1 Comments
Categories: Best Practices, Developer Guides, Source Samples, Demonstrations, Presentations, White Papers

BMC Atrium Integrator (About and Useful


Links)
Posted by Velan Ramakrishnan Dec 14, 2013
Share:

Google +

Buffer

About Atrium Integrator


The Atrium Integrator (AI) product is, as the name implies, an integration tool that facilitates the loading of data into the Atrium CMDB. Atrium Integrator
allows for a wide variety of input sources such as JBDC, JMS, CSV, web services and complex XML. It leverages the "best of breed" ETL tool that has a very
broad range of transformation capabilities. The engine that powers AI is actually referred to as an "ETTL" tool. This stands for "Extract, Transform,
Transport, and Load" It is based off the Pentaho Data Integration (PDI) tool with a common name of "Kettle". Kettle has a designer tool named "Spoon"
that utilizes a drag and drop UI, speeding up the design of complex jobs.

Value Statement
* Simplify importing CI's and their Relationships through Wizard
based UI
* Out of the box Templates for CI field and relationship mappings
ensuring consistency
* Reduce effort and time with a Graphical, Drag and Drop Interface
* Powerful Extraction, Transformation and Loading engine
(Pentaho Spoon) for massaging of data
* Scalable for large enterprises with millions of CI's

Videos How To's

Why not AIE?


There are various shortcomings with the AIE product that forced
BMC to look into another direction. Some of the shortcomings are
listed below:
It lacks the ability to extract data from a myriad of sources that
our customers have data in (MySQL, Sybase, Excel files...)
Very limited transformation capability.
Too many calls into BMC support to get the product to work.
Need to be well versed in the CMDB in order to model the data
accurately. No wizard is available.
AIE to AI Migration coming soon

Click here

Terminology
Repository - A relational database in which jobs and

Transformation Repository
BMC Atrium Integrator Transformation Repository (Really wish this
acronym spelled something cool...)

transformation are stored, along with the logs and execution


history of the jobs.
Transformation - A collection of steps and hops that form the
path through which data flows.
Step - Minimal unit inside a transformation. These are group
in categories based off of the function they provide (i.e. input,
output..)
Hop - Represents the data flow between two steps. It has a
source and a destination. A hop can only be between one
source step and one destination step, but each step can have
multiple hops ("paths").
Job - A process control component. A job consists of Job
Entries. These can be either transformations or other jobs that
are executed in a particular order, managed by hops.

Useful Links
Atrium Integrator is based on Pentaho Data Integration (aka Kettle,
aka Spoon).Some useful links
Pentaho - Spoon User Guide - Gives you information on the steps
that are available in AI, excluding the BMC specific ones
(ARInput/AROutput)
Pentaho Community Forums - The Forums are great for asking
questions about the product.

https://communities.bmc.com/community/bmcdn/bmc_atrium_and_foundation_technologies/bmc_atrium_cmdb/blog?start=0

12/21

10/15/2014

Blog: BMC Atrium CMDB ... | BMC Communities

Pentaho Community - Lots of information here and you can also


download a community edition of Pentaho Spoon to understand
the product and it's uses... Obviously it will not be AI with the
enhancements BMC have made but nevertheless a good learning
tool.

2350 Views

7 Comments

Permalink

PULSE: Troubleshooting connection to


CMDB issues.
Posted by Daniel Hudsky Dec 3, 2013
Share:

Google +

Buffer

I ran into the issue with ADDM synching to CMDB and although it was perceived as a CMDB outage (via ARS Server) the root cause was based in
Windows configuration.
In my experience the issue is related network and If it is sometimes CMDB related, sometimes network, sometimes ARserver, it would be useful to
clarify how to determine which of those is the case.
Given that the CMDB is hosted on the ARS Server, it would really have to be an outage of the ARS Server or a network issue as CMDB would never
respond with an ARERR code of 90.
First I'd like to refer to this article

https://communities.bmc.com/community/bmcdn/bmc_remedy_ondemand/blog/2013/10/14/the-pulse-optimizing-addm-to-cmdb-sync-connections-for-rem
So, please make sure that network access is established first by using "ping" from the ADDM appliance host, although often only specific ports are
open and the company network may block the ping port. However if all of these have been ruled out you can still do a more direct check with the
CMDB by using CMDBDRIVER or the (AR) DRIVER utility to connect.
You can ask for these binaries from the CMDB administrator although these clients will have to be executed directly from the ADDM host machine
which can be running on a different Operating System than what the CMDB is installed on. This client is OS specific. For example if CMDB is running on
an ARS Server that is hosted on MS Windows 2008 server and ADDM is hosted on Linux Red Hat then you would need the CMDBDRIVER client for
Linux RH before you can run it from the ADDM appliance host.
If there is interest then I can produce a staging area with a CMDBDRIVER client for all operating systems from a staging area. Since the version check
with the CMDBDRIVER is compatible across many versions you'll only need one version.
For convenience we've staged the 7604 version for Linux here:
ftp://ftp.bmc.com/pub/BSM/AtriumCore/utilities/cmdbbin.tar.gz
Download this to the ADDM appliance system and make sure you change execute permissions for your current user on the Linux system. ADDM only
supports Linux, hence we are only providing the Linux binary here.
Once you have this in place you can start the client create a file called "options.txt" and put this in the txt file:
init
gver
1
OB00C04FA081BABZlxQAmyflAg1wEA
q
NOTE: The linked binary above already has everything setup. All you need to do there is to run the following command with 4 arguments:
./cmdbdriver.sh <ARS HOST> <AR User> <AR User Password> <AR TCP PORT>
Example: ./cmdbdriver.sh bmc_arshostname Demo Demo 0
Results should look like this:
Command: INITIALIZATION
CMDBInitialization results
ReturnCode: OK

https://communities.bmc.com/community/bmcdn/bmc_atrium_and_foundation_technologies/bmc_atrium_cmdb/blog?start=0

13/21

10/15/2014

Blog: BMC Atrium CMDB ... | BMC Communities

Status List : 0 items


Command: GET VERSION
Number of Application Versions to get (0): Id ():
CMDBGetVersion results ReturnCode: OK
Version Information: 1 item(s)
Application ID: OB00C04FA081BABZlxQAmyflAg1wEA <----- ApplicationId of CMDB
Application Name: BMC Atrium CMDB Version: 8.1.00 <----- This is what you're looking for and proves connection can be established.
Status List : 0 items ( This just means that there no other items in the list)

If you don't get this result then your connection to the CMDB is not open.
This is just one method to achieve a simple test at a moments notice. There are other articles that accomplish similar thing with java:

https://docs.bmc.com/docs/display/public/ars81/Running+arconnect
Daniel

575 Views

0 Comments

Permalink

Categories: Best Practices, Utilities, Demonstrations, Consuming Applications, Solution Briefs

Tags: cmdb, addm, cmdb_verify_connection

PULSE: Upgrading BMC AtriumCore CMDB


from 7.5 to 8.1
Posted by Daniel Hudsky Nov 21, 2013
Share:

Google +

Buffer

Upgrading from versions prior to the 7.6.04 release can be tricky, but fairly simple to acheive if you know the steps covered below.
There are various KA's on this topic already. This pulse post rolls up all the known causes into one.
Starting point : BMC AtriumCore 7.5 CMDB SP1
Finish: BMC AtriumCore 8.1

The following areas are known to cause issues at some time during the installer:
Prechecker Utility of the CMDB Installer
Best Practice Conversion Utility - BPCU
Custom Workflow for cmdb fields
Attachment Size Limit
Warning suppression
Prechecker Utility of the CMDB Installer
Part of the installation includes a CMDB Pre-Checker that validates field ids and names. This prechecker should be only executed if the version of
CMDB is already 7604 and not executed if the version is prior to 7603 SP1, however it is part of the installer and therefore it will run anyway and add
ERRORs to the install log. This is OK and can be ignored.
Here is some background on this. If you run the prechecker before 7603 SP1 then the prechecker will have some failure exit codes that may also show
up in the arerror.log. These errors are there because there are Field IDs for Company that get checked in the following forms:
PCT:VersionCompanyAssocStatusFlags
PCT:PatchCompanyAssocStatusFlags
The installer needs to change these Field IDs from value "420000165" to this value "1000000001". Since this is part of the installer and the prechecker
runs before that can happen and hence these errors are ignored.
The log will show an exit code of 1025 after running this command:
LOG EVENT {Description=[AR ChangeID command],Detail=[C:\Users\E020156\AppData\Local\Temp\Utilities\rik\archgid.exe -x ARSALIAS -u Action
Request Installer Account -p ****** -t 0 -c 10003 -N 7200 -L 14400 -X 21600 -F
C:\Users\CURENTUSER\AppData\Local\Temp\Utilities\pc\changeFiledIDs.txt
Since there isn't a way to easily remove the Pre-Checker from the available AtriumCore Installer program then all you need to do is to understand that

https://communities.bmc.com/community/bmcdn/bmc_atrium_and_foundation_technologies/bmc_atrium_cmdb/blog?start=0

14/21

10/15/2014

Blog: BMC Atrium CMDB ... | BMC Communities

this is a false positive result. You'll basically see list of errors in the end where the "Success" status of the install is show giving you the option to review
the log. That log review console will have some "red" lines in it.
BPCU
BMC has produced a customization conversion utility that converts custom workflow into Overlays. For customers who have Asset Management and
other applications where the CMDB is providing data structure service and have customized workflow this utility is best used AFTER the AtriumCore
Upgrade is completed. Althoug the BPCU utility does not overlay any CMDB schemas and workflow even if customizations are found, however running
this utility sets the expectation that even if the CMDB was overlaid than this would be corrected by the BPCU. This is not true.
Please see KA380649 for reference.
Bottom line for this point is - run the BPCU after the upgrade of CMDB is completed, was succesful and was not impacted by overlay issues. We've
done these upgrades now with 100% success rate and are confident to support this practice.
Custom Workflow for cmdb fields
This item is related to the previous one, but more specific to data that is being inserted into BMC.CORE CDM forms.
The installer inserts various template data into the BMC.CORE forms and this step can be blocked if additional data restrictions or attribute
requirements are enforced by custom workflow. These fields may include MarkAsDeleted, Company, Region, Site and so on. If you have
customizations in place that require a value in a field that is not already required out of the box then you should disable the workflow for those fields
before you start the installer.
The install log would have captured such failure with exit code of 1025 and log entry would look like this:
C:\Users\CurrentUser\AppData\Local\Temp\Utilities\rik\rik.exe" loadapp -x ARSALIAS -t 0 -u "Action Request Installer Account" -p <not_displayed> -l
"D:\Program Files\BMC Software\AtriumCore\" -n CMDB-RIK_Install -f "D:\Program Files\BMC
Software\AtriumCore\cmdb\en\workflow\upgrade\764patch000\wf-RIK-CMDB.xml" -L -C
Where the name of the log that actually captured the real failure codes is "CMDB-RIK_Install.log"
This log would then show an error like this
INFO - Error importing record 1: ERROR (806201): ; Please supply a Category, Type and Item for this Configuration Item. Those fields require and entry
to create or modify a CI.
DATA "" "" "" "" "" "" "" "BMC_BUSINESSSERVICE" "0;" "" "" "" "" 1282162748 "BMC.ASSET" "" "" "" "" 0 "" "STANDARD" "BMC_GLOBAL_DEFAULT_SRVC" "" ""
"Demo" "" "" "" "" "" "" "" "" "" "" 1285101154 "BMC_GLOBAL_DEFAULT_SRVC" "" 30 "" "" "" "" "" 0 "BMC_GLOBAL_DEFAULT_SRVC" "" "" ""
"000000000000011|000000000000383" "" 10 10 "Default Service" "" "" "" "" "" "" "" "" "" "" 0 "1284595003Demo" "Demo" 0 "" "0" "" "" "" "" "" 0
INFO - Import Completed in 8.237 seconds. 0 records were imported to BMC.CORE:BMC_BusinessService; 1 Records were not. From File D:\Program
Files\BMC Software\AtriumCore\cmdb\en\workflow\upgrade\764patch000\.\USM_BusinessService_DefaultData.arx
[ERROR] LoadComponent- Data Import failed with code 1025 for file D:\Program Files\BMC
Software\AtriumCore\cmdb\en\workflow\upgrade\764patch000\.\USM_BusinessService_DefaultData.arx
And there would be additional records like this that fail. Exit code of 1025 can almost always be associated with a data collision of some type. Either the
record could not be imported, or it could not be deleted (code 1024) for what ever reason.
Please disable workflow that would prevent the installer from managing records in the CMDB. No customer records are deleted during the upgrade,
only CMDB template or default loads like the BusinessService data will be impacted.
Attach Size Limit
We've found that the ARDBC setting of "Db-Max-Attach-Size: 0" has impact on attachments during upgrades. If you have this setting in the ar.cfg
(ar.conf if Unix/Linux) then change the value to 200000000 (~200 MB) or just remove it from the config file altogether.
ARS also has a maximum attachment size limit that can conflict with the Data Visualization Components that need to be loaded into the Data
Visualization forms during the install. The size of these attachments varies from few kilobytes to several megabytes.
Rule of thumb is to remove the attachment size restriction for the installer to complete successfully. This means that you should set the size limit to 0
(unlimited).
Set Attachment Size Maximum to 0 for the ARDBC (ARS Data Base Configuration values a.k.a. the ARDBC metadata).
You can also run a test before the upgrade by attaching a sample file that's no more than 100 MB to see if the attachment will work. This setting is in
the AR Server Configuration Panel. You can leave it at 0 if it already is set that way.

Here is the brief explanation of attachment size topic :


Both config items Db-Max-Attach-Size and AR-Max-Attach-Size are the same. Db-Max-Attach-Size was introduced in early releases of AR (not
sure about version) and was specific to Oracle DB only. Later we introduced AR-Max-Attach-Size for all databases including Oracle. You should
remove Db-Max-Attach-Size from config file at this point.
Unlimited size applies if
AR-Max-Attach-Size = 0 or no entry exists in ar.cfg.
Warning Supression (ARS)
There are several Warnings interpreted by the installer as failures. These warning can be ingored by supressing them during the time of the
installation.

https://communities.bmc.com/community/bmcdn/bmc_atrium_and_foundation_technologies/bmc_atrium_cmdb/blog?start=0

15/21

10/15/2014

Blog: BMC Atrium CMDB ... | BMC Communities

You can add the following the Warning suppressions:


See : KA364458
Suppress-Warnings: 9936
Additional warnings maybe there already, so just add 9936 to the list for the upgrade to complete successfully.
Our expectation and coding of the Installer should not have this issue surface at all. However I always like to mention it here for those customers that
are using this KA for upgrading to 7.6.04 SP4 of AtriumCore where this issue has manifested itself.
For this last point please see KA405615 for additional information.

A KA does exist with content similar to this PULSE post: KA406262


All Knowledge Article references require BMC Support Login.
714 Views

0 Comments

Permalink

Categories: Applications, Best Practices, Technical News, Solution Briefs

Tags: cmdb, cmdb_upgrade, cmdb_install

PULSE: Identifying weak Reconciliation


Identification rules can be done with
ARDRIVER.
Posted by Daniel Hudsky Nov 20, 2013
Share:

Google +

Buffer

I found a way to run a query that can help diagnosing CMDB data that fails AutomaticIdentification and that is to use the AR DRIVER with GLSQL.
Syntax to login to ARS DRIVER with this client is similar to CMDBDRIVER so I am not going to go into details on that here. Instead I'll skip straight to the
point query, although to avoid any confusion I need to add that AR DRIVER is a client that is native to any version of ARS, not CMDB. CMDB driver does
not wrap ARS DRIVER. These two are different AR clients. Start AR DRIVER from ARSystem API folder on Windows or run it from bin dir on Unix. If
you're having hard time find it on UNIX then just run this command:
find $BMC_AR_SYSTEM_HOME -name driver
You'll get couple locations to chose from.
Once you initilize and login to the AR DRIVER then you can take advantage of the GLSQL query to find out how many classes are failing Automatic
Identification. The results will then tell me which rules are in need of review. Now, the reason I love this is because I don't have to wait for a DBA to give
me access to the database. Keep in mind that you still need to have CMDB admin access to do this.
So, here is an example how to run a query on the BMC.ADDM dataset and group the results by ClassId. As follows:
Command: glsql
GETLIST SQL
SQL command: select count(ClassId), ClassId from BMC_CORE_BMC_BaseElement where DatasetId = 'BMC.ADDM' AND FailedAutomaticIdentification =
1 group by ClassId;
Maximum number of entries to retrieve (500):
Get number of matches? (F):
ARGetListSQL results
ReturnCode: OK
Value List List : 3 items
Value List : 2 items
Value: (integer) 51
Value: (char) BMC_COMPUTERSYSTEM
Value List : 2 items
Value: (integer) 5963
Value: (char) BMC_DATABASE
Value List : 2 items
Value: (integer) 18815
Value: (char) BMC_SOFTWARESERVER
Status List : 0 items
This tells me that I'll need to review (RECON) Identification Rules for classes ComputerSystem, Database, and SoftwareServer related to my job. The
last one must have a very ineffective rule as there are 18815 failed CIs there.

https://communities.bmc.com/community/bmcdn/bmc_atrium_and_foundation_technologies/bmc_atrium_cmdb/blog?start=0

16/21

10/15/2014

Blog: BMC Atrium CMDB ... | BMC Communities

Looking at the Identification rules for these classes and the source dataset I can see that I have created 3 rules:
Rule 1:
'TokenId' != "0" AND 'TokenId' != $\NULL$ AND 'TokenId' = $TokenId$
Rule 2:
'ADDMIntegrationId' != $\NULL$ AND 'ADDMIntegrationId' = $ADDMIntegrationId$
Rule 3:
'SoftwareServerType' != $\NULL$ AND 'SoftwareServerType' = $SoftwareServerType$

So, since Rule #3 is only checking for SoftwareServerType which is an enumerated field then that tells me that this identification is going to fail to
identify New CIs as soon as there is already one CI present in the BMC.ASSET dataset with the same enumeration. Recon Engine will not Auto-Identify
new CIs if any of the rules have failed and that rule would definitelly cause errors after the first merge. All subsequent jobs would find a match of most
of the SoftwareServerTypes because there can only be so many in the option list. Basically an enumerated field should never be used for unique
identification by itself. So, that would be an very ineffective rule to have and I'll need to change it.
If I combine Rule 2 and Rule 3 together to say:
Rule 2:
'ADDMIntegrationId' != $\NULL$ AND 'ADDMIntegrationId' = $ADDMIntegrationId$ AND 'SoftwareServerType' != $\NULL$ AND 'SoftwareServerType' =
$SoftwareServerType$
Then now I have a much more effective rule that should find a match and accuratelly identify existing CIs in BMC.ASSET and also Autoidentify properly.
Once I make that change to the SoftwareServer Identification rule and run the job, then I can use the same GLSQL query to see if the rule now
correctly identifies the CIs in BMC.ASSET. The CI must also not fail and Auto-Identify new CIs.
Command: glsql
GETLIST SQL
SQL command: select count(ClassId), ClassId from BMC_CORE_BMC_BaseElement where D
atasetId = 'BMC.ADDM' AND FailedAutomaticIdentification = 1 group by ClassId;
Maximum number of entries to retrieve (500):
Get number of matches? (F):
ARGetListSQL results
ReturnCode: OK
Value List List : 2 items
Value List : 2 items
Value: (integer) 51
Value: (char) BMC_COMPUTERSYSTEM
Value List : 2 items
Value: (integer) 5963
Value: (char) BMC_DATABASE
This is the result I was hopping for. Next I'll need to look at Database and maybe the ComputerSystems.
I find this method most effective with RE ID Rule and Data validation.

4201 Views

3 Comments

Permalink

Categories: Applications, Best Practices, Technical News, Data Management, Solution Briefs

Tags: cmdb;, reconciliation_jobs;, pulse, reconciliation_engine;

The Pulse Understanding tools and


guidelines for extending your asset and
CMDB data model
Posted by Jesse Richardson Oct 18, 2013

https://communities.bmc.com/community/bmcdn/bmc_atrium_and_foundation_technologies/bmc_atrium_cmdb/blog?start=0

17/21

10/15/2014

Blog: BMC Atrium CMDB ... | BMC Communities

Share:

Google +

Buffer

There have been several enhancements in recent releases of BMC Remedy IT Service Management Suite, BMC Atrium CMDB Suite, and BMC Remedy
AR System Server that change where data is stored, how to customize the user interface (UI), and preserve those changes during application
upgrades. These changes include:
BMC Remedy IT Service Management moved asset management lifecycle attributes out of the CMDB to the AST:Attributes form
BMC Remedy AR System Server introduced granular overlays, see

The Pulse: Using granular overlays to manage customizations

BMC Atrium CMDB Suite addressed issues with the Synchronize UI feature, also known as Sync UI to Asset or cmdb2asset
In this post, I will discuss how these changes impact the guidelines for successfully extending the data model and customizing the user interface. I will
also try to put some issues and experiences in context of their role and best usage of these features.
Adding data to AST:Attributes in relation to CIs
In Asset Management version 8.0, asset lifecycle attributes such as those that track status and costs, those were moved out of the CMDB to the
AST:Attributes form. The Data structure change is described in more detail in the BMC IT Service Management architecture documentation. The
relationship between the CI and the AST:Attributes record is stored as a foreign key relationship where:
If the CI is not identified, Reconciliation Identity on AST:Attributes = Instance Id of the CI
If the CI is identified, Reconciliation Identity on AST:Attributes = Reconciliation Identity of the CI

The first case is temporary - once the CI is identified in the CMDB, the AST:Attributes record is updated to contain the Reconciliation Identity of the CI
and becomes available to the Asset viewer through the Asset Management application.
Below are different scenarios of how data is populated to AST:Attributes.
1. ITSM is upgraded from version 7.6.04 to 8.x
Once you upgrade to ITSM 8.x, the upgrade process moves the data from the CMDB into AST:Attributes records and removes the attributes from
the CMDB. Any workflow or integration referencing them can be updated after phase 2 of the ITSM upgrade which uses workflow to sync the
legacy attribute values to AST:Attributes. The third phase of the ITSM upgrade removes the legacy attributes from the CMDB.
2. An ITSM user adds a new CI from the Manage CIs feature, using an Asset Sandbox. (BMC.ASSET.SANDBOX)

An entry is created in AST:Attributes with the instanceid of the CI. This is a temporary foreign key relationship until the CI is identified. When the
CI is identified by Reconciliation, workflow updates the AST:Attributes entry to have the correct value of Reconciliation Identity of the CI.
3. An ITSM user adds a new CI from the Manage CIs console, without using an Asset Sandbox.

The CI and AST:Attributes entry are created with a value of Reconciliation Identity to relate them.
4. A data provider like ADDM populates data to the CMDB.

The AST:Attributes entry is created when the CI is reconciled.


However, an AST:Attributes record is not created for all classes. Workflow checks if the class is in one of the classes which tracks asset lifecyle
attributes. This list is stored in the AST:ClassAttributes form and you can add new entries to the form if there are new classes for which asset life

cycle attributes should be tracked.


5. Data is loaded to Asset Management application from a legacy data import or third party integration.

Two different methods can be used - either the Data Management Tool with Transactional_CI spreadsheet or the process in knowledge article
KA400491.
6. In another scenario, data is loaded and reconciled in CMDB 8.1 and ITSM 8.1 is installed later on the system. How are the AST:Attributes records

created in this situation?


This can be done several ways. Either create a one-time escalation to create entries in AST:Attributes with default values, or export data from
CMDB to get the Reconciliation Identity and Instance IDs for the CIs, and use one of the above methods to import it with AST:Attribute data.
Determining the proper location of new attributes
Before defining a new attribute, consider where is the correct place to store it. Since there are two possible locations in the CMDB vs. on the
AST:Attributes form - you have to ask the question:
"Should it be added as a field on AST:Attributes or should it be added as an attribute in CMDB?"
Below are some criteria to make that decision:
Is the attribute discoverable from the CI itself?
Is it a property of the CI itself, or an attribute which is being track about the CI?
Will the data be primarily accessed using the BMC Remedy IT Service Management applications?
Using this criteria, if the attribute will be added to the CMDB, the process works the same as in previous versions - add it in Atrium Class Manager and
run Sync UI to update the AST form to make it visible to users of the Asset Management application.
If the field will be added to the AST:Attributes form, the process is essentially to add a new field to the form, and update the AST forms to expose it in
the join forms. The use of additive view overlays is recommended so these changes are preserved when you upgrade the ITSM applications. In the
example below, I added the field MyNewLifecycleAttribute to AST:Attributes and used Remedy Developer Studio to update the Computer System
form to make it visible on the AST form. See Knowledge article KA404401 which describes the process in greater detail.

https://communities.bmc.com/community/bmcdn/bmc_atrium_and_foundation_technologies/bmc_atrium_cmdb/blog?start=0

18/21

10/15/2014

Blog: BMC Atrium CMDB ... | BMC Communities

Best Practices on making changes to the data model in CMDB or AST:Attributes


Following these guidelines will avoid introducing issues when making data model changes:
1. Extend or add to the data model, rather than changing, removing, or making attribute/field properties more restrictive.
When a new class or attribute is added, it is certain that no existing applications or use cases will be affected. This is because the new object did
not exist so nothing could be using it. The only concern when adding an attribute is making a new attribute or field required because there
may be a significant amount of existing data without a value specified, so adding a required attribute of field can introduce issues.
Modifying an existing attribute for example, to make the size smaller or to make it a required attribute can introduce many types of issues.
There may be application features or data use cases which do not meet the new restrictions and issues may occur well after making the changes.
2. Back up the original definitions and data before making the changes. See the recent
Model for suggestions on how to do this for changes to the CDM.

Connect with Atrium webinar on the Common Data

3. Consider the impact on existing data. If a new attribute or field is added even with a default value existing records will not have this value
populated. When adding a new attribute or field with a default value, existing CMDB data import methods can be used to update existing data.
If the field was added to AST:Attributes form, either use the Data Management Tool (DMT) to load the data or see knowledge article KA400491 for
a method of loading data using other import mechanisms.
Maintaining a consistent UI
After the class or attribute is added to the data model, it needs to be included in the user interface. This happens automatically for extension of the
CMDB data model because the class forms are updated to include the attribute at least in the CMDB user interface forms. There are more details in
the documentation on Control of the layout of class forms.
If BMC Remedy IT Service Management applications are installed on the server, it is recommended to also run the Sync UI process to update the Asset
Management UI with these changes so users can access the new classes and attributes.
This feature is accessible in accessible from the Application Administration Console, by choosing from the menu:
Custom Configuration > Asset Management > Advanced Options > Sync Asset UI with CMDB
This Sync UI feature also known as Synchronize UI, also known as cmdb2asset performs much of the work of updating forms and attaching
workflow. However, the new attribute is added to a Custom page which is not visible. It is expected that the administrator will make the decision to
either make the page visible, or perhaps move the attribute to another page on the form. These manual changes are made in BMC Remedy Developer
Studio. For changes made in Remedy Developer Studio, the recommendation to preserve customizations is to use overlays, so well explore the
impact of doing that in the paragraphs below.
Changes made in both tools - Atrium Class Manager and Sync UI drive workflow changes to AR System workflow base objects. They do not directly
update or interact with overlays. This does not mean they are completely independent, as we will get into below.
Retaining changes during upgrades
Changes made through the CMDB API using Class Manager or the CMDB API store metadata which describes the changes to the data model.
During CMDB upgrades, CMDB understands and preserves changes and additions to the data model. Changes in the AR System workflow and
database objects are driven from the CMDB metadata, so upgrading or making additional changes in Class Manager preserve the changes to the
workflow objects.
As for the AST:Attributes form, changes made in BMC Remedy Developer Studio should always use the Best Practice Customization Mode so the
workflow changes are stored on overlays. When ITSM upgrades update forms or workflow, they update the base objects and the overlay objects are
retained except in the rare case where the base object is deleted during the upgrade. You can view the details of the workflow affected in the
upgrade, which is included with the ITSM release.
Overlays and CMDB forms and workflow
As noted above, changes to CMDB classes should be made through the CMDB Class Manager or CMDB API calls. This process updates the CMDB
metadata and all related AR System forms and workflow. Changes to the functional behavior of the CMDB should never be made directly in the AR
System tools such as BMC Remedy Developer Studio because this introduces inconsistencies between the CMDB metadata and the AR System

https://communities.bmc.com/community/bmcdn/bmc_atrium_and_foundation_technologies/bmc_atrium_cmdb/blog?start=0

19/21

10/15/2014

Blog: BMC Atrium CMDB ... | BMC Communities

objects. This is unsupported, can cause problems, and is contrary to best practices. The guideline to understand functional behavior is as follows:
If the change can be made in Class Manager, then it should be made in Class Manager.
Customizing the user interface by moving attributes around on the form does not affect the functional behavior of the CMDB, nor is it a task that can
be performed in Class Manager. As this is not a change to the functional behavior of the CMDB it can be made in BMC Remedy Developer Studio. All
the standard guidelines to performing Remedy workflow customization apply here including testing on development servers, documenting changes,
backing up existing workflow, and acquiring the necessary training and knowledge to understand how to customize Remedy workflow.
Now lets consider an example of using overlays to make these changes, first using AR System version 7.6.04 and then with AR System version 8.1.
In this example, lets consider the case of making changes to the user interface by modifying views to move attributes on the form
BMC.CORE:BMC_ComputerSystem using BMC Remedy Developer Studio. For servers with BMC Remedy IT Service Management installed there the
Asset Management forms perform the role of user interface so this example is likely only applicable to servers without ITSM installed.
In AR System version 7.6.04, BMC Remedy Developer Studio is launched, switched to Best Practice Customization mode, and the
BMC.CORE:BMC_ComputerSystem form is edited. An overlay of the form is created. This makes a copy of all of the properties of the form the fields
on the form, the field properties, and the views. Changes are made to the views according to the requirements and the changes are saved. At this
point everything works fine AR System is using the overlay instead of the definition of the BMC.CORE:BMC_ComputerSystem form, but the only
difference between the two are the changes to the view. Next, lets consider the case that a new attribute is added to the class in Class Manager. This
process updates the underlying AR System forms and workflow to include this attribute it updates the base objects not the overlay. This is the
designed behavior because BMC code changes are made in the base. However, note that we have just introduced a discrepancy between the CMDB
metadata and the AR System objects! The CMDB metadata includes the new attribute, and it expects the AR System forms also have this field.
However, since AR System is using the overlay instead of the base object, AR System believes the field does NOT exist on the form.
This is sometimes explained as "overlays being incompatible with CMDB forms, and sometimes explained as they conflict with CMDB changes. But
in reality, the challenge is that the use of overlays introduces data model inconsistencies between the CMDB and AR System objects. This is usually
where errors would be encountered. One way to fix this is to delete the overlay and re-create it. This is essentially making another, more recent, copy
of the form properties to address the data model inconsistency, until another attribute is added via CMDB Class Manager. Ironically, the use of
overlays to adjust the view is mostly unnecessary because the CMDB data model changes used an inheritance model to update the forms, so
customizations to the view are generally preserved when classes are updated. So on CMDB versions 7.6.04 the best advice is still do not use
overlays on CMDB forms.
Creating an overlay on AR System 7.6.04 required creating an Overwrite overlay for the entire form data model properties and view properties alike.
In AR System 8.1, the concept of overlays was extended to support more types of overlays additive, overwrite, inherit and to be more granular. So
on AR System 8.1, you can create an additive overlay and create it on only the views of a form. This allows making changes to the view without
impacting the functional behavior of the data model. So in AR System 8.1 or later overlays can be used on CMDB forms if proper care is taken to only
create additive overlays and only on view properties.
Sync UI and overlays
The role of Sync UI to Asset is to update the Asset Management user interface forms to reflect additional classes or attributes added to the data model
in the CMDB. It leverages metadata in the SHR:SchemaNames form, plus an inheritance model that leverages existing forms and workflow for parent
classes to either build or update the form. Sync UI creates and updates base objects which is appropriate for BMC-made workflow changes.
The SynchronizeUI log generated on the server gives a good picture of the activity it performs checking if the form already exists, looking for new
attributes, and attaching workflow which is related to parent class forms to ensure the form works consistently. This log is also a good reference while
syncing to determine when the process is complete. Sync UI updates the existing form rather than removing and recreating it, so existing changes to
the form are retained. Sync UI does not have metadata to tell it where to add new attributes so it follows a standard routine of adding new attributes
in the next available position on a set of custom tabs. This avoids the need to manually edit each AST form in the class hierarchy to add the attribute
as described in KA404401 for adding an attribute via AST:Attributes.
How does this behavior impact the use of overlays?
In AR System 7.6.04, all overlays are what we now call overwrite overlays. When you create an overlay of a form, for example AST:ComputerSystem,
AR System uses your overlay instead of the base object. Sync UI updates the base object, so the expected behavior is that changes made via Sync UI
are not visible on the form only the changes in your overlay exist. Since the fields are propagated to the base object, BMC Remedy Developer
Studio could be used to simply add them to the overlay but this is a manual step. Creating an overlay of workflow which governs the behavior of the
AST form also causes problems on AR System 7.604. When you create a new class in CMDB and run Sync UI, it updates many active links and filters to
also run on the new AST form generated. If there is an overlay on the workflow, it supersedes the base object and the workflow does not execute on
the new form. To avoid problems like this, it is better to generate all the classes in CMDB, use Sync UI to build the AST forms, and only then create
overlays on the AST forms.
In AR System 8.1 and later, granular overlays allow overlaying smaller components of the form and the can be designated as Additive overlays. This
allows the overlaid objects to be maintained separately and the both base and overlaid attributes are displayed on the form. As long as granular
additive overlays are used and fields are not positioned in a way to conflict with the usual placement of new attributes added by Sync UI, the overlays
should work fine with Sync UI. But it means you may need to review your coordinates of fields on the form.
Sync UI fixes
A number of fixes have been made to Sync UI in recent CMDB service packs. The expected behavior is for Sync UI to bypass AR System configurable
options meant to restrict end user behavior. For example, the Max-Entries-Returned-by-Getlist setting should not block Sync UI. This is considered a
defect because the automated tool Sync UI should not be bound by this restriction. This defect is fixed in CMDB 7.6.04 SP5 and will be fixed in the
upcoming CMDB 8.1 Service Pack 1, along with an issue described in knowledge article KA399521 regarding Sync UI updating the Status attribute to be
invisible. See the release notes for specific issues fixed in Sync UI. I only mention it here because some of these issues are sometimes considered
evidence of a conflict with overlays, when in fact, they are just defects fixed in the latest service pack.

https://communities.bmc.com/community/bmcdn/bmc_atrium_and_foundation_technologies/bmc_atrium_cmdb/blog?start=0

20/21

10/15/2014

Blog: BMC Atrium CMDB ... | BMC Communities

How Auditing and Archiving changes with data stored in AST:Attributes


Asset lifecycle attributes are often the ones which would be the most interested in auditing changes since they are made by users instead of
discovered automatically. Since these attributes are no longer stored in the CMDB, there is a slightly different way of enabling auditing, but both
mechanisms ultimately use the same AR System feature to perform the auditing. See my colleague Jareds recent blog post
The Pulse: Auditing your Assets for more details on this topic.
AST:Attributes only stores current attribute values so consider whether this data needs to be archived when archiving data from the CMDB, if the goal
will be to capture data at a particular point in time.
Terminology Clarification
The names of the forms AST:Attributes and AST:ClassAttributes are similar in name to CMDB metadata forms which perform completely different roles,
so for clarity, I always refer to these forms by their explicit full names. Below is a quick summary of forms, whether they belong to CMDB or Asset
Management, and their purpose.
Form

Purpose

AST:Attributes

Asset Management form that contains data instances

Attribute Definitions (OBJSTR:Attributes)

CMDB definiton of attributes and their properties

AST:ClassAttributes

Asset Management form to hold list of forms which use AST:Attributes

Class Attributes

CMDB Definition of attributes on the class

Key takeaways
Below is a summary of the key points addressed in the article:
Both CMDB data model and Sync UI changes to the interface forms act on the AR System base workflow objects. Neither is aware of or directly
interacts with overlays in AR System. AR System overlays can be used effectively with CMDB and AST forms by using additive overlays specifically to
views to adjust the user interface but not change the functional behavior. On AR System versions prior to version 8.1, it was not possible to create
such granular or additive overlays, so using overlays if you plan to afterwards run Sync UI on those versions is not recommended.
When adding an attribute, consider whether it is a discoverable attribute of the CI itself or a non-discoverable attribute which is used to track the
lifecycle of the asset. This will help determine if the attribute should be added to the CMDB or to AST:Attributes. See Knowledge article KA404401
regarding steps for adding to AST:Attributes.
Always use additive view overlays for changes made in BMC Remedy Developer Studio, including changes to the AST forms after running Sync UI.
When auditing changes for attributes stored on AST:Attributes, make the changes via BMC Remedy Developer Studio.
Archiving, deleting or resetting ReconciliationIdentity data in BMC.ASSET dataset It was never a good idea to do this, because it orphans ITSM
relationships which refer to the CIs by ReconciliationIdentity. Now data in AST:Attributes is added to that list of data that would be lost or orphaned.
When data is removed or reset using cmdbdiag, it operates at the database level so filters which would remove or update data in ITSM forms do not
fire.
I hope this summary provides clarity on how to use these features effectively, and make sense of past experiences and issues encountered. Please
use comments below to provide feedback. See
BMC Remedy Pulse Blogs for similar posts.

8843 Views

20 Comments

Permalink

Tags: cmdb, asset, customer_support, pulse

1 2 3

Find People
Support Login

Previous
Next

Community Help
Worldwide

About BMC

BMC.com

Google +

New

Copyright 2005-2014 BMC Software, Inc. Use of this site signifies your acceptance of BMC's Terms of Use, Privacy Policy and Cookie Notice.
BMC, BMC Software, the BMC logos, and other BMC marks are trademarks or registered trademarks of BMC Software, Inc. in the U.S. and/or certain
other countries.
Manage Cookies

https://communities.bmc.com/community/bmcdn/bmc_atrium_and_foundation_technologies/bmc_atrium_cmdb/blog?start=0

21/21