ReleaseEngineering/PuppetAgain/Modules/collectd
This module installs and configures collectd on a system.
configuration
write plugins and their configurations must be defined in the org specific config file. By default, $collectd_write is set to undef in modules/config/manifests/base.pp and therefore the module is disabled.
$collectd_write is a hash which contains hashes of write plugins.
Currently, only graphite_nodes is available. In this example, $collectd_write configures the write_graphite plugin with 2 graphite servers.
$collectd_write = { graphite_nodes => { 'graphite-relay.private.scl3.mozilla.com' => { 'port' => '2003', 'prefix' => 'hosts.', }, 'carbon.hostedgraphite.com' => { 'port' => '2003', 'prefix' => "${graphite_apikey_hostedgraphite}.hosts." } }, }
collectd
This is the main class for collectd. It ensures collectd is installed via 'packages::collectd', installs the main config file (collectd.conf), and sets up the plugin directory with a common set of plugins (common.conf)
This also ensures the service is running and notifies the service to restart should any config file change.
collectd::settings
This class must be included from the main collectd class. It sets parameters which vary between operating systems.
collectd::plugins
This directory contains individual manifests for each plugin. As plugin manifests are written, they should be documented on this page below.
collectd::profiles
Here different plugins are include on a per OS configuration. This is because not plugins are compatible between OS