summaryrefslogtreecommitdiff
path: root/manifests/plugins/base.pp
blob: 80a957e712008cd8883b5aa415acb0890e8d07e9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
class munin::plugins::base {
    file {
        [ '/etc/munin/plugins', '/etc/munin/plugin-conf.d' ]:
            source => "puppet:///modules/common/empty",
            ignore => [ '\.ignore', 'snmp_*' ],
            ensure => directory, checksum => mtime,
            recurse => true, purge => true, force => true,
            mode => 0755, owner => root, group => 0,
            notify => Service['munin-node'];
        '/etc/munin/plugin-conf.d/munin-node':
            ensure => present,
            mode => 0644, owner => root, group => 0,
            notify => Service['munin-node'],
    }

    munin::plugin {
        [ df, cpu, interrupts, load, memory, netstat, open_files,
            processes, swap, uptime, users, vmstat
        ]:
            ensure => present,
    }
    include munin::plugins::interfaces

    case $kernel {
        openbsd: {
            File['/etc/munin/plugin-conf.d/munin-node']{
                before => File['/var/run/munin'],
            }
        }
        default: {
            File['/etc/munin/plugin-conf.d/munin-node']{
                before => Package['munin-node'],
            }
        }
    }
    case $kernel {
        linux: {
            case $vserver {
                guest: { include munin::plugins::vserver }
                default: {
                    include munin::plugins::linux
                }
            }
        }
    }
    case $virtual {
        physical: { include munin::plugins::physical }
        xen0: { include munin::plugins::dom0 }
    }
}