在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