ウェブサイト検索

Icinga: RHEL/CentOS 7.0 用の次世代オープンソース「Linux サーバー監視」ツール


Icinga は、Nagios フォークから派生した最新のオープンソース監視ツールで、現在は Icinga 1Icinga という 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

  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 リポジトリがシステムに追加された後、次のコマンドを実行して、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 メイン プロセスに送信する必要があります。

こちらもお読みください

  1. NRPE プラグインをインストールし、リモート Linux ホストを監視する
  2. NSClient++ エージェントをインストールし、リモート Windows ホストを監視する