网站搜索

在CentOS/RHEL 7中安装OpenNMS网络监控工具


OpenNMS(或OpenNMS Horizon)是一个使用Java构建的免费开源、可伸缩、可扩展、高度可配置和跨平台的网络监控和网络管理平台。它是一个企业级网络服务管理平台,目前用于管理世界各地的电信和企业网络。

另请阅读:在 Debian 和 Ubuntu 中安装 OpenNMS 网络监控

OpenNMS 特点:

  • 支持服务保障。
  • 它支持设备和应用程序监控。
  • 它建立在事件驱动的架构之上。
  • 只需配置即可支持通过 SNMP、JMX、WMI、NRPE、NSClient++ 和 XMP 从行业标准代理收集性能指标。
  • 允许轻松集成以扩展服务轮询和性能数据收集框架。
  • 支持基于来自行业标准的 SNMP 信息的拓扑发现,例如 LLDP、CDP 和 Bridge-MIB 发现。
  • 一个配置系统,用于通过手动、检测或 ReST API 驱动的接口发现您的网络和应用程序。

OpenNMS 要求

  1. 操作系统:Red Hat Enterprise Linux 7 或 CentOS 7。
  2. 最低硬件:2 个 CPU、2 GB RAM、20 GB 磁盘

在本文中,我们将介绍如何在 RHELCentOS 7.x 版本中安装和设置最新的 OpenNMS Horizon 网络服务监控软件。

Step1:安装Java并设置JAVA_HOME

第一步是在您的系统上安装Java及其环境,因为OpenNMS Horizon至少需要Java 8或更高版本。我们将使用以下 yum 命令安装最新的 OpenJDK Java 11 版本。

yum install java-11-openjdk

安装 Java 后,您可以使用以下命令验证系统上的 Java 版本。

java -version

现在,通过在 /etc/profile 文件中添加以下行,为启动时的所有用户设置 Java 环境变量。

export JAVA_HOME=/usr/lib/jvm/java-11

第2步:安装OpenNMS Horizon

要安装OpenNMS Horizon,请添加 yum 存储库和导入 GPG 密钥。

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

然后安装 opennms 元包以及所有内置依赖项,例如 jicmp6 和 jicmpopennms-coreopennms-webapp -jettypostgresqlpostgresql-libs

yum -y install opennms

安装 opennms 元包后,您可以使用以下命令在 /opt/opennms 中验证它们。

cd /opt/opennms
tree -L 1
.
└── opennms
   ├── bin
   ├── contrib
   ├── data
   ├── deploy
   ├── etc
   ├── jetty-webapps
   ├── lib
   ├── logs -> /var/log/opennms
   ├── share -> /var/opennms
   └── system

第 3 步:初始化和设置 PostgreSQL

现在您需要初始化PostgreSQL数据库。

postgresql-setup initdb

接下来,暂时启动 PostgreSQL 服务并使其在系统启动时自动启动,并检查其状态。

systemctl start postgresql
systemctl enable postgresql
systemctl status postgresql

现在,通过切换到 postgres 用户帐户来创建对 PostgreSQL 的访问权限,然后访问 postgres shell 并使用密码创建一个 opennms 数据库用户并创建由用户 opennms 拥有的 opennms 数据库如下。

su - postgres
createuser -P opennms
createdb -O opennms opennms

Postgres 超级用户设置密码。

psql -c "ALTER USER postgres WITH PASSWORD 'admin123';"
exit

接下来,您需要在 /var/lib/pgsql/data/pg_hba.conf 配置文件中修改 PostgreSQL 的访问策略。

vi /var/lib/pgsql/data/pg_hba.conf

找到以下行并将身份验证方法更改为 md5,以允许 OpenNMS Horizon 使用 MD5 哈希密码通过本地网络访问数据库。

host    all             all             127.0.0.1/32            md5
host    all             all             ::1/128                 md5

应用 PostgreSQL 的配置更改。

systemctl reload postgresql

接下来,您需要在OpenNMS Horizon中配置数据库访问。打开 /opt/opennms/etc/opennms-datasources.xml 配置文件以设置访问上面创建的 PostgreSQL 数据库的凭据。

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

然后设置访问 PostgreSQL 数据库的凭据。

<jdbc-data-source name="opennms"
                    database-name="opennms"
                    class-name="org.postgresql.Driver"
                    url="jdbc:postgresql://localhost:5432/opennms"
                    user-name="opennms"
                    password="your-passwd-here" />

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

步骤 4:初始化并启动 OpenNMS Horizon

此时,您需要将默认版本的JavaOpenNMS Horizon集成。运行以下命令检测Java环境并保存在/opt/opennms/etc/java.conf配置文件中。

/opt/opennms/bin/runjava -s

接下来,运行OpenNMS安装程序,它将初始化数据库并检测/opt/opennms/etc/libraries.properties中保存的系统库。

/opt/opennms/bin/install -dis

然后同时通过systemd启动OpenNMS Horizon服务,使其在系统启动时自动启动并检查其状态。

systemctl start opennms
systemctl enable opennms
systemctl status opennms

如果您的系统上运行了防火墙,则在访问 OpenNMS Web 控制台之前,您需要做一件重要的事情。允许通过防火墙中的接口端口8980从远程计算机访问 OpenNMS Web 控制台。

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

第 5 步:访问 OpenNMS Web 控制台并登录

接下来,打开浏览器并键入以下任意 URL 以访问 Web 控制台。

http://SERVER_IP:8980/opennms
OR 
http://FDQN-OF-YOUR-SERVER:8980/opennms

出现登录界面后,默认登录用户名是admin,密码是admin

登录后,您将进入默认的管理仪表板。为了确保安全访问您的 OpenNMS Web 应用程序,您需要更改默认管理员密码。转到主导航菜单“管理 → 更改密码”,然后在用户帐户自助服务下,单击更改密码”。

输入旧密码,设置新密码并确认,然后点击“提交”。然后,注销并使用新密码登录以使用更安全的会话。

另请阅读:如何在 OpenNMS 监控服务器中添加主机

最后但并非最不重要的一点是,您需要使用《OpenNMS 管理员指南》了解通过 Web 控制台设置、配置和维护 OpenNMS Horizon 的几个步骤。

另请阅读:20 个监控 Linux 性能的命令行工具

OpenNMS是一个免费且完全开源的企业级网络服务管理平台。它具有可扩展性、可扩展性和高度可配置性。在本文中,我们解释了如何在CentOSRHEL 7中安装OpenNMS。您有任何问题或意见要分享,请使用下面的反馈表。