Skip to main content

Hyper-V

Plugin: windows.plugin Module: PerflibHyperV

Overview

This collector monitors Hyper-V virtualization metrics including virtual machine health status, root partition virtualization layer statistics (TLB flushes, address spaces, attached devices, GPA space), per-VM CPU usage, memory allocation and pressure, storage device I/O and errors, network interface traffic and packets, and virtual switch traffic, packets, and dropped packets.

It queries the 'HyperV' object from Perflib in order to gather the metrics.

This collector is only supported on the following platforms:

  • windows

This collector only supports collecting metrics from a single instance of this integration.

Default Behavior

Auto-Detection

The collector automatically detects all of the metrics, no further configuration is required.

Limits

The default configuration for this integration does not impose any limits on data collection.

Performance Impact

The default configuration for this integration is not expected to impose a significant performance impact on the system.

Setup

Prerequisites

No action required.

Configuration

Options

OptionDescriptionDefaultRequired
update everyData collection frequency.5no

via File

The configuration file name for this integration is netdata.conf. Configuration for this specific integration is located in the [plugin:windows:PerflibHyperV] section within that file.

The file format is a modified INI syntax. The general structure is:

[section1]
option1 = some value
option2 = some other value

[section2]
option3 = some third value

You can edit the configuration file using the edit-config script from the Netdata config directory.

cd /etc/netdata 2>/dev/null || cd /opt/netdata/etc/netdata
sudo ./edit-config netdata.conf
Examples

There are no configuration examples.

Alerts

There are no alerts configured by default for this integration.

Metrics

Metrics grouped by scope.

The scope defines the instance that the metric belongs to. An instance is uniquely identified by a set of labels.

Per Hyper-V

These metrics refer to the Hyper-V instance.

This scope has no labels.

Metrics:

MetricDescriptionDimensionsUnit
hyperv.vms_healthVirtual machines health statusok, criticalvms
hyperv.root_partition_io_tlb_flushRoot partition flushes of I/O TLBsgpaflushes/s
hyperv.root_partition_virtual_tlb_flush_entriesRoot partition flushes of the entire virtual TLBflushesflushes/s
hyperv.root_partition_virtual_tlb_pagesRoot partition pages used by the virtual TLBusedpages
hyperv.root_partition_address_spaceRoot partition address spaces in the virtual TLBaddress_spacesaddress spaces
hyperv.root_partition_attached_devicesRoot partition attached devicesattacheddevices
hyperv.root_partition_device_dma_errorsRoot partition illegal DMA requestsillegal_dmarequests
hyperv.root_partition_device_interrupt_errorsRoot partition illegal interrupt requestsillegal_interruptrequests
hyperv.root_partition_device_interrupt_throttle_eventsRoot partition throttled interruptsthrottlingevents
hyperv.root_partition_deposited_pagesRoot partition deposited pagesgpapages
hyperv.root_partition_device_space_pagesRoot partition device space pages4K, 2M, 1Gpages
hyperv.root_partition_gpa_space_pagesRoot partition GPA space pages4K, 2M, 1Gpages
hyperv.root_partition_gpa_space_modificationsRoot partition GPA space modificationsgpamodifications/s

Per Virtual Machine

These metrics refer to the Virtual Machine.

Labels:

LabelDescription
vm_nameThe name of the Virtual Machine.

Metrics:

MetricDescriptionDimensionsUnit
hyperv.vm_cpu_usageVM CPU usageusagepercentage
hyperv.vm_cpu_usage_by_run_contextVM CPU usage by run contextguest, hypervisor, remotepercentage
hyperv.vm_memory_physicalVM assigned memoryassignedbytes
hyperv.vm_memory_physical_guest_visibleVM guest visible memoryvisible, availablebytes
hyperv.vm_memory_pressure_currentVM Memory Pressurepressurepercentage
hyperv.vm_vid_physical_pages_allocatedVM physical pages allocatedallocatedpages
hyperv.vm_vid_remote_physical_pagesVM physical pages not allocated from the preferred NUMA noderemote_physicalpages

Per Virtual Machine Storage Device

These metrics refer to the Virtual Machine Storage Device.

Labels:

LabelDescription
vm_storage_deviceThe name of the Storage Device.

Metrics:

MetricDescriptionDimensionsUnit
hyperv.vm_storage_device_bytesVM storage device IOread, writebytes/s
hyperv.vm_storage_device_operationsVM storage device IOPS"read, writeoperations/s
hyperv.vm_storage_device_errorsVM storage device errorserrorserrors/s

Per Virtual Machine Network Interface

These metrics refer to the Virtual Machine Network Interface.

Labels:

LabelDescription
vm_net_interfaceThe name of the Network Interface.

Metrics:

MetricDescriptionDimensionsUnit
hyperv.vm_net_interface_trafficVM interface trafficreceived, sentkilobits/s
hyperv.vm_net_interface_ipsec_trafficVM interface trafficreceived, sentkilobits/s
hyperv.vm_net_interface_packetsVM interface packetsreceived, sentpackets/s
hyperv.vm_net_interface_directed_packetsVM interface directed packetsreceived, sentpackets/s
hyperv.vm_net_interface_broadcast_packetsVM interface broadcastreceived, sentpackets/s
hyperv.vm_net_interface_multicast_packetsVM interface multicastreceived, sentpackets/s
hyperv.vm_net_interface_packets_droppedVM interface packets droppedincoming, outgoingdrops/s

Per Virtual Switch

These metrics refer to the Virtual Switch.

Labels:

LabelDescription
vswitchThe name of the Virtual Switch.

Metrics:

MetricDescriptionDimensionsUnit
hyperv.vswitch_trafficVirtual switch trafficreceived, sentkilobits/s
hyperv.vswitch_packetsVirtual switch packetsreceived, sentpackets/s
hyperv.vswitch_directed_packetsVirtual switch directed packetsreceived, sentpackets/s
hyperv.vswitch_broadcast_packetsVirtual switch broadcast packetsreceived, sentpackets/s
hyperv.vswitch_multicast_packetsVirtual switch multicast packetsreceived, sentpackets/s
hyperv.vswitch_dropped_packetsVirtual switch dropped packetsincoming, outgoingdrops/s
hyperv.vswitch_extensions_dropped_packetsVirtual switch extensions dropped packetsincoming, outgoingdrops/s
hyperv.vswitch_packets_floodedVirtual switch flooded packetsfloodedpackets/s
hyperv.vswitch_learned_mac_addressesVirtual switch learned MAC addresseslearnedmac addresses/s
hyperv.vswitch_purged_mac_addressesVirtual switch purged MAC addressespurgedmac addresses/s

Do you have any feedback for this page? If so, you can open a new issue on our netdata/learn repository.