OpenNMS je bezplatný, open-source a podnikový systém správy sítě používaný k monitorování neomezeného počtu zařízení z centrálního umístění. Funguje tak, že automaticky zjišťuje všechna zařízení v síti a monitoruje služby. Je založen na Javě a navržen pro monitorování kritických služeb na vzdálených počítačích pomocí SNMP a JMX. Lze jej nainstalovat na všechny hlavní operační systémy včetně Windows, Linux/Unix, Mac a Solaris. 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 současné době je OpenNMS k dispozici ve dvou edicích Horizon a Meridian. Horizon je navržen pro monitorování a správu IT prostředí, zatímco Meridian je navržen pro společnosti, které hledají stabilitu a dlouhodobou podporu.
V tomto tutoriálu vysvětlíme, jak nainstalovat OpenNMS s Dockerem na Ubuntu 20.04.
Předpoklady
- Server se systémem Ubuntu 20.04.
- Na vašem serveru je nastaveno heslo uživatele root.
Začínáme
Než začnete, je vždy dobré aktualizovat systémové balíčky na nejnovější verzi. Můžete je aktualizovat pomocí následujícího příkazu:
apt-get update -y
apt-get upgrade -y
Po aktualizaci všech balíčků nainstalujte další požadované závislosti pomocí následujícího příkazu:
apt-get install apt-transport-https ca-certificates curl gnupg-agent software-properties-common -y
Jakmile jsou všechny závislosti nainstalovány, můžete přejít k dalšímu kroku.
Instalovat Docker a Docker Compose
Ve výchozím nastavení není nejnovější verze Dockeru k dispozici ve výchozím úložišti Ubuntu 20.04. Proto se doporučuje nainstalovat Docker z oficiálního úložiště Docker.
Nejprve si stáhněte a přidejte klíč GPT pomocí následujícího příkazu:
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | apt-key add -
Dále přidejte úložiště Docker do svého systému pomocí následujícího příkazu:
add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
Po přidání úložiště nainstalujte Docker and Docker compose spuštěním následujícího příkazu:
apt-get install docker-ce docker-ce-cli containerd.io docker-compose -y
Jakmile jsou oba nainstalovány, ověřte stav Dockeru pomocí následujícího příkazu:
systemctl status docker
Měli byste získat následující výstup:
? 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
Chcete-li zkontrolovat verzi Dockeru, spusťte následující příkaz:
docker -v
Měli byste vidět následující výstup:
Docker version 19.03.12, build 48a66213fe
Chcete-li zkontrolovat verzi pro psaní Dockeru, spusťte následující příkaz:
docker-compose -v
Měli byste vidět následující výstup:
docker-compose version 1.25.0, build unknown
Instalovat OpenNMS
Dále vytvořte adresář projektu pro OpenNMS pomocí následujícího příkazu:
mkdir opennms
Dále změňte adresář na opennms a vytvořte nový soubor docker-compose.yml pro instalaci OpenNMS.
cd opennms
nano docker-compose.yml
Přidejte následující řádky:
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
Po dokončení uložte a zavřete soubor. Poté stáhněte a sestavte kontejner pro OpenNMS pomocí následujícího příkazu:
docker-compose up -d
Jakmile je kontejner OpenNMS stažen, můžete ověřit běžící kontejner pomocí následujícího příkazu:
docker ps -a
Měli byste vidět následující výstup:
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
Přístup k webovému rozhraní OpenNMS
V tomto okamžiku OpenNMS běží a naslouchá na portu 8980. Můžete k němu přistupovat pomocí adresy URL http://ip-ip-vašeho-serveru:8980. Budete přesměrováni na přihlašovací stránku OpenNMS, jak je uvedeno níže:
Zadejte výchozí uživatelské jméno a heslo jako admin/admin a klikněte na Přihlásit knoflík. Na následující obrazovce byste měli vidět řídicí panel OpenNMS:
Nyní klikněte na + ikonu v pravém podokně pro přidání nového serverového uzlu pro monitorování. Měli byste vidět následující obrazovku:
Zadejte název a klikněte na OK knoflík. Měli byste vidět následující obrazovku:
Nyní zadejte IP adresu serveru, který chcete monitorovat, řetězec komunity, uživatelské jméno a heslo serveru, metodu přístupu a klikněte na Provision knoflík. Jakmile je zřízení úspěšné, měli byste vidět následující obrazovku:
Klikněte na OK pokračujte a přejděte na Info => Uzly , měli byste vidět stav uzlu client1, oznámení a události na následující obrazovce:
Závěr
Gratulujeme! úspěšně jste nainstalovali OpenNMS na server Ubuntu 20.04. Nyní můžete do OpenNMS přidat další zařízení a začít sledovat prostřednictvím webového prohlížeče. Pokud máte nějaké dotazy, neváhejte se mě zeptat.