Icinga: RHEL/CentOS 7.0 用の次世代オープンソース「Linux サーバー監視」ツール
Icinga は、Nagios フォークから派生した最新のオープンソース監視ツールで、現在は Icinga 1 と Icinga という 2 つの並列ブランチがあります。 2 。このツールの機能は、Nagios のプラグインやアドオン、さらには設定ファイルを使用してネットワーク サービスやホストをチェックおよび監視するという点で Nagios とそれほど変わりませんが、Web インターフェイス、特に Web インターフェイスでいくつかの違いが見られます。新しい Web インターフェイス、レポート機能、簡単なアドオン開発。
このトピックでは、RepoForge を使用した、CentOS または RHEL 7 上のバイナリからの Icinga 1 モニタリング ツールの基本的なインストールに焦点を当てます。 > (以前は RPMforge として知られていた) CentOS 6 用のリポジトリ。Apache Web サーバーが保持する古典的な Web インターフェイスと、システムにインストールされる Nagios プラグインの使用を備えています。
こちらもお読みください: RHEL/CentOS に Nagios 監視ツールをインストールする
要件
MySQL と PhpMyAdmin を使用しない、RHEL/CentOS 7.0 への基本的な LAMP インストール。ただし、次の 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 リポジトリがシステムに追加された後、次のコマンドを実行して、Web インターフェイスをまだ使用せずに Icinga の基本インストールを開始します。
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 Web サイトからバイナリ パッケージをダウンロードします。
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 コマンドを使用してフォルダーの内容を視覚化します。結果として 3 つの新しいディレクトリが作成されるはずです。< b>etc、usr、および var。まず、システム ルート ファイル システム レイアウト上の 3 つの結果ディレクトリすべての再帰的コピーを実行します。
cp -r etc/* /etc/
cp -r usr/* /usr/
cp -r var/* /var/
ステップ 2: Icinga Apache 構成ファイルとシステム権限を変更する
7. この記事の紹介で説明したように、Icinga Web Interface を実行するには、システムに Apache HTTP サーバーと PHP がインストールされている必要があります。
上記の手順を完了すると、icinga.conf という名前の新しい設定ファイルが Apache conf.d パスに存在するはずです。ブラウザからリモートの場所から 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 を使用し、以前に変更したパスワードを使用すると、ローカルホストのシステム ステータスを確認できるようになります。
それだけです!これで、nagios のような古典的な Web インターフェイスを備えた Icinga Basic がシステムにインストールされ、実行されます。 Nagios プラグインを使用すると、/etc/icinga/ パスにある Icinga 設定ファイルを編集することで、チェックおよび監視する新しいホストと外部サービスの追加を開始できるようになります。リモート ホスト上の内部サービスを監視する必要がある場合は、NRPE、NSClient++、SNMP などのエージェントをリモート ホストにインストールしてデータを収集し、Icinga メイン プロセスに送信する必要があります。
こちらもお読みください
- NRPE プラグインをインストールし、リモート Linux ホストを監視する
- NSClient++ エージェントをインストールし、リモート Windows ホストを監視する