fix munin 1
[mirror/dsa-puppet.git] / modules / munin / manifests / init.pp
1 class munin {
2
3         package { 'munin-node':
4                 ensure => installed
5         }
6
7         service { 'munin-node':
8                 ensure  => running,
9                 require => Package['munin-node'],
10         }
11
12         file { '/var/log/munin':
13                 ensure => directory,
14                 owner  => root,
15                 group  => 'www-data',
16                 mode   => '0755',
17         }
18
19         file { '/etc/munin/munin-node.conf':
20                 content => template('munin/munin-node.conf.erb'),
21                 require => Package['munin-node'],
22                 notify  => Service['munin-node'],
23         }
24
25         file { '/etc/munin/plugin-conf.d/munin-node':
26                 content => template('munin/munin-node.plugin.conf.erb'),
27                 require => Package['munin-node'],
28                 notify  => Service['munin-node'],
29         }
30
31         file { '/etc/logrotate.d/munin-node':
32                 source => 'puppet:///modules/munin/logrotate',
33                 require => Package['munin-node'],
34         }
35
36         file { '/etc/munin/plugins/df':
37                 ensure  => link,
38                 target  => '/usr/share/munin/plugins/df',
39                 require => Package['munin-node'],
40                 notify  => Service['munin-node'],
41         }
42
43         file { '/etc/munin/plugins/df_abs':
44                 ensure  => file,
45                 source => 'puppet:///modules/munin/df-wrap',
46                 mode    => '0555',
47                 require => Package['munin-node'],
48                 notify  => Service['munin-node'],
49         }
50
51         file { '/etc/munin/plugins/df_inode':
52                 ensure  => link,
53                 target  => '/usr/share/munin/plugins/df_inode',
54                 require => Package['munin-node'],
55                 notify  => Service['munin-node'],
56         }
57
58         @ferm::rule { 'dsa-munin-v4':
59                 description     => 'Allow munin from munin master',
60                 rule            => 'proto tcp mod state state (NEW) dport (munin) @subchain \'munin\' { saddr ($HOST_MUNIN_V4 $HOST_NAGIOS_V4) ACCEPT; }',
61                 notarule        => true,
62         }
63
64         @ferm::rule { 'dsa-munin-v6':
65                 description     => 'Allow munin from munin master',
66                 domain          => 'ip6',
67                 rule            => 'proto tcp mod state state (NEW) dport (munin) @subchain \'munin\' { saddr ($HOST_MUNIN_V6 $HOST_NAGIOS_V6) ACCEPT; }',
68                 notarule        => true,
69         }
70
71         @@munin::master_per_node { $::fqdn:
72                         ipaddress   => $::ipaddress,
73                         munin_async => $::munin_async,
74         }
75
76         #if $::munin_async and str2bool($::munin_async) == true {
77         #       file { '/etc/ssh/userkeys/munin-async':
78         #               source => 'puppet:///modules/munin/munin-async-authkeys',
79         #       }
80         #} else {
81         #       file { '/etc/ssh/userkeys/munin-async':
82         #               ensure => 'absent',
83         #       }
84         #}
85         package { 'munin-async':
86                 ensure => installed
87         }
88         file { '/etc/ssh/userkeys/munin-async':
89                 source => 'puppet:///modules/munin/munin-async-authkeys',
90         }
91 }