Menu

Stacks Image 88983
Article en attente de mise à jour

Adaptation des scripts

Stacks Image 1458
Maintenant que vous avez installer la version Centreon 2.5, il est temps de mettre à jour les scripts centstorage et centcore ainsi que la gestion des traps SNMP avec le nouveau service CentreonTrapd. Actuellement votre configuration fonctionne mais lorsque vous effectuerez un redémarrage de votre système les scripts centcore et centstorage ne fonctionneront plus. De même, vous ne pouvez plus modifier votre configuration des traps SNMP.

Pré Requis

Tout d'abord, nous devrons installer la gestion SQLite pour php5. Cela est nécessaire pour faire fonctionner la nouvelle configuration des traps SNMP. Nous en profiterons pour mettre à jour certain pré-requis pour Centreon 2.5
apt-get install php5-sqlite lsb-release libdigest-sha-perl
Stacks Image 19748
Configuration des traps SNMP impossible sans php5-sqlite
Voici le message d'erreur, si vous n'installez pas SQLite pour php5.

erreur_php_sqlite
Cela n'empêche pas le fonctionnement des traps déjà configurés avec SNMPTT, comme le montre cette image ci-dessous.

trap_snmp

Configuration par défaut des scripts

Les scripts centcore, centstorage et centreontrapd fonctionnent à l'aide d'une bibliothèque Perl commune. Cette bibliothèque est située, pour notre distribution Debian, dans /usr/share/perl5/centreon. Ces trois scripts fonctionne avec des fichiers de configuration situés dans /etc/default. Lors de notre mise à jour, les fichiers de configuration n'ont pas été correctement configurés. Voici les modifications à effectuer :

centcore

modifiez le fichier /etc/default/centcore. Remplacer @CENTREON_LOG@ par le dossier log de Centreon. Pour visualiser le fonctionnement de centcore avec le fichier de log, vous pouvez mettre la valeur info au paramètre severity.
OPTIONS="--logfile=/var/log/centreon/centcore.log --severity=info --config=/etc/centreon/conf.pm"
Nous devons modifier le fichier de démarrage du script pour faire prendre en compte nos options. Modifiez la deuxième ligne de start-stop-deamon en rajoutant le paramètre OPTIONS.
do_start()
{
  start-stop-daemon --start --background --quiet --pidfile ${PIDFILE} --exec ${DAEMON} \
    --chuid ${CENTREON_USER} --user ${CENTREON_USER} --test
  [ "$?" = "0" ] || return 1
  start-stop-daemon --start --background --quiet --pidfile ${PIDFILE} --exec ${DAEMON} \
    --make-pidfile --chuid ${CENTREON_USER} --user ${CENTREON_USER} -- ${OPTIONS}
  [ "$?" = "0" ] || return 2
  return 0
}
Modifiez aussi l'emplacement du fichier PID (vers les premières lignes du fichier), car le sous-dossier centreon n'existe pas
PIDFILE=/var/run/centcore.pid
relancez centcore et vérifier la prise en compte des options et le démarrage du script avec le fichier de log.
service centcore restart
vérification de la prise en compte des options
ps aux | grep centcore
centreon 31842  3.3  1.8  24972  9604 ?        S    07:41   0:00 /usr/bin/perl /usr/local/centreon/bin/centcore 
--logfile=/var/log/centreon/centcore.log --severity=info --config=/etc/centreon/conf.pm
vérification des logs
tail /var/log/centreon/centcore.log
2014-04-29 06:20:52 - Receiving order to stop...
2014-04-29 06:20:52 - Stopping centcore engine...
2014-04-29 06:20:52 - Centcore stop...
2014-04-29 07:41:44 - Starting centcore engine...

centstorage

Même punition si vous utilisez centstorage, modifiez le fichier /etc/default/centstorage. Remplacer @CENTREON_LOG@ par le dossier log de Centreon. Pour visualiser le fonctionnement de centstorage avec le fichier de log, vous pouvez mettre la valeur info au paramètre severity.
OPTIONS="--logfile=/var/log/centreon/centstorage.log --severity=info --config=/etc/centreon/conf.pm"
Nous devons modifier le fichier de démarrage du script pour faire prendre en compte nos options. Modifiez la deuxième ligne de start-stop-deamon en rajoutant le paramètre OPTIONS.
do_start()
{
  start-stop-daemon --start --background --quiet --pidfile ${PIDFILE} --exec ${DAEMON} \
    --chuid ${CENTREON_USER} --user ${CENTREON_USER} --test
  [ "$?" = "0" ] || return 1
  start-stop-daemon --start --background --quiet --pidfile ${PIDFILE} --exec ${DAEMON} \
    --make-pidfile --chuid ${CENTREON_USER} --user ${CENTREON_USER} -- ${OPTIONS}
  [ "$?" = "0" ] || return 2
  return 0
}
Modifiez aussi l'emplacement du fichier PID (vers les premières lignes du fichier), car le sous-dossier centreon n'existe pas
PIDFILE=/var/run/centstorage.pid

centreontrapd

Comme nous allons utiliser la nouvelle configuration des traps SNMP, vous devez modifier le fichier /etc/default/centreontrapd. Remplacer @CENTREON_LOG@ par le dossier log de Centreon. Pour visualiser le fonctionnement de centcore avec le fichier de log, vous pouvez mettre la valeur info au paramètre severity. je vous renvoie sur l"article de la gestion des traps avec Centreon 2.5.
OPTIONS="--logfile=/var/log/centreon/centreontrapd.log --severity=info --config=/etc/centreon/conf.pm"
Nous devons modifier le fichier de démarrage du script pour faire prendre en compte nos options. Editez le fichier /etc/init.d/centreontrapd. Replacez la ligne suivante
DAEMON=@CENTSTORAGE_BINDIR@/centreontrapd
par
DAEMON=/usr/local/centreon/bin/centreontrapd
Modifiez la deuxième ligne de start-stop-deamon en rajoutant le paramètre OPTIONS.
do_start()
{
  start-stop-daemon --start --background --quiet --pidfile ${PIDFILE} --exec ${DAEMON} \
    --chuid ${CENTREON_USER} --user ${CENTREON_USER} --test
  [ "$?" = "0" ] || return 1
  start-stop-daemon --start --background --quiet --pidfile ${PIDFILE} --exec ${DAEMON} \
    --make-pidfile --chuid ${CENTREON_USER} --user ${CENTREON_USER} -- ${OPTIONS}
  [ "$?" = "0" ] || return 2
  return 0
}
Modifiez aussi l'emplacement du fichier PID (vers les premières lignes du fichier), car le sous-dossier centreon n'existe pas
PIDFILE=/var/run/centreontrapd.pid
Avant de démarrer centreontrapd, copiez les fichiers de la forge dans le dossier /usr/share/perl5/centreon pour script.pm et /usr/share/perl5/centreon/trapd pour lib.pm. Arrêter et désactiver le service snmptt.
service snmptt stop
update-rc.d snmptt remove
Redémarrez le service snmpd puis démarrez le service centreontrapd
service snmpd restart
service centreontrapd start
vérifiez le bon fonctionnement avec le fichier de log. Le message d'avertissement n'est pas bloquant.
tail /var/log/centreon/centreontrapd.log
2014-04-29 14:27:27 - Can't find extra config file /etc/centreon/centreontrapd.pm
2014-04-29 14:27:27 - ********** Net-SNMP version 5.0403 Perl module enabled **********

Vérification du fonctionnement des scripts

centcore

Pour vérifier une partie des fonctionnalités de centcore, nous allons créer un commentaire sur un hôte. Connectez-vous sur l'interface Web de Centreon. Sélectionnez le menu Monitoring / Hosts /Comments. Choisissez l'hôte server3 par exemple, cochez persistent et insérez un commentaire. Validez avec le bouton Save
Stacks Image 20033
Insérer un commentaire
Vous devez récupérer au bout de quelques secondes, votre commentaire. Vous pouvez vérifier dans le fichier de log.
Stacks Image 20054
Le commentaire est mémorisé
tail /var/log/centreon/centcore.log
2014-04-29 14:44:19 - External command on Central Server: (1) : "[1398775458] ADD_HOST_COMMENT;server3;1;admin;
Serveur LDAP
"

centreontrapd

Pour les traps SNMP, il faudra recharger la configuration. Sélectionnez le menu Configuration / SNMP Traps / generate. Cochez "Generate trap databases", "Apply configurations" et sélectionnez Reload. Cliquez sur Generate.
Stacks Image 20083
Application de la configuration.
Il reste à vérifier le fonctionnement des traps, comme un redémarrage du service SNMPD sur le serveur weblamp par exemple de la maquette duchmol.
Stacks Image 20104
Redémarrage du service SNMPD
Et voici les logs de centreontrapd.
tail centreontrapd.log 
2014-04-29 15:29:49 - CHLD command launched: 5897
2014-04-29 15:29:49 - SUBMIT: Force service status via passive check update
2014-04-29 15:29:49 - SUBMIT: Launched command: /bin/echo "EXTERNALCMD:1:[1398778189] PROCESS_SERVICE_CHECK_RESULT;weblamp;
TRAP_LINUX;0;Link up on interface 1. State: $4." >> /var/lib/centreon/centcore.cmd
2014-04-29 15:29:49 - SIGCHLD received: 5897
Nous en avons terminé pour notre mise à jour vers 2.5, bonne supervision.
comments powered by Disqus