在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 要求
- 操作系统:Red Hat Enterprise Linux 7 或 CentOS 7。
- 最低硬件:2 个 CPU、2 GB RAM、20 GB 磁盘
在本文中,我们将介绍如何在 RHEL 和 CentOS 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 和 jicmp、opennms-core、opennms-webapp -jetty、postgresql 和 postgresql-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
此时,您需要将默认版本的Java与OpenNMS 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是一个免费且完全开源的企业级网络服务管理平台。它具有可扩展性、可扩展性和高度可配置性。在本文中,我们解释了如何在CentOS和RHEL 7中安装OpenNMS。您有任何问题或意见要分享,请使用下面的反馈表。