Stackstate-VMware Integration

Overview

Install the Stackstate VMware vSphere integration to:

  • Get your performance metrics from vSphere and see them all in Stackstate.
  • Get vSphere events in Stackstate and overlay them on top of your metrics (vMotion, configuration changes, on/off…).
  • Interact with your teams on dashboards and the event stream, showing all vSphere data at one glance.

Installation

  1. Install the Stackstate windows agent on your vCenter server.
  2. Create a Stackstate user in the Administration section of vCenter, you can use the default Read-Only access group.

Configuration

  1. Configure the Agent to connect to your vCenter instance. Edit conf.d/vsphere.yaml:

    init_config:
    
    instances:
      - name: main-vcenter
        host: vcenter.domain.com
        username: stackstate-readonly@vsphere.local
        password: mypassword
    
  2. Restart the Agent

Configuration Options

  • ssl_verify (Optional) - Set to false to disable SSL verification, when connecting to vCenter optional
  • ssl_capath (Optional) - Set to the absolute file path of a directory containing CA certificates in PEM format
  • host_include_only_regex (Optional) - Use a regex like this if you want only the check to fetch metrics for these ESXi hosts and the VMs running on it
  • vm_include_only_regex (Optional) - Use a regex to include only the VMs that are matching this pattern.
  • include_only_marked (Optional) - Set to true if you’d like to only collect metrics on vSphere VMs which are marked by a custom field with the value ‘StackstateMonitored’. To set this custom field with PowerCLI, use the follow command: Get-VM <MyVMName> | Set-CustomField -Name "StackstateMonitored" -Value "StackstateMonitored"
  • all_metrics (Optional) - When set to true, this will collect EVERY metric from vCenter, which means a LOT of metrics you probably do not care about. We have selected a set of metrics that are interesting to monitor for you if false.
  • event_config (Optional) - Event config is a dictionary. For now the only switch you can flip is collect_vcenter_alarms which will send as events the alarms set in vCenter.

For more details about configuring this integration refer to the following file(s) on GitHub:

Validation

Execute the info command and verify that the integration check has passed. The output of the command should contain a section similar to the following:

Checks
======

  [...]

  vsphere
  -------
      - instance #0 [OK]
      - Collected 8 metrics & 0 events

Metrics

vsphere.cpu.extra
(gauge)
Milliseconds of extra CPU time.
shown as millisecond
vsphere.cpu.ready
(gauge)
Milliseconds of CPU time spent in ready state.
shown as millisecond
vsphere.cpu.usage
(gauge)
Percentage of CPU capacity being used.
shown as percent
vsphere.cpu.usagemhz
(gauge)
Total megehertz of CPU being used.
shown as megahertz
vsphere.disk.commandsAborted
(gauge)
Number of SCSI commands aborted.
shown as occurrence
vsphere.disk.deviceLatency
(gauge)
Average amount of time it takes to complete an SCSI command from physical device.
shown as millisecond
vsphere.disk.deviceReadLatency
(gauge)
Average amount of time it takes to complete read from physical device.
shown as millisecond
vsphere.disk.deviceWriteLatency
(gauge)
Average amount of time it takes to complete write to the physical device (LUN).
shown as millisecond
vsphere.disk.queueLatency
(gauge)
Average amount of time spent in VMkernel queue (per SCSI command).
shown as millisecond
vsphere.disk.totalLatency
(gauge)
Sum of average amount of time (in kernel and device) to process an SCSI command issued by the Guest OS to the vm.
shown as millisecond
vsphere.mem.active
(gauge)
Kilobytes of memory that the VMkernel estimates is being actively used based on recently touched memory pages.
shown as kibibyte
vsphere.mem.compressed
(gauge)
Kilobytes of memory that have been compressed.
shown as kibibyte
vsphere.mem.consumed
(gauge)
Kilobytes of used memory.
shown as kibibyte
vsphere.mem.overhead
(gauge)
Kilobytes of memory allocated to a vm beyond its reserved amount.
shown as kibibyte
vsphere.mem.vmmemctl
(gauge)
Kilobytes of memory allocated by the virtual machine memory control driver (vmmemctl).
shown as kibibyte
vsphere.network.received
(rate)
Number of kilobytes received by the host.
shown as kibibyte
vsphere.network.transmitted
(rate)
Number of kilobytes transmitted by the host.
shown as kibibyte