Aujourd’hui nous allons parler d’Observium. C’est un système de supervision réseaux qui collecte ses informations par le biais du protocole SNMP.
Observium possède une interface web moderne et intuitive pour observer les informations collectées.
Je l’utilise au quotidien pour surveiller l’ensemble de mes machines et équipements réseaux.
La documentation d’Observium ne propose que l’installation avec Apache. Préférant nettement NGinx, nous allons voir comment installer Observium avec un serveur LEMP (NGinx, MariaDB, PHP7), en HTTPS, sous Debian 8.

Pré requis

– Un serveur web LEMP fonctionnel (installation disponible ici)
– Un accès SSH au serveur

Création de la base de données

Observium nécessite une base de données pour stocker les différentes informations.
Nous allons créer un utilisateur dédié à Observium qui aura accès à cette base.

Installation d’Observium

Avec notre serveur web fonctionnel ainsi que notre base de données, nous pouvons passer à l’installation à proprement dit d’Observium.
Nous allons commencer par installer quelques paquets complémentaires :

Puis nous allons récupérer les sources de la dernière version d’Observium et décompresser l’archive :

Dans cette archive il manque deux dossiers nécessaires à la collecte de logs et de stats pour les graphs. Nous allons donc les créer :

Nous allons maintenant éditer le fichier de configuration d’Observium pour y insérer les identifiants de connexion à sa base de données.

Voici les paramètres à faire correspondre avec votre configuration :

C’est ce fichier qu’il faudra modifier ultérieurement si on souhaite personnaliser l’application.
Nous allons désormais préparer la base de donnée avec les tables nécessaires. Pour cela, il suffit de lancer le script suivant :

On crée ensuite l’administrateur de l’interface web :

Et on ajoute les tâches récurrentes à notre Crontab :

Configuration d’NGinx

Il ne reste donc plus qu’à configurer le serveur web pour accéder à l’interface de l’application.
Pour cela nous allons éditer le fichier de configuration d’NGinx :

Puis créer les certificats nécessaires à la mise en place d’HTTPS :

Il ne reste plus qu’à vérifier notre fichier de configuration et recharger NGinx :

On ouvre notre navigateur et on accède alors à l’interface web d’Observium ! Cependant, il n’y a pour le moment aucun device monitoré.
home_obesrvium

Ajout d’un serveur Debian

Je ne vais pas détailler ici l’ajout d’hôtes à proprement dit, mais nous allons voir comment ajouter un serveur Debian (en l’occurence notre serveur de monitoring).
On prépare le script distro qui permet à Observium de découvrir plus d’informations sur la machine (et ajouter une belle icône Debian) :

Et enfin on édite notre fichier de configuration SNMP :

Bien sur vous remplacez ma_super_communaute par le nom de votre communauté SNMP (une chaine de caractère aléatoire), adresse_physique par une adresse postale pour le placer sur la map, et le contact par votre adresse pour recevoir les alertes.
On redémarre le service SNMP pour prendre en compte la configuration :

On ajoute alors l’hôte à Observium et on rafraichi les données :

Sur l’interface web nous avons alors notre premier serveur monitoré.
first_host_observium
Vous avez maintenant un serveur de monitoring pleinement fonctionnel. A vous d’ajouter le reste de vos équipements réseaux.
Pour tweaker la configuration d’Observium, je vous renvoie vers la doc officielle qui est très complète à ce sujet. Pour ajouter les alertes mails c’est ici !
J’aborderai dans un futur article l’intégration des agents Observium pour monitorer des aspects du système qui ne sont pas possibles via SNMP.