- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-08-2024 11:40 PM
Hi All,
We have few CI's which are marked as "Is virtual=true" by Discovery and there is no relationship created to host. Please let me know how to troubleshoot further. What kind of relationship will it create for Different server? Like Windows, Linux & AIX.
Solved! Go to Solution.

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-09-2024 01:23 AM
Hey,
This is pretty common and works as it should. The way the discovery of virtual machines (or any virtualized hardware) works is twofold:
1) Discovery of the virtualized hardware
The "normal" horizontal discovery will find virtualized objects within your infrastructure and create those accordingly. The discovery itself will always work bottom-up (contrary to the service mapping which works top-down). This leads to the initial host to be "the bottom". In this case, this is the virtualized server. The discovery will only inventorize whats running on the server and what it connects to. It treats virtualized servers the same way as "normal", non-virtualized servers.
2) Discovery of virtualizing hardware/software (e.g. VMWare)
Part of the discovery will also be the discovery of a server which is running a virtualizing management system (e.g. VMWare). Again, bottom-up. Ergo, the server is discovered, then the discovery will find VCenter running on it (to stick with the example) and discover that. Then the VCenter discovery is triggered, which uses the VCenter management API to inventorize the virtualizing structure.
Part of that discovery via the API is also creating vm instance records as CIs. IF there is a matching server record (in the cmdb_ci_server table) a relationship will be created through this step.
This is also true for other virtualizing systems (and also for cloud discovery).
You will always need both of these steps to work. The second step will usually then create the relationship. The reason why the first one doesn't is due to information for the virtualizing infrastructure not being available through the host discovery itself but rather only through discovering the virtualizing or managing host(s).
In your case make sure, that the discovery is also able to discovery the servers for your management system and has the additional credentials to discover the virtualization system.
Hope this helps
Regards
Fabian
ps.: To find out what you need, the documentation regarding the discovery is product specific and in depth. E.g. you will be able to find how to discovery VMWare by checking the documentation from ServiceNow.

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-09-2024 01:23 AM
Hey,
This is pretty common and works as it should. The way the discovery of virtual machines (or any virtualized hardware) works is twofold:
1) Discovery of the virtualized hardware
The "normal" horizontal discovery will find virtualized objects within your infrastructure and create those accordingly. The discovery itself will always work bottom-up (contrary to the service mapping which works top-down). This leads to the initial host to be "the bottom". In this case, this is the virtualized server. The discovery will only inventorize whats running on the server and what it connects to. It treats virtualized servers the same way as "normal", non-virtualized servers.
2) Discovery of virtualizing hardware/software (e.g. VMWare)
Part of the discovery will also be the discovery of a server which is running a virtualizing management system (e.g. VMWare). Again, bottom-up. Ergo, the server is discovered, then the discovery will find VCenter running on it (to stick with the example) and discover that. Then the VCenter discovery is triggered, which uses the VCenter management API to inventorize the virtualizing structure.
Part of that discovery via the API is also creating vm instance records as CIs. IF there is a matching server record (in the cmdb_ci_server table) a relationship will be created through this step.
This is also true for other virtualizing systems (and also for cloud discovery).
You will always need both of these steps to work. The second step will usually then create the relationship. The reason why the first one doesn't is due to information for the virtualizing infrastructure not being available through the host discovery itself but rather only through discovering the virtualizing or managing host(s).
In your case make sure, that the discovery is also able to discovery the servers for your management system and has the additional credentials to discover the virtualization system.
Hope this helps
Regards
Fabian
ps.: To find out what you need, the documentation regarding the discovery is product specific and in depth. E.g. you will be able to find how to discovery VMWare by checking the documentation from ServiceNow.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-09-2024 02:37 AM
Hi @Fabian Kunzke ,
If the virtualizing hardware is not discovered then Discovery will treat the virtualized servers the same way as "normal", non-virtualized servers. But why the Is Virtual flag is set as True before it could identify it as a virtual server?

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-09-2024 03:55 AM
Hi,
The flag is set as part of the host discovery, as the server - on the OS level - is marked as being virtualized. But at this point the host discovery will not be able to identify how the server is virtualized.
Generally servers are always - with some very small exceptions - treated the same, no matter if they are virtualized or not. The discovery is a OS level scanning method. From an OS level virtualized and non-virtualized hardware works the same in regards to discovery.
Discovery of virtualizing hardware will give you the virtualizing infrastructure. Something you won't get from the OS level information of the virtualized server.
Regards
Fabian
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-09-2024 07:00 AM
Hi @Fabian Kunzke @Rahul Priyadars
Thanks for the response. Is there a way to find out all the servers in our cmdb which has the Virtual flag set to true and no relationships created to the host?