collectd

collectd
Original author(s) Florian Forster
Initial release July 8, 2005 (2005-07-08)
Stable release 5.4.2 / February 26, 2015 (2015-02-26)
Development status Active
Written in C
Operating system Any Unix-like
Available in English
Type Capacity planning
License GNU General Public License, version 2
Website http://collectd.org/

collectd is a Unix daemon that collects, transfers and stores performance data of computers and network equipment. The acquired data is meant to help system administrators maintain an overview over available resources to detect existing or looming bottlenecks.

The first version of the daemon was written in 2005 by Florian Forster and has been further developed as free open-source project. Other developers have written improvements and extensions to the software that have been incorporated into the project.[1] Most files of the source code are licensed under the terms of the GNU General Public License, version 2 (GPLv2), the remaining files are licensed under other open source licenses.[2]

Operation

collectd uses a modular design: The daemon itself only implements infrastructure for filtering and relaying data as well as auxiliary functions and requires very few resources, it even runs on OpenWrt-powered embedded devices. Data acquisition and storage is handled by plug-ins in the form of shared objects.[3] This way code specific to one operating system is mostly kept out of the actual daemon. Plug-ins may have their own dependencies, for example a specific operating system or software libraries. Other tasks performed by the plug-ins include processing of “notifications” and log messages.

Data acquisition plug-ins, called "read plug-ins" in collectd's documentation, can be roughly put into three categories:

So called "write plug-ins" offer the possibility to store the collected data on disk using RRD- or CSV-files, or to send data over the network to a remote instance of the daemon.

Networking

Included in the source code distribution of collectd is the so-called "network" plug-in, which can be used to send and receive data to/from other instances of the daemon. In a typical networked setup the daemon would run on each monitored host (called "clients") with the network plug-in configured to send collected data to one or more network addresses. On one or more so called "servers" the same daemon would run but with a different configuration, so that the network plug-in receives data instead of sending it. Often the RRDtool-plug-in is used on servers to store the performance data.[4]

The plug-in uses a binary network protocol over UDP. Both, IPv4 and IPv6 are supported as network layer. It is possible to use unicast (point-to-point) and multicast (point-to-group) addressing. Authentication and encryption has been added to the protocol with version 4.7.0, released in May 2009.

See also

References

  1. http://git.verplant.org/?p=collectd.git;a=blob;hb=master;f=AUTHORS
  2. http://packages.debian.org/changelogs/pool/main/c/collectd/current/copyright
  3. http://collectd.org/features.shtml
  4. http://collectd.org/wiki/index.php/Networking_introduction

External links

This article is issued from Wikipedia - version of the Wednesday, April 01, 2015. The text is available under the Creative Commons Attribution/Share Alike but additional terms may apply for the media files.