OpenNMS
OpenNMS هو نظام مجاني ومفتوح المصدر لإدارة الشبكة.
يعمل عن طريق اكتشاف جميع الأجهزة في الشبكة ومراقبة الخدمات (services) تلقائيًا.
هو يعتمدعلى Java ومصمم لمراقبة الخدمات الهامة على الأجهزة باستخدام SNMP و JMX.
يمكن تثبيته على جميع أنظمة التشغيل الرئيسية بما في ذلك Windows و Linux / Unix و Mac و Solaris.
يوفر مجموعة غنية من الميزات بما في ذلك (Provisioning, Service Monitoring, Event Management, ) ويدعم الرسوم البيانية وقياس الأداء.
سنشرح هنا تثبيت OpenNMS مع Docker على Ubuntu 20.04.
شاهد خطوات تثبيت OpenNMS بالفيديو
المتطلبات الأساسية
خادم يقوم بتشغيل Ubuntu 20.04.
إعداد كلمة مرور root على الخادم الخاص بك.
قبل البدء ، من الجيد دائمًا تحديث حزم النظام إلى أحدث إصدار.
يمكنك تحديثها بالأمر التالي:
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 افتراضياً.
لذلك نقوم بتثبيت 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 ، قم بتشغيل الأمر التالي:
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
احفظ وأغلق الملف عند الانتهاء.
ثم قم بتنزيل container لـ OpenNMS وإنشائها باستخدام الأمر التالي:
docker-compose up -d
بمجرد تنزيل container 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.
الآن ، انقر فوق أيقونة + في الجزء الأيمن لإضافة server node جديدة للمراقبة.
أدخل اسمًا وانقر على زر موافق .
سترى الشاشة التالية:
الآن ، قم بكتابة IP الخادم الذي تريد مراقبته واسم المستخدم وكلمة المرور للخادم ، وطريقة الوصول ، وانقر فوق الزر Provision .
بمجرد نجاح الادخال سترى الشاشة التالية:
انقر فوق الزر " OK" للمتابعة.
ثم انتقل إلى info ومنها Nodes من المفترض أن ترى حالة client1 (status, notification, and events) كما في الشاشة التالية: