aboutsummaryrefslogtreecommitdiff
path: root/personal_infra/puppet/modules/nagios/manifests
diff options
context:
space:
mode:
authoralex <alex@pdp7.net>2023-02-01 21:39:57 +0100
committeralex <alex@pdp7.net>2023-02-02 20:28:48 +0100
commit046bf646a4b559c68d5a82b79f59927aa150427b (patch)
tree16b9e243078962dcbb04cff2e22dc76c551d56e6 /personal_infra/puppet/modules/nagios/manifests
parent1953595077fdd374244196a3ece0abf5cfbda6e0 (diff)
Add Nagios setup
Diffstat (limited to 'personal_infra/puppet/modules/nagios/manifests')
-rw-r--r--personal_infra/puppet/modules/nagios/manifests/init.pp50
1 files changed, 50 insertions, 0 deletions
diff --git a/personal_infra/puppet/modules/nagios/manifests/init.pp b/personal_infra/puppet/modules/nagios/manifests/init.pp
new file mode 100644
index 00000000..8a13f535
--- /dev/null
+++ b/personal_infra/puppet/modules/nagios/manifests/init.pp
@@ -0,0 +1,50 @@
+class nagios {
+ package {'nagios':}
+ ->
+ service {'nagios':
+ ensure => running,
+ enable => true,
+ }
+
+ file {
+ default:
+ require => Package['nagios'],
+ notify => Service['nagios'],
+ ;
+ '/etc/nagios':
+ ensure => directory,
+ recurse => true,
+ force => true,
+ purge => true,
+ ;
+ '/etc/nagios/nagios.cfg':
+ content => epp('nagios/nagios.cfg'),
+ ;
+ # leave these unaffected
+ ['/etc/nagios/passwd', '/etc/nagios/cgi.cfg', '/etc/nagios/private/resource.cfg', '/etc/nagios/objects', '/etc/nagios/private', '/etc/nagios/objects/commands.cfg', '/etc/nagios/objects/timeperiods.cfg', '/etc/nagios/objects/templates.cfg']:
+ ensure => present,
+ ;
+ }
+
+ nagios_contact {'nagiosadmin':
+ use => 'generic-contact',
+ email => lookup('mail.root_mail'),
+ require => Package['nagios'],
+ notify => Service['nagios'],
+ owner => 'nagios',
+ }
+
+ nagios_contactgroup {'admins':
+ members => 'nagiosadmin',
+ require => Package['nagios'],
+ notify => Service['nagios'],
+ owner => 'nagios',
+ }
+
+ package {'httpd':}
+ ->
+ service {'httpd':
+ ensure => running,
+ enable => true,
+ }
+}