Collectd for centos?


#1

Is there a collectd cookbook that works with centos?

I need one desperately!


#2

Byan,

I just threw up our modified version of the Atari collectd cookbook on Github. One of my coworkers a tiny bit to get RPM based CentOS installs to work. As for the RPM, there’s a script on github (not sure where exactly) that builds the 5.1 RPMs.

https://github.com/tas50/tas50_cookbooks/tree/master/collectd

Tim Smith

Operations Engineer

M: +1 707.738.8132

TW: @tas50

webtrendshttp://www.webtrends.com/

Real-Time Relevance. Remarkable ROI.™

London | Portland | San Francisco | Melbourne | Tokyo

From: Bryan Berry <bryan.berry@gmail.commailto:bryan.berry@gmail.com>
Reply-To: "chef@lists.opscode.commailto:chef@lists.opscode.com" <chef@lists.opscode.commailto:chef@lists.opscode.com>
Date: Tuesday, July 17, 2012 12:15 PM
To: "chef@lists.opscode.commailto:chef@lists.opscode.com" <chef@lists.opscode.commailto:chef@lists.opscode.com>
Subject: [chef] Collectd for centos?

Is there a collectd cookbook that works with centos?

I need one desperately!


#3

Bryan,

I’ve been building one for RHEL over the past couple days that should work
on centos with minor/no tweaking. I’m almost done. Just working on one
last issue.

On Tue, Jul 17, 2012 at 2:15 PM, Bryan Berry bryan.berry@gmail.com wrote:

Is there a collectd cookbook that works with centos?

I need one desperately!


#4

Tks bryan I look forward to seeing what u have. I really need the write to
graphite functionality
On Jul 17, 2012 9:35 PM, “Bryan Brandau” agent462@gmail.com wrote:

Bryan,

I’ve been building one for RHEL over the past couple days that should work
on centos with minor/no tweaking. I’m almost done. Just working on one
last issue.

On Tue, Jul 17, 2012 at 2:15 PM, Bryan Berry bryan.berry@gmail.comwrote:

Is there a collectd cookbook that works with centos?

I need one desperately!


#5

On Tue, Jul 17, 2012 at 9:15 PM, Bryan Berry bryan.berry@gmail.com wrote:

Is there a collectd cookbook that works with centos?

I need one desperately!

Hi Bryan,
I can’t share the collectd cookbook I have done for my client, but I
can share the RPMs I have for CentOS 5/6.
You can find the source over at
https://github.com/eolamey/pakk/tree/master/packages/collectd5 and a
yum repository is available at http://pakk.96b.it/

You could use EPEL packages, but they are stuck with collectd 4.x
and it’s much harder to send metrics to graphite.


#6

I’m writing to graphite so you’ll see how that is built right in.

On Tue, Jul 17, 2012 at 3:04 PM, Bryan Berry bryan.berry@gmail.com wrote:

Tks bryan I look forward to seeing what u have. I really need the write
to graphite functionality
On Jul 17, 2012 9:35 PM, “Bryan Brandau” agent462@gmail.com wrote:

Bryan,

I’ve been building one for RHEL over the past couple days that should
work on centos with minor/no tweaking. I’m almost done. Just working on
one last issue.

On Tue, Jul 17, 2012 at 2:15 PM, Bryan Berry bryan.berry@gmail.comwrote:

Is there a collectd cookbook that works with centos?

I need one desperately!


#7

Hi,

On Wed, Jul 18, 2012 at 6:04 AM, Bryan Berry bryan.berry@gmail.com wrote:

Tks bryan I look forward to seeing what u have. I really need the write to
graphite functionality

That is why we eventually went to creating a custom cookbook. You can
see the results up at [1] - we eventually went with compiling from
source which I would assume works with rhel. We have prototyped using
fpm to create a deb and presumably a rpm could be created in that
manner as well. Even if you develop your own I would recommend
yoinking out the LWRP and the attribute_driven recipe from [1] :slight_smile:

It allows you to configure your collectd configuration via something
like the following. I also documented part of it at [2]


node.override[‘collectd’][‘name’] = node[‘hostname’]
node.override[‘collectd’][‘plugins’] =
{
‘syslog’ => {‘config’ => {“LogLevel” => “Info”}},
‘disk’ => {},
‘swap’ => {},
‘memory’ => {},
‘cpu’ => {},
‘interface’ => {‘config’ => {“Interface” => “lo”, “IgnoreSelected”
=> true}},
‘df’ => {‘config’ => {“ReportReserved” => false,
“FSType” => [“proc”, “sysfs”, “fusectl”,
“debugfs”, “devtmpfs”, “devpts”, “tmpfs”],
“IgnoreSelected” => true}},
}
graphite_host, graphite_port = … # Use utility method to search for
graphite server
if graphite_host
node.override[‘collectd’][‘plugins’][‘write_graphite’] =
{‘config’ => {‘Host’ => graphite_host,
‘Port’ => graphite_port,
‘Prefix’ => “#{node.chef_environment}.node.”}}
end

include_recipe “collectd::attribute_driven”

[1] https://github.com/realityforge-cookbooks/collectd
[2] http://realityforge.org/code/2012/06/29/monitoring-as-part-of-the-definition-of-done.html

Cheers,

Peter Donald