README.md

vSphere

Metadata associated with SignalFx's vSphere integration can be found here. The relevant code for the plugin can be found here.

DESCRIPTION

This is the SignalFx vSphere integration. It collects metrics from vCenter and reports metrics to SignalFx

FEATURES

Built-in dashboards
  • vCenter: Overview of vCenter architecture from all Objects in the vCenter inventory.

  • ESX-Host: Provides metrics for a single ESX-Host.

  • ESX-Hosts: Provides metrics for all the ESX-Hosts in vCenter.

  • VM: Provides metrics for a single Virtual Machine.

  • VMs: Provides metrics for all the Virtual Machines in vCenter.

REQUIREMENTS AND DEPENDENCIES

Version information

Software Version
vCenter 5.5 or later

INSTALLATION

  1. Download the latest SignalFx-vSphere monitoring application ovf template zip file.

  2. Unzip the ovf template zip file.

  3. Deploy the ovf template to the vCenter using a connected/configured vSphere client.

  4. Login to the virtual machine . User : signalfx Password : signalfx

  5. Modify the sample configuration file located at /etc/vsphere/config.yaml as described in Configuration, below.

  6. Perform basic checks for network connectivity of VM by $ service vsphere-monitor check

  7. If the version of the vCenter is less than 6.5, please check the article https://kb.vmware.com/s/article/2107096 to increase the volume of metrics sent by vCenter.

  8. Restart the service by $ service vsphere-monitor restart

CONFIGURATION

Using the example configuration file config.yaml as a guide, provide values for the configuration options listed below that make sense for your environment and allow you to connect to the VCenter to be monitored.

configuration option definition example value
host Hostname or IP address of the vCenter Server. 192.168.1.60
username Username required to login to vCenter Server. administrator@vsphere.local
password Password required to login to vCenter Server. Abcd123$
Name Name of the vCenter Server. VCenter-Signalfx
IngestToken SignalFx Ingest Token required to send metrics to ingest server. rJWesf1235RTsffseuv
MORSyncInterval Time interval at which the vCenter inventory should be synced. 300
MORSyncTimeout The time that the application should wait for the vCenter inventory to synchronize the first time. Larger inventories will require a longer timeout. This timeout should be increased according to the inventory size when the application fails with MORSyncTimeout error message. 600
MetricSyncInterval Time interval at which the available metrics should be synced. 300
MetricSyncTimeout The time that the application should wait for metrics to synchronize the first time. This should be increased when the volume of metrics is high. This timeout should be increased when the application fails with MetricSyncTimeout error message. 600
IngestEndpoint The url of ingest endpoint to send to metrics. https://ingest.signalfx.com
IngestTimeout The timeout interval for sending metrics to signalfx ingest endpoint. 20
IncludeMetrics Metrics required for different inventory objects can be included individually. Currently metrics can be added for datacenter, cluster, host and vm. mem.usage.average
ExcludeMetrics Metrics emitted from different inventory objects can be excluded individually. mem.usage.average
Dimensions Additional dimensions to be added to each datapoint. dimension_key: "dimension_value"

Example configuration:

config:
  - host: 192.168.1.60
    username: administrator@vsphere.local
    password: Abcd123$
    Name: VCenter4
    IngestToken: rJWesf1235RTsffseuv
    IngestEndpoint: 'https://ingest.signalfx.com'
    IngestTimeout: 20
    MORSyncInterval: 300
    MORSyncTimeout: 600
    MetricSyncInterval: 300
    MetricSyncTimeout: 600
    IncludeMetrics:
      host:
        - mem.swapused.average
      cluster:
        - mem.usage.average
    Dimensions:
      dimension_key: "dimension_value"
      dimension_key1: "dimension_value1"

The application can be configured to collect metrics from multiple VCenters in the following manner.

config:
  - host: 192.168.1.60
    username: administrator@vsphere.local
    password: Abcd123$
    Name: VCenter4
    IngestToken: rJWesf1235RTsffseuv
    IngestEndpoint: 'https://ingest.signalfx.com'
    IngestTimeout: 10
    MORSyncInterval: 300
    MORSyncTimeout: 1200
    MetricSyncInterval: 300
    MetricSyncTimeout: 900
    IncludeMetrics:
      host:
        - mem.swapused.average
      cluster:
        - mem.usage.average
    Dimensions:
      dimension_key: "dimension_value"
      dimension_key1: "dimension_value1"

  - host: 192.168.1.20
    username: administrator@vsphere.local
    password: Abcd123$
    Name: 192.168.1.20
    IngestToken: rJWesf1235RTsffseuv
    IngestEndpoint: 'https://ingest.signalfx.com'
    MORSyncInterval: 20
    MetricSyncInterval: 60
    ExcludeMetrics:
      host:
        - disk.usage.average

USAGE

Interpreting Built-in dashboards

  • vCenter:

    • Number of Datacenters: Total number of Datacenters in the vCenter.

    • Number of Clusters: Total number of Clusters in the vCenter.

    • Number of Hosts: Total number of Hosts in the vCenter.

    • Number of VMs: Total number of Virtual Machines in the vCenter.

    • Top Hosts by CPU Usage: List of top hosts having highest CPU Usage

    • Top Hosts by Memory Usage: List of top hosts having highest Memory Usage

  • ESX-Host:

    • Up time: Total uptime of ESX-Host in days.

    • CPU Usage: CPU Usage percentage of ESX-Host.

    • Memory Usage: Memory Usage percentage of ESX-Host.

    • Disk Usage: Disk Usage percentage of ESX-Host.

    • Network IO: Network IO operations of ESX-Host in bits/sec.

    • Number of VMs: Total number of Virtual Machines in the ESX-Host.

  • ESX-Hosts:

    • Top Hosts by VM count: List of top Hosts having highest VM count.

    • CPU Usage: Percentile distribution of CPU Usage of different Hosts in the vCenter.

    • Memory Usage: Percentile distribution of Memory Usage of different Hosts in the vCenter.

    • Disk Usage: Percentile distribution of Disk Usage of different Hosts in the vCenter

    • Network IO: Percentile distribution of Network Usage of different Hosts in the vCenter.

    • Number of VMs: Stack chart of VM count of different Hosts present in the vCenter.

  • VM:

    • Up time: Total uptime of VM in days.

    • CPU Usage: CPU Usage percentage of VM.

    • Memory Usage: Memory Usage percentage of VM.

    • Disk Usage: Disk Usage percentage of VM.

    • Network IO: Network IO operations of VM in bits/sec.

    • Datastore Latency: Datastore latency of VM in seconds.

  • VMs:

    • CPU Usage: Percentile distribution of CPU Usage of different VMs in the vCenter.

    • Memory Usage: Percentile distribution of Memory Usage of different VMs in the vCenter.

    • Disk Usage: Percentile distribution of Disk Usage of different VMs in the vCenter

    • Network IO: Percentile distribution of Network Usage of different VMs in the vCenter.

    • Up time: List of top VMs having highest uptime in the vCenter.

METRICS

For documentation of the metrics and dimensions emitted by this plugin, click here.

LICENSE

This integration is released under the Apache 2.0 license. See LICENSE for more details.