Hyper-V discovery
The ServiceNow Discovery application finds Microsoft Hyper-V hypervisors in your environment.
Hyper-V is a hypervisor developed by Microsoft that enables you to create and manage virtual machines (VMs) on a physical server or computer. It enables hardware virtualization, enabling multiple virtual machines to run on a single physical machine while sharing the underlying hardware resources, such as CPU, memory, storage, and networking.
- Failover clustering: Failover is managed with Failover Cluster Manager.
- Live migration: Virtual machines can be moved between failover cluster nodes without bringing down the virtual machine.
Supported versions
- 2008
- 2012
- 2012 R2
- 2016
- 2019
- 2022
- 2025
Hyper-V data models
- Hyper-V on Windows Server: This model, installed as a server role on Windows Servers, is designed for enterprises needing both virtualization and other server roles (for example: file servers, Active Directory, web servers) on the same machine.
- Hyper-V Server (Standalone): A free, lightweight version of Windows Server specifically designed for virtualization. It includes only the Hyper-V hypervisor and no graphical user interface (GUI) or additional server roles.
Discovery supports identifying and mapping both types of Hyper-V environments. However, the CMDB data models differ between the two deployment types.
| Key aspects | Windows Server with Hyper-V role | Hyper-V Server |
|---|---|---|
| Hyper-V Server CI |
|
Name of the CI is the Hyper-V Server. |
| Hyper-V Cluster has Members::Member of relationship with Hyper-V Server | Yes The Hyper-V Server table:
|
Yes The Hyper-V Server table:
|
| Hyper-V Server has Runs on::Runs relationship with Windows Server | Yes The Windows Server table:
|
No |
| Operating system (OS) installed on the VM has Virtualized by::Virtualizes relationship with Hyper-V Server | Yes The OS table (for example: Windows Server/Linux Server):
|
Yes The OS table (for example: Windows Server/Linux Server):
|
| OS installed on the VM has Instantiates::Instantiated by relationship with Hyper-V Virtual Machine Instance | Yes | Yes |
| CPU cores count | Is identical between the physical Windows Server host and the Hyper-V Server | The parent Windows Servers table reflects the physical cores, while the Hyper-V Server table displays the virtual cores |
Credentials
Configure Windows credentials with Domain administrator rights. You should also Enable PowerShell for the MID Server used to discover Hyper-V servers and instances.
Classifier, probes, and pattern
| Classifier | Probes | Pattern |
|---|---|---|
| Hyper-V Server The classification applies to standalone Hyper-V servers only (servers NOT running on Windows 2008). |
|
Hyper-V Server |
*These probes aren't active on the classifier, as Discovery uses patterns by default for these discoveries.
^These probes remain active by default, even when Discovery uses pattern discovery.
To use patterns, verify that the correct pattern is specified in the horizontal pattern probe on the classifier. See Add the Horizontal Pattern probe to a classifier for instructions.
Data collected by Discovery during horizontal discovery
| Label | Field Name | Data Description | Stored in Table |
|---|---|---|---|
| Object ID ^ | object_id | ID | cmdb_ci_hyper_v_instance |
| Name^ | name | name | cmdb_ci_hyper_v_instance |
| State | state |
|
cmdb_ci_hyper_v_instance
* |
| CPUs | cpus | Count | cmdb_ci_hyper_v_instance
* |
| Memory | memory | Quantity in MB | cmdb_ci_hyper_v_instance
* |
| Network adapters | nics | Count | cmdb_ci_hyper_v_instance
* |
| Disks | disks | Count+ | cmdb_ci_hyper_v_instance
* |
| Disks size | disks_size | Capacity in GB+ | cmdb_ci_hyper_v_instance
* |
| Virtual Base Board Serial Number | baseboard_serial | Virtual serial number | cmdb_ci_hyper_v_instance |
| BIOS Serial Number | bios_serial | Virtual serial number | cmdb_ci_hyper_v_instance |
| Chassis Serial Number | chassis_serial | Virtual serial number | cmdb_ci_hyper_v_instance |
| BIOS GUID | bios_guid | Globally unique identifier (GUID) | cmdb_ci_hyper_v_instance |
cmdb_ci_hyper_v_instance table when
using the Hyper-V Server pattern. For upgrades, probes and sensors continue to put these
attributes in the cmdb_ci_vm_instance table.^Newly discovered attribute when using the Hyper-V Server pattern.
+Discovery can only return this information if the virtual machine is running.
| Label | Field | Store in table |
|---|---|---|
| Name | name | cmdb_ci_hyper_v_server |
| Chassis type | chassis_type | cmdb_ci_hyper_v_server |
| Description | short_description | cmdb_ci_hyper_v_server |
| OS Address Width (bits) | os_address_width | cmdb_ci_hyper_v_server |
| Operating System | OS | cmdb_ci_hyper_v_server |
| Host name | hostname | cmdb_ci_hyper_v_server |
| IP Address | ip_address | cmdb_ci_hyper_v_server |
| OS Version | os_version | cmdb_ci_hyper_v_server |
| OS Service Pack | os_service_pack | cmdb_ci_hyper_v_server |
| Is virtual | virtual | cmdb_ci_hyper_v_server |
| Label | Field Name | Data Description | Stored in Table |
|---|---|---|---|
| Name | name | Name of the virtual network | cmdb_ci_hyper_v_network
* |
| ID | object_id | Globally unique identifier (GUID) | cmdb_ci_hyper_v_network
* |
*Attributes that are put in the cmdb_ci_hyper_v_network table when using
the Hyper-V Server pattern. For upgrades, probes and sensors continue to put these
attributes in the cmdb_ci table (name) and the
cmdb_ci_vm_object table (object_id).
| Label | Field Name | Data Description | Stored in Table |
|---|---|---|---|
| Name^ | name | Name of the resource pool. | cmdb_ci_hyper_v_resource_pool |
| ID | object_id | Globally unique identifier (GUID) | cmdb_ci_hyper_v_rpool_comp |
| Capacity | capacity | Maximum amount of the appropriate allocation unit | cmdb_ci_hyper_v_rpool_comp |
| Allocation units | allocation_units | Units of measurement used (for example, MB or GB) | cmdb_ci_hyper_v_rpool_comp |
| Resource type | resource_type | Type of resource discovered (for example, memory, or hard drive space) | cmdb_ci_hyper_v_rpool_comp |
| Label | Field Name | Data Description | Stored in Table | Reference Table |
|---|---|---|---|---|
| Windows Cluster | name | Reference field displaying the Windows Cluster on which the Hyper-V cluster resides. | cmdb_ci_hyper_v_cluster |
cmdb_ci_win_cluster |
Relationships
Discovery creates records in the CMDB for the host machine, the parent partition running Windows Server 2008, and all the virtual machines running on the Hyper-V server. Discovery finds the stored templates and maps all the relationships between components.
| Table | Purpose |
|---|---|
Virtualization Server [cmdb_ci_virtualization_server] |
Contains data on all discovered virtualization servers. |
Virtual Machine Instance [cmdb_ci_vm_instance] |
Contains data on all discovered virtual machine instances. |
Virtual Machine Object [cmdb_ci_vm_object] |
Contains data about various objects associated with a Hyper-V server, such as partitions, networks, resource pools, and clusters. |
| Parent table | Relationship | Child table |
|---|---|---|
| Hyper-V Virtual Machine Instance [cmdb_ci_hyper_v_instance] | Registered on::Has registered | Hyper-V Server [cmdb_ci_hyper_v_server] |
| Hyper-V Virtual Machine Instance [cmdb_ci_hyper_v_instance] | Connected by ::Connects | Hyper-V Network [cmdb_ci_hyper_v_network] |
| Hyper-V Network [cmdb_ci_hyper_v_network] | Provided::Provides | Hyper-V Server [cmdb_ci_hyper_v_server] |
| Hyper-V Resource Pool [cmdb_ci_hyper_v_resource_pool] | Defines resources for:Gets resources from | Hyper-V Server [cmdb_ci_hyper_v_server] |
| Hyper-V Resource Pool Components [cmdb_ci_hyper_v_rpool_comp] | Contained by::Contains | Hyper-V Resource Pool [cmdb_ci_hyper_v_resource_pool] |
| Hyper-V Cluster [cmdb_ci_hyper_v_cluster] | Members::Member of | Hyper-V Server [cmdb_ci_hyper_v_server] |
| Hyper-V Server [cmdb_ci_hyper_v_server] | Runs on::Runs | Windows Servers [cmdb_ci_win_server] |
| Windows Servers [cmdb_ci_win_server] | Instantiates::Instantiated by | Hyper-V Virtual Machine Instance [cmdb_ci_hyper_v_instance] |
| Windows Servers [cmdb_ci_win_server] | Virtualized by::Virtualizes | Hyper-V Server [cmdb_ci_hyper_v_server] |
Clone Hyper-V virtual machines
When importing (cloning) Hyper-V virtual machines, make sure each virtual machine has a unique ID. Discovery identifies virtual machines with duplicate IDs as the same machine.
- Export the virtual machine from the Hyper-V server.
- Import the virtual machine into a different server, making one of the these choices:
- Move or restore the virtual machine: This selection clones the image, using the same ID, and moves it to another server. The original image remains on the Hyper-V server.
- Copy the virtual machine: This selection copies the virtual machine, using a different ID, and moves it from the Hyper-V server. This is the best selection and does not require any further action before you run Discovery.
- If you import the Hyper-V clone using the Move or restore selection,
be sure to delete the original image from the Hyper-V server.
When Discovery encounters two virtual machines with the same equivalent serial numbers, it creates only one configuration item (CI).