Notre serveur Central étant configuré, pour l'instant du moins, nous démarrons l'installation de notre serveur poller appelé Poller. Ensuite nous modifierons la configuration de la communication entre le serveur Central et son poller. Notre serveur Poller sera positionné dans notre exemple dans le même réseau mais dans une situation réelle, il serait plus logique de le disposer dans un réseau différent du serveur Central pour limiter la bande passante, voir la configuration réseau de VMware Fusion pour les amateurs de cette solution.
Cette configuration fonctionnera avec Centreon 2.5.x, Centengine et Centreon-broker
Cette configuration fonctionnera avec Centreon 2.5.x, Centengine et Centreon-broker
Pour réaliser cette maquette, j’utilise VirtualBox avec Vagrant. Je me base sur l’installation de la maquette Duchmol, voici le schéma de principe ci-dessous. les deux VM debdns et weblamp ont été créées directement avec VirtualBox, l’architecture distribuée est pilotée par Vagrant et Vagrant Manager pour Mac OS X.
2 Installation du poller
Nous prendrons les articles sur l'installation d'un serveur Debian comme référence pour configurer notre serveur Poller. Nous considérons que notre serveur est installé avec la configuration de base Debian 7, l'interface réseau fonctionne et communique avec le serveur Central.
Info Si vous n’installez pas Centreon-Poller-Display, vous n’êtes pas obligé de downgrader le PHP et donc de modifier les dépôts Debian.
Nous installerons au fur et à mesure :
- Centreon-clib
- Centreon-connector
- Centreon-Engine
- Centreon-Broker (Info n’installez pas le service cbd si vous n’utilisez pas Centreon-Poller-Display, il ne servira pas pour notre poller)
sans oublier
- les plugins et le SNMP.
Pour résumer, appliquez les paragraphes 1 sauf le point 1.2, 2, 3, 4, 5, 6 sauf l’installation de cbd, et le 7.
Info Si vous n’installez pas Centreon-Poller-Display, vous n’êtes pas obligé de downgrader le PHP et donc de modifier les dépôts Debian.
Nous installerons au fur et à mesure :
- Centreon-clib
- Centreon-connector
- Centreon-Engine
- Centreon-Broker (Info n’installez pas le service cbd si vous n’utilisez pas Centreon-Poller-Display, il ne servira pas pour notre poller)
sans oublier
- les plugins et le SNMP.
Pour résumer, appliquez les paragraphes 1 sauf le point 1.2, 2, 3, 4, 5, 6 sauf l’installation de cbd, et le 7.
2.1 Pré Requis
Créez un groupe et un utilisateur centreon. Les utilisateurs Centreon-engine et Centreon-Broker devront appartenir au groupe Centreon.
groupadd -g 6000 centreon useradd -u 6000 -g centreon -m -r -d /var/lib/centreon -c "Centreon Admin" centreon usermod -aG centreon-engine centreon usermod -aG centreon-broker centreon usermod -aG centreon centreon-engine usermod -aG centreon centreon-broker
Saisir un mot de passe pour centreon, il sera nécessaire pour la communication entre le serveur Central et le poller.
passwd centreon Entrez le nouveau mot de passe UNIX : Retapez le nouveau mot de passe UNIX : passwd : le mot de passe a été mis à jour avec succès
Il faut aussi installer des paquets supplémentaires. Apache est nécessaire pour l'installation de Centreon. Il faudra penser à désactiver le service puisque nous n'en auront pas besoin pour la suite.
apt-get install sudo apache2 librrds-perl libconfig-inifiles-perl libnet-snmp-perl libdigest-hmac-perl libcrypt-des-ede3-perl libdbd-sqlite3-perl -y
2.2 Installation Centreon UI en ligne de commande
Téléchargez le binaire dans le dossier /usr/local/src et décompressez-le.
cd /usr/local/src wget https://s3-eu-west-1.amazonaws.com/centreon-download/public/centreon/centreon-2.5.4.tar.gz tar xzf centreon-2.5.4.tar.gz cd centreon-2.5.4
Lancez la ligne de commande ci-dessous pour débuter l'installation.
./install.sh -i
Au lancement du script, le programme confirme si toutes les dépendances sont satisfaites.
############################################################################### # # # Centreon (www.centreon.com) # # Thanks for using Centreon # # # # v2.5.3 # # # # 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 You will now read Centreon Licence. Press enter to continue.
Ensuite, vous devez accepter la licence d'utilisateur de Centreon (licence GPL Version 2) pour continuer. Si vous refusez cette licence, vous abandonnez l'installation.
This General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Library General Public License instead of this License. Do you accept GPL license ? [y/n], default to [n]: > y
Le module d'installation va alors vous si vous souhaitez installer les modules: l'interface Web Centreon, Centcore, les plugins Centreon et les Traps handler Centreon. Nous utiliserons seulement les deux derniers modules.
------------------------------------------------------------------------ Please choose what do you want to install ------------------------------------------------------------------------ Do you want to install Centreon Web Front [y/n], default to [n]: > n Do you want to install Centreon CentCore [y/n], default to [n]: > n Do you want to install Centreon Nagios Plugins [y/n], default to [n]: > y Do you want to install Centreon Snmp Traps process [y/n], default to [n]: > y
Le script d'installation va maintenant procéder à l'installation des différents modules. nous commencerons l'installation des plugins de Centreon.
------------------------------------------------------------------------ Start CentPlugins Installation ------------------------------------------------------------------------ Where is your monitoring plugins (libexec) directory ? default to [/usr/lib/nagios/plugins] > /usr/local/plugins/libexec Path /usr/local/plugins/libexec OK Where is your CentPlugins lib directory default to [/var/lib/centreon/centplugins] > Do you want me to create this directory ? [/var/lib/centreon/centplugins] [y/n], default to [n]: > y Path /var/lib/centreon/centplugins OK What is the Centreon user ? [centreon] default to [centreon] > What is the Centreon group ? [centreon] default to [centreon] > Preparing Centreon temporary files Change macros for CentPlugins OK Installing the plugins OK Change right on centreon.conf OK CentPlugins is installed
Saisir le chemin des plugins et répondre y pour la création du dossier centplugins. Laisser par défaut l'utilisateur et le groupe centreon. Continuons avec la gestion des Traps.
------------------------------------------------------------------------ Start CentPlugins Traps Installation ------------------------------------------------------------------------ Where is your Centreon etc directory default to [/etc/centreon] > Do you want me to create this directory ? [/etc/centreon] [y/n], default to [n]: > y Path /etc/centreon OK Where is your Centreon Run Dir directory? default to [/var/run/centreon] > Do you want me to create this directory ? [/var/run/centreon] [y/n], default to [n]: > y Path /var/run/centreon OK Where is your Centreon log directory default to [/usr/local/centreon/log] > Do you want me to create this directory ? [/usr/local/centreon/log] [y/n], default to [n]: > y Path /usr/local/centreon/log OK Where is your SNMP configuration directory default to [/etc/snmp] > /etc/snmp OK Where is your CentreonTrapd binaries directory default to [/usr/local/centreon/bin] > Do you want me to create this directory ? [/usr/local/centreon/bin] [y/n], default to [n]: > y /usr/local/centreon/bin OK Finding Apache user : www-data Preparing Centreon temporary files /tmp/centreon-setup exists, it will be moved... Change macros for snmptrapd.conf OK Replace CentreonTrapd init script Macro OK Replace CentreonTrapd default script Macro OK cp: impossible de créer le fichier standard « /examples/centreontrapd.default »: Aucun fichier ou dossier de ce type cp: impossible de créer le fichier standard « /examples/centreontrapd.init.d »: Aucun fichier ou dossier de ce type Do you want me to install CentreonTrapd init script ? [y/n], default to [n]: > y CentreonTrapd init script installed OK CentreonTrapd default script installed OK Do you want me to install CentreonTrapd run level ? [y/n], default to [n]: > y update-rc.d: using dependency based boot sequencing trapd Perl lib installed OK Install : snmptrapd.conf OK Install : centreontrapdforward OK Install : centreontrapd OK Create /etc/centreon/instCentPlugins.conf OK ############################################################################### # # # Go to the URL : http://debian7.localmac/centreon/ # # to finish the setup # # # # Report bugs at http://forge.centreon.com # # # # Thanks for using Centreon. # # ----------------------- # # Contact : infos@centreon.com # # http://www.centreon.com # # # ###############################################################################
Répondre par défaut et validez la création de répertoires. Accepter l'installation du service CentreonTrapd.
A l’installation de Centreontrapd, on peut s’apercevoir d’une erreur.
cp: impossible de créer le fichier standard « /examples/centreontrapd.default »: Aucun fichier ou dossier de ce type
cp: impossible de créer le fichier standard « /examples/centreontrapd.init.d »: Aucun fichier ou dossier de ce type
Il faut modifier le fichier /etc/init.d/centreontrapd, remplacer les lignes suivantes
DAEMON=/centreontrapd
PIDFILE=/var/run/centreon/centreontrapd.pid
par
DAEMON=/usr/local/centreon/bin/centreontrapd
PIDFILE=/var/run/centreontrapd.pid
il sera indispensable de créer un premier fichier de configuration /etc/centreon/conf.pm
#############################################
# File Added by Centreon
#
$centreon_config = {
VarLib => "/var/lib/centreon",
CentreonDir => "/usr/local/centreon/",
"centreon_db" => "dbname=/etc/snmp/centreon_traps/centreontrapd.sdb",
"centstorage_db" => "dbname=/etc/snmp/centreon_traps/centreontrapd.sdb",
"db_host" => "",
"db_user" => "",
"db_passwd" => "",
"db_type" => "SQLite",
};
# Central or Poller ?
$instance_mode = "poller";
$cmdFile = "/var/lib/centreon-engine/rw/centengine.cmd";
1;
et le second /etc/centreon/centreontrapd.pm
our %centreontrapd_config = (
# Temps en secondes avant d'arrêter brutalement les sous processus
timeout_end => 30,
spool_directory => "/var/spool/centreontrapd/",
# Délai entre deux contrôles du répertoire de "spool" pour détecter de nouveaux fichiers à traiter
sleep => 2,
# 1 = utiliser la date et heure du traitement e l'évènement par centreontrapdforward
use_trap_time => 1,
net_snmp_perl_enable => 1,
mibs_environment => '',
remove_backslash_from_quotes => 1,
dns_enable => 0,
# Séparateur à appliquer lors de la substitution des arguments
separator => ' ',
strip_domain => 0,
strip_domain_list => [],
duplicate_trap_window => 1,
date_format => "",
time_format => "",
date_time_format => "",
# Utiliser le cache d'OID interne de la base de données
cache_unknown_traps_enable => 1,
# Temps en secondes avant de recharger le cache
cache_unknown_traps_retention => 600,
# 0 = central, 1 = poller
mode => 1,
cmd_timeout => 10,
centreon_user => "centreon",
# 0 => continuer en cas d'erreur MySQL | 1 => ne pas continuer le traitement (blocage) en cas d'erreur MySQL
policy_trap => 1,
# Enregistrement des journaux en base de données
log_trap_db => 0,
log_transaction_request_max => 500,
log_transaction_timeout => 10,
log_purge_time => 600
);
1;
Modifiez les droits du dossier /usr/local/centreon/log afin que le processus centreontrapd puisse écrire ses logs.
chmod 775 /usr/local/centreon/log
chown centreon: /usr/local/centreon/log
Relancez le service
service centreontrapd restart
2.3 modification SNMP
Pour avoir un fonctionnement des services lors de la configuration du poller, modifiez le service SNMP pour autoriser l’adresse IP 10.0.0.49. Editez le fichier /etc/snmp/snmpd.conf
agentAddress udp::161 rocommunity public 10.0.0.49 iquerySecName internalUser trapsink 10.0.0.49 public
Relancez le service snmpd. Notre installation du poller est terminé, passons à la configuration.