Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
installation:zusaetzliche_software:nagios_server_client_-_config [2012/01/25 12:20]
ronnyk
installation:zusaetzliche_software:nagios_server_client_-_config [2017/01/26 19:09]
maik ↷ Seite von nagios_server:client_-_config nach installation:zusaetzliche_software:nagios_server_client_-_config verschoben und umbenannt
Zeile 27: Zeile 27:
 command[check_swap]=/​usr/​lib/​nagios/​plugins/​check_swap -av -w 80% -c 20% command[check_swap]=/​usr/​lib/​nagios/​plugins/​check_swap -av -w 80% -c 20%
 command[check_samba]=/​usr/​lib/​nagios/​plugins/​check_disk_smb -H 10.200.200.253 -s crm -u CRM --password='​...'​ command[check_samba]=/​usr/​lib/​nagios/​plugins/​check_disk_smb -H 10.200.200.253 -s crm -u CRM --password='​...'​
 +command[check_mem]=/​usr/​lib/​nagios/​plugins/​check_procs -w 4000000 -c 5000000 --metric=VSZ
 +command[check_cpu]=/​usr/​lib/​nagios/​plugins/​check_procs ​ -w 80 -c 96 --metric=CPU
 +
 </​code>​ </​code>​
  
Zeile 191: Zeile 194:
 </​code>​ </​code>​
  
-<​code>​ +Anschliessend das Script konfigurieren:​
-[root@crmsrv /]# dpkg -i Megactl_0.4.1.deb +
-</​code>​+
  
 <​code>​ <​code>​
Zeile 201: Zeile 202:
 Sie müssen dieses Skript an Ihre Bedürfnisse anpassen. Sie müssen dieses Skript an Ihre Bedürfnisse anpassen.
  
-<​sxh ​bash>+<​sxh ​php>
  
-  - !/bin/bash+  - !/usr/bin/php -n 
 +<?php
  
-HOST=$(hostname+define('​SLOT',​ '​1'​); 
-SUDO=/​usr/​bin/​sudo +define('​SUDO', '/​usr/​bin/​sudo'); 
-MEGACTL=/usr/sbin/megasasctl +define('​ACUCLI',​ '/usr/sbin/hpacucli'​);​
-ADMIN=test@example.com+
  
-CHECKRAID=$($SUDO $MEGACTL | grep -i 'degraded\|fail')+$fp_controller = popen(SUDO." "​.ACUCLI."​ controller slot="​.SLOT."​ show status",​ "​r"​);​ 
 +$fp_drives ​    = popen(SUDO." "​.ACUCLI."​ controller slot="​.SLOT."​ pd all show status",​ "​r"​);​ 
 +$controller ​   = array_map('trim', explode("​\n", trim(stream_get_contents($fp_controller))));​ 
 +$drives ​       = array_map('trim', explode("​\n",​ trim(stream_get_contents($fp_drives))));
  
-if (( $? != 0 )) +if (count($controller< 2{ 
-then +  echo 'No Controller-Information found.';​ 
-  echo "​OK ​$HOST - RAID OK" +         ​exit(2); 
-     ​exit 0; +} 
-else +elseif ​(!count($drives)) { 
-  echo -e "$($SUDO $MEGACTL)" | mail $ADMIN -s "$HOST RAID Error" +  echo 'No physical drives found.'​
-     RAIDDETAILS=$($SUDO $MEGACTL | grep -i '​rebuild'​) +         exit(2)
-     if (( $? == 0 )) +}
-     then +
-         echo "​WARNING - $HOST - RAID rebuilding"​ +
-         exit 1; +
-     ​else +
-         echo "​CRITICAL - $HOST - RAID critical"​ +
-         exit 2; +
-     fi +
-fi+
  
-echo "​CRITICAL ​- $HOST RAID unknown"​ +if (substr($controller[1],​ -2) != '​OK'​) { 
-exit 3;+  ​echo $controller[0].' ​'.$controller[1];​ 
 +         ​exit(2);​ 
 +
 +elseif (isset($controller[2]) && substr($controller[2], ​-2) != '​OK'​) { 
 +  echo $controller[0].'​ - '​.$controller[2];​ 
 +         exit(1); 
 +
 +elseif (isset($controller[3]) && substr($controller[3],​ -2) != '​OK'​) { 
 +  echo $controller[0].'​ - '​.$controller[3]; 
 +         ​exit(1);​ 
 +
 + 
 +foreach ($drives as $drive) { 
 +  if (substr($drive,​ -2) == '​OK'​) { 
 +                 ​continue;​ 
 +         } 
 + 
 +<​code> ​      echo $controller[0].'​ - '​.$drive;​ 
 +</​code>​ 
 +<​code> ​      if (substr($drive,​ -6) == '​Failed'​) exit(2); 
 +       ​else ​                               exit(1); 
 +</​code>​} 
 + 
 +echo $controller[0].'​ OK'; 
 +exit(0); 
 + 
 +?>
  
 </​sxh>​ </​sxh>​
  
 <​code>​ <​code>​
-[root@crmsrv /]# chmod +x /​usr/​lib/​nagios/​plugins/​check_lsi+[root@crmsrv /]# chmod +x /​usr/​lib/​nagios/​plugins/​check_hpsmart
 </​code>​ </​code>​
  
Zeile 245: Zeile 267:
  
 <​code>​ <​code>​
-nagios ALL=NOPASSWD:​ /usr/sbin/megasasctl+nagios ALL=NOPASSWD:​ /usr/sbin/hpacucli
 </​code>​ </​code>​
  
Zeile 251: Zeile 273:
  
 <​code>​ <​code>​
-[root@crmsrv /]# sudo -u nagios /​usr/​lib/​nagios/​plugins/​check_lsi+[root@crmsrv /]# sudo -u nagios /​usr/​lib/​nagios/​plugins/​check_hpsmart
 </​code>​ </​code>​
  
Zeile 316: Zeile 338:
 </​code>​ </​code>​
  
-Tauschen Sie 'host' ​mit dem hostnamen.+Tauschen Sie host mit dem hostnamen.
  
 <​code>​ <​code>​