Vous êtes ici:

Menu


Débogage Centreon Broker sur un poller distant

Stacks Image 500335
Cette page sera consacrée aux méthodes pour contrôler le bon fonctionnement du broker avec un poller distant. Nous partirons du principe que nous sommes sur une installation distribuée sous CentOS. Nous nous attarderons principalement sur la liaison Central - Poller.

Les différents points de contrôles

Stacks Image 500278
Vérification du fonctionnement du plugin Vérification du fonctionnement de Centreon-Engine Vérification du processus des brokers Vérification du chargement du module cbmod Vérification des logs de Centreon-Broker Vérification des logs de Centreon-Broker Vérification des logs de Centreon-Broker Vérification des flux TCP-IP de Centreon-Broker Vérification des flux TCP-IP de Centreon-Broker Vérification du chargement dans la base - événements Vérification du chargement dans la base - données de performance Vérification des fichiers RRD Vérification des flux Mysql Vérification des stats de Centreon-Broker Vérification des logs du poller Vérification du flux du poller distant Vérification de l'exportation de la configuration Vérification du service centcore Vérification du fonctionnement du plugin Vérification du chargement du module cbmod Vérification du fonctionnement de Centreon-Engine

Fonctionnement de Centreon-Broker

Ci-dessus, voici une représentation simpliste des différents flux intervenant dans Centreon-Broker. Chaque numéro correspond à un point de contrôle pour vérifier notre installation, vous pouvez survolez l'image avec votre souris et cliquez sur le numéro désiré. Voici la liste chronologique des actions que vous pouvez réaliser pour vous aider dans vos éventuels diagnostics.
 

12 - Vérification du fonctionnement de Centreon-Engine

La meilleure façon de vérifier si le moteur du Central fonctionne, c'est la ligne de commande. Voici plusieurs commandes pour tester le fonctionne du démon centengine, les exemples proviennent d'un poller sous Debian 8 avec systemd :
root@poller-test8:~# service centengine status
● centengine.service - Start and stop Centreon Engine
   Loaded: loaded (/lib/systemd/system/centengine.service; enabled)
   Active: active (running) since mer. 2018-03-21 21:27:33 CET; 50min ago
 Main PID: 17557 (centengine)
   CGroup: /system.slice/centengine.service
           └─17557 /usr/sbin/centengine /etc/centreon-engine/centengine.cfg

mars 21 21:27:33 poller-test8 systemd[1]: Started Start and stop Centreon Engine.
mars 21 21:27:33 poller-test8 centengine[17557]: [1521664053] [17557] Reading main configuration file '/etc/centreon-engine/ce....cfg'.
mars 21 21:27:33 poller-test8 centengine[17557]: [1521664053] [17557] Processing object config file '/etc/centreon-engine/host...s.cfg'
mars 21 21:27:33 poller-test8 centengine[17557]: [1521664053] [17557] Processing object config file '/etc/centreon-engine/hosts.cfg'
mars 21 21:27:33 poller-test8 centengine[17557]: [1521664053] [17557] Processing object config file '/etc/centreon-engine/serv...s.cfg'
mars 21 21:27:33 poller-test8 centengine[17557]: [1521664053] [17557] Processing object config file '/etc/centreon-engine/services.cfg'
mars 21 21:27:34 poller-test8 centengine[17557]: [1521664053] [17557] Processing object config file '/etc/centreon-engine/commands.cfg'
mars 21 21:27:34 poller-test8 centengine[17557]: [1521664053] [17557] Processing object config file '/etc/centreon-engine/cont...s.cfg'
mars 21 21:27:34 poller-test8 centengine[17557]: [1521664053] [17557] Processing object config file '/etc/centreon-engine/contacts.cfg'
mars 21 21:27:34 poller-test8 centengine[17557]: [1521664053] [17557] Processing object config file '/etc/centreon-engine/host...s.cfg'
mars 21 21:27:34 poller-test8 centengine[17557]: [1521664053] [17557] Processing object config file '/etc/centreon-engine/serv...s.cfg'
mars 21 21:27:34 poller-test8 centengine[17557]: [1521664053] [17557] Processing object config file '/etc/centreon-engine/time...s.cfg'
mars 21 21:27:34 poller-test8 centengine[17557]: [1521664053] [17557] Processing object config file '/etc/centreon-engine/esca...s.cfg'
mars 21 21:27:34 poller-test8 centengine[17557]: [1521664053] [17557] Processing object config file '/etc/centreon-engine/depe...s.cfg'
mars 21 21:27:34 poller-test8 centengine[17557]: [1521664053] [17557] Processing object config file '/etc/centreon-engine/conn...s.cfg'
mars 21 21:27:34 poller-test8 centengine[17557]: [1521664053] [17557] Processing object config file '/etc/centreon-engine/meta...s.cfg'
mars 21 21:27:34 poller-test8 centengine[17557]: [1521664053] [17557] Processing object config file '/etc/centreon-engine/meta...d.cfg'
mars 21 21:27:34 poller-test8 centengine[17557]: [1521664053] [17557] Processing object config file '/etc/centreon-engine/meta...t.cfg'
mars 21 21:27:34 poller-test8 centengine[17557]: [1521664053] [17557] Processing object config file '/etc/centreon-engine/meta...s.cfg'
mars 21 21:27:34 poller-test8 centengine[17557]: [1521664053] [17557] Reading resource file '/etc/centreon-engine/resource.cfg'
Hint: Some lines were ellipsized, use -l to show in full.

root@poller-test8:~# ps aux |  grep centengine
centreo+  17557  0.3  6.0 449740 29632 ?        Ssl  21:27   0:09 /usr/sbin/centengine /etc/centreon-engine/centengine.cfg
root      17704  0.0  0.4  12748  2272 pts/1    S+   22:20   0:00 grep centengine
Autre commande très intéressante, centenginestats permet de vérifier le fonctionnement du moteur indépendamment du broker. Ce programme donne les statistiques complètes du moteur.
root@poller-test8:~# /usr/sbin/centenginestats
Centreon Engine Statistics Utility 1.8.1

Copyright 2003-2008      Ethan Galstad
Copyright 2011-2013,2016 Centreon
License: GPLv2

CURRENT STATUS DATA
------------------------------------------------------
Status File:                            /var/log/centreon-engine/status.dat
Status File Age:                        0d 0h 0m 58s
Status File Version:                    (null)

Program Running Time:                   0d 0h 55m 58s
Centreon Engine PID:                    17557
Used/High/Total Command Buffers:        0 / 0 / 4096

Total Services:                         1
Services Checked:                       1
Services Scheduled:                     1
Services Actively Checked:              1
Services Passively Checked:             0
Total Service State Change:             0.000 / 0.000 / 0.000 %
Active Service Latency:                 0.167 / 0.167 / 0.167 sec
Active Service Execution Time:          0.069 / 0.069 / 0.069 sec
Active Service State Change:            0.000 / 0.000 / 0.000 %
Active Services Last 1/5/15/60 min:     0 / 0 / 1 / 1
Passive Service Latency:                0.000 / 0.000 / 0.000 sec
Passive Service State Change:           0.000 / 0.000 / 0.000 %
Passive Services Last 1/5/15/60 min:    0 / 0 / 0 / 0
Services Ok/Warn/Unk/Crit:              1 / 0 / 0 / 0
Services Flapping:                      0
Services In Downtime:                   0

Total Hosts:                            1
Hosts Checked:                          1
Hosts Scheduled:                        1
Hosts Actively Checked:                 1
Host Passively Checked:                 0
Total Host State Change:                0.000 / 0.000 / 0.000 %
Active Host Latency:                    0.186 / 0.186 / 0.186 sec
Active Host Execution Time:             0.203 / 0.203 / 0.203 sec
Active Host State Change:               0.000 / 0.000 / 0.000 %
Active Hosts Last 1/5/15/60 min:        0 / 0 / 1 / 1
Passive Host Latency:                   0.000 / 0.000 / 0.000 sec
Passive Host State Change:              0.000 / 0.000 / 0.000 %
Passive Hosts Last 1/5/15/60 min:       0 / 0 / 0 / 0
Hosts Up/Down/Unreach:                  1 / 0 / 0
Hosts Flapping:                         0
Hosts In Downtime:                      0

Active Host Checks Last 1/5/15 min:     0 / 1 / 3
   Scheduled:                           0 / 1 / 3
   On-demand:                           0 / 0 / 0
   Parallel:                            0 / 1 / 3
   Serial:                              0 / 0 / 0
   Cached:                              0 / 0 / 0
Passive Host Checks Last 1/5/15 min:    0 / 0 / 0
Active Service Checks Last 1/5/15 min:  0 / 1 / 3
   Scheduled:                           0 / 1 / 3
   On-demand:                           0 / 0 / 0
   Cached:                              0 / 0 / 0
Passive Service Checks Last 1/5/15 min: 0 / 0 / 0

External Commands Last 1/5/15 min:      0 / 0 / 0
 

13 - Vérification des logs du module cbmod

Dans une configuration standard, les logs du module cbmod sont situés dans le dossier /var/log/centreon-broker. Dans la version package Debian réalisé par mes soins, les logs se trouvent dans le dossier /var/log/centreon-engine. Le processus centengine doit pouvoir créer le fichier de log. Voici quelques exemples de vérifications de log :
module central-module-master.log (cbmod) pour l'ISO Centreon
tail -f /var/log/centreon-broker/poller1-module.log
module central-broker-master (événements) pour Debian
tail -f /var/log/centreon-engine/poller1-module.log
Pour obtenir plus ou moins d'informations dans ces logs, vous devrez régler les niveaux de détails dans la configuration du broker dans l'interface Centreon (onglet Logger de chaque module).
 

14 - Vérification du flux TCP-IP du Poller distant

C'est la partie la plus délicate dans le fonctionnement de Centreon-Broker. Nous utilisons des flux TCP pour communiquer entre les différents modules. Assurez-vous que les ports utilisés ne rentrent pas en conflit avec d'autres applications. Généralement, nous utiliserons les ports entre 5667 et 5670. Les modules travaillent en client-serveur, c'est-à-dire qu'un module écoute le port (serveur) tandis que le l'autre émet (client). Avec la commande netstat, vous pouvez lister les communications établies (ETABLISHED) et les ports en écoute (LISTEN). Voici un exemple de commande filtrant les flux TCP ayant la chaine 56 (ce qui correspond en général au port utilisé pour Centreon-Broker.
netstat -an | grep ^tcp | grep 56
Vous obtiendrez, par exemple ce résultat pour le poller distant :
tcp        0      0 172.16.209.81:43850     172.16.209.80:5669      ESTABLISHED
Et la réception du flux sur le Central (la connexion du poller local est absente pour la lisibilité)
tcp        0      0 0.0.0.0:5669            0.0.0.0:*               LISTEN
tcp        0      0 172.16.209.80:5669      172.16.209.81:43850     ESTABLISHED
 

15 - Vérification de l'exportation de la configuration du poller

L'exportation de la configuration du poller distant est réalisée par le service centcore via un flux ssh, par défaut le TCP 22. Le fichier de log de centcore se trouve dans le dossier /var/log/centcore. Pour avoir un minimum d'information dans ce fichier, nous devrons activer le mode debug de centcore. Sélectionnez le menu Administration > Parameters > Debug et cochez la case Centcore Engine debug. Sauvegardez.
Stacks Image 5441
On lit le fichier /var/log/centreon/centcore.log. La première ligne indique l'activation du mode debug. Ensuite, on distingue l'envoi des données de configuration du moteur et des données de configuration du broker.
2018-03-22 22:22:29 - Enable Debug in Centcore
2018-03-22 22:23:34 - Start: Send config files on poller 2
2018-03-22 22:23:34 - Result :
2018-03-22 22:23:34 - End: Send config files on poller 2
2018-03-22 22:23:34 - Start: Send Centreon Broker config files on poller 2
2018-03-22 22:23:34 - Result :
2018-03-22 22:23:34 - End: Send Centreon Broker config files on poller 2
Autre exemple d'une connexion ssh défaillante sur le poller
ssh: connect to host 172.16.209.81 port 22: Connection refused^M
2018-03-22 22:36:38 - Start: Send config files on poller 2
2018-03-22 22:36:38 - Result : ssh: connect to host 172.16.209.81 port 22: Connection refused^M
lost connection
2018-03-22 22:36:38 - End: Send config files on poller 2
2018-03-22 22:36:38 - Start: Send Centreon Broker config files on poller 2
2018-03-22 22:36:38 - Result : ssh: connect to host 172.16.209.81 port 22: Connection refused^M
lost connection
2018-03-22 22:36:38 - End: Send Centreon Broker config files on poller 2
 

16 - Vérification du service centcore

Il est important de vérifier le fonctionnement de centcore avec la commande suivante :
ISO Centreon
[root@vmtechcentreon ~]# service centcore status
centcore (pid  1713) en cours d'exécution...
Debian
root@central-test8:~# service centcore status
● centcore.service - Enable service provided CentCore : Manage pollers
   Loaded: loaded (/lib/systemd/system/centcore.service; enabled)
   Active: active (running) since mar. 2018-03-20 18:20:26 CET; 2 days ago
 Main PID: 16734 (centcore)
   CGroup: /system.slice/centcore.service
           └─16734 /usr/bin/perl /usr/share/centreon/bin/centcore --logfile=/var/log/centreon/centcore.log --severity=error --config...

Warning: Journal has been rotated since unit was started. Log output is incomplete or unavailable.
Une bonne pratique est de superviser le processus centcore avec Centreon.
Stacks Image 5408
 

17 - Vérification des stats de Centreon-Broker

Depuis la version 2.8.x, les statistiques sont automatiquement activés. On peut vérifier facilement le bon fonctionnement de toute la chaîne de Centreon-Broker dans l'IHM de Centreon. Connectez-vous à l'interface, sélectionnez Home / Poller Statistics. Les statistiques des pollers exigent l'activation de l'option "Enable Broker Statistics Collection" sur la page Administration > Parameters > CentCore.
Stacks Image 5527
Statistiques du Central et du Poller
Cet article est terminé, vous avez tous les outils pour vérifier le broker de votre supervision. Les remarques sont bien sûr acceptées !
comments powered by Disqus
 Vous êtes ici: