Auteur Sujet: Utiliser un plugin récupéré sur nagios-exchange  (Lu 2194 fois)

Hors ligne Ezreal

  • Newbie Froggy
  • *
  • Messages: 49
  • Karma: 0
Utiliser un plugin récupéré sur nagios-exchange
« le: 23 janvier, 2012, 15:42:11 pm »
Bonjour,

Je souhaiterais savoir comment utiliser un plugin pour NAGIOS récupéré sur nagios-exchange.

Actuellement, mon serveur d'essai Nagios 3.3.1 tourne sur une VM Ubuntu 11.10 et je souhaiterais utiliser ce plugin : http://www.ciphron.de/gfx/pool/check_printer
Pour monitorer les copieurs et imprimantes réseau de mon entreprise (Ricoh, Konica, etc...)

Malheureusement je ne sais pas comment procéder.
Dois-je créer un nouveau document dans le dossier : /usr/local/nagios/libexec
Comme par exemple : /usr/local/nagios/libexec/check_printer
Et copier le contenu du lien ?

J'avoue être un peu perdu pour les plugins.

J'ai jusqu'à présent pu configurer le serveur sans trop de problèmes, en gérant les hostgroups, les contacts, les mails etc.

Je vous remercie.

Hors ligne surcouf

  • Modérateur Global
  • Super Froggy
  • *****
  • Messages: 1 694
  • Karma: 17
Re : Utiliser un plugin récupéré sur nagios-exchange
« Réponse #1 le: 23 janvier, 2012, 16:02:32 pm »
Bonjour,

Je souhaiterais savoir comment utiliser un plugin pour NAGIOS récupéré sur nagios-exchange.

Actuellement, mon serveur d'essai Nagios 3.3.1 tourne sur une VM Ubuntu 11.10 et je souhaiterais utiliser ce plugin : http://www.ciphron.de/gfx/pool/check_printer
Pour monitorer les copieurs et imprimantes réseau de mon entreprise (Ricoh, Konica, etc...)

Malheureusement je ne sais pas comment procéder.
Dois-je créer un nouveau document dans le dossier : /usr/local/nagios/libexec
Comme par exemple : /usr/local/nagios/libexec/check_printer
Et copier le contenu du lien ?

J'avoue être un peu perdu pour les plugins.

J'ai jusqu'à présent pu configurer le serveur sans trop de problèmes, en gérant les hostgroups, les contacts, les mails etc.
Tu peux le placer où tu le souhaites dans la mesure où le chemin absolu est bien spécifié lors de la définition de la commande pour Nagios. Cependant, s'il est écrit en Perl et qu'il a besoin de utils.pm, il vaut mieux le placer dans le même répertoire que ce dernier, à moins de modifier le dit plugin ou de définir la variable d'environnement PERL5LIB en préfixe de la commande.
Dans ton cas, il s'agit d'un script en PHP que je ne recommande pas, pour une raison de performance.
Les seuls langages performants pour développer des plugins avec Nagios sont le C et le Perl (à condition d'activer l'interpréteur Perl embarqué et le cache).
Raphaël 'SurcouF' Bordet

Hors ligne Ezreal

  • Newbie Froggy
  • *
  • Messages: 49
  • Karma: 0
Re : Utiliser un plugin récupéré sur nagios-exchange
« Réponse #2 le: 23 janvier, 2012, 16:57:30 pm »
Merci pour la réponse.

J'ai opté pour un autre plugin : http://exchange.nagios.org/directory/Plugins/Hardware/Printers/SNMP-Printer-Check/details
(J'éspère que celui-ci conviens)

J'ai ajouté les services donnés sur la page du plugin dans mon fichier printer.cfg, à savoir :
Citer
define service{
use generic-service
service_description Toner Supply
check_command check_snmp_printer!public!"CONSUM Toners"!20!10
}

define service{
use generic-service
service_description Printer Model
check_command check_snmp_printer!public!"MODEL"
}
(Je n'ai plus la quote exacte parce que je ne suis plus en entreprise en ce moment même)


Et ai ajouté ces lignes dans le fichier commands.cfg
Citer
define command{
command_name check_printers
command_line $USER1$/check_snmp_printer -H $HOSTADDRESS -C $ARG1$ -x $ARG2 -w $ARG3$ -c $ARG4$
}

J'ai fait vérifier les erreurs des fichiers .cfg, tout est OK
Les services apparaissent bien sur l'interface web de NAGIOS mais m'ont resortie un état Warning.
Je poursuivrais donc les essais demain.

Merci encore.

Hors ligne surcouf

  • Modérateur Global
  • Super Froggy
  • *****
  • Messages: 1 694
  • Karma: 17
Re : Re : Utiliser un plugin récupéré sur nagios-exchange
« Réponse #3 le: 23 janvier, 2012, 20:32:43 pm »
Merci pour la réponse.

J'ai opté pour un autre plugin : http://exchange.nagios.org/directory/Plugins/Hardware/Printers/SNMP-Printer-Check/details
(J'éspère que celui-ci conviens)
En shell, ce n'est guère mieux que du PHP.
Je préconiserais plutôt une version Perl, comme celle-ci (utilisant le module Net::SNMP et pas directement snmpwalk comme j'en ai déjà vu) :
http://exchange.nagios.org/directory/Plugins/Hardware/Printers/Perl-SNMP-Printer-check/details

Toutefois, il utilise utils.pm mais s'attend à le trouver dans « /usr/lib/nagios/plugins », ce qui correspond aux installations de type paquets Debian/RPM.
Si cela pose problème, plusieurs solutions :
  • Tu modifies la ligne 47 pour mentionner le dossier exact où se trouve utils.pm ;
  • Tu précèdes ta définition de commande par « PERL5LIB=$PERL5LIB:/le/dossier/exact ... » ;

J'ai ajouté les services donnés sur la page du plugin dans mon fichier printer.cfg, à savoir :
Citer
define service{
use generic-service
service_description Toner Supply
check_command check_snmp_printer!public!"CONSUM Toners"!20!10
}

define service{
use generic-service
service_description Printer Model
check_command check_snmp_printer!public!"MODEL"
}
(Je n'ai plus la quote exacte parce que je ne suis plus en entreprise en ce moment même)


Et ai ajouté ces lignes dans le fichier commands.cfg
Citer
define command{
command_name check_printers
command_line $USER1$/check_snmp_printer -H $HOSTADDRESS -C $ARG1$ -x $ARG2 -w $ARG3$ -c $ARG4$
}

J'ai fait vérifier les erreurs des fichiers .cfg, tout est OK
Les services apparaissent bien sur l'interface web de NAGIOS mais m'ont resortie un état Warning.
Je poursuivrais donc les essais demain.
Tout dépend des valeurs retournées, dans la mesure où tu as précisés des seuils.
Raphaël 'SurcouF' Bordet

Hors ligne Ezreal

  • Newbie Froggy
  • *
  • Messages: 49
  • Karma: 0
Re : Utiliser un plugin récupéré sur nagios-exchange
« Réponse #4 le: 24 janvier, 2012, 10:28:11 am »
Merci pour la réponse, je vais essayé le plugin que vous m'avez conseillé plus tard quand j'aurais un peu de temps à y consacrer.

Actuellement le plugin installé me retourne sur les deux services : 
" (Return code of 126 is out of bounds - plugin may not be executable)  "


Hors ligne surcouf

  • Modérateur Global
  • Super Froggy
  • *****
  • Messages: 1 694
  • Karma: 17
Re : Re : Utiliser un plugin récupéré sur nagios-exchange
« Réponse #5 le: 24 janvier, 2012, 10:41:51 am »
Merci pour la réponse, je vais essayé le plugin que vous m'avez conseillé plus tard quand j'aurais un peu de temps à y consacrer.

Actuellement le plugin installé me retourne sur les deux services : 
" (Return code of 126 is out of bounds - plugin may not be executable)  "
La solution est dans la réponse : le plugin n'est pas exécutable. Soit tu précises l'interpréteur (/usr/bin/perl) en préfixe, soit tu rends le plugin exécutable.
Raphaël 'SurcouF' Bordet

Hors ligne Ezreal

  • Newbie Froggy
  • *
  • Messages: 49
  • Karma: 0
Re : Utiliser un plugin récupéré sur nagios-exchange
« Réponse #6 le: 24 janvier, 2012, 13:59:24 pm »
Par rendre le plugin executable qu'entendez vous ?

J'ai trouvé un petit tuto sur le net donnant cette commande :
chmod 755 /usr/local/nagios/libexec/check_snmp_printer  (avec le plugin perl)

Maintenant dans l'interface NAGIOS j'ai un etat (null) pour mes deux services.

J'essayerais l'autre plugin dans quelques jours, je n'ai pas trop de temps en ce moment.

Merci pour le soutiens en tout cas !

Hors ligne Ezreal

  • Newbie Froggy
  • *
  • Messages: 49
  • Karma: 0
Re : Utiliser un plugin récupéré sur nagios-exchange
« Réponse #7 le: 06 février, 2012, 09:53:32 am »
Bonjour,

Je reviens de mon alternance et je suis toujours bloqué au même stade.
J'ai donné les droits 755 comme je l'avais décrit précédement et maintenant j'obtiens un retour :
(Return code of 127 is out of bounds - plugin may be missing)
Pourtant le chemin du plugin est bien /usr/local/nagios/libexec
Le fichier Utils.pm se trouve bien à cet emplacement : /usr/lib/nagios/plugins

Ai-je bien compris le principe précédent, pour rendre exécutable le plugin ?

Encore une fois, j'ai très peu d’expérience sur les distributions Linux.

Merci pour vos réponses et bonne journée.
« Modifié: 06 février, 2012, 09:56:30 am par Ezreal »

En ligne funkyman

  • Modérateur Global
  • Super Froggy
  • *****
  • Messages: 2 546
  • Karma: 50
Re : Utiliser un plugin récupéré sur nagios-exchange
« Réponse #8 le: 06 février, 2012, 10:19:07 am »
dans la definition de ton service tu fait appel a la commande check_snmp_printer
define service{
use generic-service
service_description Printer Model
check_command check_snmp_printer!public!"MODEL"
}

or la commande que tu as définis se nomme check_printers
define command{
command_name check_printers
command_line $USER1$/check_snmp_printer -H $HOSTADDRESS -C $ARG1$ -x $ARG2 -w $ARG3$ -c $ARG4$
}
Nagios 3.2.3, MK Livestatus, PNP4, Nagvis, Nagtrap, ex Ndoutils, Addon et Plugins perso.
1000 hosts, 5000 services (actif), 1 serveur nagios.

Hors ligne Ezreal

  • Newbie Froggy
  • *
  • Messages: 49
  • Karma: 0
Re : Utiliser un plugin récupéré sur nagios-exchange
« Réponse #9 le: 06 février, 2012, 10:46:50 am »
Pardon, je viens de me rendre compte de cette erreur, mais elle n'apparaissait plus dans mes fichiers de config.

J'ai bien :

commands.cfg
Citer
# 'check_snmp_printer' command definition
define command{
   command_name    check_snmp_printer
   command_line    $USER1$/check_snmp_printer -H $HOSTADDRESS -C $ARG1$ -x $ARG2 -w $ARG3$ -c $ARG4$
   }

Et
printer.cfg
Citer
define service{
   use          generic-service
   host_name      1,2,etc...
   service_description    Toner Supply
   check_command       check_snmp_printer!public!"CONSUM Toners"!20!10
   }

define service{
   use          generic-service
   host_name      1,2,etc...
   service_description    Printer Model
   check_command       check_snmp_printer!public!"MODEL"
   }

Et cette erreur 127

En ligne funkyman

  • Modérateur Global
  • Super Froggy
  • *****
  • Messages: 2 546
  • Karma: 50
Re : Utiliser un plugin récupéré sur nagios-exchange
« Réponse #10 le: 06 février, 2012, 11:17:47 am »
quel est le chemin pour $USER1$, c'est renseigné dans resource.cfg normalement
Nagios 3.2.3, MK Livestatus, PNP4, Nagvis, Nagtrap, ex Ndoutils, Addon et Plugins perso.
1000 hosts, 5000 services (actif), 1 serveur nagios.

Hors ligne Ezreal

  • Newbie Froggy
  • *
  • Messages: 49
  • Karma: 0
Re : Utiliser un plugin récupéré sur nagios-exchange
« Réponse #11 le: 06 février, 2012, 11:25:13 am »
Le chemin pour $USER1$ renseigné dans resource.cfg :

Citer
# Sets $USER1$ to be the path to the plugins
$USER1$=/usr/local/nagios/libexec

En ligne funkyman

  • Modérateur Global
  • Super Froggy
  • *****
  • Messages: 2 546
  • Karma: 50
Re : Utiliser un plugin récupéré sur nagios-exchange
« Réponse #12 le: 06 février, 2012, 11:27:03 am »
ll /usr/local/nagios/libexec/check_snmp_printer

?
Nagios 3.2.3, MK Livestatus, PNP4, Nagvis, Nagtrap, ex Ndoutils, Addon et Plugins perso.
1000 hosts, 5000 services (actif), 1 serveur nagios.

Hors ligne Ezreal

  • Newbie Froggy
  • *
  • Messages: 49
  • Karma: 0
Re : Utiliser un plugin récupéré sur nagios-exchange
« Réponse #13 le: 06 février, 2012, 11:59:00 am »
Je pense qu'il doit manquer un bout dans la question.

Si la question était l'emplacement du plugin c'est bien celle-ci :
Citer
/usr/local/nagios/libexec/check_snmp_printer

Par contre, à l'origine le nom du plugin était : check_snmp_printer.pl
Il apparait sous les deux formes check_snmp_printer et check_snmp_printer.pl dans mon dossier libexec

En ligne funkyman

  • Modérateur Global
  • Super Froggy
  • *****
  • Messages: 2 546
  • Karma: 50
Re : Utiliser un plugin récupéré sur nagios-exchange
« Réponse #14 le: 06 février, 2012, 12:23:08 pm »
il ne manque rien

que retourne la commande:

ll /usr/local/nagios/libexec/check_snmp_printer
Nagios 3.2.3, MK Livestatus, PNP4, Nagvis, Nagtrap, ex Ndoutils, Addon et Plugins perso.
1000 hosts, 5000 services (actif), 1 serveur nagios.