Comment installer la solution de surveillance de réseau OpenNMS sur Debian 11

OpenNMS est un système de gestion de réseau ouvert, gratuit et open-source écrit en Java. Il s’agit d’une application de surveillance du réseau qui recueille des informations critiques auprès des hôtes locaux et du réseau à l’aide du protocole SNMP. Il peut être installé sur les systèmes d’exploitation Linux et Windows et fournit une interface Web pour surveiller le trafic réseau à l’aide d’un navigateur Web. Il offre un riche ensemble de fonctionnalités, notamment l’approvisionnement, la surveillance des services, la gestion des événements, la prise en charge des graphiques et la mesure des performances.

Dans ce billet, nous allons te montrer comment installer OpenNMS sur Debian 11.

Conditions préalables

  • Un serveur fonctionnant sous Debian 11.
  • Un mot de passe root est configuré sur le serveur.

Installe les dépendances requises

Tout d’abord, mets à jour tes paquets système à la dernière version en utilisant la commande suivante :

apt-get update -y

Une fois que tous les paquets sont mis à jour, tu devras aussi installer Java et les autres dépendances requises sur ton serveur. Tu peux tous les installer en exécutant la commande suivante :

apt-get install default-jdk gnupg2 curl wget -y

Une fois que tous les paquets sont installés, tu peux vérifier la version de Java à l’aide de la commande suivante :

java -version

Tu devrais voir la version de Java dans la sortie suivante :

openjdk version "11.0.12" 2021-07-20
OpenJDK Runtime Environment (build 11.0.12+7-post-Debian-2)
OpenJDK 64-Bit Server VM (build 11.0.12+7-post-Debian-2, mixed mode, sharing)

Une fois que tu as terminé, tu peux passer à l’étape suivante.

Ajouter le référentiel OpenNMS

Par défaut, le paquet OpenNMS n’est pas inclus dans le référentiel par défaut de Debian 11. Tu devras donc ajouter le référentiel OpenNMS à l’APT. Tu peux l’ajouter avec la commande suivante :

nano /etc/apt/sources.list.d/opennms.list

Ajoute les lignes suivantes :

deb https://debian.opennms.org stable main
deb-src https://debian.opennms.org stable main

Enregistre et ferme le fichier puis ajoute la clé GPG avec la commande suivante :

wget -O - https://debian.opennms.org/OPENNMS-GPG-KEY | apt-key add -

Une fois le référentiel et la clé ajoutés, mets à jour le cache du référentiel avec la commande suivante :

apt-get update -y

Une fois que tu as terminé, tu peux passer à l’étape suivante.

Installe OpenNMS sur Debian 11

Maintenant, exécute la commande suivante pour installer le paquet OpenNMS sur ton système.

apt-get install opennms -y

Une fois qu’OpenNMS est installé, tu devrais voir la sortie suivante :

 *** Installation complete.  You must still run the installer at
 *** $OPENNMS_HOME/bin/install to be sure your database is up
 *** to date before you start OpenNMS.  See the install guide at
 *** http://www.opennms.org/wiki/Installation:Debian and the
 *** release notes for details.

Setting up opennms-webapp-jetty (28.1.1-1) ...
Setting up opennms-source (28.1.1-1) ...
Setting up opennms (28.1.1-1) ...
Setting up liblwp-protocol-https-perl (6.10-1) ...
Setting up libwww-perl (6.52-1) ...
Setting up libxml-parser-perl:amd64 (2.46-2) ...
Setting up libxml-twig-perl (1:3.52-1) ...
Processing triggers for man-db (2.9.4-2) ...
Processing triggers for libc-bin (2.31-13) ...

La commande ci-dessus installera aussi automatiquement le paquet du serveur PostgreSQL. Tu peux le démarrer à l’aide de la commande suivante :

systemctl start postgresql

Ensuite, vérifie le statut de PostgreSQL à l’aide de la commande suivante :

systemctl status postgresql

Tu obtiendras la sortie suivante :,/p>

? postgresql.service - PostgreSQL RDBMS
     Loaded: loaded (/lib/systemd/system/postgresql.service; enabled; vendor preset: enabled)
     Active: active (exited) since Sun 2021-10-24 04:56:37 UTC; 1min 9s ago
   Main PID: 17627 (code=exited, status=0/SUCCESS)
      Tasks: 0 (limit: 4679)
     Memory: 0B
        CPU: 0
     CGroup: /system.slice/postgresql.service

Oct 24 04:56:37 debian11 systemd[1]: Starting PostgreSQL RDBMS...
Oct 24 04:56:37 debian11 systemd[1]: Finished PostgreSQL RDBMS.

Une fois que tu as terminé, tu peux passer à l’étape suivante.

Créer une base de données et un utilisateur pour OpenNMS

Ensuite, tu devras créer une base de données et un utilisateur pour OpenNMS. Tout d’abord, connecte-toi à PostgreSQL avec la commande suivante :

su - postgres

Une fois que tu es connecté, crée un utilisateur avec la commande suivante :

createuser opennms

Ensuite, définis un mot de passe pour l’utilisateur opennms avec la commande suivante :

psql -c "ALTER USER opennms WITH PASSWORD 'opennms';"

Ensuite, crée une base de données pour OpenNMS avec la commande suivante :

createdb -O opennms opennms

Ensuite, définis un mot de passe pour l’utilisateur Postgres avec la commande suivante: :

psql -c "ALTER USER postgres WITH PASSWORD 'securepassword';"

Ensuite, quitte le shell PostgreSQL à l’aide de la commande suivante :

exit

Une fois que tu as terminé, tu peux passer à l’étape suivante.

Configurer OpenNMS

Ensuite, tu devras modifier le fichier de source de données OpenNMS et définir les paramètres de ta base de données.

nano /usr/share/opennms/etc/opennms-datasources.xml

Modifie les lignes suivantes en fonction des paramètres de ta base de données :

<jdbc-data-source name="opennms"
                    database-name="opennms"
                    class-name="org.postgresql.Driver"
                    url="jdbc:postgresql://localhost:5432/opennms"
                    user-name="opennms"
                    password="opennms” />
<jdbc-data-source name="opennms-admin"
                    database-name="template1"
                    class-name="org.postgresql.Driver"
                    url="jdbc:postgresql://localhost:5432/template1"
                    user-name="postgres"
                    password="securepassword" />

Sauvegarde et ferme le fichier lorsque tu as terminé.

Initialise et démarre OpenNMS

Tout d’abord, tu dois intégrer OpenNMS à Java. Tu peux le faire en exécutant la commande suivante :

/usr/share/opennms/bin/runjava -s

Tu obtiendras la sortie suivante :

runjava: Looking for an appropriate JVM...
runjava: Checking for an appropriate JVM in JAVA_HOME...
runjava: Skipping... JAVA_HOME not set.
runjava: Checking JVM in the PATH: "/etc/alternatives/java"...
runjava: Did not find an appropriate JVM in the PATH: "/etc/alternatives/java"
runjava: Searching for a good JVM...
runjava: Found a good JVM in "/usr/lib/jvm/java-11-openjdk-amd64/bin/java".
runjava: Value of "/usr/lib/jvm/java-11-openjdk-amd64/bin/java" stored in configuration file.

Ensuite, initialise la base de données et détecte les bibliothèques système à l’aide de la commande suivante :

/usr/share/opennms/bin/install -dis

Tu obtiendras le résultat suivant :

Processing RemotePollerServiceConfigMigratorOffline: Remove deprecated RemotePoller service entry from service-configuration.xml, see NMS-12684
- Running pre-execution phase
  Creating backup of /usr/share/opennms/etc/service-configuration.xml
    Zipping /usr/share/opennms/etc/service-configuration.xml
- Running execution phase
  Current configuration: 32 services.
  A service entry named 'OpenNMS:Name=PerspectivePoller' already exists.
  Final configuration: 32 services.
- Saving the execution state
- Running post-execution phase
  Removing backup /usr/share/opennms/etc/service-configuration.xml.zip

Finished in 0 seconds
Upgrade completed successfully!

Enfin, démarre l’OpenNMS et active-le pour qu’il démarre au redémarrage du système :

systemctl start opennms
systemctl enable opennms

Tu peux aussi vérifier le statut de l’OpenNMS avec la commande suivante :

systemctl status opennms

Tu devrais voir la sortie suivante :

? opennms.service - OpenNMS server
     Loaded: loaded (/lib/systemd/system/opennms.service; disabled; vendor preset: enabled)
     Active: active (running) since Sun 2021-10-24 05:00:11 UTC; 3s ago
    Process: 22231 ExecStart=/usr/share/opennms/bin/opennms -s start (code=exited, status=0/SUCCESS)
   Main PID: 23326 (java)
      Tasks: 43 (limit: 4679)
     Memory: 212.8M
        CPU: 21.168s
     CGroup: /system.slice/opennms.service
             ??23325 bash /usr/share/opennms/bin/opennms -s start
             ??23326 /usr/lib/jvm/java-11-openjdk-amd64/bin/java --add-modules=java.base,java.compiler,java.datatransfer,java.desktop,java.ins>

Oct 24 05:00:13 debian11 opennms[23326]: [DEBUG] System property 'opennms.library.jicmp' set to '/usr/lib/jni/libjicmp.so.  Attempting to load>
Oct 24 05:00:13 debian11 opennms[23326]: [INFO] Successfully loaded jicmp library.
Oct 24 05:00:13 debian11 opennms[23326]: [DEBUG] System property 'opennms.library.jicmp' set to '/usr/lib/jni/libjicmp.so.  Attempting to load>
Oct 24 05:00:13 debian11 opennms[23326]: [INFO] Successfully loaded jicmp library.
Oct 24 05:00:13 debian11 opennms[23326]: [DEBUG] System property 'opennms.library.jicmp6' set to '/usr/lib/jni/libjicmp6.so.  Attempting to lo>
Oct 24 05:00:13 debian11 opennms[23326]: [INFO] Successfully loaded jicmp6 library.
Oct 24 05:00:13 debian11 opennms[23326]: [DEBUG] System property 'opennms.library.jicmp' set to '/usr/lib/jni/libjicmp.so.  Attempting to load>
Oct 24 05:00:13 debian11 opennms[23326]: [INFO] Successfully loaded jicmp library.
Oct 24 05:00:13 debian11 opennms[23326]: [DEBUG] System property 'opennms.library.jicmp6' set to '/usr/lib/jni/libjicmp6.so.  Attempting to lo>
Oct 24 05:00:13 debian11 opennms[23326]: [INFO] Successfully loaded jicmp6 library.

À ce stade, OpenNMS est démarré et écoute sur le port 8980. Tu peux le vérifier avec la commande suivante :

ss -antpl | grep 8980

Tu obtiendras la sortie suivante :

LISTEN 0      50                      *:8980             *:*    users:(("java",pid=23326,fd=815)) 

Accéder à l’interface Web d’OpenNMS

Maintenant, ouvre ton navigateur Web et accède à la console Web OpenNMS en utilisant l’URL http://your-server-ip:8980/opennms. Tu devrais voir la page de connexion d’OpenNMS :

Connexion à OpenNMS

Indique le nom d’utilisateur et le mot de passe par défaut admin/admin et clique sur le bouton Connexion. Tu devrais voir le tableau de bord d’OpenNMS sur la page suivante :

Tableau de bord OpenNMS

Maintenant, clique sur l’icône + pour ajouter le nouvel hôte. Tu devrais voir la page suivante :

Ajoute un nouveau nœud

Indique le nom de ta demande et clique sur le bouton OK. Tu devrais voir la page suivante :

Paramètres du nœud

Paramètres de l'appareil

Indique le nom, l’IP, le nom d’utilisateur, le mot de passe et la méthode d’accès de ton hôte distant et clique sur le bouton Provision. Une fois l’hôte ajouté, tu obtiendras l’écran suivant :

Le nœud a été ajouté avec succès

Clique sur le bouton Ok. Tu devrais voir ton hôte nouvellement ajouté sur l’écran suivant :

Surveillance du réseau OpenNMS

Conclusion

Félicitations ! Tu as réussi à installer et à configurer OpenNMS sur Debian 11. Tu peux maintenant ajouter d’autres hôtes à OpenNMS et commencer à les surveiller à partir de l’interface Web.

Vous aimerez aussi...