Why does the CI class in model categories not allow duplication with other model categories?

senon
Tera Sage

Hello Experts,

I am currently working on the requirements for hardware asset management model categories and have encountered a question and an error in the process.

 

Requirements
I need to create a new model category called "Virtual Server."
This model category will not create assets and will assign only the CI class "cmdb_ci_server".

 

While OOTB already includes model categories such as "Virtual Machine" and "Virtual Machine Instance," the current requirement is to manage virtual servers under "cmdb_ci_server".

 

Question
When a similar CI class ("cmdb_ci_server") is already assigned to another model category, an error occurs, preventing the creation of a new model category.

senon_1-1737357874995.png


This error is triggered by the Business Rule "Protect cmdb_ci_class on insert", which outputs an error whenever the same CI class is used.

senon_2-1737357937392.png

 

 

Does anyone know why this Business Rule exists as OOTB? Speculative but logical reasoning would also be appreciated.


The following knowledge article suggests that there is a business rule that corresponds to the content of my question, but the unfortunate point of this article is that it does not clearly state why the business rule is necessary.
Knowledge Article View - Now Support Portal

senon_0-1737358750146.png

 

Is it acceptable to create model categories with duplicate CI class assignments, or would this cause any issues?

Since it exists as an OOTB rule, I assume there must be some rationale behind its implementation. Depending on this rationale, I may need to reconsider my approach to model categories.

 

I would greatly appreciate your insights and ideas.

 

Best regards.

senon

1 ACCEPTED SOLUTION

Teri Bobst
Mega Guru

Hello, You are correct a virtual server is typically still a Windows Server, or some other type of server that can also be physical, where assets are needed. My typical approach for this scenario is to use the "asset tracking strategy" at the model to set all Virtual models to "Don't create assets". This will prevent assets being created from those CI's while still maintaining the model category - CI Class - asset class mapping.

View solution in original post

9 REPLIES 9

Teri Bobst
Mega Guru

Hello, You are correct a virtual server is typically still a Windows Server, or some other type of server that can also be physical, where assets are needed. My typical approach for this scenario is to use the "asset tracking strategy" at the model to set all Virtual models to "Don't create assets". This will prevent assets being created from those CI's while still maintaining the model category - CI Class - asset class mapping.

I'm very happy that you replied to this old post.

I think your approach is correct now.

 

If I don't use a CI class specifically for virtual resources, i.e. if I use the common server CI class,
I should use the "asset tracking strategy" of the asset model.

Hello, 
I am a bit new to this(and am in fact business analyst and not THAT technical) and I think we have a similar use case as OP. I wonder if you, or anyone here can advice:
We are currently undergoing an evaluation of our server CI table and have a requirement to ensure that only the physical CIs will have assets.
For part of the models it is easy as they will only have Virtual CIs, like Nutanix.
We've found that there are models with both physical and virtual CIs(assuming the virtual flag on the CI is properly populated by the mid servers/SN Discovery). We're yet validating why, but for the most part the Virtual CIs actually do not have assets currently, but that's because the CI classes they are associated with do not have model categories defined in the system. As a result, they do not qualify for asset creation. The asset tracking strategy on the models is set to "Leave to category".

I am looking for a simple solution(if possible) to make sure that in the future newly discovered servers, regardless if the the Model is new or not will be properly sorted and we will only have assets for the physical servers.

 

I would need an example of a model that would be both virtual and physical. Generally, the model is going to be set to something like VMWare 7,1 - so regardless if the CI is a server or computer model category - the model would determine that assets shouldn't be created through the asset tracking strategy.

 

Model Categories are are one of the most overlooked and abused areas of the platform that can have some of the worst impacts to data quality. Every new CI class being introduced should be analyzed for if assets should be created, and if so - you have to map to or create a new model category - but you have to understand how they work.

We have a few Dell Inc. PowerEdge R730's Rack servers and our discovery detects both the physical device as well as the VM on it with the same model and OS.

The physical device has its CI classified as Windows server, while the Virtual system is a CI with class Hyper V-server. They are both associated with the same model record and have the same OS, and the reason the Hyper V Server CI does not create asset is that because only the Windows server has a model category while (and I just found this out) the Hyper V Server CI Class is not referenced in the Model Category table.
So, if I map the Hyper V-server CI Class in the model category and don't populate the asset table reference there, does that mean no Asset will be created in the future, given I also leave the asset strategy to default?