在CentOS 8上安裝和配置OpenNMS


您可以通過以下鏈接以PDF格式下載本文來支持我們。

以PDF格式下載指南










OpenNMS的誕生源於其創建者對昂貴,不靈活且難以部署現有網絡管理工具的失望,此外,他們還觀察到客戶如何改變業務流程以適應現有工具,而不是採用其他方式這推動了他們創建OpenNMS。

OpenNMS是世界上第一個完全開源的企業級網絡服務管理平台,每天都有數百家企業在沒有團隊幫助的情況下使用它,這就是OpenNMS團隊使它易於使用的程度。作為真正的開源,它是100%免費的。

與傳統的網絡管理產品非常關注交換機和路由器上的接口等網絡元素不同,OpenNMS專註於網絡資源提供的服務:網頁,數據庫訪問,DNS,DHCP等(儘管也提供了有關網絡元素的信息) )。

我們將安裝並配置這個出色的工具,並檢查其功能,在此之前,讓我們看一下它的軟件包隱藏在裡面的內容。

OpenNMS的功能

以下是OpenNMS擁有的核心功能:

  • 可擴展性:它是為企業構建的,可從單個實例監視數百萬個設備。
  • 可擴展性:使用靈活和可擴展的體系結構擴展服務輪詢和性能數據收集框架
  • 開源的:OpenNMS是根據AGPLv3許可發布的,是完全開源的解決方案。
  • 支持:得到廣大用戶的支持,並由The OpenNMS Group提供商業支持

現在,我們應該準備在CentOS 8機器上探索OpenNMS。

步驟1:更新並準備我們的服務器

在深入研究此設置之前,最好先選擇一個乾淨且更新良好的平台,然後在整個過程中更新並安裝所需的必要工具。

sudo dnf -y update
sudo dnf install -y vim  curl wget

OpenNMS是使用Java開發的,因此我們需要安裝Java。使用此方法在Rent 8上設置Java 11-OpenJDK 11-在CentOS 8上安裝Java | CentOS 8指南

步驟2:安裝OpenNMS Horizo​​n

覆蓋了基礎層並確保準備好迎接即將到來的軟件包後,我們可以繼續安裝OpenNMS Horizo​​n,首先應添加OpenNMS官方存儲庫,然後繼續獲取並安裝必需的軟件包。

添加yum存儲庫並導入GPG密鑰

sudo dnf -y install https://yum.opennms.org/repofiles/opennms-repo-stable-rhel8.noarch.rpm
sudo rpm --import https://yum.opennms.org/OPENNMS-GPG-KEY

添加存儲庫後,我們就可以使用其所有內置依賴項來拉取並安裝OpenNMS

sudo dnf -y install opennms

上面的命令將自動安裝以下軟件包,使工作更輕鬆:

  • jicmp6和jicmp:Java橋接器,允許從OpenNMS Horizo​​n存儲庫發送ICMP消息。
  • opennms-core:OpenNMS Horizo​​n核心服務,例如從OpenNMS Horizo​​n存儲庫中調配,輪詢和收集。
  • opennms-webapp-jetty:來自OpenNMS Horizo​​n存儲庫的OpenNMS Horizo​​n Web應用程序
  • PostgreSQL:發行版存儲庫中的PostgreSQL數據庫服務器
  • postgresql-libs:發行版本庫中的PostgreSQL數據庫

步驟3:初始化和設置PostgreSQL

我們已經提到過在上一個命令中將自動安裝Postgres數據庫,現在我們應該使用相關的數據庫,憑據對其進行配置,並確保其正常運行。

初始化PostgreSQL數據庫

首先讓我們通過運行以下命令來初始化數據庫

sudo postgresql-setup --initdb --unit postgresql

要使PostgreSQL在服務器重啟時自動啟動,請運行下面的Systemd命令啟用數據庫服務器並啟動它。

sudo systemctl enable postgresql
sudo systemctl start postgresql

創建數據庫憑證

我們將需要一個用戶來訪問OpenNMS數據庫,使用密碼創建該用戶,並創建一個由該用戶opennms擁有的opennms數據庫

$ sudo su postgres
bash-4.4$ psql
psql (10.14)
Type "help" for help.

postgres=# createuser -P opennms
postgres-# createdb -O opennms opennms
postgres-# q
bash-4.4$ exit

使用密碼保護默認的postres用戶以增加安全性,如下所示:

$ sudo su postgres
bash-4.4$ psql
postgres=# ALTER USER postgres WITH PASSWORD 'StrongPassword';
ALTER ROLE
postgres=# q
bash-4.4$ exit

更改PostgreSQL的訪問策略

安裝Postgres時,ident是本地IPv6和IPv4連接的默認方法,ident身份驗證方法的工作原理是從ident服務器獲取客戶端的操作系統用戶名,並將其用作允許的數據庫用戶名(帶有可選的用戶名映射)。 ),僅在TCP / IP連接上受支持。基於密碼的身份驗證方法為“ md5”和“ password”,除了通過連接發送密碼的方式(即MD5哈希和清除)以外,這些方法的操作方式相似-文本。

我們將把它從ident改為MD5哈希方式,相應地編輯下面顯示的文件

sudo vim /var/lib/pgsql/data/pg_hba.conf

允許OpenNMS Horizo​​n使用MD5哈希密碼通過本地網絡訪問數據庫

host    all             all             127.0.0.1/32            md5 #<==
host    all             all             ::1/128                 md5

進行更改後,重新啟動postgres以應用並持久保存PostgreSQL的配置更改

sudo systemctl restart postgresql

配置對OpenNMS Horizo​​n的數據庫訪問

我們已經配置了數據庫,現在我們應該允許OpenNMS Horizo​​n自由連接,如下所示編輯opennms-datasources.xml文件以查看所需的配置,它基本上是添加我們已經設置的數據庫詳細信息。

$ sudo vim /opt/opennms/etc/opennms-datasources.xml



屏幕截圖上的詳細信息相同

步驟4:初始化並啟動OpenNMS Horizo​​n

完成數據庫設置後,我們最終可以初始化OpenNMS Horizo​​n,讓我們添加Java設置,然後繼續啟動應用程序。

檢測Java環境並保存在/opt/opennms/etc/java.conf中

sudo /opt/opennms/bin/runjava -s

初始化數據庫並檢測保存在/opt/opennms/etc/libraries.properties中的系統庫

sudo /opt/opennms/bin/install -dis

啟用OpenNMS Horizo​​n以在系統啟動時自動啟動

$ sudo systemctl enable --now opennms
$ sudo systemctl status opennms

● opennms.service - OpenNMS server
   Loaded: loaded (/usr/lib/systemd/system/opennms.service; enabled; vendor preset: disabled)
   Active: active (running) since Wed 2020-09-23 13:44:38 UTC; 5s ago
  Process: 1689425 ExecStart=/etc/init.d/opennms -s start (code=exited, status=0/SUCCESS)
 Main PID: 1690701 (java)
    Tasks: 36 (limit: 11070)
   Memory: 162.8M
   CGroup: /system.slice/opennms.service
           ├─1690700 /bin/bash /etc/init.d/opennms -s start
           └─1690701 /usr/lib/jvm/java-11-openjdk-11.0.8.10-0.el8_2.x86_64/bin/java --add-modules=java.base,java.compiler

由於OpenNMS Horizo​​n偵聽端口8980,因此如果您正在運行防火牆,則應考慮允許流量進出防火牆上的該端口,只需運行以下命令。

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

步驟5:登錄並更改默認密碼

啟動OpenNMS之後,可以通過將瀏覽器指向http://來訪問Web應用程序[IP-or-FQDN-of-your-server]:8980 / opennms。默認登錄用戶是 管理員 並將密碼初始化為 管理員..

在CentOS 8上安裝和配置OpenNMS

登錄後,您可以按以下步驟更改密碼:在主導航菜單中,單擊“管理員→更改密碼→更改密碼“。設置為當前密碼admin並設置一個新密碼,然後確認新設置的密碼,然後單擊“ Submit”。完成後,註銷並使用新密碼登錄。

步驟6:在OpenNMS中添加主機

我們已經完成了OpenNMS Horizo​​n的設置,剩下的就是添加主機供我們監視。要添加主機,請登錄您的OpenNMS Web控制台,並在主導航菜單上進行如下操作:單擊“+”。

在CentOS 8上安裝和配置OpenNMS

由於這是一個全新的設置,因此我們需要添加一個“徵用“。您將看到一個彈出窗口,要求您輸入新名稱”徵用”。

在CentOS 8上安裝和配置OpenNMS

將會顯示一個帶有表單的新頁面,如下所示。填寫表單,然後滾動到頁面底部,然後點擊“撥備撥備”。

在CentOS 8上安裝和配置OpenNMS

單擊“準備”完成後,應會彈出成功消息。

在CentOS 8上安裝和配置OpenNMS

添加節點後,您可以通過單擊“信息” 下拉菜單,然後選擇“節點數“。您應該能夠看到我們剛剛添加的節點以及它已經解密的一些細節。

在CentOS 8上安裝和配置OpenNMS

結論結論

OpenNMS提供的功能超出了本指南的範圍,您可以通過SNMP監視客戶端,配置通過消息代理將數據返回到主Horizo​​n的Minions,等等,我們將在以後的指南中介紹如何使用Apache Kafka安裝Minion目前,我們將繼續感謝您的不懈支持,有關更多監控指南,請查看以下內容:

在Ubuntu上安裝和配置Icinga2監視工具

在CentOS 8 / RHEL 8上設置Sensu Go監視工具

使用Nginx在Debian 10(Buster)上安裝Cacti Monitoring Server


您可以通過以下鏈接以PDF格式下載本文來支持我們。

以PDF格式下載指南










Sidebar