Recherche de site Web

Observium : un système complet de gestion et de surveillance de réseau pour RHEL/CentOS


Observium est une application d'observation et de surveillance de réseau basée sur PHP/MySQL, qui prend en charge un large éventail de systèmes d'exploitation/plates-formes matérielles, notamment Linux, Windows, FreeBSD, Cisco, HP, Dell, NetApp et bien d'autres. Il cherche à présenter une interface Web robuste et simple pour surveiller la santé et les performances de votre réseau.

Observium collecte les données des appareils à l'aide de SNMP et affiche ces données sous forme graphique via une interface Web. Il utilise largement le package RRDtool. Il a un certain nombre d'objectifs de conception de base, notamment la collecte d'un maximum d'informations historiques sur les appareils, la découverte totalement automatique avec une légère ou aucune interruption manuelle et une interface très simple mais puissante.

Démo de l'Observium

Veuillez avoir une démo rapide en ligne de l'Observium déployé par le développeur à l'emplacement suivant.

  1. http://demo.observium.org/

Cet article vous guidera sur la façon d'installer Observium sur RHEL, CentOS et Scientific Linux, la version prise en charge est EL (Enterprise Linux) 6.x. Actuellement, Observium n'est pas pris en charge pour les versions EL 4 et 5 respectivement. Veuillez donc ne pas utiliser les instructions suivantes sur ces versions.

Étape 1 : Ajout des référentiels RPM Forge et EPEL

RPMForge et EPEL est un référentiel qui fournit de nombreux packages logiciels RPM complémentaires pour RHEL, CentOS et Scientific Linux. Installons et activons ces deux référentiels communautaires à l'aide des commandes suivantes.

Sur les systèmes i386
yum install wget
wget http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el5.rf.i386.rpm
wget http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm
wget http://apt.sw.be/RPM-GPG-KEY.dag.txt
rpm --import RPM-GPG-KEY.dag.txt
rpm -Uvh rpmforge-release-0.5.3-1.el5.rf.i386.rpm
rpm -Uvh epel-release-6-8.noarch.rpm
Sur les systèmes x86_64
yum install wget
wget http://packages.sw.be/rpmforge-release/rpmforge-release-0.5.2-2.el6.rf.rpm
wget http://epel.mirror.net.in/epel/6/x86_64/epel-release-6-8.noarch.rpm
wget http://apt.sw.be/RPM-GPG-KEY.dag.txt
rpm --import RPM-GPG-KEY.dag.txt
rpm -Uvh rpmforge-release-0.5.2-2.el6.rf.rpm
rpm -Uvh epel-release-6-8.noarch.rpm

Étape 2 : Installer les packages logiciels nécessaires

Installons maintenant les packages logiciels requis pour Observium.

yum install httpd php php-mysql php-gd php-snmp vixie-cron php-mcrypt \
php-pear net-snmp net-snmp-utils graphviz subversion mysql-server mysql rrdtool \
fping ImageMagick jwhois nmap ipmitool php-pear.noarch MySQL-python

Si vous souhaitez surveiller les machines virtuelles, veuillez installer le package « libvirt ».

yum install libvirt

Étape 3 : Téléchargement d'Observium

Pour information, Observium propose deux éditions suivantes

  1. Édition communautaire/Open Source : cette édition est disponible gratuitement en téléchargement avec moins de fonctionnalités et quelques correctifs de sécurité.
  2. Édition par abonnement : cette édition est livrée avec des fonctionnalités supplémentaires, des fonctionnalités/correctifs rapides, une prise en charge matérielle et un mécanisme de publication facile à utiliser basé sur SVN.

Tout d’abord, accédez directement au /opt, nous allons ici installer Observium par défaut. Si vous souhaitez installer ailleurs, veuillez modifier les commandes et la configuration en conséquence. Nous vous suggérons fortement de d'abord déployer sous le répertoire /opt. Une fois que vous avez vérifié que tout fonctionne parfaitement, vous pouvez l'installer à l'emplacement souhaité.

Si vous disposez d'un abonnement Observium actif, vous pouvez utiliser les référentiels SVN pour télécharger la version la plus récente. Un compte d'abonnement valide uniquement valable pour une seule installation et deux installations de test ou de développement avec des correctifs de sécurité quotidiens, de nouvelles fonctionnalités et des corrections de bugs.

Pour télécharger la version stable et actuelle la plus récente d'Observium, vous devez avoir un package svn installé sur le système, afin d'extraire les fichiers du référentiel SVN.

yum install svn
Version de développement
svn co http://svn.observium.org/svn/observium/trunk observium
Version stable
svn co http://svn.observium.org/svn/observium/branches/stable observium

Nous n'avons pas d'abonnement valide, nous allons donc essayer Observium en utilisant l'édition Community/Open Source. Téléchargez la dernière version stable « observium-community-latest.tar.gz » et décompressez-la comme indiqué.

cd /opt
wget http://www.observium.org/observium-community-latest.tar.gz
tar zxvf observium-community-latest.tar.gz

Étape 4 : Création de la base de données MySQL Observium

Il s'agit d'une nouvelle installation de MySQL. Nous allons donc définir un nouveau mot de passe root à l'aide de la commande suivante.

service mysqld start
/usr/bin/mysqladmin -u root password 'yourmysqlpassword'

Connectez-vous maintenant au shell mysql et créez la nouvelle base de données Observium.

mysql -u root -p

mysql> CREATE DATABASE observium;
mysql> GRANT ALL PRIVILEGES ON observium.* TO 'observium'@'localhost' IDENTIFIED BY 'dbpassword';

Étape 5 : Configurer Observium

Configurer SELinux pour qu'il fonctionne avec Observium dépasse le cadre de cet article, nous avons donc désactivé SELinux. Si vous êtes familier avec les règles SELinux, vous pouvez le configurer, mais aucune garantie que l'Observium fonctionne avec SELinux actif. Alors mieux vaut le désactiver définitivement. Pour ce faire, ouvrez le fichier « /etc/sysconfig/selinux » et modifiez l'option de « permissive » à « disabled ».

vi /etc/sysconfig/selinux
SELINUX=disabled

Copiez le fichier de configuration par défaut « config.php.default » dans « config.php » et modifiez les paramètres comme indiqué.

/opt/observium
cp config.php.default config.php

Ouvrez maintenant le fichier 'config.php' et entrez les détails MySQL tels que le nom de la base de données, le nom d'utilisateur et le mot de passe.

vi config.php
// Database config
$config['db_host'] = 'localhost';
$config['db_user'] = 'observium';
$config['db_pass'] = 'dbpassword';
$config['db_name'] = 'observium';

Ajoutez ensuite une entrée pour l'emplacement binaire fping dans config.php. Dans la distribution RHEL, l'emplacement est différent.

$config['fping'] = "/usr/sbin/fping";

Ensuite, exécutez la commande suivante pour configurer la base de données MySQL et insérez le schéma de fichier par défaut de la base de données.

php includes/update/update.php

Étape 6 : Configurer Apache pour Observium

Créez maintenant un répertoire « rrd » sous le répertoire « /opt/observium » pour stocker les RRD.

/opt/observium
mkdir rrd

Ensuite, accordez la propriété Apache au répertoire « rrd » pour écrire et stocker les RRD dans ce répertoire.

chown apache:apache rrd

Créez une directive Apache Virtual Host pour Obervium dans le fichier '/etc/httpd/conf/httpd.conf'.

vi /etc/httpd/conf/httpd.conf

Ajoutez la directive Virtual Host suivante au bas du fichier et activez la section Virtualhost comme indiqué dans la capture d'écran ci-dessous.

<VirtualHost *:80>
  DocumentRoot /opt/observium/html/
  ServerName  observium.domain.com
  CustomLog /opt/observium/logs/access_log combined
  ErrorLog /opt/observium/logs/error_log
  <Directory "/opt/observium/html/">
  AllowOverride All
  Options FollowSymLinks MultiViews
  </Directory>
  </VirtualHost>

Pour conserver les journaux d'observium, créez un répertoire « logs » pour Apache sous « /op/observium » et appliquez la propriété Apache pour écrire les journaux.

mkdir /opt/observium/logs
chown apache:apache /opt/observium/logs

Après tous les paramètres, redémarrez le service Apache.

service httpd restart

Étape 7 : Créer un utilisateur administrateur Observium

Ajoutez un premier utilisateur, donnez le niveau de 10 pour l'administrateur. Assurez-vous de remplacer le nom d'utilisateur et le mot de passe par votre choix.

cd /opt/observium
./adduser.php tecmint tecmint123 10

User tecmint added successfully.

Ajoutez ensuite un nouvel appareil et exécutez les commandes suivantes pour remplir les données du nouvel appareil.

./add_device.php <hostname> <community> v2c
./discovery.php -h all
./poller.php -h all

Ensuite, définissez une tâche cron, créez un nouveau fichier « /etc/cron.d/observium » et ajoutez le contenu suivant.

33  */6   * * *   root    /opt/observium/discovery.php -h all >> /dev/null 2>&1
*/5 *      * * *   root    /opt/observium/discovery.php -h new >> /dev/null 2>&1
*/5 *      * * *   root    /opt/observium/poller-wrapper.py 1 >> /dev/null 2>&1

Rechargez le processus cron pour prendre de nouvelles entrées.

/etc/init.d/cron reload

La dernière étape consiste à ajouter les services httpd et mysqld à l'échelle du système, pour qu'ils démarrent automatiquement après le démarrage du système.

chkconfig mysqld on
chkconfig httpd on

Enfin, ouvrez votre navigateur préféré et pointez sur http://Votre-adresse-IP.

Visite de capture d'écran de l'Observium

Voici les captures d'écran de la mi-2013, tirées du site Web de l'Observium. Pour une vue à jour, veuillez consulter la démo en direct.

Conclusion

Observium ne vise pas à supprimer complètement les autres outils de surveillance tels que Nagios ou Cacti, mais plutôt à les ajouter avec une excellente compréhension de certains appareils. Pour cette raison, il est important de déployer Observium avec Naigos ou d'autres systèmes de surveillance pour fournir des alertes et Cacti pour produire des graphiques personnalisés de vos périphériques réseau.

Liens de référence :

  1. Page d'accueil de l'Observium
  2. Documentation de l'Observatoire