vPoller version 0.1.1 - New Features & Improvements
The VMware vSphere Distributed Pollers, a.k.a vPoller has reached version 0.1.1.
New features and improvements have been added to this version of vPoller. Below you will find a summary of the changes in vPoller version 0.1.1 along with a detailed changelog.
For more information about vPoller please refer to this article, which explains the design and goals of vPoller.
What's New in vPoller
Below you can find the summary of new features and improvements in vPoller version 0.1.1:
- New discovery and polling methods
- Caching of vSphere Managed Object References
- Multiple properties support
- Support for VirtualMachine objects
- Support for Datacenter objects
- Support for ClusterComputeResource objects
- vPoller CSV helper module
- ... and other cosmetic changes
Please read further for more details on what's new in vPoller version 0.1.1
New discovery and polling methods
Some of the old methods for polling a vSphere Object property has been
The table below summarizes the methods used in previous versions and the new names as found in version 0.1.1.
|Old Method||New Method||Description|
|host.poll||host.get||Get properties of a HostSystem object (ESXi host)|
|datastore.poll||datastore.get||Get properties of a Datastore object|
New methods and support for other vSphere Objects has been added in version 0.1.1 as well.
The table below provides a summary of the currently existing and
supported methods a
vPoller Worker now accepts and processes.
|host.get||Get properties of a HostSystem object (ESXi host)|
|datastore.get||Get properties of a Datastore object|
|vm.get||Get properties of a VirtualMachine object|
|datacenter.get||Get properties a Datacenter object|
|cluster.get||Get property of a ClusterComputeResource object|
|host.discover||Discovers all HostSystem objects (ESXi hosts)|
|datastore.discover||Discovers all Datastores objects|
|vm.discover||Discovers all VirtualMachine objects|
|datacenter.discover||Discovers all Datacenter objects|
|cluster.discover||Discovers all ClusterComputeResources objects|
As you can see we now support discovery and polling of the following vSphere Objects.
- HostSystem (ESXi hosts)
More methods and support for other vSphere Objects are to be supported as well soon enough.
Caching of vSphere Managed Object References
As with version 0.1.1 of vPoller we now use caching of vSphere MORs.
Caching of vSphere MORs helps avoiding unnecessary calls to discover a vSphere Object during polling.
In order to enable caching you need to add a new config entry to your
vPoller Worker Agents:
cachettl = 30
The value of
cachettl is the time in minutes in which we keep a
cache in memory for vSphere Objects.
Once that cache expires the
vPoller Worker Agent will update it's
cache with any new objects we might have.
Multiple properties support
Support for discovery and polling of multiple properties has been added to this version as well.
With multiple properties support you can send a request to your
vPoller Workers asking for multiple properties to be returned.
You can request multiple properties for an object by appending the properties separated by a comma at the command-line.
The example command below would request multiple properties to be returned for an ESXi host:
$ vpoller-client -m host.get \ -V vc01-test.example.org \ -e tcp://localhost:10123 \ -n esx01.example.org \ -p runtime.powerState,hardware.memorySize,summary.overallStatus
Additional properties can also be requested during discovery process as well.
Support for VirtualMachine objects
VirtualMachine objects has been added in this version as
The new methods related to
VirtualMachine objects are
vm.get which take care of discovering and polling of
VirtualMachine properties respectively.
This is how we could discover all Virtual Machines on a vSphere host:
$ vpoller-client -m vm.discover -V vc01-test.example.org -e tcp://localhost:10123
And this is how we could request properties for a
$ vpoller-client -m vm.discover \ -V vc01-test.example.org \ -e tcp://localhost:10123 \ -n vm01.example.org \ -p summary.overallStatus
Support for Datacenter objects
Basic support for
Datacenter objects has been added.
Now you can also discover all Datacenters on a vCenter server by using a command similar to the one below:
$ vpoller-client -m datacenter.discover -V vc01-test.example.org -e tcp://localhost:10123
Support for polling of
Datacenter object properties should be
available soon as well.
Support for ClusterComputeResource objects
Basic support for
ClusterComputeResource objects has been added.
Now you can also discover all clusters on a vCenter server by using a command similar to the one below:
$ vpoller-client -m cluster.discover -V vc01-test.example.org -e tcp://localhost:10123
Support for polling
ClusterComputeResource object properties should
become available soon as well.
vPoller CSV helper module
vPoller Helper Module has been added in version 0.1.1.
The new helper module takes care of translating a result
Worker message to CSV format.
A summary of the currently supported and existing
Modules can be found on the table below:
|vpoller.helpers.zabbix||Helper which returns data in Zabbix-friendly format|
|vpoller.helpers.csvhelper||Helper which returns data in CSV format|
In order to use the
vPoller Helper Modules specify the helper you
need at the command-line similar similar to the command below:
$ vpoller-client -H vpoller.helpers.csvhelper \ -m datastore.get \ -e tcp://localhost:10123 \ -V vc01.example.org \ -n <datastore-url> \ -p summary.capacity