+define activate_munin_check($ensure=present, script=$name) {
+ case $ensure {
+ present: {
+ file { "/etc/munin/plugins/$name":
+ ensure => "/usr/share/munin/plugins/$script",
+ notify => Exec["munin-node restart"];
+ }
+ }
+ default: {
+ file { "/etc/munin/plugins/$name":
+ ensure => $ensure,
+ notify => Exec["munin-node restart"];
+ }
+ }
+ }
+}
+
class munin-node {
- package { munin-node: ensure => latest }
+ package { munin-node: ensure => installed }
+
+ activate_munin_check {
+ "cpu":;
+ "df":;
+ "df_abs":;
+ "df_inode":;
+ "entropy":;
+ "forks":;
+ "interrupts":;
+ "iostat":;
+ "irqstats":;
+ "load":;
+ "memory":;
+ "ntp_offset":;
+ "open_files":;
+ "open_inodes":;
+ "processes":;
+ "swap":;
+ "uptime":;
+ "vmstat":;
+ }
file { "/etc/munin/munin-node.conf":
- owner => root,
- group => root,
- mode => 664,
source => [ "puppet:///munin-node/per-host/$fqdn/munin-node.conf",
"puppet:///munin-node/common/munin-node.conf" ],
require => Package["munin-node"],