分享最新优惠信息
购买主机更加划算

RHEL、Rocky Linux和AlmaLinux系统安装Icinga2详细教程

Icinga2是一个功能丰富的开源网络监控和警报应用程序,它是Nagios 监控工具的一个分支。

Icinga2旨在解决Nagios的缺点并引入新的功能,例如改进的用户界面、无需更改Icinga核心即可集成新扩展的REST API ,以及额外的数据库连接器。

除了监控SNMP、HTTP、HTTPS和SSH之外,Icinga2还监视网络设备,例如路由器和交换机。与此同时,Icinga还收集指标并生成日志,用户可以全面了解网络基础设施,然后在控制面板上可视化日志和指标,以将所有内容置于更好的上下文中。

在本文中,小编将简单介绍RHEL、Rocky Linux和AlmaLinux上安装Icinga2监控应用程序的详细过程,感兴趣的小伙伴可以看看。

前提条件

如果安装Icinga2,需要安装LAMP堆栈环境。需要注意的是,Icinga2需要PHP 7.3和更高版本才能安装。

第 1 步:安装PHP和PHP模块

如果安装的是PHP 7.2或更低版本,请运行以下命令将其删除并安装PHP 7.4(如果已经是PHP 7.4或更改版本,可以直接进入第二步):

$ sudo dnf remove php

接下来,重置系统上当前的 PHP 模块。

$ sudo dnf module reset php

之后,列出可用的PHP版本,如图所示。

$ sudo dnf module list php

然后启用PHP 7.4。

$ sudo dnf module enable php:7.4

启用PHP 7.4模块后,安装PHP和所需的PHP扩展。

$ sudo dnf install php-gd php-mbstring php-mysqlnd php-curl php-devel php-pear php-xml php-cli php-soap php-intl php-json php-ldap php-xmlrpc php-zip php-json php-common php-opcache php-gmp php-pgsql make -y

Icinga2还需要php-imagick扩展。但是,它不能像其他PHP模块那样按照常规方式安装。

要安装php-imagick扩展,请运行以下命令:

$ dnf install -y ImageMagick ImageMagick-devel 
$ sudo pecl install imagick

然后切换到root用户并将扩展附加到PHP.INI文件。

$ dnf install -y ImageMagick ImageMagick-devel
$ sudo pecl install imagick

要应用更改,请重新启动Apache服务器。

$ sudo systemctl restart httpd

第 2 步:在RHEL8中安装 Icinga2

要安装Icinga2,需要添加Icinga存储库,因为Icinga2未托管在AppStream存储库上。

为此,首先,启用EPEL存储库。

$ sudo dnf -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm

接下来,启用GPG签名密钥。

$ sudo rpm --import https://packages.icinga.com/icinga.key

接下来,在/etc/yum.repos.d目录中创建一个存储库文件。

$ sudo vim  /etc/yum.repos.d/icinga2.repo

粘贴以下代码:

[icinga2]
name=Icinga 2 Repository for EPEL 8
baseurl=https://packages.icinga.com/epel/8/release
enabled=1

保存并退出存储库文件,然后更新缓存包,命令如下:

$ sudo dnf makecache

添加存储库后,安装Icinga2包和其它关联的Icinga2包,命令如下:

$ sudo dnf install icinga2 icinga2-ido-mysql icinga2-selinux  vim-icinga2 -y

接下来,安装将用于监控物理和虚拟主机的Nagios插件

$ sudo dnf install nagios-plugins-all -y

接下来,启用Icinga2 ido-mysql模块和其他功能,命令如下:

$ sudo icinga2 feature enable ido-mysql syslog command

然后重新启动Icinga以应用更改。

$ sudo systemctl restart icinga2

第 3 步:为Icinga-IDO MySQL模块创建数据库

icinga2 -IDO(Icinga数据输出)mysql功能是一种后端功能,可将所有配置和状态信息整理并导出到数据库中。出于这个原因,需要为Icinga2-ido-mysql功能创建一个数据库。

因此,登录到MySQL数据库服务器:

$ sudo mysql -u root -p

为Icinga2创建一个数据库和一个数据库用户,然后将数据库用户的所有权限授予Icinga2数据库。

> CREATE DATABASE icinga2;
> GRANT ALL PRIVILEGES ON icinga2.* TO 'icinga2_user'@'localhost' IDENTIFIED BY 'P@ssword321';

应用更改并退出数据库服务器。

> FLUSH PRIVILEGES;
> EXIT;

接下来,按如下方式导入数据库模式,系统将提示您输入密码,这里输入数据库密码即可:

$ sudo mysql -u root -p icinga2 < /usr/share/icinga2-ido-mysql/schema/mysql.sql

继续编辑ido-mysql配置文件,命令如下:

$ sudo vim /etc/icinga2/features-available/ido-mysql.conf

取消注释数据库块并指定数据库详细信息。

配置Icinga2 MySQL模块

保存并退出。

接下来,启动并启用Icinga2

$ sudo systemctl start icinga2
$ sudo systemctl enable icinga2

然后验证Icinga2的状态,命令如下:

$ sudo systemctl status icinga2

从下面的输出中可以清楚的看出,Icinga已按预期启动并运行。

检查Icinga2状态

第 4 步:在RHEL 8上安装IcingaWeb2

IcingaWeb2是一个基于 Web的开源监控工具,它还包含一个命令行界面,支持所有后端Icinga功能,例如 Icinga-ido-mysql、Icinga core、Icinga2和其他模块。

要安装IcingaWeb2,请使用以下命令安装PowerTools:

$ sudo dnf install 'dnf-command(config-manager)'
$ sudo dnf config-manager --set-enabled powertools

安装完成后,如下图所示安装IcingaWeb2和CLI:

$ sudo dnf install icingaweb2 icingacli

第 5 步:为IcingaWeb2创建数据库

正如之前为Icinga2-IDO-mysql功能创建了一个数据库模式一样,还需要为Icinga Web2创建数据库,因此,再次登录到数据库服务器。

$ sudo mysql -u root -p

为IcingaWeb2创建一个数据库和数据库用户,然后将所有权限授予Icinga Web2数据库上的数据库用户。

> CREATE DATABASE icingaweb2;
> GRANT ALL ON icingaweb2.* TO icingaweb2@localhost IDENTIFIED BY 'P@ssword321';

保存更改并退出。

> FLUSH PRIVILEGES;
> QUIT

安装Icinga2时,会为Icinga2创建一个新的配置文件,如下图所示,你可以查看它。

$ cat /etc/httpd/conf.d/icingaweb2.conf

当然,需要重新启动Apache网络服务器才能使更改生效。

$ sudo systemctl restart httpd

此外,还需要将SELinux模式设置为“ permissive ”,命令如下:

$ sudo sed -i 's/^SELINUX=.*/SELINUX=permissive/g' /etc/selinux/config

第 6 步:从浏览器完成Icinga2设置

安装Icinga2的步骤是创建设置令牌,这是在浏览器上设置Icinga2时用于第一步身份验证的唯一代码。

要生成秘密令牌,请运行以下命令:

$ sudo icingacli setup token create

创建Icinga2令牌

复制并保存设置令牌安全。如果万一丢失了令牌,可以通过运行以下命令来找回它:

$ sudo icingacli setup token show

在本文当中,所有的以上配置都已检查完成。剩下的就是从网络浏览器完成安装。为此,请在浏览器中访问URL地址:

http://server-ip/icingaweb2/setup    #换成你的IP地址

在欢迎页面上,粘贴之前生成的设置令牌。

Icinga2设置令牌

粘贴令牌后,单击“Next”继续,这会将您带到“模块”页面。这里提供了可以启用的所有模块的概述。默认情况下,启用“monitoring(监控)”模块。

启用你的首选模块之后,并向下滚动并单击“Next”按钮继续。

Think2模块

在这里,确保满足所有PHP先决条件,包括PHP模块、库和目录。如果一切正常,请向下滚动并单击“Next”按钮:

Icinga2 PHP版本检查

在“Authentication身份验证)”页面上,保留所有内容,然后单击“Next”按钮。

Icinga2身份验证

在“Database Resource”页面当中,填写第5步中指定的IcingaWeb2的数据库详细信息。

Icinga2数据库设置

要确认数据库详细信息是否正确,请一直向下滚动并单击“Validate Configuration”。

Icinga2数据库验证

如果一切顺利,应该会收到配置已成功验证的通知。

Icinga2 数据库验证

要进行下一步,请向下滚动并单击“Next”。对于“Authentication Backend”,只需单击“Next”以接受默认值。

Icinga2身份验证确认

在下一步中,创建将用于访问和登录Icinga2 Web界面的Admin用户

Search2管理员用户

对于“Application monitoring(应用程序监控)”部分,接受默认值并单击“Next”按钮。

Icinga2应用程序监控

确认以下在此过程中所做的所有更改。如果一切正常,请单击“Next”,如果想进行任何更改,请单击“Back”并进行所需的更改。

Icinga2配置审查

jie接下来是IcingaWeb2的监控模块的配置,它是Icinga Web2的核心模块,提供状态和报告视图以及强大的过滤器功能,用于跟踪关键事件。

单击“Next”继续。

Search2监控模块

在这里,使用步骤3中指定的Icinga2-ido-mysql功能的数据库详细信息填写表格。

Search2 MySQL模块

要验证配置,请向下滚动并单击“Validate configuration”。

Icinga2 MySQL模块验证

这里将收到配置已成功验证的提示。

Icinga2 MySQL模块已验证

要继续下一步,请向下滚动并单击“Next”。对于“Command Transport(命令传输)”,使用“Local Command File(本地命令文件)”作为传输类型,然后单击“Next”。

Icinga2命令传输

在“Monitoring Security”部分,单击“Next”按钮:

Icinga2监控安全

再次查看Icinga2监控模块的所有配置。如果一切正常,请单击“Finish”,否则返回并进行必要的更改。

Icinga2监控配置审查

如果Icinga Web 2设置一切顺利,应该会看到Icinga Web 2已成功设置的提示。要登录网络界面,请单击“Login to Icinga Web 2”链接。

Web2登录界面

这时将会跳转打开 Icinga Web 2 界面,输入管理员帐户详细信息,然后单击“login”按钮:

SearchWeb2管理员登录

这样将会进入Icinga2控制面板页面,可以进行各种功能配置,如下图所示:

SearchWeb2 仪表板

以上就是在RHEL 8、Rocky Linux和AlmaLinux系统在中安装Icinga Web 2的全部过程,安装完成之后,就可以监控网络基础设施中的各种主机和服务,功能非常的强大。

未经允许不得转载:惠主机 » RHEL、Rocky Linux和AlmaLinux系统安装Icinga2详细教程

相关文章