Debian 10 / Debian 9’a OpenNMS Nasıl Kurulur

İzleme, bilişimin en önemli alanlarından biridir. Bir bilgi işlem ortamında sunucuların veya ağların nasıl çalıştığını her zaman bilmek oldukça önemlidir. Herhangi bir zamanda yanlış giden herhangi bir şeyi işaret edebildiğimiz için iş sürekliliğini sağlamanın en önemli yollarından biridir. Çoğu şirketin, çalışmaları sistemdeki olası sorunları tespit etmek ve bunları ilgili ekiplere bildirmek olan özel bir izleme ekibinin bulunmasının nedeni budur. Etkili izleme ölçümleri ve gösterge tabloları sunan çok sayıda güçlü araç vardır. Bu araçların çoğu ücretsiz ve açık kaynaktır ancak yine de istenen bilgileri sunar. İzleme aracı seçiminiz neyi izlemek istediğinize ve kontrol panellerinde görüntülenmesine ihtiyaç duyduğunuz bilgilere bağlıdır.

OpenNMS (Açık Ağ Yönetim Sistemi), SNMP (Basit Ağ Yönetim Protokolü) ve JMX (Java Yönetim Uzantıları) kullanarak izleme için yerel ve uzak sunucular hakkında kritik bilgileri toplayan, güçlü, ücretsiz ve açık kaynaklı, java tabanlı bir ağ izleme aracıdır. Kurumsal sınıftır, son derece özelleştirilebilir ve ölçeklenebilir olduğundan temel iş uygulamaları ve iş akışlarıyla kolayca entegre olur. OpenNMS, trafik izleme, performans izleme, alarmlar sunar ve e-posta yoluyla uyarılar gönderir.

OpenNMS’in Özellikleri

OpenNMS’in özelliklerinden/avantajlarından bazıları şunlardır:

  • Hizmet garantisi
  • Gözetim Görünümü
  • Servisleri Gözleme
  • Performans Yönetimi
  • Olay Odaklı
  • Kritik Hizmet Takibi
  • Coğrafi Harita
  • Grafana Desteği
  • Elastik Search Yönlendirme
  • İşletme Hizmeti İzleme
  • İşletme Hizmeti Hiyerarşisi
  • Kök Neden ve Etki Analizi
  • Alarmlar ve Bildirimler
  • Kolay Entegrasyon
  • Kaynak Grafiği Görüntüleyicisi
  • Hizmet Isı Haritası
  • Geri Vites Grafiği Görselleştirmesi
  • Provisioning
  • Tipoloji Keşfi
  • Katman 2 Ağ Topolojilerini Destekler
  • Katman 3 Ağ Topolojilerini Destekler

sistem gereksinimleri

Kurulumdan önce aşağıdaki sistem gereksinimlerine sahip olduğunuzu göz önünde bulundurun:

  • 2 CPU, 2GB RAM, 20GB Hard Disk
  • Sudo ayrıcalıklarına sahip, root olmayan kullanıcı

Yukarıdakileri onayladıktan sonra OpenNMS’in Debian 10|9’a kurulması için sonraki adımları izleyin.

1. Adım: Sistem güncellemesi

Bağımlılıklarla ilgili olası sorunları önlemek için kurulumdan önce en son sistem paketlerine sahip olduğunuzdan emin olun.

sudo apt-get update
sudo apt-get upgrade

Yükseltme başarılı olduktan sonra sistemi yeniden başlatmayı düşünebilirsiniz:

sudo reboot

Adım 2: OpenJDK 11’i Debian’a yükleyin

Debian 10|’da OpenNMS’in başarılı kurulumunu kolaylaştırmak için belirli paketlere ihtiyacımız var.

sudo apt update
sudo apt install default-jdk -y

Yüklendiğinde sürümü onaylayın ve Java ortamını ayarlayın

$ java -version
openjdk version "11.0.18" 2023-01-17
OpenJDK Runtime Environment (build 11.0.18+10-post-Debian-1deb11u1)
OpenJDK 64-Bit Server VM (build 11.0.18+10-post-Debian-1deb11u1, mixed mode, sharing)

Java ortamını ayarlama

$sudo vim /etc/profile
export JAVA_HOME=/usr/lib/jvm/default-java

$ source /etc/profile

3. Adım: OpenNMS Horizon’u Debian’a yükleyin

Kurulum için Debian sistemimize OpernNMS deposunu ve GPG anahtarını ekleyeceğiz.

OpenNMS APT deposunu ekleyin:

cat << EOF | sudo tee /etc/apt/sources.list.d/opennms.list
deb https://debian.opennms.org stable main
EOF

GPG anahtarını içe aktar:

curl -fsSL https://debian.opennms.org/OPENNMS-GPG-KEY|sudo gpg --dearmor -o /etc/apt/trusted.gpg.d/opennms.gpg

Paket dizinini güncelleyin ve openms paketlerini yükleyin:

sudo apt update
sudo apt install opennms

Paket kurulumuna devam etmek için istemleri kabul edin:

....
0 upgraded, 30 newly installed, 0 to remove and 32 not upgraded.
Need to get 874 MB of archives.
After this operation, 1,268 MB of additional disk space will be used.
Do you want to continue? [Y/n] y

Kurulum sırasında güncellemeleri önlemek için isteğe bağlı olarak OpenNMS APT deposunu devre dışı bırakabilirsiniz.

$ sudo apt-mark hold libopennms-java libopennmsdeps-java opennms-common opennms-db
libopennms-java set on hold.
libopennmsdeps-java set on hold.
opennms-common set on hold.
opennms-db set on hold.

4. Adım: PostgreSQL Veritabanını Kurun

OpenNMS, PostGgreSQL veritabanını kullanır. OpenNMS’i yükledikten sonra PostgreSQL’i otomatik olarak yükler. PostgreSQL’i başlatın ve durumunu aşağıdaki gibi onaylayın:

$ sudo systemctl start postgresql
$ sudo systemctl status postgresql
● postgresql.service - PostgreSQL RDBMS
   Loaded: loaded (/lib/systemd/system/postgresql.service; enabled; vendor prese
   Active: active (exited) since Sat 2021-08-14 14:35:46 EAT; 5min ago
  Process: 10542 ExecStart=/bin/true (code=exited, status=0/SUCCESS)
 Main PID: 10542 (code=exited, status=0/SUCCESS)

Aug 14 14:35:46 lorna-pc systemd[1]: Starting PostgreSQL RDBMS...
Aug 14 14:35:46 lorna-pc systemd[1]: Started PostgreSQL RDBMS.

PostgreSQL veritabanı ve şifreli kullanıcı oluşturalım. PostgreSQL komutlarını çalıştırabilmek için öncelikle postgres kullanıcısına geçin.

$ sudo su - postgres
postgres@lorna-pc:~$ createuser opennms
postgres@lorna-pc:~$ psql -c "ALTER USER opennms WITH PASSWORD 'opennms';"
ALTER ROLE
postgres@lorna-pc:~$ createdb -O opennms opennms

PostgreSQL varsayılan kullanıcısını korumak için bir şifre oluşturun

postgres@lorna-pc:~$ psql -c "ALTER USER postgres WITH PASSWORD 'StrongPassw0rd';"
ALTER ROLE
postgres@lorna-pc:~$ exit

Daha sonra OpenNMS konfigürasyonunda veritabanı erişimini ayarlıyoruz. Yapılandırma dosyasını açın:

sudo vim /usr/share/opennms/etc/opennms-datasources.xml

PostgreeSQL DB kullanıcısını ve varsayılan kullanıcıyı gösterildiği gibi ayarlayın

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

5. Adım: OpenNMS Horizon’u Başlatın ve Başlatın

Bunun için öncelikle Java ortamını tespit etmemiz ve Opennms’in Java ile entegre olması gerektiğinden ısrar etmemiz gerekiyor.

$ sudo /usr/share/opennms/bin/runjava -s
runjava: Looking for an appropriate JVM...
runjava: Checking for an appropriate JVM in JAVA_HOME...
runjava: Skipping... JAVA_HOME not set.
runjava: Checking JVM in the PATH: "/etc/alternatives/java"...
runjava: Did not find an appropriate JVM in the PATH: "/etc/alternatives/java"
runjava: Searching for a good JVM...
runjava: Found a good JVM in "/usr/lib/jvm/java-11-openjdk-amd64/bin/java".
runjava: Value of "/usr/lib/jvm/java-11-openjdk-amd64/bin/java" stored in configuration file.

Kurulumu tamamlamak için aşağıdaki komutu çalıştırın; veritabanını başlatacak ve sistem kitaplıklarını algılayacak

$ sudo /usr/share/opennms/bin/install -dis
.....
- Running pre-execution phase
  Creating backup of /usr/share/opennms/etc/service-configuration.xml
    Zipping /usr/share/opennms/etc/service-configuration.xml
- Running execution phase
  Current configuration: 32 services.
  A service entry named 'OpenNMS:Name=PerspectivePoller' already exists.
  Final configuration: 32 services.
- Saving the execution state
- Running post-execution phase
  Removing backup /usr/share/opennms/etc/service-configuration.xml.zip

Finished in 0 seconds


Upgrade completed successfully!

Şimdi OpenNMS’i aşağıdaki gibi başlatın ve etkinleştirin:

sudo systemctl start opennms
sudo systemctl enable opennms

OpenNMS durumunu onaylayın

$ systemctl status opennms
● opennms.service - OpenNMS server
   Loaded: loaded (/lib/systemd/system/opennms.service; enabled; vendor preset: 
   Active: active (running) since Sat 2021-08-14 15:47:43 EAT; 19s ago
 Main PID: 12542 (java)
    Tasks: 60 (limit: 1799)
   Memory: 381.8M
   CGroup: /system.slice/opennms.service
           ├─12541 bash /usr/share/opennms/bin/opennms -s start
           └─12542 /usr/lib/jvm/java-11-openjdk-amd64/bin/java --add-modules=java

Adım 6: ufw kullanarak Güvenlik Duvarını yapılandırın

OpenNMS, 8980 numaralı bağlantı noktasında çalışır. Etkin bir güvenlik duvarı çalıştırıyorsanız, gösterildiği gibi bağlantı noktasına izin vermeniz gerekir.

sudo ufw allow 8980/tcp
sudo ufw reload

Adım 7: OpenNMS Horizon’a Tarayıcıdan Erişim

Bu noktada OpenNMS sunucusunu Debian 10|9 üzerinde başarıyla kurduk. Tarayıcıdan erişmek için sistem IP adresinizi veya yapılandırdıysanız ana bilgisayar adını kullanarak URL’yi yazın;
http://<sunucu-ip’iniz>:8980/opennms veya
http://<sunucu-anasistem adınız>:8980/opennms.

Aşağıdaki sayfayı görmelisiniz

Varsayılan oturum açma kimlik bilgileriyle erişim: kullanıcı adı admin ve şifre admin’dir.

Oturum açtıktan sonra yapmak isteyeceğiniz ilk şey, varsayılan yönetici şifresini değiştirmektir. Ana gezinme menüsünün en sağında admin -> şifreyi değiştir seçeneğine tıklayın. admin -> change password. Under User Account Self-service, click on change password.

Adım 8: OpenNMS İzlemeye Bir Sunucu Ekleme

İzlenecek bir sunucu eklemek için gezinme çubuğunun en sağındaki + işaretine tıklayın. Temel hazırlık talebi için bir ad girin. örnek olarak group 1 ismi verdik

Daha sonra izlenecek sunucu için gerekli öznitelikleri girin. İsterseniz doldurabileceğiniz başka isteğe bağlı girişler de vardır.

İşiniz bittiğinde sayfanın altındaki ‘provision’ı tıklayın. Düğümün başarıyla eklendiğini size bildirmelidir

Ana sayfaya döndüğünüzde, ‘Status Overview’ altında, yeni düğümün doldurulmasıyla ilgili bilgileri görebilmeniz gerekir.

OpenNMS Horizon’u Debian 10|’a başarıyla kurduk. 9’a bakın ve monitöre hızlı bir şekilde bir ana bilgisayarı nasıl ekleyebileceğinizi gördünüz. Platformunuza uygun güçlü bir izleme aracı oluşturmak için OpenNMS ile yapabileceğiniz daha pek çok şey var. OpenNMS resmi sitesinde, OpenNMS’in gücünü fark etmeniz için daha fazla yapılandırma konusunda size yardımcı olabilecek birçok bilgi bulunmaktadır.