Aller au contenu principal
Version: 22.04

Installation de Centreon MBI

Ce chapitre présente l'architecture logicielle de l'extension Centreon MBI et fournit un aperçu de l'intégration de l'extension au logiciel de supervision Centreon.

Ce document s'adresse aux administrateurs qui vont installer ou configurer Centreon MBI.

Quatre grandes étapes sont nécessaires pour installer Centreon MBI :

  • VĂ©rifiez les prĂ©requis du systĂšme.
  • Installez l'interface Centreon MBI dans l'application Centreon (Centreon MBI Server).
  • Installez le serveur de reporting (Centreon MBI Reporting Server).
  • Configurer l'extraction, la transformation et le chargement (ETL) dans l'interface MBI Centreon.

Architecture​

Un serveur de reporting dĂ©dié​

L'architecture et ces prérequis s'appliquent aux environnements de :

  • test
  • prĂ©-production
  • production.

Le schéma ci-dessous met en avant les principaux composants de Centreon MBI :

image

La base de monitoring n'est pas nĂ©cessairement sur le mĂȘme serveur que le serveur Centreon

  • ETL : Processus qui extrait, transforme et charge les donnĂ©es dans la base de donnĂ©es de reporting.
  • CBIS : Ordonnanceur qui gĂšre l'exĂ©cution et la publication des rapports.
  • Base de donnĂ©es de reporting : Base de donnĂ©es MariaDB qui contient les donnĂ©es de reporting et certaines donnĂ©es brutes extraites de la base de donnĂ©es de supervision.

Tableaux des flux rĂ©seau​

Le tableau ci-dessous présente les différents types de flux, par défaut, entre le serveur BI dédié, le serveur Centreon et les bases de données :

ApplicationSourceDestinationPortProtocol
ETL/CBISServeur de reportingServeur de bases de données Centreon3306TCP
SSHServeur de reportingServeur Centreon22TCP
CBISServeur de reportingServeur Centreon80HTTP*
CBISCentreonServeur de reporting1234TCP
WidgetsServeur central CentreonServeur de reporting3306TCP

*Uniquement requis pour les rapports Host-Graph-v2 et Hostgroup-Graph-v2 qui utilisent l'API Centreon pour générer des graphiques.

Informations sur les paquets​

L'installation de Centreon MBI est basée sur deux paquets RPM :

  • Centreon-bi-server : Installe l'interface MBI intĂ©grĂ©e Ă  l'interface de Centreon. Le paquet est installĂ© sur le serveur central Centreon.
  • Centreon-bi-reporting-server : Contient tous les composants nĂ©cessaires Ă  l'exĂ©cution du serveur de reporting (planificateur de rapports, ETL, rapports standard). Il doit ĂȘtre installĂ© sur un serveur dĂ©diĂ© aux processus de reporting.

L'installation de la base de donnĂ©es doit ĂȘtre faite en mĂȘme temps. Nous recommandons fortement d'installer la base MariaDB sur le serveur de reporting pour des raisons de performances & d'isolation.

PrĂ©-requis​

Server Centreon central​

PrĂ©requis logiciels​

Voir les prérequis logiciels.

  • Centreon Web 22.04
  • VĂ©rifiez que date.timezone est correctement configurĂ©e dans le fichier /etc/php.d/50-centreon.ini (mĂȘme que celui retournĂ© par la commande timedatectl status)
  • Evitez l'utilisation des variables ci-dessous dans le fichier de configuration MariaDB /etc/my.cnf. Elles interrompent l'exĂ©cution de longues requĂȘtes et peuvent arrĂȘter les jobs d'ETL ou de gĂ©nĂ©ration de rapports :
    • wait_timeout
    • interactive_timeout
UtilisateurGroupe
centreonBI (nouveau)apache,centreon,centreonBI
apache (existant)centreonBI

Description des utilisateurs, umask et rĂ©pertoire personnel​

Utilisateurumaskhome
centreonBI0002/home/centreonBI

Serveur de reporting dĂ©dié​

Couche MatĂ©riel​

Nombre de services supervisésCPU minimumMémoire Vive
< 4 0002 CPU ( 3Ghz )12Go minimum
< 20 0004 CPU (3GHz) minimum16 Go minimum
>= 20 000 and < 40 0004 CPU (3GHz) minimum24 Go minimum
>= 40 000 and < 100 0008 CPU (3GHz) minimum32 Go minimum
> 100 000> Contacter Centreon

Espace de stockage​

Utilisez le fichier suivant

Partition​

File systemTaille
/5GB minimum
/var (containing MariaDB data)utiliser le résultat du fichier de simulation de l'espace disque ci-dessus
Dossier temporaire de MariaDBFortement recommandé de le positionner dans /var
Volume group*5G minimum d'espace libre sur le Volume groupe hébergeant les données MariaDB.

Pour controler l'espace libre, utiliser la commande suivante en remplaçant vg_data par le nom du volume groupe:

vgdisplay vg_data | grep -i free*

Couche Interlogiciel et logiciel​

  • OS : CentOS / Redhat 7 ou 8 / Oracle Linux 8 / Alma 8 / Debian 11
  • SGBD : MariaDB 10.5
  • Firewalld : DĂ©sactivĂ© (voir ici)
  • SELinux : DĂ©sactivĂ© (voir ici)

Assurez-vous que le fuseau horaire du serveur de reporting est le mĂȘme que celui du serveur central, sinon les publications de rapports Ă©choueront (lien vers le tĂ©lĂ©chargement manquant). Le mĂȘme fuseau horaire doit ĂȘtre affichĂ© avec la commande timedatectl. Vous pouvez changer le fuseau horaire avec cette commande :

timedatectl set-timezone Europe/Paris

Veillez à optimiser MariaDB sur votre serveur de reporting. Vous aurez besoin d'au moins 12GB de mémoire vive afin d'utiliser le fichier suivant.

Assurez-vous d'avoir un dossier tmp dans /var/lib/mysql.

Ne définissez pas ces optimisations MariaDB sur votre serveur de supervision.

Utilisateurs et groupes :

UtilisateurGroupe
centreonBIcentreonBI

Description des utilisateurs, umask et répertoire utilisateur :

Utilisateurumaskhome
centreonBI0002/home/centreonBI

Installer l'extension sur Centreon​

Les actions listĂ©es dans ce chapitre doivent ĂȘtre exĂ©cutĂ©es sur le serveur Central Centreon.

  1. Installez le dépÎt MBI, vous pouvez le trouver sur le portail support.

  2. Puis lancez la commande suivante :

dnf install centreon-bi-server

Activer l'extension​

Le menu Administration > Extension > Gestionnaire vous permet d'installer les différentes extensions détectées par Centreon. Cliquez sur la tuile Centreon MBI pour l'installer.

Par la suite, téléchargez la licence envoyée par l'équipe Centreon pour pouvoir commencer à configurer les options générales.

Configurer l'extension​

Renseignez les valeurs suivantes dans les options générales de Centreon MBI, menu Rapports > Monitoring Business Intelligence > Options Générales :

OngletOptionValue
Options de l'ordonnanceurHĂŽte de CBISAdresse IP du serveur de reporting
Options de l'ETL Une base de données MariaDB dédiée au reporting a été mise en place.Oui
Widgets de reporting*Reporting MariaDB databaseAdresse IP de la base de reporting (par défaut = adresse IP du serveur de reporting)

* Le test de connexion ne fonctionnera pas encore Ă  ce moment de l'installation

AccĂšs Ă  la base de donnĂ©es Centrale​

Téléchargez la licence envoyée par l'équipe Centreon pour pouvoir commencer à configurer les options générales.

La base de données de supervision MariaDB est hébergée sur le serveur de supervision central.

Lancez la commande ci-dessous pour autoriser le serveur de reporting à se connecter aux bases de données du serveur de supervision. Utilisez l'option suivante :

/usr/share/centreon/www/modules/centreon-bi-server/tools/centreonMysqlRights.pl --root-password=@ROOTPWD@

@ROOTPWD@ : Mot de passe root de la base MariaDB de supervision. S'il n'y a pas de mot de passe pour l'utilisateur "root", ne spécifiez pas l'option root-password.

Si vous utilisez la réplication MariaDB pour vos bases de données de supervision, certaines vues sont créées lors de l'installation de Centreon MBI. Vous devez les exclure de la réplication en ajoutant la ligne suivante dans le fichier my.cnf du serveur esclave ou mariadb.cnf sur Debian 11.

replicate-wild-ignore-table=centreon.mod_bi_%v01,centreon.mod_bi_%V01

Ensuite, créez les vues manuellement sur le serveur esclave en lançant la ligne de commande suivante :

mysql centreon < [view_creation.sql](../assets/reporting/installation/view_creation.sql)

Configuration spĂ©cifique Ă  Debian 11​

MariaDB doit Ă©couter sur toutes les interfaces au lieu d'Ă©couter sur localhost/127.0.0.1 (valeur par dĂ©faut). Éditez le fichier suivant :

/etc/mysql/mariadb.conf.d/50-server.cnf

Donnez au paramÚtre bind-address la valeur 0.0.0.0 et redémarrez mariadb.

systemctl restart mariadb

Donner des droits à l'utilisateur cbis​

Lorsque vous installez Centreon MBI, un utilisateur nommé cbis est créé automatiquement. Il permet au moteur de génération de rapports d'extraire les données de Centreon (en utilisant les APIs) afin de les insérer dans le rapport. Cet utilisateur doit avoir accÚs à toutes les ressources supervisées par Centreon afin de pouvoir extraire les graphes de performance pour les rapports suivants :

  • Host-Graph-v2
  • Hostgroup-Graph-v2.

Pour tester la connexion entre le serveur de reporting MBI et l'API Centreon, utilisez la commande suivante pour télécharger un graphique. Remplacez les paramÚtres du graphique et les timestamps, et remplacez XXXXXXXXX par le jeton d'autologin de l'utilisateur cbis:

curl -XGET 'https://IP_CENTRAL/centreon/include/views/graphs/generateGraphs/generateImage.php?akey=XXXXXXXXX&username=CBIS&hostname=<nom_hÎte>&service=<description-service>&start=<date_début>&end=<date_fin>' --output /tmp/image.png

Exemple :

curl -XGET 'https://10.1.1.1/centreon/include/views/graphs/generateGraphs/generateImage.php?akey=otmw3n1hu03bvt9e0caphuf50ph8sdthcsk8ofdk&username=CBIS&hostname=my-poller&service=Cpu&start=1623016800&end=1623621600' --output /tmp/image.png

Le résultat devrait ressembler au code ci-dessous, et l'image du graphe désiré doit avoir été téléchargée dans le répertoire /tmp :

  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
Dload Upload Total Spent Left Speed
100 18311 100 18311 0 0 30569 0 --:--:-- --:--:-- --:--:-- 30569

Installer le serveur de reporting​

Installer les paquets​

Vous devez disposer des informations suivantes avant de procéder au processus d'installation :

  • IP/DNS de la base de donnĂ©es de supervision
  • IP/DNS de l'interface web Centreon
  • IP/DNS de la base de donnĂ©es de reporting (localhost fortement recommandĂ©)
  • AccĂšs (utilisateur/mot de passe) Ă  la base de donnĂ©es de reporting
  • DĂ©finir puis rĂ©cupĂ©rer le mot de passe ssh de l'utilisateur centreonBI, sur le serveur Central (pour la mise Ă  disposition des rapports gĂ©nĂ©rĂ©s sur l'interface)

ProcĂ©dure​

  1. Pour commencer l'installation du serveur de reporting, installez le dépÎt MBI. Vous pouvez le trouver sur le portail du support.

  2. Puis lancez la commande suivante:

Activer les dépÎts codeready-builder :

subscription-manager repos --enable codeready-builder-for-rhel-8-x86_64-rpms

Puis lancer l'installation :

dnf install centreon-bi-reporting-server MariaDB-server MariaDB-client

Dans le cas d'une installation basée sur une distribution vierge, installez la clé GPG :

cd /etc/pki/rpm-gpg/
wget hhttps://yum-gpg.centreon.com/RPM-GPG-KEY-CES

Activer le service cbis :

systemctl enable cbis

Configurer le serveur de reporting​

Optimisations MariaDB​

Assurez vous que le fichier de configuration optimisé fourni dans les pré-requis est bien présent dans /etc/my.cnf.d/, puis redémarrez le service MariaDB :

systemctl restart mariadb

Il est nécessaire de modifier la limitation LimitNOFILE. Changer cette option dans /etc/my.cnf NE fonctionnera PAS.

mkdir -p  /etc/systemd/system/mariadb.service.d/
echo -ne "[Service]\nLimitNOFILE=32000\n" | tee /etc/systemd/system/mariadb.service.d/limits.conf
systemctl daemon-reload
systemctl restart mariadb

Si le service MariaDB Ă©choue lors du dĂ©marrage, supprimer les fichiers ib_logfile (MariaDB doit absolument ĂȘtre stoppĂ©) puis redĂ©marrer Ă  nouveau MariaDB:

rm -f /var/lib/mysql/ib_logfile*
systemctl start mariadb

Si vous utilisez un fichier de socket spécifique pour MariaDB, modifiez le fichier /etc/my.cnf et dans la section [client], ajoutez :

socket=$PATH_TO_SOCKET$

SĂ©curiser la base de donnĂ©es​

Depuis MariaDB 10.5, il est obligatoire de sécuriser l'accÚs root de la base de données avant d'installer Centreon. Si vous utilisez une base de données locale, exécutez la commande suivante sur le serveur central, sinon sur le serveur de base de données :

mysql_secure_installation
  • RĂ©pondez oui Ă  toutes les questions, sauf Ă  "Disallow root login remotely?"
  • Il est obligatoire de dĂ©finir un mot de passe pour l'utilisateur root de la base de donnĂ©es. Vous aurez besoin de ce mot de passe pendant l'installation web.

Pour plus d'informations, veuillez consulter la documentation officielle de MariaDB.

Commencer à configurer​

Vérifiez que le MariaDB de reporting est bien démarré puis lancez les commandes ci dessous et répondez aux questions:

/usr/share/centreon-bi/config/install.sh

Le script gÚre l'échange de clés SSH entre le serveur de supervision et le serveur de reporting, et configure la rÚgle de publication SFTP par défaut afin de publier les rapports sur l'interface web Centreon. Enfin, il active la sauvegarde et démarre le service CBIS.

Une fois l'installation terminée, poursuivez au chapitre suivant pour configurer l'ETL.

ProblĂšme avec la clĂ© d'Ă©change SSH​

Dans quelques cas, l'échange de clés SSH échoue. Afin de résoudre le problÚme, procédez manuellement comme suit :

Sur le serveur de supervision. Pour commencer, passez dans l'environnement bash de centreonBI :

su - centreonBI

Ensuite, générez une clé SSH pour préparer l'environnement :

ssh-keygen -t ed25519 -a 100

Ensuite, sur le serveur de reporting, passez dans l'environnement bash de centreonBI :

su - centreonBI

Générez la clé SSH :

ssh-keygen -t ed25519 -a 100
cat ~/.ssh/id_ed25519.pub | tee ~/.ssh/authorized_keys

AprÚs avoir exécuté ces commandes, copiez le contenu du fichier qui a été affiché par la commande cat et collez-le dans le fichier ~/.ssh/authorized_keys sur le serveur de supervision et appliquez ensuite les permissions correctes au fichier (toujours en tant que l'utilisateur centreon) :

chmod 600 ~/.ssh/authorized_keys

L'Ă©change de clĂ©s doit ensuite ĂȘtre validĂ© par une premiĂšre connexion qui acceptera la signature du serveur SSH (toujours en tant que l'utilisateur centreonBI) depuis le serveur de reporting :

ssh centreonBI@@MONITORING_SERVER@

Ensuite, quittez la session centreonBI avec exit ou Ctrl-D sur les deux serveurs.

Pour continuer, relancez le script d'installation (/usr/share/centreon-bi/config/install.sh) comme ci-dessus et répondez Oui lorsqu'on vous demande de procéder à l'échange de clés SSH. Vous aurez une erreur lors de la création de l'USER car il existe déjà. Ce n'est pas une étape bloquante.

ETL : Configuration​

Centreon MBI intĂšgre un ETL qui permet de :

  • Synchroniser les donnĂ©es brutes de la supervision vers le serveur de reporting
  • Alimenter les bases de donnĂ©es du serveur de reporting avec les donnĂ©es statistiques
  • ContrĂŽler la rĂ©tention des donnĂ©es sur le serveur de reporting

Avant de passer aux étapes suivantes, il est nécessaire de lire le chapitre des bonnes pratiques afin de vous assurer que la configuration des objets dans Centreon (groupes, catégories...) est conforme aux attentes de Centreon MBI.

Dans le menu Rapports > Monitoring Business Intelligence > Options générales > Options de l'ETL, spécifiez les options suivantes :

OptionValeurs
Options générales
Une base de données MariaDB dédiée au reporting a été mise en place.Oui. Vous devez avoir un serveur de reporting dédié.
Espace de stockage des fichiers temporaires sur le serveur de reporting *Dossier sur le serveur de reporting dans lequel les dumps de données seront positionnés
Type de statistiques à traiterSélectionnez « Disponibilité uniquement » si vous utilisez uniquement les rapports de disponibilité. Sélectionnez « Performance et capacité uniquement» si vous souhaitez utiliser uniquement les rapports de capacité et de performance. Sélectionnez «Tous» afin de calculer les statistiques pour les deux types de rapports.
Activer le stockage des tables temporaires en mémoire (uniquement si la mémoire physique allouée au serveur de reporting est suffisante)Activé uniquement si votre configuration MariaDB et la mémoire physique allouée au serveur de reporting le permet.
Sélection du périmÚtre du reporting
Groupes d'hĂŽtesSĂ©lectionnez les groupes d’hĂŽtes pour lesquels vous souhaitez conserver les statistiques.
CatĂ©gories d'hĂŽtesSĂ©lectionnez les catĂ©gories d’hĂŽtes pour lesquels vous souhaitez conserver les statistiques.
Catégories de servicesSélectionnez les catégories de services pour lesquels vous souhaitez conserver les statistiques.
Calcul des données de disponibilité
Sélectionner les plages de services pour le calcul des statistiques de disponibilitéPlages horaires (time periods) pour lesquelles les calculs de disponibilité des hÎtes et des services sont réalisées
Calcul des données de performance et de capacité
Granularité des données statistiques à calculerSélectionnez le ou les niveaux de granularité pour le calcul des données de performance (1)
Sélectionner les plages de services pour le calcul des statistiques de performancePlages horaires sur les jours de la semaine pris en compte dans le calcul des données de capacité et de performance
Capacity statistic aggregated by month
Sélectionne la plage de service 24h/24, 7j/7 pour le calcul des statistiques mensuelles de capacitéSélectionnez la plage horaire 24x7.
Sélectionner les catégories de services liées aux indicateurs de capacitéSélectionnez les catégories de services ayant été rattachés à des services de type capacité
Exclure les mĂ©triques qui ne renvoient pas une indication d'utilisation des espaces de stockageConcerne uniquement les mĂ©triques liĂ©es aux services qui renvoient une information de capacitĂ©. SĂ©lectionnez uniquement les mĂ©triques qui donnent une valeur maximale ou une valeur totale de capacitĂ© et non une valeur d’utilisation. (Par exemple, la mĂ©trique “ size ” returnĂ©e par le plugin check_centreon_snmp_remote_storage »)
ParamĂštres pour le calcul des centiles
Calculating centile aggregation bySélectionnez la granularité des calculs. Le rapport de trafic fourni en standard avec BI 2.1 utilise les données au Mois.
Sélectionner les catégories de services sur lesquelles aggréger les donnéesSélectionnez uniquement les catégories de services pertinentes (Ex: Traffic)
Premier jour de la semaineSélectionnez le premier jour à considérer pour les statistiques à la semaine
Créer les combinaisons centile-plage horaire qui couvrent vos besoins (Format du centile : 00.0000)Créez des combinaisons centile/plage horaire sur lesquels les statistiques seront effectuées

(1) Les rapports nécessitant une granularité des données à l'heure sont listés ci-dessous. Si vous ne souhaitez pas utiliser ces rapports,désactivez le calcul des statistiques à l'heure:

  • Hostgroup-Host-details-1

  • Host-detail-v2

  • Hostgroup-traffic-Average-Usage-By-Interface

  • Hostgroup-traffic-by-Interface-And-Bandwith-Ranges

ETL: RĂ©tention de donnĂ©es​

Le serveur de reporting contient des tables de statistiques spécifiques à Centreon MBI dans la base de données "centreon_storage". L'espace de stockage utilisé par ces tables augmente chaque jour. Il est possible de contrÎler la taille de ces tables en définissant des rÚgles de rétention des données.

Sous Rapports > Monitoring Business Intelligence > Options GĂ©nĂ©rales > Options de rĂ©tention des donnĂ©es, la rĂ©tention des donnĂ©es peut ĂȘtre gĂ©rĂ©e par :

  • Type de donnĂ©es (disponibilitĂ©, performance).
  • GranularitĂ© des donnĂ©es (donnĂ©es brutes, valeurs horaires, quotidiennes ou mensuelles).

Avant d'activer les options de rétention de données, vérifiez que le moteur de reporting utilise un serveur MariaDB dédié, et que l'option correspondante est réglée sur Oui dans le menu Reporting > Business Intelligence > Options générales Options ETL.

Activez la gestion de la rétention des données en sélectionnant Oui, puis définissez les options de la configuration (exemple ci-dessous).

image

Pour activer la purge automatique des anciennes données, modifiez le fichier cron /etc/cron.d/centreon-bi-purge sur le serveur de reporting, puis décommentez la ligne suivante :

#0 20 * * * root @CENTREON_BI_HOME@/*etl*/dataRetentionManager.pl >> @CENTREON_BI_LOG@/dataRetentionManager.log 2>&1

Évitez les pĂ©riodes prĂ©vues pour les calculs statistiques avec Centreon MBI ETL et les gĂ©nĂ©rations de rapports.

Vous pouvez exécuter ce cron quotidiennement ou hebdomadairement, en fonction du temps d'exécution du batch et de la charge générée sur le serveur.

Redémarrez le service cron :

systemctl restart crond

BONNES PRATIQUES : Sélectionnez différentes périodes de rétention en fonction de la granularité des données statistiques:

  • Les valeurs agrĂ©gĂ©es par heure sont utilisĂ©es pour analyser une mĂ©trique sur une courte pĂ©riode, elles prennent beaucoup d'espace sur le disque. Vous n'aurez peut-ĂȘtre pas besoin de conserver ces statistiques plus de deux ou trois mois.
  • Au-delĂ  de cinq ou six mois, vous n'aurez peut-ĂȘtre besoin que de visualiser la tendance pour lesstatistiques de disponibilitĂ© ou de performance. Vous pourriez alors conserver lesdonnĂ©es agrĂ©gĂ©es quotidiennes pendant un maximum de six mois, par exemple, etconfigurer la conservation des donnĂ©es agrĂ©gĂ©es mensuelles pour une pĂ©riode de plusieurs dizaines de mois.

Veuillez passer Ă  la section suivante pour continuer l'installation.

ETL : Execution​

Avant de continuer, assurez-vous que vous avez installé le fichier de configuration MariaDB comme indiqué ci-dessus dans les prérequis. Configurez et activez la rétention des données afin que seules les données requises soient importées et calculées.

Reconstruction des statistiques Ă  partir des donnĂ©es historiques​

Exécutez la commande suivante sur le serveur de reporting. Celle-ci va :

  • Supprimer toutes les donnĂ©es existantes du serveur de reporting.
  • Importer les donnĂ©es de supervision brutes du serveur de supervision vers le serveur de reporting (en fonction des paramĂštres de rĂ©tention).
  • Remplir les tables contenant les statistiques de disponibilitĂ© des hĂŽtes et des services.
  • Remplir les tables contenant les statistiques de performance et de capacitĂ© des hĂŽtes et des services.
/usr/share/centreon-bi/bin/centreonBIETL -r

Activer l'exĂ©cution quotidienne du script​

Une fois le processus de reconstruction des données terminé, vous pouvez activer le calcul des statistiques. Sur le serveur de reporting, éditez le fichier /etc/cron.d/centreon-bi-engine et décommentez la ligne suivante :

#30 4 * * * root /usr/share/centreon-bi/bin/centreonBIETL -d >> /var/log/centreon-bi/centreonBIETL.log 2>&1

Redémarrez le service cron sur le serveur de reporting :

systemctl restart crond

Assurez-vous que le batch centreonBIETL ne démarre qu'une fois que le batch eventReportBuilder est terminé sur le serveur de supervision (consultez le fichier cron /etc/cron.d/centreon sur le serveur de supervision).

L'installation de Centreon MBI est maintenant terminée, consultez le tutoriel.