summaryrefslogtreecommitdiff
path: root/manifests
diff options
context:
space:
mode:
authorvarac <varacanero@zeromail.org>2010-10-23 02:55:17 +0200
committerMicah Anderson <micah@riseup.net>2013-02-14 17:58:59 -0500
commitbab19af527a21d689324a95aa9a0134c9aadb863 (patch)
treeba066100758aa5876b811de04ef181c6818fdf3e /manifests
parente06e4bd98c6a9310a349f26530bfa152b9cc4224 (diff)
basic pnp4nagios grapher integration
Diffstat (limited to 'manifests')
-rw-r--r--manifests/defaults/pnp4nagios.pp27
-rw-r--r--manifests/pnp4nagios.pp17
-rw-r--r--manifests/pnp4nagios/popup.pp17
3 files changed, 61 insertions, 0 deletions
diff --git a/manifests/defaults/pnp4nagios.pp b/manifests/defaults/pnp4nagios.pp
new file mode 100644
index 0000000..f6556c9
--- /dev/null
+++ b/manifests/defaults/pnp4nagios.pp
@@ -0,0 +1,27 @@
+class nagios::defaults::pnp4nagios {
+ # performance data cmds
+ # http://docs.pnp4nagios.org/de/pnp-0.6/config#bulk_mode_mit_npcd
+ nagios_command {
+ 'process-service-perfdata-file-pnp4nagios-bulk-npcd':
+ command_line => '/bin/mv /var/lib/nagios3/service-perfdata /var/spool/pnp4nagios/npcd/service-perfdata.$TIMET$';
+ 'process-host-perfdata-file-pnp4nagios-bulk-npcd':
+ command_line => '/bin/mv /var/lib/nagios3/host-perfdata /var/spool/pnp4nagios/npcd/host-perfdata.$TIMET$'
+ }
+
+ # nagios host templates
+ # http://docs.pnp4nagios.org/de/pnp-0.6/webfe
+
+ # this doesn't work, see manifests/pnp4nagios.pp
+ #nagios_host { 'host-pnp':
+ # action_url => '/pnp4nagios/index.php/graph?host=$HOSTNAME$&srv=_HOST_',
+ # register => 0,
+ # #ensure => absent;
+ #}
+
+ #nagios_service { 'service-pnp':
+ # #naginatorname => 'service-pnp',
+ # action_url => '/pnp4nagios/index.php/graph?host=$HOSTNAME$&srv=$SERVICEDESC$',
+ # register => 0,
+ # ensure => absent;
+ #}
+}
diff --git a/manifests/pnp4nagios.pp b/manifests/pnp4nagios.pp
new file mode 100644
index 0000000..051bad8
--- /dev/null
+++ b/manifests/pnp4nagios.pp
@@ -0,0 +1,17 @@
+class nagios::pnp4nagios {
+ include nagios::defaults::pnp4nagios
+
+ package { [php5, php5-gd, rrdcollect, rrdtool, librrdp-perl, librrds-perl ]:
+ ensure => installed }
+
+
+ # unfortunatly i didn't find a way to use nagios_host and nagios_service definition, because
+ # imho puppet can't handle the "name" variable needed in these 2 definitions
+ # so we need to copy a file here.
+
+ file { 'pnp4nagios-templates.cfg':
+ path => "$nagios::nagios_cfgdir/conf.d/pnp4nagios-templates.cfg",
+ source => [ "puppet:///modules/site-nagios/pnp4nagios/pnp4nagios-templates.cfg",
+ "puppet:///modules/nagios/pnp4nagios/pnp4nagios-templates.cfg" ]
+ }
+}
diff --git a/manifests/pnp4nagios/popup.pp b/manifests/pnp4nagios/popup.pp
new file mode 100644
index 0000000..372fe3b
--- /dev/null
+++ b/manifests/pnp4nagios/popup.pp
@@ -0,0 +1,17 @@
+class nagios::pnp4nagios::popup inherits nagios::pnp4nagios {
+ File['pnp4nagios-templates.cfg']{
+ path => "$nagios::nagios_cfgdir/conf.d/pnp4nagios-templates.cfg",
+ source => [ "puppet:///modules/site-nagios/pnp4nagios/pnp4nagios-popup-templates.cfg",
+ "puppet:///modules/nagios/pnp4nagios/pnp4nagios-popup-templates.cfg" ]
+ }
+
+ file { "/usr/share/$nagios::nagios_packagename/htdocs/ssi":
+ ensure => directory }
+
+ file { 'status-header.ssi':
+ path => "/usr/share/$nagios::nagios_packagename/htdocs/ssi/status-header.ssi",
+ source => [ "puppet:///modules/site-nagios/pnp4nagios/status-header.ssi",
+ "puppet:///modules/nagios/pnp4nagios/status-header.ssi" ]
+ }
+
+}