Application cookbook which installs and configures the collectd monitoring daemon.
This cookbook provides a dead-simple installation and configuration of the collectd monitoring daemon. It provides two resources: the first is for managing the collectd system service, and the second is for configuring the daemon's plugins. Additionally, the collectd_plugins cookbook may be used to configure many of the common plugins that ship with the daemon.
It is very important to note that distributions may ship different major versions of the package, but the following platforms are tested using the integration tests via Test Kitchen.
- Ubuntu ~> 10.04, 12.04, 14.04
- CentOS ~> 5.8, 6.4, 7.1
- RHEL ~> 5.8, 6.4, 7.1
The default recipe in this cookbook simply configures the monitoring daemon to run as a system service. The configuration for this service can be tuned using the node attributes. Additionally, a resource is provided to configure plugins for the daemon. After a plugin has been configured the daemon should be restarted.
One of the simplest plugins to enable is the collectd Syslog plugin which receives log messages from the daemon and dispatches them to the to syslog. This allows the daemon's logs to easily integrate with existing UNIX utilities.
collectd_plugin 'syslog' do
options do
log_level 'info'
notify_level 'OKAY'
end
end
In order to enable the full functionality of some of the more intrusive collectd plugins the daemon will need to run as the root user. Since this is obviously a security risk it is not the default. To achieve this behavior you're required to write a wrapper cookbook which overrides the service user with the proper root user.
node.default['collectd']['service_user'] = node['root_user']
node.default['collectd']['service_group'] = node['root_group']
include_recipe 'collectd::default'