Skip to content


Subversion checkout URL

You can clone with
Download ZIP
An attempt at a ZenPack that integrated Puppet and Zenoss
Python Puppet Ruby JavaScript Shell
Branch: master




This ZenPack provides a mechanism to gather information from the Puppet master about Puppet clients. Information about the Puppet system can be found at


The Puppet modeling plugin provides components that represent the Puppet clients.

The Processes list is also updated with information about the Puppet (master and client) processes.

A JSON API for importing and exporting zenbatchload format configuration files is available:

Name Value
action PuppetRouter
router puppet_router

The methods available are:

Export out the list of devices, and the complete listing of acquired and local zproperties.
Import a zenbatchload file.


Prerequisite Restriction
Product Zenoss 4.1.1 or higher
Required ZenPacks ZenPacks.zenoss.Puppet
Other dependencies The zenoss.rb integration requires the following Ruby gems: * httpclient * json


Modeling Puppet Masters

Once a Puppet master has been identificed, follow this procedure:

  1. Navigate to a device.
  2. Click on the Modeler Plugins link.
  3. Ensure that the modeler plugin zenoss.cmd.Puppet is selected.
  4. Click on the Save button.

Managing Zenoss Configuration via Puppet

  1. Create a new user with Manager privileges specifically for Puppet.
  2. Update the bin/ script (or the bin/ script if using SSL) to use the new credentials.
  3. Run the script to verify the router/facade pair is working.
  4. Update the zenoss.rb calls to include the new credentials.


Unauthorized Messages

This usually indicates a credentials issue. Please verify the username and password combinations.


Install the ZenPack via the command line and restart Zenoss:

zenpack --install ZenPacks.zenoss.Puppet-1.0.0-py2.7.egg
zenoss restart``


To remove the ZenPack, use the following commands:

zenpack --erase ZenPacks.zenoss.Puppet
zenoss restart
Something went wrong with that request. Please try again.