diff options
Diffstat (limited to '')
-rw-r--r-- | services/applications.cf | 1 | ||||
-rw-r--r-- | services/applications/nagios.cf | 1 | ||||
-rw-r--r-- | services/applications/nrpe.cf | 34 | ||||
-rw-r--r-- | services/main.cf | 3 |
4 files changed, 39 insertions, 0 deletions
diff --git a/services/applications.cf b/services/applications.cf index b33b344..2c66ca8 100644 --- a/services/applications.cf +++ b/services/applications.cf @@ -7,6 +7,7 @@ body file control "services/applications/ipam.cf", "services/applications/nagios.cf", "services/applications/nginx.cf", + "services/applications/nrpe.cf", "services/applications/php56.cf", "services/applications/sshd.cf", }; diff --git a/services/applications/nagios.cf b/services/applications/nagios.cf index ca37cbf..8c732c8 100644 --- a/services/applications/nagios.cf +++ b/services/applications/nagios.cf @@ -5,6 +5,7 @@ bundle agent nagios "packages" slist => { "nagios4", "nagios-plugins", + "nrpe", }; methods: nagios:: diff --git a/services/applications/nrpe.cf b/services/applications/nrpe.cf new file mode 100644 index 0000000..f2a4c3f --- /dev/null +++ b/services/applications/nrpe.cf @@ -0,0 +1,34 @@ +bundle agent nrpe +{ + vars: + freebsd.nrpe:: + "packages" slist => { + "nrpe", + "nagios-plugins", + }; + methods: + freebsd.nrpe:: + "nrpe" usebundle => install_package("$(this.bundle)", "$(nrpe.packages)"); + "nrpe" usebundle => add_rc_conf_line("$(this.bundle)", "nrpe2_enable=\"YES\""); + files: + freebsd.nrpe:: + "/usr/local/etc/nrpe.cfg" + create => "true", + edit_defaults => empty, + perms => system_owned("444"), + edit_template => "$(sys.inputdir)/templates/nrpe/nrpe.cfg", + classes => if_repaired("nrpe_nrpe_cfg_file_repaired"); + classes: + freebsd.nrpe:: + "nrpe2_service_running" expression => returnszero("/usr/sbin/service nrpe2 status", "noshell"); + commands: + freebsd.nrpe.!nrpe2_service_running:: + "/usr/sbin/service nrpe2 start" classes => if_repaired("nrpe2_service_repaired"); + freebsd.nrpe.nrpe_nrpe_cfg_file_repaired:: + "/usr/sbin/service nrpe2 restart" classes => if_repaired("nrpe2_service_restarted"); + reports: + any:: + "$(this.bundle): /usr/local/etc/nrpe.cfg file repaired" ifvarclass => "nrpe_nrpe_cfg_file_repaired"; + "$(this.bundle): nrpe2 service repaired" ifvarclass => "nrpe2_service_repaired"; + "$(this.bundle): nrpe2 service restarted" ifvarclass => "nrpe2_service_restarted"; +} diff --git a/services/main.cf b/services/main.cf index 6d25f3e..48697a7 100644 --- a/services/main.cf +++ b/services/main.cf @@ -37,9 +37,12 @@ bundle agent classify "legend", }; "mail_servers" or => { "legend" }; + "nrpe" expression => "freebsd"; methods: ipam:: "ipam" usebundle => ipam; nagios:: "nagios" usebundle => nagios; + nrpe:: + "nrpe" usebundle => nrpe; } |