aboutsummaryrefslogtreecommitdiff
path: root/modules/profile/manifests/monitoring.pp
blob: 7df4ce944f5109243b00db7b7d0c0521ebbd58f9 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
class profile::monitoring (
  Optional[String] $naemon_url   = undef,
  Optional[String] $naemon_token = undef,
) {
  ensure_packages(["naemon", "cnagios"])

  file { "/etc/naemon":
    ensure  => "directory",
    recurse => true,
    purge   => true,
    force   => true,
    require => Package["naemon"],
  }
  ->
  file { "/etc/naemon/resource.cfg":
    ensure  => "file",
    owner   => "naemon",
    group   => "naemon",
    mode    => "0600",
    content => template("profile/monitoring/resource.cfg.erb"),
  }
  ->
  file { "/etc/naemon/naemon.cfg":
    ensure  => "file",
    owner   => "naemon",
    group   => "naemon",
    mode    => "0644",
    content => template("profile/monitoring/naemon.cfg.erb"),
  }
  ->
  file { "/etc/naemon/objects.cfg":
    ensure => "file",
    owner  => "naemon",
    group  => "naemon",
    mode   => "0600"
  }
  ->
  service { "naemon":
    ensure => "running",
    enable => true,
  }

  unless ($naemon_url == undef or empty($naemon_url)) {
    file { "/etc/naemon/send_nrdp.sh":
      ensure  => "file",
      owner   => "naemon",
      group   => "naemon",
      mode    => "0700",
      content => template("profile/monitoring/send_nrdp.sh.erb"),
    }
  }

  include "profile::monitoring::hosts"
  include "profile::monitoring::services"
  include "profile::monitoring::commands"
  include "profile::monitoring::times"
  include "profile::monitoring::contacts"
}