OpenNMS est la première plate-forme d’administration de réseau de niveau “qualité d’entreprise” du monde développée sous le modèle Open Source. Il se compose du projet Open Source soutenu d’une communauté aussi bien que des services commerciaux, service d’aide et d’un support en ligne.
Premières impressions :
OpenNMS est un produit qui s’appuie énormément sur le protocole SNMP pour “renifler” automatiquement tous services réseaux et informations sur vos hôtes à superviser.
Au bout de 10 à 15 min sur l’interface web, on commence à comprendre comment cet outil fonctionne et on est rapidement étonné par sa puissance. Pas besoin de redémarrage du démon openNMS, il prend toutes vos modifications à chaud. Après avoir rentré la première machine sur l’interface, il a été ajouté automatiquement l’hôte gérant le domaine avec tous ses services réseaux classés par interfaces (eth0,eth1, ect….) et à l’air de le considérer comme un “Parent”.
La métrologie pas de problèmes, il se met à grapher automatiquement les services qu’il sait superviser par défaut.
Il faut quelques préparatifs aux systèmes avant d’installer openNMS :
sudo sudo apt-get install wget librrd2-jni sun-java6-jdk postgresql libicmp-jni
Il faut éditer le fichier /etc/apt/sources.list et y ajouter les lignes suivantes :
# OpenNMS Depot deb http://debian.opennms.org stable main deb-src http://debian.opennms.org stable main
Récupération de la clé PGP d’OpenNMS
wget -O - http://debian.opennms.org/OPENNMS-GPG-KEY | sudo apt-key add -
sudo apt-get update
Il faut modifier le fichier /etc/postgresql/8.3/main/postgresql.conf
listen_addresses = '*' max_connections = 256 shared_buffers = 1024
Et le fichier /etc/postgresql/8.3/main/pg_hba.conf. Il faut commenter toutes les lignes et ne laisser que ce qu’il y a ci-dessous.
# TYPE DATABASE USER IP-ADDRESS IP-MASK METHOD local all all trust host all all 127.0.0.1 255.255.255.255 trust host all all ::1 ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff trust
Enfin, redémarrer postgresql
sudo /etc/init.d/postgresql-8.3 restart
L’installation via apt via simplifier énormément les choses.
sudo apt-get install opennms
Les données de openNMS sont installées aux endroits suivants :
$OPENNMS_HOME/etc/
Répertoire où se trouve les fichiers de configuration de OpenNMS.
$OPENNMS_HOME/share/rrd/
Répertoire où OpenNMS stock les données de performances (base RRD)
$OPENNMS_HOME/webapps/opennms/ et $OPENNMS_HOME/jetty-webapps/opennms/
Répertoire de l’interface Web d’OpenNMS.
$PGDATA/
Les données concernant les noeuds, machines, services sont stockées dans des tables de la base POSTGRESQL.
Il faut indiquer à OpenNMS quel JRE utiliser
sudo /usr/share/opennms/bin/runjava -s
Le script d’initialisation est lancé avec la commande suivante :
sudo /usr/share/opennms/bin/install -dis
Démarrage de openNMS
sudo /etc/init.d/opennms start
L’interface d’openNMS est accessible via l’url suivante : http://ip_serv_openNMS:8980/opennms
Login : admin
Mot de passe : admin
Il s’agit d’une vue vous permettant de rechercher vos hôtes supervisés en fonctions de plusieurs types de paramètres.
Cette vue vous permet de rechercher un problème en fonction de son ID ou vous avez la possibilité de tout lister.
Je pense que cette vue est un équivalent au “network Outages” de Nagios. Elle permet d’afficher les problèmes de liens réseaux entre les hôtes “père/fils” et les services qui y sont impactés.
Le dashboard est un des points fort d’openNMS. Cette vue regroupe toutes les données qu’on a besoin (métrologie, groupes machines, alertes) en 1 seule page. Ce n’est pas magnifique.
Cette vue vous permet soit de chercher les évènements via un ID ou lister totalement tous les évènements avec leurs niveaux de criticité.
Cette vue vous permet soit de chercher les alarmes via un ID ou lister totalement tous les évènements avec leurs niveaux de criticité.
Je trouve cette vue particulièrement complète en termes de rapports. Elle est doté de quelques fonctionnalités que j’affectionne beaucoup dans les outils de supervision.
Il s’agit de graphiques d’état de santé de la supervision et de graphiques chiffrant le matériel supervisé.
Comme tout outil de supervision qui se respecte, nous allons attaquer un gros morceaux … le panneau d’administration.
Cette vue vous permet de créer et gérer vos utilisateurs, groupes et rôles.
Cette vue vous permet de configurer la méthode de découverte de votre réseau que ce soit de manière spécifique ou en masses.
Cette vue vous permet de gérer quel interface que SNMP doit collecter.
Cette vue vous permet de gérer, désactiver ou même effacer les interfaces et services qui y sont rattachés.
Configure Events Notifications
Configure Destination Paths
Cette vue permet d’ajouter un hôte en saisissant juste son IP. OpenNMS gérera automatiquement l’ajout des services en fonction de ce qui peut interroger.
Dans cette vue, vous pourrez classer vos hôtes dans les différentes catégories existantes. Vous pouvez même créer vos propres catégories.
Les 2 dernières options sont prévu dans le cadre d’une supervision “distribuée”. Je ne vois pas trop comment interagir avec l’interface. Ceci demanderait une étude plus approfondi de OpenNMS.