niklasschaefer
Goto Top

Nagios Core check disk smb Problem mit der Meldung share Volume not specified

Hallo Admin-Kollegen,
bin gerade dabei in unserem Netzwerk den Nagios am implementieren. Da ich mit dem NSClient auf die Nase gefallen bin möchte ich unsere Festplatten per check_disk_cmb prüfen lassen ob erreichbar und wie hoch die Festplattenkapazität ist.

Abfrage schaut so aus:
define service{
        use                             generic-service         ; Name of service template to use
        host_name                       WKH-FS01
        service_description             Laufwerk Abteilung
        check_command                   check_disk_smb! -H WKH-FS01 -s Abteilung -u Benutzername -p Passwort -W Domäne -w 85 -c 95
        }
Trotzdem erhalte ich eine Fehlermeldung/Warnung das ich das Share-Volume nicht angegeben habe. Dies mache ich ja bei -s mit 'Abteilung'

Hat von euch einer eine Idee was ich falsch mache?

Gruß Niklas

EDIT: Wenn ich das ganze über die shell ausführe bekomme ich ein sauberes Ergebnis zurück.

root@WKH-MONITORING:/# /usr/lib/nagios/plugins/check_disk_smb -H WKH-FS01 -s Abteilung -u Benutzername -p Passwort -W Domäne -w 85 -c 95
WARNING: Only 199.48G (8%) free on \\WKH-FS01\Abteilung | 'Abteilung'=2204731809792B;2056084779622.4;2297977106636.8;0;2418923270144  
root@WKH-MONITORING:/#
unbenannt2

Content-ID: 363775

Url: https://administrator.de/contentid/363775

Ausgedruckt am: 23.11.2024 um 11:11 Uhr

another-nimad
Lösung another-nimad 06.02.2018 aktualisiert um 17:25:10 Uhr
Goto Top
Hallo Admin-Kollegen,

Hallo!

Hat von euch einer eine Idee was ich falsch mache?
Kann es sein, dass du "check:disk_smb" ggf. nicht oder nicht korrekt als command definiert hast?

Du gibst in der commands.cfg die checks mit den gewünschten Argumenten an, und rufst den so definierten Befehl nur noch über die Servicedefinition auf.

Anstelle von
 define service{
         use                             generic-service         ; Name of service template to use
         host_name                       WKH-FS01
         service_description             Laufwerk Abteilung
         check_command                   check_disk_smb! -H WKH-FS01 -s Abteilung -u Benutzername -p Passwort -W Domäne -w 85 -c 95
         } 

Sollte der Service wie folgt aussehen:
 define service{
         use                             generic-service         ; Name of service template to use
         host_name                       WKH-FS01
         service_description             Laufwerk Abteilung
         check_command                   check_disk_smb!share!benutzername!passwort!....
         } 

In der commands.cfg trägst du dann folgendes ein:
define command { 
command_name: check_disk_smb
command_line: $USER1$/check_disk_smb -H $HOSTADDRESS$ -s $ARG1$ -u $ARG2$ -p $ARG3$ ........-w 80 -c  90
} 
(ggf. Werte und zusätzliche Argumente anpassen)

Der manuelle Aufruf des Checks funktioniert deswegen, weil du ja die benötigten Argumente übergibst, dies ist bei deinem Check bisher nicht, bzw. falsch der Fall.

Gruß Niklas

Ebenfalls Gruß von Niclas ;)
niklasschaefer
niklasschaefer 07.02.2018 aktualisiert um 06:50:32 Uhr
Goto Top
Guten Morgen,
ich habe das ganze gerade mal getestet. Irgendwie scheine ich auf dem Schlauch zu stehen.

define service{ 
         use                             generic-service         ; Name of service template to use 
         host_name                       WKH-FS01 
         service_description             Laufwerk Daten-allgemein 
	 check_command                   check_disk_smb!Daten-allgemein!Benutzername!Passwort!Domäne! 
         } 

 define service{ 
         use                             generic-service         ; Name of service template to use 
         host_name                       WKH-FS01 
         service_description             Laufwerk Abteilung 
	 check_command                   check_disk_smb!Abteilung!Benutzername!Passwort!Domäne! 
         } 

Das habe ich an services eingetragen. Wenn ich unter der /etc/nagios3/commands.cfg dann:

define command {  
	command_name check_disk_smb 
	command_line $USER1$/check_disk_smb -H $HOSTADDRESS$ -s $ARG1$ -u $ARG2$ -p $ARG3$ -W $ARG4$ -w 80 -c  90 
} 

Erhalte ich wenn ich denn Nagios über /etc/init.d/nagios3 restart folgende Meldung:
root@WKH-MONITORING:/# /etc/init.d/nagios3 restart
[....] Restarting nagios3 (via systemctl): nagios3.serviceJob for nagios3.service failed because the control process exited with error code. See "systemctl status nagios3.service" and "journalctl -xe" for details.  
 failed!

Gruß und Danke Niklas
em-pie
Lösung em-pie 07.02.2018 um 07:57:25 Uhr
Goto Top
Moin,

in der Service-Definition musst du beim share dann natürlich "\\YourServer\Share" eintragen und nicht bloß "share" .

Ausser, du definierst im Command direkt :
[...] -s $HOSTADRESS$\$ARG1$ [...]

(Ggf. mit "" umschlossen)

Gruß
em-pie
another-nimad
Lösung another-nimad 07.02.2018 um 08:55:57 Uhr
Goto Top
Guten Morgen

 define service{ 
          use                             generic-service         ; Name of service template to use 
          host_name                       WKH-FS01 
          service_description             Laufwerk Daten-allgemein 
 	 check_command                   check_disk_smb!Daten-allgemein!Benutzername!Passwort!Domäne! 
          } 
 

Hier fehlt meines Erachtens das Argument für den Host, auf dem die Share liegt
check_command check_disk_smb!WKH-FS01!Daten-allgemein!Benutzername!Passwort!Domäne


Mit dem Befehl
nagios -v /etc/pfad-zur-nagios-config/nagios.cfg
nagios -v /etc/nagios3/nagios.cfg
kannst du die Konfiguration auf Konsistenz überprüfen, dort werden dir recht genau Fehler genannt, sofern vorhanden.
niklasschaefer
niklasschaefer 07.02.2018 um 15:16:11 Uhr
Goto Top
Hallo,
Genau so schauts aus. Durch eure Hilfe mit den Checks konnte ich sogar NSClient++ zum Fliegen bringen und kann jetzt natürlich auch noch wesentlich mehr überwachen und auch genauer. Jetzt bin ich noch dran die einzelnen Services über check_nt am abfragen auch das läuft schon sehr gut.

Wieder ein dickes Lob an euch zwei das ihr mir auf die Sprünge geholfen habt.


Gruß und Danke

Niklas