53 lines
1.1 KiB
Puppet
53 lines
1.1 KiB
Puppet
class puppet::puppetmaster ($ensure = 'present', $puppetqd = false) {
|
|
require 'puppet::common'
|
|
|
|
if !defined(Class['puppet::puppetlabs_apt']) {
|
|
class { 'puppet::puppetlabs_apt': }
|
|
require 'puppet::puppetlabs_apt'
|
|
}
|
|
|
|
if $puppetqd {
|
|
class { 'activemq': ensure => $ensure }
|
|
|
|
package { 'libnet-arp-perl': ensure => $ensure }
|
|
|
|
service { 'stompserver':
|
|
ensure => false,
|
|
enable => false,
|
|
before => Class['activemq'],
|
|
}
|
|
|
|
service { 'puppetqd':
|
|
ensure => running,
|
|
pattern => 'puppet queue queue',
|
|
enable => true,
|
|
}
|
|
}
|
|
|
|
if defined(Class['ganglia::monitor']) {
|
|
Ganglia::Gmetric::Cron {
|
|
source => 'puppet/ganglia',
|
|
ensure => $ensure,
|
|
}
|
|
|
|
ganglia::gmetric::cron {
|
|
'puppetmaster.rb':
|
|
runwhen => '5';
|
|
|
|
'puppetmaster_compiletime.rb':
|
|
runwhen => '60',
|
|
}
|
|
}
|
|
|
|
# ## remove disk reports from time to time
|
|
tidy { "${::puppet_vardir}/reports":
|
|
age => '1d',
|
|
recurse => true,
|
|
backup => false,
|
|
}
|
|
|
|
# create [private] directories
|
|
# file { $puppet_privdir: ensure => directory }
|
|
# Puppet::Puppetmaster::Privatedir <<| |>>
|
|
}
|