Newer
Older
# Installs and configures Monit monitoring tool.
class ubuntu_server::monit($admin_emails, $admin_user = 'madmin', $admin_passwd = 'gEt0ffMyL4wn', $mailserver = 'mailer.gwdg.de', $monit_basis_config_template = 'ubuntu_server/etc/monit/conf.d/config.erb', $monit_filesystems_config_template = 'ubuntu_server/etc/monit/conf.d/filesystems.erb', $monit_config_dir = 'puppet:///modules/ubuntu_server/etc/monit/conf.d', $docker_check = false, $puppet_check = false) {
exec{'check_opt':
creates => '/opt/',
command => 'mkdir /opt/',
path => $::path,
before => Package['monit'],
content => template($monit_basis_config_template),
require => Package['monit'],
} ~> Service['monit']
file{'/etc/monit/conf.d/filesystems':
content => template($monit_filesystems_config_template),
require => Package['monit'],
} ~> Service['monit']
require => Package['monit'],
}
file{'monit_configs':
ensure => directory,
path => '/etc/monit/conf.d',
source => $monit_config_dir,
recurse => remote,
require => Package['monit'],
} ~> Service['monit']
file{'/opt/monit':
ensure => directory,
}
file{'docker_test':
ensure => present,
path => '/opt/monit/docker-ps',
source => 'puppet:///modules/ubuntu_server/opt/monit/docker-ps',
mode => '0740',
}
file{'/etc/monit/conf.d/docker-ps':
ensure => present,
source => 'puppet:///modules/ubuntu_server/etc/monit/conf.d-extras/docker-ps',
require => Package['monit'],
} ~> Service['monit']
}
if $puppet_check == true {
file{'/etc/monit/conf.d/puppet-agent':
ensure => present,
source => 'puppet:///modules/ubuntu_server/etc/monit/conf.d-extras/puppet-agent',
require => Package['monit'],
} ~> Service['monit']
}