OpenNMS je bezplatný a open-source Open Network Management System napsaný v Javě. Jedná se o aplikaci pro monitorování sítě, která shromažďuje důležité informace od místních a síťových hostitelů pomocí protokolu SNMP. Lze jej nainstalovat na operační systémy Linux a Windows a poskytuje webové rozhraní pro sledování síťového provozu prostřednictvím webového prohlížeče. Nabízí bohatou sadu funkcí včetně poskytování, monitorování služeb, správy událostí, podpory grafů a měření výkonu.
V tomto příspěvku vám ukážeme, jak nainstalovat OpenNMS na Debian 11.
Předpoklady
- Server se systémem Debian 11.
- Na serveru je nakonfigurováno heslo uživatele root.
Instalovat požadované závislosti
Nejprve aktualizujte systémové balíčky na nejnovější verzi pomocí následujícího příkazu:
apt-get update -y
Jakmile budou všechny balíčky aktualizovány, budete také muset nainstalovat Java a další požadované závislosti na váš server. Všechny je můžete nainstalovat spuštěním následujícího příkazu:
apt-get install default-jdk gnupg2 curl wget -y
Jakmile jsou všechny balíčky nainstalovány, můžete ověřit verzi Java pomocí následujícího příkazu:
java -version
Verzi Java byste měli vidět v následujícím výstupu:
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)
Jakmile budete hotovi, můžete přejít k dalšímu kroku.
Přidat úložiště OpenNMS
Ve výchozím nastavení není balíček OpenNMS součástí výchozího úložiště Debian 11. Takže budete muset přidat úložiště OpenNMS do APT. Můžete jej přidat pomocí následujícího příkazu:
nano /etc/apt/sources.list.d/opennms.list
Přidejte následující řádky:
deb https://debian.opennms.org stable main deb-src https://debian.opennms.org stable main
Uložte a zavřete soubor a poté přidejte klíč GPG pomocí následujícího příkazu:
wget -O - https://debian.opennms.org/OPENNMS-GPG-KEY | apt-key add -
Po přidání úložiště a klíče aktualizujte mezipaměť úložiště pomocí následujícího příkazu:
apt-get update -y
Jakmile budete hotovi, můžete přejít k dalšímu kroku.
Instalovat OpenNMS na Debian 11
Nyní spusťte následující příkaz k instalaci balíčku OpenNMS do vašeho systému.
apt-get install opennms -y
Jakmile je OpenNMS nainstalováno, měli byste vidět následující výstup:
*** 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) ...
Výše uvedený příkaz také automaticky nainstaluje serverový balíček PostgreSQL. Můžete jej spustit pomocí následujícího příkazu:
systemctl start postgresql
Dále zkontrolujte stav PostgreSQL pomocí následujícího příkazu:
systemctl status postgresql
Získáte následující výstup:,/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.
Jakmile budete hotovi, můžete přejít k dalšímu kroku.
Vytvoření databáze a uživatele pro OpenNMS
Dále budete muset vytvořit databázi a uživatele pro OpenNMS. Nejprve se přihlaste do PostgreSQL pomocí následujícího příkazu:
su - postgres
Jakmile se přihlásíte, vytvořte uživatele pomocí následujícího příkazu:
createuser opennms
Dále nastavte heslo pro uživatele opennms pomocí následujícího příkazu:
psql -c "ALTER USER opennms WITH PASSWORD 'opennms';"
Dále vytvořte databázi pro OpenNMS pomocí následujícího příkazu:
createdb -O opennms opennms
Dále nastavte heslo pro uživatele Postgres pomocí následujícího příkazu:
psql -c "ALTER USER postgres WITH PASSWORD 'securepassword';"
Dále ukončete prostředí PostgreSQL pomocí následujícího příkazu:
exit
Jakmile budete hotovi, můžete přejít k dalšímu kroku.
Nakonfigurujte OpenNMS
Dále budete muset upravit soubor zdroje dat OpenNMS a definovat nastavení databáze.
nano /usr/share/opennms/etc/opennms-datasources.xml
Změňte následující řádky podle nastavení databáze:
<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" />
Po dokončení uložte a zavřete soubor.
Inicializace a spuštění OpenNMS
Nejprve budete muset integrovat OpenNMS s Javou. Můžete to udělat spuštěním následujícího příkazu:
/usr/share/opennms/bin/runjava -s
Získáte následující výstup:
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.
Dále inicializujte databázi a zjistěte systémové knihovny pomocí následujícího příkazu:
/usr/share/opennms/bin/install -dis
Získáte následující výstup:
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!
Nakonec spusťte OpenNMS a povolte jeho spuštění při restartu systému:
systemctl start opennms
systemctl enable opennms
Stav OpenNMS můžete také ověřit pomocí následujícího příkazu:
systemctl status opennms
Měli byste vidět následující výstup:
? 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.
V tomto okamžiku se OpenNMS spustí a naslouchá na portu 8980. Můžete to zkontrolovat pomocí následujícího příkazu:
ss -antpl | grep 8980
Získáte následující výstup:
LISTEN 0 50 *:8980 *:* users:(("java",pid=23326,fd=815))
Přístup k webovému rozhraní OpenNMS
Nyní otevřete webový prohlížeč a otevřete webovou konzoli OpenNMS pomocí adresy URL http://ip-ip-vašeho-serveru:8980/opennms . Měli byste vidět přihlašovací stránku OpenNMS:
Zadejte výchozí uživatelské jméno a heslo správce jako admin/admin a klikněte na Přihlásit knoflík. Na následující stránce byste měli vidět řídicí panel OpenNMS:
Nyní klikněte na + ikonu pro přidání nového hostitele. Měli byste vidět následující stránku:
Zadejte název své žádanky a klikněte na OK . Měli byste vidět následující stránku:
Zadejte jméno vzdáleného hostitele, IP, uživatelské jméno, heslo, metodu přístupu a klikněte na Provision knoflík. Po přidání hostitele se zobrazí následující obrazovka:
Klikněte na OK knoflík. Na následující obrazovce byste měli vidět svého nově přidaného hostitele:
Závěr
Gratulujeme! úspěšně jste nainstalovali a nakonfigurovali OpenNMS na Debianu 11. Nyní můžete do OpenNMS přidat další hostitele a začít je monitorovat z webového rozhraní.