L’équipe de Centreon a décidé dernièrement de mettre les sources du module centreon-poller-display sur leur site de téléchargement. Cet article nous permettra d’installer ce module sur une distribution Debian. Nous partirons d’un poller Debian configuré avec les sources.
1 Préparation du poller
Votre poller est opérationnel, il a été réalisé avec les source comme l’explique cet article. Nous devrons installer une configuration complète pour Centreon-Web avec un serveur de base de données locales. Ne pas oublier l’installation de Centreon-Broker complet nécessaire au fonctionnement du module.
1.1 Prérequis
Debian 7.0
apt-get install sudo tofrodos bsd-mailx lsb-release mysql-server libmysqlclient-dev apache2 apache2-mpm-prefork php5 php5-mysql php-pear php5-ldap php5-snmp php5-gd rrdtool librrds-perl libconfig-inifiles-perl libcrypt-des-perl libdigest-hmac-perl libdigest-sha-perl libgd-gd2-perl php5-sqlite php5-intl -y
Debian 8.0
apt-get install sudo tofrodos bsd-mailx lsb-release mariadb-server libmysqlclient-dev apache2 apache2-mpm-prefork php5 php5-mysql php-pear php5-ldap php5-snmp php5-gd rrdtool librrds-perl libconfig-inifiles-perl libcrypt-des-perl libdigest-hmac-perl libdigest-sha-perl libgd-gd2-perl php5-sqlite php5-intl -y
Nouveauté avec la version 2.7, il faut obligatoirement configurer le paramètre date.timezone pour le php. Pour cela, éditez le fichier de configuration pour apache.
vi /etc/php5/apache2/php.ini
Saisissez la valeur adaptée à votre configuration.
[Date] ; Defines the default timezone used by the date functions ; http://php.net/date.timezone date.timezone = Europe/Paris
Comme vous avez installé Centreon-broker, n’oubliez pas de rendre le service automatique.
update-rc.d cbd defaults
1.2 Configuration de Centreon-Web
Nous devons maintenant installer tous les composant de centreon-web. Si vous n’avez plus les sources, installez-les de nouveau.
cd /usr/local/src wget https://s3-eu-west-1.amazonaws.com/centreon-download/public/centreon/centreon-web-2.7.1.tar.gz tar xzf centreon-web-2.7.1.tar.gz cd centreon-web-2.7.1
Comme nous avions installé précédemment centreon-web avec la configuration du poller, nous exécuterons une mise à jour.
./install.sh -u /etc/centreon
Nous n’installerons que les deux premières options.
############################################################################### # # # Centreon (www.centreon.com) # # Thanks for using Centreon # # # # v2.7.1 # # # # infos@centreon.com # # # # Make sure you have installed and configured # # sudo - sed - php - apache - rrdtool - mysql # # # ############################################################################### ------------------------------------------------------------------------ Checking all needed binaries ------------------------------------------------------------------------ rm OK cp OK mv OK /bin/chmod OK /bin/chown OK echo OK more OK mkdir OK find OK /bin/grep OK /bin/cat OK /bin/sed OK ------------------------------------------------------------------------ Detecting old installation ------------------------------------------------------------------------ Finding configuration file in: /etc/centreon OK You seem to have an existing Centreon. Do you want to use the last Centreon install parameters ? [y/n], default to [y]: > y Using: /etc/centreon/instCentPlugins.conf Do you want to install : Centreon Web Front [y/n], default to [n]: > y Do you want to install : Centreon CentCore [y/n], default to [n]: > y Do you want to install : Centreon Nagios Plugins [y/n], default to [n]: > n Do you want to install : CentreonTrapd process [y/n], default to [n]: > n
Le script d'installation va maintenant procéder à l'installation des différents modules.
Commençons par Centreon Web, Laissez par défaut sauf ce qui est inscrit en caractère gras. On considère que l’installation de Centreon-Web a déjà été réalisée dans /usr/share/centreon.
Commençons par Centreon Web, Laissez par défaut sauf ce qui est inscrit en caractère gras. On considère que l’installation de Centreon-Web a déjà été réalisée dans /usr/share/centreon.
------------------------------------------------------------------------ Start CentWeb Installation ------------------------------------------------------------------------ Where is your Centreon directory? default to [/usr/local/centreon] > /usr/share/centreon Path /usr/share/centreon OK Where is your Centreon log directory default to [/usr/local/centreon/log] > /var/log/centreon Path /var/log/centreon OK Where is your Centreon etc directory default to [/etc/centreon] > Path /etc/centreon OK Where is your Centreon binaries directory default to [/usr/local/centreon/bin] > /usr/share/centreon/bin Path /usr/share/centreon/bin OK Where is your Centreon data informations directory default to [/usr/local/centreon/data] > /usr/share/centreon/data Do you want me to create this directory ? [/usr/share/centreon/data] [y/n], default to [n]: > y Path /usr/share/centreon/data OK Where is your Centreon variable library directory? default to [/var/lib/centreon] > Path /var/lib/centreon OK /usr/bin/rrdtool OK /usr/bin/mail OK /usr/bin/php OK Where is PEAR [PEAR.php] default to [/usr/share/php/PEAR.php] > Path /usr/share/php OK /usr/bin/perl OK Finding Apache user : www-data Finding Apache group : www-data What is the Centreon group ? [centreon] default to [centreon] > What is the Centreon user ? [centreon] default to [centreon] > What is the Monitoring engine user ? > centreon-engine What is the Broker user ? (optional) > centreon-broker What is the Monitoring engine log directory ? > /var/log/centreon-engine Where is your monitoring plugins (libexec) directory ? default to [/usr/lib/nagios/plugins] > Path /usr/lib/nagios/plugins OK Add group centreon to user www-data OK Add group centreon to user centreon-engine OK Add group centreon-engine to user www-data OK Add group centreon-engine to user centreon OK ------------------------------------------------------------------------ Configure Sudo ------------------------------------------------------------------------ Where is sudo configuration file default to [/etc/sudoers] > /etc/sudoers OK What is the Monitoring engine init.d script ? > /etc/init.d/centengine What is the Monitoring engine binary ? > /usr/sbin What is the Monitoring engine configuration directory ? > /etc/centreon-engine Where is the configuration directory for broker module ? > /etc/centreon-broker Where is the init script for broker module daemon ? > /etc/init.d/cbd Your sudo has been configured previously Do you want me to reconfigure your sudo ? (WARNING) [y/n], default to [n]: > y Configuring Sudo OK ------------------------------------------------------------------------ Configure Apache server ------------------------------------------------------------------------ Create '/etc/apache2/conf.d/centreon.conf' OK Configuring Apache OK Do you want to reload your Apache ? [y/n], default to [n]: > y Reloading Apache service OK Preparing Centreon temporary files Change right on /var/log/centreon OK Change right on /etc/centreon OK Change macros for insertBaseConf.sql OK Change macros for sql update files OK Change macros for php files OK Change macros for php config file OK Change macros for perl binary OK Change right on /etc/centreon-engine OK Add group centreon-broker to user www-data OK Add group centreon-broker to user centreon-engine OK Add group centreon to user centreon-broker OK Change right on /etc/centreon-broker OK Disconnect users from WebUI All users are disconnected FAIL Copy CentWeb in system directory Install CentWeb (web front of centreon) OK Change right for install directory Change right for install directory OK Install libraries OK Write right to Smarty Cache OK Copying libinstall OK Change macros for centreon.cron OK Install Centreon cron.d file OK Change macros for centAcl.php OK Change macros for downtimeManager.php OK Install cron directory OK Change right for eventReportBuilder OK Change right for dashboardBuilder OK Change macros for centreon.logrotate OK Install Centreon logrotate.d file OK Prepare centFillTrapDB OK Install centFillTrapDB OK Prepare centreon_trap_send OK Install centreon_trap_send OK Prepare centreon_check_perfdata OK Install centreon_check_perfdata OK Prepare centreonSyncPlugins OK Install centreonSyncPlugins OK Prepare centreonSyncArchives OK Install centreonSyncArchives OK Install generateSqlLite FAIL Install changeRrdDsName.pl OK Prepare export-mysql-indexes OK Install export-mysql-indexes OK Prepare import-mysql-indexes OK Install import-mysql-indexes OK Prepare clapi binary OK Install clapi binary OK Centreon Web Perl lib installed OK ------------------------------------------------------------------------ Pear Modules ------------------------------------------------------------------------ Check PEAR modules PEAR 1.4.9 1.9.5 OK DB 1.7.6 NOK DB_DataObject 1.8.4 NOK DB_DataObject_FormBuilder 1.0.0RC4 NOK MDB2 2.0.0 NOK Date 1.4.6 NOK Archive_Tar 1.1 1.3.12 OK Auth_SASL 1.0.1 NOK Console_Getopt 1.2 1.3.1 OK Validate 0.6.2 NOK Log 1.9.11 NOK Archive_Zip 0.1.2 NOK Do you want me to install/upgrade your PEAR modules [y/n], default to [y]: > y Upgrading PEAR modules Installing PEAR modules DB 1.7.6 1.9.2 OK DB_DataObject 1.8.4 1.11.5 OK DB_DataObject_FormBuilder 1.0.0RC4 1.0.2 OK MDB2 2.0.0 2.4.1 OK Auth_SASL 1.0.1 1.0.6 OK Validate 0.6.2 0.8.5 OK Log 1.9.11 1.12.9 OK Archive_Zip 0.1.2 0.1.2 OK Check PEAR modules PEAR 1.4.9 1.10.1 OK DB 1.7.6 1.9.2 OK DB_DataObject 1.8.4 1.11.5 OK DB_DataObject_FormBuilder 1.0.0RC4 1.0.2 OK MDB2 2.0.0 2.4.1 OK Date 1.4.6 1.4.7 OK Archive_Tar 1.1 1.3.12 OK Auth_SASL 1.0.1 1.0.6 OK Console_Getopt 1.2 1.3.1 OK Validate 0.6.2 0.8.5 OK Log 1.9.11 1.12.9 OK Archive_Zip 0.1.2 0.1.2 OK All PEAR modules OK ------------------------------------------------------------------------ Centreon Post Install ------------------------------------------------------------------------ Create /usr/share/centreon/www/install/install.conf.php OK Create /etc/centreon/instCentWeb.conf OK
Continuons avec centstorage et centcore. N’activez pas le service centcore, ce n’est pas nécessaire.
------------------------------------------------------------------------ Start CentStorage Installation ------------------------------------------------------------------------ Where is your Centreon Run Dir directory? default to [/var/run/centreon] > Path /var/run/centreon OK Where is your CentStorage binary directory default to [/usr/share/centreon/bin] > Path /usr/share/centreon/bin OK Where is your CentStorage RRD directory default to [/var/lib/centreon] > Path /var/lib/centreon OK Preparing Centreon temporary files /tmp/centreon-setup exists, it will be moved... install www/install/createTablesCentstorage.sql OK Creating Centreon Directory '/var/lib/centreon/status' OK Creating Centreon Directory '/var/lib/centreon/metrics' OK Change right : /var/run/centreon OK Install logAnalyserBroker OK Install nagiosPerfTrace OK Change macros for centstorage.cron OK Install CentStorage cron OK Change macros for centstorage.logrotate OK Install Centreon Storage logrotate.d file OK Create /etc/centreon/instCentStorage.conf OK ------------------------------------------------------------------------ Start CentCore Installation ------------------------------------------------------------------------ Where is your CentCore binary directory default to [/usr/share/centreon/bin] > Path /usr/share/centreon/bin OK Preparing Centreon temporary files /tmp/centreon-setup exists, it will be moved... Copy CentCore in binary directory OK Change right : /var/run/centreon OK Change right : /var/lib/centreon OK Change macros for centcore.logrotate OK Install Centreon Core logrotate.d file OK Replace CentCore init script Macro OK Replace CentCore default script Macro OK Do you want me to install CentCore init script ? [y/n], default to [n]: > n CentCore init script not installed, please use : /usr/share/centreon/examples/centcore.init.d PASSED Create /etc/centreon/instCentCore.conf OK ############################################################################### # # # Go to the URL : http://poller-test7/centreon/ # # to finish the setup # # # # Report bugs at https://github.com/centreon/centreon/issues # # # # Thanks for using Centreon. # # ----------------------- # # Contact : infos@centreon.com # # http://www.centreon.com # # # ###############################################################################
Finalisez l’installation en mode Web à l’identique d’une installation Debian.
La réinstallation de Centreon-Web provoque un échec de l’authentification ssh entre le central et le poller. Appliquez ces commandes pour votre utilisateur centreon :
chmod g-w /var/lib/centreon
chmod 700 /var/lib/centreon/.ssh
chmod 600 /var/lib/centreon/.ssh/authorized_keys
1 Installation du module
Nous devons maintenant installer tous les sources de centreon-clapi.
cd /usr/local/src wget https://s3-eu-west-1.amazonaws.com/centreon-download/public/Modules/centreon-poller-display/centreon-poller-display-1.5.0.tar.gz tar xzf centreon-poller-display-1.5.0.tar.gz cd centreon-poller-display-1.5.0
Déplacez les fichiers du module dans le dossier prévu à cet effet.
mv www/modules/centreon-poller-display /usr/share/centreon/www/modules/
Copiez les fichiers de configuration de la synchronisation de la base centreon.
cp cron/centreon-poller-display-sync.php /usr/share/centreon/cron/centreon-poller-display-sync.php cp config/centreon-poller-display.cron.d /etc/cron.d/centreon-poller-display
Relancez le service cron pour la prise en charge de ce nouveau cron
service cron reload
2 Configuration de Centreon-Poller-Display
Il faut maintenant configurer l'interface Web pour désactiver certaines fonctionnalités qui ne sont pas nécessaire sur le poller. Ouvrir l'url suivante http://[IP du poller]/centreon. Connectez-vous en admin.
Sélectionnez Administration / Extensions. Sélectionnez le menu Modules.
Lorsque l'extension est installée, vous n'avez plus accès à certains menus comme le menu configuration. En effet toute la configuration sera effectuée au niveau du serveur Central. La configuration sur le poller est terminée. Passons à la configuration du broker sur le Central.
3 Configuration du broker poller-display
Cette opération doit être réalisée sur le serveur Central.
Nous devons modifier notre configuration du broker. Nous partirons du principe que vous avez configuré une architecture distribuée comme indiqué dans cet article. Pour bien comprendre les modifications, voici un schéma de principe. La partie dessinée en vert est la nouvelle configuration. Nous rajoutons une configuration pratiquement identique sur le poller, faites attention lors de la création de cette configuration, il est très facile de se tromper et d’obtenir un fonctionnement défaillant.
Nous devons modifier notre configuration du broker. Nous partirons du principe que vous avez configuré une architecture distribuée comme indiqué dans cet article. Pour bien comprendre les modifications, voici un schéma de principe. La partie dessinée en vert est la nouvelle configuration. Nous rajoutons une configuration pratiquement identique sur le poller, faites attention lors de la création de cette configuration, il est très facile de se tromper et d’obtenir un fonctionnement défaillant.
3.1 Modification de la configuration de Poller1-module
Premièrement, créons la liaison entre le module cbmod du poller et le broker de celui-ci. Cette connexion permettra d'alimenter les bases et les métriques sur le poller. Dans l'interface Web du Central, sélectionnez le menu Configuration / Pollers / Broker Configuration. Modifier la configuration de poller1-module, ajouter un Output de type IP v4.
3.2 Création de la configuration Poller1-Display-Broker
Deuxièmement, créons le broker du poller qui aura pour fonction de récupérer les données du Central afin de constituer une configuration locale. Sélectionnez le menu Configuration / Pollers / Broker Configuration. Cliquez sur Add
Cliquez sur l'onglet Input pour ajouter un Input de type IPv4
Cliquez sur l'onglet Logger pour ajouter un Logger de type File
Cliquez sur l'onglet Output, nous allons rajouter plusieurs Output. Le premier sera un Output de type Broker SQL database.
Le deuxième sera un Output de type Perfdata Generator
Le troisième sera un Output de type IPv4
Le quatrième sera un Output de type File pour le failover Broker SQL database.
Le cinquième sera un Output de type File pour le failover Perfdata Generator.
Le sixième sera un Output de type File pour le failover flux rrd
3.3 Création de la configuration Poller1-display-rrd
Pour finir, créons le flux pour les fichiers RRD du poller. Sélectionnez le menu Configuration / Pollers / Broker Configuration. Cliquez sur Add
Ajoutons un Input de type IPv4.
Ajoutons un Logger de type File.
Ajoutons deux Output de type RRD file generator et File.
4 Vérification du fonctionnement
La configuration est terminée. Appliquez la configuration sur le poller. Démarrez le service cbd et puis redémarrez le service centengine.
Démarrez le service cbd et puis redémarrez le service centengine sur le poller.
service cbd start service centengine restart
Connectez vous sur l'interface Web du poller, vous verrez apparaître au bout de quelques secondes les hôtes gérées par celui-ci. L'interface du poller n'affichera seulement les hôtes gérés par celui-ci ainsi que les graphes associés.
5 En cas de dysfonctionnement
Votre installation ne fonctionne pas ? Avez-vous vérifiez votre configuration ? Voici quelques pistes pour vous aider à trouver votre problème.
5.1 Déploiement de la configuration
Lors de l’application de la configuration du poller, vous devriez avoir ceci sur votre poller :
Fichiers de configuraton de Centreon-Broker
ls -l /etc/centreon-broker/ total 20 -rw-rw-r-- 1 centreon centreon 4244 5 août 07:18 central-broker.xml -rw-rw-r-- 1 centreon centreon 2075 5 août 07:18 central-rrd.xml -rw-rw-r-- 1 centreon-broker centreon-broker 504 31 juil. 17:42 master.run -rw-rw-r-- 1 centreon-broker centreon-broker 2027 5 août 07:18 poller1-module.xmlConfiguration de Centreon-Engine
cat /etc/centreon-engine/centengine.cfg | grep xml broker_module=/usr/lib/centreon-broker/cbmod.so /etc/centreon-broker/poller1-module.xmlProcess Centreon-Broker
ps aux | grep cbd 999 36155 0.1 3.4 276180 17412 ? Sl 16:37 0:00 /usr/sbin/cbd /etc/centreon-broker/central-broker.xml 999 36189 0.1 3.1 223680 15932 ? Sl 16:37 0:00 /usr/sbin/cbd /etc/centreon-broker/central-rrd.xml root 36595 0.0 0.1 7848 880 pts/2 S+ 16:44 0:00 grep cbdFlux TCP Centreon-Broker pour le poller
netstat -an | grep 567 tcp 0 0 0.0.0.0:5672 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:5670 0.0.0.0:* LISTEN tcp 0 0 127.0.0.1:42978 127.0.0.1:5670 ESTABLISHED tcp 0 0 127.0.0.1:49185 127.0.0.1:5672 ESTABLISHED tcp 0 0 127.0.0.1:5672 127.0.0.1:49185 ESTABLISHED tcp 0 0 127.0.0.1:5670 127.0.0.1:42978 ESTABLISHEDFlux TCP Centreon-Broker pour la communication avec le Central
netstat -an | grep 5669 tcp 0 0 172.16.209.71:54023 172.16.209.70:5669 ESTABLISHED
5.1 Vérification sur l’interface Web
En fait sur l’interface Web de votre poller, point de salut, vous n’avez pas de possibilité de vérifier le bon fonctionnement de votre installation. Seule la barre d’état en haut vous indique que tout va bien.
Sur le central, vous n’aurez que la visualisation du fonctionnement de Centreon-Engine du poller comme l’indique cette copie d’écran.
Il reste à configurer la gestion des utilisateurs pour l'authentification sur le poller.