Translations of this page:

This is an old revision of the document!


Configuration

La configuration des différences modes des traitement des données de performances vas être expliqué ci-dessous.

Mode Synchronisé

Le mode synchronisé est le plus simple pour intégrer le collecteur de donnée process_perfdata.pl dans nagios. Tous les évènement vos déclencher l'exécution de process-service-perfdata.

Dans un premier temps vous devez activer la collecte des données de performance (process_performance_data) dans le fichier nagios.cfg. Notez que cette directive est surement déjà présente et configurer par défaut a “0”.

 process_performance_data=1

La collecte des données de performance doit être désactivé dans la définition de chaque Host ou service pour lequel vous NE SOUHAITER PAS collecter ces données.

define service {
   ...
   process_perf_data 0
   ...
}

Depuis Nagios 3.x il est possible de désactiver l'export des variables d'environnement (Pour optimiser au maximum les performances du system). Malheureusement cette directive doit être activée pour permettre l'utilisation du mode synchronisé. Soit vous utilisez la valeur par défaut (ce qui veux dire que l'export est activé) ou vous pouvez définir la directive dans nagios.cfg

enable_environment_macros=1

En plus de cela, la commande pour traiter les données de performance doit être spécifié dansnagios.cfg

service_perfdata_command=process-service-perfdata

Depuis la version 3.0 de Nagios il peu être utile d'activer également l'analyse des performances pour les Hosts. Due au changement de logique pour la vérification des Hosts Nagios 3 effectue désormais des contrôles réguliers.

host_perfdata_command=process-host-perfdata

La nouvelle commande doit également être référencé dans la configuration de Nagios. Si vous avez utilisé le guide d'installation rapide pour installer Nagios, alors vous pouvez modifier la définition dans la fichier commands.cfg. La commande process_perfdata.pl n'a pas besoin d'argument a part l'option -d ( DATATYPE ) si vous voulez analyser les performances résultant de la vérification des hosts.

define command {
       command_name    process-service-perfdata
       command_line    /usr/bin/perl /usr/local/pnp4nagios/libexec/process_perfdata.pl
}

define command {
       command_name    process-host-perfdata
       command_line    /usr/bin/perl /usr/local/pnp4nagios/libexec/process_perfdata.pl -d HOSTPERFDATA
}

Note: process_perfdata.pl ne peu pas tourner sous ePN ( embedded Perl Nagios ). Dans ce cas le script doit être appeler en utilisant /usr/bin/perl ( ou le chemin ou est installer l'exécutable perl). Si vous utilisez Nagios 3.x ou n'utilisez pas ePN il n'y a pas besoin de spécifier /usr/bin/perl.

FIXME

Bulk Mode

Bulk mode est un mode un peu plus compliqué que le mode synchronisé mais reduit clairement la charge sur le serveur Nagios car le collecteur de donnée process_perfdata.pl n'est pas appelé a chaque vérification de service/host.

In bulk mode Nagios écrie les données dans un fichier temporaire dans un format bien définie. Ce fichier est traité par process_perfdata.pl a intervalle régulier. Nagios prend en charge le démarrage et le lancement périodique.

Le traitement des performances dans être activer dans nagios.cfg

 process_performance_data=1

de plus que quelque directives doivent être ajoutées:

#
# service performance data
#
service_perfdata_file=/usr/local/pnp4nagios/var/service-perfdata
service_perfdata_file_template=DATATYPE::SERVICEPERFDATA\tTIMET::$TIMET$\tHOSTNAME::$HOSTNAME$\tSERVICEDESC::$SERVICEDESC$\tSERVICEPERFDATA::$SERVICEPERFDATA$\tSERVICECHECKCOMMAND::$SERVICECHECKCOMMAND$\tHOSTSTATE::$HOSTSTATE$\tHOSTSTATETYPE::$HOSTSTATETYPE$\tSERVICESTATE::$SERVICESTATE$\tSERVICESTATETYPE::$SERVICESTATETYPE$
service_perfdata_file_mode=a
service_perfdata_file_processing_interval=15
service_perfdata_file_processing_command=process-service-perfdata-file

#
# host performance data starting with Nagios 3.0
# 
host_perfdata_file=/usr/local/pnp4nagios/var/host-perfdata
host_perfdata_file_template=DATATYPE::HOSTPERFDATA\tTIMET::$TIMET$\tHOSTNAME::$HOSTNAME$\tHOSTPERFDATA::$HOSTPERFDATA$\tHOSTCHECKCOMMAND::$HOSTCHECKCOMMAND$\tHOSTSTATE::$HOSTSTATE$\tHOSTSTATETYPE::$HOSTSTATETYPE$
host_perfdata_file_mode=a
host_perfdata_file_processing_interval=15
host_perfdata_file_processing_command=process-host-perfdata-file

Attention: Ces définitions d'exemple diffères de celles présentes dans nagios.cfg!

Les directives et leurs significations:

  • service_perfdata_file chemin du fichier temporaire qui vas contenir les données de performance.
  • service_perfdata_file_template format du fichier temporaire. Les données vont être définie en utilisant les macros Nagios.
  • service_perfdata_file_mode l'option “a” spécifies que les données doiven etre ajouter au fichier.
  • service_perfdata_file_processing_interval intervalle de 15 seconds
  • service_perfdata_file_processing_command la commande a appeler a chaque intervalle.

La commande utilisé doit être annoncé a Nagios. Si vous avez utilisé le "quickstart installation guides" pour Nagios vous pouvez modifiez les définitions se trouvant dans commands.cfg.

define command{
       command_name    process-service-perfdata-file
       command_line    /usr/local/pnp4nagios/libexec/process_perfdata.pl --bulk=/usr/local/pnp4nagios/var/service-perfdata
}

define command{
       command_name    process-host-perfdata-file
       command_line    /usr/local/pnp4nagios/libexec/process_perfdata.pl --bulk=/usr/local/pnp4nagios/var/host-perfdata
}

NOTE:

Parce qu'il y a plus de données a analyser qu'en mode synchronisé process_perfdata.pl vas mettre plus de temps a analysé ces données, donc vous devez vérifiez la valeur du TIMEOUT dans etc/process_perfdata.cfg et l'ajuster comme ile se doit.

Bulk Mode with NPCD

The configuration is identical to the Bulk Mode except for the used command. If you used the quickstart installation guides for Nagios you can modify the definitions in commands.cfg.

define command{
       command_name    process-service-perfdata-file
       command_line    /bin/mv /usr/local/pnp4nagios/var/service-perfdata /usr/local/pnp4nagios/var/spool/service-perfdata.$TIMET$
}

define command{
       command_name    process-host-perfdata-file
       command_line    /bin/mv /usr/local/pnp4nagios/var/host-perfdata /usr/local/pnp4nagios/var/spool/host-perfdata.$TIMET$
}

Using these commands the file service-perfdata will be moved to var/spool/ after the interval specified in service_perfdata_file_processing_interval has passed. The Nagios macro $TIMET$ is appended to the filename to avoid overwriting of old files unintentionally. The macro $TIMET$ contains the current timestamp in time_t format (seconds since the UNIX epoch).

In the directory /usr/local/pnp4nagios/var/spool/ files are gathered to be processed by NPCD.

NPCD monitors the spool directory and passes the file names to process_perfdata.pl. This way processing of performance data is completely decoupled from nagios.

Before starting NPCD you have to check the paths to the spool directory and to process_perfdata.pl specified in the config file npcd.cfg. The only thing that remains is to start NPCD.

 /usr/local/pnp4nagios/bin/npcd -d -f /usr/local/pnp4nagios/etc/npcd.cfg

The option -d starts NPCD as a daemon in the background.

Bulk Mode with NPCD and npcdmod

This mode uses the event broker module npcdmod.o. The flow of data is identical to “bulk mode with NPCD”. The internal perfdata routines of Nagios activated by the “*_perf_data_*” directives in nagios.cfg are *NOT* used anymore. The module npcdmod.o takes over the task of processing the data required by PNP.

Pro:

  • The perfdata routines can now be used for other addons.
  • The configuration is easier.
  • It is the preferred mode of the PNP developers.

Adjustments in nagios.cfg:

process_performance_data=1
broker_module=/usr/local/pnp4nagios/lib/npcdmod.o config_file=/usr/local/pnp4nagios/etc/npcd.cfg

All other directives mentioned on this page must NOT be used.

Attention: If you have changed the value of event_broker_options from -1 to another value then please note that PNP needs the bits 2 and 3 set (0b01100). Make sure that the resultung value has these bits set because otherwise there will be no performance data to process.

After restarting Nagios information regarding the start of the module will be logged.

Excerpt from nagios.log

[1277545053] npcdmod: Copyright (c) 2008-2009 Hendrik Baecker (andurin@process-zero.de) - http://www.pnp4nagios.org
[1277545053] npcdmod: /usr/local/pnp4nagios/etc/npcd.cfg initialized
[1277545053] npcdmod: spool_dir = '/usr/local/pnp4nagios/var/spool/'.
[1277545053] npcdmod: perfdata file '/usr/local/pnp4nagios/var/perfdata.dump'.
[1277545053] npcdmod: Ready to run to have some fun!
[1277545053] Event broker module '/usr/local/pnp4nagios/lib/npcdmod.o' initialized successfully.

back to contents | checking the functionality

fr/pnp-0.6/config.1288606233.txt.gz · Last modified: 2010/11/01 11:10 by angel115
www.chimeric.de Creative Commons License Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0