Nagios + commande "check_disk_smb"

Nagios + commande "check_disk_smb" - réseaux et sécurité - Linux et OS Alternatifs

Marsh Posté le 08-08-2007 à 10:58:42    

Bonjour
 
Je viens de  mettre en place nagios dans mon entreprise. Avec les commande de base (check_ping, check_tcp,...) cela marche très bien.  
Mais là où j'ai un problème, c'est sur mon PDC samba avec la commande "check_disk_smb".
Lorsque j'effectue ce test :

Code :
  1. test-nagios:/usr/lib/nagios/plugins# ./check_disk_smb -H pdc-linux -s PublicPC -W SMBDOM -u root -p passwd


Cela marche nikel, il me donne le pourcentage d'espace disque libre sur le répertoire en partage.
 
Mais dans le fichier "services.cfg"  dans la partie concerant mon PDC cela ne marche pas.  
L'interface web m'indique dans la partie host du PC : "Status Information:           **ePN /usr/lib/nagios/plugins/check_disk_smb: "Option s requires an argument".",
et dans la partie service : "Status Information: Invalid warning threshold: -s"
 

Code :
  1. define service{
  2.         use                     generic-service
  3.         host_name               pdc-linux
  4.         service_description     Connexions sur un volume SMB
  5.         is_volatile             0
  6.         check_period            24x7
  7.         max_check_attempts      3
  8.         normal_check_interval   5
  9.         retry_check_interval    1
  10.         contact_groups          root
  11.         notification_interval   240
  12.         notification_period     24x7
  13.         notification_options    w,u,c,r
  14.         check_command           check_disk_smb!pdc-linux!PublicPC!root!passwd!SMBDOM
  15. # Déclaration de pdc-linux
  16. define host{
  17.         use generic-host;
  18.         host_name pdc-linux;
  19.         alias PDC;
  20.         address 192.168.4.3;
  21.         parents switch6
  22. ; Surveillance des services SMB, NFS et usage disque dur par SNMP.
  23.         check_command check_disk_smb;
  24.         max_check_attempts 10;
  25.         notification_interval 60;
  26.         notification_period 24x7;
  27.         notification_options d,u,r;
  28.         contact_groups root;
  29.         hostgroups station_sun;
  30. }


 
Merci d'avance
 
Cordialement


Message édité par misterfab le 08-08-2007 à 11:00:07
Reply

Marsh Posté le 08-08-2007 à 10:58:42   

Reply

Marsh Posté le 08-08-2007 à 13:36:00    

tu n'as pas de seuil d'alerte, il ne peut pas te dire si le service est ok ou pas. c'est pas comme du ping on/off, il faut des seuils (threshold), il faut compléter la fin de ta commande. Regarde le checkcommands.cfg
 
ha oui, les mots de passe dans les fichiers textes, c'est le mal. Tu ne peut pas t'authentifier en anonyme ?


---------------
"Your god is too small", Giordano Bruno, 1548 - 1600
Reply

Marsh Posté le 08-08-2007 à 14:24:14    

Merci pour l'infos sur les seuils je vais tester cela ^^
 
non sur mon pdc je ne peux pas me loguer en anonyme.

Reply

Marsh Posté le 08-08-2007 à 14:50:38    

je vien de rajouter les options "-w" et "-c" à la commande check_disk_smb.
 
en lancant le script selon le pourcentage on voit bien le changement d'état mais dans Nagios j'ai toujours le même problème.
 

Code :
  1. define service{
  2.         use                     generic-service
  3.         host_name               pdc-linux
  4.         service_description     Connexions sur un volume SMB
  5.         is_volatile             0
  6.         check_period            24x7
  7.         max_check_attempts      3
  8.         normal_check_interval   5
  9.         retry_check_interval    1
  10.         contact_groups          root
  11.         notification_interval   240
  12.         notification_period     24x7
  13.         notification_options    w,u,c,r
  14.         check_command           check_disk_smb!pdc-linux!PublicPC!root!passwd!SMBDOM!80%!95%
  15. }


Message édité par misterfab le 08-08-2007 à 14:51:12
Reply

Marsh Posté le 08-08-2007 à 14:58:44    

tu as vérifié le fichier checkcommands.cfg ? C'est lui qui gère les paramètres passés aux commandes.


---------------
"Your god is too small", Giordano Bruno, 1548 - 1600
Reply

Marsh Posté le 08-08-2007 à 15:03:06    

Je crois que c'est ton paramètre "domaine" qui gène. Moi je ne l'ai pas par défaut dans mon checkcommands.cfg. S'il n'est pas chez toi, il y aura un décalage dans l'interprétation des paramètres qui sont envoyés par le fichier de service.
 
en ligne de commande par contre, chaque paramètre est clairement identifié, c'est pour ça que ça marche. Pas dans le ficher de service, du moins s'il y a un problème avec le fichier checkcommands.cfg.


---------------
"Your god is too small", Giordano Bruno, 1548 - 1600
Reply

Marsh Posté le 08-08-2007 à 15:28:58    

tu as raison apres vérification du bon fichiers checkcommands.cfg
 
par défauts "check_disk_smb" donne cela :

Code :
  1. # 'check_disk_smb' command definition
  2. define command{
  3.         command_name    check_disk_smb
  4.         command_line    /usr/lib/nagios/plugins/check_disk_smb -H "$ARG1$" -s $ARG2$
  5.         }


 
En réalité j'auré du utiliser cette commande :

Code :
  1. # 'check_disk_smb_workgroup_user' command definition
  2. define command{
  3.         command_name    check_disk_smb_workgroup_user
  4.         command_line    /usr/lib/nagios/plugins/check_disk_smb -H "$ARG1$" -s $ARG2$ -W $ARG3$ -u $ARG4$ -p $ARG5$
  5.         }


 
Donc si j'ai bien compris dans le fichier "services.cfg" à la place de "check_disk_smb" je mets "check_disk_smb_workgroup_user" avec les options indiqué ci-dessus.
 
 
 
J'ai modifié aussi dans le fichier "hosts.cfg" la commande à utiliser malgrè le fait d'avoir relancer nagios. Dans l'interface web dans la partie host de pdc-linux, j'ai toujours la commande "check_disk_smb" alors que je l'ai bien changé et le meme message d'erreur que précédemment. Dans la partie service, j'ai le message d'erreur qui a changé : "Invalid warning threshold: -H"
 
En ligne de commande après option -H lorsque je mets pdc-linux cela marche bien cela devrait être le cas avec nagios


Message édité par misterfab le 08-08-2007 à 15:46:12
Reply

Marsh Posté le 08-08-2007 à 15:37:12    

C'est parce que tu n'as pas modifié le short name de la commande, une ou deux ligne plus haut que la commande elle-même, dans le fichier de service.
 
pense aussi à ajouter -w et -c dans le fichier de checkcommand, pour pouvoir ajouter des threshold.
 
T'es sûr pour les guillemets autour du hostname ?


---------------
"Your god is too small", Giordano Bruno, 1548 - 1600
Reply

Marsh Posté le 08-08-2007 à 15:56:24    

roscocoltran a écrit :

C'est parce que tu n'as pas modifié le short name de la commande, une ou deux ligne plus haut que la commande elle-même, dans le fichier de service.


 
Je ne trouve pas d'endroit dans le fichier "services.cfg" où modifier le short name à part à la ligne check_command

Code :
  1. # Déclaration n°1 du service à surveiller pour l'hôte pdc-linux
  2. define service{
  3.         use                     generic-service
  4.         host_name               pdc-linux
  5.         service_description     Connexions sur un volume SMB
  6.         is_volatile             0
  7.         check_period            24x7
  8.         max_check_attempts      3
  9.         normal_check_interval   5
  10.         retry_check_interval    1
  11.         contact_groups          root
  12.         notification_interval   240
  13.         notification_period     24x7
  14.         notification_options    w,u,c,r
  15.         check_command           check_disk_smb_workgroup_user!"pdc-linux"!PublicPC!SMBDOM!root!passwd
  16. }


 

roscocoltran a écrit :

T'es sûr pour les guillemets autour du hostname ?


 
J'ai fait un simple copié-collé du fichier. Donc je pense pas qu'il y est d'erreur. Mais c'est vrai quand ligne de commande je ne mets paps de guillemets :/

Reply

Marsh Posté le 08-08-2007 à 16:12:59    

J'ai un doute concernant le nom affiché, je confond peut-être avec le short name des hotes. stoppe nagios, vérifie que tous ses process sont arrêtés, puis redémarre-le.
 
tu as regardé les logs de nagios au lancement pour voir si tes fichiers de conf sont corrects ?


---------------
"Your god is too small", Giordano Bruno, 1548 - 1600
Reply

Marsh Posté le 08-08-2007 à 16:12:59   

Reply

Marsh Posté le 08-08-2007 à 17:04:27    

D'apres les logs mes fichiers de conf sont correct, voici les log au moment de l'arret et du redémarrage d nagios :

Code :
  1. [1186585402] Caught SIGTERM, shutting down...
  2. [1186585402] Successfully shutdown... (PID=9968)
  3. [1186585485] Nagios 2.6 starting... (PID=10140)
  4. [1186585485] LOG VERSION: 2.0
  5. [1186585485] Warning: Contact 'fg' is not a member of any contact groups!
  6. [1186585485] Finished daemonizing... (New PID=10141)


 
le contact fg est un contact que j'avais créé pour testé nagios, contact que je n'utilise plus.

Reply

Marsh Posté le 08-08-2007 à 17:27:20    

mais tu as toujours des erreurs ou c'est simplement le nom qui ne s'est pas mis à jour ?


---------------
"Your god is too small", Giordano Bruno, 1548 - 1600
Reply

Marsh Posté le 09-08-2007 à 09:18:08    

J'ai toujours une erreur concernant la commande "check_disk_smb_workgroup_user", le message d'erreur est un poil différents que le précédent :

Code :
  1. Status Information: Invalid warning threshold: -H


Or en ligne de commande après le "-H" quand je mets pdc-linux cela marche.
 
La commande défini pour nagios est :

Code :
  1. define command{
  2.        command_name    check_disk_smb_workgroup_user
  3.        command_line    /usr/lib/nagios/plugins/check_disk_smb -H "$ARG1$" -s $ARG2$ -W $ARG3$ -u $ARG4$ -p $ARG5$
  4.        }


donc dans le fichier service, on l'écrit comme ceux-ci, selon l'ordre précisé dans le fichier checkcomands.cfg :

Code :
  1. check_disk_smb_workgroup_user!pdc-linux!PublicPC!SMBDOM!root!passwd


Message édité par misterfab le 09-08-2007 à 09:18:52
Reply

Marsh Posté le 09-08-2007 à 09:24:44    

essaie sans les guillemets, ça me semble bizarre.


---------------
"Your god is too small", Giordano Bruno, 1548 - 1600
Reply

Marsh Posté le 09-08-2007 à 11:31:18    

Là je n'arrive pas à comprendre pourquoi la commande ne fonctionne pas dans nagios alors qu'en ligne de commande elle est OK.
 
Dans l'interface web, dans la partie host, j'ai ce message d'erreur :

Code :
  1. **ePN /usr/lib/nagios/plugins/check_disk_smb: "Option p requires an argument".


dans la partie service, j'ai celui-ci :

Code :
  1. Status Information: Invalid warning threshold: -H


 
Est-il possible que dans un autre fichier style cgi.cfg ou nagios.cfg, il y aurait une erreur qui serait responsable de ce plantage ?
 
Je sens que cette commande va partir au oubliette bien que j'aimerai savoir pourquoi elle "merde". :/

Reply

Marsh Posté le 09-08-2007 à 11:43:26    

Pour info moi j'ai  

Code :
  1. dans services.cfg :
  2. check_command                   check_smb!pdc!public!test!parisgeo
  3. dans checkcommands.cfg :
  4. command_line            $USER1$/check_disk_smb -H $ARG1$ -s $ARG2$ -u $ARG3$ -p $ARG4$


 
sachant que je l'ai pas fait mais ailleurs, on peut mettre -p $USERX$ et definir le passwd dans le fichier ressources.cfg


---------------
Never f**k with your systems administrator. Why? Because they know what you do with all that free time! |?? | SAVE Jericho !
Reply

Marsh Posté le 09-08-2007 à 14:22:12    

avec le fichier ressources.cfg, si j'ai bien compris je mats dedans le mot de passe

Code :
  1. # Sets $USER1$ to be the path to the plugins
  2. $USER1$=/usr/lib/nagios/plugins
  3. # Sets $USER2$ to be the path to event handlers
  4. #$USER2$=/usr/lib/nagios/plugins/eventhandlers
  5. # Store some usernames and passwords (hidden from the CGIs)
  6. #$USER3$=someuser
  7. $USER4$=passwd


 
puis dans le fichier checkcommand.cfg je remplace $ARG4$ par $USER4$ :

Code :
  1. # 'check_disk_smb_workgroup_user' command definition
  2. define command{
  3.         command_name    check_disk_smb_workgroup_user
  4.         command_line    /usr/lib/nagios/plugins/check_disk_smb -H $ARG1$ -s $ARG2$ -W $ARG3$ -u $ARG4$ -p $USER4$
  5.         }


 
Et donc dans le fichier service je n'ai plus besoin de préciser l'option "-p", est-ce exact ?
 

Le_Tolier a écrit :

Pour info moi j'ai  

Code :
  1. dans services.cfg :
  2. check_command                   check_smb!pdc!public!test!parisgeo




 
Su rmon PDC le repertoire en partage se nomme PublicPC.


Message édité par misterfab le 09-08-2007 à 14:24:46
Reply

Marsh Posté le 09-08-2007 à 16:03:25    

ca y est j'ai la même erreur dans la partie host et dans la partie service de l'interface web avant j'avais une erreur différentes dans ces parties. l'erreur est :

Code :
  1. Status Information:    Invalid warning threshold: -H


 
J'ai mis le domaine, l'utilisateur et le mot de passe dans le fichiers ressources.cfg

Reply

Marsh Posté le 09-08-2007 à 19:03:19    

le warning threshold, c'est "w". Ajoute-le en fin de ligne. Après tout c'est quand même le but, interprter le résultat de la commande en fonction de tes seuils, sinon nagios ne sais pas quoi faire de ton script.


---------------
"Your god is too small", Giordano Bruno, 1548 - 1600
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed