X-Git-Url: https://git.adam-barratt.org.uk/?a=blobdiff_plain;f=modules%2Fmunin%2Fmanifests%2Finit.pp;h=87ba7488412da9bc8eb6d8081786fe3d7d207e41;hb=6f10c816da4e6a1b8e917214f0bcb9001602523c;hp=19b563f4c2a8216bd43f852b02fc9fd1942b1341;hpb=b5643329942ff7a0236c3da65725fb50f2ad21d8;p=mirror%2Fdsa-puppet.git diff --git a/modules/munin/manifests/init.pp b/modules/munin/manifests/init.pp index 19b563f4c..87ba74884 100644 --- a/modules/munin/manifests/init.pp +++ b/modules/munin/manifests/init.pp @@ -1,90 +1,80 @@ +# our munin class class munin { + package { 'munin-node': + ensure => installed + } - package { 'munin-node': - ensure => installed - } + service { 'munin-node': + ensure => running, + require => Package['munin-node'], + } - service { 'munin-node': - ensure => running, - require => Package['munin-node'], - } + file { '/var/log/munin': + ensure => directory, + owner => root, + group => 'www-data', + mode => '0755', + } - $owner = $::lsbdistcodename ? { - squeeze => munin, - default => root, - } + file { '/etc/munin/munin-node.conf': + content => template('munin/munin-node.conf.erb'), + require => Package['munin-node'], + notify => Service['munin-node'], + } - $gid = $::lsbdistcodename ? { - squeeze => adm, - default => 'www-data', - } + file { '/etc/munin/plugin-conf.d/munin-node': + content => template('munin/munin-node.plugin.conf.erb'), + require => Package['munin-node'], + notify => Service['munin-node'], + } - file { '/var/log/munin': - ensure => directory, - owner => $owner, - group => $gid, - mode => '0755', - } + file { '/etc/logrotate.d/munin-node': + source => 'puppet:///modules/munin/logrotate', + require => Package['munin-node'], + } - file { '/etc/munin/munin-node.conf': - content => template('munin/munin-node.conf.erb'), - require => Package['munin-node'], - notify => Service['munin-node'], - } + file { '/etc/munin/plugins/df': + ensure => link, + target => '/usr/share/munin/plugins/df', + require => Package['munin-node'], + notify => Service['munin-node'], + } - file { '/etc/munin/plugin-conf.d/munin-node': - content => template('munin/munin-node.plugin.conf.erb'), - require => Package['munin-node'], - notify => Service['munin-node'], - } + file { '/etc/munin/plugins/df_abs': + ensure => file, + source => 'puppet:///modules/munin/df-wrap', + mode => '0555', + require => Package['munin-node'], + notify => Service['munin-node'], + } - file { '/etc/logrotate.d/munin-node': - source => 'puppet:///modules/munin/logrotate', - require => Package['munin-node'], - } + file { '/etc/munin/plugins/df_inode': + ensure => link, + target => '/usr/share/munin/plugins/df_inode', + require => Package['munin-node'], + notify => Service['munin-node'], + } - file { [ '/etc/munin/plugins/df', '/etc/munin/plugins/df_abs', '/etc/munin/plugins/df_inode' ]: - source => 'puppet:///modules/munin/df-wrap', - mode => '0555', - require => Package['munin-node'], - notify => Service['munin-node'], - } + @@munin::master_per_node { $::fqdn: } - @ferm::rule { 'dsa-munin-v4': - description => 'Allow munin from munin master', - rule => 'proto tcp mod state state (NEW) dport (munin) @subchain \'munin\' { saddr ($HOST_MUNIN_V4 $HOST_NAGIOS_V4) ACCEPT; }', - notarule => true, - } - - @ferm::rule { 'dsa-munin-v6': - description => 'Allow munin from munin master', - domain => 'ip6', - rule => 'proto tcp mod state state (NEW) dport (munin) @subchain \'munin\' { saddr ($HOST_MUNIN_V6 $HOST_NAGIOS_V6) ACCEPT; }', - notarule => true, - } - - @@munin::master-per-node { - $::fqdn: - ipaddress => $::ipaddress, - munin_async => $::munin_async, - ; - } - - #if $::munin_async and str2bool($::munin_async) == true { - # file { '/etc/ssh/userkeys/munin-async': - # source => 'puppet:///modules/munin/munin-async-authkeys', - # } - #} else { - # file { '/etc/ssh/userkeys/munin-async': - # ensure => 'absent', - # } - #} - if $::lsbmajdistrelease >= 7 { - package { 'munin-async': - ensure => installed - } - file { '/etc/ssh/userkeys/munin-async': - source => 'puppet:///modules/munin/munin-async-authkeys', - } - } + package { 'munin-async': + ensure => installed + } + service { 'munin-async': + ensure => running, + require => Package['munin-async'], + } + dsa_systemd::override { 'munin-async': + content => @("EOF"), + [Service] + RestartSec=10 + | EOF + } + file { '/etc/ssh/userkeys/munin-async': + ensure => 'absent', + } + ssh::authorized_key_collect { 'munin-async-fetcher': + target_user => 'munin-async', + collect_tag => 'munin::munin-async-fetch', + } }