Dans l’article précédent, vous aviez découvert les grands principes de Centreon-Broker. Si vous ne l’avez pas lu, c’est le moment ! Nous allons découvrir ensemble ces nouveaux mécanismes en créant notre propre configuration. Nous partirons d’une nouvelle installation en recréant notre propre configuration.
1 Architecture minimale
Tout d’abord, arrêtons les services centengine (moteur de supervision) et cbd (broker). Ensuite, nous allons désactiver toute la configuration du broker. Pour finir, afin d’éviter des phénomènes parasites, supprimons la configuration des fichiers xml de centreon-broker sur le serveur.
service centengine stop
service cbd stop
rm /etc/centreon-broker/*.xml
1.1 la configuration du module cbmod
Nous commencerons par le module cbmod qui est chargé par le moteur de supervision. Nous l’appellerons test-module-master. Nous ne choisirons pas volontairement le wizard car nous réaliser nous-même notre configuration. Cliquez sur le bouton Add de la page Broker Configuration.
Saisissez le nom de la configuration, le nom du fichier avec une extension xml. Modifiez le paramètre Retention path, il est conseillé de mettre les fichiers statistiques et temporaires dans le dossier lib du moteur de supervision. Modifiez les paramètres Log options qui ne sont pas indispensable et on peut limiter la valeur de 50000 pour Event queue max size. Continuons par l’onglet Logger, obligatoire pour le fonctionnement du process cbmod. Ajoutez un objet Core - File.
Rien de compliqué, saisissez le nom du fichier de log et limitez sa taille. Cette option est très utile lors de l’activation des logs détaillés. Terminons par l’onglet Output. Ajoutez l’objet TCP - IPv4.
Saisissez un nom, un port TCP par défaut 5669, associez-le à localhost. Paramétrez l’intervalle de tentative d’essai de connexion (Retry interval) et supprimez le temps d’attente du fichier de rétention (Buffering timeout). La configuration est terminée, sauvegardez-la. Exportez la configuration sans lancer le moteur.
Avant de finaliser la configuration du broker, nous allons réaliser un petit test. Lançons le moteur de supervision.
service centengine start
Visualisons le dossier /var/lib/centreon-engine, nous allons retrouver le fichier failover et le fichier de statistique.
ls -l /var/lib/centreon-engine
Le fichier de rétention a été automatiquement créé car la connexion TCP n’est pas établie. Souvenez-vous que nous n’avons pas terminé notre configuration. Nous pouvons voir cette configuration dans l’interface Web de Centreon. Cliquez sur Home / Poler Statistics / Broker Statistics
Nous avons terminé avec le processus cbmod.
1.2 la configuration du broker central
Commençons par la création de la configuration du broker central. Cliquez sur le bouton Add de la page Broker Configuration.
Saisissez le nom de la configuration, le nom du fichier central-broker.xml. Ce nommage est fortement conseillé car il est en relation avec le fichier master.run pour le démarrage du service cbd. Modifiez les paramètres Log options pour ne pas afficher les id des threads puis on peut limiter la valeur de 50000 pour Event queue max size. Dans l’onglet Input, rajoutons un objet TCP - IPv4. Il aura pour objectif d’écouter les communications TCP sur le port 5669.
Saisissez un nom, un port TCP par défaut 5669. Paramétrez l’intervalle de tentative d’essai de connexion (Retry interval) et supprimez le temps d’attente du fichier de rétention (Buffering timeout). Continuons par l’onglet Logger, obligatoire pour le fonctionnement du service cbd. Ajoutez un objet Core - File.
Nous terminerons par l’onglet Output, ajoutons un objet SQL - Broker SQL database. Nommez cet objet. Comme nous utilisons MySQL ou MariaDB, sélectionnons le type de base MySQL. Paramétrez l’intervalle de tentative d’essai de connexion (Retry interval) et supprimez le temps d’attente du fichier de rétention (Buffering timeout). Remplissez les identifiant de connexion à base centreon_storage.
La configuration est terminée, sauvegardez-la. Exportez la configuration sans relancer le moteur. Arrêtez le service centengine et démarrez le service cbd (broker).
service centengine stop
service cbd start
Visualisons le dossier /var/lib/centreon-broker. Nous devons lister un fichier de statistiques.
ls -l /var/lib/centreon-broker/
total 0
prw-r--r-- 1 centreon-broker centreon-broker 0 févr. 25 07:34 test-broker-central.stats
Notre broker fonctionne et est prêt à récupérer les informations venant des pollers (moteur de supervision). Il est bien connecté à la base centreon_storage.
Nous allons maintenant tester l’efficacité du failover. Arrêtons la base MySQL. Visualisons le dossier /var/lib/centeon-broker car nous n’avons plus accès à l’interface Centreon.
service mysql stop
Le mécanisme de failover est automatiquement déclenché lors de l’arrêt de la base MySQL.
Redémarrez le service MySQL et connectez-vous rapidement sur l’interface de Centreon pour constater l’activation du failover dans la page statistique du Broker.
Il reste à redémarrer le moteur de supervision.
service centengine start
Votre supervision devrait fonctionner à minima sans les données de performances.
2 Architecture de base
2.1 la configuration du broker pour les graphes de performances
Nous continuons notre configuration avec l’ajout de l’objet Perfdata Generator. Il permet de stocker les graphes de performances en base données.
La configuration est terminée, sauvegardez-la. Exportez la configuration sans lancer le moteur. Relancez le service cbd.
service cbd restart
Nous alimenterons les tables data_bin, index_data et metrics de la base centreon_storage. Au bout de quelques minutes, vous pouvez visualiser les nouvelles statistiques de votre broker.
Lorsque le filtrage est activé, celui-ci s’affiche dans la page de statistique.
2.2 la configuration du broker pour les graphes RRD
Pour terminer, nous allons créer un deuxième processus cbd pour la réalisation des graphes RRD. Nous le nommerons test-rrd-master. Cliquez sur le bouton Add de la page Broker Configuration.
Saisissez le nom de la configuration, le nom du fichier central-rrd.xml. Ce nommage est fortement conseillé car il est en relation avec le fichier master.run pour le démarrage du service cbd. Modifiez les paramètres Log options pour ne pas afficher les id des threads puis on peut limiter la valeur de 50000 pour Event queue max size. Dans l’onglet Input, rajoutons un objet TCP - IPv4. Il aura pour objectif d’écouter les communications TCP sur le port 5670.
Saisissez un nom, un port TCP par défaut 5670. Paramétrez l’intervalle de tentative d’essai de connexion (Retry interval) et supprimez le temps d’attente du fichier de rétention (Buffering timeout). Continuons par l’onglet Logger, obligatoire pour le fonctionnement du service cbd. Ajoutez un objet Core - File.
Nous terminerons par l’onglet Output, ajoutons un objet RRD file generator. Nommez cet objet. Paramétrez l’intervalle de tentative d’essai de connexion (Retry interval) et supprimez le temps d’attente du fichier de rétention (Buffering timeout).
Sauvegardez la configuration broker et modifions la configuration test-central-broder pour ajouter le flux entre les deux processus cbd pour alimenter les graphes RRD. Ajoutez un objet Output TCP - Ipv4.
Saisissez un nom, un port TCP 5670, associez-le à localhost. Paramétrez l’intervalle de tentative d’essai de connexion (Retry interval) et supprimez le temps d’attente du fichier de rétention (Buffering timeout). La configuration est terminée, sauvegardez-la. Exportez la configuration sans lancer le moteur. Relancez le service cbd.
service cbd restart
Vous pouvez visualiser les nouvelles statistiques de votre broker.
Les graphes RRD vont s’implémenter dans les répertoires respectifs /var/lib/centreon/metrics et /var/lib/centreon/status.
Les graphes devraient apparaître au bout de quelques secondes comme le montre l’image ci-dessous.
Il y a encore une multitude de façon de paramétrer Centreon-broker mais article est terminé pour l’instant. Il sera complété au fil du temps par quelques astuces ou préconisations. Bonne lecture.