Monitoramento · 11 min read · Nov 01, 2025

Como Instalar a Solução de Monitoramento OpenNMS no Ubuntu 22.04

OpeNNMS é uma solução de monitoramento e gerenciamento de rede gratuita e de código aberto. É uma plataforma de monitoramento de rede de nível empresarial que visualiza e monitora tudo em redes locais e remotas. OpenNMS é uma solução totalmente de código aberto para monitoramento e gerenciamento de rede, publicada sob a licença AGPLv3.

OpenNMS é uma plataforma de monitoramento de rede escalável que permite monitorar dezenas de milhares de redes por meio de sistemas distribuídos e em camadas. Além disso, o OpenNMS é uma plataforma de monitoramento flexível que se integra facilmente ao seu negócio principal e a extensões de terceiros.

OpenNMS possui múltiplos componentes listados abaixo:

  1. OpenNMS Horizon - pacotes de três componentes principais: Core (o componente principal do Horizon), Minion (usado para monitoramento distribuído remoto) e Sentinel (para escalabilidade).
  2. Helm - painel personalizado para OpenNMS.
  3. Arquitetura para Correlação Habilitada para Aprendizado (ALEC) (triagem de alarmes).
  4. Servidor de Integração de Provisionamento (PRIS) (integração de dados extraídos).

Este guia mostra como instalar a Solução de Monitoramento OpenNMS com um servidor de banco de dados PostgreSQL e Nginx Reverse Proxy em um servidor Ubuntu 22.04. Além disso, este guia mostrará a instalação do Java OpenJDK, a configuração básica do servidor de banco de dados PostgreSQL e do servidor web Nginx.

Pré-requisitos

Antes de tudo, você precisará dos seguintes requisitos para finalizar este guia:

  • Um servidor Ubuntu 22.04 - Este exemplo usa o servidor Ubuntu com nome de host ‘opennms-server’ e a memória é de 4GB.
  • Um usuário não-root com privilégios de administrador sudo/root.\
  • Um nome de domínio ou domínio local será usado para executar o OpenNMS.

Instalando Java OpenJDK

A solução de monitoramento OPneNMS é uma ferramenta de monitoramento principalmente escrita em Java. No momento da redação deste texto, a versão mais recente do OpenNMS suporta no mínimo Java 11. O repositório padrão do Ubuntu 22.04 fornece o Java OpenJDK 11 que você pode instalar facilmente via APT.

Antes de instalar o Java, execute o seguinte comando apt para atualizar e refrescar seu índice de pacotes.

sudo apt update

Agora instale o Java OpenJDK 11 via o comando apt abaixo. A versão padrão do Java para o sistema Ubuntu 22.04 é o Java OpenJDK 11, que é adequada para a instalação do OpenNMS.

sudo apt install default-jdk

Quando solicitado, digite y para confirmar e pressione ENTER. A instalação do Java OpenJDK começará.

install java

Após a instalação do Java OpenJDK, execute o comando abaixo para verificar a versão instalada do Java. Você deve obter o Java OpenJDK 1.11 instalado em seu sistema Ubuntu.

java -version

Com o Java OpenJDK instalado, passe para a instalação do banco de dados PostgreSQL.

Instalando e Configurando o Servidor PostgreSQL

PostgreSQL é um RDMS (Sistema de Gerenciamento de Banco de Dados Relacional) de alto desempenho. O OpenNMS suporta apenas PostgreSQL como o backend do banco de dados. No momento da redação deste texto, o OpenNMS suporta PostgreSQL v10.x-14.x.

Agora você instalará e configurará o banco de dados PostgreSQL v14 em um servidor Ubuntu. Por padrão, o repositório do Ubuntu fornece várias versões do PostgreSQL, e você instalará o PostgreSQL 14.x para a implantação do OpenNMS.

Execute o comando apt abaixo para instalar o PostgreSQL 14.

sudo apt install postgresql-14

Quando solicitado para confirmação, digite y e pressione ENTER para prosseguir.

install postgresql

Após a instalação do pacote PostgreSQL, execute o seguinte comando systemctl para verificar o serviço PostgreSQL e garantir que o serviço esteja em execução e habilitado.

sudo systemctl is-enabled postgresql  
sudo systemctl status postgresql

Você verá que o serviço PostgreSQL está habilitado e será executado automaticamente na inicialização. E o status do serviço PostgreSQL está em execução.

verify postgresql

Agora que o banco de dados PostgreSQL está em execução, você irá criar o banco de dados e o usuário para o OpenNMS. Você também configurará a senha para o usuário padrão do PostgreSQL ‘ postgres ‘.

Execute o comando abaixo para criar um novo usuário PostgreSQL ‘opennms’. Quando solicitado pela senha, insira a nova senha para o usuário ‘ opennms ‘ e repita-a.

sudo -u postgres createuser -P opennms

Em seguida, crie um novo banco de dados ‘ opennms ‘ com o proprietário ‘ opennms ‘ via o seguinte comando.

sudo -u postgres createdb -O opennms opennms

Por último, altere a senha do usuário ‘ postgres ‘ via o seguinte comando. E tenha certeza de mudá-la para uma nova senha forte.

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

Agora que você tem o Java OpenJDK e o PostgreSQL instalados, está pronto para instalar o OpenNMS.

Instalando e Configurando o OpenNMS

Você instalou o Java OpenJDK e o banco de dados PostgreSQL, também criou um novo banco de dados e usuário para o OpenNMS, e configurou a senha padrão para o usuário PostgreSQL ‘postgres’. Você então começará a instalar e configurar o OpenNMS.

Nesta seção, você instalará o OpenNMS via o repositório oficial do OpenNMS. Em seguida, você configurará o OpenNMS com o banco de dados PostgreSQL, configurará o ambiente Java, inicializará o esquema do banco de dados, detectará bibliotecas do sistema e permitirá que o OpenNMS seja executado em portas privilegiadas.

Primeiro, execute o seguinte comando para adicionar a chave GPG e o repositório do 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 solicitado, pressione ENTER para confirmar e adicionar o repositório do OpenNMS.

add repo

Agora instale o pacote OpenNMS com pacotes adicionais R via o comando apt abaixo.

sudo apt install opennms r-recommended

Quando solicitado para confirmação, digite y para confirmar e pressione ENTER para prosseguir.

install opennms

Em seguida, execute o comando apt abaixo para desabilitar o pacote OpenNMS de atualizações automáticas. O OpenNMS requer etapas e configurações manuais ao atualizar para uma nova versão, portanto, você deve atualizá-lo manualmente para evitar erros durante/depois das atualizações.

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

disable auto update

Agora que o OpenNMS está instalado, você pode verificar o diretório de instalação do OpenNMS ‘ /usr/share/opennms ‘ via o comando abaixo. Além disso, quaisquer alterações relacionadas ao OpenNMS devem ser aplicadas a arquivos sob o diretório ‘ /usr/share/opennms ‘.

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

Você poderá ver uma lista de diretórios e arquivos para o pacote OpenNMS.

opennms list files

Em seguida, você configurará a configuração do banco de dados para o OpenNMS. Abra o arquivo ‘ /usr/share/opennms/etc/opennms-datasources.xml ‘ usando o seguinte comando do editor nano. O comando ‘ sudo -u opennms nano… ‘ indica que você está executando o comando como o usuário ‘ opennms ‘, e não como o usuário root.

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

Altere o ‘jdbc-data-source’ para o ‘ opennms ‘ deve estar usando os detalhes do banco de dados e usuário ‘ opennms ‘. E para ‘ opennms-admin ‘, você deve estar usando o usuário administrador do PostgreSQL ‘ postgres ‘.

  
  

Salve o arquivo e saia do editor quando terminar.

Agora execute o seguinte comando para detectar o ambiente Java em seu sistema, que será armazenado permanentemente no arquivo de configuração ‘/usr/share/opennms/etc/java.conf ‘.

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

setup opennms

Depois disso, execute o comando abaixo para inicializar o banco de dados e detectar bibliotecas do sistema para o OpenNMS. As bibliotecas para o OpenNMS serão listadas no arquivo ‘ /opt/opennms/etc/libraries.properties ‘.

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

opennsm installer

Em seguida, edite o arquivo de serviço do OpenNMS via o seguinte comando systemctl. Você deve obter o EDITOR padrão em seu sistema.

sudo systemctl edit --full opennms.service

Adicione a seguinte configuração à seção ‘ [Service] ‘. Isso permite que o serviço OpenNMS seja executado e vinculado em portas privilegiadas (portas 1-1024).

[Service]  
...  
AmbientCapabilities=CAP_NET_RAW CAP_NET_BIND_SERVICE

Salve o arquivo e saia do editor quando terminar.

Após modificar o arquivo de serviço do OpenNMS, execute o seguinte comando para recarregar o gerenciador systemd, reiniciar e habilitar o serviço OpenNMS.

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

Agora que o serviço OpenNMS está em funcionamento com as novas configurações, você irá verificar o serviço OpenNMS via o comando systemctl abaixo.

sudo systemctl is-enabled opennms  
sudo systemctl status opennms

A saída - O serviço OpenNMS está habilitado e será executado automaticamente na inicialização do sistema. E o serviço OpenNMS está atualmente em execução.

check opennms

Neste ponto, você concluiu a instalação e configuração do OpenNMS. Mas, você irá executar o OpenNMS com o Nginx reverse proxy. Continue lendo para aprender como configurar o Nginx como um reverse proxy para o OpenNMS.

Instalando o Nginx como um Reverse Proxy para OpenNMS

Agora que você tem o OpenNMS em execução na porta padrão ‘8980’, você irá instalar e configurar o Nginx como um reverse proxy para o OpenNMS.

Execute o seguinte comando apt para instalar o pacote Nginx em seu sistema.

sudo apt install nginx

Digite y quando solicitado, em seguida pressione ENTER para prosseguir. E a instalação começará.

install nginx

Em seguida, verifique o serviço Nginx com o seguinte comando systemctl.

sudo systemctl is-enabled nginx  
sudo systemctl status nginx

Você deve ver que o serviço Nginx está habilitado e será executado automaticamente na inicialização. Além disso, o serviço Nginx é iniciado automaticamente após a conclusão da instalação.

check nginx

Após a instalação do Nginx, crie um novo bloco de servidor Nginx ‘ /etc/nginx/sites-available/opennms.conf ‘ usando o seguinte comando do editor nano.

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

Adicione a seguinte configuração ao arquivo. Certifique-se de alterar o nome do domínio para o seu domínio.

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;  
    }  
  
}

Salve o arquivo e saia do editor quando terminar.

Em seguida, ative o bloco de servidor ‘ opennms.conf ‘ e verifique a configuração do Nginx para garantir que você tenha a configuração correta.

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

Se você ver a mensagem de saída como ‘ teste bem-sucedido - sintaxe ok ‘, isso significa que sua configuração do Nginx está correta.

setuo nginx

Agora reinicie o serviço Nginx para aplicar a nova configuração do bloco de servidor.

sudo systemctl restart nginx

Agora que o Nginx está em execução como um reverse proxy para o OpenNMS, você irá configurar o firewall UFW e abrir algumas portas para alguns serviços.

Configurando o Firewall UFW

Após configurar o reverse proxy Nginx, você irá configurar o UFW em seu servidor OpenNMS. Você estará executando a Ferramenta de Monitoramento OpenNMS com o UFW habilitado, então você deve adicionar algumas portas que serão usadas para o OpenNMS.

Execute o seguinte comando apt para instalar o UFW em seu sistema.

sudo apt install ufw -y

Após a instalação do UFW, execute o comando abaixo para adicionar o serviço OpenSSH. Em seguida, inicie e habilite o serviço UFW.

sudo ufw allow OpenSSH  
sudo ufw enable

Quando solicitado, digite y para confirmar e pressione ENTER para prosseguir. Agora o UFW estará em execução e habilitado, e será executado automaticamente na inicialização.

setup ufw ssh

Em seguida, adicione uma nova regra para permitir tráfego para o servidor web Nginx.

sudo ufw allow "Nginx Full"

ufw nginx

Depois disso, abra o arquivo ‘ /etc/ufw/before.rules ‘ usando o seguinte comando do editor nano.

sudo nano /etc/ufw/before.rules

Adicione a seguinte configuração antes da seção ‘filter’. Isso habilitará NAT e redirecionará/encaminhará o tráfego de 62/udp para 10162/udp*.

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

Salve o arquivo e saia do editor quando terminar.

Agora adicione a nova regra para permitir ambas as portas 62/udp e 10162/udp.

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

Recarregue o UFW para aplicar as alterações e verifique o status do UFW via o seguinte comando.

sudo ufw reload  
sudo ufw status

ceck ufw

Até agora, você concluiu a instalação e configuração do OpenNMS com dependências de pacotes, como o banco de dados PostgreSQL e o servidor web Nginx, e também configurou o UFW. Para a etapa final, você acessará a instalação do OpenNMS via um navegador web e configurará o usuário administrador para o OpenNMS.

Acessando a Ferramenta de Monitoramento OpenNMS

Abra seu navegador web e visite o nome de domínio da sua instalação do OpenNMS (ou seja: http://opennms.howtoforge.local). Você deve ver a página de login da Ferramenta de Monitoramento OpenNMS.

Digite o usuário/senha padrão ‘ admin/admin ‘ e clique em ‘ Log In ‘.

opennms login

Você verá então o painel de administração do OpenNMS.

opennms dashboard

Após fazer login no OpenNMS via o usuário/senha padrão ‘ admin/admin ‘, você então mudará o nome de usuário e a senha padrão para sua instalação do OpenNMS.

Na barra de menu superior, clique no menu ‘ Admin ‘ e selecione ‘Change Password ‘.

Agora insira a senha antiga ‘admin’ e insira a nova senha do OpenNMS e repita a senha. Em seguida, clique em ‘ Submit ‘ para aplicar.

schange password

Agora você concluiu a configuração do OpenNMS.

Conclusão

Agora você tem o OpenNMS, uma ferramenta de monitoramento altamente escalável e personalizável, instalada em seu servidor Ubuntu 22.04. Você também configurou o servidor de banco de dados PostgreSQL instalado e o servidor web Nginx configurado como um reverse proxy para o OpenNMS. Com o OpenNMS totalmente configurado, você pode agora adicionar um novo host para monitorar via protocolo SNMP, configurar monitoramento distribuído via OpenNMS Minion, escalar o OpenNMS via Sentinel e começar a personalizar o painel via Helm.

Se você deseja executar o OpenNMS em grandes implantações, consulte a documentação oficial.

Share: X/Twitter LinkedIn

Receba novas postagens na sua caixa de entrada

Sem spam. Cancele a assinatura a qualquer momento.