Monitoring réseau

Installer et configurer OpenNMS sous Windows
Introduction
Si vous avez déjà eu l'occasion d'utiliser des solutions de monitoring réseau Open Source, vous connaissez certainement des produits tels que Nagios. Je ne vous apprendrai rien en vous disant que je genre d'application demande énormément de temps de configuration. Se retrouver en parfait débutant devant un Nagios fraîchement installé peut être une expérience assez traumatisante ;-)

Heureusement, il existe une alternative beaucoup plus simple à mettre en oeuvre et toute aussi puissante: OpenNMS.

Le tableau de bord principal de OpenNMS
OpenNMS est une solution de supervision réseau écrite en Java dont les principales fonctions sont les suivantes :
  • Découverte d'équipements et de services
  • Suivi de disponibilité de ces équipements et services
  • Collecte de données (SNMP, HTTP, JMX) et présentation graphique de ces données
  • Traitement des évènements (traps SNMP, syslog) et des alarmes
  • Corrélation d'évènements et reporting
  • Décodage des MIBs SNMP grâce à l'outil mib2opennms
De plus OpenNMS est très facile à installer sur une plateforme Windows.

Installation
Le manuel d'installation de OpenNMS est disponible à cette adresse.

Malheureusement, cette page semble légèrement obsolète depuis la sortie de PostgreSQL 9. Lorsque je l'ai installé, certaines étapes décrites dans le document se sont avérées inutiles. Voici donc la marche à suivre exacte:
  1. Installez le JDK 1.6 (http://www.oracle.com/technetwork/java/javase/downloads/index.htm)
  2. Pas besoin d'installer JICMP, il est inclut dans l'installeur.
  3. Installez PostgreSQL 9.0.3-1 (http://www.postgresql.org/download/windows)
  4. Pas besoin de créer la base postgres initdb -E UTF-8 -U postgres ..\data
  5. Pas besoin d'activer PL/PGSQL Language
  6. Installez OpenNMS depuis le fichier standalone-opennms-installer-X.X.X.zip disponible ici 
Durant la phase d'installation, ne changez pas les paramètres de discovery; ils seront configurés ultérieurement.

Vous pouvez maintenant démarrer OpenNMS :
  • Start -> Run -> cmd
  • cd c:\Program Files\OpenNMS\bin
  • opennms.bat start
Ouvrez ensuite votre navigateur favori et tapez l'adresse http://localhot:8980/opennms. Utilisez admin (mot de passe admin) pour vous connecter la première fois.

Le détail des services monitorés sur le serveur sélectionné

Ajouter les serveurs à monitorer
Nous allons commencer par ajouter OpenNMS lui-même dans la liste des serveurs à monitorer:
  • Cliquez sur le menu Admin
  • Dans la section Operations, cliquez sur Configure SNMP Community Names by IP
  • Entrez l'adresse IP de votre serveur dans le champ First IP Address
  • Entrez un nom dans le champ Community String
  • Cliquer sur Submit
Cliquez sur Node List et faites un refresh (F5) de la page jusqu'à ce que votre serveur apparaisse.

Pour ajouter d'autre serveurs :
  • Cliquez sur le menu Admin
  • Dans la section Nodes, cliquez sur Add Interface
  • Entrez l'adresse IP du noeud à monitorer
  • Cliquer sur Submit
Affichage de l'historique des temps de réponse des différents services

Configurer la notification par e-mail
Pour commencer, il faut associer une adresse email à l'administrateur.
  • Cliquez sur le menu Admin
  • Cliquez sur Configure Users, Groups and Roles
  • Cliquez sur Configure Users
  • Cliquez sur l'icône Modify en face de l'administrateur
  • Entrez une adresse e-mail
  • Cliquez sur Finish
OpenNMS utilise la librairie Java-Mail pour envoyer des messages. Pour configurer celle-ci, éditez le fichier c:\Program Files\OpenNMS\etc\javamail-configuration.properties avec un éditeur supportant les fichiers textes UNIX. Par exemple, Notepad++. Décommentez toutes les lignes et changez l'adresse de votre serveur SMTP.

################################################################################
# This file is the configuration for the the JavaMailer class.  It is used to
# specify the details of the JavaMailer system properties
################################################################################
#
# Properties are defined but commented out indicating the default values.
#
#
# This property defines system sender account.
#
# The default setting is root@[127.0.0.1]
org.opennms.core.utils.fromAddress=yourname@yourdomain.com
#
# These properties define the SMTP Host.
#
org.opennms.core.utils.mailHost=999.999.999.999 
org.opennms.core.utils.mailer=smtpsend
org.opennms.core.utils.transport=smtp
org.opennms.core.utils.debug=true
org.opennms.core.utils.smtpport=25
org.opennms.core.utils.smtpssl.enable=false
org.opennms.core.utils.quitwait=true
#
# This property controls the use of the JMTA
# if it is true, mailHost will be ignored
org.opennms.core.utils.useJMTA=false
#
# These properties define the Mail authentication.
#
org.opennms.core.utils.authenticate=false
org.opennms.core.utils.authenticateUser="opennms"
org.opennms.core.utils.authenticatePassword="opennms"
org.opennms.core.utils.starttls.enable=false
#
# These properties configure message content
#
org.opennms.core.utils.messageContentType=text/plain
org.opennms.core.utils.charset=us-ascii

Activer les notifications
Pour activer les notification, éditez ensuite le fichier c:\Program Files\OpenNMS\etc\notifd-configuration.xml.
Changez l'attribut statut="off" en statut="on". Sauvegardez le fichier et redémarrez OpenNMS.
  • Start -> Run -> cmd
  • cd c:\Program Files\OpenNMS\bin
  • opennms.bat stop
  • opennms.bat start

Conclusion
OpenNMS s'avère une alternative très sérieuse à Nagios, nettement moins complexe à mettre en place pour les petites et moyennes entreprises. Pour plus d'informations, je vous invite à lire cet excellent billet de Rootdev: http://www.rootdev.com/tech/opennms-vs-nagios.

Commentaires