diff options
| author | Micah Anderson <micah@leap.se> | 2014-04-04 10:37:09 -0400 | 
|---|---|---|
| committer | Micah Anderson <micah@leap.se> | 2014-04-04 10:37:09 -0400 | 
| commit | 6af957a1c20f75a827655a3cd75e40a03cffe7c4 (patch) | |
| tree | e5995b0c4b53583fd9d16857f66f81137dccbf73 /puppet/modules/site_nagios/manifests | |
| parent | 7451213d5e0772d0d6cba4613bf66792da495909 (diff) | |
| parent | 1551f785c5c7c515781995928eec7659365d8988 (diff) | |
Merge branch '0.5' into develop
Conflicts:
	provider_base/services/tor.json
Change-Id: I826579945a0d93c43384f0fd12c9833762b084cf
Diffstat (limited to 'puppet/modules/site_nagios/manifests')
| -rw-r--r-- | puppet/modules/site_nagios/manifests/add_host_services.pp (renamed from puppet/modules/site_nagios/manifests/add_host.pp) | 10 | ||||
| -rw-r--r-- | puppet/modules/site_nagios/manifests/init.pp | 2 | ||||
| -rw-r--r-- | puppet/modules/site_nagios/manifests/server.pp | 35 | ||||
| -rw-r--r-- | puppet/modules/site_nagios/manifests/server/apache.pp | 7 | ||||
| -rw-r--r-- | puppet/modules/site_nagios/manifests/server/purge.pp | 20 | 
5 files changed, 53 insertions, 21 deletions
diff --git a/puppet/modules/site_nagios/manifests/add_host.pp b/puppet/modules/site_nagios/manifests/add_host_services.pp index 94352de4..279809d1 100644 --- a/puppet/modules/site_nagios/manifests/add_host.pp +++ b/puppet/modules/site_nagios/manifests/add_host_services.pp @@ -1,17 +1,13 @@ -define site_nagios::add_host ( +define site_nagios::add_host_services ( +  $domain_full_suffix,    $domain_internal,    $ip_address,    $services, +  $ssh_port,    $openvpn_gateway_address='' ) {      $nagios_hostname = $domain_internal -    # Add Nagios host -    nagios_host { $nagios_hostname: -      address => $ip_address, -      use     => 'generic-host', -    } -      # Add Nagios service      # First, we need to turn the serice array into hash, using a "hash template" diff --git a/puppet/modules/site_nagios/manifests/init.pp b/puppet/modules/site_nagios/manifests/init.pp index c3cfa02e..eb08cdcb 100644 --- a/puppet/modules/site_nagios/manifests/init.pp +++ b/puppet/modules/site_nagios/manifests/init.pp @@ -1,6 +1,6 @@  class site_nagios  {    tag 'leap_service'    Class['site_config::default'] -> Class['site_nagios'] -   +    include site_nagios::server  } diff --git a/puppet/modules/site_nagios/manifests/server.pp b/puppet/modules/site_nagios/manifests/server.pp index 3e1ef7e7..85443917 100644 --- a/puppet/modules/site_nagios/manifests/server.pp +++ b/puppet/modules/site_nagios/manifests/server.pp @@ -1,28 +1,34 @@  class site_nagios::server inherits nagios::base {    # First, purge old nagios config (see #1467) -  class { 'site_nagios::server::purge': -    stage => setup -  } +  class { 'site_nagios::server::purge': }    $nagios_hiera   = hiera('nagios')    $nagiosadmin_pw = htpasswd_sha1($nagios_hiera['nagiosadmin_pw']) -  $hosts          = $nagios_hiera['hosts'] +  $nagios_hosts   = $nagios_hiera['hosts']    include nagios::defaults    include nagios::base -  #Class ['nagios'] -> Class ['nagios::defaults'] -  class {'nagios::apache': +  class {'nagios': +    # don't manage apache class from nagios, cause we already include +    # it in site_apache::common +    httpd              => 'absent',      allow_external_cmd => true,      stored_config      => false, -    #before             => Class ['nagios::defaults']    } +  file { '/etc/apache2/conf.d/nagios3.conf': +    ensure => link, +    target => '/usr/share/doc/nagios3-common/examples/apache2.conf', +    notify => Service['apache'] +  } + +  include site_apache::common    include site_apache::module::headers    File ['nagios_htpasswd'] {      source  => undef, -    content => "nagiosadmin:$nagiosadmin_pw", +    content => "nagiosadmin:${nagiosadmin_pw}",      mode    => '0640',    } @@ -35,7 +41,18 @@ class site_nagios::server inherits nagios::base {      group  => 'nagios',    } -  create_resources ( site_nagios::add_host, $hosts ) +  create_resources ( site_nagios::add_host_services, $nagios_hosts ) +  include site_nagios::server::apache +  include site_check_mk::server    include site_shorewall::monitor + +  augeas { +    'logrotate_nagios': +      context => '/files/etc/logrotate.d/nagios/rule', +      changes => [ 'set file /var/log/nagios3/nagios.log', 'set rotate 7', +        'set schedule daily', 'set compress compress', +        'set missingok missingok', 'set ifempty notifempty', +        'set copytruncate copytruncate' ] +  }  } diff --git a/puppet/modules/site_nagios/manifests/server/apache.pp b/puppet/modules/site_nagios/manifests/server/apache.pp new file mode 100644 index 00000000..8dbc7e9b --- /dev/null +++ b/puppet/modules/site_nagios/manifests/server/apache.pp @@ -0,0 +1,7 @@ +class site_nagios::server::apache { +  include x509::variables +  include site_config::x509::commercial::cert +  include site_config::x509::commercial::key +  include site_config::x509::commercial::ca + +} diff --git a/puppet/modules/site_nagios/manifests/server/purge.pp b/puppet/modules/site_nagios/manifests/server/purge.pp index 39735cd3..6815a703 100644 --- a/puppet/modules/site_nagios/manifests/server/purge.pp +++ b/puppet/modules/site_nagios/manifests/server/purge.pp @@ -1,7 +1,19 @@ -class site_nagios::server::purge { -  exec {'purge_conf.d': -    command => '/bin/rm -rf /etc/nagios3/conf.d/*', -    onlyif  => 'test -e /etc/nagios3/conf.d' +class site_nagios::server::purge inherits nagios::base { +  # we don't want to get /etc/nagios3 and /etc/nagios3/conf.d +  # purged, cause the check-mk-config-nagios3 package +  # places its templates in /etc/nagios3/conf.d/check_mk, +  # and check_mk -O updated it's nagios config in /etc/nagios3/conf.d/check_mk +  File['nagios_cfgdir'] { +    purge => false +  } +  File['nagios_confd'] { +    purge => false    } +  # only purge files in the /etc/nagios3/conf.d/ dir, not in any subdir +  exec {'purge_conf.d': +    command => '/usr/bin/find /etc/nagios3/conf.d/ -maxdepth 1 -type f -exec rm {} \;', +    onlyif  => '/usr/bin/find /etc/nagios3/conf.d/ -maxdepth 1 -type f | grep -q "/etc/nagios3/conf.d"', +    require => Package['nagios'] +  }  }  | 
