Ubuntu 20.04 LTS에서 OpenNMS 네트워크 모니터링 솔루션을 설정하는 방법
이 튜토리얼은 다음 OS 버전에 대해 존재합니다.
- 우분투 20.04(Focal Fossa)
- 우분투 16.04(Xenial Xerus)
이 페이지에서
- 전제 조건
- 시작하기\n
- Docker 및 Docker Compose 설치
- OpenNMS 설치
- OpenNMS 웹 인터페이스 액세스
- 결론
OpenNMS는 중앙 위치에서 무제한 장치를 모니터링하는 데 사용되는 무료 오픈 소스 엔터프라이즈급 네트워크 관리 시스템입니다. 네트워크의 모든 장치를 검색하여 작동하고 서비스를 자동으로 모니터링합니다. Java를 기반으로 하며 SNMP 및 JMX를 사용하여 원격 시스템에서 중요한 서비스를 모니터링하도록 설계되었습니다. Windows, Linux/Unix, Mac 및 Solaris를 포함한 모든 주요 운영 체제에 설치할 수 있습니다. 프로비저닝, 서비스 모니터링, 이벤트 관리, 차트 지원 및 성능 측정을 포함한 다양한 기능을 제공합니다.
현재 OpenNMS는 Horizon과 Meridian의 두 가지 버전으로 제공됩니다. Horizon은 IT 환경을 모니터링하고 관리하도록 설계되었으며 Meridian은 안정성과 장기적인 지원을 원하는 기업을 위해 설계되었습니다.
이 튜토리얼에서는 Ubuntu 20.04에서 Docker와 함께 OpenNMS를 설치하는 방법을 설명합니다.
전제 조건
- Ubuntu 20.04를 실행하는 서버.\n
- 서버에 루트 암호가 설정되어 있습니다.\n
시작하기
시작하기 전에 항상 시스템 패키지를 최신 버전으로 업데이트하는 것이 좋습니다. 다음 명령으로 업데이트할 수 있습니다.
apt-get update -y
apt-get upgrade -y
모든 패키지를 업데이트한 후 다음 명령을 사용하여 다른 필수 종속성을 설치합니다.
apt-get install apt-transport-https ca-certificates curl gnupg-agent software-properties-common -y
모든 종속성이 설치되면 다음 단계로 진행할 수 있습니다.
Docker 및 Docker Compose 설치
기본적으로 Docker의 최신 버전은 Ubuntu 20.04 기본 리포지토리에서 사용할 수 없습니다. 따라서 Dockers 공식 저장소에서 Docker를 설치하는 것이 좋습니다.
먼저 다음 명령을 사용하여 GPT 키를 다운로드하고 추가합니다.
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | apt-key add -
다음으로 다음 명령을 사용하여 시스템에 Docker 리포지토리를 추가합니다.
add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
리포지토리가 추가되면 다음 명령을 실행하여 Docker 및 Docker Compose를 설치합니다.
apt-get install docker-ce docker-ce-cli containerd.io docker-compose -y
둘 다 설치되면 다음 명령을 사용하여 Docker의 상태를 확인합니다.
systemctl status docker
다음과 같은 결과가 표시되어야 합니다.
? 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
Docker 버전을 확인하려면 다음 명령을 실행합니다.
docker -v
다음 출력이 표시되어야 합니다.
Docker version 19.03.12, build 48a66213fe
Docker Compose 버전을 확인하려면 다음 명령을 실행합니다.
docker-compose -v
다음 출력이 표시되어야 합니다.
docker-compose version 1.25.0, build unknown
OpenNMS 설치
다음으로 다음 명령을 사용하여 OpenNMS용 프로젝트 디렉토리를 생성합니다.
mkdir opennms
다음으로 디렉토리를 opennms로 변경하고 새로운 docker-compose.yml 파일을 생성하여 OpenNMS를 설치합니다.
cd opennms
nano docker-compose.yml
다음 줄을 추가합니다.
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
완료되면 파일을 저장하고 닫습니다. 그런 다음 다음 명령을 사용하여 OpenNMS용 컨테이너를 다운로드하고 빌드합니다.
docker-compose up -d
OpenNMS 컨테이너가 다운로드되면 다음 명령을 사용하여 실행 중인 컨테이너를 확인할 수 있습니다.
docker ps -a
다음 출력이 표시되어야 합니다.
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
OpenNMS 웹 인터페이스에 액세스
이 시점에서 OpenNMS는 실행 중이며 포트 8980에서 수신 중입니다. URL http://your-server-ip:8980을 사용하여 액세스할 수 있습니다. 아래와 같이 OpenNMS 로그인 페이지로 리디렉션됩니다.

기본 사용자 이름과 비밀번호를 admin/admin으로 입력하고 로그인 버튼을 클릭합니다. 다음 화면에 OpenNMS 대시보드가 표시되어야 합니다.

이제 오른쪽 창의 + 아이콘을 클릭하여 모니터링할 새 서버 노드를 추가합니다. 다음 화면이 표시됩니다.

이름을 입력하고 확인 버튼을 클릭합니다. 다음 화면이 표시됩니다.


이제 모니터링하려는 서버의 IP 주소, 커뮤니티 문자열, 서버의 사용자 이름 및 비밀번호, 액세스 방법을 제공하고 제공 버튼을 클릭하십시오. 프로비저닝이 성공하면 다음 화면이 표시됩니다.

확인 버튼을 클릭하여 계속한 다음 정보 => 노드로 이동하면 다음 화면에 클라이언트1 노드 상태, 알림 및 이벤트가 표시됩니다.

결론
축하합니다! Ubuntu 20.04 서버에 OpenNMS를 성공적으로 설치했습니다. 이제 OpenNMS에 더 많은 장치를 추가하고 웹 브라우저를 통해 모니터링을 시작할 수 있습니다. 궁금한 점이 있으면 언제든지 문의해 주세요.