Instale la herramienta de monitoreo de red OpenNMS en CentOS / RHEL 7


OpenNMS (o OpenNMS Horizon) es una plataforma de administración de redes y monitoreo de red de código abierto, escalable, extensible, altamente configurable y multiplataforma construida con Java. Es una plataforma de gestión de servicios de red de nivel empresarial que se utiliza actualmente para gestionar redes empresariales y de telecomunicaciones en todo el mundo.

  • Supports service assurance.
  • It supports device and application monitoring.
  • It’s built on an event-driven architecture.
  • Supports the collection of performance metrics from industry standard agents via SNMP, JMX, WMI, NRPE, NSClient++ and XMP simply through configuration.
  • Allows for easy integration to extend service polling and performance data collection frameworks.
  • Supports topology discovery based on SNMP information from industry standards such as LLDP, CDP and Bridge-MIB discovery.
  • A provisioning system to discover your network and applications through manual, detected, or ReST API driven interfaces.
  1. Operating System: Red Hat Enterprise Linux 7 or CentOS 7.
  2. Minimal Hardware: 2 CPU, 2 GB RAM, 20 GB disk

En este artículo, explicaremos cómo instalar y configurar el último software de monitoreo de servicios de red OpenNMS Horizon en las versiones RHEL y CentOS 7.x.

Paso 1: Instalación de Java y configuración de JAVA_HOME

El primer paso es instalar Java y su entorno en su sistema, ya que OpenNMS Horizon requiere al menos Java 8 o una versión superior. Instalaremos la última versión de OpenJDK Java 11 usando el siguiente comando yum.

# yum install java-11-openjdk

Una vez que Java está instalado, puede verificar la versión de Java en su sistema usando el siguiente comando.

# java -version

Ahora configure la variable de entorno Java para todos los usuarios en el momento del arranque, agregando la siguiente línea en el archivo/etc/profile.

export JAVA_HOME=/usr/lib/jvm/java-11

Paso 2: Instale OpenNMS Horizon

Para instalar OpenNMS Horizon, agregue el repositorio yum y la clave GPG de importación.

# yum -y install https://yum.opennms.org/repofiles/opennms-repo-stable-rhel7.noarch.rpm
# rpm --import https://yum.opennms.org/OPENNMS-GPG-KEY

Luego, instale el metapaquete opennms junto con todas las dependencias integradas como jicmp6 y jicmp, opennms-core, opennms-webapp-jetty, postgresql y postgresql-libs.

# yum -y install opennms

Una vez instalados los metapaquetes de opennms, puede verificarlos en /opt/opennms usando los siguientes comandos.

# cd /opt/opennms
# tree -L 1
.
└── opennms
   ├── bin
   ├── contrib
   ├── data
   ├── deploy
   ├── etc
   ├── jetty-webapps
   ├── lib
   ├── logs -> /var/log/opennms
   ├── share -> /var/opennms
   └── system

Paso 3: inicializar y configurar PostgreSQL

Ahora necesita inicializar la base de datos PostgreSQL.

# postgresql-setup initdb

A continuación, inicie el servicio PostgreSQL por ahora y habilítelo para que se inicie automáticamente en el momento del arranque del sistema y verifique su estado.

# systemctl start postgresql
# systemctl enable postgresql
# systemctl status postgresql

Ahora cree acceso a PostgreSQL cambiando a la cuenta de usuario de postgres, luego acceda al shell de postgres y cree un usuario de base de datos opennms con una contraseña y cree una base de datos opennms que sea propiedad del usuario opennms de la siguiente manera.

# su - postgres
$ createuser -P opennms
$ createdb -O opennms opennms

Establezca una contraseña para el superusuario de Postgres.

$ psql -c "ALTER USER postgres WITH PASSWORD 'admin123';"
$ exit

A continuación, debe modificar la política de acceso para PostgreSQL en el archivo de configuración /var/lib/pgsql/data/pg_hba.conf .

# vi /var/lib/pgsql/data/pg_hba.conf

Busque las siguientes líneas y cambie el método de autenticación a md5 para permitir que OpenNMS Horizon acceda a la base de datos a través de la red local con una contraseña hash MD5.

host    all             all             127.0.0.1/32            md5
host    all             all             ::1/128                 md5

Aplicar cambios de configuración para PostgreSQL.

# systemctl reload postgresql

A continuación, debe configurar el acceso a la base de datos en OpenNMS Horizon. Abra el archivo de configuración /opt/opennms/etc/opennms-datasources.xml para establecer las credenciales para acceder a la base de datos PostgreSQL que creó anteriormente.

# vim /opt/opennms/etc/opennms-datasources.xml 

Luego, configure las credenciales para acceder a la base de datos de PostgreSQL.

<jdbc-data-source name="opennms"
                    database-name="opennms"
                    class-name="org.postgresql.Driver"
                    url="jdbc:postgresql://localhost:5432/opennms"
                    user-name="opennms"
                    password="your-passwd-here" />

<jdbc-data-source name="opennms-admin"
                    database-name="template1"
                    class-name="org.postgresql.Driver"
                    url="jdbc:postgresql://localhost:5432/template1"
                    user-name="postgres"
                    password="your-db-admin-pass-here" />

Paso 4: inicializar e iniciar OpenNMS Horizon

En este punto, debe integrar la versión predeterminada de Java con OpenNMS Horizon. Ejecute el siguiente comando para detectar el entorno Java y persistir en el archivo de configuración /opt/opennms/etc/java.conf.

# /opt/opennms/bin/runjava -s

A continuación, ejecute el instalador de OpenNMS que inicializará la base de datos y detectará las bibliotecas del sistema persistentes en /opt/opennms/etc/libraries.properties.

# /opt/opennms/bin/install -dis

Luego, inicie el servicio OpenNMS horizon a través de systemd por el momento, habilítelo para que se inicie automáticamente al arrancar el sistema y verifique su estado.

# systemctl start opennms
# systemctl enable opennms
# systemctl status opennms

Si tiene un firewall ejecutándose en su sistema, hay una cosa crítica que debe hacer antes de poder acceder a la consola web de OpenNMS. Permita el acceso a la consola web de OpenNMS desde computadoras remotas a través del puerto de interfaz 8980 en su firewall.

# firewall-cmd --permanent --add-port=8980/tcp
# firewall-cmd --reload

Paso 5: Acceda a la consola web de OpenNMS e inicie sesión

A continuación, abra su navegador y escriba cualquiera de las siguientes URL para acceder a la consola web.

http://SERVER_IP:8980/opennms
OR 
http://FDQN-OF-YOUR-SERVER:8980/opennms

Una vez que aparece la interfaz de inicio de sesión, el nombre de usuario de inicio de sesión predeterminado es admin y la contraseña es admin.

Después de iniciar sesión, aterrizará en el panel de administración predeterminado. Para garantizar un acceso seguro a su aplicación web OpenNMS, debe cambiar la contraseña de administrador predeterminada. Vaya al menú de navegación principal en "admin → Cambiar contraseña, luego en Autoservicio de cuenta de usuario, haga clic en Cambiar contraseña".

Ingrese la antigua, establezca una nueva contraseña y confírmela, luego haga clic en "Enviar". Luego, cierre la sesión e inicie sesión con su nueva contraseña para usar una sesión más segura.

Por último, pero no menos importante, debe aprender los pocos pasos para instalar, configurar y mantener un OpenNMS Horizon a través de la consola web utilizando la Guía de administradores de OpenNMS.

OpenNMS es una plataforma de gestión de servicios de red de nivel empresarial de código abierto y gratuito. Es escalable, extensible y altamente configurable. En este artículo, explicamos cómo instalar OpenNMS en CentOS y RHEL 7. Si tiene alguna pregunta o comentario para compartir, utilice el formulario de comentarios a continuación.