collectd is a small daemon which collects system information periodically and provides mechanisms to monitor and store the values in a variety of ways. Since the daemon doesn't need to startup every time it wants to update the values it's very fast and easy on the system. Also, the statistics are very fine grained since the files are updated every 10 seconds by default. The collected information can be used to find current performance bottlenecks (performance analysis) and predict future system load (capacity planning). This package provides a full installation of the daemon, including the configuration. For the core system, see the "collectd-core" package, which allows sites to, e.g., provide customizations (like a custom default configuration) on top of it without having to modify the "collectd" package.
This is the server endpoint for collectd based sensor collection.
In order to start doing data collection, deploy this charm as the endpoint for data. Deploy collectd (a subordinate) and relate it to this service to send data here. Relate collectd's juju-info interface to any services that you want it to be deployed inside of to collect data.
juju deploy collectd-server collectd-endpoint juju deploy collectd collect-cpu juju deploy collectd collect-php juju add-relation collect-cpu collectd-endpoint juju add-relation collect-memory collectd-endpoint juju set collect-cpu plugins="cpu" # Optional, defaults are sane juju set collect-php plugins="cpu,memory" # Optional, defaults are sane juju deploy mysql mydb juju deploy phpmyadmin mydbfrontend juju add-relation mydb collect-cpu juju add-relation mydbfrontend collect-php
The example above deploys two services, mysql and phpmyadmin, and adds a different configuration of collectd to each. Both collectd's are related to the 'collectd-endpoint' service and so will both feed data back there.
By default a simple readonly CGI is setup on the server to interpret any RRD files. You can view this by exposing the server
juju expose collectd-endpoint
And then browsing to http://$machine-ip/collectd/
add-unit on this service only creates high-availability, any related collectd subordinates will send collected data to both units.
Author: Clint Byrum email@example.com Report bugs at: https://bugs.launchpad.net/charms/+source/collectd-server
- (boolean) By default, exposing the server will only expose the webserver. Set this to true to expose collectd's ports as well.
- (int) Setting this to 0 will disable the 'collection3' cgi frontend to the RRD Graphs. Otherwise this is the port where said cgi will listen (at /collectd/)
- (string) This is the SecurityLevel to be used on the server. http://collectd.org/wiki/index.php/Networking_introduction Valid values are None, Sign, and Encrypt