SlightlyLoony
Tera Contributor

Some questions I hear often relate to CMDB items that have disappeared out in the real world, but still exist in the database. Perhaps it's a server that was taken out of service, or a laptop that was stolen — there are many reasons why a real-world item might go away. What does Discovery do when it doesn't find that item? And what's the right thing to do with the database entry?

Discovery doesn't do anything at all with CMDB items that it can't re-discover. The main reason for this hands-off attitude is that Discovery can't possibly know what's really going on with that machine. For example, suppose a laptop that Discovery found every single week for 3 years no longer showed up in a discovery — and this kept up for 3 months. Discovery can't tell whether that laptop is missing because it was stolen, because its user is home on maternity leave, or because it's sitting in the shop waiting for repair parts. In other words, Discovery can't tell if it's really gone, or if it's just temporarily gone. So Discovery does the safest thing — nothing at all.

Another interesting question — really completely independent of Discovery — is what should you do in the CMDB when a physical device really does go out of service? There are two general approaches I've seen:

  • Keep the now-gone CMDB item in the database, but mark it as non-operational. This approach has the advantage of keeping intact any links you have from incidents, tickets, etc. to the now-gone CMDB item, thus keeping all your history and details available for investigations or reports. Because these items are still in your CMDB, it likely means that you'll want to filter out the non-operational items for certain kinds of reports, and views on-screen. For example, you might modify the Configuration -> Computers module to include such a filter (you can always remove it if you want to peruse the non-operational computers).
  • Delete the now-gone CMDB item from the database. This approach has the advantage of simplicity — you delete the item, and it disappears immediately from all lists and reports. Simple! But the downside is that now any incidents, tasks, etc. that referenced this CMDB item lose their references, which destroys a little bit of your history.


Which approach is better for your organization is something you'll have to decide. Either way, it's good practice to have a clearly articulated policy in place...