diff options
Diffstat (limited to 'puppet')
4 files changed, 22 insertions, 7 deletions
diff --git a/puppet/modules/site_check_mk/manifests/server.pp b/puppet/modules/site_check_mk/manifests/server.pp index e544ef0d..aa24d96c 100644 --- a/puppet/modules/site_check_mk/manifests/server.pp +++ b/puppet/modules/site_check_mk/manifests/server.pp @@ -5,11 +5,12 @@ class site_check_mk::server {    $type     = $ssh_hash['authorized_keys']['monitor']['type']    $seckey   = $ssh_hash['monitor']['private_key'] -  $nagios_hiera   = hiera_hash('nagios') -  $nagios_hosts   = $nagios_hiera['hosts'] +  $nagios_hiera     = hiera_hash('nagios') +  $nagios_hosts     = $nagios_hiera['hosts'] -  $hosts          = hiera_hash('hosts') -  $all_hosts      = inline_template ('<% @hosts.keys.sort.each do |key| -%>"<%= @hosts[key]["domain_internal"] %>", <% end -%>') +  $hosts            = hiera_hash('hosts') +  $all_hosts        = inline_template ('<% @hosts.keys.sort.each do |key| -%>"<%= @hosts[key]["domain_internal"] %>", <% end -%>') +  $domains_internal = $nagios_hiera['domains_internal']    package { 'check-mk-server':      ensure => installed, @@ -35,6 +36,10 @@ class site_check_mk::server {        content => template('site_check_mk/use_ssh.mk'),        notify  => Exec['check_mk-refresh'],        require => Package['check-mk-server']; +    '/etc/check_mk/conf.d/hostgroups.mk': +      content => template('site_check_mk/hostgroups.mk'), +      notify  => Exec['check_mk-refresh'], +      require => Package['check-mk-server'];      '/etc/check_mk/all_hosts_static':        content => $all_hosts,        notify  => Exec['check_mk-refresh'], diff --git a/puppet/modules/site_check_mk/templates/hostgroups.mk b/puppet/modules/site_check_mk/templates/hostgroups.mk new file mode 100644 index 00000000..79b7f92f --- /dev/null +++ b/puppet/modules/site_check_mk/templates/hostgroups.mk @@ -0,0 +1,4 @@ +host_groups = [ +  <% @domains_internal.each do |domain| %>( '<%= domain %>', [<% @nagios_hosts.keys.sort.each do |key| -%><% if @nagios_hosts[key]['domain_internal'] == key+'.'+domain -%>'<%= key %>.<%= domain %>', <% end -%><% end -%>] ), +  <% end -%> +] diff --git a/puppet/modules/site_nagios/manifests/server.pp b/puppet/modules/site_nagios/manifests/server.pp index 85443917..8cc1ae24 100644 --- a/puppet/modules/site_nagios/manifests/server.pp +++ b/puppet/modules/site_nagios/manifests/server.pp @@ -3,9 +3,10 @@ class site_nagios::server inherits nagios::base {    # First, purge old nagios config (see #1467)    class { 'site_nagios::server::purge': } -  $nagios_hiera   = hiera('nagios') -  $nagiosadmin_pw = htpasswd_sha1($nagios_hiera['nagiosadmin_pw']) -  $nagios_hosts   = $nagios_hiera['hosts'] +  $nagios_hiera     = hiera('nagios') +  $nagiosadmin_pw   = htpasswd_sha1($nagios_hiera['nagiosadmin_pw']) +  $nagios_hosts     = $nagios_hiera['hosts'] +  $domains_internal = $nagios_hiera['domains_internal']    include nagios::defaults    include nagios::base @@ -55,4 +56,6 @@ class site_nagios::server inherits nagios::base {          'set missingok missingok', 'set ifempty notifempty',          'set copytruncate copytruncate' ]    } + +  ::site_nagios::server::hostgroup { $domains_internal: }  } diff --git a/puppet/modules/site_nagios/manifests/server/hostgroup.pp b/puppet/modules/site_nagios/manifests/server/hostgroup.pp new file mode 100644 index 00000000..035ba7d1 --- /dev/null +++ b/puppet/modules/site_nagios/manifests/server/hostgroup.pp @@ -0,0 +1,3 @@ +define site_nagios::server::hostgroup { +  nagios_hostgroup { $name: } +}  | 
