Collectd - An Overview
Collectd is an open source project providing a daemon which collects, transforms and stores system statistics including CPU, RAM Usage, Disk / Network IO, and many more. These statistics can be used for system performance monitoring, troubleshooting and capacity planning. The collectd project has been in active development since 2006, and is available for most UNIX-like systems.
Wormly chose collectd as the foundation of our system metrics collection because it's a proven, successful and trusted open source project.
Its advantages are well summarized by the collectd team themselves:
“It comes with over 90 plugins which range from standard cases to very specialized and advanced topics. It provides powerful networking features and is extensible in numerous ways. It's written in C for performance and portability, allowing it to run on systems without a scripting language or cron daemon, such as embedded systems. Last but not least: collectd is actively developed and supported and well documented.
Packaged for use with Wormly Metrics
Although collectd is available through the default software repositories in many popular GNU/Linux distributions, we offer our own distribution for selected platforms. This is to ensure users have access to the newest collectd version, and immediate access to the performance improvements and bugfixes we have contributed back to the collectd community.
We currently distribute packages for RedHat / CentOS / AMZN Linux, as well as Debian / Ubuntu variants. Our modifications can be found on GitHub - pull requests welcome!
To install collectd-wormly, create a Wormly host, then follow the instructions found under the Metrics tab on that hosts' Host Overview page.
Collectd runs with root user permissions - something we consider to be an unfortunate requirement and that we expect to change in future versions. That said, the daemon as configured for use with Wormly Metrics does not listen on any network interfaces or sockets, minimizing the attack surface for security vulnerabilities.
Our installation process - by necessity of performing package management / installation functions - also runs as root. Naturally you can inspect the installation script before executing it, as well as view all of our collectd and supporting scripts source code on GitHub.
Finally, you can choose not to use our distributions at all, and instead use the collectd package provided by your favourite GNU/Linux distribution - or indeed compile it from source yourself. We have provided a guide on how to install collectd manually if this is your preference.
All data in transit between your systems and ours - including the entirely of our web interface and Metric submission + APIs - takes places over TLS secured HTTPS. This includes all data submitted by collectd.