summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Modulefile2
-rw-r--r--files/config/host/munin.conf.header.RedHat143
-rw-r--r--manifests/client/debian.pp9
-rw-r--r--manifests/host.pp15
-rw-r--r--manifests/init.pp2
-rw-r--r--manifests/plugin.pp2
-rw-r--r--manifests/plugin/deploy.pp2
7 files changed, 154 insertions, 21 deletions
diff --git a/Modulefile b/Modulefile
index d36804a..a9b5030 100644
--- a/Modulefile
+++ b/Modulefile
@@ -9,6 +9,6 @@ project_page 'https://github.com/duritong/puppet-munin'
## Add dependencies, if any:
# dependency 'username/name', '>= 1.2.0'
-dependency 'puppetlabs/concat', '>= 1.0.0'
+dependency 'puppetlabs/concat', '>= 1.1.0'
dependency 'puppetlabs/stdlib', '>= 3.2.0'
dependency 'duritong/openbsd', '>= 0.0.1'
diff --git a/files/config/host/munin.conf.header.RedHat b/files/config/host/munin.conf.header.RedHat
new file mode 100644
index 0000000..f212ce0
--- /dev/null
+++ b/files/config/host/munin.conf.header.RedHat
@@ -0,0 +1,143 @@
+# Example configuration file for Munin, generated by 'make build'
+
+# The next three variables specifies where the location of the RRD
+# databases, the HTML output, logs and the lock/pid files. They all
+# must be writable by the user running munin-cron. They are all
+# defaulted to the values you see here.
+#
+#dbdir /var/lib/munin
+#htmldir /var/www/html/munin
+htmldir /var/www/html/munin
+#logdir /var/log/munin
+#rundir /var/run/munin
+
+# Where to look for the HTML templates
+#
+#tmpldir /etc/munin/templates
+
+# Where to look for the static www files
+#
+#staticdir /etc/munin/static
+
+# temporary cgi files are here. note that it has to be writable by
+# the cgi user (usually nobody or httpd).
+#
+# cgitmpdir /var/lib/munin/cgi-tmp
+
+# (Exactly one) directory to include all files from.
+includedir /etc/munin/conf.d
+
+# You can choose the time reference for "DERIVE" like graphs, and show
+# "per minute", "per hour" values instead of the default "per second"
+#
+#graph_period second
+
+# Graphics files are generated either via cron or by a CGI process.
+# See http://munin-monitoring.org/wiki/CgiHowto2 for more
+# documentation.
+# Since 2.0, munin-graph has been rewritten to use the cgi code.
+# It is single threaded *by design* now.
+#
+#graph_strategy cgi
+
+# munin-cgi-graph is invoked by the web server up to very many times at the
+# same time. This is not optimal since it results in high CPU and memory
+# consumption to the degree that the system can thrash. Again the default is
+# 6. Most likely the optimal number for max_cgi_graph_jobs is the same as
+# max_graph_jobs.
+#
+#munin_cgi_graph_jobs 6
+
+# If the automatic CGI url is wrong for your system override it here:
+#
+#cgiurl_graph /munin-cgi/munin-cgi-graph
+
+# max_size_x and max_size_y are the max size of images in pixel.
+# Default is 4000. Do not make it too large otherwise RRD might use all
+# RAM to generate the images.
+#
+#max_size_x 4000
+#max_size_y 4000
+
+# HTML files are normally generated by munin-html, no matter if the
+# files are used or not. You can change this to on-demand generation
+# by following the instructions in http://munin-monitoring.org/wiki/CgiHowto2
+#
+# Notes:
+# - moving to CGI for HTML means you cannot have graph generated by cron.
+# - cgi html has some bugs, mostly you still have to launch munin-html by hand
+#
+html_strategy cron
+
+# munin-update runs in parallel.
+#
+# The default max number of processes is 16, and is probably ok for you.
+#
+# If set too high, it might hit some process/ram/filedesc limits.
+# If set too low, munin-update might take more than 5 min.
+#
+# If you want munin-update to not be parallel set it to 0.
+#
+#max_processes 16
+
+# RRD updates are per default, performed directly on the rrd files.
+# To reduce IO and enable the use of the rrdcached, uncomment it and set it to
+# the location of the socket that rrdcached uses.
+#
+#rrdcached_socket /var/run/rrdcached.sock
+
+# Drop somejuser@fnord.comm and anotheruser@blibb.comm an email everytime
+# something changes (OK -> WARNING, CRITICAL -> OK, etc)
+#contact.someuser.command mail -s "Munin notification" somejuser@fnord.comm
+#contact.anotheruser.command mail -s "Munin notification" anotheruser@blibb.comm
+#
+# For those with Nagios, the following might come in handy. In addition,
+# the services must be defined in the Nagios server as well.
+#contact.nagios.command /usr/bin/send_nsca nagios.host.comm -c /etc/nsca.conf
+
+# a simple host tree
+#[localhost]
+# address 127.0.0.1
+# use_node_name yes
+
+#
+# A more complex example of a host tree
+#
+## First our "normal" host.
+# [fii.foo.com]
+# address foo
+#
+## Then our other host...
+# [fay.foo.com]
+# address fay
+#
+## Then we want totals...
+# [foo.com;Totals] #Force it into the "foo.com"-domain...
+# update no # Turn off data-fetching for this "host".
+#
+# # The graph "load1". We want to see the loads of both machines...
+# # "fii=fii.foo.com:load.load" means "label=machine:graph.field"
+# load1.graph_title Loads side by side
+# load1.graph_order fii=fii.foo.com:load.load fay=fay.foo.com:load.load
+#
+# # The graph "load2". Now we want them stacked on top of each other.
+# load2.graph_title Loads on top of each other
+# load2.dummy_field.stack fii=fii.foo.com:load.load fay=fay.foo.com:load.load
+# load2.dummy_field.draw AREA # We want area instead the default LINE2.
+# load2.dummy_field.label dummy # This is needed. Silly, really.
+#
+# # The graph "load3". Now we want them summarised into one field
+# load3.graph_title Loads summarised
+# load3.combined_loads.sum fii.foo.com:load.load fay.foo.com:load.load
+# load3.combined_loads.label Combined loads # Must be set, as this is
+# # not a dummy field!
+#
+## ...and on a side note, I want them listen in another order (default is
+## alphabetically)
+#
+# # Since [foo.com] would be interpreted as a host in the domain "com", we
+# # specify that this is a domain by adding a semicolon.
+# [foo.com;]
+# node_order Totals fii.foo.com fay.foo.com
+#
+
diff --git a/manifests/client/debian.pp b/manifests/client/debian.pp
index f1bbb3c..49ee567 100644
--- a/manifests/client/debian.pp
+++ b/manifests/client/debian.pp
@@ -3,15 +3,6 @@ class munin::client::debian inherits munin::client::base {
# the plugin will need that
ensure_packages(['iproute'])
- $hasstatus = $::lsbdistcodename ? {
- sarge => false,
- default => true
- }
-
- Service['munin-node']{
- # sarge's munin-node init script has no status
- hasstatus => $hasstatus
- }
# workaround bug in munin_node_configure
plugin { 'postfix_mailvolume': ensure => absent }
include munin::plugins::debian
diff --git a/manifests/host.pp b/manifests/host.pp
index e666c3d..0e5fb01 100644
--- a/manifests/host.pp
+++ b/manifests/host.pp
@@ -8,17 +8,16 @@ class munin::host(
$export_tag = 'munin'
) {
package {'munin': ensure => installed, }
- include concat::setup
Concat::Fragment <<| tag == $export_tag |>>
concat::fragment{'munin.conf.header':
target => '/etc/munin/munin.conf',
source => [ "puppet:///modules/site_munin/config/host/${::fqdn}/munin.conf.header",
- "puppet:///modules/site_munin/config/host/munin.conf.header.${::operatingsystem}.${::lsbdistcodename}",
+ "puppet:///modules/site_munin/config/host/munin.conf.header.${::operatingsystem}.${::operatingsystemmajrelease}",
"puppet:///modules/site_munin/config/host/munin.conf.header.${::operatingsystem}",
'puppet:///modules/site_munin/config/host/munin.conf.header',
- "puppet:///modules/munin/config/host/munin.conf.header.${::operatingsystem}.${::lsbdistcodename}",
+ "puppet:///modules/munin/config/host/munin.conf.header.${::operatingsystem}.${::operatingsystemmajrelease}",
"puppet:///modules/munin/config/host/munin.conf.header.${::operatingsystem}",
'puppet:///modules/munin/config/host/munin.conf.header' ],
order => 05,
@@ -39,12 +38,12 @@ class munin::host(
}
# from time to time we cleanup hanging munin-runs
- file{'/etc/cron.d/munin_kill':
- content => "4,34 * * * * root if $(ps ax | grep -v grep | grep -q munin-run); then killall munin-run; fi\n",
- owner => root,
- group => 0,
- mode => '0644',
+ cron { 'munin_kill':
+ command => 'if $(ps ax | grep -v grep | grep -q munin-run); then killall munin-run; fi',
+ minute => ['4', '34'],
+ user => 'root',
}
+
if $munin::host::manage_shorewall {
include shorewall::rules::out::munin
}
diff --git a/manifests/init.pp b/manifests/init.pp
index b015521..54b489b 100644
--- a/manifests/init.pp
+++ b/manifests/init.pp
@@ -4,7 +4,7 @@
# Copyright (C) 2007 David Schmitt <david@schmitt.edv-bus.at>
#
# Copyright 2008, Puzzle ITC GmbH
-# Marcel Härry haerry+puppet(at)puzzle.ch
+# Marcel Haerry haerry+puppet(at)puzzle.ch
# Simon Josi josi+puppet(at)puzzle.ch
#
# This program is free software; you can redistribute
diff --git a/manifests/plugin.pp b/manifests/plugin.pp
index 37d0077..50b861b 100644
--- a/manifests/plugin.pp
+++ b/manifests/plugin.pp
@@ -27,7 +27,7 @@ define munin::plugin (
target =>"${real_script_path}/${plugin_src}",
notify => Service['munin-node'];
}
- if (str2bool($::selinux) == true) and (($::operatingsystem != 'CentOS') or ($::operatingsystem == 'CentOS' and $::lsbmajdistrelease != '5')){
+ if (str2bool($::selinux) == true) and (($::operatingsystem != 'CentOS') or ($::operatingsystem == 'CentOS' and $::operatingsystemmajrelease != '5')){
File["/etc/munin/plugins/${name}"]{
seltype => 'munin_etc_t',
}
diff --git a/manifests/plugin/deploy.pp b/manifests/plugin/deploy.pp
index 461a218..2ffd92e 100644
--- a/manifests/plugin/deploy.pp
+++ b/manifests/plugin/deploy.pp
@@ -24,7 +24,7 @@ define munin::plugin::deploy(
mode => '0755';
}
- if (str2bool($::selinux) == true) and (($::operatingsystem != 'CentOS') or ($::operatingsystem == 'CentOS' and $::lsbmajdistrelease > '5')){
+ if (str2bool($::selinux) == true) and (($::operatingsystem != 'CentOS') or ($::operatingsystem == 'CentOS' and $::operatingsystemmajrelease > '5')){
File["munin_plugin_${name}"]{
seltype => $seltype,
}