]> git.immae.eu Git - perso/Immae/Projets/Puppet.git/blobdiff - modules/profile/manifests/monitoring/services.pp
Put longer time for ntp checks
[perso/Immae/Projets/Puppet.git] / modules / profile / manifests / monitoring / services.pp
index 6e59ab1f91c21937c611f2b6ed3bf93a7e5e09df..5ff3c6dcb358215d3c367ed513f423535d212535 100644 (file)
@@ -1,20 +1,14 @@
 class profile::monitoring::services {
 
-  Nagios_service {
-    ensure  => "present",
-    owner   => "naemon",
-    group   => "naemon",
-    notify  => Service["naemon"],
-    before  => Service["naemon"],
-    require => File["/etc/naemon"],
-  }
+  $warn_1_load  = 1.5*$facts["processorcount"]
+  $warn_5_load  = $facts["processorcount"]
+  $warn_15_load = $facts["processorcount"]
+  $warn_load = join([$warn_1_load, $warn_5_load, $warn_15_load], ",")
 
-  sudo::conf {
-    default:
-      sudo_file_name => "naemon";
-    'naemon-fail2ban':
-      content => "naemon  ALL=(root) NOPASSWD: /usr/bin/fail2ban-client ping";
-  }
+  $max_1_load  = 2*$facts["processorcount"]
+  $max_5_load  = $facts["processorcount"]
+  $max_15_load = $facts["processorcount"]
+  $max_load = join([$max_1_load, $max_5_load, $max_15_load], ",")
 
   profile::monitoring::local_service {
     "Size on root partition":
@@ -27,20 +21,27 @@ class profile::monitoring::services {
       };
     "Average load":
       local => {
-        check_command => "check_local_load!8.0,8.0,8.0!10.0,10.0,10.0",
+        check_command => "check_local_load!$warn_load!$max_load",
       };
     "Swap usage":
       local => {
         check_command => "check_local_swap!20!10",
       };
     "fail2ban is active":
-      local => {
+      sudos   => {
+        "naemon-fail2ban" => "naemon  ALL=(root) NOPASSWD: /usr/bin/fail2ban-client ping",
+      },
+      local   => {
         check_command => "check_command_output!fail2ban-client ping!pong!-r root",
-        require       => Sudo::Conf["naemon-fail2ban"],
       };
     "NTP is activated and working":
-      local => {
-        check_command => "check_ntp",
+      master => {
+        check_interval      => "60",
+        freshness_threshold => Integer(60*60*1.5),
+      },
+      local  => {
+        check_command  => "check_ntp",
+        check_interval => "60"
       };
     "No mdadm array is degraded":
       common => {
@@ -50,4 +51,7 @@ class profile::monitoring::services {
         check_command => "check_md_raid",
       };
   }
+
+  Profile::Monitoring::Local_service <| |>
+  Profile::Monitoring::External_service <| |>
 }