💠VMWare vSphere
StackState Self-hosted v5.1.x
Overview
The VMWare vSphere StackPack is used to create a near real-time synchronization with VMWare vSphere. This StackPack provides functionality that allows monitoring of the following resources:
Hosts
VirtualMachines
ComputeResources
ClusterComputeResources
DataStores
DataCenters
VMWare vSphere is a StackState core integration.
The VMware StackPack collects all topology data for the components and relations between them as well as telemetry and events.
StackState Agent V3 connects to the configured VMWare vSphere instance:
Topology data and tags are retrieved for the configured resources.
Metrics data is retrieved for the configured resources.
The Agent watches the vCenter Event Manager for events related to the configured resources.
StackState Agent V3 pushes retrieved data and events to StackState:
Topology data is translated into components and relations.
Tags defined in VMWare vSphere are added to components and relations in StackState. Any defined StackState tags are used by StackState when the topology is retrieved.
Metrics data is automatically mapped to associated components and relations in StackState.
Events are available as a telemetry stream in StackState.
Setup
Prerequisites
To set up the StackState VMWare vSphere integration, you need to have:
StackState installed on a single machine with HTTPS connection to both vSphere vCenter and StackState.
A running vSphere vCenter instance.
Install
The VMWare vSphere StackPack can be installed from the StackState UI StackPacks > Integrations screen. You will need to enter the following details:
VSphere Host Name - The VMWare vSphere host name from which data will be collected.
Configure
To enable the VMWare vSphere check and begin collecting data from your vSphere vCenter instance:
Edit the Agent integration configuration file
/etc/stackstate-agent/conf.d/vsphere.d/conf.yaml
to include details of your vSphere vCenter instance:name - aA unique key representing your vCenter instance.
host - The same as the
VSphere Host Name
used when the StackPack was installed.username - The username to use when connecting to VMWare vSphere.
password - Use secrets management to store passwords outside of the configuration file.
# Section used for global vsphere check config init_config: instances: - name: <name> # for example main-vcenter host: <host_name> # for example vcenter.domain.com username: <username> password: <password>
If required, you can customise the integration using the advanced configuration options.
Restart StackState to publish the configuration changes.
Once the Agent has restarted, wait for the Agent to collect the data and send it to StackState.
Advanced configuration
The advanced configuration items described below can optionally be added to the VMWare vSphere check configuration file. Further details can be found in the example configuration file (github.com).
all_metrics
No
Default false
. Set to true
to collect every metric. This will collect a LOT of metrics that you probably don't need. When set to false
(default), a selected set of metrics that are interesting to monitor will be collected. Note that when using both all_metrics
and collection_level
setting all_metrics
will be ignored.
collection_level
No
Specify the metrics to retrieve using a data collection level (docs.vmware.com) (a number between 1 and 4). Note that when using both all_metrics
and collection_level
setting all_metrics
will be ignored.
ssl_verify
No
Set to false
to disable SSL verification when connecting to vCenter.
ssl_capath
No
The absolute file path of a directory containing CA certificates in PEM format.
host_include_only_regex
No
Use a regex pattern to only fetch metrics for these ESXi hosts and the VMs running on them.
vm_include_only_regex
No
Use a regex to include only VMs that match the specified pattern.
include_only_marked
No
Set to true
, if you would like to only collect metrics on vSphere VMs that are marked by a custom field with the value StackStateMonitored
. To set this custom field with PowerCLI, use the command: `Get-VM
collect_vcenter_alarms
No
set to true
to send vCenter alarms as events.
Status
To check the status of the VMWare vSphere integration, run the status subcommand and look for vSphere under Running Checks
:
sudo stackstate-agent status
Integration details
Data retrieved
The VMWare vSphere integration retrieves the following data:
Events
VMWare vSphere events are sent to StackState in a telemetry stream. These can be mapped to components and relations in the StackState topology, however, they won't be visible in the StackState Events Perspective.
The VMWare vSphere check watches the vCenter Event Manager for the events listed below and makes these available in StackState in the generic events topic telemetry stream:
AlarmStatusChangedEvent:Gray
VmBeingHotMigratedEvent
VmReconfiguredEvent
VmPoweredOnEvent
VmMigratedEvent
TaskEvent:Initialize powering On
TaskEvent:Power Off virtual machine
TaskEvent:Power On virtual machine
TaskEvent:Reconfigure virtual machine
TaskEvent:Relocate virtual machine
TaskEvent:Suspend virtual machine
TaskEvent:Migrate virtual machine
VmMessageEvent
VmSuspendedEvent
VmPoweredOffEvent
Metrics
The metrics retrieved from VMWare vSphere can be configured in the Agent check configuration file using the configuration items collection_level and all_metrics. For details see the section advanced configuration of the VMWare vSphere check (above) and the vmware docs on Data Collection Levels (docs.vmware.com).
Tags
All tags defined in VMWare vSphere will be retrieved and added to the associated components and relations in StackState.
The VMWare vSphere integration also understands StackState common tags. These StackState tags can be assigned to elements in VMWare vSphere to influence the way that the resulting topology is built in StackState. For example, by placing a component in a specific layer or domain.
Topology
The VMWare vSphere integration retrieves the following topology data:
Components
Relations
Traces
The VMWare vSphere integration doesn't retrieve any traces data.
REST API endpoints
The VMWare vSphere integration connects to VMWare vSphere using the VMWare vSphere client library and Python modules pyvim
and pyVmomi
. No API endpoints are used.
Open source
The code for the StackState VMware vSphere check is open source and available on GitHub at:
https://github.com/StackVista/stackstate-agent-integrations/tree/master/vsphere
Troubleshooting
Troubleshooting steps for any known issues can be found in the StackState support Knowledge base.
Uninstall
To uninstall the VMWare vSphere StackPack and disable the VMWare vSphere check:
Go to the StackState UI StackPacks > Integrations > VMWare vSphere screen and click UNINSTALL.
All VMWare vSphere specific configuration will be removed from StackState.
Remove or rename the Agent integration configuration file, for example:
mv vsphere.d/conf.yaml vsphere.d/conf.yaml.bak
Restart StackState to apply the configuration changes.
Release notes
VMWare vSphere StackPack v2.3.3 (2022-06-03)
Improvement: Updated documentation
VMWare vSphere StackPack v2.3.2 (2022-04-20)
Improvement: Added collection level setting info.
VMWare vSphere StackPack v2.3.1 (2021-04-12)
Improvement: Common bumped from 2.5.0 to 2.5.1
See also
Last updated