Wie man die OpenNMS-Netzwerküberwachungslösung auf Ubuntu 20.04 LTS einrichtet

OpenNMS ist ein kostenloses, quelloffenes Netzwerkmanagementsystem der Enterprise-Klasse, das zur Überwachung einer unbegrenzten Anzahl von Geräten von einem zentralen Standort aus eingesetzt wird. Es funktioniert, indem es alle Geräte im Netzwerk erkennt und die Dienste automatisch überwacht. Es basiert auf Java und wurde entwickelt, um kritische Dienste auf entfernten Rechnern mit Hilfe von SNMP und JMX zu überwachen. Es kann auf allen wichtigen Betriebssystemen einschließlich Windows, Linux/Unix, Mac und Solaris installiert werden. Es bietet eine reichhaltige Palette von Funktionen, einschließlich Bereitstellung, Dienstüberwachung, Ereignisverwaltung, Charting-Unterstützung und Leistungsmessung.

Zurzeit ist OpenNMS in den zwei Editionen Horizon und Meridian verfügbar. Horizon ist für die Überwachung und Verwaltung von IT-Umgebungen konzipiert, während Meridian für Unternehmen gedacht ist, die Stabilität und langfristigen Support suchen.

In diesem Tutorial werden wir erklären, wie man OpenNMS mit Docker unter Ubuntu 20.04 installiert.

Voraussetzungen

  • Ein Server, auf dem Ubuntu 20.04 läuft.
  • Ein Root-Passwort ist auf Ihrem Server eingerichtet.

Erste Schritte

Bevor Sie beginnen, ist es immer eine gute Idee, Ihre Systempakete auf die neueste Version zu aktualisieren. Sie können sie mit folgendem Befehl aktualisieren:

apt-get update -y
apt-get upgrade -y

Nachdem Sie alle Pakete aktualisiert haben, installieren Sie weitere erforderliche Abhängigkeiten mit dem folgenden Befehl:

apt-get install apt-transport-https ca-certificates curl gnupg-agent software-properties-common -y

Sobald alle Abhängigkeiten installiert sind, können Sie mit dem nächsten Schritt fortfahren.

Docker installieren und Docker komponieren

Standardmäßig ist die neueste Version von Docker nicht im Standard-Repository von Ubuntu 20.04 verfügbar. Es wird daher empfohlen, den Docker aus dem offiziellen Repository von Docker zu installieren.

Laden Sie zunächst den GPT-Schlüssel herunter und fügen Sie ihn mit dem folgenden Befehl hinzu:

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | apt-key add -

Fügen Sie anschließend das Docker-Repository mit dem folgenden Befehl zu Ihrem System hinzu:

add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"

Sobald das Repository hinzugefügt ist, installieren Sie den Docker und Docker compose, indem Sie den folgenden Befehl ausführen:

apt-get install docker-ce docker-ce-cli containerd.io docker-compose -y

Wenn beide installiert sind, überprüfen Sie den Status des Dockers mit dem folgenden Befehl:

systemctl status docker

Sie sollten die folgende Ausgabe erhalten:

? docker.service - Docker Application Container Engine
     Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)
     Active: active (running) since Sat 2020-07-04 04:43:52 UTC; 19s ago
TriggeredBy: ? docker.socket
       Docs: https://docs.docker.com
   Main PID: 38468 (dockerd)
      Tasks: 10
     Memory: 36.3M
     CGroup: /system.slice/docker.service
             ??38468 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock

Um die Docker-Version zu überprüfen, führen Sie den folgenden Befehl aus:

docker -v

Sie sollten die folgende Ausgabe sehen:

Docker version 19.03.12, build 48a66213fe

Um die Docker-Compose-Version zu überprüfen, führen Sie den folgenden Befehl aus:

docker-compose -v

Sie sollten die folgende Ausgabe sehen:

docker-compose version 1.25.0, build unknown

OpenNMS installieren

Als nächstes erstellen Sie ein Projektverzeichnis für OpenNMS mit dem folgenden Befehl:

mkdir opennms

Als nächstes ändern Sie das Verzeichnis in opennms und erstellen eine neue Datei docker-compose.yml, um OpenNMS zu installieren.

cd opennms
nano docker-compose.yml

Fügen Sie die folgenden Zeilen hinzu:

version: '3'

volumes:
  data-postgres: {}
  data-opennms: {}

services:
  database:
    image: postgres:12
    container_name: database
    environment:
      - TZ=Europe/Berlin
      - POSTGRES_USER=postgres
      - POSTGRES_PASSWORD=postgres
    volumes:
      - data-postgres:/var/lib/postgresql/data
    healthcheck:
      test: [ "CMD-SHELL", "pg_isready -U postgres" ]
      interval: 10s
      timeout: 30s
      retries: 3

  horizon:
    image: opennms/horizon:26.1.1
    container_name: horizon
    environment:
      - TZ=Europe/Berlin
      - POSTGRES_HOST=database
      - POSTGRES_PORT=5432
      - POSTGRES_USER=postgres
      - POSTGRES_PASSWORD=postgres
      - OPENNMS_DBNAME=opennms
      - OPENNMS_DBUSER=opennms
      - OPENNMS_DBPASS=opennms
    volumes:
      - data-opennms:/opt/opennms/share/rrd
      - ./overlay:/opt/opennms-overlay
    command: ["-s"]
    ports:
      - "8980:8980/tcp"
      - "8101:8101/tcp"
      - "61616:61616/tcp"
    healthcheck:
      test: [ "CMD", "curl", "-f", "-I", "http://localhost:8980/opennms/login.jsp" ]
      interval: 1m
      timeout: 5s
      retries: 3

Speichern und schließen Sie die Datei, wenn Sie fertig sind. Dann laden Sie den Container für OpenNMS herunter und erstellen ihn mit dem folgenden Befehl:

docker-compose up -d

Sobald der OpenNMS-Container heruntergeladen ist, können Sie den laufenden Container mit dem folgenden Befehl überprüfen:

docker ps -a

Sie sollten die folgende Ausgabe sehen:

CONTAINER ID        IMAGE                    COMMAND                  CREATED             STATUS                            PORTS                                                                                           NAMES
1537b3a43c92        postgres:12              "docker-entrypoint.s…"   9 seconds ago       Up 6 seconds (health: starting)   5432/tcp                                                                                        database
7e00f3877d13        opennms/horizon:26.1.1   "/entrypoint.sh -s"      9 seconds ago       Up 6 seconds (health: starting)   0.0.0.0:8101->8101/tcp, 1162/udp, 0.0.0.0:8980->8980/tcp, 10514/udp, 0.0.0.0:61616->61616/tcp   horizon

Zugriff auf die OpenNMS-Webschnittstelle

Zu diesem Zeitpunkt läuft und lauscht OpenNMS auf Port 8980. Sie können über die URL http://your-server-ip:8980 darauf zugreifen. Sie werden zur OpenNMS-Anmeldeseite umgeleitet, wie unten dargestellt:

OpenNMS-Web-Schnittstelle

Geben Sie den Standard-Benutzernamen und das Passwort als admin/admin ein und klicken Sie auf die Schaltfläche Login. Auf dem folgenden Bildschirm sollten Sie das OpenNMS-Dashboard sehen:

OpenNMS-Dashboard

Klicken Sie jetzt auf das +-Symbol im rechten Fensterbereich, um einen neuen Serverknoten zur Überwachung hinzuzufügen. Sie sollten den folgenden Bildschirm sehen:

Knoten zu OpenNMS hinzufügen

Geben Sie einen Namen an und klicken Sie auf die Schaltfläche OK. Sie sollten den folgenden Bildschirm sehen:

Knoten-Attribute

Knoten-Authentifizierungseinstellungen

Geben Sie nun die IP-Adresse des Servers an, den Sie überwachen möchten, den Community-String, den Benutzernamen und das Passwort des Servers, die Zugriffsmethode und klicken Sie auf die Schaltfläche Bereitstellung. Sobald die Bereitstellung erfolgreich ist, sollten Sie den folgenden Bildschirm sehen:

Erfolgreiche Bereitstellung eines Knotens

Klicken Sie auf die Schaltfläche OK, um fortzufahren, und gehen Sie dann zu Info => Knoten. Sie sollten den Status des Knotens client1, die Benachrichtigung und die Ereignisse auf dem folgenden Bildschirm sehen:

OpenNMS-Server-Überwachung

Schlussfolgerung

Herzlichen Glückwunsch! Sie haben OpenNMS erfolgreich auf dem Ubuntu 20.04 Server installiert. Sie können nun weitere Geräte zu OpenNMS hinzufügen und die Überwachung über den Webbrowser starten. Zögern Sie nicht, mich zu fragen, wenn Sie Fragen haben.

Das könnte dich auch interessieren …