OpenNMS je bezplatná a open source platforma pro monitorování a správu sítě na podnikové úrovni, která poskytuje informace, které nám umožňují činit rozhodnutí ohledně budoucího plánování sítě a kapacity.
OpenNMS navržený pro správu desítek tisíc zařízení z jednoho serveru a také pro správu neomezeného počtu zařízení pomocí clusteru serverů. Obsahuje vyhledávací modul pro automatickou konfiguraci a správu síťových zařízení bez zásahu operátora. Je napsán v Javě a je publikován pod GNU General Public License. OpenNMS je známý svou škálovatelností s hlavními funkčními oblastmi v monitorování služeb, sběr dat pomocí SNMP a správa událostí a upozornění.
V tomto tutoriálu se naučíme, jak instalovat OpenNMS na CentOS 7 systém.
Instalace OpenNMS RPM Repository
Začneme instalací OpenNMS RPM pro náš operační systém CentOs 7.1. Je k dispozici pro většinu distribucí založených na RPM prostřednictvím OpenNMS Yum Repository.

Poté otevřete rozhraní příkazového řádku CentOS 7.1 a přihlaste se pomocí přihlašovacích údajů root, abyste spustili níže uvedený příkaz pomocí „wget“, abyste získali požadované otáčky za minutu.
# wget http://yum.opennms.org/repofiles/opennms-repo-stable-rhel7.noarch.rpm

Nyní musíme nainstalovat toto úložiště, aby byly informace o balíčku OpenNMS dostupné prostřednictvím yum pro instalaci. Spusťte níže uvedený příkaz se stejnými přihlašovacími údaji na kořenové úrovni.
# rpm -Uvh opennms-repo-stable-rhel7.noarch.rpm

Instalace nezbytných balíčků pro OpenNMS
Než začneme s instalací OpenNMS, ujistěte se, že jste splnili následující předpoklady.
Nainstalujte JDK 7
Doporučujeme, abyste si nainstalovali nejnovější stabilní Java 7 JDK od společnosti Oracle pro nejlepší výkon integrace JDK do našeho úložiště YUM jako záložní řešení. Pojďme na stránku stahování Oracle Java 7 SE JDK, přijměte licenci, pokud souhlasíte, vyberte platformu a architekturu. Po dokončení stahování jej spusťte z příkazového řádku a poté nainstalujte výsledný JDK rpm.
Jinak spusťte níže uvedený příkaz a nainstalujte jej pomocí Yum z dostupných systémových úložišť.
# yum install java-1.7.0-openjdk-1.7.0.85-2.6.1.2.el7_1
Jakmile nainstalujete Javu, můžete potvrdit její instalaci pomocí níže uvedeného příkazu a zkontrolovat její nainstalovanou verzi.
# java -version

Nainstalujte PostgreSQL
Nyní nainstalujeme PostgreSQL, který je nezbytným požadavkem pro nastavení databáze pro OpenNMS. PostgreSQL je součástí všech hlavních distribucí založených na YUM. Pro instalaci jednoduše spusťte níže uvedený příkaz.
# yum install postgresql postgresql-server

Připravte databázi pro OpenNMS
Jakmile nainstalujete PostgreSQL, nyní se musíte ujistit, že PostgreSQL je aktivní a aktivní. Spusťte níže uvedený příkaz, který nejprve inicializuje databázi a poté spustí její služby.
# /sbin/service postgresql initdb
# /sbin/service postgresql start

Nyní pro potvrzení stavu vaší PostgreSQL databáze můžete spustit níže uvedený příkaz.
# service postgresql status

Chcete-li zajistit, že se PostgreSQL spustí po restartu, použijte příkaz „systemctl“ k povolení spuštění při spuštění pomocí níže uvedeného příkazu.
# systemctl enable postgresql
ln -s '/usr/lib/systemd/system/postgresql.service' '/etc/systemd/system/multi-user.target.wants/postgresql.service'
Konfigurace PostgreSQL
Vyhledejte adresář Postgres „data“. Často se nachází v adresáři /var/lib/pgsql/data a otevřete soubor postgresql.conf v textovém editoru a nakonfigurujte následující parametry podle obrázku.
# vim /var/lib/pgsql/data/postgresql.conf
#------------------------------------------------------------------------------
# CONNECTIONS AND AUTHENTICATION
#------------------------------------------------------------------------------
listen_addresses = 'localhost'
max_connections = 256
#------------------------------------------------------------------------------
# RESOURCE USAGE (except WAL)
#------------------------------------------------------------------------------
shared_buffers = 1024MB
Přístup uživatele k databázi
PostgreSQL vám umožňuje připojit se pouze v případě, že jste přihlášeni k místnímu názvu účtu, který odpovídá uživateli PostgreSQL. Vzhledem k tomu, že OpenNMS běží jako root, nemůže se ve výchozím nastavení připojit jako uživatel „postgres“ nebo „opennms“, takže musíme změnit konfiguraci a umožnit uživateli přístup k databázi otevřením níže uvedeného konfiguračního souboru.
# vim /var/lib/pgsql/data/pg_hba.conf
Aktualizujte konfigurační soubor, jak je uvedeno níže, a změňte nastavení METODY z "ident" na "trust"

Zapište a ukončete soubor, abyste provedli uložené změny, a poté restartujte služby PostgreSQL.
# service postgresql restart
Spuštění instalace OpenNMS
Nyní jsme připraveni začít s instalací OpenNMS, jak jsme s jeho předpoklady téměř nezvládli. Použití balíčkovacího systému YUM stáhne a nainstaluje všechny požadované součásti a jejich závislosti, pokud ještě nejsou nainstalovány ve vašem systému.
Spusťte tedy příkaz belwo pro spuštění instalace OpenNMS, která stáhne vše, co potřebujete k fungujícímu OpenNMS, včetně jádra OpenNMS, webového uživatelského rozhraní a sady běžných pluginů.
# yum -y install opennms

Výše uvedený příkaz skončí úspěšnou instalací OpenNMS a jeho odvozených balíčků.
Nakonfigurujte JAVA pro OpenNMS
Abychom integrovali výchozí verzi Javy s OpenNMS, spustíme níže uvedený příkaz.
# /opt/opennms/bin/runjava -s

Spusťte instalační program OpenNMS
Nyní je čas spustit instalátor OpenNMS, který vytvoří a nakonfiguruje databázi OpenNMS, přičemž stejný příkaz použijeme v případě, že ji budeme chtít aktualizovat na nejnovější verzi. Za tímto účelem spustíme následující příkaz.
# /opt/opennms/bin/install -dis
Výše uvedený instalační příkaz bude mít mnoho možností s následujícím mechanismem.
-d - pro aktualizaci databáze
-i - vloží všechna výchozí data, která patří do databáze
-s - k vytvoření nebo aktualizaci uložených procedur, které OpenNMS používá pro určité druhy přístupu k datům
==============================================================================
OpenNMS Installer
==============================================================================
Configures PostgreSQL tables, users, and other miscellaneous settings.
DEBUG: Platform is IPv6 ready: true
- searching for libjicmp.so:
- trying to load /usr/lib64/libjicmp.so: OK
- searching for libjicmp6.so:
- trying to load /usr/lib64/libjicmp6.so: OK
- searching for libjrrd.so:
- trying to load /usr/lib64/libjrrd.so: OK
- using SQL directory... /opt/opennms/etc
- using create.sql... /opt/opennms/etc/create.sql
17:27:51.178 [Main] INFO org.opennms.core.schema.Migrator - PL/PgSQL call handler exists
17:27:51.180 [Main] INFO org.opennms.core.schema.Migrator - PL/PgSQL language exists
- checking if database "opennms" is unicode... ALREADY UNICODE
- Creating imports directory (/opt/opennms/etc/imports... OK
- Checking for old import files in /opt/opennms/etc... DONE
INFO 16/08/15 17:27:liquibase: Reading from databasechangelog
Installer completed successfully!
==============================================================================
OpenNMS Upgrader
==============================================================================
OpenNMS is currently stopped
Found upgrade task SnmpInterfaceRrdMigratorOnline
Found upgrade task KscReportsMigrator
Found upgrade task JettyConfigMigratorOffline
Found upgrade task DataCollectionConfigMigratorOffline
Processing RequisitionsMigratorOffline: Remove non-ip-snmp-primary and non-ip-interfaces from requisitions: NMS-5630, NMS-5571
- Running pre-execution phase
Backing up: /opt/opennms/etc/imports
- Running post-execution phase
Removing backup /opt/opennms/etc/datacollection.zip
Finished in 0 seconds
Upgrade completed successfully!
Konfigurace brány firewall povolující OpenNMS
Zde musíme povolit port 8980 rozhraní pro správu OpenNMS přes bránu firewall nebo směrovač pro přístup k webovému rozhraní pro správu ze vzdálených systémů. Použijte k tomu následující příkazy.
# firewall-cmd --permanent --add-port=8980/tcp
# firewall-cmd --reload
Spusťte OpenNMS a přihlaste se k webovému rozhraní
Spusťte službu OpenNMS a povolte její spuštění při každém spuštění pomocí příkazu níže.
#systemctl start opennms
#systemctl enable opennms
Jakmile budou služby spuštěny, budou připraveny k použití prostřednictvím webového rozhraní pro správu. Otevřete webový prohlížeč a přistupujte k němu pomocí adresy IP vašeho serveru a portu 8980.
http://servers_ip:8980/
Zadejte uživatelské jméno a heslo, kde jako výchozí uživatelské jméno a heslo je admin/admin.

Po úspěšné autentizaci pomocí vámi poskytnutého uživatelského jména a hesla budete přesměrováni na domovskou stránku OpenNMS, kde můžete nakonfigurovat nová monitorovací zařízení/uzly/služby atd.

Závěr
Gratulujeme! úspěšně jsme nastavili OpenNMS na CentOS 7.1. Takže na konci tohoto tutoriálu jste nyní schopni nainstalovat a nakonfigurovat OpenNMS s jeho předpoklady, které zahrnovaly nastavení PostgreSQL a JAVA. Pojďme si tedy užít skvělý systém pro monitorování sítě s open source kořeny využívající OpenNMS, který poskytuje řadu funkcí zdarma než jejich špičkoví konkurenti a může se škálovat pro monitorování velkého počtu síťových uzlů.