网站搜索

Icinga:适用于 RHEL/CentOS 7.0 的下一代开源“Linux 服务器监控”工具


Icinga 是一个现代开源监控工具,起源于 Nagios 分支,现在有两个并行分支:Icinga 1Icinga 2.。该工具的作用与 Nagios 没有什么不同,因为它仍然使用 Nagios 插件和附加组件甚至配置文件来检查和监控网络服务和主机,但在 Web 界面上可以发现一些差异,尤其是在新的网络界面、报告功能和简单的附加组件开发。

本主题将重点介绍如何使用 RepoForgeCentOSRHEL 7 上的二进制文件中基本安装 Icinga 1 监控工具>(以前称为 RPMforge)CentOS 6 的存储库,具有 Apache Webserver 持有的经典 Web 界面以及将安装在您的系统上的 Nagios 插件的使用。

另请阅读:在 RHEL/CentOS 中安装 Nagios 监控工具

要求

RHEL/CentOS 7.0 上的基本 LAMP 安装,无需 MySQL 和 PhpMyAdmin,但具有以下 PHP 模块:php-cli
php-pear php-xmlrpc php-xsl php-pdo php-soap php-gd

  1. 在 RHEL/CentOS 7.0 中安装基本 LAMP

第1步:安装Icinga监控工具

1. 在从二进制文件继续安装 Icinga 之前,根据您的计算机,通过发出以下命令在系统上添加 RepoForge 存储库。

适用于 86-64 位
rpm -Uvh http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el6.rf.x86_64.rpm
对于 32 位
rpm -Uvh http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el6.rf.i686.rpm

2. 在您的系统上添加 RepoForge 存储库后,通过运行以下命令开始 Icinga 基本安装(无需 Web 界面)。

yum install icinga icinga-doc

3.下一步是尝试安装icinga-gui包提供的Icinga Web界面。目前看来这个软件包在 CentOS/RHEL 7 上还有一些未解决的问题,并且会产生一些事务检查错误,但是您可以放心尝试安装该软件包,也许同时问题已经解决了。

不过,如果您的计算机上出现与下图所示相同的错误,请使用进一步描述的以下方法,以便能够安装 Icinga Web 界面。

yum install icinga-gui

4. 安装提供Web界面的icinga-gui包的过程如下。首先使用 wget 命令从 RepoForge 网站下载二进制包。

适用于 86-64 位
wget http://pkgs.repoforge.org/icinga/icinga-gui-1.8.4-4.el6.rf.x86_64.rpm
对于 32 位
wget http://pkgs.repoforge.org/icinga/icinga-gui-1.8.4-4.el6.rf.i686.rpm

5. wget下载完包后,创建一个名为icinga-gui的目录(您可以选择其他名称),移动icinga-gui b> 将 RPM 二进制文件复制到该文件夹,进入该文件夹并通过发出接下来的一系列命令来提取 RPM 包内容。

mkdir icinga-gui
mv icinga-gui-* icinga-gui
cd icinga-gui
rpm2cpio icinga-gui-* | cpio -idmv

6. 现在您已经提取了 icinga-gui 包,请使用 ls 命令可视化文件夹内容 – 它应该会产生三个新目录 – < b>etc、usrvar。首先对系统根文件系统布局上的所有三个结果目录执行递归复制。

cp -r etc/* /etc/
cp -r usr/* /usr/
cp -r var/* /var/

第2步:修改Icinga Apache配置文件和系统权限

7. 正如本文介绍中所述,您的系统需要安装 Apache HTTP 服务器和 PHP 才能运行 Icinga Web Interface。

完成上述步骤后,Apache conf.d 路径上现在应该出现一个名为 icinga.conf 的新配置文件。为了能够从浏览器远程访问 Icinga,请打开此配置文件并将其所有内容替换为以下配置。

nano /etc/httpd/conf.d/icinga.conf

确保将所有文件内容替换为以下内容。

ScriptAlias /icinga/cgi-bin "/usr/lib64/icinga/cgi"

<Directory "/usr/lib64/icinga/cgi">
 SSLRequireSSL
   Options ExecCGI
   AllowOverride None
   AuthName "Icinga Access"
   AuthType Basic
   AuthUserFile /etc/icinga/passwd

   <IfModule mod_authz_core.c>
      # Apache 2.4
      <RequireAll>
         Require all granted
         # Require local
         Require valid-user
      </RequireAll>
   </IfModule>

   <IfModule !mod_authz_core.c>
      # Apache 2.2
      Order allow,deny
      Allow from all
      #  Order deny,allow
      #  Deny from all
      #  Allow from 127.0.0.1
      Require valid-user
    </IfModule>
 </Directory>

Alias /icinga "/usr/share/icinga/"

<Directory "/usr/share/icinga/">

 SSLRequireSSL
   Options None
   AllowOverride All
   AuthName "Icinga Access"
   AuthType Basic
   AuthUserFile /etc/icinga/passwd

   <IfModule mod_authz_core.c>
      # Apache 2.4
      <RequireAll>
         Require all granted
         # Require local
         Require valid-user
      </RequireAll>
   </IfModule>

   <IfModule !mod_authz_core.c>
      # Apache 2.2
      Order allow,deny
      Allow from all
      #  Order deny,allow
      #  Deny from all
      #  Allow from 127.0.0.1
      Require valid-user
   </IfModule>
</Directory>

8. 编辑 Icinga httpd 配置文件后,将 Apache 系统用户添加到 Icinga 系统组,并在下一个系统路径上使用以下系统权限。

usermod -aG icinga apache
chown -R icinga:icinga /var/spool/icinga/*
chgrp -R icinga /etc/icinga/*
chgrp -R icinga /usr/lib64/icinga/*
chgrp -R icinga /usr/share/icinga/*

9. 在启动 Icinga 系统进程和 Apache 服务器之前,请确保还通过运行 setenforce 0 命令禁用 SELinux 安全机制并使更改永久生效通过编辑 /etc/selinux/config 文件,将 SELINUX 上下文从强制更改为禁用

nano /etc/selinux/config

将 SELINUX 指令修改为如下所示。

SELINUX=disabled

您还可以使用getenforce命令查看SELinux状态。

10. 作为启动 Icinga 进程和 Web 界面之前的最后一步,作为一项安全措施,您现在可以通过运行以下命令来修改 Icinga 管理员密码,然后启动这两个进程。

htpasswd -cm /etc/icinga/passwd icingaadmin
systemctl start icinga
systemctl start httpd

第 3 步:安装 Nagios 插件并访问 Icinga Web 界面

11. 为了开始使用 Icinga 监控主机上的公共外部服务,例如 HTTP、IMAP、POP3、SSH、DNS、ICMP ping 以及许多其他可从互联网或 LAN 访问的服务,您需要安装 < b>Nagios 插件 软件包由 EPEL 存储库提供。

rpm -Uvh http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-6.noarch.rpm
yum install yum install nagios-plugins nagios-plugins-all

12. 要登录 Icinga Web 界面,请打开浏览器并将其指向 URL http://system_IP/icinga/。使用 icingaadmin 作为您之前更改的用户名和密码,您现在可以看到本地主机系统状态。

就这样!现在,您已经在系统上安装并运行了具有经典 Web 界面(如 nagios)的 Icinga basic。使用 Nagios 插件,您现在可以开始添加新主机和外部服务,通过编辑位于 /etc/icinga/ 路径上的 Icinga 配置文件来检查和监控。如果您需要监控远程主机上的内部服务,那么您必须在远程主机上安装代理(例如 NRPE、NSClient++、SNMP)来收集数据并将其发送到 Icinga 主进程。

另请阅读

  1. 安装 NRPE 插件并监控远程 Linux 主机
  2. 安装 NSClient++ 代理并监控远程 Windows 主机