summaryrefslogtreecommitdiff
path: root/manifests/nrpe
diff options
context:
space:
mode:
Diffstat (limited to 'manifests/nrpe')
-rw-r--r--manifests/nrpe/base.pp104
-rw-r--r--manifests/nrpe/command.pp55
2 files changed, 83 insertions, 76 deletions
diff --git a/manifests/nrpe/base.pp b/manifests/nrpe/base.pp
index 3412f7e..e48e87b 100644
--- a/manifests/nrpe/base.pp
+++ b/manifests/nrpe/base.pp
@@ -1,52 +1,58 @@
+# basic nrpe stuff
class nagios::nrpe::base {
- if $nagios_nrpe_cfgdir == '' { $nagios_nrpe_cfgdir = '/etc/nagios' }
- if $processorcount == '' { $processorcount = 1 }
-
- # libwww-perl for check_apache
- include perl::extensions::libwww
-
- package { [ 'nagios-nrpe-server', 'nagios-plugins-basic' ]:
- ensure => present;
- }
-
- # Special-case lenny. the package doesn't exist
- if $::lsbdistcodename != 'lenny' {
- package { 'libnagios-plugin-perl': ensure => present; }
- }
-
- file { [ $nagios_nrpe_cfgdir, "$nagios_nrpe_cfgdir/nrpe.d" ]:
- ensure => directory }
-
- if $nagios_nrpe_dont_blame == '' { $nagios_nrpe_dont_blame = 1 }
- file { "$nagios_nrpe_cfgdir/nrpe.cfg":
- content => template('nagios/nrpe/nrpe.cfg'),
- owner => root, group => root, mode => '0644';
- }
-
- # default commands
- nagios::nrpe::command { 'basic_nrpe':
- source => [ "puppet:///modules/site-nagios/configs/nrpe/nrpe_commands.${::fqdn}.cfg",
- 'puppet:///modules/site-nagios/configs/nrpe/nrpe_commands.cfg',
- 'puppet:///modules/nagios/nrpe/nrpe_commands.cfg' ],
- }
- # the check for load should be customized for each server based on number
- # of CPUs and the type of activity.
- $warning_1_threshold = 7 * $processorcount
- $warning_5_threshold = 6 * $processorcount
- $warning_15_threshold = 5 * $processorcount
- $critical_1_threshold = 10 * $processorcount
- $critical_5_threshold = 9 * $processorcount
- $critical_15_threshold = 8 * $processorcount
- nagios::nrpe::command { 'check_load':
- command_line => "${::nagios::nrpe::nagios_plugin_dir}/check_load -w ${warning_1_threshold},${warning_5_threshold},${warning_15_threshold} -c ${critical_1_threshold},${critical_5_threshold},${critical_15_threshold}",
- }
-
- service { 'nagios-nrpe-server':
- ensure => running,
- enable => true,
- pattern => 'nrpe',
- subscribe => File["$nagios_nrpe_cfgdir/nrpe.cfg"],
- require => Package['nagios-nrpe-server'],
- }
+ # Import all variables from entry point
+ $cfg_dir = $::nagios::nrpe::real_cfg_dir
+ $pid_file = $::nagios::nrpe::real_pid_file
+ $plugin_dir = $::nagios::nrpe::real_plugin_dir
+ $server_address = $::nagios::nrpe::server_address
+ $allowed_hosts = $::nagios::nrpe::allowed_hosts
+ $dont_blame = $::nagios::nrpe::dont_blame
+
+ package{['nagios-nrpe-server', 'nagios-plugins-basic', 'libwww-perl']:
+ ensure => installed;
+ }
+
+ # Special-case lenny. the package doesn't exist
+ if $::lsbdistcodename != 'lenny' {
+ package{'libnagios-plugin-perl': ensure => installed; }
+ }
+
+ file{
+ [ $cfg_dir, "${cfg_dir}/nrpe.d" ]:
+ ensure => directory;
+ }
+
+ file { "${cfg_dir}/nrpe.cfg":
+ content => template('nagios/nrpe/nrpe.cfg'),
+ owner => root,
+ group => 0,
+ mode => '0644';
+ }
+
+ # default commands
+ nagios::nrpe::command{'basic_nrpe':
+ source => [ "puppet:///modules/site_nagios/configs/nrpe/nrpe_commands.${::fqdn}.cfg",
+ 'puppet:///modules/site_nagios/configs/nrpe/nrpe_commands.cfg',
+ 'puppet:///modules/nagios/nrpe/nrpe_commands.cfg' ],
+ }
+ # the check for load should be customized for each server based on number
+ # of CPUs and the type of activity.
+ $warning_1_threshold = 7 * $::processorcount
+ $warning_5_threshold = 6 * $::processorcount
+ $warning_15_threshold = 5 * $::processorcount
+ $critical_1_threshold = 10 * $::processorcount
+ $critical_5_threshold = 9 * $::processorcount
+ $critical_15_threshold = 8 * $::processorcount
+ nagios::nrpe::command {'check_load':
+ command_line => "${plugin_dir}/check_load -w ${warning_1_threshold},${warning_5_threshold},${warning_15_threshold} -c ${critical_1_threshold},${critical_5_threshold},${critical_15_threshold}",
+ }
+
+ service{'nagios-nrpe-server':
+ ensure => running,
+ enable => true,
+ pattern => 'nrpe',
+ subscribe => File["${cfg_dir}/nrpe.cfg"],
+ require => Package['nagios-nrpe-server'],
+ }
}
diff --git a/manifests/nrpe/command.pp b/manifests/nrpe/command.pp
index e6ebdae..bdd89a7 100644
--- a/manifests/nrpe/command.pp
+++ b/manifests/nrpe/command.pp
@@ -1,33 +1,34 @@
+# manage an nrpe command
define nagios::nrpe::command (
- $ensure = present,
- $command_line = '',
- $source = '' )
-{
- if ($command_line == '' and $source == '') {
- fail ( "Either one of 'command_line' or 'source' must be given to nagios::nrpe::command." )
- }
+ $ensure = present,
+ $command_line = '',
+ $source = '',
+){
+ if ($command_line == '' and $source == '') {
+ fail('Either one of $command_line or $source must be given to nagios::nrpe::command.' )
+ }
- if $nagios_nrpe_cfg_dir == '' {
- $nagios_nrpe_cfgdir = $nagios::nrpe::base::nagios_nrpe_cfgdir
- }
+ $cfg_dir = $nagios::nrpe::real_cfg_dir
- file { "$nagios_nrpe_cfgdir/nrpe.d/${name}_command.cfg":
- ensure => $ensure,
- mode => 644, owner => root, group => 0,
- notify => Service['nagios-nrpe-server'],
- require => File [ "$nagios_nrpe_cfgdir/nrpe.d" ]
- }
+ file{"${cfg_dir}/nrpe.d/${name}_command.cfg":
+ ensure => $ensure,
+ notify => Service['nagios-nrpe-server'],
+ require => File ["${cfg_dir}/nrpe.d" ],
+ owner => 'root',
+ group => 0,
+ mode => '0644';
+ }
- case $source {
- '': {
- File["$nagios_nrpe_cfgdir/nrpe.d/${name}_command.cfg"] {
- content => template( "nagios/nrpe/nrpe_command.erb" ),
- }
- }
- default: {
- File["$nagios_nrpe_cfgdir/nrpe.d/${name}_command.cfg"] {
- source => $source,
- }
- }
+ case $source {
+ '': {
+ File["${cfg_dir}/nrpe.d/${name}_command.cfg"] {
+ content => template('nagios/nrpe/nrpe_command.erb'),
+ }
+ }
+ default: {
+ File["${cfg_dir}/nrpe.d/${name}_command.cfg"] {
+ source => $source,
+ }
}
+ }
}