OpenNMS Netwerk Monitoring Oplossing installeren op Debian 11

OpenNMS is een gratis en open-source Open Netwerk Management Systeem geschreven in Java. Het is een netwerkbewakingsprogramma dat kritieke informatie verzamelt van lokale en netwerk hosts met behulp van het SNMP protocol. Het kan op Linux en Windows besturingssystemen geïnstalleerd worden en biedt een web-gebaseerde interface om het netwerkverkeer via een web browser te volgen. Het biedt een rijke reeks mogelijkheden, waaronder, Provisioning, Service Monitoring, Event Management, Charting ondersteuning en Prestatiemeting.

In dit artikel laten we je zien hoe je OpenNMS op Debian 11 kunt installeren.

Vereisten

  • Een server waarop Debian 11 draait.
  • Een root wachtwoord is op de server ingesteld.

Installeer de vereiste afhankelijkheden

Werk eerst je systeempakketten bij naar de laatste versie met het volgende commando:

apt-get update -y

Als alle pakketten zijn bijgewerkt, moet je ook Java en andere vereiste afhankelijkheden op je server installeren. Je kunt ze allemaal installeren door het volgende commando uit te voeren:

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

Als alle pakketten geïnstalleerd zijn, kun je de Java versie verifiëren met het volgende commando:

java -version

Je zou de Java versie moeten zien in de volgende uitvoer:

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)

Als je klaar bent, kun je verder gaan met de volgende stap.

OpenNMS Repository toevoegen

Standaard zit het OpenNMS pakket niet in de standaard repository van Debian 11. Je zult dus de OpenNMS repository aan de APT moeten toevoegen. Je kunt het toevoegen met het volgende commando:

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

Voeg de volgende regels toe:

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

Bewaar en sluit het bestand en voeg dan de GPG sleutel toe met het volgende commando:

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

Als de repository en sleutel zijn toegevoegd, werk dan de repository cache bij met het volgende commando:

apt-get update -y

Als je klaar bent, kun je verder gaan met de volgende stap.

Installeer OpenNMS op Debian 11

Voer nu het volgende commando uit om het OpenNMS pakket op je systeem te installeren.

apt-get install opennms -y

Zodra OpenNMS geïnstalleerd is, zou je de volgende uitvoer moeten zien:

 *** 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) ...

Het bovenstaande commando installeert automatisch ook het PostgreSQL server pakket. Je kunt het starten met het volgende commando:

systemctl start postgresql

Controleer vervolgens de status van de PostgreSQL met het volgende commando:

systemctl status postgresql

Je krijgt de volgende uitvoer:,/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.

Als je klaar bent, kun je verder gaan met de volgende stap.

Maak een Database en Gebruiker voor OpenNMS

Vervolgens moet je een database en gebruiker voor OpenNMS aanmaken. Log eerst in op PostgreSQL met het volgende commando:

su - postgres

Zodra je ingelogd bent, maak je een gebruiker aan met het volgende commando:

createuser opennms

Stel vervolgens een wachtwoord in voor de opennms gebruiker met het volgende commando:

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

Maak vervolgens een database voor OpenNMS met het volgende commando:

createdb -O opennms opennms

Stel vervolgens een wachtwoord in voor de Postgres gebruiker met het volgende commando:

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

Verlaat vervolgens de PostgreSQL shell met het volgende commando:

exit

Als je klaar bent, kun je verder gaan met de volgende stap.

Configureer OpenNMS

Vervolgens moet je het OpenNMS gegevensbron bestand bewerken en je database instellingen bepalen.

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

Verander de volgende regels volgens je database instellingen:

<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" />

Sla het bestand op en sluit het als je klaar bent.

Initialiseer en start OpenNMS

Eerst moet je OpenNMS met Java integreren. Je kunt dat doen door het volgende commando uit te voeren:

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

Je krijgt de volgende uitvoer:

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.

Initialiseer vervolgens de database en detecteer systeembibliotheken met het volgende commando:

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

Je krijgt de volgende uitvoer:

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!

Start tenslotte OpenNMS en schakel het in om te starten bij herstarten van het systeem:

systemctl start opennms
systemctl enable opennms

Je kunt ook de status van het OpenNMS controleren met het volgende commando:

systemctl status opennms

Je zou de volgende uitvoer moeten zien:

? 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.

Op dit moment is OpenNMS gestart en luistert het op poort 8980. Je kunt dit controleren met het volgende commando:

ss -antpl | grep 8980

Je krijgt de volgende uitvoer:

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

OpenNMS Web Interface openen

Open nu je web browser en ga naar de OpenNMS web console met de URL http://your-server-ip:8980/opennms. Je zou de OpenNMS login pagina moeten zien:

OpenNMS Inloggen

Geef de standaard admin gebruikersnaam en wachtwoord op als admin/admin en klik op de knop Login. Je zou het OpenNMS dashboard moeten zien op de volgende pagina:

OpenNMS dashboard

Klik nu op het + icoon om de nieuwe host toe te voegen. Je zou de volgende pagina moeten zien:

Nieuw knooppunt toevoegen

Geef de naam van je vordering op en klik op de OK. Je zou de volgende pagina moeten zien:

Instellingen voor knooppunten

Apparaatinstellingen

Geef de naam, IP, gebruikersnaam, wachtwoord, toegangsmethode van je remote host op en klik op de Provision knop. Zodra de host is toegevoegd, krijg je het volgende scherm:

Node succesvol toegevoegd

Klik op de Ok knop. Je zou je nieuw toegevoegde host moeten zien op het volgende scherm:

OpenNMS Netwerk Monitoring

Conclusie

Gefeliciteerd! Je hebt OpenNMS met succes geïnstalleerd en ingesteld op Debian 11. Je kunt nu meer hosts aan OpenNMS toevoegen en ze beginnen te bewaken vanaf de web-gebaseerde interface.