VMware
Warning
If you are using the VMware integration, it is recommended to switch to the VMware Collection Agent plugin to ensure that you are getting the latest updates and features.
Overview Copied
The VMWare Collection Agent plugin monitors metrics and events from VMware vSpheres through the VMwareCollector
collector.
Metrics Copied
The VMwareCollector
collector monitors metrics of managed entity types such as HostSystem
or VirtualMachine
. Metrics can be monitored through the performance manager by supplying performance counters or by accessing the properties path.
Performance counter groups and labels Copied
-
Performance counter groups refer to the organization of performance counters through system resources (
mem
,cpu
,disk
). System resources are added in the configuration to filter which group to monitor. -
Performance counter labels refer to the display label used in the collector configuration and dataview display. These labels are added through a regular expression in the configuration to filter which metrics to monitor.
Each performance counter metric can have multiple instances, as described here. These instances may pertain to CPU cores such as 0, 1, 2, and 3, but will also have an empty instance which is the aggregated value of all instances.
Note
TheVMwareCollector
currently supports monitoring empty instances only.
Managed entity properties path Copied
Refers to the managed entity class member variable path. The paths are added in the configuration as a list of properties in order to monitor entity properties.
Events Copied
The VmwareCollector
collector monitors events through the event manager by querying using a filter.
This collector only supports severity
and time
, wherein the latter is calculated through the collectionInterval
with a default value of 10 seconds
.
Setting a low value for the collectionInterval
allows for events to be collected in near real-time. A longer collection interval broadens the time window for event collection, which means potential delays in collecting critical events logged in the vSphere and a need to process more events within a given period.
Note
Refer to the VMware documentation for the complete list of event filters and events. Note that:
Severity
is listed ascategory
in the VMware event filters documentation.- Each event can be extended to another type of event. These are listed in the
Extended by
section of the events documentation.
Prerequisites Copied
Geneos environment Copied
The VMware Collection Agent plugin requires the following versions of Geneos components:
- Gateway and Netprobe 7.1.x or higher. The same version must be used for the GSE schema.
- Collection Agent 5.0.0 or higher. To run a Collection Agent, see Collection Agent setup.
Note
Java 21 is the minimum required Java version for Collection Agent version 5.0.0.
The VMware Collection Agent plugin jar file is packaged with Netprobe, and is stored in the collection_agent
folder. Alternatively, you can download separate binaries for the VMware Collection Agent plugin from ITRS Downloads.
vSphere Copied
- vSphere versions 7.x or 8.x.
- URL to connect to either vCenter or ESXi.
- Username and password to connect to either vCenter or ESXi. Minimum privilege is read-only.
Set up your Collection Agent plugin Copied
Set up your collector in the Gateway Setup Editor by adding the following configuration in Dynamic Entities > Collectors. For more information, see Collectors in Dynamic Entities.
Configuration reference Copied
Warning
Upgrading to Geneos version 7.3 requires you to create a new configuration to ensure that the plugin functions properly. Configuration files from older versions will no longer be compatible.
Below is an example YAML file which may require some changes for your project’s configuration:
collectors:
# VMware collector configuration
- name: vmware
type: plugin
class-name: VmwareCollector
# URL to connect to the vSphere servers (required)
url: ${env:VMWARE_URL}
# Basic authentication used to connect to the vSphere (required)
username: ${env:BASIC_AUTH_USERNAME}
password: ${env:BASIC_AUTH_PASSWORD}
# Interval (in millis) between collections (optional, unused if not set).
# collectionInterval: 300000
# Metrics configuration (optional)
metrics:
# Interval (in millis) between collections (optional, default to collector collectionInterval or 5 minutes).
# collectionInterval: 300000
# Collection level used for availability of counters, used only for vCenter servers (optional, default unused)
# Please see documentation for reference link to see full list of available counters per level.
# collectionLevel: 1
# Entity and group configuration (mutually inclusive with severity).
# This lists the entities and metrics to be monitored by the collector.
# Please see documentation for further details.
entityGroups:
VirtualMachine:
#filter: .*(NAME1|NAME2).*
info:
- runtime.bootTime
- runtime.powerState
- runtime.toolsInstallerMounted
- runtime.cleanPowerOff
- runtime.dasVmProtection.dasProtected
- runtime.faultToleranceState
- runtime.numMksConnections
- runtime.onlineStandby
- runtime.question.text
- runtime.host.value
- runtime.recordReplayState
- runtime.suspendInterval
- runtime.suspendTime
- runtime.connectionState
- runtime.memoryOverhead
- summary.quickStats.guestHeartbeatStatus
- summary.quickStats.overallCpuUsage
- summary.quickStats.guestMemoryUsage
- summary.quickStats.hostMemoryUsage
- summary.quickStats.overallCpuDemand
- config.hardware.numCPU
- config.hardware.memoryMB
- config.hardware.numCoresPerSocket
- config.datastoreUrl.name
clusterServices: .*
cpu: Worst case allocation|Total|Usage|Usage in MHz
disk: Capacity|Highest latency|Space potentially used|Space not shared|Usage|Space actually used
mem: Consumed|Worst case allocation|Overhead consumed|Swap in rate|Swap out rate|Swap used|Total|Host consumed %|Balloon|Memory Type Total Bandwidth
network: Usage
sys: Heartbeat|Uptime
vmop: .*non-powered-on VMs.*
HostSystem:
info:
- config.product.apiType
- config.product.apiVersion
- config.product.build
- config.product.fullName
- config.product.instanceUuid
- config.product.licenseProductName
- config.product.licenseProductVersion
- config.product.localeBuild
- config.product.localeVersion
- config.product.osType
- config.product.productLineId
- config.product.vendor
- config.product.version
- summary.quickStats.uptime
- summary.hardware.memorySize
clusterServices: .*
cpu: Worst case allocation|Total|Usage|Usage in MHz
disk: Capacity|Highest latency|Space potentially used|Space not shared|Usage|Space actually used
mem: Consumed|Worst case allocation|Overhead consumed|Swap in rate|Swap out rate|Swap used|Total|Host consumed %|Balloon|Memory Type Total Bandwidth
network: Usage
sys: Heartbeat|Uptime
vmop: .*non-powered-on VMs.*
VmwareDistributedVirtualSwitch:
info:
- summary.productInfo.vendor
- summary.productInfo.build
- summary.productInfo.version
- overallStatus
ClusterComputeResource:
info:
- summary.effectiveMemory
- summary.effectiveCpu
- summary.overallStatus
- summary.usageSummary.cpuDemandMhz
- summary.usageSummary.totalCpuCapacityMhz
- summary.usageSummary.memDemandMB
- summary.usageSummary.totalMemCapacityMB
# Events configuration (optional)
events:
# Interval (in millis) between collections (optional, defaults to collector collectionInterval or 10 seconds).
# collectionInterval: 10000
# List of severity types to be collected. Allowed severity types are info, warning, error, and user. (mutually inclusive with entityGroups)
severity: [error]
Note
At least one configuration for metrics or events is required.
Common configuration details Copied
Variable | Description |
---|---|
url |
The URL needed to connect to either vCenter or ESXi. The format is <http or https>://<ESXi or vCenter URL>/sdk e.g. https://abc-vcenter.global.itrs/sdk |
username and password |
Authentication to connect to the vSphere through a The username or user account needs read-only privileges. Mandatory: Yes |
collectionInterval |
Interval (in milliseconds) between collections Mandatory: No; unused if not set. |
Configuration details for metric collection Copied
Variable | Description |
---|---|
collectionInterval |
Interval (in milliseconds) between collections Mandatory: No Default: 5 minutes |
collectionLevel |
Determine which performance counters are available for monitoring in VMware vCenter connections. For ESXi connections, For more information, see Data Collection Levels. Mandatory: No |
entityGroups |
Consist of:
|
Individual configuration formats for key-value pair rules Copied
Performance counter groups Copied
- Set the
key
as performance counter groups such asmem
,cpu
, anddisk
.- For vCenter and ESXi connections: If
collectionLevel
is unavailable in a vCenter connection, groups not included in the configuration will not be displayed. This behavior also applies to ESXi connections, where thecollectionLevel
configuration is automatically unavailable. - For vCenter connections only:
- If
collectionLevel
is available, groups that are part of the collection level but not in the configuration are displayed with all their corresponding counters. - If the group is included in the configuration, the regular expression will override the list of counters to be displayed.
- If
- For vCenter and ESXi connections: If
- Set the
value
as a regular expression that matches performance counter labels.
Managed entity information Copied
- Set the
key
to “info”. - Set the
value
as a list of managed entity properties path of the given entity type.
Managed entity filtering Copied
- Set the
key
to “filter”. - Set the
value
as a regular expression that matches the managed entity name.
Sample VMware metric dataview Copied
Configuration details for event collection Copied
Variable | Description |
---|---|
collectionInterval |
Interval (in milliseconds) between collections Mandatory: No Default: 10 seconds |
severity |
List of event categories to be monitored such as info , warning , error , and user . |
Sample FKM VMware event dataview Copied
Configure your mappings Copied
To show metrics and events in Geneos, dynamic mappings must be configured and attached to the Netprobe receiving the data from the Collection Agent. Select one of the options listed below to configure your dynamic mappings.
- Add
templates/vmware_mapping.xml
as an include file in your Gateway. This template file is available in the Gateway package and includes sample mappings that you can use. - Choose a built in mapping in Dynamic Entities > Mapping.
- Set up a custom mapping in Dynamic Entities > Mapping.
For more information, see the Mapping and mapping group in Dynamic Entities documentation.
Server connection Copied
The collector currently trusts all servers and does not verify hostnames. Only basic authentication is used by means of username
and password
that has a minimum role of read-only. When the connection drops and reconnects, the collector can continue operation given that the initial connection was successful.
VMware services metric metadata Copied
A reference list of VMware service metric metadata can be downloaded here. This file includes all metric metadata, categorized as either counter
, event
, or property
. Each category has a masterlist (in CSV format) of all their respective metadata.
The categories are further divided into subcategories:
counter
service — metadata is organized by group in the foldercounter\byGroup
, with separate CSV files available for each metadata group.event
service — metadata is organized by event, with a CSV file available in the folderevent
.property
service — metadata is organized by entity in the folderproperty\byEntity
, with separate CSV files available for each metadata entity.