merged
This commit is contained in:
21
manifests/client.pp
Normal file
21
manifests/client.pp
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
class puppet::client (
|
||||||
|
$ensure = 'present',
|
||||||
|
$version = $::PUPPET_VERSION) {
|
||||||
|
class { 'puppet':
|
||||||
|
daemonize => false,
|
||||||
|
require => Exec['apt_update'],
|
||||||
|
}
|
||||||
|
|
||||||
|
if !defined(Class['puppet::puppetlabs_apt']) {
|
||||||
|
class { 'puppet::puppetlabs_apt': }
|
||||||
|
require 'puppet::puppetlabs_apt'
|
||||||
|
}
|
||||||
|
|
||||||
|
apt::pin { 'puppet':
|
||||||
|
version => $version,
|
||||||
|
packages => 'puppet*',
|
||||||
|
priority => '100',
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
@@ -1,11 +1,11 @@
|
|||||||
define puppet::defines::fact_d ($value, $ensure = 'present', $key = false) {
|
define puppet::defines::fact_d ($value, $ensure = 'present', $key = false) {
|
||||||
require 'puppet::common'
|
require 'puppet::facter'
|
||||||
$k_real = $key ? {
|
$k_real = $key ? {
|
||||||
false => $name,
|
false => $name,
|
||||||
default => $key,
|
default => $key,
|
||||||
}
|
}
|
||||||
|
|
||||||
file { "${puppet::common::facts_d}/${k_real}.txt":
|
file { "${puppet::facter::facts_d}/${k_real}.txt":
|
||||||
ensure => $ensure,
|
ensure => $ensure,
|
||||||
content => "${k_real}=${value}",
|
content => "${k_real}=${value}",
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,11 +1,11 @@
|
|||||||
class puppet::common (
|
class puppet::facter (
|
||||||
$ensure = 'present') {
|
$ensure = 'present') {
|
||||||
$pkg_ens = $ensure ? {
|
$pkg_ens = $ensure ? {
|
||||||
'present' => 'latest',
|
'present' => 'latest',
|
||||||
default => $ensure,
|
default => $ensure,
|
||||||
}
|
}
|
||||||
|
|
||||||
package { 'facter': ensure => '1.7.5-1puppetlabs1' }
|
package { 'facter': ensure => $ensure }
|
||||||
|
|
||||||
package { 'libaugeas-ruby': }
|
package { 'libaugeas-ruby': }
|
||||||
$ens_dir = $ensure ? {
|
$ens_dir = $ensure ? {
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
import 'defines/*.pp'
|
#import 'defines/*.pp'
|
||||||
|
|
||||||
class puppet (
|
class puppet (
|
||||||
$ensure = 'present',
|
$ensure = 'present',
|
||||||
@@ -16,7 +16,7 @@ class puppet (
|
|||||||
}
|
}
|
||||||
$factpath = '/var/lib/puppet/lib/facter'
|
$factpath = '/var/lib/puppet/lib/facter'
|
||||||
|
|
||||||
require 'puppet::common'
|
require 'puppet::facter'
|
||||||
|
|
||||||
if !defined(Class['puppet::puppetlabs_apt']) {
|
if !defined(Class['puppet::puppetlabs_apt']) {
|
||||||
require 'puppet::puppetlabs_apt'
|
require 'puppet::puppetlabs_apt'
|
||||||
@@ -111,31 +111,20 @@ class puppet (
|
|||||||
},
|
},
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
# if defined(Class['ganglia::monitor']) {
|
|
||||||
# Ganglia::Gmetric::Cron {
|
|
||||||
# source => 'puppet/ganglia',
|
|
||||||
# ensure => $ensure,
|
|
||||||
# }
|
|
||||||
#
|
|
||||||
# ganglia::gmetric::cron { 'puppetd_lastrun.sh': runwhen => '5'; 'puppetd_runtime.sh': runwhen => '15'; }
|
|
||||||
#
|
|
||||||
# }
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
$puppet_user = $operatingsystem ? {
|
$puppet_user = $::operatingsystem ? {
|
||||||
'Darwin' => $adm,
|
'Darwin' => $adm,
|
||||||
default => 'puppet',
|
default => 'puppet',
|
||||||
}
|
}
|
||||||
$puppet_group = $operatingsystem ? {
|
$puppet_group = $::operatingsystem ? {
|
||||||
'Darwin' => 'wheel',
|
'Darwin' => 'wheel',
|
||||||
default => 'puppet',
|
default => 'puppet',
|
||||||
}
|
}
|
||||||
# 'FreeBSD' => '/usr/local/etc/puppet/puppet.conf',
|
# 'FreeBSD' => '/usr/local/etc/puppet/puppet.conf',
|
||||||
$puppetconf = $operatingsystem ? {
|
$puppetconf = $::operatingsystem ? {
|
||||||
default => '/etc/puppet/puppet.conf',
|
default => '/etc/puppet/puppet.conf',
|
||||||
}
|
}
|
||||||
|
|
||||||
file { $puppetconf:
|
file { $puppetconf:
|
||||||
ensure => $ensure,
|
ensure => $ensure,
|
||||||
content => template('puppet/puppet.conf.erb'),
|
content => template('puppet/puppet.conf.erb'),
|
||||||
@@ -144,4 +133,4 @@ class puppet (
|
|||||||
# require => [ Package["puppet"] ],
|
# require => [ Package["puppet"] ],
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
20
manifests/monitored/client.pp
Normal file
20
manifests/monitored/client.pp
Normal file
@@ -0,0 +1,20 @@
|
|||||||
|
class puppet::monitored::client (
|
||||||
|
$ensure = 'present') {
|
||||||
|
$check = '/usr/lib/nagios/plugins/check_file_age -w10800 -c36000 -f/var/lib/puppet/state/last_run_summary.yaml'
|
||||||
|
|
||||||
|
icinga::object::hostgroupmember { 'puppet-clients': ensure => 'absent', }
|
||||||
|
|
||||||
|
sudo::conf { 'puppet-clients-icinga-sudo':
|
||||||
|
content => "nagios ALL=NOPASSWD: ${check}",
|
||||||
|
ensure => $ensure,
|
||||||
|
}
|
||||||
|
|
||||||
|
massive_passive::icinga::service { 'Puppet last run':
|
||||||
|
freshness_threshold => '5800',
|
||||||
|
command => "/usr/bin/sudo ${check}",
|
||||||
|
use => 'workhours-passive-service',
|
||||||
|
hostgroup_name => 'linux-servers',
|
||||||
|
notifications_enabled => 1,
|
||||||
|
ensure => $ensure,
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -1,5 +1,5 @@
|
|||||||
class puppet::puppet-dashboard ($ensure = 'present') {
|
class puppet::puppet-dashboard ($ensure = 'present') {
|
||||||
require 'puppet::common'
|
require 'puppet::facter'
|
||||||
|
|
||||||
package { ['libjson-ruby', 'puppet-dashboard']:
|
package { ['libjson-ruby', 'puppet-dashboard']:
|
||||||
ensure => $ensure,
|
ensure => $ensure,
|
||||||
|
|||||||
@@ -1,49 +1,35 @@
|
|||||||
class puppet::puppetmaster (
|
class puppet::puppetmaster (
|
||||||
$ensure = 'present',
|
$ensure = 'present',
|
||||||
$puppetqd = false) {
|
$dns_alt_names = undef,
|
||||||
require 'puppet::common'
|
$storeconfigs = false,
|
||||||
|
$storeconfigs_backend = undef,
|
||||||
|
$reports = undef,
|
||||||
|
$modulepath = undef) {
|
||||||
|
require 'puppet::facter'
|
||||||
|
|
||||||
if !defined(Class['puppet::puppetlabs_apt']) {
|
if !defined(Class['puppet::puppetlabs_apt']) {
|
||||||
class { 'puppet::puppetlabs_apt': }
|
class { 'puppet::puppetlabs_apt': }
|
||||||
require 'puppet::puppetlabs_apt'
|
require 'puppet::puppetlabs_apt'
|
||||||
}
|
}
|
||||||
|
|
||||||
if $puppetqd {
|
if defined(Class['ganglia::monitor']) {
|
||||||
class { 'activemq': ensure => $ensure }
|
Ganglia::Gmetric::Cron {
|
||||||
|
source => 'puppet/ganglia',
|
||||||
package { 'libnet-arp-perl': ensure => $ensure }
|
ensure => $ensure,
|
||||||
|
|
||||||
service { 'stompserver':
|
|
||||||
ensure => false,
|
|
||||||
enable => false,
|
|
||||||
before => Class['activemq'],
|
|
||||||
}
|
}
|
||||||
|
|
||||||
service { 'puppetqd':
|
ganglia::gmetric::cron {
|
||||||
ensure => running,
|
'puppetmaster.rb':
|
||||||
pattern => 'puppet queue queue',
|
runwhen => '5';
|
||||||
enable => true,
|
|
||||||
|
'puppetmaster_compiletime.rb':
|
||||||
|
runwhen => '60',
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
# 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
|
# ## remove disk reports from time to time
|
||||||
tidy { "${::puppet_vardir}/reports":
|
tidy { "${::puppet_vardir}/reports":
|
||||||
age => '1d',
|
age => '1m',
|
||||||
recurse => true,
|
recurse => true,
|
||||||
backup => false,
|
backup => false,
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -10,30 +10,33 @@ rundir=/var/run/puppet
|
|||||||
factsignore = .svn CVS .git
|
factsignore = .svn CVS .git
|
||||||
pluginsync=true
|
pluginsync=true
|
||||||
factpath=$vardir/lib/facter
|
factpath=$vardir/lib/facter
|
||||||
templatedir=/etc/puppet/templates
|
|
||||||
## should we use this?
|
|
||||||
#prerun_command=/etc/puppet/etckeeper-commit-pre
|
|
||||||
#postrun_command=/etc/puppet/etckeeper-commit-post
|
|
||||||
|
|
||||||
|
|
||||||
<% if (fqdn == scope.lookupvar("puppetmaster_server")) || (fqdn == scope.lookupvar("puppetmasterdev_server")) -%>
|
<% if (fqdn == scope.lookupvar("puppetmaster_server")) || (fqdn == scope.lookupvar("puppetmasterdev_server")) -%>
|
||||||
dbmigrate=true
|
#dbmigrate=true
|
||||||
dbadapter=<%= scope.lookupvar('puppetmaster_dbtype') %>
|
#dbadapter=<%= scope.lookupvar('puppetmaster_dbtype') %>
|
||||||
dbname=<%= scope.lookupvar('puppetmaster_dbname') %>
|
#dbname=<%= scope.lookupvar('puppetmaster_dbname') %>
|
||||||
dbserver=<%= scope.lookupvar('puppetmaster_dbhost') %>
|
#dbserver=<%= scope.lookupvar('puppetmaster_dbhost') %>
|
||||||
dbuser=<%= scope.lookupvar('puppetmaster_dbuser') %>
|
#dbuser=<%= scope.lookupvar('puppetmaster_dbuser') %>
|
||||||
dbpassword=<%= scope.lookupvar('puppetmaster_dbpassword') %>
|
#dbpassword=<%= scope.lookupvar('puppetmaster_dbpassword') %>
|
||||||
|
|
||||||
[master]
|
[master]
|
||||||
ssl_client_header = SSL_CLIENT_S_DN
|
ssl_client_header = SSL_CLIENT_S_DN
|
||||||
ssl_client_verify_header = SSL_CLIENT_VERIFY
|
ssl_client_verify_header = SSL_CLIENT_VERIFY
|
||||||
reports=<%= scope.lookupvar('puppetmaster_reports') %>
|
<% if scope.lookupvar('puppet::puppetmaster::dns_alt_names') -%>
|
||||||
|
dns_alt_names=<%= scope.lookupvar('puppet::puppetmaster::dns_alt_names') %>
|
||||||
|
<% end -%>
|
||||||
|
<% if @reports -%>
|
||||||
|
reports=<%= @reports %>
|
||||||
|
<% end -%>
|
||||||
<% if scope.lookupvar('puppetmaster_reporturl') != false -%>
|
<% if scope.lookupvar('puppetmaster_reporturl') != false -%>
|
||||||
reporturl=<%= scope.lookupvar('puppetmaster_reporturl') %>
|
reporturl=<%= scope.lookupvar('puppetmaster_reporturl') %>
|
||||||
<% end -%>
|
<% end -%>
|
||||||
modulepath=<%= scope.lookupvar('puppetmaster_modulepath') %>
|
modulepath=<%= scope['puppet::puppetmaster::modulepath'] %>
|
||||||
storeconfigs=true
|
storeconfigs=<%= scope['puppet::puppetmaster::storeconfigs'] %>
|
||||||
rails_loglevel=info
|
<% if scope['puppet::puppetmaster::storeconfigs_backend'] -%>
|
||||||
|
storeconfigs_backend=<%= scope['puppet::puppetmaster::storeconfigs_backend'] %>
|
||||||
|
<% end -%>
|
||||||
|
#rails_loglevel=info
|
||||||
<% end -%>
|
<% end -%>
|
||||||
|
|
||||||
[agent]
|
[agent]
|
||||||
|
|||||||
Reference in New Issue
Block a user