User Tools

Site Tools


fr:pnp-0.6:upgrade

Mise à jour en version 0.6.x

L'interface web a été complètement réécrite et est maintenant basée sur le gestionnaire PHP Kohana. Ce changement a eu des conséquences sur les dépendances qui doivent être vérifiées avant la mise à jour.

NB: Dans un premier temps, la mise à jour fonctionne comme une nouvelle installation. Ce n'est qu'après que nous verrons les changements spécifiques.

Auparavant, si nous n'utilisions aucune option avec le ./configure, PNP s'installait par défaut dans /usr/local/nagios.

Dorénavant, le ./configure de PNP 0.6.x s'installe dans le répertoire /usr/local/pnp4nagios. Il est donc maintenant vu comme une application à part.

NB: Il suffit simplement de recopier les anciens fichiers rrd de l'ancien emplacement au nouveau. Ce sont eux qui contiennent les données. Pour les fichiers *.xml, ces derniers sont recréés à chaque mise à jour. Comme la structure interne de ces fichiers a changé, vous ne pourrez pas les utiliser tel quel.

Comparaison des répertoires

Sommaire d'une installation de PNP 0.4.14 :

./configure
...
*** Configuration summary for pnp 0.4.14 05-02-2009 ***

  General Options:
  -------------------------         -------------------
  Nagios user/group:                nagios nagios
  Install directory:                /usr/local/nagios
  HTML Dir:                         /usr/local/nagios/share/pnp
  Config Dir:                       /usr/local/nagios/etc/pnp
  Location of rrdtool binary:       /usr/bin/rrdtool Version 1.3.1
  RRDs Perl Modules:                FOUND (Version 1.3001)
  RRD Files stored in:              /usr/local/nagios/share/perfdata
  process_perfdata.pl Logfile:      /usr/local/nagios/var/perfdata.log
  Perfdata files (NPCD) stored in:  /usr/local/nagios/var/spool/perfdata/

Sommaire d'une installation PNP 0.6.0 :

./configure
...
*** Configuration summary for pnp4nagios-0.6.0 07-30-2009 ***

  General Options:
  -------------------------         -------------------
  Nagios user/group:                nagios nagios
  Install directory:                /usr/local/pnp4nagios
  HTML Dir:                         /usr/local/pnp4nagios/share
  Config Dir:                       /usr/local/pnp4nagios/etc
  Location of rrdtool binary:       /usr/bin/rrdtool Version 1.3.1
  RRDs Perl Modules:                FOUND (Version 1.3001)
  RRD Files stored in:              /usr/local/pnp4nagios/var/perfdata
  process_perfdata.pl Logfile:      /usr/local/pnp4nagios/var/perfdata.log
  Perfdata files (NPCD) stored in:  /usr/local/pnp4nagios/var/spool

  Web Interface Options:  -------------------------         -------------------
  HTML URL:                         http://localhost/pnp4nagios/
  Apache Config File:               /etc/apache2/conf.d/pnp4nagios.conf

Regardez bien ces lignes de paramètres et si elles correspondent bien à votre stratégie de migration.

Ajustements

Les paramètres de l'option action_url ont changés. Au lieu de “/nagios/pnp”, l'URL est devenue “/pnp4nagios” et au lieu de “index.php”, il faut maintenant utiliser “graph”.

define host {
  name       host-pnp
  register   0
  action_url /pnp4nagios/graph?host=$HOSTNAME$
}

define service {
  name       srv-pnp
  register   0
  action_url /pnp4nagios/graph?host=$HOSTNAME$&srv=$SERVICEDESC$
}

La définition du popup de prévisualisation a changée de la même manière :

define host {
   name       host-pnp
   action_url /pnp4nagios/graph?host=$HOSTNAME$' class='tips' rel='/pnp4nagios/popup?host=$HOSTNAME$
   register   0
}

define service {
   name       srv-pnp
   action_url /pnp4nagios/graph?host=$HOSTNAME$&srv=$SERVICEDESC$' class='tips' rel='/pnp4nagios/popup?host=$HOSTNAME$&srv=$SERVICEDESC$
   register   0
}

Attention: Ce n'est pas une erreur que la chaîne avant et après “class” ne contienne qu'un seul quote (').

Ceci peut-être utilisé indifféremment avec Nagios 2.x et 3.x.

Les variables dans les fichiers du répertoire template doivent être absolument initialisées avant la première utilisation.

Exemple :

$lower = ""

Auparavant, vous étiez en mesure de concaténer des variables qui n'étaient pas initialisées.

Exemple:

foreach ($DS as $i) {
    $def[1] .= "DEF:var$i=$rrdfile:$DS[$i]:AVERAGE " ;

Il faut maintenant changer ceci en :

$def[1] = "";
foreach ($DS as $i) {
    $def[1] .= "DEF:var$i=$rrdfile:$DS[$i]:AVERAGE " ;


Les constantes dans les fichiers de template ne fonctionnent plus. Il faut maintenant les convertir en variables :

define("_WARNRULE", '#FFFF00');

sera changé en

 $WARNRULE = '#FFFF00';

Il faudra, bien sûr, penser à changer toutes les occurrences de votre constante ;-).

Scénario de migration en utilisant NPCD

  1. Configurer la nouvelle plateforme
  2. procéder à une nouvelle installation et préparez vous à ce nouveau fonctionnement
  3. faîte une sauvegarde de l'ancienne installation
  4. installer PNP 0.6.x dans le répertoire /usr/local/pnp4nagios
  5. make install-config
  6. make install-webconf
  7. recharger apache
  8. tester la configuration Apache
    1. l'appel à /pnp4nagios vous renverra que les répertoires de données de performance vides
  9. créer /usr/local/pnp4nagios/etc/npcd.cfg depuis npcd.cfg-sample
    1. vérifier les chemins et adapter en fonction de ceux de la version 0.4.x si besoin
  10. ajuster les chemins dans nagios.cfg pour pointer sur la nouvelle installation de PNP
  11. ajuster les chemins dans la définition des commandes
  12. stopper npcd à l'aide de /etc/init.d/npcd stop
  13. make install-init installe le nouveau script init de npcd
  14. /etc/init.d/nagios stop
  15. copier /usr/local/nagios/share/perfdata to /usr/local/pnp4nagios/var/perfdata. Attention: faîtes gaffe aux permissions !
  16. /etc/init.d/npcd start
  17. /etc/init.d/nagios start

Retour a l'index | mode PNP

fr/pnp-0.6/upgrade.txt · Last modified: 2022/01/21 14:37 by 127.0.0.1