aboutsummaryrefslogtreecommitdiff
path: root/manifests/subsystem/monitor.pp
blob: 99538bb28688047cfa9ffe761d51301edf7261d8 (plain)
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
class nodo::subsystem::monitor(
  $TYPE          = 'vserver',
  $use_nagios    = hiera('nodo::subsystem::monitor::use_nagios',    True),
  $check_ping    = hiera('nodo::subsystem::monitor::check_ping',    present),
  $check_ssh     = hiera('nodo::subsystem::monitor::check_ssh',     absent),
  $address       = hiera('nodo::subsystem::monitor::address',       $::ipaddress),
  $ping_rate     = hiera('nodo::subsystem::monitor::ping_rate',     '!100.0,20%!500.0,60%'),
  $check_command = hiera('nodo::subsystem::monitor::check_command', 'check_ping')
) {

  if $use_nagios != false {

    if $type == 'vserver' {
      include nagios::target::fqdn
    }

    if $type == 'host' {
      class{ 'nagios::target':
        address => $address,
      }
    }

    nagios::service::ping { "${::fqdn}":
      ensure    => $check_ping,
      ping_rate => $ping_rate,
    }

    nagios::service { "check_ssh4":
      ensure        => $check_ssh,
      check_command => "check_ssh_4",
    }
  }
}