Skip to content

ethz-hpc/collectd-exec-plugins

 
 

Repository files navigation

Description

Collection of scripts to be used with the Collectd Exec Plugin.

Each scripts consists of an executable script collecting the data, a configuration file for Collectd and a data-set specification.

  • gridengine-jobs.rb queries a GridEngine queue master for the number of jobs running, queued and suspended.
  • infiniband-traffic.rb collects the counters from a Infiniband network card using perfquery.
  • lustre-ls-runtime.rb monitors the response time of a Lustre file-system for listing a random set of files. In case Lustre doesn't respond to a ls within a timeout a spike in the data is produced.
  • ipmi-temperature.rb collects the system temperature using ipmitool.

Installation

These instructions cover Debian Squeeze, but should be easy to adapt to other Linux distributions.

Optional configurations for Collectd plug-ins are automatically read from /etc/collectd/collectd.d/, copy *.conf and *.db into this directory. The executable scripts need to be deployed to /usr/lib/collectd/exec. After deployment restart the Collectd daemon. Check if the daemon has resumed normal operation by looking to the log-file.

» /etc/init.d/collectd restart
» cat /var/log/collectd.log
...SNIP...
[2012-08-29 16:34:37] Initialization complete, entering read-loop.
» ls /var/lib/collectd/rrd/$(hostname -f)/ipmi
ipmi_temperature.rrd

If everything works as expected you should find a new RRD file for the values collected by a script. The example above shows where to find a corresponding file for the IPMI temperature script.

Depending on the script it may be necessary to configure Sudo to allow the monitoring user to execute commands limited to root. All configuration files inside this repository require a user called "mon" for this purpose.

You can add a file to the /etc/sudoers.d/ directory to enable "mon" to execute a certain command. The following example illustrates this for the ipmitool command:

» echo "mon $(hostname -f) = NOPASSWD: /usr/bin/ipmitool" > /etc/sudoers.d/ipmitool
» chmod 0440 /etc/sudoers.d/ipmitool

License

Copyright 2012 Victor Penso

This is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses/.

Releases

No releases published

Packages

No packages published

Languages

  • Ruby 100.0%