Icinga:适用于 RHEL/CentOS 7.0 的下一代开源“Linux 服务器监控”工具
Icinga 是一个现代开源监控工具,起源于 Nagios 分支,现在有两个并行分支:Icinga 1 和 Icinga 2.。该工具的作用与 Nagios 没有什么不同,因为它仍然使用 Nagios 插件和附加组件甚至配置文件来检查和监控网络服务和主机,但在 Web 界面上可以发现一些差异,尤其是在新的网络界面、报告功能和简单的附加组件开发。
本主题将重点介绍如何使用 RepoForge 在 CentOS 或 RHEL 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。
- 在 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、usr 和 var。首先对系统根文件系统布局上的所有三个结果目录执行递归复制。
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 主进程。
另请阅读
- 安装 NRPE 插件并监控远程 Linux 主机
- 安装 NSClient++ 代理并监控远程 Windows 主机