## cd_nagios::client::target.pp # Module name: nagios # Author: Arne Teuke (arne_teuke@ConfDroid.com) # License: # This file is part of nagios. # # nagios is used for providing automatic configuration of Nagios targets. # Copyright (C) 2016 ConfDroid (copyright@ConfDroid.com) # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program. If not, see . # @summary CLass manages Nagios targets for cd_nagios. ############################################################################### class cd_nagios::client::target ( ) inherits cd_nagios::params { if $::fqdn != $ng_nagios_server { @@nagios_host { $::fqdn: ensure => $ng_ping_ensure, alias => $::hostname, address => $::fqdn, use => 'linux-server', target => $ng_target_host, hostgroups => 'linux-servers', contacts => 'ops', max_check_attempts => $max_check_attempts, notification_period => '24x7', owner => 'nagios', group => 'nagios', mode => '0664', check_command => "check_ping!${ng_ping_warn}!${ng_ping_crit}", notify => Service['nagios'], } @@nagios_service { "root_partition_${::hostname}": ensure => $ng_disk_ensure, check_command => "check_nrpe!check_disk!${ng_disk_warn}!${ng_disk_crit}!/", use => 'generic-service', host_name => $::fqdn, contacts => 'ops', notification_period => '24x7', service_description => "${::hostname}_root_partition", servicegroups => 'linux-services', target => $ng_target_service, owner => 'nagios', group => 'nagios', mode => '0664', } @@nagios_service { "Swap_Usage_${::hostname}": ensure => $ng_swap_ensure, check_command => "check_nrpe!check_swap!${ng_swap_warn}!${ng_swap_crit}", use => 'generic-service', host_name => $::fqdn, contacts => 'ops', notification_period => '24x7', service_description => "${::hostname}_swap_usage", servicegroups => 'linux-services', target => $ng_target_service, owner => 'nagios', group => 'nagios', mode => '0664', } @@nagios_service { "Local_Users_${::hostname}": ensure => $ng_users_ensure, check_command => "check_nrpe!check_users!${ng_users_warn}!${ng_users_crit}", use => 'generic-service', host_name => $::fqdn, contacts => 'ops', notification_period => '24x7', service_description => "${::hostname}_local_users", servicegroups => 'linux-services', target => $ng_target_service, owner => 'nagios', group => 'nagios', mode => '0664', } @@nagios_service { "Total Processes_${::hostname}": ensure => $ng_procs_tot_ens, check_command => "check_nrpe!check_procs!${ng_procs_tot_warn}!${ng_procs_tot_crit}!${ng_procs_tot_param}", use => 'generic-service', host_name => $::fqdn, contacts => 'ops', notification_period => '24x7', service_description => "${::hostname}_total_processes", servicegroups => 'linux-services', target => $ng_target_service, owner => 'nagios', group => 'nagios', mode => '0664', } @@nagios_service { "Zombie Processes_${::hostname}": ensure => $ng_procs_z_ensure, check_command => "check_nrpe!check_procs!${ng_procs_z_warn}!${ng_procs_z_crit}!${ng_procs_z_param}", use => 'generic-service', host_name => $::fqdn, contacts => 'ops', notification_period => '24x7', service_description => "${::hostname}_zombie_processes", servicegroups => 'linux-services', target => $ng_target_service, owner => 'nagios', group => 'nagios', mode => '0664', } @@nagios_service { "Current_Load_${::hostname}": ensure => $ng_load_ensure, check_command => "check_nrpe!check_load!${ng_load_warn}!${ng_load_crit}", use => 'generic-service', host_name => $::fqdn, contacts => 'ops', notification_period => '24x7', service_description => "${::hostname}_current_load", servicegroups => 'linux-services', target => $ng_target_service, owner => 'nagios', group => 'nagios', mode => '0664', } } }