Installazione software · 10 min read · Nov 01, 2025

Come installare la soluzione di monitoraggio OpenNMS su Ubuntu 22.04

OpeNNMS è un sistema di monitoraggio e gestione della rete gratuito e open-source. È una piattaforma di monitoraggio della rete di livello aziendale che visualizza e monitora tutto sia sulle reti locali che su quelle remote. OpenNMS è una soluzione completamente open-source per il monitoraggio e la gestione della rete, pubblicata sotto la licenza AGPLv3.

OpenNMS è una piattaforma di monitoraggio della rete scalabile che consente di monitorare decine di migliaia di reti tramite sistemi distribuiti e a più livelli. Inoltre, OpenNMS è una piattaforma di monitoraggio flessibile che si integra facilmente con il tuo core business e le estensioni di terze parti.

OpenNMS ha più componenti elencati di seguito:

  1. OpenNMS Horizon - pacchetti di tre componenti principali: Core (il componente principale di Horizon), Minion (utilizzato per il monitoraggio distribuito remoto) e Sentinel (per la scalabilità).
  2. Helm - dashboard personalizzata per OpenNMS.
  3. Architettura per la correlazione abilitata all’apprendimento (ALEC) (triage degli allarmi).
  4. Server di integrazione della provisioning (PRIS) (integrazione dei dati estratti).

Questa guida ti mostra come installare la soluzione di monitoraggio OpenNMS con un server di database PostgreSQL e Nginx Reverse Proxy su un server Ubuntu 22.04. Inoltre, questa guida ti mostrerà l’installazione di Java OpenJDK, la configurazione di base del server di database PostgreSQL e del server web Nginx.

Requisiti

Prima di tutto, avrai bisogno dei seguenti requisiti per completare questa guida:

  • Un server Ubuntu 22.04 - Questo esempio utilizza il server Ubuntu con nome host ‘opennms-server’ e la memoria è di 4GB.
  • Un utente non root con privilegi di amministratore sudo/root.\
  • Un nome di dominio o dominio locale sarà utilizzato per eseguire OpenNMS.

Installazione di Java OpenJDK

La soluzione di monitoraggio OPneNMS è uno strumento di monitoraggio principalmente scritto in Java. Al momento della scrittura, l’ultima versione di OpenNMS supporta almeno Java 11. Il repository predefinito di Ubuntu 22.04 fornisce Java OpenJDK 11 che puoi facilmente installare tramite APT.

Prima di installare Java, esegui il seguente comando apt per aggiornare e aggiornare l’indice dei pacchetti.

sudo apt update

Ora installa Java OpenJDK 11 tramite il comando apt qui sotto. La versione predefinita di Java per il sistema Ubuntu 22.04 è Java OpenJDK 11, che è adatta per l’installazione di OpenNMS.

sudo apt install default-jdk

Quando richiesto, inserisci y per confermare e premi INVIO. L’installazione di Java OpenJDK inizierà.

install java

Dopo che Java OpenJDK è stato installato, esegui il comando qui sotto per verificare la versione installata di Java. Dovresti ottenere Java OpenJDK 1.11 installato sul tuo sistema Ubuntu.

java -version

Con Java OpenJDK installato, passa all’installazione del database PostgreSQL.

Installazione e configurazione del server PostgreSQL

PostgreSQL è un sistema di gestione di database relazionali (RDMS) ad alte prestazioni. OpenNMS supporta solo PostgreSQL come backend del database. Al momento della scrittura, OpenNMS supporta PostgreSQL v10.x-14.x.

Ora installerai e configurerai il database PostgreSQL v14 su un server Ubuntu. Per impostazione predefinita, il repository di Ubuntu fornisce più versioni di PostgreSQL, e installerai PostgreSQL 14.x per il deployment di OpenNMS.

Esegui il comando apt qui sotto per installare PostgreSQL 14.

sudo apt install postgresql-14

Quando richiesto per confermare, inserisci y e premi INVIO per procedere.

install postgresql

Dopo che il pacchetto PostgreSQL è stato installato, esegui il seguente comando systemctl per verificare il servizio PostgreSQL e assicurati che il servizio sia in esecuzione e abilitato.

sudo systemctl is-enabled postgresql  
sudo systemctl status postgresql

Vedrai quindi che il servizio PostgreSQL è abilitato e verrà eseguito automaticamente all’avvio. E lo stato del servizio PostgreSQL è in esecuzione.

verify postgresql

Ora che il database PostgreSQL è in esecuzione, passerai alla creazione del database e dell’utente per OpenNMS. Imposterai anche la password per l’utente PostgreSQL predefinito ‘postgres‘.

Esegui il comando qui sotto per creare un nuovo utente PostgreSQL ‘opennms’. Quando richiesto per la password, inserisci la nuova password per l’utente ‘opennms‘ e ripetila.

sudo -u postgres createuser -P opennms

Successivamente, crea un nuovo database ‘opennms‘ con il proprietario ‘opennms‘ tramite il seguente comando.

sudo -u postgres createdb -O opennms opennms

Infine, cambia la password dell’utente ‘postgres‘ tramite il seguente comando. E assicurati di cambiarla con una nuova password forte.

sudo -u postgres psql -c "ALTER USER postgres WITH PASSWORD '5up3rp4ssw0rd';"

Ora che hai installato Java OpenJDK e PostgreSQL, sei pronto per installare OpenNMS.

Installazione e configurazione di OpenNMS

Hai installato Java OpenJDK e il database PostgreSQL, hai anche creato un nuovo database e un utente per OpenNMS, e configurato la password predefinita per l’utente PostgreSQL ‘postgres’. Inizierai quindi a installare e configurare OpenNMS.

In questa sezione, installerai OpenNMS tramite il repository ufficiale di OpenNMS. Quindi, configurerai OpenNMS con il database PostgreSQL, imposterai l’ambiente Java, inizializzerai lo schema del database, rileverai le librerie di sistema e permetterai a OpenNMS di funzionare su porte privilegiate.

Per prima cosa, esegui il seguente comando per aggiungere la chiave GPG e il repository di OpenNMS.

sudo apt-key adv --fetch-keys https://debian.opennms.org/OPENNMS-GPG-KEY  
sudo add-apt-repository -s 'deb https://debian.opennms.org stable main'

Quando richiesto, premi INVIO per confermare e aggiungere il repository di OpenNMS.

add repo

Ora installa il pacchetto OpenNMS con pacchetti R aggiuntivi tramite il comando apt qui sotto.

sudo apt install opennms r-recommended

Quando richiesto per la conferma, inserisci y per confermare e premi INVIO per procedere.

install opennms

Successivamente, esegui il seguente comando apt per disabilitare l’aggiornamento automatico del pacchetto OpenNMS. OpenNMS richiede passaggi e configurazioni manuali quando si aggiorna a una nuova versione, quindi devi aggiornarlo manualmente per prevenire errori durante/dopo gli aggiornamenti.

sudo apt-mark hold libopennms-java \  
libopennmsdeps-java \  
opennms-common \  
opennms-db

disable auto update

Ora che OpenNMS è installato, puoi verificare la directory di installazione di OpenNMS ‘/usr/share/opennms‘ tramite il comando qui sotto. Inoltre, eventuali modifiche relative a OpenNMS dovrebbero essere applicate ai file sotto la directory ‘/usr/share/opennms‘.

sudo apt install tree -y  
sudo tree /usr/share/opennms -L 1

Puoi vedere un elenco di directory e file per il pacchetto OpenNMS.

opennms list files

Successivamente, configurerai la configurazione del database per OpenNMS. Apri il file ‘/usr/share/opennms/etc/opennms-datasources.xml‘ utilizzando il seguente comando dell’editor nano. Il comando ‘sudo -u opennms nano …‘ indica che stai eseguendo il comando come utente ‘opennms‘, e non come utente root.

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

Cambia il ‘jdbc-data-source’ per l’opennms dovrebbe utilizzare i dettagli del database e dell’utente ‘opennms‘. E per ‘opennms-admin‘, dovresti utilizzare l’utente amministratore PostgreSQL ‘postgres‘.

  
  

Salva il file ed esci dall’editor quando hai finito.

Ora esegui il seguente comando per rilevare l’ambiente Java sul tuo sistema, che sarà memorizzato permanentemente nel file di configurazione ‘/usr/share/opennms/etc/java.conf‘.

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

setup opennms

Dopo di che, esegui il seguente comando per inizializzare il database e rilevare le librerie di sistema per OpenNMS. Le librerie per OpenNMS saranno elencate nel file ‘/opt/opennms/etc/libraries.properties‘.

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

opennsm installer

Successivamente, modifica il file di servizio OpenNMS tramite il seguente comando systemctl. Dovresti ottenere l’EDITOR predefinito sul tuo sistema.

sudo systemctl edit --full opennms.service

Aggiungi la seguente configurazione alla sezione ‘[Service]‘. Questo consente al servizio OpenNMS di funzionare e di legarsi a porte privilegiate (porte 1-1024).

[Service]  
...  
AmbientCapabilities=CAP_NET_RAW CAP_NET_BIND_SERVICE

Salva il file ed esci dall’editor quando hai finito.

Dopo aver modificato il file di servizio OpenNMS, esegui il seguente comando per ricaricare il gestore systemd, riavviare e abilitare il servizio OpenNMS.

sudo systemctl daemon-reload  
sudo systemctl restart opennms  
sudo systemctl enable opennms

Ora che il servizio OpenNMS è attivo e funzionante con le nuove configurazioni, verificherai quindi il servizio OpenNMS tramite il comando systemctl qui sotto.

sudo systemctl is-enabled opennms  
sudo systemctl status opennms

L’output - Il servizio OpenNMS è abilitato e verrà eseguito automaticamente all’avvio del sistema. E il servizio OpenNMS è attualmente in esecuzione.

check opennms

A questo punto, hai completato l’installazione e la configurazione di OpenNMS. Ma, eseguirai OpenNMS con Nginx reverse proxy. Continua a leggere per scoprire come impostare Nginx come reverse proxy per OpenNMS.

Installazione di Nginx come Reverse Proxy per OpenNMS

Ora che hai OpenNMS in esecuzione sulla porta predefinita ‘8980’, installerai e configurerai Nginx come reverse proxy per OpenNMS.

Esegui il seguente comando apt per installare il pacchetto Nginx sul tuo sistema.

sudo apt install nginx

Inserisci y quando richiesto, quindi premi INVIO per procedere. E l’installazione inizierà.

install nginx

Successivamente, verifica il servizio Nginx con il seguente comando systemctl.

sudo systemctl is-enabled nginx  
sudo systemctl status nginx

Dovresti vedere che il servizio Nginx è abilitato e verrà eseguito automaticamente all’avvio. Inoltre, il servizio Nginx viene avviato automaticamente dopo che l’installazione è terminata.

check nginx

Dopo che Nginx è stato installato, crea un nuovo blocco server Nginx ‘/etc/nginx/sites-available/opennms.conf‘ utilizzando il seguente comando dell’editor nano.

sudo nano /etc/nginx/sites-available/opennms.conf

Aggiungi la seguente configurazione al file. Assicurati di cambiare il nome di dominio con il tuo dominio.

server {  
    listen 80;  
    server_name opennms.howtoforge.local;  
    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://opennms.howtoforge.local/;  
        proxy_pass http://localhost:8980;  
    }  
  
}

Salva il file ed esci dall’editor quando hai finito.

Successivamente, attiva il blocco server ‘opennms.conf‘ e verifica la configurazione di Nginx per assicurarti di avere la configurazione corretta.

sudo ln -s /etc/nginx/sites-available/opennms.conf /etc/nginx/sites-enabled/  
sudo nginx -t

Se vedi il messaggio di output come ‘test successful - syntax ok‘, significa che la tua configurazione di Nginx è corretta.

setuo nginx

Ora riavvia il servizio Nginx per applicare la nuova configurazione del blocco server.

sudo systemctl restart nginx

Ora che Nginx è in esecuzione come reverse proxy per OpenNMS, passerai quindi alla configurazione del firewall UFW e aprirai alcune porte per alcuni servizi.

Configurazione del firewall UFW

Dopo aver configurato il reverse proxy Nginx, configurerai quindi l’UFW sul tuo server OpenNMS. Eseguirai lo strumento di monitoraggio OpenNMS con l’UFW abilitato, quindi devi aggiungere alcune porte che saranno utilizzate per OpenNMS.

Esegui il seguente comando apt per installare UFW sul tuo sistema.

sudo apt install ufw -y

Dopo che UFW è stato installato, esegui il comando qui sotto per aggiungere il servizio OpenSSH. Quindi, avvia e abilita il servizio UFW.

sudo ufw allow OpenSSH  
sudo ufw enable

Quando richiesto, inserisci y per confermare e premi INVIO per procedere. Ora l’UFW sarà in esecuzione ed è abilitato e verrà eseguito automaticamente all’avvio.

setup ufw ssh

Successivamente, aggiungi una nuova regola per consentire il traffico al server web Nginx.

sudo ufw allow "Nginx Full"

ufw nginx

Dopo di che, apri il file ‘/etc/ufw/before.rules‘ utilizzando il seguente comando dell’editor nano.

sudo nano /etc/ufw/before.rules

Aggiungi la seguente configurazione prima della sezione ‘filter‘. Questo abiliterà NAT e reindirizzerà/inoltrerà il traffico da 62/udp a 10162/udp.

*nat  
:PREROUTING ACCEPT [0:0]  
-A PREROUTING -p udp --dport 162 -j REDIRECT --to-port 10162  
COMMIT

Salva il file ed esci dall’editor quando hai finito.

Ora aggiungi la nuova regola per consentire entrambe le porte 62/udp a 10162/udp.

sudo ufw allow in 162/udp  
sudo ufw allow in 10162/udp

Ricarica l’UFW per applicare le modifiche e verifica lo stato dell’UFW tramite il seguente comando.

sudo ufw reload  
sudo ufw status

ceck ufw

Finora, hai completato l’installazione e la configurazione di OpenNMS con le dipendenze dei pacchetti come il database PostgreSQL e il server web Nginx, e hai anche configurato l’UFW. Per l’ultimo passaggio, accederai all’installazione di OpenNMS tramite un browser web e configurerai l’utente admin per OpenNMS.

Accesso allo strumento di monitoraggio OpenNMS

Apri il tuo browser web e visita il nome di dominio della tua installazione di OpenNMS (ad es: http://opennms.howtoforge.local). Dovresti vedere la pagina di accesso dello strumento di monitoraggio OpenNMS.

Inserisci l’utente/password predefiniti ‘admin/admin‘ e fai clic su ‘Accedi‘.

opennms login

Vedrai quindi la dashboard di amministrazione di OpenNMS.

opennms dashboard

Dopo aver effettuato l’accesso a OpenNMS tramite l’utente/password predefiniti ‘admin/admin‘, cambierai quindi il nome utente e la password predefiniti per la tua installazione di OpenNMS.

Nella barra del menu in alto, fai clic sul menu ‘Admin‘ e seleziona ‘Cambia password‘.

Ora inserisci la vecchia password ‘admin’ e inserisci la nuova password di OpenNMS e ripeti la password. Quindi, fai clic su ‘Invia‘ per applicare.

schange password

Hai ora completato la configurazione di OpenNMS.

Conclusione

Ora hai OpenNMS, uno strumento di monitoraggio altamente scalabile e personalizzabile, installato sul tuo server Ubuntu 22.04. Hai anche configurato il server di database PostgreSQL installato e il server web Nginx configurato come reverse proxy per OpenNMS. Con OpenNMS completamente configurato, ora puoi aggiungere un nuovo host da monitorare tramite il protocollo SNMP, impostare il monitoraggio distribuito tramite OpenNMS Minion, scalare OpenNMS tramite Sentinel e iniziare a personalizzare la dashboard tramite Helm.

Se desideri eseguire OpenNMS su grandi distribuzioni, consulta la documentazione ufficiale.

Share: X/Twitter LinkedIn

Ricevi i nuovi post nella tua casella di posta.

Nessuno spam. Disiscriviti in qualsiasi momento.