From aa87ce0c5bbf39fa3ac370960c2eec7c81b23cd3 Mon Sep 17 00:00:00 2001 From: Jerome Charaoui Date: Wed, 2 Dec 2009 18:23:56 -0500 Subject: move nagios templates in a file resource as puppet doesn't support them using native types, see issue #1180 --- files/configs/nagios_templates.cfg | 44 +++++++++++++++++++++++++++++++++ manifests/defaults.pp | 3 +-- manifests/defaults/commands.pp | 2 -- manifests/defaults/host_templates.pp | 3 +++ manifests/defaults/service_templates.pp | 3 +++ manifests/defaults/templates.pp | 14 +++++++++++ 6 files changed, 65 insertions(+), 4 deletions(-) create mode 100644 files/configs/nagios_templates.cfg create mode 100644 manifests/defaults/templates.pp diff --git a/files/configs/nagios_templates.cfg b/files/configs/nagios_templates.cfg new file mode 100644 index 0000000..0e93829 --- /dev/null +++ b/files/configs/nagios_templates.cfg @@ -0,0 +1,44 @@ +define host{ + name generic-host ; The name of this host template + notifications_enabled 1 ; Host notifications are enabled + event_handler_enabled 1 ; Host event handler is enabled + flap_detection_enabled 1 ; Flap detection is enabled + failure_prediction_enabled 1 ; Failure prediction is enabled + process_perf_data 1 ; Process performance data + retain_status_information 1 ; Retain status information across program restarts + retain_nonstatus_information 1 ; Retain non-status information across program restarts + check_command check-host-alive + max_check_attempts 10 + notification_interval 0 + notification_period 24x7 + notification_options d,u,r + contact_groups admins + register 0 ; DONT REGISTER THIS DEFINITION - ITS NOT A REAL HOST, JUST A TEMPLATE! + } + +define service{ + name generic-service ; The 'name' of this service template + active_checks_enabled 1 ; Active service checks are enabled + passive_checks_enabled 1 ; Passive service checks are enabled/accepted + parallelize_check 1 ; Active service checks should be parallelized (disabling this can lead to major performance problems) + obsess_over_service 1 ; We should obsess over this service (if necessary) + check_freshness 0 ; Default is to NOT check service 'freshness' + notifications_enabled 1 ; Service notifications are enabled + event_handler_enabled 1 ; Service event handler is enabled + flap_detection_enabled 1 ; Flap detection is enabled + failure_prediction_enabled 1 ; Failure prediction is enabled + process_perf_data 1 ; Process performance data + retain_status_information 1 ; Retain status information across program restarts + retain_nonstatus_information 1 ; Retain non-status information across program restarts + notification_interval 0 ; Only send notifications on status change by default. + is_volatile 0 + check_period 24x7 + normal_check_interval 5 + retry_check_interval 1 + max_check_attempts 4 + notification_period 24x7 + notification_options w,u,c,r + contact_groups admins + register 0 ; DONT REGISTER THIS DEFINITION - ITS NOT A REAL SERVICE, JUST A TEMPLATE! + } + diff --git a/manifests/defaults.pp b/manifests/defaults.pp index 93c10f7..32ba335 100644 --- a/manifests/defaults.pp +++ b/manifests/defaults.pp @@ -6,8 +6,7 @@ class nagios::defaults { include nagios::defaults::contactgroups include nagios::defaults::contacts include nagios::defaults::hostgroups - include nagios::defaults::host_templates - include nagios::defaults::service_templates + include nagios::defaults::templates include nagios::defaults::timeperiods } diff --git a/manifests/defaults/commands.pp b/manifests/defaults/commands.pp index f2d940b..253ce51 100644 --- a/manifests/defaults/commands.pp +++ b/manifests/defaults/commands.pp @@ -21,8 +21,6 @@ class nagios::defaults::commands { command_line => '$USER1$/check_http --ssl -H $ARG1$ -u $ARG2$'; check_https_url_regex: command_line => '$USER1$/check_http --ssl -H $ARG1$ -u $ARG2$ -e $ARG3$'; - check_https: - command_line => '$USER1$/check_http -S -H $HOSTADDRESS$'; check_silc: command_line => '$USER1$/check_tcp -p 706 -H $ARG1$'; check_sobby: diff --git a/manifests/defaults/host_templates.pp b/manifests/defaults/host_templates.pp index 30d7544..699b965 100644 --- a/manifests/defaults/host_templates.pp +++ b/manifests/defaults/host_templates.pp @@ -1,5 +1,8 @@ class nagios::defaults::host_templates { + # this inoperative for the moment, see : + # http://projects.reductivelabs.com/issues/1180 + nagios_host { 'generic-host': notifications_enabled => '1', diff --git a/manifests/defaults/service_templates.pp b/manifests/defaults/service_templates.pp index 12247a0..326ce05 100644 --- a/manifests/defaults/service_templates.pp +++ b/manifests/defaults/service_templates.pp @@ -1,5 +1,8 @@ class nagios::defaults::service_templates { + # this inoperative for the moment, see : + # http://projects.reductivelabs.com/issues/1180 + nagios_service { 'generic-service': active_checks_enabled => '1', diff --git a/manifests/defaults/templates.pp b/manifests/defaults/templates.pp new file mode 100644 index 0000000..752ba60 --- /dev/null +++ b/manifests/defaults/templates.pp @@ -0,0 +1,14 @@ +class nagios::defaults::templates { + + file { 'nagios_templates': + path => "${nagios_cfgdir}/conf.d/nagios_templates.cfg", + source => [ "puppet://$server/modules/site-nagios/configs/${fqdn}/nagios_templates.cfg", + "puppet://$server/modules/site-nagios/configs/${operatingsystem}/nagios_templates.cfg", + "puppet://$server/modules/site-nagios/configs/nagios_templates.cfg", + "puppet://$server/modules/nagios/configs/${operatingsystem}/nagios_templates.cfg", + "puppet://$server/modules/nagios/configs/nagios_templates.cfg" ], + notify => Service['nagios'], + mode => 0644, owner => root, group => root; + } + +} -- cgit v1.2.3