Netzwerküberwachung · 7 min read · Dec 07, 2025

So installieren Sie das OpenNMS Horizon Netzwerküberwachungssystem auf Debian 11

OpenNMS ist eine kostenlose, Open-Source- und eine der leistungsstärksten Plattformen zur Netzwerküberwachung und -verwaltung, die zur Überwachung von Remote-Geräten von einem zentralen Standort aus verwendet wird. Es unterstützt viele Funktionen, darunter Bereitstellung, Überwachung von Diensten, Ereignisverwaltung, Diagrammunterstützung und mehr. OpenNMS verwendet SNMP und JMX und sammelt Informationen von entfernten Systemen. Es läuft auf Linux- und Windows-Betriebssystemen und bietet eine webbasierte Schnittstelle zur einfachen Überwachung.

In diesem Tutorial zeige ich Ihnen, wie Sie OpenNMS auf Debian 11 installieren.

Voraussetzungen

  • Ein Server, der Debian 11 ausführt.
  • Ein gültiger Domainname, der auf Ihre Server-IP verweist.
  • Ein Root-Passwort, das auf dem Server konfiguriert ist.

Java auf Debian 11 installieren

OpenNMS ist eine Java-basierte Anwendung. Daher muss Java auf Ihrem Server installiert sein. Wenn es nicht installiert ist, können Sie es mit dem folgenden Befehl installieren:

apt-get install default-jdk -y

Sobald Java installiert ist, überprüfen Sie die Java-Version mit dem folgenden Befehl:

java --version

Sie erhalten die Java-Version in der folgenden Ausgabe:

openjdk 11.0.13 2021-10-19
OpenJDK Runtime Environment (build 11.0.13+8-post-Debian-1deb11u1)
OpenJDK 64-Bit Server VM (build 11.0.13+8-post-Debian-1deb11u1, mixed mode, sharing)

OpenNMS auf Debian 11 installieren

Standardmäßig ist OpenNMS nicht im Hauptrepository von Debian 11 enthalten. Daher müssen Sie das offizielle OpenNMS-Repository zu APT hinzufügen.

Zuerst installieren Sie alle erforderlichen Abhängigkeiten mit dem folgenden Befehl:

apt-get install curl gnupg2 wget -y

Sobald alle Pakete installiert sind, erstellen Sie eine OpenNMS-Repository-Datei mit dem folgenden Befehl:

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

Fügen Sie die folgenden Zeilen hinzu:

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

Speichern Sie die Datei und schließen Sie sie, und importieren Sie dann den GPG-Schlüssel mit dem folgenden Befehl:

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

Sie erhalten die folgende Ausgabe:

Connecting to debian.opennms.org (debian.opennms.org)|3.214.84.83|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 1335 (1.3K)
Saving to: ‘STDOUT’

-                                   100%[=================================================================>]   1.30K  --.-KB/s    in 0s      

2021-11-28 07:58:07 (16.0 MB/s) - written to stdout [1335/1335]

OK

Als Nächstes aktualisieren Sie den Repository-Cache und installieren Sie OpenNMS mit dem folgenden Befehl:

apt-get update -y  
apt-get install opennms -y

Sie erhalten während der Installation den folgenden Fehler:

Failed to install iplike into the template1 or opennms databases. See /tmp/install_iplike.log for details. To skip this step and install manually, set the         
environment variable SKIP_IPLIKE_INSTALL before installing this package. To install iplike into your database, use the /usr/sbin/install_iplike.sh script.  See    
`install_iplike.sh -h` for more details.

Um diesen Fehler zu beheben, müssen Sie eine Datenbank und einen Benutzer für OpenNMS in PostgreSQL erstellen.

Erstellen einer Datenbank in PostgreSQL

Der PostgreSQL-Server wird automatisch während des Installationsprozesses von OpenNMS installiert.

Zuerst starten Sie den PostgreSQL-Dienst mit dem folgenden Befehl:

systemctl start postgresql

Als Nächstes verbinden Sie sich mit der PostgreSQL-Instanz mit dem folgenden Befehl:

su - postgres

Sobald Sie verbunden sind, erstellen Sie einen Benutzer für OpenNMS und setzen ein Passwort mit dem folgenden Befehl:

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

Als Nächstes erstellen Sie eine Datenbank für OpenNMS und setzen ein Passwort für den PostgreSQL-Benutzer:

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

Als Nächstes verlassen Sie die PostgreSQL-Shell mit dem folgenden Befehl:

exit

Sobald Sie fertig sind, können Sie mit dem nächsten Schritt fortfahren.

OpenNMS konfigurieren

Als Nächstes müssen Sie die OpenNMS-Datenquellen-Datei bearbeiten und Ihre Datenbankanmeldeinformationen definieren:

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

Definieren Sie Ihre Datenbankanmeldeinformationen wie unten gezeigt:

  

  

Speichern Sie die Datei und schließen Sie sie, wenn Sie fertig sind, und führen Sie dann den folgenden Befehl aus, um die Java-Umgebung zu erkennen:

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

Sie erhalten die folgende Ausgabe:

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.

Als Nächstes führen Sie den folgenden Befehl aus, um die OpenNMS-Installation abzuschließen:

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

Sie erhalten die folgende Ausgabe:

Finished in 0 seconds

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!

OpenNMS-Dienst starten

Nachdem Sie OpenNMS eingerichtet haben, starten Sie den OpenNMS-Dienst und aktivieren Sie ihn, damit er beim Systemneustart gestartet wird, mit dem folgenden Befehl:

systemctl start opennms  
systemctl enable opennms

Sie können den Status von OpenNMS mit dem folgenden Befehl überprüfen:

systemctl status opennms

Sie erhalten die folgende Ausgabe:

? opennms.service - OpenNMS server
     Loaded: loaded (/lib/systemd/system/opennms.service; disabled; vendor preset: enabled)
     Active: active (running) since Sun 2021-11-28 08:10:51 UTC; 16s ago
    Process: 22990 ExecStart=/usr/share/opennms/bin/opennms -s start (code=exited, status=0/SUCCESS)
   Main PID: 24106 (java)
      Tasks: 68 (limit: 4679)
     Memory: 559.2M
        CPU: 48.083s
     CGroup: /system.slice/opennms.service
             ??24105 bash /usr/share/opennms/bin/opennms -s start
             ??24106 /usr/lib/jvm/java-11-openjdk-amd64/bin/java --add-modules=java.base,java.compiler,java.datatransfer,java.desktop,java.in>

Nov 28 08:11:02 debian11 opennms[24106]: [DEBUG] System property 'opennms.library.jicmp' set to '/usr/lib/jni/libjicmp.so.  Attempting to loa>
Nov 28 08:11:02 debian11 opennms[24106]: [INFO] Successfully loaded jicmp library.
Nov 28 08:11:02 debian11 opennms[24106]: [DEBUG] System property 'opennms.library.jicmp6' set to '/usr/lib/jni/libjicmp6.so.  Attempting to l>
Nov 28 08:11:02 debian11 opennms[24106]: [INFO] Successfully loaded jicmp6 library.
Nov 28 08:11:02 debian11 opennms[24106]: [DEBUG] System property 'opennms.library.jicmp' set to '/usr/lib/jni/libjicmp.so.  Attempting to loa>
Nov 28 08:11:02 debian11 opennms[24106]: [INFO] Successfully loaded jicmp library.
Nov 28 08:11:02 debian11 opennms[24106]: [DEBUG] System property 'opennms.library.jicmp6' set to '/usr/lib/jni/libjicmp6.so.  Attempting to l>
Nov 28 08:11:02 debian11 opennms[24106]: [INFO] Successfully loaded jicmp6 library.
Nov 28 08:11:07 debian11 opennms[24106]: Nov 28, 2021 8:11:07 AM org.hibernate.validator.internal.util.Version 
Nov 28 08:11:07 debian11 opennms[24106]: INFO: HV000001: Hibernate Validator 4.3.2.Final

An diesem Punkt ist OpenNMS gestartet und hört auf Port 8980. Sie können dies mit dem folgenden Befehl überprüfen:

ss -antpl | grep 8980

Sie erhalten die folgende Ausgabe:

LISTEN 0      50                      *:8980             *:*    users:(("java",pid=24106,fd=1046))     

Nginx als Reverse-Proxy für OpenNMS konfigurieren

Als Nächstes wird empfohlen, Nginx als Reverse-Proxy für OpenNMS zu installieren und zu konfigurieren. Zuerst installieren Sie den Nginx-Server mit dem folgenden Befehl:

apt-get install nginx -y

Sobald Nginx installiert ist, erstellen Sie eine Nginx-virtuelle Host-Konfigurationsdatei:

nano /etc/nginx/conf.d/opennms.conf

Fügen Sie die folgende Konfiguration hinzu:

server {
  listen 80;
  server_name opennms.example.com;
    access_log /var/log/nginx/opennms.access.log;
    error_log /var/log/nginx/opennms.error.log;

  location /

  {
    proxy_set_header Host $http_host;
    proxy_set_header X-Forwarded-Host $host;
    proxy_set_header X-Forwarded-Server $host;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-OpenNMS-Server-URL https://nms.hacc.edu/;
    proxy_pass http://server-ip:8980;

  }
}

Speichern Sie die Datei und schließen Sie sie, und überprüfen Sie dann Nginx auf Syntaxfehler in der Konfiguration:

ginx -t

Sie erhalten die folgende Ausgabe:

ginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

Als Nächstes starten Sie den Nginx-Dienst neu, um die Änderungen anzuwenden:

systemctl restart nginx

Um den Status von Nginx zu überprüfen, führen Sie den folgenden Befehl aus:

systemctl status nginx

Sie sollten die folgende Ausgabe sehen:

? nginx.service - Ein leistungsstarker Webserver und ein Reverse-Proxy-Server
     Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled)
     Active: active (running) since Sun 2021-11-28 08:17:14 UTC; 6s ago
       Docs: man:nginx(8)
    Process: 25964 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on; master_process on; (code=exited, status=0/SUCCESS)
    Process: 25965 ExecStart=/usr/sbin/nginx -g daemon on; master_process on; (code=exited, status=0/SUCCESS)
   Main PID: 25967 (nginx)
      Tasks: 3 (limit: 4679)
     Memory: 3.2M
        CPU: 53ms
     CGroup: /system.slice/nginx.service
             ??25967 nginx: master process /usr/sbin/nginx -g daemon on; master_process on;
             ??25968 nginx: worker process
             ??25969 nginx: worker process

Nov 28 08:17:14 debian11 systemd[1]: Starting A high performance web server and a reverse proxy server...
Nov 28 08:17:14 debian11 systemd[1]: Started A high performance web server and a reverse proxy server.

Zugriff auf das OpenNMS-Dashboard

Öffnen Sie jetzt Ihren Webbrowser und greifen Sie über die URL http://opennms.example.com auf die OpenNMS-Weboberfläche zu. Sie sollten die Anmeldeseite von OpenNMS sehen:

OpenNMS Horizon

Geben Sie den Standardbenutzernamen und das Standardpasswort als admin ein und klicken Sie auf die Schaltfläche Anmelden. Sie sollten das OpenNMS-Dashboard auf dem folgenden Bildschirm sehen:

Horizon Dashboard

Klicken Sie nun auf admin > Passwort ändern, um das Standard-Admin-Passwort wie unten gezeigt zu ändern:

Passwort ändern

Ändern Sie Ihr Standardpasswort und klicken Sie auf die Schaltfläche Absenden. Sie sollten den folgenden Bildschirm sehen:

Passwort geändert

Fazit

Herzlichen Glückwunsch! Sie haben OpenNMS erfolgreich mit Nginx als Reverse-Proxy auf dem Debian 11-Server installiert. Sie können jetzt die Remote-Geräte zu OpenNMS hinzufügen und mit der Überwachung über den Webbrowser beginnen. Zögern Sie nicht, mich zu fragen, wenn Sie Fragen haben.

Share: X/Twitter LinkedIn

Erhalte neue Beiträge in deinem Posteingang.

Kein Spam. Jederzeit abmelden.