Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
96 commits
Select commit Hold shift + click to select a range
dff6690
Switching from declaring the class to including the class fixes an is…
Mar 26, 2020
1908a07
Merge remote-tracking branch 'upstream/master'
Apr 7, 2020
27a2480
purge nagios service dependencies also
Apr 8, 2020
10f3df9
Merge pull request #1 from robmbrooks/master
hundredacres Apr 9, 2020
1a1aa41
Merge remote-tracking branch 'upstream/master'
Jul 7, 2020
4846ba3
require contactgroups listed in service
Aug 13, 2020
4f31fd7
Merge pull request #2 from robmbrooks/master
hundredacres Aug 13, 2020
632d965
fix for undef case
Aug 13, 2020
9844872
Merge pull request #3 from robmbrooks/master
hundredacres Aug 14, 2020
6169964
support sudo for service checks
Oct 7, 2020
1198537
Merge pull request #4 from robmbrooks/master
hundredacres Oct 7, 2020
9cdc7f0
support notes_url paramenter
Jan 14, 2021
8638a99
Merge remote-tracking branch 'upstream/master'
Jan 14, 2021
78077ae
Merge pull request #5 from robmbrooks/master
hundredacres Jan 14, 2021
9f6d313
Merge branch 'master' of https://github.com/hundredacres/puppet-nagios
Jan 14, 2021
3bc15ac
Passing notes_url to common client checks
Jan 15, 2021
73364c2
Merge remote-tracking branch 'upstream/master'
Mar 18, 2021
f75ec98
Merge remote-tracking branch 'upstream/master'
May 11, 2021
9b374ed
Fixing stray {
May 11, 2021
56bb29a
Removing custom check_ssl code
May 11, 2021
b5821c1
Merge remote-tracking branch 'upstream/master'
Jun 11, 2021
8ec104c
Merge remote-tracking branch 'upstream/master'
Aug 12, 2021
1e7c7fd
speed up using file per host
Sep 3, 2021
ae60b4c
missing param in file resource
Sep 9, 2021
dbee146
ensure directory is present before deploying checks
Sep 9, 2021
3672d78
use root:nagios ownership for /etc/nagios/puppet_checks.d
Sep 10, 2021
7d2001d
change perms in correct file
Sep 10, 2021
d5bf1b4
Merge pull request #6 from robmbrooks/devops_11802
hundredacres Sep 10, 2021
6d3e4f2
fix mode issue and ensure directory is managed
Sep 10, 2021
2ace688
Merge pull request #7 from robmbrooks/devops_11802
hundredacres Sep 10, 2021
329279e
start to place nagios commands in hostname based files
Sep 10, 2021
ca454c7
try nagios:nagios such that 0600 files should be readable by nagios
Sep 10, 2021
9b43a90
Merge pull request #8 from robmbrooks/devops_11802
hundredacres Sep 10, 2021
690be0c
check_command is a string not a resource
Sep 10, 2021
b7b4e70
Merge pull request #9 from robmbrooks/devops_11802
hundredacres Sep 10, 2021
f6dab0b
fix file perm issue due to puppet bug
Sep 11, 2021
641b10f
remove perms from nagios resource, this doesn't work
Sep 11, 2021
51d5705
Merge pull request #10 from robmbrooks/devops_11802
hundredacres Sep 11, 2021
19ec633
fix duplicate file resources
Sep 11, 2021
c3565d7
Merge branch 'hundredacres:master' into devops_11802
robmbrooks Sep 11, 2021
e827a96
Merge pull request #11 from robmbrooks/devops_11802
hundredacres Sep 11, 2021
75ec94d
export a file_perm object which then fixes file perms on the nagios host
Sep 12, 2021
b86d0da
Merge branch 'devops_11802' of github.com:robmbrooks/puppet-nagios in…
Sep 12, 2021
18f9a23
Merge pull request #12 from robmbrooks/devops_11802
hundredacres Sep 12, 2021
4b063a6
move this later in the manifest
Sep 13, 2021
a46db11
add requires to do some ordering
Sep 13, 2021
1bcdde5
Merge pull request #13 from robmbrooks/devops_11802
hundredacres Sep 13, 2021
288783e
use defined types internally
Sep 13, 2021
688862d
all commands should be tagged with a server now
Sep 13, 2021
c78f0ab
Merge pull request #14 from robmbrooks/devops_11802
hundredacres Sep 14, 2021
d73b1ff
fix weirdness with host_name sometimes not being set
Sep 14, 2021
f3b07ad
Merge pull request #15 from robmbrooks/devops_11802
hundredacres Sep 14, 2021
c466357
manage host and servicedependencies in the host specific file
Sep 15, 2021
6b26ee8
Merge pull request #16 from robmbrooks/devops_11802
hundredacres Sep 15, 2021
7d1234f
populate and use it for host and file_perm
Sep 15, 2021
b4a74eb
Merge pull request #17 from robmbrooks/devops_11802
hundredacres Sep 15, 2021
fb79905
remove targeting from servicedependency it appears to have bugs
Sep 16, 2021
8d95dec
Merge pull request #18 from robmbrooks/devops_11802
hundredacres Sep 16, 2021
667622f
back out nagios::host changes as these are causing weirdness
Sep 16, 2021
01aa1b9
Merge pull request #19 from robmbrooks/devops_11802
hundredacres Sep 16, 2021
18b9fb5
add _host_fqdn to nagios host records
Sep 17, 2021
fb58534
Merge pull request #20 from robmbrooks/devops_11802
hundredacres Sep 17, 2021
2716283
typo
Sep 17, 2021
aa5abd7
Merge pull request #21 from robmbrooks/devops_11802
hundredacres Sep 17, 2021
9d23afb
try nagios_alias to work around issue with alias being puppet metapar…
Sep 17, 2021
309034a
Merge pull request #22 from robmbrooks/devops_11802
hundredacres Sep 17, 2021
08580b0
remove nagios_alias from here
Sep 20, 2021
ee814b2
Merge pull request #23 from robmbrooks/devops_11802
hundredacres Sep 20, 2021
5902495
service is dependent on host and command in order to work
Sep 22, 2021
bce1cff
remove suprious {
Sep 22, 2021
a29c711
fix typo
Sep 22, 2021
e5723b5
don't nuke require and notify, do this in nagios::service
Sep 23, 2021
8ca9575
don't mask requires for command and servicedependency
Sep 23, 2021
e1291d5
Merge pull request #24 from robmbrooks/devops_11802
hundredacres Oct 4, 2021
459c081
Merge branch 'master' of https://github.com/thias/puppet-nagios
Oct 4, 2021
c609df2
add foo command as it is used in place of a real check
Oct 5, 2021
6054f21
Merge pull request #25 from robmbrooks/devops_11802
hundredacres Oct 5, 2021
0d4e23d
dependent_host_name is a comma separated string, we can't use it here
Oct 5, 2021
deca9cd
Merge pull request #26 from robmbrooks/devops_11802
hundredacres Oct 5, 2021
3d832ec
tweaking nagios_host to try to get it deployed along with service and…
Oct 5, 2021
6e8cdd4
Merge pull request #27 from robmbrooks/devops_11802
hundredacres Oct 5, 2021
7891cd7
use chaining to try to force resource ordering
Oct 5, 2021
a3608ec
Merge pull request #28 from robmbrooks/devops_11802
hundredacres Oct 5, 2021
16d890c
incorrect dependency
Oct 6, 2021
795bcb9
Merge pull request #29 from robmbrooks/devops_11802
hundredacres Oct 6, 2021
6057897
use a directory per resource type
Oct 6, 2021
05c2076
Merge pull request #30 from robmbrooks/devops_11802
hundredacres Oct 6, 2021
2e9c479
Merge remote-tracking branch 'upstream/master'
Jul 6, 2022
c05c9fb
Updating package name for Debian nodes
Jul 6, 2022
27469e0
Switch alert from Crit to Warn for JBOD
Jul 8, 2022
f0184a5
Passing notes_url to mysql health checks
Aug 1, 2022
afc0d6f
Adding notes_url to class
Sep 1, 2022
4199393
https://github.com/mzupan/nagios-plugin-mongodb/pull/249/commits/4ba6…
Oct 6, 2022
f0687a5
use ensure_packages for perl-Redis
Apr 25, 2023
cca3823
Merge pull request #31 from robmbrooks/perl_redis_ensure
hundredacres Apr 25, 2023
073a3a6
Merge remote-tracking branch 'upstream/master'
hundredacres Oct 19, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 2 additions & 5 deletions manifests/check.pp
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,7 @@
}

# Export the precious resource with all modified parameters
@@nagios_service { "check_${title}_${host_name}":
nagios::service { "check_${title}_${host_name}":
ensure => $ensure,
host_name => $host_name,
check_command => "check_${title}",
Expand All @@ -67,8 +67,6 @@
max_check_attempts => $final_max_check_attempts,
notification_period => $final_notification_period,
use => $final_use,
# Support an arrays of tags for multiple nagios servers
tag => regsubst($server,'^(.+)$','nagios-\1'),
}

# Default line for nrpe invoke (used in the nagios_command)
Expand All @@ -80,10 +78,9 @@
# default => "-a $parameters",
# }

@@nagios_command { "check_${title}":
nagios::command { "check_${title}":
# command_line => "${nrpe} -c check_${title} $command_parameters",
command_line => "${nrpe} -c check_${title}",
tag => regsubst($server,'^(.+)$','nagios-\1'),
}

}
Expand Down
2 changes: 2 additions & 0 deletions manifests/check/cpu.pp
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@
$max_check_attempts = $::nagios::client::service_max_check_attempts,
$notification_period = $::nagios::client::service_notification_period,
$use = $::nagios::client::service_use,
$notes_url = undef,
) inherits ::nagios::client {

nagios::client::nrpe_plugin { 'check_cpu':
Expand Down Expand Up @@ -36,6 +37,7 @@
notification_period => $notification_period,
max_check_attempts => $max_check_attempts,
use => $use,
notes_url => $notes_url,
}

}
2 changes: 1 addition & 1 deletion manifests/check/cpu_temp.pp
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
class nagios::check::cpu_temp (
$ensure = undef,
$args = '',
$package = 'lm_sensors',
$package = $::osfamily ? {'Debian' => 'lm-sensors',default => 'lm_sensors'},
$check_title = $::nagios::client::host_name,
$servicegroups = undef,
$check_period = $::nagios::client::service_check_period,
Expand Down
2 changes: 2 additions & 0 deletions manifests/check/disk.pp
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@
$max_check_attempts = $::nagios::client::service_max_check_attempts,
$notification_period = $::nagios::client::service_notification_period,
$use = $::nagios::client::service_use,
$notes_url = undef,
) inherits ::nagios::client {

if $ensure != 'absent' {
Expand Down Expand Up @@ -45,6 +46,7 @@
notification_period => $notification_period,
max_check_attempts => $max_check_attempts,
use => $use,
notes_url => $notes_url,
}

}
1 change: 1 addition & 0 deletions manifests/check/mysql_health.pp
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@
$args_slave_io_running = '',
$args_slave_sql_running = '',
$args_open_files = '',
$notes_url = undef,
) {

# Generic overrides
Expand Down
2 changes: 2 additions & 0 deletions manifests/check/mysql_health/mode.pp
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@
$args = $::nagios::check::mysql_health::args
$modes_enabled = $::nagios::check::mysql_health::modes_enabled
$modes_disabled = $::nagios::check::mysql_health::modes_disabled
$notes_url = $::nagios::check::mysql_health::notes_url
$ensure = $::nagios::check::mysql_health::ensure

# Get the args passed to the main class for our mode
Expand All @@ -32,6 +33,7 @@
check_command => "check_nrpe_mysql_health_${mode_u}",
service_description => "mysql_health_${mode_u}",
servicegroups => 'mysql_health',
notes_url => $notes_url,
}
} else {
nagios::client::nrpe_file { "check_mysql_health_${mode_u}":
Expand Down
2 changes: 2 additions & 0 deletions manifests/check/ntp_time.pp
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@
$max_check_attempts = $::nagios::client::service_max_check_attempts,
$notification_period = $::nagios::client::service_notification_period,
$use = $::nagios::client::service_use,
$notes_url = undef,
) inherits ::nagios::client {

if $ensure != 'absent' {
Expand Down Expand Up @@ -37,6 +38,7 @@
notification_period => $notification_period,
max_check_attempts => $max_check_attempts,
use => $use,
notes_url => $notes_url,
}

}
2 changes: 2 additions & 0 deletions manifests/check/ping.pp
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@
$max_check_attempts = $::nagios::client::service_max_check_attempts,
$notification_period = $::nagios::client::service_notification_period,
$use = $::nagios::client::service_use,
$notes_url = undef,
) inherits ::nagios::client {

# Include defaults if no overrides in $args
Expand All @@ -28,6 +29,7 @@
notification_period => $notification_period,
max_check_attempts => $max_check_attempts,
use => $use,
notes_url => $notes_url,
}

}
3 changes: 1 addition & 2 deletions manifests/check/postgres/custom_query.pp
Original file line number Diff line number Diff line change
Expand Up @@ -64,9 +64,8 @@
service_description => "postgres_cq_${query_name}",
servicegroups => 'postgres',
}
@@nagios_command { "check_nrpe_postgres_cq_${query_name}":
nagios::command { "check_nrpe_postgres_cq_${query_name}":
command_line => "${nrpe} -c check_postgres_cq_${query_name}",
tag => regsubst($server,'^(.+)$','nagios-\1'),
}
} elsif ($query_ensure == 'absent') {
nagios::client::nrpe_file { "check_postgres_cq_${query_name}":
Expand Down
1 change: 1 addition & 0 deletions manifests/check/redis.pp
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@
$max_check_attempts = $::nagios::client::service_max_check_attempts,
$notification_period = $::nagios::client::service_notification_period,
$use = $::nagios::client::service_use,
$notes_url = undef,
) {

nagios::client::nrpe_plugin { 'check_redis':
Expand Down
6 changes: 4 additions & 2 deletions manifests/check/service.pp
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@
$max_check_attempts = $::nagios::client::service_max_check_attempts,
$notification_period = $::nagios::client::service_notification_period,
$use = $::nagios::client::service_use,
$sudo = false,
) {

ensure_resource('nagios::client::nrpe_plugin', 'check_service', {'ensure' => $ensure})
Expand All @@ -16,15 +17,16 @@
$nrpe_options = $::nagios::params::nrpe_options
$nrpe = "${nrpe_command} ${nrpe_options}"

@@nagios_command { "check_nrpe_service_${title}_${::fqdn}":
nagios::command { "check_nrpe_service_${title}_${::fqdn}":
ensure => $ensure,
command_line => "${nrpe} -c check_service_${title}",
tag => 'service',
}

nagios::client::nrpe_file { "check_service_${title}":
ensure => $ensure,
args => "-s ${title}",
plugin => 'check_service',
sudo => $sudo,
}

nagios::service { "check_service_${title}_${::nagios::client::host_name}":
Expand Down
2 changes: 2 additions & 0 deletions manifests/check/ssh.pp
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@
$max_check_attempts = $::nagios::client::service_max_check_attempts,
$notification_period = $::nagios::client::service_notification_period,
$use = $::nagios::client::service_use,
$notes_url = undef,
) {

nagios::service { "check_sshd_${check_title}":
Expand All @@ -22,6 +23,7 @@
notification_period => $notification_period,
max_check_attempts => $max_check_attempts,
use => $use,
notes_url => $notes_url,
}

}
2 changes: 2 additions & 0 deletions manifests/check/swap.pp
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@
$max_check_attempts = $::nagios::client::service_max_check_attempts,
$notification_period = $::nagios::client::service_notification_period,
$use = $::nagios::client::service_use,
$notes_url = undef,
) inherits ::nagios::client {

if $ensure != 'absent' {
Expand Down Expand Up @@ -36,6 +37,7 @@
notification_period => $notification_period,
max_check_attempts => $max_check_attempts,
use => $use,
notes_url => $notes_url,
}

}
35 changes: 35 additions & 0 deletions manifests/command.pp
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
# Define: nagios::command
#
# Wrap around the original nagios_command
# * To be able to export with the correct tag automatically
# * To be able to use defaults overridden or from facts
#
define nagios::command (
$command_line,
$ensure = undef,
$server = $nagios::client::server,
$host_name = $nagios::client::host_name,
$target = "/etc/nagios/nagios_command.cfg.d/${host_name}.cfg",
) {

# Support an array of tags for multiple nagios servers
$service_tag = regsubst($server,'^(.+)$','nagios-\1')
@@nagios_command { $title:
ensure => $ensure,
command_line => $command_line,
tag => $service_tag,
target => $target,
notify => Service['nagios'],
require => [
Package['nagios'],
File[dirname($target)],
],
}
@@nagios::file_perm { $title:
target => $target,
tag => $service_tag,
require => Nagios_command[$title],
}

}

16 changes: 16 additions & 0 deletions manifests/file_perm.pp
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
define nagios::file_perm (
$target,
) {
# Work around a puppet bug where created files are 600 root:root
# Also, restart service after resources are purged
$file_params = {
ensure => 'present',
owner => 'root',
group => 'nagios',
mode => '0640',
audit => 'content',
notify => Service['nagios'],
}
ensure_resource('file', $target, $file_params)

}
14 changes: 13 additions & 1 deletion manifests/host.pp
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@
$server = $nagios::client::server,
$address = $nagios::client::host_address,
$host_alias = $nagios::client::host_alias,
$target = "/etc/nagios/nagios_host.cfg.d/${title}.cfg",
$check_period = $nagios::client::host_check_period,
$check_command = $nagios::client::host_check_command,
$contact_groups = $nagios::client::host_contact_groups,
Expand Down Expand Up @@ -47,7 +48,10 @@
default => $use,
}

# Support an array of tags for multiple nagios servers
$service_tag = regsubst($server,'^(.+)$','nagios-\1')
@@nagios_host { $title:
host_name => $title,
address => $final_address,
alias => $host_alias,
check_period => $check_period,
Expand All @@ -59,7 +63,15 @@
notification_period => $notification_period,
use => $final_use,
# Support an arrays of tags for multiple nagios servers
tag => regsubst($server,'^(.+)$','nagios-\1'),
tag => $service_tag,
target => $target,
notify => Service['nagios'],
require => Package['nagios'],
}
@@nagios::file_perm { $title:
target => $target,
tag => $service_tag,
require => Nagios_host[$title],
}

}
Expand Down
Loading