Cómo configurar la solución de monitorización de red OpenNMS en Ubuntu 20.04 LTS
OpenNMS es un sistema de gestión de redes gratuito, de código abierto y de nivel empresarial que se utiliza para supervisar un número ilimitado de dispositivos desde la ubicación central. Funciona descubriendo todos los dispositivos de la red y supervisando los servicios automáticamente. Está basado en Java y diseñado para supervisar servicios críticos en máquinas remotas mediante SNMP y JMX. Se puede instalar en los principales sistemas operativos, como Windows, Linux/Unix, Mac y Solaris. Ofrece un amplio conjunto de funciones, como el aprovisionamiento, la supervisión de servicios, la gestión de eventos, el soporte de gráficos y la medición del rendimiento.
Actualmente, OpenNMS está disponible en dos ediciones Horizon y Meridian. Horizon está diseñada para la monitorización y gestión de entornos informáticos, mientras que Meridian está pensada para empresas que buscan estabilidad y soporte a largo plazo.
En este tutorial, explicaremos cómo instalar OpenNMS con Docker en Ubuntu 20.04.
Requisitos previos
- Un servidor con Ubuntu 20.04.
- Una contraseña de root configurada en tu servidor.
Cómo empezar
Antes de empezar, siempre es una buena idea actualizar los paquetes del sistema a la última versión. Puedes actualizarlos con el siguiente comando:
apt-get update -y
apt-get upgrade -y
Después de actualizar todos los paquetes, instala otras dependencias necesarias con el siguiente comando:
apt-get install apt-transport-https ca-certificates curl gnupg-agent software-properties-common -y
Una vez instaladas todas las dependencias, puedes pasar al siguiente paso.
Instalar Docker y Docker Compose
Por defecto, la última versión de Docker no está disponible en el repositorio por defecto de Ubuntu 20.04. Así que se recomienda instalar Docker desde el repositorio oficial de Docker.
Primero, descarga y añade la clave GPT con el siguiente comando:
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | apt-key add -
A continuación, añade el repositorio de Docker a tu sistema con el siguiente comando:
add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
Una vez añadido el repositorio, instala el Docker y el Docker compose ejecutando el siguiente comando:
apt-get install docker-ce docker-ce-cli containerd.io docker-compose -y
Una vez instalados ambos, verifica el estado del Docker mediante el siguiente comando:
systemctl status docker
Deberías obtener la siguiente salida:
? 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
Para comprobar la versión de Docker, ejecuta el siguiente comando:
docker -v
Deberías ver la siguiente salida:
Docker version 19.03.12, build 48a66213fe
Para comprobar la versión de Docker compose, ejecuta el siguiente comando:
docker-compose -v
Deberías ver la siguiente salida:
docker-compose version 1.25.0, build unknown
Instalar OpenNMS
A continuación, crea un directorio de proyecto para OpenNMS con el siguiente comando
mkdir opennms
A continuación, cambia el directorio a opennms y crea un nuevo archivo docker-compose.yml para instalar OpenNMS.
cd opennms
nano docker-compose.yml
Añade las siguientes líneas:
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
Guarda y cierra el archivo cuando hayas terminado. A continuación, descarga y construye el contenedor para OpenNMS con el siguiente comando:
docker-compose up -d
Una vez descargado el contenedor de OpenNMS, puedes verificar el contenedor en ejecución con el siguiente comando:
docker ps -a
Deberías ver la siguiente salida:
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
Accede a la interfaz web de OpenNMS
En este punto, OpenNMS se está ejecutando y escuchando en el puerto 8980. Puedes acceder a él utilizando la URL http://your-server-ip:8980. Se te redirigirá a la página de acceso a OpenNMS, como se muestra a continuación:
Proporciona el nombre de usuario y la contraseña por defecto como admin/admin y haz clic en el botón de inicio de sesión. Deberías ver el panel de control de OpenNMS en la siguiente pantalla:
Ahora, haz clic en el icono + del panel derecho para añadir un nuevo nodo de servidor para su monitorización. Deberías ver la siguiente pantalla:
Proporciona un nombre y haz clic en el botón Aceptar. Deberías ver la siguiente pantalla:
Ahora, proporciona la dirección IP del servidor que quieres monitorizar, la cadena de comunidad, el nombre de usuario y la contraseña del servidor, el método de acceso y haz clic en el botón Aprovisionar. Una vez que el aprovisionamiento sea exitoso, deberías ver la siguiente pantalla:
Haz clic en el botón Aceptar para continuar, luego ve a Información => Nodos, deberías ver el estado del nodo cliente1, la notificación y los eventos en la siguiente pantalla:
Conclusión
Enhorabuena! has instalado con éxito OpenNMS en el servidor de Ubuntu 20.04. Ahora puedes añadir más dispositivos a OpenNMS y empezar a monitorizar a través del navegador web. No dudes en preguntarme si tienes alguna duda.