From f07f6a5fab8964acebb0821094597fa4a597dba2 Mon Sep 17 00:00:00 2001 From: am Date: Fri, 30 Nov 2007 15:28:46 +0000 Subject: munin installation (+ test auf immer1-0) git-svn-id: https://svn/ipuppet/trunk/modules/munin@173 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- README | 83 +++++++++++++++++++++ manifests/client.pp | 122 +++++++++++++++++++++++++++++++ manifests/host.pp | 33 +++++++++ manifests/init.pp | 17 +++++ manifests/plugin.pp | 127 +++++++++++++++++++++++++++++++++ plugins/facter/acpi_available.rb | 10 +++ plugins/facter/interfaces.rb | 13 ++++ templates/defaultclient.erb | 14 ++++ templates/munin-node.conf.Debian.etch | 36 ++++++++++ templates/munin-node.conf.Debian.sarge | 1 + templates/munin-node.conf.Debian.sid | 1 + templates/munin-node.conf.Gentoo | 39 ++++++++++ templates/munin-node.conf.Gentoo. | 1 + 13 files changed, 497 insertions(+) create mode 100644 README create mode 100644 manifests/client.pp create mode 100644 manifests/host.pp create mode 100644 manifests/init.pp create mode 100644 manifests/plugin.pp create mode 100644 plugins/facter/acpi_available.rb create mode 100755 plugins/facter/interfaces.rb create mode 100644 templates/defaultclient.erb create mode 100644 templates/munin-node.conf.Debian.etch create mode 120000 templates/munin-node.conf.Debian.sarge create mode 120000 templates/munin-node.conf.Debian.sid create mode 100644 templates/munin-node.conf.Gentoo create mode 120000 templates/munin-node.conf.Gentoo. diff --git a/README b/README new file mode 100644 index 0000000..762a802 --- /dev/null +++ b/README @@ -0,0 +1,83 @@ + +Munin is a performance monitoring system which creates nice RRD graphs and has +a very easy plugin interface. The munin homepage is http://munin.projects.linpro.no/ + +To use this module, follow these directions: + +1. Install the "common" module -- the munin module depends on functions that are + defined and installed via the common module, see README.common for how to do this + +2. You will need storedconfigs enabled in your puppet setup, to do that you need to + add a line to your puppet.conf in your [puppetmasterd] section which says: + + storeconfigs=true + + You may wish to immediately setup a mysql/pgsql database for your storedconfigs, as + the default method uses sqlite, and is not very efficient, to do that you need lines + such as the following below the storeconfigs=true line (adjust as needed): + + dbadapter=mysql + dbserver=localhost + dbuser=puppet + dbpassword=puppetspasswd + +3. Install the "munin" module: + + a. Your modules directory will need all the files included in this repository placed + under a directory called "munin" + + b. add the following line to your modules.pp: + + import "munin" + + (NOTE: if you have followed the directions in README.common then you will have import + "modules.pp" in your site.pp, if you do not have that, then you will need to add the + import line to your site.pp) + + c. you will also need to create the following empty directories: + + mkdir /etc/puppet/modules/munin/files/empty + mkdir /etc/puppet/modules/munin/files/modules_dir + mkdir -p /etc/puppet/modules/munin/files/nodes/modules_dir + mkdir -p /etc/puppet/modules/munin/files/plugins/modules_dir + + d. Add to the top of your site.pp a variable which indicates what IP should be allowed to + connect to your individual munin-nodes (this is typically your main munin host's IP): + + $munin_allow = '192.168.0.1' + + e. In the node definition in your site.pp for your main munin host, add the following: + + include munin::host + + f. On each node that will gather munin statistics, add this line to that node's entry + in site.pp (you may want to also add this to your main munin host): + + include munin::client + + g. If there are particular munin plugins you want to enable or configure, you define them + in the node definition, like follows: + + # Enable monitoring of disk stats in bytes + munin::plugin { df_abs: } + + # Use a non-standard plugin path to use custom plugins + munin::plugin { "spamassassin": + ensure => "spamassassin", + script_path => "/usr/local/share/munin-plugins", + } + + # Use a special config to pass parameters to the plugin + munin::plugin { + [ "apache_accesses", "apache_processes", "apache_volume" ]: + ensure => present, + config => "env.url http://127.0.0.1:80/server-status?auto" + } + + + h. If you have Linux-Vservers configured, you will likely have multiple munin-node processes + competing for the default port 4949, for those nodes, set an alternate port for munin-node + to run on by putting something similar to the following in the node definition: + + $munin_port = 4948 + diff --git a/manifests/client.pp b/manifests/client.pp new file mode 100644 index 0000000..5b78186 --- /dev/null +++ b/manifests/client.pp @@ -0,0 +1,122 @@ +# client.pp - configure a munin node +# Copyright (C) 2007 David Schmitt +# See LICENSE for the full license granted to you. + +class munin::client { + + $munin_port_real = $munin_port ? { '' => 4949, default => $munin_port } + $munin_host_real = $munin_host ? { + '' => '*', + 'fqdn' => '*', + default => $munin_host + } + + case $operatingsystem { + darwin: { include munin::client::darwin } + debian: { + include munin::client::debian + include munin::plugins::debian + } + ubuntu: { + info ( "Trying to configure Ubuntu's munin with Debian class" ) + include munin::client::debian + include munin::plugins::debian + } + default: { fail ("Don't know how to handle munin on $operatingsystem") } + } + + case $kernel { + linux: { + case $vserver { + guest: { include munin::plugins::vserver } + default: { + include munin::plugins::linux + case $virtual { + xen0: { include munin::plugins::xen } + } + } + } + } + default: { + err( "Don't know which munin plugins to install for $kernel" ) + } + } + +} + +define munin::register() +{ + $munin_port_real = $munin_port ? { '' => 4949, default => $munin_port } + $munin_host_real = $munin_host ? { + '' => $fqdn, + 'fqdn' => $fqdn, + default => $munin_host + } + + @@file { "${NODESDIR}/${name}_${munin_port_real}": + ensure => present, + content => template("munin/defaultclient.erb"), + } +} + +define munin::register_snmp() +{ + @@file { "munin_snmp_${name}": path => "${NODESDIR}/${name}", + ensure => present, + content => template("munin/snmpclient.erb"), + } +} + +class munin::client::darwin +{ + file { "/usr/share/snmp/snmpd.conf": + mode => 744, + content => template("munin/darwin_snmpd.conf.erb"), + group => staff, + owner => root, + } + delete_matching_line{"startsnmpdno": + file => "/etc/hostconfig", + pattern => "SNMPSERVER=-NO-", + } + line { "startsnmpdyes": + file => "/etc/hostconfig", + line => "SNMPSERVER=-YES-", + notify => Exec["/sbin/SystemStarter start SNMP"], + } + exec{"/sbin/SystemStarter start SNMP": + noop => false, + } + munin::register_snmp { $fqdn: } +} + +class munin::client::debian +{ + + package { "munin-node": ensure => installed } + + file { + "/etc/munin/": + ensure => directory, + mode => 0755, owner => root, group => root; + "/etc/munin/munin-node.conf": + content => template("munin/munin-node.conf.${operatingsystem}.${lsbdistcodename}"), + mode => 0644, owner => root, group => root, + # this has to be installed before the package, so the postinst can + # boot the munin-node without failure! + before => Package["munin-node"], + notify => Service["munin-node"], + } + + service { "munin-node": + ensure => running, + # sarge's munin-node init script has no status + hasstatus => $lsbdistcodename ? { sarge => false, default => true } + } + + munin::register { $fqdn: } + + # workaround bug in munin_node_configure + plugin { "postfix_mailvolume": ensure => absent } +} + diff --git a/manifests/host.pp b/manifests/host.pp new file mode 100644 index 0000000..8a90cc2 --- /dev/null +++ b/manifests/host.pp @@ -0,0 +1,33 @@ +# host.pp - the master host of the munin installation +# Copyright (C) 2007 David Schmitt +# See LICENSE for the full license granted to you. + +class munin::host +{ + package { [ "munin", "nmap"]: ensure => installed, } + + File <<||>> + + concatenated_file { "/etc/munin/munin.conf": + dir => $NODESDIR, + header => "/etc/munin/munin.conf.header", + } + +} + +class munin::snmp_collector +{ + + file { + "/var/lib/puppet/modules/munin/create_snmp_links": + source => "puppet://$servername/munin/create_snmp_links.sh", + mode => 755, owner => root, group => root; + } + + exec { "create_snmp_links": + command => "/var/lib/puppet/modules/munin/create_snmp_links $NODESDIR", + require => File["snmp_links"], + timeout => "2048", + schedule => daily + } +} diff --git a/manifests/init.pp b/manifests/init.pp new file mode 100644 index 0000000..a1ea92c --- /dev/null +++ b/manifests/init.pp @@ -0,0 +1,17 @@ +# munin.pp - everything a sitewide munin installation needs +# Copyright (C) 2007 David Schmitt +# See LICENSE for the full license granted to you. + +# the port is a parameter so vservers can share IP addresses and still be happy + +# Define where the individual nodes' configs are stored +$NODESDIR="/var/lib/puppet/modules/munin/nodes" + +modules_dir { [ "munin", "munin/nodes", "munin/plugins" ]: } + +import "host.pp" +import "client.pp" +import "plugin.pp" + +include assert_lsbdistcodename + diff --git a/manifests/plugin.pp b/manifests/plugin.pp new file mode 100644 index 0000000..e7e22d1 --- /dev/null +++ b/manifests/plugin.pp @@ -0,0 +1,127 @@ +# plugin.pp - configure a specific munin plugin +# Copyright (C) 2007 David Schmitt +# See LICENSE for the full license granted to you. + +define munin::plugin ( + $ensure = "present", + $script_path = "/usr/share/munin/plugins", + $config = '') +{ + debug ( "munin_plugin: name=$name, ensure=$ensure, script_path=$script_path" ) + $plugin = "/etc/munin/plugins/$name" + $plugin_conf = "/etc/munin/plugin-conf.d/$name.conf" + case $ensure { + "absent": { + debug ( "munin_plugin: suppressing $plugin" ) + file { $plugin: ensure => absent, } + } + default: { + $plugin_src = $ensure ? { "present" => $name, default => $ensure } + debug ( "munin_plugin: making $plugin using src: $plugin_src" ) + file { $plugin: + ensure => "$script_path/${plugin_src}", + require => Package["munin-node"], + notify => Service["munin-node"], + } + } + } + case $config { + '': { + debug("no config for $name") + file { $plugin_conf: ensure => absent } + } + default: { + case $ensure { + absent: { + debug("removing config for $name") + file { $plugin_conf: ensure => absent } + } + default: { + debug("creating $plugin_conf") + file { $plugin_conf: + content => "[${name}]\n$config\n", + mode => 0644, owner => root, group => root, + } + } + } + } + } +} + +define munin::remoteplugin($ensure = "present", $source, $config = '') { + case $ensure { + "absent": { munin::plugin{ $name: ensure => absent } } + default: { + file { + "/var/lib/puppet/modules/munin/plugins/${name}": + source => $source, + mode => 0755, owner => root, group => root; + } + munin::plugin { $name: + ensure => $ensure, + config => $config, + script_path => "/var/lib/puppet/modules/munin/plugins", + } + } + } +} + +class munin::plugins::base { + + file { + [ "/etc/munin/plugins", "/etc/munin/plugin-conf.d" ]: + source => "puppet://$servername/munin/empty", + ensure => directory, checksum => mtime, + recurse => true, purge => true, force => true, + mode => 0755, owner => root, group => root, + notify => Service[munin-node]; + "/etc/munin/plugin-conf.d/munin-node": + ensure => present, + mode => 0644, owner => root, group => root, + notify => Service[munin-node]; + } + +} + +# handle if_ and if_err_ plugins +class munin::plugins::interfaces inherits munin::plugins::base { + + $ifs = gsub(split($interfaces, " "), "(.+)", "if_\\1") + $if_errs = gsub(split($interfaces, " "), "(.+)", "if_err_\\1") + plugin { + $ifs: ensure => "if_"; + $if_errs: ensure => "if_err_"; + } + + +} + +class munin::plugins::linux inherits munin::plugins::base { + + plugin { + [ df_abs, forks, iostat, memory, processes, cpu, df_inode, irqstats, + netstat, open_files, swap, df, entropy, interrupts, load, open_inodes, + vmstat + ]: + ensure => present; + acpi: + ensure => $acpi_available; + } + + include munin::plugins::interfaces +} + +class munin::plugins::debian inherits munin::plugins::base { + + plugin { apt_all: ensure => present; } + +} + +class munin::plugins::vserver inherits munin::plugins::base { + + plugin { + [ netstat, processes ]: + ensure => present; + } + +} diff --git a/plugins/facter/acpi_available.rb b/plugins/facter/acpi_available.rb new file mode 100644 index 0000000..e3d8dfa --- /dev/null +++ b/plugins/facter/acpi_available.rb @@ -0,0 +1,10 @@ +# return whether acpi is available -- used for deciding whether to install the munin plugin +Facter.add("acpi_available") do + setcode do + if `acpi -t -B -A 2>/dev/null`.match(/\d/).nil? + "absent" + else + "present" + end + end +end diff --git a/plugins/facter/interfaces.rb b/plugins/facter/interfaces.rb new file mode 100755 index 0000000..a498d64 --- /dev/null +++ b/plugins/facter/interfaces.rb @@ -0,0 +1,13 @@ +# return the set of active interfaces as an array +Facter.add("interfaces") do + setcode do + `ip -o link show`.split(/\n/).collect do |line| + value = nil + matches = line.match(/^\d*: ([^:]*): <(.*,)?UP(,.*)?>/) + if !matches.nil? + value = matches[1] + end + value + end.compact.sort.join(" ") + end +end diff --git a/templates/defaultclient.erb b/templates/defaultclient.erb new file mode 100644 index 0000000..954a0cb --- /dev/null +++ b/templates/defaultclient.erb @@ -0,0 +1,14 @@ +<% + # Downcase all information + dom = domain.downcase + host = hostname.downcase + fhost = name.downcase +%> +### This syntax can be extended, it might get better ... +#+<%= dom %> +#-<%= host %>=<%= fhost %>:load.load +[<%= fhost %>] # linux box + address <%= munin_host_real %> + port <%= munin_port_real %> + use_node_name yes + exim_mailstats.graph_period minute diff --git a/templates/munin-node.conf.Debian.etch b/templates/munin-node.conf.Debian.etch new file mode 100644 index 0000000..0673937 --- /dev/null +++ b/templates/munin-node.conf.Debian.etch @@ -0,0 +1,36 @@ +########## +########## Managed by puppet +########## + +log_level 4 +log_file /var/log/munin/munin-node.log +pid_file /var/run/munin/munin-node.pid +background 1 +setseid 1 + +# Which host/port to bind to; +host <%= munin_host_real %> +port <%= munin_port_real %> +user root +group root +setsid yes + +# Regexps for files to ignore + +ignore_file ~$ +ignore_file \.bak$ +ignore_file %$ +ignore_file \.dpkg-(tmp|new|old|dist)$ +ignore_file \.rpm(save|new)$ + +# Set this if the client doesn't report the correct hostname when +# telnetting to localhost, port 4949 +# +#host_name localhost.localdomain +host_name <%= fqdn %> + +# A list of addresses that are allowed to connect. This must be a +# regular expression, due to brain damage in Net::Server, which +# doesn't understand CIDR-style network notation. You may repeat +# the allow line as many times as you'd like +allow <%= munin_allow %> diff --git a/templates/munin-node.conf.Debian.sarge b/templates/munin-node.conf.Debian.sarge new file mode 120000 index 0000000..e0646b9 --- /dev/null +++ b/templates/munin-node.conf.Debian.sarge @@ -0,0 +1 @@ +munin-node.conf.Debian.etch \ No newline at end of file diff --git a/templates/munin-node.conf.Debian.sid b/templates/munin-node.conf.Debian.sid new file mode 120000 index 0000000..e0646b9 --- /dev/null +++ b/templates/munin-node.conf.Debian.sid @@ -0,0 +1 @@ +munin-node.conf.Debian.etch \ No newline at end of file diff --git a/templates/munin-node.conf.Gentoo b/templates/munin-node.conf.Gentoo new file mode 100644 index 0000000..f10349e --- /dev/null +++ b/templates/munin-node.conf.Gentoo @@ -0,0 +1,39 @@ +########## +########## Managed by puppet +########## + +log_level 4 +log_file /var/log/munin/munin-node.log +pid_file /var/run/munin/munin-node.pid +background 1 +setseid 1 + +# Which host/port to bind to; +host <%= munin_host_real %> +port <%= munin_port_real %> +user root +group root +setsid yes + +# Regexps for files to ignore + +ignore_file ~$ +ignore_file \.bak$ +ignore_file %$ +ignore_file \.dpkg-(tmp|new|old|dist)$ +ignore_file \.rpm(save|new)$ + +# Set this if the client doesn't report the correct hostname when +# telnetting to localhost, port 4949 +# +#host_name localhost.localdomain +host_name <%= fqdn %> + +# A list of addresses that are allowed to connect. This must be a +# regular expression, due to brain damage in Net::Server, which +# doesn't understand CIDR-style network notation. You may repeat +# the allow line as many times as you'd like +allow ^127\.0\.0\.1$ +allow <%= munin_allow1 %> +allow <%= munin_allow2 %> + diff --git a/templates/munin-node.conf.Gentoo. b/templates/munin-node.conf.Gentoo. new file mode 120000 index 0000000..fd16e50 --- /dev/null +++ b/templates/munin-node.conf.Gentoo. @@ -0,0 +1 @@ +munin-node.conf.Gentoo \ No newline at end of file -- cgit v1.2.3 -- cgit v1.2.3 From be9ce325e83e2521628a70a11b644e373c017839 Mon Sep 17 00:00:00 2001 From: am Date: Tue, 4 Dec 2007 09:08:38 +0000 Subject: added gentoo to munin module git-svn-id: https://svn/ipuppet/trunk/modules/munin@182 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/client.pp | 37 +++++++++++++++++++++++++++++++++++++ manifests/plugin.pp | 7 +++++++ 2 files changed, 44 insertions(+) diff --git a/manifests/client.pp b/manifests/client.pp index 5b78186..f5caaec 100644 --- a/manifests/client.pp +++ b/manifests/client.pp @@ -22,6 +22,11 @@ class munin::client { include munin::client::debian include munin::plugins::debian } + gentoo: { + include munin::client::gentoo + include munin::plugins::gentoo + + } default: { fail ("Don't know how to handle munin on $operatingsystem") } } @@ -120,3 +125,35 @@ class munin::client::debian plugin { "postfix_mailvolume": ensure => absent } } +class munin::client::gentoo +{ + package { 'munin': + ensure => present, + category => $operatingsystem ? { + gentoo => 'net-analyzer', + default => '', + }, + } + + + file { + "/etc/munin/": + ensure => directory, + mode => 0755, owner => root, group => root; + "/etc/munin/munin-node.conf": + content => template("munin/munin-node.conf.Gentoo."), + mode => 0644, owner => root, group => root, + # this has to be installed before the package, so the postinst can + # boot the munin-node without failure! + before => Package["munin-node"], + notify => Service["munin-node"], + } + + service { "munin": + ensure => running, + } + + munin::register { $fqdn: } + +} + diff --git a/manifests/plugin.pp b/manifests/plugin.pp index e7e22d1..f07b5fa 100644 --- a/manifests/plugin.pp +++ b/manifests/plugin.pp @@ -125,3 +125,10 @@ class munin::plugins::vserver inherits munin::plugins::base { } } + +class munin::plugins::gentoo inherits munin::plugins::base { + plugin { + [ netstat, processes ]: + ensure => present; + } +} -- cgit v1.2.3 From 83262e9f34f805fc02b6e242f6a70aa2965f9f09 Mon Sep 17 00:00:00 2001 From: am Date: Tue, 4 Dec 2007 10:12:27 +0000 Subject: nochmals das lsb problem ... + import munin (test) git-svn-id: https://svn/ipuppet/trunk/modules/munin@184 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/plugin.pp | 1 + 1 file changed, 1 insertion(+) diff --git a/manifests/plugin.pp b/manifests/plugin.pp index f07b5fa..815c3c5 100644 --- a/manifests/plugin.pp +++ b/manifests/plugin.pp @@ -127,6 +127,7 @@ class munin::plugins::vserver inherits munin::plugins::base { } class munin::plugins::gentoo inherits munin::plugins::base { + plugin { [ netstat, processes ]: ensure => present; -- cgit v1.2.3 From e3980c637e756fda0b8fd1e3f4522efcb270af85 Mon Sep 17 00:00:00 2001 From: am Date: Tue, 4 Dec 2007 13:34:29 +0000 Subject: error 2 mal definiertes processes git-svn-id: https://svn/ipuppet/trunk/modules/munin@185 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/plugin.pp | 4 ---- 1 file changed, 4 deletions(-) diff --git a/manifests/plugin.pp b/manifests/plugin.pp index 815c3c5..c107f41 100644 --- a/manifests/plugin.pp +++ b/manifests/plugin.pp @@ -128,8 +128,4 @@ class munin::plugins::vserver inherits munin::plugins::base { class munin::plugins::gentoo inherits munin::plugins::base { - plugin { - [ netstat, processes ]: - ensure => present; - } } -- cgit v1.2.3 From 3f8bc12721953212d2e3b0d9142a3e45d9c80c70 Mon Sep 17 00:00:00 2001 From: am Date: Tue, 4 Dec 2007 16:51:56 +0000 Subject: munin-node only on debian/etc... git-svn-id: https://svn/ipuppet/trunk/modules/munin@186 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/plugin.pp | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/manifests/plugin.pp b/manifests/plugin.pp index c107f41..81d8ed4 100644 --- a/manifests/plugin.pp +++ b/manifests/plugin.pp @@ -16,12 +16,16 @@ define munin::plugin ( file { $plugin: ensure => absent, } } default: { - $plugin_src = $ensure ? { "present" => $name, default => $ensure } - debug ( "munin_plugin: making $plugin using src: $plugin_src" ) - file { $plugin: - ensure => "$script_path/${plugin_src}", - require => Package["munin-node"], - notify => Service["munin-node"], + case $operatingsystem { + debian: { + $plugin_src = $ensure ? { "present" => $name, default => $ensure } + debug ( "munin_plugin: making $plugin using src: $plugin_src" ) + file { $plugin: + ensure => "$script_path/${plugin_src}", + require => Package["munin-node"], + notify => Service["munin-node"], + } + } } } } -- cgit v1.2.3 From 4d9eb3d04b2ed3efba52d45e2a24cf7ed7965151 Mon Sep 17 00:00:00 2001 From: am Date: Tue, 4 Dec 2007 17:18:35 +0000 Subject: munin-node in gentoo is munin git-svn-id: https://svn/ipuppet/trunk/modules/munin@188 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/client.pp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/manifests/client.pp b/manifests/client.pp index f5caaec..639d133 100644 --- a/manifests/client.pp +++ b/manifests/client.pp @@ -145,8 +145,8 @@ class munin::client::gentoo mode => 0644, owner => root, group => root, # this has to be installed before the package, so the postinst can # boot the munin-node without failure! - before => Package["munin-node"], - notify => Service["munin-node"], + before => Package["munin"], + notify => Service["munin"], } service { "munin": -- cgit v1.2.3 From 5300e9e26cfa65f0c182719b240a08f79ae76094 Mon Sep 17 00:00:00 2001 From: am Date: Tue, 4 Dec 2007 17:24:33 +0000 Subject: =?UTF-8?q?variable=20f=C3=BCr=20munin-node-service=20(einmal=20mu?= =?UTF-8?q?nin-node,=20das=20andere=20mal=20munin)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: https://svn/ipuppet/trunk/modules/munin@189 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/plugin.pp | 54 ++++++++++++++++++++++++++++------------------------- 1 file changed, 29 insertions(+), 25 deletions(-) diff --git a/manifests/plugin.pp b/manifests/plugin.pp index 81d8ed4..1420260 100644 --- a/manifests/plugin.pp +++ b/manifests/plugin.pp @@ -7,6 +7,15 @@ define munin::plugin ( $script_path = "/usr/share/munin/plugins", $config = '') { + case $operatingsystem { + debian: { + $munin-node-service = "munin-node"; + } + gentoo: { + $munin-node-service = "munin"; + } + } + $plugin_src = $ensure ? { "present" => $name, default => $ensure } debug ( "munin_plugin: name=$name, ensure=$ensure, script_path=$script_path" ) $plugin = "/etc/munin/plugins/$name" $plugin_conf = "/etc/munin/plugin-conf.d/$name.conf" @@ -16,16 +25,12 @@ define munin::plugin ( file { $plugin: ensure => absent, } } default: { - case $operatingsystem { - debian: { - $plugin_src = $ensure ? { "present" => $name, default => $ensure } - debug ( "munin_plugin: making $plugin using src: $plugin_src" ) - file { $plugin: - ensure => "$script_path/${plugin_src}", - require => Package["munin-node"], - notify => Service["munin-node"], - } - } + $plugin_src = $ensure ? { "present" => $name, default => $ensure } + debug ( "munin_plugin: making $plugin using src: $plugin_src" ) + file { $plugin: + ensure => "$script_path/${plugin_src}", + require => Package[$munin-node-service], + notify => Service[$munin-node-service], } } } @@ -70,21 +75,20 @@ define munin::remoteplugin($ensure = "present", $source, $config = '') { } } -class munin::plugins::base { - - file { - [ "/etc/munin/plugins", "/etc/munin/plugin-conf.d" ]: - source => "puppet://$servername/munin/empty", - ensure => directory, checksum => mtime, - recurse => true, purge => true, force => true, - mode => 0755, owner => root, group => root, - notify => Service[munin-node]; - "/etc/munin/plugin-conf.d/munin-node": - ensure => present, - mode => 0644, owner => root, group => root, - notify => Service[munin-node]; - } - +class munin::plugins::base-debian { + + file { + [ "/etc/munin/plugins", "/etc/munin/plugin-conf.d" ]: + source => "puppet://$servername/munin/empty", + ensure => directory, checksum => mtime, + recurse => true, purge => true, force => true, + mode => 0755, owner => root, group => root, + notify => Service[$munin-node-service]; + "/etc/munin/plugin-conf.d/munin-node": + ensure => present, + mode => 0644, owner => root, group => root, + notify => Service[$munin-node-service]; + } } # handle if_ and if_err_ plugins -- cgit v1.2.3 From 26e0ec6e73487fa6ab6f0000ee19906ad27caeaf Mon Sep 17 00:00:00 2001 From: am Date: Tue, 4 Dec 2007 17:26:28 +0000 Subject: test git-svn-id: https://svn/ipuppet/trunk/modules/munin@190 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/plugin.pp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/manifests/plugin.pp b/manifests/plugin.pp index 1420260..e7a6b2a 100644 --- a/manifests/plugin.pp +++ b/manifests/plugin.pp @@ -9,10 +9,10 @@ define munin::plugin ( { case $operatingsystem { debian: { - $munin-node-service = "munin-node"; + $munin-node-service = "$operatingsystem/munin-node"; } gentoo: { - $munin-node-service = "munin"; + $munin-node-service = "$operatingsystem/munin"; } } $plugin_src = $ensure ? { "present" => $name, default => $ensure } -- cgit v1.2.3 From d362c7c3f555d620b35e0021781b6f0e894105fc Mon Sep 17 00:00:00 2001 From: am Date: Tue, 4 Dec 2007 17:29:17 +0000 Subject: an beide orte ... git-svn-id: https://svn/ipuppet/trunk/modules/munin@191 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/plugin.pp | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/manifests/plugin.pp b/manifests/plugin.pp index e7a6b2a..6a84bc6 100644 --- a/manifests/plugin.pp +++ b/manifests/plugin.pp @@ -8,14 +8,10 @@ define munin::plugin ( $config = '') { case $operatingsystem { - debian: { - $munin-node-service = "$operatingsystem/munin-node"; - } - gentoo: { - $munin-node-service = "$operatingsystem/munin"; - } + debian: { $munin-node-service = "munin-node"; } + gentoo: { $munin-node-service = "munin"; } } - $plugin_src = $ensure ? { "present" => $name, default => $ensure } + $plugin_src = $ensure ? { "present" => $name, default => $ensure } debug ( "munin_plugin: name=$name, ensure=$ensure, script_path=$script_path" ) $plugin = "/etc/munin/plugins/$name" $plugin_conf = "/etc/munin/plugin-conf.d/$name.conf" @@ -77,6 +73,10 @@ define munin::remoteplugin($ensure = "present", $source, $config = '') { class munin::plugins::base-debian { + case $operatingsystem { + debian: { $munin-node-service = "munin-node"; } + gentoo: { $munin-node-service = "munin"; } + } file { [ "/etc/munin/plugins", "/etc/munin/plugin-conf.d" ]: source => "puppet://$servername/munin/empty", -- cgit v1.2.3 From 34e693dab7cb5193cc9661c05e7e13b92814cedf Mon Sep 17 00:00:00 2001 From: am Date: Tue, 4 Dec 2007 17:32:18 +0000 Subject: test git-svn-id: https://svn/ipuppet/trunk/modules/munin@192 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/plugin.pp | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/manifests/plugin.pp b/manifests/plugin.pp index 6a84bc6..f72875b 100644 --- a/manifests/plugin.pp +++ b/manifests/plugin.pp @@ -74,8 +74,8 @@ define munin::remoteplugin($ensure = "present", $source, $config = '') { class munin::plugins::base-debian { case $operatingsystem { - debian: { $munin-node-service = "munin-node"; } gentoo: { $munin-node-service = "munin"; } + debian: { $munin-node-service = "munin-node"; } } file { [ "/etc/munin/plugins", "/etc/munin/plugin-conf.d" ]: @@ -83,11 +83,13 @@ class munin::plugins::base-debian { ensure => directory, checksum => mtime, recurse => true, purge => true, force => true, mode => 0755, owner => root, group => root, - notify => Service[$munin-node-service]; + #notify => Service[$munin-node-service]; + notify => Service[munin]; "/etc/munin/plugin-conf.d/munin-node": ensure => present, mode => 0644, owner => root, group => root, - notify => Service[$munin-node-service]; + # notify => Service[$munin-node-service]; + notify => Service[munin]; } } -- cgit v1.2.3 From 3e232c2c8387fb5531796994d748fe1e99bac065 Mon Sep 17 00:00:00 2001 From: am Date: Tue, 4 Dec 2007 18:49:37 +0000 Subject: strange... git-svn-id: https://svn/ipuppet/trunk/modules/munin@193 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/client.pp | 4 ++-- manifests/plugin.pp | 12 +++++------- 2 files changed, 7 insertions(+), 9 deletions(-) diff --git a/manifests/client.pp b/manifests/client.pp index 639d133..47df43d 100644 --- a/manifests/client.pp +++ b/manifests/client.pp @@ -145,8 +145,8 @@ class munin::client::gentoo mode => 0644, owner => root, group => root, # this has to be installed before the package, so the postinst can # boot the munin-node without failure! - before => Package["munin"], - notify => Service["munin"], + #before => Package["munin"], + #notify => Service["munin"], } service { "munin": diff --git a/manifests/plugin.pp b/manifests/plugin.pp index f72875b..5b1bfc3 100644 --- a/manifests/plugin.pp +++ b/manifests/plugin.pp @@ -26,7 +26,7 @@ define munin::plugin ( file { $plugin: ensure => "$script_path/${plugin_src}", require => Package[$munin-node-service], - notify => Service[$munin-node-service], + #notify => Service[$munin-node-service], } } } @@ -82,14 +82,14 @@ class munin::plugins::base-debian { source => "puppet://$servername/munin/empty", ensure => directory, checksum => mtime, recurse => true, purge => true, force => true, - mode => 0755, owner => root, group => root, + mode => 0755, owner => root, group => root; #notify => Service[$munin-node-service]; - notify => Service[munin]; + #notify => Service[munin]; "/etc/munin/plugin-conf.d/munin-node": ensure => present, - mode => 0644, owner => root, group => root, + mode => 0644, owner => root, group => root; # notify => Service[$munin-node-service]; - notify => Service[munin]; + # notify => Service[munin]; } } @@ -102,8 +102,6 @@ class munin::plugins::interfaces inherits munin::plugins::base { $ifs: ensure => "if_"; $if_errs: ensure => "if_err_"; } - - } class munin::plugins::linux inherits munin::plugins::base { -- cgit v1.2.3 From dcdadb9a99917ab7214fcb57c64cab2047cd8fe3 Mon Sep 17 00:00:00 2001 From: am Date: Tue, 4 Dec 2007 18:55:43 +0000 Subject: war ein anderer fehler ... shit git-svn-id: https://svn/ipuppet/trunk/modules/munin@194 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/client.pp | 4 ++-- manifests/plugin.pp | 18 ++++++++---------- 2 files changed, 10 insertions(+), 12 deletions(-) diff --git a/manifests/client.pp b/manifests/client.pp index 47df43d..639d133 100644 --- a/manifests/client.pp +++ b/manifests/client.pp @@ -145,8 +145,8 @@ class munin::client::gentoo mode => 0644, owner => root, group => root, # this has to be installed before the package, so the postinst can # boot the munin-node without failure! - #before => Package["munin"], - #notify => Service["munin"], + before => Package["munin"], + notify => Service["munin"], } service { "munin": diff --git a/manifests/plugin.pp b/manifests/plugin.pp index 5b1bfc3..e361d69 100644 --- a/manifests/plugin.pp +++ b/manifests/plugin.pp @@ -8,8 +8,8 @@ define munin::plugin ( $config = '') { case $operatingsystem { - debian: { $munin-node-service = "munin-node"; } - gentoo: { $munin-node-service = "munin"; } + debian: { $munin_node_service = "munin-node"; } + gentoo: { $munin-node_service = "munin"; } } $plugin_src = $ensure ? { "present" => $name, default => $ensure } debug ( "munin_plugin: name=$name, ensure=$ensure, script_path=$script_path" ) @@ -25,8 +25,8 @@ define munin::plugin ( debug ( "munin_plugin: making $plugin using src: $plugin_src" ) file { $plugin: ensure => "$script_path/${plugin_src}", - require => Package[$munin-node-service], - #notify => Service[$munin-node-service], + require => Package[$munin_node_service], + notify => Service[$munin_node_service], } } } @@ -74,8 +74,8 @@ define munin::remoteplugin($ensure = "present", $source, $config = '') { class munin::plugins::base-debian { case $operatingsystem { - gentoo: { $munin-node-service = "munin"; } - debian: { $munin-node-service = "munin-node"; } + gentoo: { $munin_node_service = "munin"; } + debian: { $munin_node_service = "munin-node"; } } file { [ "/etc/munin/plugins", "/etc/munin/plugin-conf.d" ]: @@ -83,13 +83,11 @@ class munin::plugins::base-debian { ensure => directory, checksum => mtime, recurse => true, purge => true, force => true, mode => 0755, owner => root, group => root; - #notify => Service[$munin-node-service]; - #notify => Service[munin]; + notify => Service[$munin_node_service]; "/etc/munin/plugin-conf.d/munin-node": ensure => present, mode => 0644, owner => root, group => root; - # notify => Service[$munin-node-service]; - # notify => Service[munin]; + notify => Service[$munin_node_service]; } } -- cgit v1.2.3 From a39eec70917c79ad36101390cac03c111235a454 Mon Sep 17 00:00:00 2001 From: am Date: Tue, 4 Dec 2007 19:41:28 +0000 Subject: lokale installtion des puppetmasters, korrektur der probleme git-svn-id: https://svn/ipuppet/trunk/modules/munin@195 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/plugin.pp | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/manifests/plugin.pp b/manifests/plugin.pp index e361d69..ea31b32 100644 --- a/manifests/plugin.pp +++ b/manifests/plugin.pp @@ -8,8 +8,8 @@ define munin::plugin ( $config = '') { case $operatingsystem { - debian: { $munin_node_service = "munin-node"; } - gentoo: { $munin-node_service = "munin"; } + debian: { $munin_node_service = "munin-node" } + gentoo: { $munin_node_service = "munin" } } $plugin_src = $ensure ? { "present" => $name, default => $ensure } debug ( "munin_plugin: name=$name, ensure=$ensure, script_path=$script_path" ) @@ -74,19 +74,19 @@ define munin::remoteplugin($ensure = "present", $source, $config = '') { class munin::plugins::base-debian { case $operatingsystem { - gentoo: { $munin_node_service = "munin"; } - debian: { $munin_node_service = "munin-node"; } + gentoo: { $munin_node_service = "munin" } + debian: { $munin_node_service = "munin-node" } } file { [ "/etc/munin/plugins", "/etc/munin/plugin-conf.d" ]: source => "puppet://$servername/munin/empty", ensure => directory, checksum => mtime, recurse => true, purge => true, force => true, - mode => 0755, owner => root, group => root; + mode => 0755, owner => root, group => root, notify => Service[$munin_node_service]; "/etc/munin/plugin-conf.d/munin-node": ensure => present, - mode => 0644, owner => root, group => root; + mode => 0644, owner => root, group => root, notify => Service[$munin_node_service]; } } -- cgit v1.2.3 From fbc577ecabbd034ec615744208eb8a27859503c4 Mon Sep 17 00:00:00 2001 From: am Date: Tue, 4 Dec 2007 19:50:40 +0000 Subject: falscher name git-svn-id: https://svn/ipuppet/trunk/modules/munin@196 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/plugin.pp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/manifests/plugin.pp b/manifests/plugin.pp index ea31b32..8aee8ad 100644 --- a/manifests/plugin.pp +++ b/manifests/plugin.pp @@ -71,7 +71,7 @@ define munin::remoteplugin($ensure = "present", $source, $config = '') { } } -class munin::plugins::base-debian { +class munin::plugins::base { case $operatingsystem { gentoo: { $munin_node_service = "munin" } -- cgit v1.2.3 From f69907de9be312048d2dc74e010bda410a5b3d37 Mon Sep 17 00:00:00 2001 From: am Date: Wed, 5 Dec 2007 13:51:54 +0000 Subject: test git-svn-id: https://svn/ipuppet/trunk/modules/munin@197 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/plugin.pp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/manifests/plugin.pp b/manifests/plugin.pp index 8aee8ad..40591b8 100644 --- a/manifests/plugin.pp +++ b/manifests/plugin.pp @@ -83,7 +83,7 @@ class munin::plugins::base { ensure => directory, checksum => mtime, recurse => true, purge => true, force => true, mode => 0755, owner => root, group => root, - notify => Service[$munin_node_service]; + notify => Service["$munin_node_service-$operatingsystem"]; "/etc/munin/plugin-conf.d/munin-node": ensure => present, mode => 0644, owner => root, group => root, -- cgit v1.2.3 From 6d7f8ca83b1f7ca06f56a012b340a7e42f37c1b1 Mon Sep 17 00:00:00 2001 From: am Date: Wed, 5 Dec 2007 13:56:23 +0000 Subject: uebersehener error git-svn-id: https://svn/ipuppet/trunk/modules/munin@198 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/plugin.pp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/manifests/plugin.pp b/manifests/plugin.pp index 40591b8..81a17b9 100644 --- a/manifests/plugin.pp +++ b/manifests/plugin.pp @@ -21,7 +21,7 @@ define munin::plugin ( file { $plugin: ensure => absent, } } default: { - $plugin_src = $ensure ? { "present" => $name, default => $ensure } + #$plugin_src = $ensure ? { "present" => $name, default => $ensure } debug ( "munin_plugin: making $plugin using src: $plugin_src" ) file { $plugin: ensure => "$script_path/${plugin_src}", -- cgit v1.2.3 From cbd5da982afdd44558f4f8b6fbf3e9ae45c324ae Mon Sep 17 00:00:00 2001 From: am Date: Wed, 5 Dec 2007 14:01:12 +0000 Subject: test erfolgreich ... rueckgaengig machen.. git-svn-id: https://svn/ipuppet/trunk/modules/munin@199 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/plugin.pp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/manifests/plugin.pp b/manifests/plugin.pp index 81a17b9..8b03765 100644 --- a/manifests/plugin.pp +++ b/manifests/plugin.pp @@ -83,7 +83,7 @@ class munin::plugins::base { ensure => directory, checksum => mtime, recurse => true, purge => true, force => true, mode => 0755, owner => root, group => root, - notify => Service["$munin_node_service-$operatingsystem"]; + notify => Service["$munin_node_service"]; "/etc/munin/plugin-conf.d/munin-node": ensure => present, mode => 0644, owner => root, group => root, -- cgit v1.2.3 From 1fe2c5e4ec21ae9d49bc24a3583b55cda8f216be Mon Sep 17 00:00:00 2001 From: am Date: Wed, 5 Dec 2007 14:12:29 +0000 Subject: gentoo has another script path git-svn-id: https://svn/ipuppet/trunk/modules/munin@200 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/plugin.pp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/manifests/plugin.pp b/manifests/plugin.pp index 8b03765..f97abf0 100644 --- a/manifests/plugin.pp +++ b/manifests/plugin.pp @@ -9,7 +9,10 @@ define munin::plugin ( { case $operatingsystem { debian: { $munin_node_service = "munin-node" } - gentoo: { $munin_node_service = "munin" } + Gentoo: { + $munin_node_service = "munin" + $script_path = "/usr/libexec/munin/plugins", + } } $plugin_src = $ensure ? { "present" => $name, default => $ensure } debug ( "munin_plugin: name=$name, ensure=$ensure, script_path=$script_path" ) -- cgit v1.2.3 From e2b8485b231352cecc15d094a36360cf7b7f9eb4 Mon Sep 17 00:00:00 2001 From: am Date: Wed, 5 Dec 2007 14:14:06 +0000 Subject: , fehler git-svn-id: https://svn/ipuppet/trunk/modules/munin@201 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/plugin.pp | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/manifests/plugin.pp b/manifests/plugin.pp index f97abf0..2494203 100644 --- a/manifests/plugin.pp +++ b/manifests/plugin.pp @@ -8,10 +8,12 @@ define munin::plugin ( $config = '') { case $operatingsystem { - debian: { $munin_node_service = "munin-node" } + debian: { + $munin_node_service = "munin-node"; + } Gentoo: { - $munin_node_service = "munin" - $script_path = "/usr/libexec/munin/plugins", + $munin_node_service = "munin", + $script_path = "/usr/libexec/munin/plugins"; } } $plugin_src = $ensure ? { "present" => $name, default => $ensure } -- cgit v1.2.3 From 8c99a8604ca0e1fe0cbb0d94317064f45d1b41ab Mon Sep 17 00:00:00 2001 From: am Date: Wed, 5 Dec 2007 14:18:15 +0000 Subject: in case gibts keine kommas ... git-svn-id: https://svn/ipuppet/trunk/modules/munin@202 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/plugin.pp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/manifests/plugin.pp b/manifests/plugin.pp index 2494203..09489dd 100644 --- a/manifests/plugin.pp +++ b/manifests/plugin.pp @@ -9,11 +9,11 @@ define munin::plugin ( { case $operatingsystem { debian: { - $munin_node_service = "munin-node"; + $munin_node_service = "munin-node" } Gentoo: { - $munin_node_service = "munin", - $script_path = "/usr/libexec/munin/plugins"; + $munin_node_service = "munin" + $script_path = "/usr/libexec/munin/plugins" } } $plugin_src = $ensure ? { "present" => $name, default => $ensure } -- cgit v1.2.3 From 98ef8807b7ade3162c4ca2e14450641a29b1b4a1 Mon Sep 17 00:00:00 2001 From: am Date: Wed, 5 Dec 2007 14:29:03 +0000 Subject: added script path differently test.. git-svn-id: https://svn/ipuppet/trunk/modules/munin@203 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/plugin.pp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/manifests/plugin.pp b/manifests/plugin.pp index 09489dd..2b14857 100644 --- a/manifests/plugin.pp +++ b/manifests/plugin.pp @@ -11,7 +11,7 @@ define munin::plugin ( debian: { $munin_node_service = "munin-node" } - Gentoo: { + gentoo: { $munin_node_service = "munin" $script_path = "/usr/libexec/munin/plugins" } -- cgit v1.2.3 From 748e8d68a5f1624f9f41bfd870476fcf4e51d6dc Mon Sep 17 00:00:00 2001 From: am Date: Wed, 5 Dec 2007 14:38:01 +0000 Subject: script path correction git-svn-id: https://svn/ipuppet/trunk/modules/munin@204 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/plugin.pp | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/manifests/plugin.pp b/manifests/plugin.pp index 2b14857..b9a1456 100644 --- a/manifests/plugin.pp +++ b/manifests/plugin.pp @@ -4,20 +4,24 @@ define munin::plugin ( $ensure = "present", - $script_path = "/usr/share/munin/plugins", + $script_path, $config = '') { + $script_path_default = "/usr/share/munin/plugins" case $operatingsystem { debian: { $munin_node_service = "munin-node" + $script_path_default = "/usr/share/munin/plugins" } gentoo: { $munin_node_service = "munin" - $script_path = "/usr/libexec/munin/plugins" + $script_path_default = "/usr/libexec/munin/plugins" } } + $script_path_correct = $script_path ? { '' => $script_path_default, default => $script_path } + $plugin_src = $ensure ? { "present" => $name, default => $ensure } - debug ( "munin_plugin: name=$name, ensure=$ensure, script_path=$script_path" ) + debug ( "munin_plugin: name=$name, ensure=$ensure, script_path=$script_path_correct" ) $plugin = "/etc/munin/plugins/$name" $plugin_conf = "/etc/munin/plugin-conf.d/$name.conf" case $ensure { @@ -29,7 +33,7 @@ define munin::plugin ( #$plugin_src = $ensure ? { "present" => $name, default => $ensure } debug ( "munin_plugin: making $plugin using src: $plugin_src" ) file { $plugin: - ensure => "$script_path/${plugin_src}", + ensure => "$script_path_correct/${plugin_src}", require => Package[$munin_node_service], notify => Service[$munin_node_service], } -- cgit v1.2.3 From 58c7e6d506030bc3dcdaf4e4aaaf931c7b40a341 Mon Sep 17 00:00:00 2001 From: am Date: Thu, 6 Dec 2007 09:03:57 +0000 Subject: * lsb_ ... immer noch unzufrieden * script path test git-svn-id: https://svn/ipuppet/trunk/modules/munin@206 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/plugin.pp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/manifests/plugin.pp b/manifests/plugin.pp index b9a1456..7a6e6af 100644 --- a/manifests/plugin.pp +++ b/manifests/plugin.pp @@ -4,7 +4,7 @@ define munin::plugin ( $ensure = "present", - $script_path, + $script_path = '', $config = '') { $script_path_default = "/usr/share/munin/plugins" -- cgit v1.2.3 From 01caf8e855c93161bef56ab1da3455bf936dc7b1 Mon Sep 17 00:00:00 2001 From: am Date: Thu, 6 Dec 2007 09:14:08 +0000 Subject: cannot reassign ... correction git-svn-id: https://svn/ipuppet/trunk/modules/munin@207 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/plugin.pp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/manifests/plugin.pp b/manifests/plugin.pp index 7a6e6af..f35bf8f 100644 --- a/manifests/plugin.pp +++ b/manifests/plugin.pp @@ -7,7 +7,7 @@ define munin::plugin ( $script_path = '', $config = '') { - $script_path_default = "/usr/share/munin/plugins" + #$script_path_default = "/usr/share/munin/plugins" case $operatingsystem { debian: { $munin_node_service = "munin-node" @@ -17,6 +17,10 @@ define munin::plugin ( $munin_node_service = "munin" $script_path_default = "/usr/libexec/munin/plugins" } + default: { + $munin_node_service = "munin" + $script_path_default = "/usr/libexec/munin/plugins" + } } $script_path_correct = $script_path ? { '' => $script_path_default, default => $script_path } -- cgit v1.2.3 From ab7b943e792cbea075c10c118c81144ebb21b5f4 Mon Sep 17 00:00:00 2001 From: am Date: Thu, 6 Dec 2007 09:53:51 +0000 Subject: strange, warum setzt er die variable nicht ... git-svn-id: https://svn/ipuppet/trunk/modules/munin@208 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/plugin.pp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/manifests/plugin.pp b/manifests/plugin.pp index f35bf8f..de8f0a3 100644 --- a/manifests/plugin.pp +++ b/manifests/plugin.pp @@ -22,7 +22,7 @@ define munin::plugin ( $script_path_default = "/usr/libexec/munin/plugins" } } - $script_path_correct = $script_path ? { '' => $script_path_default, default => $script_path } + $script_path_correct = $script_path ? { '' => $script_path_default, default => $script_path_default } $plugin_src = $ensure ? { "present" => $name, default => $ensure } debug ( "munin_plugin: name=$name, ensure=$ensure, script_path=$script_path_correct" ) -- cgit v1.2.3 From fa3b0c563327deb29405eeacdf6ba7dd14d01869 Mon Sep 17 00:00:00 2001 From: am Date: Thu, 6 Dec 2007 10:07:42 +0000 Subject: haette ich schon lange an nen anderen ort tun sollen ... korrektur Service bei gentoo heisst munin-node git-svn-id: https://svn/ipuppet/trunk/modules/munin@209 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/plugin.pp | 34 +++++++++++++++++++++------------- 1 file changed, 21 insertions(+), 13 deletions(-) diff --git a/manifests/plugin.pp b/manifests/plugin.pp index de8f0a3..724e9a4 100644 --- a/manifests/plugin.pp +++ b/manifests/plugin.pp @@ -4,28 +4,30 @@ define munin::plugin ( $ensure = "present", - $script_path = '', + $script_path = $script_path_default, $config = '') { - #$script_path_default = "/usr/share/munin/plugins" case $operatingsystem { debian: { $munin_node_service = "munin-node" - $script_path_default = "/usr/share/munin/plugins" + $munin_node_package = "munin-node" + #$script_path_default = "/usr/share/munin/plugins" } gentoo: { - $munin_node_service = "munin" - $script_path_default = "/usr/libexec/munin/plugins" + $munin_node_service = "munin-node" + $munin_node_package = "munin" + #$script_path_default = "/usr/libexec/munin/plugins" } default: { - $munin_node_service = "munin" - $script_path_default = "/usr/libexec/munin/plugins" + $munin_node_service = "munin-node" + $munin_node_package = "munin" + #$script_path_default = "/usr/libexec/munin/plugins" } } - $script_path_correct = $script_path ? { '' => $script_path_default, default => $script_path_default } + #$script_path_correct = $script_path ? { '' => $script_path_default, default => $script_path_default } $plugin_src = $ensure ? { "present" => $name, default => $ensure } - debug ( "munin_plugin: name=$name, ensure=$ensure, script_path=$script_path_correct" ) + debug ( "munin_plugin: name=$name, ensure=$ensure, script_path=$script_path" ) $plugin = "/etc/munin/plugins/$name" $plugin_conf = "/etc/munin/plugin-conf.d/$name.conf" case $ensure { @@ -37,8 +39,8 @@ define munin::plugin ( #$plugin_src = $ensure ? { "present" => $name, default => $ensure } debug ( "munin_plugin: making $plugin using src: $plugin_src" ) file { $plugin: - ensure => "$script_path_correct/${plugin_src}", - require => Package[$munin_node_service], + ensure => "$script_path/${plugin_src}", + require => Package[$munin_node_package], notify => Service[$munin_node_service], } } @@ -87,8 +89,14 @@ define munin::remoteplugin($ensure = "present", $source, $config = '') { class munin::plugins::base { case $operatingsystem { - gentoo: { $munin_node_service = "munin" } - debian: { $munin_node_service = "munin-node" } + gentoo: { + $munin_node_package = "munin" + $munin_node_service = "munin-node" + } + debian: { + $munin_node_service = "munin-node" + $munin_node_package = "munin-node" + } } file { [ "/etc/munin/plugins", "/etc/munin/plugin-conf.d" ]: -- cgit v1.2.3 From bf7c4c00e8ba853c217a4cd6cea39a44d6f231c3 Mon Sep 17 00:00:00 2001 From: am Date: Fri, 7 Dec 2007 08:47:20 +0000 Subject: * Could not retrieve dependency 'Service[munin-node]' at /var/lib/puppet/modules/munin/manifests/plugin.pp:45 git-svn-id: https://svn/ipuppet/trunk/modules/munin@211 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/plugin.pp | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/manifests/plugin.pp b/manifests/plugin.pp index 724e9a4..2ae20d2 100644 --- a/manifests/plugin.pp +++ b/manifests/plugin.pp @@ -14,12 +14,13 @@ define munin::plugin ( #$script_path_default = "/usr/share/munin/plugins" } gentoo: { - $munin_node_service = "munin-node" + #$munin_node_service = "munin-node" + $munin_node_service = "munin" $munin_node_package = "munin" #$script_path_default = "/usr/libexec/munin/plugins" } default: { - $munin_node_service = "munin-node" + $munin_node_service = "munin" $munin_node_package = "munin" #$script_path_default = "/usr/libexec/munin/plugins" } @@ -91,7 +92,7 @@ class munin::plugins::base { case $operatingsystem { gentoo: { $munin_node_package = "munin" - $munin_node_service = "munin-node" + $munin_node_service = "munin" } debian: { $munin_node_service = "munin-node" -- cgit v1.2.3 From e6917f083233475fd0a68539df97b7ffd74cc5b6 Mon Sep 17 00:00:00 2001 From: am Date: Fri, 7 Dec 2007 10:52:18 +0000 Subject: templates neu git-svn-id: https://svn/ipuppet/trunk/modules/munin@212 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- templates/munin-node.conf.CentOS | 1 + templates/munin-node.conf.CentOS. | 1 + templates/munin-node.conf.CentOS.5 | 1 + templates/munin-node.conf.default | 39 ++++++++++++++++++++++++++++++++++++++ 4 files changed, 42 insertions(+) create mode 120000 templates/munin-node.conf.CentOS create mode 120000 templates/munin-node.conf.CentOS. create mode 120000 templates/munin-node.conf.CentOS.5 create mode 100644 templates/munin-node.conf.default diff --git a/templates/munin-node.conf.CentOS b/templates/munin-node.conf.CentOS new file mode 120000 index 0000000..082b30c --- /dev/null +++ b/templates/munin-node.conf.CentOS @@ -0,0 +1 @@ +munin-node.conf.default \ No newline at end of file diff --git a/templates/munin-node.conf.CentOS. b/templates/munin-node.conf.CentOS. new file mode 120000 index 0000000..082b30c --- /dev/null +++ b/templates/munin-node.conf.CentOS. @@ -0,0 +1 @@ +munin-node.conf.default \ No newline at end of file diff --git a/templates/munin-node.conf.CentOS.5 b/templates/munin-node.conf.CentOS.5 new file mode 120000 index 0000000..082b30c --- /dev/null +++ b/templates/munin-node.conf.CentOS.5 @@ -0,0 +1 @@ +munin-node.conf.default \ No newline at end of file diff --git a/templates/munin-node.conf.default b/templates/munin-node.conf.default new file mode 100644 index 0000000..f10349e --- /dev/null +++ b/templates/munin-node.conf.default @@ -0,0 +1,39 @@ +########## +########## Managed by puppet +########## + +log_level 4 +log_file /var/log/munin/munin-node.log +pid_file /var/run/munin/munin-node.pid +background 1 +setseid 1 + +# Which host/port to bind to; +host <%= munin_host_real %> +port <%= munin_port_real %> +user root +group root +setsid yes + +# Regexps for files to ignore + +ignore_file ~$ +ignore_file \.bak$ +ignore_file %$ +ignore_file \.dpkg-(tmp|new|old|dist)$ +ignore_file \.rpm(save|new)$ + +# Set this if the client doesn't report the correct hostname when +# telnetting to localhost, port 4949 +# +#host_name localhost.localdomain +host_name <%= fqdn %> + +# A list of addresses that are allowed to connect. This must be a +# regular expression, due to brain damage in Net::Server, which +# doesn't understand CIDR-style network notation. You may repeat +# the allow line as many times as you'd like +allow ^127\.0\.0\.1$ +allow <%= munin_allow1 %> +allow <%= munin_allow2 %> + -- cgit v1.2.3 From a34896a0987b993a5826b87da4151b348f7b2d42 Mon Sep 17 00:00:00 2001 From: am Date: Fri, 7 Dec 2007 11:05:18 +0000 Subject: gentoo ist eigntlich auch default ... git-svn-id: https://svn/ipuppet/trunk/modules/munin@213 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- templates/munin-node.conf.Gentoo | 40 +--------------------------------------- 1 file changed, 1 insertion(+), 39 deletions(-) mode change 100644 => 120000 templates/munin-node.conf.Gentoo diff --git a/templates/munin-node.conf.Gentoo b/templates/munin-node.conf.Gentoo deleted file mode 100644 index f10349e..0000000 --- a/templates/munin-node.conf.Gentoo +++ /dev/null @@ -1,39 +0,0 @@ -########## -########## Managed by puppet -########## - -log_level 4 -log_file /var/log/munin/munin-node.log -pid_file /var/run/munin/munin-node.pid -background 1 -setseid 1 - -# Which host/port to bind to; -host <%= munin_host_real %> -port <%= munin_port_real %> -user root -group root -setsid yes - -# Regexps for files to ignore - -ignore_file ~$ -ignore_file \.bak$ -ignore_file %$ -ignore_file \.dpkg-(tmp|new|old|dist)$ -ignore_file \.rpm(save|new)$ - -# Set this if the client doesn't report the correct hostname when -# telnetting to localhost, port 4949 -# -#host_name localhost.localdomain -host_name <%= fqdn %> - -# A list of addresses that are allowed to connect. This must be a -# regular expression, due to brain damage in Net::Server, which -# doesn't understand CIDR-style network notation. You may repeat -# the allow line as many times as you'd like -allow ^127\.0\.0\.1$ -allow <%= munin_allow1 %> -allow <%= munin_allow2 %> - diff --git a/templates/munin-node.conf.Gentoo b/templates/munin-node.conf.Gentoo new file mode 120000 index 0000000..082b30c --- /dev/null +++ b/templates/munin-node.conf.Gentoo @@ -0,0 +1 @@ +munin-node.conf.default \ No newline at end of file -- cgit v1.2.3 From 01273ad5699ff5791416892fb25f84b1ba227d05 Mon Sep 17 00:00:00 2001 From: am Date: Fri, 7 Dec 2007 11:07:31 +0000 Subject: * added centos to the munin module * little corrections in shorewall-local stuff git-svn-id: https://svn/ipuppet/trunk/modules/munin@214 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/client.pp | 37 ++++++++++++++++++++++++++++++++++++- manifests/plugin.pp | 24 +++++++++++++++++------- 2 files changed, 53 insertions(+), 8 deletions(-) diff --git a/manifests/client.pp b/manifests/client.pp index 639d133..18a4043 100644 --- a/manifests/client.pp +++ b/manifests/client.pp @@ -25,7 +25,10 @@ class munin::client { gentoo: { include munin::client::gentoo include munin::plugins::gentoo - + } + centos: { + include munin::client::centos + include munin::plugins::centos } default: { fail ("Don't know how to handle munin on $operatingsystem") } } @@ -157,3 +160,35 @@ class munin::client::gentoo } +class munin::client::centos +{ + package { 'munin-node': + ensure => present, + category => $operatingsystem ? { + gentoo => 'net-analyzer', + default => '', + }, + } + + + file { + "/etc/munin/": + ensure => directory, + mode => 0755, owner => root, group => root; + "/etc/munin/munin-node.conf": + content => template("munin/munin-node.conf.CentOS."), + mode => 0644, owner => root, group => root, + # this has to be installed before the package, so the postinst can + # boot the munin-node without failure! + before => Package["munin"], + notify => Service["munin"], + } + + service { "munin": + ensure => running, + } + + munin::register { $fqdn: } + +} + diff --git a/manifests/plugin.pp b/manifests/plugin.pp index 2ae20d2..579e2f9 100644 --- a/manifests/plugin.pp +++ b/manifests/plugin.pp @@ -11,21 +11,21 @@ define munin::plugin ( debian: { $munin_node_service = "munin-node" $munin_node_package = "munin-node" - #$script_path_default = "/usr/share/munin/plugins" + } + centos: { + $munin_node_service = "munin-node" + $munin_node_package = "munin-node" } gentoo: { #$munin_node_service = "munin-node" $munin_node_service = "munin" $munin_node_package = "munin" - #$script_path_default = "/usr/libexec/munin/plugins" } default: { - $munin_node_service = "munin" - $munin_node_package = "munin" - #$script_path_default = "/usr/libexec/munin/plugins" + $munin_node_service = "munin-node" + $munin_node_package = "munin-node" } } - #$script_path_correct = $script_path ? { '' => $script_path_default, default => $script_path_default } $plugin_src = $ensure ? { "present" => $name, default => $ensure } debug ( "munin_plugin: name=$name, ensure=$ensure, script_path=$script_path" ) @@ -37,7 +37,6 @@ define munin::plugin ( file { $plugin: ensure => absent, } } default: { - #$plugin_src = $ensure ? { "present" => $name, default => $ensure } debug ( "munin_plugin: making $plugin using src: $plugin_src" ) file { $plugin: ensure => "$script_path/${plugin_src}", @@ -98,6 +97,14 @@ class munin::plugins::base { $munin_node_service = "munin-node" $munin_node_package = "munin-node" } + centos: { + $munin_node_service = "munin-node" + $munin_node_package = "munin-node" + } + default: { + $munin_node_service = "munin-node" + $munin_node_package = "munin-node" + } } file { [ "/etc/munin/plugins", "/etc/munin/plugin-conf.d" ]: @@ -155,5 +162,8 @@ class munin::plugins::vserver inherits munin::plugins::base { } class munin::plugins::gentoo inherits munin::plugins::base { +} +class munin::plugins::centos inherits munin::plugins::base { } + -- cgit v1.2.3 From e88e44ca8b8732abdd922562f7ed87aaa5ee860c Mon Sep 17 00:00:00 2001 From: am Date: Fri, 7 Dec 2007 12:15:55 +0000 Subject: =?UTF-8?q?f=C3=BCr=20centos=20nicht=20...=20f=C3=BCr=20den=20mome?= =?UTF-8?q?nt?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: https://svn/ipuppet/trunk/modules/munin@215 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/plugin.pp | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/manifests/plugin.pp b/manifests/plugin.pp index 579e2f9..5649b29 100644 --- a/manifests/plugin.pp +++ b/manifests/plugin.pp @@ -41,7 +41,14 @@ define munin::plugin ( file { $plugin: ensure => "$script_path/${plugin_src}", require => Package[$munin_node_package], - notify => Service[$munin_node_service], + case $operatingsystem { + centos: { + # do nothing + } + default: { + notify => Service[$munin_node_service], + } + } } } } -- cgit v1.2.3 From 6b05503cb59df561423995787a8f31b3ea75b5e8 Mon Sep 17 00:00:00 2001 From: am Date: Fri, 7 Dec 2007 12:19:20 +0000 Subject: case durfte dort nicht stehen git-svn-id: https://svn/ipuppet/trunk/modules/munin@216 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/plugin.pp | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/manifests/plugin.pp b/manifests/plugin.pp index 5649b29..971f076 100644 --- a/manifests/plugin.pp +++ b/manifests/plugin.pp @@ -38,15 +38,18 @@ define munin::plugin ( } default: { debug ( "munin_plugin: making $plugin using src: $plugin_src" ) - file { $plugin: - ensure => "$script_path/${plugin_src}", - require => Package[$munin_node_package], - case $operatingsystem { - centos: { - # do nothing + case $operatingsystem { + centos: { + file { $plugin: + ensure => "$script_path/${plugin_src}", + require => Package[$munin_node_package]; } - default: { - notify => Service[$munin_node_service], + } + default: { + file { $plugin: + ensure => "$script_path/${plugin_src}", + require => Package[$munin_node_package], + notify => Service[$munin_node_service]; } } } -- cgit v1.2.3 From 1b30f55f5ae7ea19d80e59672b95b63ba647de62 Mon Sep 17 00:00:00 2001 From: am Date: Fri, 7 Dec 2007 12:27:50 +0000 Subject: =?UTF-8?q?scheint=20einigermassen=20ne=20l=C3=B6sung=20zu=20sein?= =?UTF-8?q?=20...=20ausser=20dem=20was=20er=20dann=20nicht=20macht=20...?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: https://svn/ipuppet/trunk/modules/munin@217 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/plugin.pp | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/manifests/plugin.pp b/manifests/plugin.pp index 971f076..1e5a78f 100644 --- a/manifests/plugin.pp +++ b/manifests/plugin.pp @@ -116,7 +116,21 @@ class munin::plugins::base { $munin_node_package = "munin-node" } } - file { + case $operatingsystem { + centos: { + file { + [ "/etc/munin/plugins", "/etc/munin/plugin-conf.d" ]: + source => "puppet://$servername/munin/empty", + ensure => directory, checksum => mtime, + recurse => true, purge => true, force => true, + mode => 0755, owner => root, group => root; + "/etc/munin/plugin-conf.d/munin-node": + ensure => present, + mode => 0644, owner => root, group => root; + } + } + default: { + file { [ "/etc/munin/plugins", "/etc/munin/plugin-conf.d" ]: source => "puppet://$servername/munin/empty", ensure => directory, checksum => mtime, @@ -127,6 +141,7 @@ class munin::plugins::base { ensure => present, mode => 0644, owner => root, group => root, notify => Service[$munin_node_service]; + } } } -- cgit v1.2.3 From 907173d99e26513fd280b7e0a137afa825d855d7 Mon Sep 17 00:00:00 2001 From: am Date: Fri, 7 Dec 2007 12:29:40 +0000 Subject: tippfehler git-svn-id: https://svn/ipuppet/trunk/modules/munin@218 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/plugin.pp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/manifests/plugin.pp b/manifests/plugin.pp index 1e5a78f..15049f2 100644 --- a/manifests/plugin.pp +++ b/manifests/plugin.pp @@ -128,7 +128,8 @@ class munin::plugins::base { ensure => present, mode => 0644, owner => root, group => root; } - } + } + default: { file { [ "/etc/munin/plugins", "/etc/munin/plugin-conf.d" ]: @@ -143,6 +144,7 @@ class munin::plugins::base { notify => Service[$munin_node_service]; } } + } } # handle if_ and if_err_ plugins -- cgit v1.2.3 From aad7d1cb8c499af0ebe5f8a1ab0c55b9017b7ea2 Mon Sep 17 00:00:00 2001 From: mh Date: Wed, 2 Jan 2008 20:16:12 +0000 Subject: fixed group stuff git-svn-id: https://svn/ipuppet/trunk/modules/munin@350 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/client.pp | 14 +++++++------- manifests/host.pp | 2 +- manifests/plugin.pp | 12 ++++++------ 3 files changed, 14 insertions(+), 14 deletions(-) diff --git a/manifests/client.pp b/manifests/client.pp index 18a4043..2e8f018 100644 --- a/manifests/client.pp +++ b/manifests/client.pp @@ -80,7 +80,7 @@ class munin::client::darwin file { "/usr/share/snmp/snmpd.conf": mode => 744, content => template("munin/darwin_snmpd.conf.erb"), - group => staff, + group => 0, owner => root, } delete_matching_line{"startsnmpdno": @@ -106,10 +106,10 @@ class munin::client::debian file { "/etc/munin/": ensure => directory, - mode => 0755, owner => root, group => root; + mode => 0755, owner => root, group => 0; "/etc/munin/munin-node.conf": content => template("munin/munin-node.conf.${operatingsystem}.${lsbdistcodename}"), - mode => 0644, owner => root, group => root, + mode => 0644, owner => root, group => 0, # this has to be installed before the package, so the postinst can # boot the munin-node without failure! before => Package["munin-node"], @@ -142,10 +142,10 @@ class munin::client::gentoo file { "/etc/munin/": ensure => directory, - mode => 0755, owner => root, group => root; + mode => 0755, owner => root, group => 0; "/etc/munin/munin-node.conf": content => template("munin/munin-node.conf.Gentoo."), - mode => 0644, owner => root, group => root, + mode => 0644, owner => root, group => 0, # this has to be installed before the package, so the postinst can # boot the munin-node without failure! before => Package["munin"], @@ -174,10 +174,10 @@ class munin::client::centos file { "/etc/munin/": ensure => directory, - mode => 0755, owner => root, group => root; + mode => 0755, owner => root, group =>0; "/etc/munin/munin-node.conf": content => template("munin/munin-node.conf.CentOS."), - mode => 0644, owner => root, group => root, + mode => 0644, owner => root, group => 0, # this has to be installed before the package, so the postinst can # boot the munin-node without failure! before => Package["munin"], diff --git a/manifests/host.pp b/manifests/host.pp index 8a90cc2..844698d 100644 --- a/manifests/host.pp +++ b/manifests/host.pp @@ -21,7 +21,7 @@ class munin::snmp_collector file { "/var/lib/puppet/modules/munin/create_snmp_links": source => "puppet://$servername/munin/create_snmp_links.sh", - mode => 755, owner => root, group => root; + mode => 755, owner => root, group => 0; } exec { "create_snmp_links": diff --git a/manifests/plugin.pp b/manifests/plugin.pp index 15049f2..f21098e 100644 --- a/manifests/plugin.pp +++ b/manifests/plugin.pp @@ -70,7 +70,7 @@ define munin::plugin ( debug("creating $plugin_conf") file { $plugin_conf: content => "[${name}]\n$config\n", - mode => 0644, owner => root, group => root, + mode => 0644, owner => root, group => 0, } } } @@ -85,7 +85,7 @@ define munin::remoteplugin($ensure = "present", $source, $config = '') { file { "/var/lib/puppet/modules/munin/plugins/${name}": source => $source, - mode => 0755, owner => root, group => root; + mode => 0755, owner => root, group => 0; } munin::plugin { $name: ensure => $ensure, @@ -123,10 +123,10 @@ class munin::plugins::base { source => "puppet://$servername/munin/empty", ensure => directory, checksum => mtime, recurse => true, purge => true, force => true, - mode => 0755, owner => root, group => root; + mode => 0755, owner => root, group => 0; "/etc/munin/plugin-conf.d/munin-node": ensure => present, - mode => 0644, owner => root, group => root; + mode => 0644, owner => root, group => 0; } } @@ -136,11 +136,11 @@ class munin::plugins::base { source => "puppet://$servername/munin/empty", ensure => directory, checksum => mtime, recurse => true, purge => true, force => true, - mode => 0755, owner => root, group => root, + mode => 0755, owner => root, group => 0, notify => Service["$munin_node_service"]; "/etc/munin/plugin-conf.d/munin-node": ensure => present, - mode => 0644, owner => root, group => root, + mode => 0644, owner => root, group => 0, notify => Service[$munin_node_service]; } } -- cgit v1.2.3 From f637dc37d96a1715634734c5ef9d7d5ecd13a447 Mon Sep 17 00:00:00 2001 From: mh Date: Wed, 30 Jan 2008 21:37:34 +0000 Subject: rearranged some stuff git-svn-id: https://svn/ipuppet/trunk/modules/munin@607 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- files/plugins/gentoo_lastupdated | 71 ++++++++++++++++++++++ files/plugins/selinux_avcstats | 111 ++++++++++++++++++++++++++++++++++ files/plugins/selinuxenforced | 32 ++++++++++ files/plugins/xen | 52 ++++++++++++++++ files/plugins/xen-cpu | 125 +++++++++++++++++++++++++++++++++++++++ files/plugins/xen_memory | 63 ++++++++++++++++++++ files/plugins/xen_vbd | 109 ++++++++++++++++++++++++++++++++++ manifests/client.pp | 15 +++-- manifests/plugin.pp | 48 +++++++++++++++ 9 files changed, 620 insertions(+), 6 deletions(-) create mode 100755 files/plugins/gentoo_lastupdated create mode 100755 files/plugins/selinux_avcstats create mode 100755 files/plugins/selinuxenforced create mode 100755 files/plugins/xen create mode 100755 files/plugins/xen-cpu create mode 100755 files/plugins/xen_memory create mode 100755 files/plugins/xen_vbd diff --git a/files/plugins/gentoo_lastupdated b/files/plugins/gentoo_lastupdated new file mode 100755 index 0000000..42fd362 --- /dev/null +++ b/files/plugins/gentoo_lastupdated @@ -0,0 +1,71 @@ +#!/usr/bin/perl +# -*- perl -*- +# +# (C) 2007 immerda project +# +# Plugin to monitor the last update of the gentoo +# +# Parameters: +# +# config +# autoconf +# +# $Id: users.in 1212 2006-10-29 20:11:58Z janl $ +# +#%# family=auto +#%# capabilities=autoconf + +# update /etc/munin/plugin-conf.d/munin-node with: +# [gentoo_*] +# user root +# env.logfile /var/log/emerge.log +# env.tail /usr/bin/tail +# env.grep /bin/grep + +my $logfile = $ENV{'logfile'} || '/var/log/emerge.log'; +my $grep = $ENV{'grep'} || `which grep`; +my $date = $ENV{'date'} || `which date`; +my $tail = $ENV{'tail'} || `which tail`; +chomp($grep); +chomp($date); +chomp($tail); + +if ( defined($ARGV[0])) { + if ($ARGV[0] eq 'autoconf') { + print "yes\n"; + exit 0; + } + + if ( $ARGV[0] eq "config" ) { + print "graph_title Gentoo: Last update X days ago\n"; + #print "graph_args --base 1000 -l 0\n"; + print "graph_vlabel days\n"; + print "graph_scale no\n"; + print "graph_category system\n"; + #print "graph_printf %.1lf\n"; + print "lastupdated.label last updated [d ago]\n"; + print "lastupdated.type GAUGE\n"; + #print "tty.draw AREASTACK\n"; + #print "tty.colour 00FF00\n"; + exit 0; + } +} + +$days = 0; +$last = 0; +$now = 0; + +$l=`$grep "emerge" $logfile | $grep world | $grep -v fetchonly | tail -1`; + +($last,$rest) = split /:/,$l; +$now = `$date +%s`; +if($last eq "" or $last == 0 or $now == 0 or $date eq ""){ + $days = ""; +}else{ + $days=($now-$last)/60/60/24; # in tagen +} + +print "lastupdated.value $days\n"; + +# vim:syntax=perl + diff --git a/files/plugins/selinux_avcstats b/files/plugins/selinux_avcstats new file mode 100755 index 0000000..9687be0 --- /dev/null +++ b/files/plugins/selinux_avcstats @@ -0,0 +1,111 @@ +#!/bin/sh +# +# Plugin to monitor SELinux's Access Vector Cache (AVC). +# +# config (required) +# autoconf (optional - used by munin-config) +# +# Lars Strand, 2007 +# +# +# Magic markers (used by munin-config and some installation scripts (i.e. +# optional)): +#%# family=auto +#%# capabilities=autoconf + + +AVCSTATS="/selinux/avc/cache_stats" + +if [ "$1" = "autoconf" ]; then + if [ -r $AVCSTATS ]; then + echo yes + exit 0 + else + echo no + exit 1 + fi +fi + +if [ "$1" = "config" ]; then + + echo "graph_title SELinux's Access Vector Cache" + echo 'graph_args -l 0 --base 1000' + echo 'graph_vlabel AVC operations' + echo 'graph_category system' + + echo 'lookups.label lookups' + echo 'lookups.type DERIVE' + echo 'lookups.min 0' + echo 'lookups.max 1000000000' + echo 'lookups.draw AREA' + echo 'lookups.colour ff0000' # Red + echo 'lookups.info Number of access vector lookups. This number is a good indicator of the load beeing placed on the AVC.' + + echo 'hits.label hits' + echo 'hits.type DERIVE' + echo 'hits.min 0' + echo 'hits.max 1000000000' + echo 'hits.draw STACK' + echo 'hits.colour 0022ff' # Blue + echo 'hits.info Number of access vector hits.' + + echo 'misses.label misses' + echo 'misses.type DERIVE' + echo 'misses.min 0' + echo 'misses.max 1000000000' + echo 'misses.draw STACK' + echo 'misses.colour 990000' # Darker red + echo 'misses.info Number of cache misses.' + + echo 'allocations.label allocations' + echo 'allocations.type DERIVE' + echo 'allocations.min 0' + echo 'allocations.max 100000000' + echo 'allocations.draw STACK' + echo 'allocations.colour ffa500' # Orange + echo 'allocations.info Number of AVC entries allocated.' + + echo 'reclaims.label reclaims' + echo 'reclaims.type DERIVE' + echo 'reclaims.min 0' + echo 'reclaims.max 1000000000' + echo 'reclaims.draw STACK' + echo 'reclaims.colour 00aaaa' # Darker turquoise + echo 'reclaims.info Number of current total reclaimed AVC entries. If this keeps changing, you may need to increase the cache size (/selinux/avc/cache_threshold).' + + echo 'frees.label frees' + echo 'frees.type DERIVE' + echo 'frees.min 0' + echo 'frees.max 1000000000' + echo 'frees.draw STACK' + echo 'frees.colour 00ff7f' # Spring green + echo 'frees.info Number of free AVC entries.' + + exit 0 +fi + +if [ -r $AVCSTATS ]; then + awk ' NR > 1 { + lookups += $1; + hits += $2; + misses += $3; + allocations += $4; + reclaims += $5; + frees += $6; + } END { + print "lookups.value " lookups; + print "hits.value " hits; + print "misses.value " misses; + print "allocations.value " allocations; + print "reclaims.value " reclaims; + print "frees.value " frees; + } ' < $AVCSTATS +else + echo "lookups.value U" + echo "hits.value U" + echo "misses.value U" + echo "allocations.value U" + echo "reclaims.value U" + echo "frees.value U" +fi + diff --git a/files/plugins/selinuxenforced b/files/plugins/selinuxenforced new file mode 100755 index 0000000..2f88b9b --- /dev/null +++ b/files/plugins/selinuxenforced @@ -0,0 +1,32 @@ +#!/bin/sh +# -*- sh -*- +# +# Plugin to count the daily amount of Virii (qmailscan) +# +# Contributed by David Obando (david@cryptix.de) - 03.12.2005 +# + +# define the logfiles. when you rotate them at any other time than 00:00 you have to define two logfiles: +#LOG0=/var/spool/qmailscan/quarantine.log +#LOG1=/var/spool/qmailscan/quarantine.log.1 + +if [ "$1" = "autoconf" ]; then + echo yes + exit 0 +fi + +if [ "$1" = "config" ]; then + echo 'graph_title enforced amount' + echo 'graph_args --upper-limit 1 -l 0 ' + echo 'graph_vlabel Is the system selinux enforced?' + echo 'graph_scale no\n'; + echo 'graph_category selinux' + echo 'enforced.label IsEnforced' + #echo 'enforced.draw AREA' + echo 'enforced.draw LINE2' + + exit 0 +fi + +echo -n "enforced.value " && cat /selinux/enforce + diff --git a/files/plugins/xen b/files/plugins/xen new file mode 100755 index 0000000..575cd3b --- /dev/null +++ b/files/plugins/xen @@ -0,0 +1,52 @@ +#!/bin/sh +# +# Script to monitor CPU usage of Xen domains +# +# Parameters understood: +# +# conifg (required) +# autoconf (optinal - used by munin-config) +# + +MAXDOMAINS=16 + +if [ "$1" = "autoconf" ]; then + if which xm > /dev/null ; then + echo yes + exit 0 + fi + echo "no (xm not found)" + exit 1 +fi + +if [ "$1" = "config" ]; then + + echo 'graph_title Xen Domain Utilerisation' + echo 'graph_args --base 1000 -l 0' + echo 'graph_scale no' + echo 'graph_vlabel mS' + echo 'graph_category xen' + echo 'graph_info This graph shows of many mS wall time where used by a domain' + /usr/sbin/xm list | grep -v "^Name .* Console$" | \ + while read name domid mem cpu state time console; do + name=`echo $name | sed -e"s/-/_/"` + echo "$name.label $name" + echo "$name.type COUNTER" +# if [ "$name" = "Domain_0" ]; then +# echo "$name.draw AREA" +# else +# echo "$name.draw STACK" +# fi + echo "$name.min 0" + echo "$name.info Wall clock time spend for $name" + done + exit 0 +fi + +/usr/sbin/xm list | grep -v "^Name" | grep -v "^Name .* Console$" | \ +while read name domid mem cpu state time console; do + name=`echo $name | sed -e"s/-/_/"` + time=`echo $time | sed -e "s/\.//"` + echo "$name.value $time" +done + diff --git a/files/plugins/xen-cpu b/files/plugins/xen-cpu new file mode 100755 index 0000000..0ef301e --- /dev/null +++ b/files/plugins/xen-cpu @@ -0,0 +1,125 @@ +#!/usr/bin/perl -wT +# +# Script to minitor the cpu usage of Xen domains +# +# Author: Adam Crews shroom com> +# +# License: GPL +# Based on the origional xen script from Matthias Pfafferodt, syntron at web.de +# +# Note: Your munin config must run this as root. +# +# Parameters +# config (required) +# autoconf (optional - used by munin-config) +# +#%# family=auto +#%# capabilities=autoconf + +# Define where to find xm tools +my $XM = '/usr/sbin/xm'; +my $XMTOP = '/usr/sbin/xentop'; + +############## +# You should not need to edit anything below here +# + +use strict; + +$ENV{PATH} = '/bin:/usr/bin:/usr/sbin'; + +my $arg; undef($arg); +if (defined($ARGV[0])) { + $arg = 'config' if ($ARGV[0] eq 'config'); + $arg = 'autoconf' if ($ARGV[0] eq 'autoconf'); + + if ( "$arg" eq 'autoconf') { + if ( -e $XM && -e $XMTOP ) { + print "yes\n"; + exit 0; + } else { + print "no ($XM and/or $XMTOP not found\n"; + exit 1; + } + } + + if ( "$arg" eq 'config') { + my %cnf; undef(%cnf); + %cnf = ( + 'graph_title' => 'Xen Domain CPU Usage', + 'graph_args' => '--base 1000 -l 0 --upper-limit 100 --rigid', + 'graph_vlabel' => 'Percent (%)', + 'graph_category' => 'xen', + 'graph_info' => 'Display the % of CPU Usage for each domain', + ); + + my @domains = `$XM list`; + shift(@domains); # we dont need the header line + my $cnt = "0"; + foreach my $domain ( @domains ) { + my ($dom,undef) = split(/\s/, $domain, 2); + # we need to change - and . to _ or things get weird with the graphs + # some decent quoting would probably fix this, but this works for now + $dom =~ s/[-.]/_/g; + + $cnf{ "$dom" . '.label' } = "$dom"; + $cnf{ "$dom" . '.draw' } = 'STACK'; + $cnf{ "$dom" . '.min' } = '0'; + $cnf{ "$dom" . '.max' } = '100'; + $cnf{ "$dom" . '.info' } = '% CPU used for ' . "$dom"; + + if ( "$cnt" == "0") { $cnf{$dom.'.draw'} = 'AREA'; } + $cnt++; + } + + foreach my $key (sort(keys(%cnf))) { + print "$key $cnf{$key}\n"; + } + exit 0; + } +} + +# Nothing was passed as an argument, so let's just return the proper values + +my @chunks; undef(@chunks); + +{ + # run the xentop command a few times because the first reading is not always accurate + local $/ = undef; + @chunks = split(/^xentop - .*$/m, `$XMTOP -b -i2 -d2`); +} + +# Take only the last run of xentop +my @stats = split (/\n/,pop(@chunks)); + +# remove the first 4 items that are junk that we don't need. +shift(@stats); +shift(@stats); +shift(@stats); +shift(@stats); + +my %vals; undef(%vals); + +foreach my $domain (@stats) { + # trim the leading whitespace + $domain =~ s/^\s+//; + my @v_tmp = split(/\s+/, $domain); + + # we need to change - and . to _ or things get weird with the graphs + # some decent quoting would probably fix this, but this works for now + $v_tmp[0] =~ s/[-.]/_/g; + + $vals{$v_tmp[0]}{'cpu_percent'} = $v_tmp[3]; + $vals{$v_tmp[0]}{'vcpu'} = $v_tmp[8]; + if ( $vals{$v_tmp[0]}{'vcpu'} =~ m/n\/a/ ) { + my $cpu = `grep -c "processor" < /proc/cpuinfo`; + if ( $cpu =~ m/^(\d+)$/ ) { + $vals{$v_tmp[0]}{'vcpu'} = $1; + } + } +} + +foreach my $key (sort(keys(%vals))) { + print "$key.value " . ($vals{$key}{'cpu_percent'}/$vals{'Domain_0'}{'vcpu'}), "\n"; +} + diff --git a/files/plugins/xen_memory b/files/plugins/xen_memory new file mode 100755 index 0000000..90bc705 --- /dev/null +++ b/files/plugins/xen_memory @@ -0,0 +1,63 @@ +#!/bin/sh +# +# Script to monitor memory status of the xen host +# +# Parameters understood: +# +# config (required) +# autoconf (optional - used by munin-config) +# + +MAXDOMAINS=16 + +if [ "$1" = "autoconf" ]; then + if which xm > /dev/null ; then + echo yes + exit 0 + fi + echo "no (xm not found)" + exit 1 +fi + +if [ "$1" = "config" ]; then + + echo 'graph_title Xen Memory' + echo 'graph_args --base 1000 -l 0' + echo 'graph_scale no' + echo 'graph_vlabel MB' + echo 'graph_category xen' + echo 'graph_info This graph shows of many mS wall time where used by a domain' + # xm info | while read name bla value; do echo "$name $value"; done + /usr/sbin/xm info | while read name bla value; do + #total_memory 2047 + #free_memory 1476 + name=`echo $name | sed -e"s/-/_/"` + + if [ "$name" = "total_memory" ]; then + echo "$name.label $name" + echo "$name.type GAUGE" + echo "$name.min 0" + echo "$name.info total memory" + fi + if [ "$name" = "free_memory" ]; then + echo "$name.label $name" + echo "$name.type GAUGE" + echo "$name.draw AREA" +# echo "$name.draw STACK" + echo "$name.min 0" + echo "$name.info free memory" + fi + done + exit 0 +fi + +/usr/sbin/xm info | while read name bla value; do + name=`echo $name | sed -e"s/-/_/"` + if [ "$name" = "total_memory" ]; then + echo "$name.value $value" + fi + if [ "$name" = "free_memory" ]; then + echo "$name.value $value" + fi +done + diff --git a/files/plugins/xen_vbd b/files/plugins/xen_vbd new file mode 100755 index 0000000..238bf08 --- /dev/null +++ b/files/plugins/xen_vbd @@ -0,0 +1,109 @@ +#!/usr/bin/perl +# +# 2007-06-01 Zoltan HERPAI +# +# Credits goes for: +# Adam Crews for his xen_cpu plugin +# Mario Manno for his xen_traffic_all plugin +# +# Script to monitor the I/O usage of Xen domains +# Version 0.1 +# +#%# family=auto +#%# capabilities=autoconf + +# Location of xm tools +$XM = '/usr/sbin/xm'; +$XMTOP = '/usr/sbin/xentop'; + +# ah, parameters coming in +if ( defined($ARGV[0])) +{ + if ($ARGV[0] eq 'config') { $arg = 'config'; } + if ($ARGV[0] eq 'autoconf') { $arg = 'autoconf'; } + + if ( $arg eq 'autoconf' ) + { + if ( -e $XM && -e $XMTOP ) + { + print "yes\n"; + exit 0; + } + else + { + print "no ($XM and/or $XMTOP not found\n"; + exit 0; + } + } + + if ( $arg eq 'config' ) + { + %cnf = ( + 'graph_title' => 'Xen Domain I/O usage', + 'graph_args' => '--base 1024 -l 0', + 'graph_vlabel' => 'read (-), write (+)', + 'graph_category' => 'xen', + 'graph_info' => 'Display the I/O operations for each domain', + ); + + @domains = `$XM list`; + shift(@domains); # we don't need the header line + + foreach $domain ( @domains ) + { + ($dom, undef) = split(/\s/, $domain); + $dom =~ s/[-.]/_/g; + + $cnf{ $dom.'RD' . '.label' } = 'read'; + $cnf{ $dom.'RD' . '.type' } = 'COUNTER'; + $cnf{ $dom.'RD' . '.graph' } = 'no'; + $cnf{ $dom.'RD' . '.cdef' } = $dom.'RD,8,*'; + + $cnf{ $dom.'WR' . '.label' } = $dom; + $cnf{ $dom.'WR' . '.type' } = 'COUNTER'; + $cnf{ $dom.'WR' . '.negative' } = $dom.'RD'; + $cnf{ $dom.'WR' . '.cdef' } = $dom.'WR,8,*'; + + if ( "$cnt" == "0" ) + { + $cnf { "$dom" . '.draw' } = 'AREA'; + } + $cnt++; + } + + foreach $key ( sort(keys(%cnf)) ) + { + print "$key $cnf{$key}\n"; + } + exit 0; + + } +} + + +# No args, get rolling +# NAME STATE CPU(sec) CPU(%) MEM(k) MEM(%) MAXMEM(k) MAXMEM(%) VCPUS NETS NETTX(k) NETRX(k) VBDS VBD_OO VBD_RD VBD_WR SSID +$tmpfile = "/tmp/munin_xen_vbd_tmp"; + +system("$XMTOP -b -i1 > $tmpfile"); +open(I,"$tmpfile"); +while(){ + chomp; + s/^\s*//g; + @tmp=split(/\s+/, $_); + next if $tmp[0] eq "NAME"; + + $domname = $tmp[0]; + $domname =~ s/[-.]/_/g; + $vbdrd = $tmp[14]; + $vbdwr = $tmp[15]; + + $vals{$domname."RD"}{'value'} = $vbdrd; + $vals{$domname."WR"}{'value'} = $vbdwr; +} + +foreach $key ( sort(keys(%vals)) ) +{ + print "$key.value " . ($vals{$key}{'value'}) . "\n"; +} + diff --git a/manifests/client.pp b/manifests/client.pp index 2e8f018..1aa0e88 100644 --- a/manifests/client.pp +++ b/manifests/client.pp @@ -40,7 +40,7 @@ class munin::client { default: { include munin::plugins::linux case $virtual { - xen0: { include munin::plugins::xen } + xen0: { include munin::plugins::dom0 } } } } @@ -100,6 +100,7 @@ class munin::client::darwin class munin::client::debian { + $script_path_default = "/usr/share/munin/plugins" package { "munin-node": ensure => installed } @@ -130,13 +131,15 @@ class munin::client::debian class munin::client::gentoo { - package { 'munin': + $script_path_default = "/usr/libexec/munin/plugins" + $acpi_available = "absent" + package { 'munin': ensure => present, category => $operatingsystem ? { gentoo => 'net-analyzer', default => '', }, - } + } file { @@ -157,18 +160,18 @@ class munin::client::gentoo } munin::register { $fqdn: } - } class munin::client::centos { - package { 'munin-node': + $script_path_default = "/usr/share/munin/plugins" + package { 'munin-node': ensure => present, category => $operatingsystem ? { gentoo => 'net-analyzer', default => '', }, - } + } file { diff --git a/manifests/plugin.pp b/manifests/plugin.pp index f21098e..f5919e1 100644 --- a/manifests/plugin.pp +++ b/manifests/plugin.pp @@ -145,6 +145,11 @@ class munin::plugins::base { } } } + + case $operatingsystem { + gentoo: { $script_path_default = "/usr/libexec/munin/plugins" } + default: { $script_path_default = "/usr/share/munin/plugins" } + } } # handle if_ and if_err_ plugins @@ -189,8 +194,51 @@ class munin::plugins::vserver inherits munin::plugins::base { } class munin::plugins::gentoo inherits munin::plugins::base { + file { "$script_path_default/gentoo_lastupdated": + source => "puppet://$servername/munin/plugins/gentoo_lastupdated", + ensure => file, + mode => 0755, owner => root, group => 0; + } + + plugin{"gentoo_lastupdated": ensure => present;} } class munin::plugins::centos inherits munin::plugins::base { } +class munin::plugins::selinux inherits munin::plugins::base { + file { "$script_path_default/selinuxenforced": + source => "puppet://$servername/munin/plugins/selinuxenforced", + ensure => file, + mode => 0755, owner => root, group => 0; + } + + plugin{"selinuxenforced": ensure => present;} +} + +class munin::plugins::dom0 inherits munin::plugins::base { + file { + [ "$script_path_default/xen" ]: + source => "puppet://$servername/munin/plugins/xen", + ensure => file, + mode => 0755, owner => root, group => 0; + [ "$script_path_default/xen-cpu" ]: + source => "puppet://$servername/munin/plugins/xen-cpu", + ensure => file, + mode => 0755, owner => root, group => 0; + [ "$script_path_default/xen_memory" ]: + source => "puppet://$servername/munin/plugins/xen_memory", + ensure => file, + mode => 0755, owner => root, group => 0; + [ "$script_path_default/xen_vbd" ]: + source => "puppet://$servername/munin/plugins/xen_vbd", + ensure => file, + mode => 0755, owner => root, group => 0; + } + + plugin { + [ xen, xen-cpu, xen_memory, xen_vbd ]: + ensure => present; + } +} + -- cgit v1.2.3 From 62f6d972b6ca769bf7b75e78615bc0f3ffbbb081 Mon Sep 17 00:00:00 2001 From: am Date: Thu, 31 Jan 2008 16:18:21 +0000 Subject: =?UTF-8?q?tinydns=20munin=20modul=20f=C3=BCr=20immer1-4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: https://svn/ipuppet/trunk/modules/munin@635 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- files/plugins/tinydns | 172 ++++++++++++++++++++++++++++++++++++++++++++++++++ manifests/plugin.pp | 13 ++++ 2 files changed, 185 insertions(+) create mode 100755 files/plugins/tinydns diff --git a/files/plugins/tinydns b/files/plugins/tinydns new file mode 100755 index 0000000..0fb78ff --- /dev/null +++ b/files/plugins/tinydns @@ -0,0 +1,172 @@ +#!/usr/bin/perl -T + +# tinydns-munin-plugin + +# Copyright (C) 2007 admin at immerda.ch +# +# This program 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 2 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, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + +# with the HELP of +# tinygraph -- a RRDtool frontend for tinydns statistics +# Copyright (C) 2005 Ulrich Zehl + +#use strict; # to activate .... + + +#use Time::TAI64 qw(tai2unix); + +$A = 0; +$NS = 0; +$CNAME = 0; +$SOA = 0; +$PTR = 0; +$HINFO = 0; +$MX = 0; +$TXT = 0; +$RP = 0; +$SIG = 0; +$KEY = 0; +$AAAA = 0; +$A6 = 0; +$IXFR = 0; +$AXFR = 0; +$ANY = 0; + +$logfile = $ENV{logdir} || "/var/tinydns/log/main/current"; + +if ( $ARGV[0] and $ARGV[0] eq "config" ) +{ + print "host_name $ENV{FQDN}\n"; + print "graph_title tinydns\n"; + print "graph_args --base 1000 -l 0\n"; + print "graph_category DNS\n"; + print "a.type COUNTER\n"; + print "mx.type COUNTER\n"; + + print "a.label A\n"; + print "ns.label NS\n"; + print "cname.label CNAME\n"; + print "soa.label SOA\n"; + print "ptr.label PTR\n"; + print "mx.label MX\n"; + print "aaaa.label AAAA\n"; + print "any.label ANY\n"; + print "hinfo.label HINFO\n"; + print "txt.label TXT\n"; + print "rp.label RP\n"; + print "sig.label SIG\n"; + print "key.label KEY\n"; + print "a6.label A6\n"; + print "ixfr.label IXFR\n"; + print "axfr.label AXFR\n"; + + print "a.type COUNTER\n"; + print "ns.type COUNTER\n"; + print "cname.type COUNTER\n"; + print "soa.type COUNTER\n"; + print "ptr.type COUNTER\n"; + print "mx.type COUNTER\n"; + print "aaaa.type COUNTER\n"; + print "any.type COUNTER\n"; + print "hinfo.type COUNTER\n"; + print "txt.type COUNTER\n"; + print "rp.type COUNTER\n"; + print "sig.type COUNTER\n"; + print "key.type COUNTER\n"; + print "a6.type COUNTER\n"; + print "ixfr.type COUNTER\n"; + print "axfr.type COUNTER\n"; + exit 0; +} + +my %querytypes = ( + '0001' => 'A', + '0002' => 'NS', + '0005' => 'CNAME', + '0006' => 'SOA', + '000c' => 'PTR', + '000d' => 'HINFO', + '000f' => 'MX', + '0010' => 'TXT', + '0011' => 'RP', + '0018' => 'SIG', + '0019' => 'KEY', + '001c' => 'AAAA', + '0026' => 'A6', + '00fb' => 'IXFR', + '00fc' => 'AXFR', + '00ff' => 'ANY', +); + +my %sum = ( + (map {$_ => 0} values %querytypes), +); + +sub process_line($) +{ + my $line = shift; + if ($line =~ /^(@[a-f0-9]{24}) ([a-f0-9]{8}):[a-f0-9]{4}:[a-f0-9]{4} ([\+\-IC\/]) ([a-f0-9]{4}) (.+)$/) + { + #my $time = tai2unix($1); + my $ip = join(".", unpack("C*", pack("H8", $2))); + my $rtype = $3; + my $qtype = $querytypes{$4}; + #my $qstring = $5; # currently unused + + if ($rtype eq '+') + { + if ($qtype eq 'A'){$A++;}; + if ($qtype eq 'NS'){$NS++;}; + if ($qtype eq 'CNAME'){$CNAME++;}; + if ($qtype eq 'SOA'){$SOA++;}; + if ($qtype eq 'PTR'){$PTR++;}; + if ($qtype eq 'HINFO'){$HINFO++;}; + if ($qtype eq 'MX'){$MX++;}; + if ($qtype eq 'TXT'){$TXT++;}; + if ($qtype eq 'RP'){$RP++;}; + if ($qtype eq 'SIG'){$SIG++;}; + if ($qtype eq 'KEY'){$KEY++;}; + if ($qtype eq 'AAAA'){$AAAA++;}; + if ($qtype eq 'A6'){$A6++;}; + if ($qtype eq 'IXFR'){$IXFR++;}; + if ($qtype eq 'AXFR'){$AXFR++;}; + if ($qtype eq 'ANY'){$ANY++;}; + } + } +} + +open(LOG, "<$logfile") or die "Error opening $logfile: $!"; + +while () +{ + process_line($_); +} + +print "a.value $A\n"; +print "ns.value $NS\n"; +print "cname.value $CNAME\n"; +print "soa.value $SOA\n"; +print "ptr.value $PTR\n"; +print "mx.value $MX\n"; +print "aaaa.value $AAAA\n"; +print "any.value $ANY\n"; +print "hinfo.value $HINFO\n"; +print "txt.value $TXT\n"; +print "rp.value $RP\n"; +print "sig.value $SIG\n"; +print "key.value $KEY\n"; +print "a6.value $A6\n"; +print "ixfr.value $IXFR\n"; +print "axfr.value $AXFR\n"; + diff --git a/manifests/plugin.pp b/manifests/plugin.pp index f5919e1..b8a28aa 100644 --- a/manifests/plugin.pp +++ b/manifests/plugin.pp @@ -242,3 +242,16 @@ class munin::plugins::dom0 inherits munin::plugins::base { } } +class munin::plugins::djbdns inherits munin::plugins::base { + file { + [ "$script_path_default/tinydns" ]: + source => "puppet://$servername/munin/plugins/tinydns", + ensure => file, + mode => 0755, owner => root, group => 0; + } + plugin { + [ tinydns ]: + ensure => present; + } +} + -- cgit v1.2.3 From 4bc3b1a7a481a382bd61b284b2ab3888904630bf Mon Sep 17 00:00:00 2001 From: am Date: Thu, 31 Jan 2008 16:49:42 +0000 Subject: =?UTF-8?q?if=5Feth0=20f=C3=BCr=20domU?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: https://svn/ipuppet/trunk/modules/munin@639 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/plugin.pp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/manifests/plugin.pp b/manifests/plugin.pp index b8a28aa..535d76d 100644 --- a/manifests/plugin.pp +++ b/manifests/plugin.pp @@ -242,6 +242,10 @@ class munin::plugins::dom0 inherits munin::plugins::base { } } +class munin::plugins::domU inherits munin::plugins::base { + plugin { if_eth0: ensure => "if_" } +} + class munin::plugins::djbdns inherits munin::plugins::base { file { [ "$script_path_default/tinydns" ]: -- cgit v1.2.3 From 132098aa8fa7c6ffb7630a1005e2c734b6069c76 Mon Sep 17 00:00:00 2001 From: am Date: Thu, 31 Jan 2008 17:15:30 +0000 Subject: facter class with new name, to debug git-svn-id: https://svn/ipuppet/trunk/modules/munin@640 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/plugin.pp | 4 ++-- plugins/facter/interfaces.rb | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/manifests/plugin.pp b/manifests/plugin.pp index 535d76d..61cf4e2 100644 --- a/manifests/plugin.pp +++ b/manifests/plugin.pp @@ -155,8 +155,8 @@ class munin::plugins::base { # handle if_ and if_err_ plugins class munin::plugins::interfaces inherits munin::plugins::base { - $ifs = gsub(split($interfaces, " "), "(.+)", "if_\\1") - $if_errs = gsub(split($interfaces, " "), "(.+)", "if_err_\\1") + $ifs = gsub(split($facterinterfaces, " "), "(.+)", "if_\\1") + $if_errs = gsub(split($facterinterfaces, " "), "(.+)", "if_err_\\1") plugin { $ifs: ensure => "if_"; $if_errs: ensure => "if_err_"; diff --git a/plugins/facter/interfaces.rb b/plugins/facter/interfaces.rb index a498d64..4bf10bc 100755 --- a/plugins/facter/interfaces.rb +++ b/plugins/facter/interfaces.rb @@ -1,5 +1,5 @@ # return the set of active interfaces as an array -Facter.add("interfaces") do +Facter.add("facterinterfaces") do setcode do `ip -o link show`.split(/\n/).collect do |line| value = nil -- cgit v1.2.3 From fe4187be6078076fa34c8d272561554b8f205e8b Mon Sep 17 00:00:00 2001 From: am Date: Thu, 31 Jan 2008 17:17:48 +0000 Subject: rename git-svn-id: https://svn/ipuppet/trunk/modules/munin@641 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- plugins/facter/facterinterfaces.rb | 13 +++++++++++++ plugins/facter/interfaces.rb | 13 ------------- 2 files changed, 13 insertions(+), 13 deletions(-) create mode 100755 plugins/facter/facterinterfaces.rb delete mode 100755 plugins/facter/interfaces.rb diff --git a/plugins/facter/facterinterfaces.rb b/plugins/facter/facterinterfaces.rb new file mode 100755 index 0000000..4bf10bc --- /dev/null +++ b/plugins/facter/facterinterfaces.rb @@ -0,0 +1,13 @@ +# return the set of active interfaces as an array +Facter.add("facterinterfaces") do + setcode do + `ip -o link show`.split(/\n/).collect do |line| + value = nil + matches = line.match(/^\d*: ([^:]*): <(.*,)?UP(,.*)?>/) + if !matches.nil? + value = matches[1] + end + value + end.compact.sort.join(" ") + end +end diff --git a/plugins/facter/interfaces.rb b/plugins/facter/interfaces.rb deleted file mode 100755 index 4bf10bc..0000000 --- a/plugins/facter/interfaces.rb +++ /dev/null @@ -1,13 +0,0 @@ -# return the set of active interfaces as an array -Facter.add("facterinterfaces") do - setcode do - `ip -o link show`.split(/\n/).collect do |line| - value = nil - matches = line.match(/^\d*: ([^:]*): <(.*,)?UP(,.*)?>/) - if !matches.nil? - value = matches[1] - end - value - end.compact.sort.join(" ") - end -end -- cgit v1.2.3 From ded0ef9de27bda5ea6c722991054b47ed3b8fc13 Mon Sep 17 00:00:00 2001 From: mh Date: Thu, 31 Jan 2008 18:05:28 +0000 Subject: reverted namechange git-svn-id: https://svn/ipuppet/trunk/modules/munin@642 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- plugins/facter/facterinterfaces.rb | 13 ------------- plugins/facter/interfaces.rb | 13 +++++++++++++ 2 files changed, 13 insertions(+), 13 deletions(-) delete mode 100755 plugins/facter/facterinterfaces.rb create mode 100755 plugins/facter/interfaces.rb diff --git a/plugins/facter/facterinterfaces.rb b/plugins/facter/facterinterfaces.rb deleted file mode 100755 index 4bf10bc..0000000 --- a/plugins/facter/facterinterfaces.rb +++ /dev/null @@ -1,13 +0,0 @@ -# return the set of active interfaces as an array -Facter.add("facterinterfaces") do - setcode do - `ip -o link show`.split(/\n/).collect do |line| - value = nil - matches = line.match(/^\d*: ([^:]*): <(.*,)?UP(,.*)?>/) - if !matches.nil? - value = matches[1] - end - value - end.compact.sort.join(" ") - end -end diff --git a/plugins/facter/interfaces.rb b/plugins/facter/interfaces.rb new file mode 100755 index 0000000..a498d64 --- /dev/null +++ b/plugins/facter/interfaces.rb @@ -0,0 +1,13 @@ +# return the set of active interfaces as an array +Facter.add("interfaces") do + setcode do + `ip -o link show`.split(/\n/).collect do |line| + value = nil + matches = line.match(/^\d*: ([^:]*): <(.*,)?UP(,.*)?>/) + if !matches.nil? + value = matches[1] + end + value + end.compact.sort.join(" ") + end +end -- cgit v1.2.3 From 9e6ea5e5bb0033d7fd9647f76eaf2e206c384fb9 Mon Sep 17 00:00:00 2001 From: am Date: Thu, 31 Jan 2008 19:50:58 +0000 Subject: =?UTF-8?q?falsche=20umbenennung=20r=C3=BCckg=C3=A4ngig?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: https://svn/ipuppet/trunk/modules/munin@646 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/plugin.pp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/manifests/plugin.pp b/manifests/plugin.pp index 61cf4e2..535d76d 100644 --- a/manifests/plugin.pp +++ b/manifests/plugin.pp @@ -155,8 +155,8 @@ class munin::plugins::base { # handle if_ and if_err_ plugins class munin::plugins::interfaces inherits munin::plugins::base { - $ifs = gsub(split($facterinterfaces, " "), "(.+)", "if_\\1") - $if_errs = gsub(split($facterinterfaces, " "), "(.+)", "if_err_\\1") + $ifs = gsub(split($interfaces, " "), "(.+)", "if_\\1") + $if_errs = gsub(split($interfaces, " "), "(.+)", "if_err_\\1") plugin { $ifs: ensure => "if_"; $if_errs: ensure => "if_err_"; -- cgit v1.2.3 From 7700dacfbdd0d6366a5c05d5bb1a72844a55b8fd Mon Sep 17 00:00:00 2001 From: mh Date: Thu, 31 Jan 2008 20:04:42 +0000 Subject: fixed servicemodules/munin/manifests/client.pp git-svn-id: https://svn/ipuppet/trunk/modules/munin@648 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/client.pp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/manifests/client.pp b/manifests/client.pp index 1aa0e88..d20850a 100644 --- a/manifests/client.pp +++ b/manifests/client.pp @@ -155,7 +155,7 @@ class munin::client::gentoo notify => Service["munin"], } - service { "munin": + service { "munin-node": ensure => running, } -- cgit v1.2.3 From c53532f9bc5a360522a067b14ef81de66add9d17 Mon Sep 17 00:00:00 2001 From: am Date: Thu, 31 Jan 2008 20:06:20 +0000 Subject: munin-node service git-svn-id: https://svn/ipuppet/trunk/modules/munin@649 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/client.pp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/manifests/client.pp b/manifests/client.pp index d20850a..c2a59e4 100644 --- a/manifests/client.pp +++ b/manifests/client.pp @@ -165,7 +165,7 @@ class munin::client::gentoo class munin::client::centos { $script_path_default = "/usr/share/munin/plugins" - package { 'munin-node': + package { 'munin': ensure => present, category => $operatingsystem ? { gentoo => 'net-analyzer', @@ -187,7 +187,7 @@ class munin::client::centos notify => Service["munin"], } - service { "munin": + service { "munin-node": ensure => running, } -- cgit v1.2.3 From fd721045a7d529f3b9fbc796c58e26177b89ad65 Mon Sep 17 00:00:00 2001 From: mh Date: Thu, 31 Jan 2008 20:13:15 +0000 Subject: fixed service git-svn-id: https://svn/ipuppet/trunk/modules/munin@651 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/client.pp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/manifests/client.pp b/manifests/client.pp index c2a59e4..bc47a23 100644 --- a/manifests/client.pp +++ b/manifests/client.pp @@ -152,7 +152,7 @@ class munin::client::gentoo # this has to be installed before the package, so the postinst can # boot the munin-node without failure! before => Package["munin"], - notify => Service["munin"], + notify => Service["munin-node"], } service { "munin-node": -- cgit v1.2.3 From b2bbba673547959692b51f783b71959a17dce7dd Mon Sep 17 00:00:00 2001 From: am Date: Thu, 31 Jan 2008 20:16:54 +0000 Subject: chaos-a... git-svn-id: https://svn/ipuppet/trunk/modules/munin@652 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/client.pp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/manifests/client.pp b/manifests/client.pp index bc47a23..56742cb 100644 --- a/manifests/client.pp +++ b/manifests/client.pp @@ -187,7 +187,7 @@ class munin::client::centos notify => Service["munin"], } - service { "munin-node": + service { "munin": ensure => running, } -- cgit v1.2.3 From b929f469342c6c61ff29bb9f5f4271ab80d5d5fe Mon Sep 17 00:00:00 2001 From: am Date: Thu, 31 Jan 2008 20:18:05 +0000 Subject: doch munin-node git-svn-id: https://svn/ipuppet/trunk/modules/munin@653 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/client.pp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/manifests/client.pp b/manifests/client.pp index 56742cb..bc47a23 100644 --- a/manifests/client.pp +++ b/manifests/client.pp @@ -187,7 +187,7 @@ class munin::client::centos notify => Service["munin"], } - service { "munin": + service { "munin-node": ensure => running, } -- cgit v1.2.3 From d5c7b0ba7a8f3e7bdac373f58e077fa9e4a9a26b Mon Sep 17 00:00:00 2001 From: mh Date: Thu, 31 Jan 2008 20:48:53 +0000 Subject: fixed service git-svn-id: https://svn/ipuppet/trunk/modules/munin@654 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/plugin.pp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/manifests/plugin.pp b/manifests/plugin.pp index 535d76d..69d4624 100644 --- a/manifests/plugin.pp +++ b/manifests/plugin.pp @@ -17,8 +17,8 @@ define munin::plugin ( $munin_node_package = "munin-node" } gentoo: { - #$munin_node_service = "munin-node" - $munin_node_service = "munin" + $munin_node_service = "munin-node" + #$munin_node_service = "munin" $munin_node_package = "munin" } default: { -- cgit v1.2.3 From 26e8702b15a37a5e22c070cbd6dd0105355b0d45 Mon Sep 17 00:00:00 2001 From: am Date: Thu, 31 Jan 2008 22:14:36 +0000 Subject: gentoo auf munin, versuch symlink git-svn-id: https://svn/ipuppet/trunk/modules/munin@655 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/client.pp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/manifests/client.pp b/manifests/client.pp index bc47a23..af2c523 100644 --- a/manifests/client.pp +++ b/manifests/client.pp @@ -152,10 +152,10 @@ class munin::client::gentoo # this has to be installed before the package, so the postinst can # boot the munin-node without failure! before => Package["munin"], - notify => Service["munin-node"], + notify => Service["munin"], } - service { "munin-node": + service { "munin": ensure => running, } -- cgit v1.2.3 From 562c898ab81bc9ee19548f9b4601d39773b516e1 Mon Sep 17 00:00:00 2001 From: am Date: Thu, 31 Jan 2008 22:19:05 +0000 Subject: kein notify? git-svn-id: https://svn/ipuppet/trunk/modules/munin@656 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/client.pp | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/manifests/client.pp b/manifests/client.pp index af2c523..3c2814b 100644 --- a/manifests/client.pp +++ b/manifests/client.pp @@ -141,6 +141,13 @@ class munin::client::gentoo }, } + # link + file{ + "/etc/init.d/munin": + ensure => "/etc/init.d/munin-node", + } + + file { "/etc/munin/": @@ -152,7 +159,7 @@ class munin::client::gentoo # this has to be installed before the package, so the postinst can # boot the munin-node without failure! before => Package["munin"], - notify => Service["munin"], + # notify => Service["munin"], } service { "munin": -- cgit v1.2.3 From 91776eeb6e976f0063581dbb558f60ebfa13d63a Mon Sep 17 00:00:00 2001 From: am Date: Thu, 31 Jan 2008 22:28:48 +0000 Subject: noch mehr auf munin stellen, nicht munin-node git-svn-id: https://svn/ipuppet/trunk/modules/munin@657 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/plugin.pp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/manifests/plugin.pp b/manifests/plugin.pp index 69d4624..535d76d 100644 --- a/manifests/plugin.pp +++ b/manifests/plugin.pp @@ -17,8 +17,8 @@ define munin::plugin ( $munin_node_package = "munin-node" } gentoo: { - $munin_node_service = "munin-node" - #$munin_node_service = "munin" + #$munin_node_service = "munin-node" + $munin_node_service = "munin" $munin_node_package = "munin" } default: { -- cgit v1.2.3 From 24a5855d19e604e2d1cd23270d6d2514a2839ee0 Mon Sep 17 00:00:00 2001 From: mh Date: Thu, 31 Jan 2008 23:25:21 +0000 Subject: really needed? git-svn-id: https://svn/ipuppet/trunk/modules/munin@659 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/client.pp | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/manifests/client.pp b/manifests/client.pp index 3c2814b..4e89f12 100644 --- a/manifests/client.pp +++ b/manifests/client.pp @@ -142,10 +142,11 @@ class munin::client::gentoo } # link - file{ - "/etc/init.d/munin": - ensure => "/etc/init.d/munin-node", - } + # mh: really needed? +# file{ +# "/etc/init.d/munin": +# ensure => "/etc/init.d/munin-node", +# } -- cgit v1.2.3 From bad976aee83677afeccdd9750fe791e7665fbfbd Mon Sep 17 00:00:00 2001 From: am Date: Fri, 1 Feb 2008 11:46:02 +0000 Subject: =?UTF-8?q?neuer=20versuch=20mit=20munin=20f=C3=BCr=20immer1-5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: https://svn/ipuppet/trunk/modules/munin@662 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- files/plugins/pg__connections | 142 ++++++++++++++++++++++++++++++++++++++++++ files/plugins/pg__locks | 119 +++++++++++++++++++++++++++++++++++ files/plugins/pg_conn | 51 +++++++++++++++ manifests/plugin.pp | 16 +++++ 4 files changed, 328 insertions(+) create mode 100755 files/plugins/pg__connections create mode 100755 files/plugins/pg__locks create mode 100755 files/plugins/pg_conn diff --git a/files/plugins/pg__connections b/files/plugins/pg__connections new file mode 100755 index 0000000..ca95f56 --- /dev/null +++ b/files/plugins/pg__connections @@ -0,0 +1,142 @@ +#!/usr/bin/perl -w +# Plugin for monitor postgres connections. +# +# Licenced under GPL v2. +# +# Usage: +# +# Symlink into /etc/munin/plugins/ and add the monitored +# database to the filename. e.g.: +# +# ln -s /usr/share/munin/plugins/pg__connections \ +# /etc/munin/plugins/pg__connections +# This should, however, be given through autoconf and suggest. +# +# If required, give username, password and/or Postgresql server +# host through environment variables. +# +# You must also activate Postgresql statistics. See +# http://www.postgresql.org/docs/7.4/interactive/monitoring-stats.html +# for how to enable this. Specifically, the following lines must +# exist in your postgresql.conf: +# +# stats_start_collector = true +# stats_block_level = true +# +# +# Parameters: +# +# config (required) +# +# Config variables: +# +# dbhost - Which database server to use. Defaults to +# 'localhost'. +# dbname - Which database to use. Defaults to template1 +# dbuser - A Postgresql user account with read permission to +# the given database. Defaults to +# 'postgres'. Anyway, Munin must be told which user +# this plugin should be run as. +# dbpass - The corresponding password, if +# applicable. Default to undef. Remember that +# pg_hba.conf must be configured accordingly. +# +# Magic markers +#%# family=auto +#%# capabilities=autoconf + +use strict; +use DBI; + +my $dbhost = $ENV{'dbhost'} || '127.0.0.1'; +my $dbname = $ENV{'dbname'} || 'template1'; +my $dbuser = $ENV{'dbuser'} || 'postgres'; +my $dbuserx = $ENV{'dbuserx'} || ''; +my $dbport = $ENV{'dbport'} || '5432'; +my $dbpass = $ENV{'dbpass'} || ''; + +# Check for DBD::Pg +if (! eval "require DBD::Pg;") { + print "requires DBD::Pg\n"; + exit 1; +} + +my $dsn = "DBI:Pg:dbname=$dbname;host=$dbhost;port=$dbport"; +#print "$dsn\n"; +my $dbh = DBI->connect ($dsn, $dbuser, + $dbpass, + {RaiseError =>1}) || die ""; + + + +if (exists $ARGV[0]) { + if ($ARGV[0] eq 'autoconf') { + # Check for DBD::Pg + if (! eval "require DBD::Pg;") { + print "no (DBD::Pg not found)"; + exit 1; + } + if ($dbh) { + print "yes\n"; + exit 0; + } else { + print "no Unable to access Database $dbname on host $dbhost as user $dbuser.\nError returned was: ". $DBI::errstr; + exit 1; + } + } + + if ($ARGV[0] eq "config") { + my $sql_max = "SHOW max_connections;"; + my $sth_max = $dbh->prepare($sql_max); + $sth_max->execute(); + my ($max_connections) = $sth_max->fetchrow(); + my $warning = int ($max_connections * 0.7); + my $critical = int ($max_connections * 0.8); + print "graph_title PostgresSQL active connections\n"; + print "graph_args -l 0 --base 1000\n"; + print "graph_vlabel Connections\n"; + print "graph_category Postgresql\n"; + print "graph_info Shows active Postgresql connections from $dbname\n"; + + + my $sql = "select datname, count(*) from pg_stat_activity group by datname"; + my $sth = $dbh->prepare($sql); + $sth->execute(); + my $setarea = "yes"; + while ( my ($datname,$curr_conn) = $sth->fetchrow_array ) { + print "$datname.label $datname active connections\n"; + print "$datname.info $datname active connections\n"; + print "$datname.type GAUGE\n"; + if ($setarea eq "yes") { + print "$datname.draw AREA\n"; + $setarea=""; + } else { + print "$datname.draw STACK\n"; + } + } + + print "max_connections.label Max. connections\n"; + print "max_connections.info Max. connections\n"; + print "max_connections.type GAUGE\n"; + + print "warning $warning\n"; + print "critical $critical\n"; + exit 0; + } +} + + +# select datname, count(*) from pg_stat_activity group by datname +my $sql_max = "SHOW max_connections;"; +my $sth_max = $dbh->prepare($sql_max); +$sth_max->execute(); +my ($max_connections) = $sth_max->fetchrow(); + +#my $sql = "SELECT COUNT (*) FROM pg_stat_activity;"; +my $sql = "select datname, count(*) from pg_stat_activity group by datname"; +my $sth = $dbh->prepare($sql); +$sth->execute(); +while ( my ($datname,$curr_conn) = $sth->fetchrow_array ) { + print "$datname.value $curr_conn\n"; +} +print "max_connections.value $max_connections\n"; diff --git a/files/plugins/pg__locks b/files/plugins/pg__locks new file mode 100755 index 0000000..33a9a8a --- /dev/null +++ b/files/plugins/pg__locks @@ -0,0 +1,119 @@ +#!/usr/bin/perl -w +# Plugin for monitor postgres connections. +# +# Licenced under GPL v2. +# +# Usage: +# +# Symlink into /etc/munin/plugins/ and add the monitored +# database to the filename. e.g.: +# +# ln -s /usr/share/munin/plugins/pg__locks \ +# /etc/munin/plugins/pg__locks +# This should, however, be given through autoconf and suggest. +# +# If required, give username, password and/or Postgresql server +# host through environment variables. +# +# You must also activate Postgresql statistics. See +# http://www.postgresql.org/docs/8.1/interactive/monitoring-locks.html +# for how to enable this. Specifically, the following lines must +# exist in your postgresql.conf: +# +# stats_start_collector = true +# stats_block_level = true +# +# +# Parameters: +# +# config (required) +# +# Config variables: +# +# dbhost - Which database server to use. Defaults to +# 'localhost'. +# dbname - Which database to use. Defaults to template1 +# dbuser - A Postgresql user account with read permission to +# the given database. Defaults to +# 'postgres'. Anyway, Munin must be told which user +# this plugin should be run as. +# dbpass - The corresponding password, if +# applicable. Default to undef. Remember that +# pg_hba.conf must be configured accordingly. +# +# Magic markers +#%# family=auto +#%# capabilities=autoconf + +use strict; +use DBI; + +my $dbhost = $ENV{'dbhost'} || '127.0.0.1'; +my $dbname = $ENV{'dbname'} || 'template1'; +my $dbuser = $ENV{'dbuser'} || 'postgres'; +my $dbport = $ENV{'dbport'} || '5432'; +my $dbpass = $ENV{'dbpass'} || ''; + +# Check for DBD::Pg +if (! eval "require DBD::Pg;") { + exit 1; +} + +my $dsn = "DBI:Pg:dbname=$dbname;host=$dbhost;port=$dbport"; +#print "$dsn\n"; +my $dbh = DBI->connect ($dsn, $dbuser, + $dbpass, + {RaiseError =>1}) || die ""; + + + +if (exists $ARGV[0]) { + if ($ARGV[0] eq 'autoconf') { + # Check for DBD::Pg + if (! eval "require DBD::Pg;") { + print "no (DBD::Pg not found)"; + exit 1; + } + if ($dbh) { + print "yes\n"; + exit 0; + } else { + print "no Unable to access Database $dbname on host $dbhost as user $dbuser.\nError returned was: ". $DBI::errstr; + exit 1; + } + } + + if ($ARGV[0] eq "config") { + print "graph_title PostgresSQL locks\n"; + print "graph_args --base 1000\n"; + print "graph_vlabel Locks\n"; + print "graph_category Postgresql\n"; + print "graph_info Shows Postgresql locks\n"; + print "locks.label Locks\n"; + print "locks.info Locks (more info here, please... :)\n"; + print "locks.type GAUGE\n"; + print "locks.warning 5\n"; + print "locks.critical 10\n"; + print "exlocks.label Exclusive locks\n"; + print "exlocks.info Exclusive locks (here too, please... :)\n"; + print "exlocks.type GAUGE\n"; + print "exlocks.warning 5\n"; + print "exlocks.critical 10\n"; + exit 0; + } +} + +my $sql="SELECT mode,COUNT(mode) FROM pg_locks GROUP BY mode ORDER BY mode;"; +my $sth = $dbh->prepare ($sql); +$sth->execute (); +my $locks = 0; +my $exlocks = 0; +while (my ($mode, $count) = $sth->fetchrow ()) { + if ($mode =~ /exclusive/i) { + $exlocks = $exlocks + $count; + } + $locks = $locks+$count; +} +print "locks.value $locks\n"; +print "exlocks.value $exlocks\n"; + diff --git a/files/plugins/pg_conn b/files/plugins/pg_conn new file mode 100755 index 0000000..aa2ebb7 --- /dev/null +++ b/files/plugins/pg_conn @@ -0,0 +1,51 @@ +#!/bin/sh +# +# Plugin to monitor PostgreSQL connections. +# +# Parameters: +# +# config (required) +# autoconf (optional - only used by munin-config) +# Based on netstat plugin +# $Log$ +# eric@ohmforce.com +# +# +# Magic markers (optional - used by munin-config and some installation +# scripts): +#%# family=auto +#%# capabilities=autoconf + + + +if [ "$1" = "autoconf" ]; then + if ( netstat -s 2>/dev/null >/dev/null ); then + echo yes + exit 0 + else + if [ $? -eq 127 ] + then + echo "no (netstat program not found)" + exit 1 + else + echo no + exit 1 + fi + fi +fi + +if [ "$1" = "config" ]; then + + echo 'graph_title PostgreSQL' + echo 'graph_args -l 0 ' + echo 'graph_vlabel Number of PostgreSQL connections' + echo 'graph_category postgresql' + echo 'graph_period second' + echo 'graph_info This graph shows the number of opened connections on PostgreSQL.' + echo 'established.label established' + echo 'established.type GAUGE' + echo 'established.max 500' + echo 'established.info The number of currently open connections.' + exit 0 +fi +netstat -a | awk '{ print $4 }'| grep postgres | wc -l | xargs echo established.value diff --git a/manifests/plugin.pp b/manifests/plugin.pp index 535d76d..df31fe2 100644 --- a/manifests/plugin.pp +++ b/manifests/plugin.pp @@ -259,3 +259,19 @@ class munin::plugins::djbdns inherits munin::plugins::base { } } +class munin::plugins::postgres inherits munin::plugins::base { + file { + [ "$script_path_default/pg_conn" ]: + source => "puppet://$servername/munin/plugins/pg_conn", + ensure => file, + mode => 0755, owner => root, group => 0; + [ "$script_path_default/pg__connections" ]: + source => "puppet://$servername/munin/plugins/pg__connections", + ensure => file, + mode => 0755, owner => root, group => 0; + [ "$script_path_default/pg__locks" ]: + source => "puppet://$servername/munin/plugins/pg__locks", + ensure => file, + mode => 0755, owner => root, group => 0; + } +} -- cgit v1.2.3 From b7c178614bce6fb848f775b95d1ace6418eca4ad Mon Sep 17 00:00:00 2001 From: am Date: Fri, 1 Feb 2008 14:01:02 +0000 Subject: versuch mit einer function git-svn-id: https://svn/ipuppet/trunk/modules/munin@673 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- plugins/parser/functions/muninport.rb | 7 +++++++ 1 file changed, 7 insertions(+) create mode 100644 plugins/parser/functions/muninport.rb diff --git a/plugins/parser/functions/muninport.rb b/plugins/parser/functions/muninport.rb new file mode 100644 index 0000000..27f96f4 --- /dev/null +++ b/plugins/parser/functions/muninport.rb @@ -0,0 +1,7 @@ +# immerda +module Puppet::Parser::Functions + newfunction(:muninport) do |args| + args[0]+65400 + end +end + -- cgit v1.2.3 From 4e3bd787f5cf56ed6bba54910cffcfff5c6f4ef3 Mon Sep 17 00:00:00 2001 From: am Date: Fri, 1 Feb 2008 14:05:17 +0000 Subject: +rvalue git-svn-id: https://svn/ipuppet/trunk/modules/munin@674 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- plugins/parser/functions/muninport.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugins/parser/functions/muninport.rb b/plugins/parser/functions/muninport.rb index 27f96f4..d0b5909 100644 --- a/plugins/parser/functions/muninport.rb +++ b/plugins/parser/functions/muninport.rb @@ -1,6 +1,6 @@ # immerda module Puppet::Parser::Functions - newfunction(:muninport) do |args| + newfunction(:muninport, :type => :rvalue) do |args| args[0]+65400 end end -- cgit v1.2.3 From f99fa21bdf280930ddd0ef8304d06b77a785a1b4 Mon Sep 17 00:00:00 2001 From: am Date: Fri, 1 Feb 2008 14:11:17 +0000 Subject: mv git-svn-id: https://svn/ipuppet/trunk/modules/munin@675 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- plugins/parser/functions/muninport.rb | 7 ------- plugins/puppet/parser/functions/muninport.rb | 7 +++++++ 2 files changed, 7 insertions(+), 7 deletions(-) delete mode 100644 plugins/parser/functions/muninport.rb create mode 100644 plugins/puppet/parser/functions/muninport.rb diff --git a/plugins/parser/functions/muninport.rb b/plugins/parser/functions/muninport.rb deleted file mode 100644 index d0b5909..0000000 --- a/plugins/parser/functions/muninport.rb +++ /dev/null @@ -1,7 +0,0 @@ -# immerda -module Puppet::Parser::Functions - newfunction(:muninport, :type => :rvalue) do |args| - args[0]+65400 - end -end - diff --git a/plugins/puppet/parser/functions/muninport.rb b/plugins/puppet/parser/functions/muninport.rb new file mode 100644 index 0000000..d0b5909 --- /dev/null +++ b/plugins/puppet/parser/functions/muninport.rb @@ -0,0 +1,7 @@ +# immerda +module Puppet::Parser::Functions + newfunction(:muninport, :type => :rvalue) do |args| + args[0]+65400 + end +end + -- cgit v1.2.3 From db0ab2b74a969303bd5adb678e24c1e7bebb64c7 Mon Sep 17 00:00:00 2001 From: am Date: Fri, 1 Feb 2008 14:25:50 +0000 Subject: test in modul git-svn-id: https://svn/ipuppet/trunk/modules/munin@676 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/client.pp | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/manifests/client.pp b/manifests/client.pp index 4e89f12..f334756 100644 --- a/manifests/client.pp +++ b/manifests/client.pp @@ -203,3 +203,11 @@ class munin::client::centos } +define munin::client::immer1-5($domU_number = '0') { + $munin_port = $domU_number ? { + '4949' => 4949, + default => muninport($domU_number); + } + + include munin::client +} -- cgit v1.2.3 From dda34c92a218f2f77a2904a868c573e766898d37 Mon Sep 17 00:00:00 2001 From: am Date: Fri, 1 Feb 2008 14:28:32 +0000 Subject: fehler? git-svn-id: https://svn/ipuppet/trunk/modules/munin@677 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/client.pp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/manifests/client.pp b/manifests/client.pp index f334756..341aeaa 100644 --- a/manifests/client.pp +++ b/manifests/client.pp @@ -203,7 +203,7 @@ class munin::client::centos } -define munin::client::immer1-5($domU_number = '0') { +define munin::client::immertest($domU_number = '0') { $munin_port = $domU_number ? { '4949' => 4949, default => muninport($domU_number); -- cgit v1.2.3 From 775a5fb9185abb040659cea5bb4c3490633ae888 Mon Sep 17 00:00:00 2001 From: am Date: Fri, 1 Feb 2008 14:32:06 +0000 Subject: test git-svn-id: https://svn/ipuppet/trunk/modules/munin@678 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/client.pp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/manifests/client.pp b/manifests/client.pp index 341aeaa..e0cf17b 100644 --- a/manifests/client.pp +++ b/manifests/client.pp @@ -203,7 +203,7 @@ class munin::client::centos } -define munin::client::immertest($domU_number = '0') { +define munin::immertest($domU_number = '0') { $munin_port = $domU_number ? { '4949' => 4949, default => muninport($domU_number); @@ -211,3 +211,4 @@ define munin::client::immertest($domU_number = '0') { include munin::client } + -- cgit v1.2.3 From a9a318e0c451bbddeaaac135ac4317bb01599bc4 Mon Sep 17 00:00:00 2001 From: am Date: Fri, 1 Feb 2008 14:43:48 +0000 Subject: case... git-svn-id: https://svn/ipuppet/trunk/modules/munin@679 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/client.pp | 8 -------- 1 file changed, 8 deletions(-) diff --git a/manifests/client.pp b/manifests/client.pp index e0cf17b..510945d 100644 --- a/manifests/client.pp +++ b/manifests/client.pp @@ -203,12 +203,4 @@ class munin::client::centos } -define munin::immertest($domU_number = '0') { - $munin_port = $domU_number ? { - '4949' => 4949, - default => muninport($domU_number); - } - - include munin::client -} -- cgit v1.2.3 From 315495b18f4c5e1a2ced06e603a1617e5867b41a Mon Sep 17 00:00:00 2001 From: am Date: Fri, 1 Feb 2008 15:15:24 +0000 Subject: munin script_path nur in plugins-gebraucht git-svn-id: https://svn/ipuppet/trunk/modules/munin@684 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/plugin.pp | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/manifests/plugin.pp b/manifests/plugin.pp index df31fe2..d9b944c 100644 --- a/manifests/plugin.pp +++ b/manifests/plugin.pp @@ -4,7 +4,7 @@ define munin::plugin ( $ensure = "present", - $script_path = $script_path_default, + $script_path = '/usr/libexec/munin/plugins', $config = '') { case $operatingsystem { @@ -20,6 +20,7 @@ define munin::plugin ( #$munin_node_service = "munin-node" $munin_node_service = "munin" $munin_node_package = "munin" + $script_path = $script_path_default, } default: { $munin_node_service = "munin-node" @@ -102,18 +103,22 @@ class munin::plugins::base { gentoo: { $munin_node_package = "munin" $munin_node_service = "munin" + $script_path_default = "/usr/libexec/munin/plugins" } debian: { $munin_node_service = "munin-node" $munin_node_package = "munin-node" + $script_path_default = "/usr/libexec/munin/plugins" } centos: { $munin_node_service = "munin-node" $munin_node_package = "munin-node" + $script_path_default = "/usr/libexec/munin/plugins" } default: { $munin_node_service = "munin-node" $munin_node_package = "munin-node" + $script_path_default = "/usr/libexec/munin/plugins" } } case $operatingsystem { @@ -145,11 +150,6 @@ class munin::plugins::base { } } } - - case $operatingsystem { - gentoo: { $script_path_default = "/usr/libexec/munin/plugins" } - default: { $script_path_default = "/usr/share/munin/plugins" } - } } # handle if_ and if_err_ plugins -- cgit v1.2.3 From d28a2979f038b6b48322584a43932f66c488fb03 Mon Sep 17 00:00:00 2001 From: am Date: Fri, 1 Feb 2008 15:24:28 +0000 Subject: path als class inlcude git-svn-id: https://svn/ipuppet/trunk/modules/munin@685 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/plugin.pp | 59 +++++++++++++++++++++-------------------------------- 1 file changed, 23 insertions(+), 36 deletions(-) diff --git a/manifests/plugin.pp b/manifests/plugin.pp index d9b944c..572f79b 100644 --- a/manifests/plugin.pp +++ b/manifests/plugin.pp @@ -2,31 +2,39 @@ # Copyright (C) 2007 David Schmitt # See LICENSE for the full license granted to you. -define munin::plugin ( - $ensure = "present", - $script_path = '/usr/libexec/munin/plugins', - $config = '') +class munin::plugin::paths { case $operatingsystem { - debian: { + gentoo: { + $munin_node_package = "munin" + $munin_node_service = "munin" + $script_path_default = "/usr/libexec/munin/plugins" + } + debian: { $munin_node_service = "munin-node" $munin_node_package = "munin-node" - } - centos: { + $script_path_default = "/usr/share/munin/plugins" + } + centos: { $munin_node_service = "munin-node" $munin_node_package = "munin-node" - } - gentoo: { - #$munin_node_service = "munin-node" - $munin_node_service = "munin" - $munin_node_package = "munin" - $script_path = $script_path_default, - } + $script_path_default = "/usr/share/munin/plugins" + } default: { $munin_node_service = "munin-node" $munin_node_package = "munin-node" + $script_path_default = "/usr/share/munin/plugins" } } + +{ + +define munin::plugin ( + $ensure = "present", + $script_path = '/usr/libexec/munin/plugins', + $config = '') +{ + include munin::plugin::paths $plugin_src = $ensure ? { "present" => $name, default => $ensure } debug ( "munin_plugin: name=$name, ensure=$ensure, script_path=$script_path" ) @@ -98,29 +106,8 @@ define munin::remoteplugin($ensure = "present", $source, $config = '') { } class munin::plugins::base { + include munin::plugin::paths - case $operatingsystem { - gentoo: { - $munin_node_package = "munin" - $munin_node_service = "munin" - $script_path_default = "/usr/libexec/munin/plugins" - } - debian: { - $munin_node_service = "munin-node" - $munin_node_package = "munin-node" - $script_path_default = "/usr/libexec/munin/plugins" - } - centos: { - $munin_node_service = "munin-node" - $munin_node_package = "munin-node" - $script_path_default = "/usr/libexec/munin/plugins" - } - default: { - $munin_node_service = "munin-node" - $munin_node_package = "munin-node" - $script_path_default = "/usr/libexec/munin/plugins" - } - } case $operatingsystem { centos: { file { -- cgit v1.2.3 From f866b953289eab2b50cba45411ced3b25820884c Mon Sep 17 00:00:00 2001 From: am Date: Fri, 1 Feb 2008 15:28:00 +0000 Subject: script path ... git-svn-id: https://svn/ipuppet/trunk/modules/munin@686 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/plugin.pp | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/manifests/plugin.pp b/manifests/plugin.pp index 572f79b..0d11c01 100644 --- a/manifests/plugin.pp +++ b/manifests/plugin.pp @@ -8,22 +8,22 @@ class munin::plugin::paths gentoo: { $munin_node_package = "munin" $munin_node_service = "munin" - $script_path_default = "/usr/libexec/munin/plugins" + $script_path = "/usr/libexec/munin/plugins" } debian: { $munin_node_service = "munin-node" $munin_node_package = "munin-node" - $script_path_default = "/usr/share/munin/plugins" + $script_path = "/usr/share/munin/plugins" } centos: { $munin_node_service = "munin-node" $munin_node_package = "munin-node" - $script_path_default = "/usr/share/munin/plugins" + $script_path = "/usr/share/munin/plugins" } default: { $munin_node_service = "munin-node" $munin_node_package = "munin-node" - $script_path_default = "/usr/share/munin/plugins" + $script_path = "/usr/share/munin/plugins" } } @@ -181,7 +181,7 @@ class munin::plugins::vserver inherits munin::plugins::base { } class munin::plugins::gentoo inherits munin::plugins::base { - file { "$script_path_default/gentoo_lastupdated": + file { "$script_path/gentoo_lastupdated": source => "puppet://$servername/munin/plugins/gentoo_lastupdated", ensure => file, mode => 0755, owner => root, group => 0; @@ -194,7 +194,7 @@ class munin::plugins::centos inherits munin::plugins::base { } class munin::plugins::selinux inherits munin::plugins::base { - file { "$script_path_default/selinuxenforced": + file { "$script_path/selinuxenforced": source => "puppet://$servername/munin/plugins/selinuxenforced", ensure => file, mode => 0755, owner => root, group => 0; @@ -205,19 +205,19 @@ class munin::plugins::selinux inherits munin::plugins::base { class munin::plugins::dom0 inherits munin::plugins::base { file { - [ "$script_path_default/xen" ]: + [ "$script_path/xen" ]: source => "puppet://$servername/munin/plugins/xen", ensure => file, mode => 0755, owner => root, group => 0; - [ "$script_path_default/xen-cpu" ]: + [ "$script_path/xen-cpu" ]: source => "puppet://$servername/munin/plugins/xen-cpu", ensure => file, mode => 0755, owner => root, group => 0; - [ "$script_path_default/xen_memory" ]: + [ "$script_path/xen_memory" ]: source => "puppet://$servername/munin/plugins/xen_memory", ensure => file, mode => 0755, owner => root, group => 0; - [ "$script_path_default/xen_vbd" ]: + [ "$script_path/xen_vbd" ]: source => "puppet://$servername/munin/plugins/xen_vbd", ensure => file, mode => 0755, owner => root, group => 0; @@ -235,7 +235,7 @@ class munin::plugins::domU inherits munin::plugins::base { class munin::plugins::djbdns inherits munin::plugins::base { file { - [ "$script_path_default/tinydns" ]: + [ "$script_path/tinydns" ]: source => "puppet://$servername/munin/plugins/tinydns", ensure => file, mode => 0755, owner => root, group => 0; @@ -248,15 +248,15 @@ class munin::plugins::djbdns inherits munin::plugins::base { class munin::plugins::postgres inherits munin::plugins::base { file { - [ "$script_path_default/pg_conn" ]: + [ "$script_path/pg_conn" ]: source => "puppet://$servername/munin/plugins/pg_conn", ensure => file, mode => 0755, owner => root, group => 0; - [ "$script_path_default/pg__connections" ]: + [ "$script_path/pg__connections" ]: source => "puppet://$servername/munin/plugins/pg__connections", ensure => file, mode => 0755, owner => root, group => 0; - [ "$script_path_default/pg__locks" ]: + [ "$script_path/pg__locks" ]: source => "puppet://$servername/munin/plugins/pg__locks", ensure => file, mode => 0755, owner => root, group => 0; -- cgit v1.2.3 From 6661f91c54049defe2aa8f4d587d34d7e7b15dee Mon Sep 17 00:00:00 2001 From: am Date: Fri, 1 Feb 2008 15:35:18 +0000 Subject: script path git-svn-id: https://svn/ipuppet/trunk/modules/munin@687 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/plugin.pp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/manifests/plugin.pp b/manifests/plugin.pp index 0d11c01..2b12896 100644 --- a/manifests/plugin.pp +++ b/manifests/plugin.pp @@ -31,11 +31,13 @@ class munin::plugin::paths define munin::plugin ( $ensure = "present", - $script_path = '/usr/libexec/munin/plugins', + $script_path_in = '', $config = '') { include munin::plugin::paths + $script_path = $script_path_in ? { '' => $script_path, default => $script_path_in } + $plugin_src = $ensure ? { "present" => $name, default => $ensure } debug ( "munin_plugin: name=$name, ensure=$ensure, script_path=$script_path" ) $plugin = "/etc/munin/plugins/$name" -- cgit v1.2.3 From d2f00103d81de8d0483997b98bf879a98d9134e3 Mon Sep 17 00:00:00 2001 From: am Date: Fri, 1 Feb 2008 15:40:39 +0000 Subject: div git-svn-id: https://svn/ipuppet/trunk/modules/munin@688 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/plugin.pp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/manifests/plugin.pp b/manifests/plugin.pp index 2b12896..b33260e 100644 --- a/manifests/plugin.pp +++ b/manifests/plugin.pp @@ -36,7 +36,7 @@ define munin::plugin ( { include munin::plugin::paths - $script_path = $script_path_in ? { '' => $script_path, default => $script_path_in } + #$script_path = $script_path_in ? { '' => $script_path, default => $script_path_in } $plugin_src = $ensure ? { "present" => $name, default => $ensure } debug ( "munin_plugin: name=$name, ensure=$ensure, script_path=$script_path" ) -- cgit v1.2.3 From 2e59b0457541b624057f9b60eb6aa99d0d827521 Mon Sep 17 00:00:00 2001 From: am Date: Fri, 1 Feb 2008 15:47:52 +0000 Subject: test git-svn-id: https://svn/ipuppet/trunk/modules/munin@689 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/plugin.pp | 23 ++++++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-) diff --git a/manifests/plugin.pp b/manifests/plugin.pp index b33260e..8869383 100644 --- a/manifests/plugin.pp +++ b/manifests/plugin.pp @@ -34,7 +34,28 @@ define munin::plugin ( $script_path_in = '', $config = '') { - include munin::plugin::paths + case $operatingsystem { + gentoo: { + $munin_node_package = "munin" + $munin_node_service = "munin" + $script_path = "/usr/libexec/munin/plugins" + } + debian: { + $munin_node_service = "munin-node" + $munin_node_package = "munin-node" + $script_path = "/usr/share/munin/plugins" + } + centos: { + $munin_node_service = "munin-node" + $munin_node_package = "munin-node" + $script_path = "/usr/share/munin/plugins" + } + default: { + $munin_node_service = "munin-node" + $munin_node_package = "munin-node" + $script_path = "/usr/share/munin/plugins" + } + } #$script_path = $script_path_in ? { '' => $script_path, default => $script_path_in } -- cgit v1.2.3 From bfea715ace59348bf12e881bdb8898333fe54ede Mon Sep 17 00:00:00 2001 From: am Date: Fri, 1 Feb 2008 15:55:40 +0000 Subject: klammerfehler git-svn-id: https://svn/ipuppet/trunk/modules/munin@690 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/plugin.pp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/manifests/plugin.pp b/manifests/plugin.pp index 8869383..cdfca80 100644 --- a/manifests/plugin.pp +++ b/manifests/plugin.pp @@ -27,7 +27,7 @@ class munin::plugin::paths } } -{ +} define munin::plugin ( $ensure = "present", -- cgit v1.2.3 From fdd40a1954998128e024321cf3e55a900b336a68 Mon Sep 17 00:00:00 2001 From: am Date: Fri, 1 Feb 2008 15:58:04 +0000 Subject: =?UTF-8?q?kein=20service=20f=C3=BCr=20gentoo,=20f=C3=BCr=20den=20?= =?UTF-8?q?mom?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: https://svn/ipuppet/trunk/modules/munin@691 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/plugin.pp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/manifests/plugin.pp b/manifests/plugin.pp index cdfca80..b28b918 100644 --- a/manifests/plugin.pp +++ b/manifests/plugin.pp @@ -71,7 +71,7 @@ define munin::plugin ( default: { debug ( "munin_plugin: making $plugin using src: $plugin_src" ) case $operatingsystem { - centos: { + centos, gentoo: { file { $plugin: ensure => "$script_path/${plugin_src}", require => Package[$munin_node_package]; -- cgit v1.2.3 From 68021a7334465225066ee24958dde7675f31dcdd Mon Sep 17 00:00:00 2001 From: am Date: Fri, 1 Feb 2008 15:59:59 +0000 Subject: path git-svn-id: https://svn/ipuppet/trunk/modules/munin@692 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/plugin.pp | 24 +++++++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-) diff --git a/manifests/plugin.pp b/manifests/plugin.pp index b28b918..426e30f 100644 --- a/manifests/plugin.pp +++ b/manifests/plugin.pp @@ -129,7 +129,29 @@ define munin::remoteplugin($ensure = "present", $source, $config = '') { } class munin::plugins::base { - include munin::plugin::paths + + case $operatingsystem { + gentoo: { + $munin_node_package = "munin" + $munin_node_service = "munin" + $script_path = "/usr/libexec/munin/plugins" + } + debian: { + $munin_node_service = "munin-node" + $munin_node_package = "munin-node" + $script_path = "/usr/share/munin/plugins" + } + centos: { + $munin_node_service = "munin-node" + $munin_node_package = "munin-node" + $script_path = "/usr/share/munin/plugins" + } + default: { + $munin_node_service = "munin-node" + $munin_node_package = "munin-node" + $script_path = "/usr/share/munin/plugins" + } + } case $operatingsystem { centos: { -- cgit v1.2.3 From 77ed58048b3652e5c7c15cd04f82313374b4cf61 Mon Sep 17 00:00:00 2001 From: am Date: Fri, 1 Feb 2008 16:26:17 +0000 Subject: munin entflochten ... git-svn-id: https://svn/ipuppet/trunk/modules/munin@693 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/plugin.pp | 27 --------------------------- 1 file changed, 27 deletions(-) diff --git a/manifests/plugin.pp b/manifests/plugin.pp index 426e30f..a66ccb8 100644 --- a/manifests/plugin.pp +++ b/manifests/plugin.pp @@ -2,33 +2,6 @@ # Copyright (C) 2007 David Schmitt # See LICENSE for the full license granted to you. -class munin::plugin::paths -{ - case $operatingsystem { - gentoo: { - $munin_node_package = "munin" - $munin_node_service = "munin" - $script_path = "/usr/libexec/munin/plugins" - } - debian: { - $munin_node_service = "munin-node" - $munin_node_package = "munin-node" - $script_path = "/usr/share/munin/plugins" - } - centos: { - $munin_node_service = "munin-node" - $munin_node_package = "munin-node" - $script_path = "/usr/share/munin/plugins" - } - default: { - $munin_node_service = "munin-node" - $munin_node_package = "munin-node" - $script_path = "/usr/share/munin/plugins" - } - } - -} - define munin::plugin ( $ensure = "present", $script_path_in = '', -- cgit v1.2.3 From 74f2bb9154dec374abba9ff9f268155cbf00e470 Mon Sep 17 00:00:00 2001 From: mh Date: Fri, 1 Feb 2008 18:14:33 +0000 Subject: fixed some service issues git-svn-id: https://svn/ipuppet/trunk/modules/munin@705 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/plugin.pp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/manifests/plugin.pp b/manifests/plugin.pp index a66ccb8..8c6fa15 100644 --- a/manifests/plugin.pp +++ b/manifests/plugin.pp @@ -10,7 +10,7 @@ define munin::plugin ( case $operatingsystem { gentoo: { $munin_node_package = "munin" - $munin_node_service = "munin" + $munin_node_service = "munin-munin" $script_path = "/usr/libexec/munin/plugins" } debian: { -- cgit v1.2.3 From 25484de8fd6c7908b21cb0fcfde08f95f9244c46 Mon Sep 17 00:00:00 2001 From: mh Date: Fri, 1 Feb 2008 18:17:35 +0000 Subject: fixed some service issues git-svn-id: https://svn/ipuppet/trunk/modules/munin@706 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/plugin.pp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/manifests/plugin.pp b/manifests/plugin.pp index 8c6fa15..bc706ab 100644 --- a/manifests/plugin.pp +++ b/manifests/plugin.pp @@ -10,7 +10,7 @@ define munin::plugin ( case $operatingsystem { gentoo: { $munin_node_package = "munin" - $munin_node_service = "munin-munin" + $munin_node_service = "munin-node" $script_path = "/usr/libexec/munin/plugins" } debian: { -- cgit v1.2.3 From 1116b7ecf0b2760e09e589543a1a6fb9a6fed38b Mon Sep 17 00:00:00 2001 From: mh Date: Fri, 1 Feb 2008 18:29:58 +0000 Subject: fixed some service correlation git-svn-id: https://svn/ipuppet/trunk/modules/munin@707 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/client.pp | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/manifests/client.pp b/manifests/client.pp index 510945d..df60a77 100644 --- a/manifests/client.pp +++ b/manifests/client.pp @@ -134,6 +134,7 @@ class munin::client::gentoo $script_path_default = "/usr/libexec/munin/plugins" $acpi_available = "absent" package { 'munin': + alias => 'munin-node' ensure => present, category => $operatingsystem ? { gentoo => 'net-analyzer', @@ -159,7 +160,7 @@ class munin::client::gentoo mode => 0644, owner => root, group => 0, # this has to be installed before the package, so the postinst can # boot the munin-node without failure! - before => Package["munin"], + before => Package["munin-node"], # notify => Service["munin"], } @@ -175,10 +176,6 @@ class munin::client::centos $script_path_default = "/usr/share/munin/plugins" package { 'munin': ensure => present, - category => $operatingsystem ? { - gentoo => 'net-analyzer', - default => '', - }, } @@ -191,7 +188,7 @@ class munin::client::centos mode => 0644, owner => root, group => 0, # this has to be installed before the package, so the postinst can # boot the munin-node without failure! - before => Package["munin"], + before => Package["munin-node"], notify => Service["munin"], } -- cgit v1.2.3 From a35e38d571e0a3411f4fd1831cdb18235157621f Mon Sep 17 00:00:00 2001 From: mh Date: Fri, 1 Feb 2008 18:33:29 +0000 Subject: fixed some service correlation git-svn-id: https://svn/ipuppet/trunk/modules/munin@708 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/client.pp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/manifests/client.pp b/manifests/client.pp index df60a77..d61db3b 100644 --- a/manifests/client.pp +++ b/manifests/client.pp @@ -174,7 +174,7 @@ class munin::client::gentoo class munin::client::centos { $script_path_default = "/usr/share/munin/plugins" - package { 'munin': + package { 'munin-node': ensure => present, } -- cgit v1.2.3 From 4fb0b2fa23bc1aa4e1eaf34cff6b2fa17653e3f1 Mon Sep 17 00:00:00 2001 From: am Date: Fri, 1 Feb 2008 18:59:21 +0000 Subject: tippfehler git-svn-id: https://svn/ipuppet/trunk/modules/munin@710 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/client.pp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/manifests/client.pp b/manifests/client.pp index d61db3b..d0f793e 100644 --- a/manifests/client.pp +++ b/manifests/client.pp @@ -134,7 +134,7 @@ class munin::client::gentoo $script_path_default = "/usr/libexec/munin/plugins" $acpi_available = "absent" package { 'munin': - alias => 'munin-node' + alias => 'munin-node', ensure => present, category => $operatingsystem ? { gentoo => 'net-analyzer', -- cgit v1.2.3 From 07415f2506af67e05d83d04979f4e8f2d3fc1a1b Mon Sep 17 00:00:00 2001 From: am Date: Fri, 1 Feb 2008 19:06:03 +0000 Subject: test git-svn-id: https://svn/ipuppet/trunk/modules/munin@712 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/client.pp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/manifests/client.pp b/manifests/client.pp index d0f793e..71f86fa 100644 --- a/manifests/client.pp +++ b/manifests/client.pp @@ -134,7 +134,7 @@ class munin::client::gentoo $script_path_default = "/usr/libexec/munin/plugins" $acpi_available = "absent" package { 'munin': - alias => 'munin-node', + alias => munin-node, ensure => present, category => $operatingsystem ? { gentoo => 'net-analyzer', -- cgit v1.2.3 From b3a600ad26a21e446d528a93ff03d3ca9dfb66c1 Mon Sep 17 00:00:00 2001 From: mh Date: Fri, 1 Feb 2008 19:11:06 +0000 Subject: fixed service problem git-svn-id: https://svn/ipuppet/trunk/modules/munin@713 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/client.pp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/manifests/client.pp b/manifests/client.pp index 71f86fa..17ad207 100644 --- a/manifests/client.pp +++ b/manifests/client.pp @@ -164,7 +164,7 @@ class munin::client::gentoo # notify => Service["munin"], } - service { "munin": + service { "munin-node": ensure => running, } @@ -189,7 +189,7 @@ class munin::client::centos # this has to be installed before the package, so the postinst can # boot the munin-node without failure! before => Package["munin-node"], - notify => Service["munin"], + notify => Service["munin-node"], } service { "munin-node": -- cgit v1.2.3 From fd7b356081ce48f9b882610fe06f17cd4762c3c7 Mon Sep 17 00:00:00 2001 From: mh Date: Sat, 2 Feb 2008 00:33:47 +0000 Subject: fixed language problem, added need package by debian git-svn-id: https://svn/ipuppet/trunk/modules/munin@734 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/client.pp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/manifests/client.pp b/manifests/client.pp index 17ad207..7dcbbe1 100644 --- a/manifests/client.pp +++ b/manifests/client.pp @@ -103,6 +103,8 @@ class munin::client::debian $script_path_default = "/usr/share/munin/plugins" package { "munin-node": ensure => installed } + # the plugin will need that + package { "iproute": ensure => installed } file { "/etc/munin/": -- cgit v1.2.3 From 47e1e2322ed93842146d251ece06856f603d5403 Mon Sep 17 00:00:00 2001 From: mh Date: Wed, 6 Feb 2008 20:03:47 +0000 Subject: removed unneeded definition git-svn-id: https://svn/ipuppet/trunk/modules/munin@763 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/plugin.pp | 24 ------------------------ 1 file changed, 24 deletions(-) diff --git a/manifests/plugin.pp b/manifests/plugin.pp index bc706ab..5fd4190 100644 --- a/manifests/plugin.pp +++ b/manifests/plugin.pp @@ -102,30 +102,6 @@ define munin::remoteplugin($ensure = "present", $source, $config = '') { } class munin::plugins::base { - - case $operatingsystem { - gentoo: { - $munin_node_package = "munin" - $munin_node_service = "munin" - $script_path = "/usr/libexec/munin/plugins" - } - debian: { - $munin_node_service = "munin-node" - $munin_node_package = "munin-node" - $script_path = "/usr/share/munin/plugins" - } - centos: { - $munin_node_service = "munin-node" - $munin_node_package = "munin-node" - $script_path = "/usr/share/munin/plugins" - } - default: { - $munin_node_service = "munin-node" - $munin_node_package = "munin-node" - $script_path = "/usr/share/munin/plugins" - } - } - case $operatingsystem { centos: { file { -- cgit v1.2.3 From 1115e76a91b398ccb45f2cd5ea2195cb3351bc22 Mon Sep 17 00:00:00 2001 From: mh Date: Wed, 6 Feb 2008 20:31:50 +0000 Subject: fixed? munin plugin problems git-svn-id: https://svn/ipuppet/trunk/modules/munin@764 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/client.pp | 18 +++--------------- manifests/plugin.pp | 19 ++++++------------- 2 files changed, 9 insertions(+), 28 deletions(-) diff --git a/manifests/client.pp b/manifests/client.pp index 7dcbbe1..ba59333 100644 --- a/manifests/client.pp +++ b/manifests/client.pp @@ -100,8 +100,6 @@ class munin::client::darwin class munin::client::debian { - $script_path_default = "/usr/share/munin/plugins" - package { "munin-node": ensure => installed } # the plugin will need that package { "iproute": ensure => installed } @@ -133,10 +131,10 @@ class munin::client::debian class munin::client::gentoo { - $script_path_default = "/usr/libexec/munin/plugins" $acpi_available = "absent" - package { 'munin': - alias => munin-node, + package { 'munin-node': + name => 'munin', + alias => 'munin-node', ensure => present, category => $operatingsystem ? { gentoo => 'net-analyzer', @@ -144,15 +142,6 @@ class munin::client::gentoo }, } - # link - # mh: really needed? -# file{ -# "/etc/init.d/munin": -# ensure => "/etc/init.d/munin-node", -# } - - - file { "/etc/munin/": ensure => directory, @@ -175,7 +164,6 @@ class munin::client::gentoo class munin::client::centos { - $script_path_default = "/usr/share/munin/plugins" package { 'munin-node': ensure => present, } diff --git a/manifests/plugin.pp b/manifests/plugin.pp index 5fd4190..97c89b2 100644 --- a/manifests/plugin.pp +++ b/manifests/plugin.pp @@ -9,23 +9,15 @@ define munin::plugin ( { case $operatingsystem { gentoo: { - $munin_node_package = "munin" - $munin_node_service = "munin-node" $script_path = "/usr/libexec/munin/plugins" } debian: { - $munin_node_service = "munin-node" - $munin_node_package = "munin-node" $script_path = "/usr/share/munin/plugins" } centos: { - $munin_node_service = "munin-node" - $munin_node_package = "munin-node" $script_path = "/usr/share/munin/plugins" } default: { - $munin_node_service = "munin-node" - $munin_node_package = "munin-node" $script_path = "/usr/share/munin/plugins" } } @@ -47,14 +39,14 @@ define munin::plugin ( centos, gentoo: { file { $plugin: ensure => "$script_path/${plugin_src}", - require => Package[$munin_node_package]; + require => Package['munin-node']; } } default: { file { $plugin: ensure => "$script_path/${plugin_src}", - require => Package[$munin_node_package], - notify => Service[$munin_node_service]; + require => Package['munin-node'], + notify => Service['munin-node']; } } } @@ -123,11 +115,12 @@ class munin::plugins::base { ensure => directory, checksum => mtime, recurse => true, purge => true, force => true, mode => 0755, owner => root, group => 0, - notify => Service["$munin_node_service"]; + notify => Service['munin-node']; "/etc/munin/plugin-conf.d/munin-node": ensure => present, mode => 0644, owner => root, group => 0, - notify => Service[$munin_node_service]; + notify => Service['munin-node'], + before => Package['munin-node']; } } } -- cgit v1.2.3 From f0b680075d3106efc0a04c8fd3a5d5f05dbe82e6 Mon Sep 17 00:00:00 2001 From: mh Date: Wed, 6 Feb 2008 20:39:54 +0000 Subject: fixed double package problem git-svn-id: https://svn/ipuppet/trunk/modules/munin@765 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/client.pp | 1 - 1 file changed, 1 deletion(-) diff --git a/manifests/client.pp b/manifests/client.pp index ba59333..13f3e09 100644 --- a/manifests/client.pp +++ b/manifests/client.pp @@ -134,7 +134,6 @@ class munin::client::gentoo $acpi_available = "absent" package { 'munin-node': name => 'munin', - alias => 'munin-node', ensure => present, category => $operatingsystem ? { gentoo => 'net-analyzer', -- cgit v1.2.3 From 8f58fe2d444587451c0e042574f2931a4162ee08 Mon Sep 17 00:00:00 2001 From: am Date: Fri, 8 Feb 2008 10:20:38 +0000 Subject: pfad nicht richtig def git-svn-id: https://svn/ipuppet/trunk/modules/munin@776 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/plugin.pp | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/manifests/plugin.pp b/manifests/plugin.pp index 97c89b2..0363317 100644 --- a/manifests/plugin.pp +++ b/manifests/plugin.pp @@ -2,11 +2,7 @@ # Copyright (C) 2007 David Schmitt # See LICENSE for the full license granted to you. -define munin::plugin ( - $ensure = "present", - $script_path_in = '', - $config = '') -{ +class munin::plugin::scriptpaths { case $operatingsystem { gentoo: { $script_path = "/usr/libexec/munin/plugins" @@ -21,7 +17,16 @@ define munin::plugin ( $script_path = "/usr/share/munin/plugins" } } +} + +define munin::plugin ( + $ensure = "present", + $script_path_in = '', + $config = '') +{ + + include munin::plugin::scriptpaths #$script_path = $script_path_in ? { '' => $script_path, default => $script_path_in } $plugin_src = $ensure ? { "present" => $name, default => $ensure } @@ -94,6 +99,8 @@ define munin::remoteplugin($ensure = "present", $source, $config = '') { } class munin::plugins::base { + include munin::plugin::scriptpaths + case $operatingsystem { centos: { file { -- cgit v1.2.3 From a883c099328cce1c9805c153cc8b7f589a203601 Mon Sep 17 00:00:00 2001 From: am Date: Fri, 8 Feb 2008 10:37:32 +0000 Subject: deploy function git-svn-id: https://svn/ipuppet/trunk/modules/munin@778 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/plugin.pp | 35 +++++++++++++++++++++-------------- 1 file changed, 21 insertions(+), 14 deletions(-) diff --git a/manifests/plugin.pp b/manifests/plugin.pp index 0363317..ae57378 100644 --- a/manifests/plugin.pp +++ b/manifests/plugin.pp @@ -40,20 +40,10 @@ define munin::plugin ( } default: { debug ( "munin_plugin: making $plugin using src: $plugin_src" ) - case $operatingsystem { - centos, gentoo: { - file { $plugin: - ensure => "$script_path/${plugin_src}", - require => Package['munin-node']; - } - } - default: { - file { $plugin: - ensure => "$script_path/${plugin_src}", - require => Package['munin-node'], - notify => Service['munin-node']; - } - } + file { $plugin: + ensure => "$script_path/${plugin_src}", + require => Package['munin-node'], + notify => Service['munin-node']; } } } @@ -197,6 +187,23 @@ class munin::plugins::selinux inherits munin::plugins::base { plugin{"selinuxenforced": ensure => present;} } +define munin::plugins::deploy ($source = '') { + $real_source = $source ? { + '' => "munin/plugins/$name", + default => $source + } + include munin::plugins::scriptpaths + file { "munin_plugin_${name}: + path => "$script_path/$name", + source => "puppet://$servername/$real_source", + ensure => file, + mode => 0755, owner => root, group => 0; + } + + plugin{$name: ensure => present } + +} + class munin::plugins::dom0 inherits munin::plugins::base { file { [ "$script_path/xen" ]: -- cgit v1.2.3 From da9dc6cfaccebe21bef99211d7bb5b653dbda9a9 Mon Sep 17 00:00:00 2001 From: am Date: Fri, 8 Feb 2008 10:44:46 +0000 Subject: deploy aktiv git-svn-id: https://svn/ipuppet/trunk/modules/munin@779 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/plugin.pp | 64 +++++++++++------------------------------------------ 1 file changed, 13 insertions(+), 51 deletions(-) diff --git a/manifests/plugin.pp b/manifests/plugin.pp index ae57378..bbb3cc4 100644 --- a/manifests/plugin.pp +++ b/manifests/plugin.pp @@ -187,7 +187,7 @@ class munin::plugins::selinux inherits munin::plugins::base { plugin{"selinuxenforced": ensure => present;} } -define munin::plugins::deploy ($source = '') { +define munin::plugins::deploy ($source = '', $enabled = 'true') { $real_source = $source ? { '' => "munin/plugins/$name", default => $source @@ -198,36 +198,18 @@ define munin::plugins::deploy ($source = '') { source => "puppet://$servername/$real_source", ensure => file, mode => 0755, owner => root, group => 0; - } - - plugin{$name: ensure => present } + } + if $enabled { + plugin{$name: ensure => present } + } } class munin::plugins::dom0 inherits munin::plugins::base { - file { - [ "$script_path/xen" ]: - source => "puppet://$servername/munin/plugins/xen", - ensure => file, - mode => 0755, owner => root, group => 0; - [ "$script_path/xen-cpu" ]: - source => "puppet://$servername/munin/plugins/xen-cpu", - ensure => file, - mode => 0755, owner => root, group => 0; - [ "$script_path/xen_memory" ]: - source => "puppet://$servername/munin/plugins/xen_memory", - ensure => file, - mode => 0755, owner => root, group => 0; - [ "$script_path/xen_vbd" ]: - source => "puppet://$servername/munin/plugins/xen_vbd", - ensure => file, - mode => 0755, owner => root, group => 0; - } - - plugin { - [ xen, xen-cpu, xen_memory, xen_vbd ]: - ensure => present; - } + munin::plugins::deploy { "xen": } + munin::plugins::deploy { "xen-cpu": } + munin::plugins::deploy { "xen_memory": } + munin::plugins::deploy { "xen_vbd": } } class munin::plugins::domU inherits munin::plugins::base { @@ -235,31 +217,11 @@ class munin::plugins::domU inherits munin::plugins::base { } class munin::plugins::djbdns inherits munin::plugins::base { - file { - [ "$script_path/tinydns" ]: - source => "puppet://$servername/munin/plugins/tinydns", - ensure => file, - mode => 0755, owner => root, group => 0; - } - plugin { - [ tinydns ]: - ensure => present; - } + munin::plugins::deploy { "tinydns": } } class munin::plugins::postgres inherits munin::plugins::base { - file { - [ "$script_path/pg_conn" ]: - source => "puppet://$servername/munin/plugins/pg_conn", - ensure => file, - mode => 0755, owner => root, group => 0; - [ "$script_path/pg__connections" ]: - source => "puppet://$servername/munin/plugins/pg__connections", - ensure => file, - mode => 0755, owner => root, group => 0; - [ "$script_path/pg__locks" ]: - source => "puppet://$servername/munin/plugins/pg__locks", - ensure => file, - mode => 0755, owner => root, group => 0; - } + munin::plugins::deploy { "pg_conn": } + munin::plugins::deploy { "pg__connections": enabled => false } + munin::plugins::deploy { "pg__locks": enabled => false } } -- cgit v1.2.3 From 114b676cec4908441a8cab417f4fb5801994447c Mon Sep 17 00:00:00 2001 From: am Date: Fri, 8 Feb 2008 10:49:39 +0000 Subject: typo git-svn-id: https://svn/ipuppet/trunk/modules/munin@781 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/plugin.pp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/manifests/plugin.pp b/manifests/plugin.pp index bbb3cc4..a939b19 100644 --- a/manifests/plugin.pp +++ b/manifests/plugin.pp @@ -193,8 +193,8 @@ define munin::plugins::deploy ($source = '', $enabled = 'true') { default => $source } include munin::plugins::scriptpaths - file { "munin_plugin_${name}: - path => "$script_path/$name", + file { "munin_plugin_${name}": + path => "${script_path}/${name}", source => "puppet://$servername/$real_source", ensure => file, mode => 0755, owner => root, group => 0; -- cgit v1.2.3 From de8f419c512b5403ac5d4027a849f76e35124146 Mon Sep 17 00:00:00 2001 From: am Date: Fri, 8 Feb 2008 10:54:02 +0000 Subject: plugin(s) git-svn-id: https://svn/ipuppet/trunk/modules/munin@782 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/plugin.pp | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/manifests/plugin.pp b/manifests/plugin.pp index a939b19..a36eeaa 100644 --- a/manifests/plugin.pp +++ b/manifests/plugin.pp @@ -187,12 +187,12 @@ class munin::plugins::selinux inherits munin::plugins::base { plugin{"selinuxenforced": ensure => present;} } -define munin::plugins::deploy ($source = '', $enabled = 'true') { +define munin::plugin::deploy ($source = '', $enabled = 'true') { $real_source = $source ? { '' => "munin/plugins/$name", default => $source } - include munin::plugins::scriptpaths + include munin::plugin::scriptpaths file { "munin_plugin_${name}": path => "${script_path}/${name}", source => "puppet://$servername/$real_source", @@ -206,10 +206,10 @@ define munin::plugins::deploy ($source = '', $enabled = 'true') { } class munin::plugins::dom0 inherits munin::plugins::base { - munin::plugins::deploy { "xen": } - munin::plugins::deploy { "xen-cpu": } - munin::plugins::deploy { "xen_memory": } - munin::plugins::deploy { "xen_vbd": } + munin::plugin::deploy { "xen": } + munin::plugin::deploy { "xen-cpu": } + munin::plugin::deploy { "xen_memory": } + munin::plugin::deploy { "xen_vbd": } } class munin::plugins::domU inherits munin::plugins::base { @@ -217,11 +217,11 @@ class munin::plugins::domU inherits munin::plugins::base { } class munin::plugins::djbdns inherits munin::plugins::base { - munin::plugins::deploy { "tinydns": } + munin::plugin::deploy { "tinydns": } } class munin::plugins::postgres inherits munin::plugins::base { - munin::plugins::deploy { "pg_conn": } - munin::plugins::deploy { "pg__connections": enabled => false } - munin::plugins::deploy { "pg__locks": enabled => false } + munin::plugin::deploy { "pg_conn": } + munin::plugin::deploy { "pg__connections": enabled => false } + munin::plugin::deploy { "pg__locks": enabled => false } } -- cgit v1.2.3 From 98c15e46bb325d2f18616c5e080f94c47126b113 Mon Sep 17 00:00:00 2001 From: am Date: Fri, 8 Feb 2008 11:12:45 +0000 Subject: bla git-svn-id: https://svn/ipuppet/trunk/modules/munin@783 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/plugin.pp | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/manifests/plugin.pp b/manifests/plugin.pp index a36eeaa..c1a9cb8 100644 --- a/manifests/plugin.pp +++ b/manifests/plugin.pp @@ -27,10 +27,10 @@ define munin::plugin ( { include munin::plugin::scriptpaths - #$script_path = $script_path_in ? { '' => $script_path, default => $script_path_in } + $real_script_path = $script_path_in ? { '' => ${munin::plugin::scriptpaths::script_path}, default => $script_path_in } $plugin_src = $ensure ? { "present" => $name, default => $ensure } - debug ( "munin_plugin: name=$name, ensure=$ensure, script_path=$script_path" ) + debug ( "munin_plugin: name=$name, ensure=$ensure, script_path=${munin::plugin::scriptpaths::script_path}" ) $plugin = "/etc/munin/plugins/$name" $plugin_conf = "/etc/munin/plugin-conf.d/$name.conf" case $ensure { @@ -41,7 +41,7 @@ define munin::plugin ( default: { debug ( "munin_plugin: making $plugin using src: $plugin_src" ) file { $plugin: - ensure => "$script_path/${plugin_src}", + ensure => "${real_script_path}/${plugin_src}", require => Package['munin-node'], notify => Service['munin-node']; } @@ -82,7 +82,7 @@ define munin::remoteplugin($ensure = "present", $source, $config = '') { munin::plugin { $name: ensure => $ensure, config => $config, - script_path => "/var/lib/puppet/modules/munin/plugins", + script_path_in => "/var/lib/puppet/modules/munin/plugins", } } } @@ -192,9 +192,8 @@ define munin::plugin::deploy ($source = '', $enabled = 'true') { '' => "munin/plugins/$name", default => $source } - include munin::plugin::scriptpaths file { "munin_plugin_${name}": - path => "${script_path}/${name}", + path => "${munin::plugin::scriptpaths::script_path}/${name}", source => "puppet://$servername/$real_source", ensure => file, mode => 0755, owner => root, group => 0; -- cgit v1.2.3 From 1159cbfcb43ef81a72d7c029e8b25b75cfea4c1b Mon Sep 17 00:00:00 2001 From: am Date: Fri, 8 Feb 2008 11:16:46 +0000 Subject: debug msgs git-svn-id: https://svn/ipuppet/trunk/modules/munin@784 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/plugin.pp | 1 + 1 file changed, 1 insertion(+) diff --git a/manifests/plugin.pp b/manifests/plugin.pp index c1a9cb8..ced6795 100644 --- a/manifests/plugin.pp +++ b/manifests/plugin.pp @@ -192,6 +192,7 @@ define munin::plugin::deploy ($source = '', $enabled = 'true') { '' => "munin/plugins/$name", default => $source } + debug ( "munin_plugin_${name}: name=$name, source=$source, script_path=${munin::plugin::scriptpaths::script_path}" ) file { "munin_plugin_${name}": path => "${munin::plugin::scriptpaths::script_path}/${name}", source => "puppet://$servername/$real_source", -- cgit v1.2.3 From 9b983369ce90029a31a06f82b1ec59569ff66bd5 Mon Sep 17 00:00:00 2001 From: mh Date: Fri, 8 Feb 2008 11:26:08 +0000 Subject: new try git-svn-id: https://svn/ipuppet/trunk/modules/munin@785 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/plugin.pp | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/manifests/plugin.pp b/manifests/plugin.pp index ced6795..5e0db81 100644 --- a/manifests/plugin.pp +++ b/manifests/plugin.pp @@ -26,11 +26,10 @@ define munin::plugin ( $config = '') { - include munin::plugin::scriptpaths - $real_script_path = $script_path_in ? { '' => ${munin::plugin::scriptpaths::script_path}, default => $script_path_in } + $real_script_path = $script_path_in ? { '' => $munin::plugin::scriptpaths::script_path, default => $script_path_in } $plugin_src = $ensure ? { "present" => $name, default => $ensure } - debug ( "munin_plugin: name=$name, ensure=$ensure, script_path=${munin::plugin::scriptpaths::script_path}" ) + debug ( "munin_plugin: name=$name, ensure=$ensure, script_path=$munin::plugin::scriptpaths::script_path" ) $plugin = "/etc/munin/plugins/$name" $plugin_conf = "/etc/munin/plugin-conf.d/$name.conf" case $ensure { @@ -89,8 +88,6 @@ define munin::remoteplugin($ensure = "present", $source, $config = '') { } class munin::plugins::base { - include munin::plugin::scriptpaths - case $operatingsystem { centos: { file { @@ -192,9 +189,9 @@ define munin::plugin::deploy ($source = '', $enabled = 'true') { '' => "munin/plugins/$name", default => $source } - debug ( "munin_plugin_${name}: name=$name, source=$source, script_path=${munin::plugin::scriptpaths::script_path}" ) + debug ( "munin_plugin_${name}: name=$name, source=$source, script_path=$munin::plugin::scriptpaths::script_path" ) file { "munin_plugin_${name}": - path => "${munin::plugin::scriptpaths::script_path}/${name}", + path => "$munin::plugin::scriptpaths::script_path/${name}", source => "puppet://$servername/$real_source", ensure => file, mode => 0755, owner => root, group => 0; -- cgit v1.2.3 From d7db3dc055814e340bffe27592730299ce5cd198 Mon Sep 17 00:00:00 2001 From: am Date: Fri, 8 Feb 2008 11:31:56 +0000 Subject: include brauchts git-svn-id: https://svn/ipuppet/trunk/modules/munin@787 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/plugin.pp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/manifests/plugin.pp b/manifests/plugin.pp index 5e0db81..dfd506f 100644 --- a/manifests/plugin.pp +++ b/manifests/plugin.pp @@ -26,6 +26,7 @@ define munin::plugin ( $config = '') { + include munin::plugin::scriptpaths $real_script_path = $script_path_in ? { '' => $munin::plugin::scriptpaths::script_path, default => $script_path_in } $plugin_src = $ensure ? { "present" => $name, default => $ensure } @@ -189,6 +190,7 @@ define munin::plugin::deploy ($source = '', $enabled = 'true') { '' => "munin/plugins/$name", default => $source } + include munin::plugin::scriptpaths debug ( "munin_plugin_${name}: name=$name, source=$source, script_path=$munin::plugin::scriptpaths::script_path" ) file { "munin_plugin_${name}": path => "$munin::plugin::scriptpaths::script_path/${name}", -- cgit v1.2.3 From 55054d004c779531512da86db4c9040eaa76cf3c Mon Sep 17 00:00:00 2001 From: am Date: Fri, 8 Feb 2008 11:38:14 +0000 Subject: restliche plugins git-svn-id: https://svn/ipuppet/trunk/modules/munin@788 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/plugin.pp | 16 ++-------------- 1 file changed, 2 insertions(+), 14 deletions(-) diff --git a/manifests/plugin.pp b/manifests/plugin.pp index dfd506f..0cd1cb5 100644 --- a/manifests/plugin.pp +++ b/manifests/plugin.pp @@ -163,26 +163,14 @@ class munin::plugins::vserver inherits munin::plugins::base { } class munin::plugins::gentoo inherits munin::plugins::base { - file { "$script_path/gentoo_lastupdated": - source => "puppet://$servername/munin/plugins/gentoo_lastupdated", - ensure => file, - mode => 0755, owner => root, group => 0; - } - - plugin{"gentoo_lastupdated": ensure => present;} + munin::plugin::deploy { "gentoo_lastupdated": } } class munin::plugins::centos inherits munin::plugins::base { } class munin::plugins::selinux inherits munin::plugins::base { - file { "$script_path/selinuxenforced": - source => "puppet://$servername/munin/plugins/selinuxenforced", - ensure => file, - mode => 0755, owner => root, group => 0; - } - - plugin{"selinuxenforced": ensure => present;} + munin::plugin::deploy { "selinuxenforced": } } define munin::plugin::deploy ($source = '', $enabled = 'true') { -- cgit v1.2.3 From 322e46b3d2ac0447e5d681491c82df9fbba25292 Mon Sep 17 00:00:00 2001 From: mh Date: Thu, 14 Feb 2008 17:18:23 +0000 Subject: fixed lsb release stuff it should be like that git-svn-id: https://svn/ipuppet/trunk/modules/munin@815 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/init.pp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/manifests/init.pp b/manifests/init.pp index a1ea92c..9c4b1de 100644 --- a/manifests/init.pp +++ b/manifests/init.pp @@ -13,5 +13,7 @@ import "host.pp" import "client.pp" import "plugin.pp" -include assert_lsbdistcodename +case $operatingsystem { + debian,ubuntu: { include assert_lsbdistcodename } +} -- cgit v1.2.3 From 2ec5c3d5940384a008a3053e4f59454df7b114d4 Mon Sep 17 00:00:00 2001 From: am Date: Mon, 10 Mar 2008 13:59:07 +0000 Subject: =?UTF-8?q?*=20iostat=20nur=20f=C3=BCr=20dom0=20*=20firewall=20auf?= =?UTF-8?q?=20shorewall=20war=20deaktiviert=20..=20warum=3F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: https://svn/ipuppet/trunk/modules/munin@1059 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/plugin.pp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/manifests/plugin.pp b/manifests/plugin.pp index 0cd1cb5..e4702c2 100644 --- a/manifests/plugin.pp +++ b/manifests/plugin.pp @@ -135,7 +135,7 @@ class munin::plugins::interfaces inherits munin::plugins::base { class munin::plugins::linux inherits munin::plugins::base { plugin { - [ df_abs, forks, iostat, memory, processes, cpu, df_inode, irqstats, + [ df_abs, forks, memory, processes, cpu, df_inode, irqstats, netstat, open_files, swap, df, entropy, interrupts, load, open_inodes, vmstat ]: -- cgit v1.2.3 From 039b7118a4ad96b0e404084029255856b7f15034 Mon Sep 17 00:00:00 2001 From: mh Date: Mon, 17 Mar 2008 14:55:24 +0000 Subject: added gutsy link git-svn-id: https://svn/ipuppet/trunk/modules/munin@1072 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- templates/munin-node.conf.Debian.gutsy | 1 + 1 file changed, 1 insertion(+) create mode 120000 templates/munin-node.conf.Debian.gutsy diff --git a/templates/munin-node.conf.Debian.gutsy b/templates/munin-node.conf.Debian.gutsy new file mode 120000 index 0000000..e0646b9 --- /dev/null +++ b/templates/munin-node.conf.Debian.gutsy @@ -0,0 +1 @@ +munin-node.conf.Debian.etch \ No newline at end of file -- cgit v1.2.3 From 096514004dbdda6e9441a744e211a9584a8b84ad Mon Sep 17 00:00:00 2001 From: mh Date: Mon, 17 Mar 2008 15:05:24 +0000 Subject: fixed allow stuff git-svn-id: https://svn/ipuppet/trunk/modules/munin@1073 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- templates/munin-node.conf.Debian.etch | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/templates/munin-node.conf.Debian.etch b/templates/munin-node.conf.Debian.etch index 0673937..0f0f568 100644 --- a/templates/munin-node.conf.Debian.etch +++ b/templates/munin-node.conf.Debian.etch @@ -33,4 +33,5 @@ host_name <%= fqdn %> # regular expression, due to brain damage in Net::Server, which # doesn't understand CIDR-style network notation. You may repeat # the allow line as many times as you'd like -allow <%= munin_allow %> +allow <%= munin_allow1 %> +allow <%= munin_allow2 %> -- cgit v1.2.3 From 89ef873f7b1f26e670fb4abc8cadea8e87e76de0 Mon Sep 17 00:00:00 2001 From: mh Date: Fri, 21 Mar 2008 15:54:48 +0000 Subject: rearranged some munin stuff git-svn-id: https://svn/ipuppet/trunk/modules/munin@1081 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/client.pp | 8 +++++--- manifests/plugin.pp | 10 +++++----- 2 files changed, 10 insertions(+), 8 deletions(-) diff --git a/manifests/client.pp b/manifests/client.pp index 13f3e09..0a65418 100644 --- a/manifests/client.pp +++ b/manifests/client.pp @@ -39,9 +39,6 @@ class munin::client { guest: { include munin::plugins::vserver } default: { include munin::plugins::linux - case $virtual { - xen0: { include munin::plugins::dom0 } - } } } } @@ -49,6 +46,11 @@ class munin::client { err( "Don't know which munin plugins to install for $kernel" ) } } + case $virtual { + physical: { munin::plugins::physical } + xen0: { include munin::plugins::dom0 } + xenu: { include munin::plugins::domU } + } } diff --git a/manifests/plugin.pp b/manifests/plugin.pp index e4702c2..81bab27 100644 --- a/manifests/plugin.pp +++ b/manifests/plugin.pp @@ -169,10 +169,6 @@ class munin::plugins::gentoo inherits munin::plugins::base { class munin::plugins::centos inherits munin::plugins::base { } -class munin::plugins::selinux inherits munin::plugins::base { - munin::plugin::deploy { "selinuxenforced": } -} - define munin::plugin::deploy ($source = '', $enabled = 'true') { $real_source = $source ? { '' => "munin/plugins/$name", @@ -192,13 +188,17 @@ define munin::plugin::deploy ($source = '', $enabled = 'true') { } } -class munin::plugins::dom0 inherits munin::plugins::base { +class munin::plugins::dom0 inherits munin::plugins::physical { munin::plugin::deploy { "xen": } munin::plugin::deploy { "xen-cpu": } munin::plugin::deploy { "xen_memory": } munin::plugin::deploy { "xen_vbd": } } +class munin::plugins::physical inherits munin::plugins::base { + munin::plugin { iostat: } +} + class munin::plugins::domU inherits munin::plugins::base { plugin { if_eth0: ensure => "if_" } } -- cgit v1.2.3 From 1804eec4a2d9d99964373595da00349adc869cac Mon Sep 17 00:00:00 2001 From: mh Date: Fri, 21 Mar 2008 15:57:06 +0000 Subject: fixed typo git-svn-id: https://svn/ipuppet/trunk/modules/munin@1082 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/client.pp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/manifests/client.pp b/manifests/client.pp index 0a65418..dbf175a 100644 --- a/manifests/client.pp +++ b/manifests/client.pp @@ -47,7 +47,7 @@ class munin::client { } } case $virtual { - physical: { munin::plugins::physical } + physical: { include munin::plugins::physical } xen0: { include munin::plugins::dom0 } xenu: { include munin::plugins::domU } } -- cgit v1.2.3 From 82dc3da0817f5709d6bbc96043c90db4b55b4deb Mon Sep 17 00:00:00 2001 From: mh Date: Fri, 21 Mar 2008 15:58:48 +0000 Subject: removed unnedded definition git-svn-id: https://svn/ipuppet/trunk/modules/munin@1083 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/plugin.pp | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/manifests/plugin.pp b/manifests/plugin.pp index 81bab27..ebf1cd4 100644 --- a/manifests/plugin.pp +++ b/manifests/plugin.pp @@ -199,9 +199,7 @@ class munin::plugins::physical inherits munin::plugins::base { munin::plugin { iostat: } } -class munin::plugins::domU inherits munin::plugins::base { - plugin { if_eth0: ensure => "if_" } -} +class munin::plugins::domU inherits munin::plugins::base { } class munin::plugins::djbdns inherits munin::plugins::base { munin::plugin::deploy { "tinydns": } -- cgit v1.2.3 From ef97c202ad675255deb20bdfce59fe03ad757a63 Mon Sep 17 00:00:00 2001 From: mh Date: Sat, 29 Mar 2008 14:27:08 +0000 Subject: fixed header git-svn-id: https://svn/ipuppet/trunk/modules/munin@1142 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- files/plugins/selinuxenforced | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/files/plugins/selinuxenforced b/files/plugins/selinuxenforced index 2f88b9b..16a3f66 100755 --- a/files/plugins/selinuxenforced +++ b/files/plugins/selinuxenforced @@ -1,14 +1,9 @@ #!/bin/sh # -*- sh -*- # -# Plugin to count the daily amount of Virii (qmailscan) +# Plugin to monitor the status of selinux # -# Contributed by David Obando (david@cryptix.de) - 03.12.2005 -# - -# define the logfiles. when you rotate them at any other time than 00:00 you have to define two logfiles: -#LOG0=/var/spool/qmailscan/quarantine.log -#LOG1=/var/spool/qmailscan/quarantine.log.1 +# Contributed by admin(at)immerda.ch if [ "$1" = "autoconf" ]; then echo yes -- cgit v1.2.3 From a969b61bab854b4c4a9bb7f216073dd426514f73 Mon Sep 17 00:00:00 2001 From: mh Date: Sat, 29 Mar 2008 14:47:43 +0000 Subject: merged munin-module with davids git-svn-id: https://svn/ipuppet/trunk/modules/munin@1143 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/client.pp | 1 + manifests/host.pp | 9 ++++++++- plugins/puppet/parser/functions/muninport.rb | 7 ------- 3 files changed, 9 insertions(+), 8 deletions(-) delete mode 100644 plugins/puppet/parser/functions/muninport.rb diff --git a/manifests/client.pp b/manifests/client.pp index dbf175a..c81e6f4 100644 --- a/manifests/client.pp +++ b/manifests/client.pp @@ -74,6 +74,7 @@ define munin::register_snmp() @@file { "munin_snmp_${name}": path => "${NODESDIR}/${name}", ensure => present, content => template("munin/snmpclient.erb"), + tag => 'munin', } } diff --git a/manifests/host.pp b/manifests/host.pp index 844698d..286f5ee 100644 --- a/manifests/host.pp +++ b/manifests/host.pp @@ -6,12 +6,19 @@ class munin::host { package { [ "munin", "nmap"]: ensure => installed, } - File <<||>> + File <<| tag == 'munin' |>> concatenated_file { "/etc/munin/munin.conf": dir => $NODESDIR, header => "/etc/munin/munin.conf.header", } + + file { ["/var/log/munin-update.log", "/var/log/munin-limits.log", + "/var/log/munin-graph.log", "/var/log/munin-html.log"]: + ensure => present, + mode => 640, owner => munin, group => 0; + } + } diff --git a/plugins/puppet/parser/functions/muninport.rb b/plugins/puppet/parser/functions/muninport.rb deleted file mode 100644 index d0b5909..0000000 --- a/plugins/puppet/parser/functions/muninport.rb +++ /dev/null @@ -1,7 +0,0 @@ -# immerda -module Puppet::Parser::Functions - newfunction(:muninport, :type => :rvalue) do |args| - args[0]+65400 - end -end - -- cgit v1.2.3 From bb8699288512aa2d1de7ad12b0420146f8daabfd Mon Sep 17 00:00:00 2001 From: mh Date: Sun, 30 Mar 2008 17:34:40 +0000 Subject: added default apache modules git-svn-id: https://svn/ipuppet/trunk/modules/munin@1152 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- files/plugins/apache_activity | 99 +++++++++++++++++++++++++++++++++++++++++++ manifests/host.pp | 1 + manifests/plugin.pp | 12 ++++++ 3 files changed, 112 insertions(+) create mode 100755 files/plugins/apache_activity diff --git a/files/plugins/apache_activity b/files/plugins/apache_activity new file mode 100755 index 0000000..65fc072 --- /dev/null +++ b/files/plugins/apache_activity @@ -0,0 +1,99 @@ +#!/usr/bin/perl +# +# Parameters supported: +# +# config +# autoconf +# +# Configurable variables +# +# url - Override default status-url +# +# Magic markers: +#%# family=auto +#%# capabilities=autoconf + +my $ret = undef; +if (!eval "require LWP::UserAgent;") { + $ret = "LWP::UserAgent not found"; +} + +my $URL = exists $ENV{'url'} ? $ENV{'url'} : "http://127.0.0.1:%d/server-status?auto"; +my @PORTS = exists $ENV{'ports'} ? split(' ', $ENV{'ports'}) : (80); +my %chars = ( + # '\_' => 'Waiting', + # 'S' => 'Starting up', + 'R' => 'Reading request', + 'W' => 'Sending reply', + 'K' => 'Keepalive', + 'D' => 'DNS lookup', + 'C' => 'Closing', + # 'L' => 'Logging', + # 'G' => 'Gracefully finishing', + # 'I' => 'Idle cleanup', + # '\.' => 'Open slot', + ); + +# "_" Waiting for Connection, "S" Starting up, "R" Reading Request, +# "W" Sending Reply, "K" Keepalive (read), "D" DNS Lookup, +# "C" Closing connection, "L" Logging, "G" Gracefully finishing, +# "I" Idle cleanup of worker, "." Open slot with no current process + +if (exists $ARGV[0] and $ARGV[0] eq "autoconf") { + if ($ret) { + print "no ($ret)\n"; + exit 1; + } + my $ua = LWP::UserAgent->new(timeout => 30); + my @badports; + + foreach my $port (@PORTS) { + my $url = sprintf $URL, $port; + my $response = $ua->request(HTTP::Request->new('GET',$url)); + push @badports, $port unless $response->is_success and $response->content =~ /Scoreboard/im; + } + + if (@badports) { + print "no (no apache server-status on ports @badports)\n"; + exit 1; + } else { + print "yes\n"; + exit 0; + } +} + +if (exists $ARGV[0] and $ARGV[0] eq "config") { + print "graph_title Apache activity\n"; + print "graph_args --base 1000 -l 0\n"; + print "graph_category apache\n"; + print "graph_vlabel processes\n"; + foreach my $port (@PORTS) { + while (my ($char, $val) = each (%chars)) { + $char =~ s/\\\./dot/; + $char =~ s/\\\_/underline/; + print "activity_${port}_${char}.label "; + print $val, "\n"; + print "activity_${port}_${char}.type GAUGE\n"; + } + } + exit 0; +} + +foreach my $port (@PORTS) { + my $ua = LWP::UserAgent->new (timeout => 30); + my $url = sprintf $URL, $port; + my $response = $ua->request (HTTP::Request->new('GET',$url)); + if ($response->content =~ /^Scoreboard\:\s?(.*)$/sm) { + my $string = $1; + chomp $string; + my @act = split (//, $string); + foreach my $char (keys (%chars)) { + my $num = scalar (grep (/$char/, @act)); + $char =~ s/\\\./dot/; + $char =~ s/\\\_/underline/; + print "activity_${port}_${char}.value $num\n"; + } + } +} + + diff --git a/manifests/host.pp b/manifests/host.pp index 286f5ee..3ae6065 100644 --- a/manifests/host.pp +++ b/manifests/host.pp @@ -19,6 +19,7 @@ class munin::host mode => 640, owner => munin, group => 0; } + munin::plugins::djbdns } diff --git a/manifests/plugin.pp b/manifests/plugin.pp index ebf1cd4..8a76df4 100644 --- a/manifests/plugin.pp +++ b/manifests/plugin.pp @@ -199,12 +199,24 @@ class munin::plugins::physical inherits munin::plugins::base { munin::plugin { iostat: } } +class munin::plugins::muninhost inherits munin::plugins::base { + munin::plugin { munin_update: } + munin::plugin { munin_graph: } +} + class munin::plugins::domU inherits munin::plugins::base { } class munin::plugins::djbdns inherits munin::plugins::base { munin::plugin::deploy { "tinydns": } } +class munin::plugins::apache inherits munin::plugins::base { + munin::plugin::deploy { "apache_accesses": } + munin::plugin::deploy { "apache_processes": } + munin::plugin::deploy { "apache_volume": } + munin::plugin::deploy { "apache_activity": } +} + class munin::plugins::postgres inherits munin::plugins::base { munin::plugin::deploy { "pg_conn": } munin::plugin::deploy { "pg__connections": enabled => false } -- cgit v1.2.3 From 060befb2e08b5419d7cb90ad9ff80d72ef3b1889 Mon Sep 17 00:00:00 2001 From: mh Date: Sun, 30 Mar 2008 17:49:13 +0000 Subject: added selinux plugins git-svn-id: https://svn/ipuppet/trunk/modules/munin@1153 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/plugin.pp | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/manifests/plugin.pp b/manifests/plugin.pp index 8a76df4..39e9742 100644 --- a/manifests/plugin.pp +++ b/manifests/plugin.pp @@ -148,18 +148,14 @@ class munin::plugins::linux inherits munin::plugins::base { } class munin::plugins::debian inherits munin::plugins::base { - plugin { apt_all: ensure => present; } - } class munin::plugins::vserver inherits munin::plugins::base { - plugin { [ netstat, processes ]: ensure => present; } - } class munin::plugins::gentoo inherits munin::plugins::base { @@ -217,6 +213,11 @@ class munin::plugins::apache inherits munin::plugins::base { munin::plugin::deploy { "apache_activity": } } +class munin::plugins::selinux inherits munin::plugins::base { + munin::plugin::deploy { "selinuxenforced": } + munin::plugin::deploy { "selinux_avcstats": } +} + class munin::plugins::postgres inherits munin::plugins::base { munin::plugin::deploy { "pg_conn": } munin::plugin::deploy { "pg__connections": enabled => false } -- cgit v1.2.3 From e76dd0c92ee5d4dae78ef59013255339bf48e331 Mon Sep 17 00:00:00 2001 From: mh Date: Sun, 30 Mar 2008 17:51:13 +0000 Subject: fixed typo git-svn-id: https://svn/ipuppet/trunk/modules/munin@1154 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/host.pp | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/manifests/host.pp b/manifests/host.pp index 3ae6065..4625ba9 100644 --- a/manifests/host.pp +++ b/manifests/host.pp @@ -19,8 +19,7 @@ class munin::host mode => 640, owner => munin, group => 0; } - munin::plugins::djbdns - + include munin::plugins::muninhost } class munin::snmp_collector -- cgit v1.2.3 From 13574dc22d09138b40433ff906efc2ab4895553e Mon Sep 17 00:00:00 2001 From: mh Date: Sat, 12 Apr 2008 14:12:53 +0000 Subject: extending apache to centos usage, vhost and crypto stuff on immer8 and class to enable server-status for munin-plugins, where not yet done git-svn-id: https://svn/ipuppet/trunk/modules/munin@1212 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/plugin.pp | 1 + 1 file changed, 1 insertion(+) diff --git a/manifests/plugin.pp b/manifests/plugin.pp index 39e9742..bc9f00c 100644 --- a/manifests/plugin.pp +++ b/manifests/plugin.pp @@ -207,6 +207,7 @@ class munin::plugins::djbdns inherits munin::plugins::base { } class munin::plugins::apache inherits munin::plugins::base { + include apache::status munin::plugin::deploy { "apache_accesses": } munin::plugin::deploy { "apache_processes": } munin::plugin::deploy { "apache_volume": } -- cgit v1.2.3 From 6ae8a3c99f66f63c51eb76fc9b3e4b49273c5b2c Mon Sep 17 00:00:00 2001 From: mh Date: Sat, 12 Apr 2008 15:02:34 +0000 Subject: fixed uneeded deployment and directories git-svn-id: https://svn/ipuppet/trunk/modules/munin@1217 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/plugin.pp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/manifests/plugin.pp b/manifests/plugin.pp index bc9f00c..dbf8eb1 100644 --- a/manifests/plugin.pp +++ b/manifests/plugin.pp @@ -208,9 +208,9 @@ class munin::plugins::djbdns inherits munin::plugins::base { class munin::plugins::apache inherits munin::plugins::base { include apache::status - munin::plugin::deploy { "apache_accesses": } - munin::plugin::deploy { "apache_processes": } - munin::plugin::deploy { "apache_volume": } + munin::plugin{ "apache_accesses": } + munin::plugin{ "apache_processes": } + munin::plugin{ "apache_volume": } munin::plugin::deploy { "apache_activity": } } -- cgit v1.2.3 From 3de81e20f12d274efb0352693e394e98c1484c2b Mon Sep 17 00:00:00 2001 From: mh Date: Sun, 13 Apr 2008 17:15:48 +0000 Subject: not needed as this make it appear everywhere the exim stuff git-svn-id: https://svn/ipuppet/trunk/modules/munin@1222 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- templates/defaultclient.erb | 1 - 1 file changed, 1 deletion(-) diff --git a/templates/defaultclient.erb b/templates/defaultclient.erb index 954a0cb..ddce1bb 100644 --- a/templates/defaultclient.erb +++ b/templates/defaultclient.erb @@ -11,4 +11,3 @@ address <%= munin_host_real %> port <%= munin_port_real %> use_node_name yes - exim_mailstats.graph_period minute -- cgit v1.2.3 From 8b017ab9ff19f9a3773603fc33cc3820ec730c9e Mon Sep 17 00:00:00 2001 From: mh Date: Fri, 18 Apr 2008 11:47:24 +0000 Subject: rearranged some definitions, fixed config issues git-svn-id: https://svn/ipuppet/trunk/modules/munin@1229 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/plugin.pp | 56 ++++++++++++++++++++++++++++++----------------------- 1 file changed, 32 insertions(+), 24 deletions(-) diff --git a/manifests/plugin.pp b/manifests/plugin.pp index dbf8eb1..782f9f2 100644 --- a/manifests/plugin.pp +++ b/manifests/plugin.pp @@ -1,6 +1,10 @@ # plugin.pp - configure a specific munin plugin # Copyright (C) 2007 David Schmitt # See LICENSE for the full license granted to you. +# adapted and improved by admin(at)immerda.ch + + +### configpaths class munin::plugin::scriptpaths { case $operatingsystem { @@ -19,6 +23,7 @@ class munin::plugin::scriptpaths { } } +### defines define munin::plugin ( $ensure = "present", @@ -87,6 +92,26 @@ define munin::remoteplugin($ensure = "present", $source, $config = '') { } } } +define munin::plugin::deploy ($source = '', $enabled = 'true') { + $real_source = $source ? { + '' => "munin/plugins/$name", + default => $source + } + include munin::plugin::scriptpaths + debug ( "munin_plugin_${name}: name=$name, source=$source, script_path=$munin::plugin::scriptpaths::script_path" ) + file { "munin_plugin_${name}": + path => "$munin::plugin::scriptpaths::script_path/${name}", + source => "puppet://$servername/$real_source", + ensure => file, + mode => 0755, owner => root, group => 0; + } + + if $enabled { + plugin{$name: ensure => present } + } +} + +### clases for plugins class munin::plugins::base { case $operatingsystem { @@ -148,47 +173,30 @@ class munin::plugins::linux inherits munin::plugins::base { } class munin::plugins::debian inherits munin::plugins::base { - plugin { apt_all: ensure => present; } + munin::plugin { apt_all: ensure => present; } } class munin::plugins::vserver inherits munin::plugins::base { - plugin { + munin::plugin { [ netstat, processes ]: ensure => present; } } class munin::plugins::gentoo inherits munin::plugins::base { - munin::plugin::deploy { "gentoo_lastupdated": } + munin::plugin::deploy { "gentoo_lastupdated": config => "user portage\nenv.logfile /var/log/emerge.log\nenv.tail /usr/bin/tail\nenv.grep /bin/grep"} } class munin::plugins::centos inherits munin::plugins::base { } -define munin::plugin::deploy ($source = '', $enabled = 'true') { - $real_source = $source ? { - '' => "munin/plugins/$name", - default => $source - } - include munin::plugin::scriptpaths - debug ( "munin_plugin_${name}: name=$name, source=$source, script_path=$munin::plugin::scriptpaths::script_path" ) - file { "munin_plugin_${name}": - path => "$munin::plugin::scriptpaths::script_path/${name}", - source => "puppet://$servername/$real_source", - ensure => file, - mode => 0755, owner => root, group => 0; - } - if $enabled { - plugin{$name: ensure => present } - } -} class munin::plugins::dom0 inherits munin::plugins::physical { - munin::plugin::deploy { "xen": } - munin::plugin::deploy { "xen-cpu": } - munin::plugin::deploy { "xen_memory": } - munin::plugin::deploy { "xen_vbd": } + munin::plugin::deploy { "xen": config => "user root"} + munin::plugin::deploy { "xen-cpu": config => "user root"} + munin::plugin::deploy { "xen_memory": config => "user root"} + munin::plugin::deploy { "xen_vbd": config => "user root"} } class munin::plugins::physical inherits munin::plugins::base { -- cgit v1.2.3 From f64b68757b2a26e77628060fe255cf1de3b2c0cb Mon Sep 17 00:00:00 2001 From: mh Date: Fri, 18 Apr 2008 11:49:00 +0000 Subject: added load borders git-svn-id: https://svn/ipuppet/trunk/modules/munin@1230 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- templates/defaultclient.erb | 2 ++ 1 file changed, 2 insertions(+) diff --git a/templates/defaultclient.erb b/templates/defaultclient.erb index ddce1bb..5611bf4 100644 --- a/templates/defaultclient.erb +++ b/templates/defaultclient.erb @@ -11,3 +11,5 @@ address <%= munin_host_real %> port <%= munin_port_real %> use_node_name yes + load.load.warning 5 + load.load.critical 10 -- cgit v1.2.3 From 4b66892e98b993264e396b95a641c744a95c83c3 Mon Sep 17 00:00:00 2001 From: mh Date: Fri, 18 Apr 2008 12:04:59 +0000 Subject: fixed params and made it more all the same way git-svn-id: https://svn/ipuppet/trunk/modules/munin@1231 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/plugin.pp | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/manifests/plugin.pp b/manifests/plugin.pp index 782f9f2..97bcbf3 100644 --- a/manifests/plugin.pp +++ b/manifests/plugin.pp @@ -92,7 +92,7 @@ define munin::remoteplugin($ensure = "present", $source, $config = '') { } } } -define munin::plugin::deploy ($source = '', $enabled = 'true') { +define munin::plugin::deploy ($source = '', $ensure = 'present', $config = '') { $real_source = $source ? { '' => "munin/plugins/$name", default => $source @@ -106,9 +106,7 @@ define munin::plugin::deploy ($source = '', $enabled = 'true') { mode => 0755, owner => root, group => 0; } - if $enabled { - plugin{$name: ensure => present } - } + munin::plugin{$name: ensure => $ensure, config => $config } } ### clases for plugins -- cgit v1.2.3 From ebe1a5fdc83e550529fb11f6dd136bda38a0c689 Mon Sep 17 00:00:00 2001 From: mh Date: Fri, 18 Apr 2008 14:51:32 +0000 Subject: fixed renaming git-svn-id: https://svn/ipuppet/trunk/modules/munin@1236 d66ca3ae-40d7-4aa7-90d4-87d79ca94279 --- manifests/plugin.pp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/manifests/plugin.pp b/manifests/plugin.pp index 97bcbf3..2b66ce2 100644 --- a/manifests/plugin.pp +++ b/manifests/plugin.pp @@ -227,6 +227,6 @@ class munin::plugins::selinux inherits munin::plugins::base { class munin::plugins::postgres inherits munin::plugins::base { munin::plugin::deploy { "pg_conn": } - munin::plugin::deploy { "pg__connections": enabled => false } - munin::plugin::deploy { "pg__locks": enabled => false } + munin::plugin::deploy { "pg__connections": ensure => false } + munin::plugin::deploy { "pg__locks": ensure => false } } -- cgit v1.2.3