ウェブサイト検索

Icinga:RHEL/CentOS 7.0用の次世代オープンソース「Linuxサーバーモニタリング」ツール


Icinga<&47;b>は、Nagios<&47;b>のフォークから派生した現代のオープンソース監視ツールで、現在はIcinga 1<&47;b>とIcinga 2<&47;b>の2つの並行ブランチがあります。このツールは、Nagiosプラグインやアドオン、さらには構成ファイルを使用してネットワークサービスやホストをチェックおよび監視するため、Nagiosとは異ならないが、新しいウェブインターフェース、報告機能、簡単なアドオン開発においていくつかの違いが見られます。

このトピックでは、Icinga 1<&47;b> モニタリングツールの基本的なインストールに焦点を当て、CentOS<&47;b> または RHEL 7<&47;b> において、RepoForge<&47;b>(以前はRPMforgeとして知られていた)リポジトリを使用してCentOS 6にインストールし、Apache Webサーバーによって提供される従来のWebインターフェースと、システムにインストールされるNagiosプラグインを使用します。

関連記事<&47;b>: RHEL&47;CentOSにNagios監視ツールをインストールする

要件

MySQLとPhpMyAdminなしで、これらのPHPモジュールを含むRHEL/CentOS 7.0の基本的なLAMPインストール: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<&47;b>リポジトリを追加します。

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の基本インストールを開始します。

# yum install icinga icinga-doc

3. 次のステップは、icinga-gui<&47;b>パッケージによって提供されるIcingaウェブインターフェースをインストールしようとすることです。現時点では、このパッケージはCentOS&47;RHEL 7にいくつかの未解決の問題があり、トランザクションチェックエラーが発生する可能性がありますが、パッケージのインストールを試みることは自由です。問題が解決されているかもしれません。

それでも、以下の画像と同じエラーがあなたのマシンで発生する場合は、Icingaウェブインターフェースをインストールできるように、以下で詳述するアプローチを使用してください。

# yum install icinga-gui

4. ウェブインターフェースを提供するicinga-gui<&47;b>パッケージをインストールする手順は次のとおりです。まず、wget<&47;b>コマンドを使用して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.</strong> wgetがパッケージのダウンロードを終えたら、icinga-gui</b>という名前のディレクトリを作成します(希望する場合は他の名前を選んでも構いません)。icinga-gui</b> RPMバイナリをそのフォルダーに移動し、フォルダーに入って次の一連のコマンドを実行してRPMパッケージの内容を抽出します。

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

6. 抽出されたicinga-gui<&47;b>パッケージを取得したら、ls<&47;b>コマンドを使用してフォルダーの内容を視覚化します。結果として3つの新しいディレクトリetc<&47;b>、usr<&47;b>、var<&47;b>が表示されるはずです。まず、システムのルートファイルシステムレイアウトにこれら3つのディレクトリを再帰的にコピーする操作を実行します。

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

ステップ2:IcingaのApache設定ファイルとシステム権限を変更する

この記事の導入部で示されているように、Icinga Webインターフェースを実行するには、Apache HTTPサーバーとPHPがインストールされている必要があります。

上記の手順を完了した後、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<&47;b>コマンドを実行してSELinux<&47;b>セキュリティメカニズムを無効にし、&47;etc&47;selinux&47;config<&47;b>ファイルを編集して変更を永続化し、SELINUXコンテキストをenforcing<&47;b>からdisabled<&47;b>に変更してください。

# 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ウェブインターフェースにアクセスする

11. Icingaを使用して、HTTP、IMAP、POP3、SSH、DNS、ICMP pingなど、インターネットやLANからアクセス可能な多くの外部サービスをホストで監視を開始するには、Nagios Plugins<&47;b>パッケージをEPEL<&47;b>リポジトリからインストールする必要があります。

# 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:&47;&47;system_IP&47;icinga&47;<&47;b> にアクセスします。ユーザー名に icingaadmin<&47;b> を使用し、以前に変更したパスワードを入力すると、ローカルホストのシステムステータスが表示されます。

これで終わりです!これで、クラシックなウェブインターフェース(Nagiosのような)を持つIcingaの基本がシステムにインストールされ、実行されています。Nagiosプラグインを使用して、&47;etc&47;icinga&47;<&47;b>パスにあるIcingaの設定ファイルを編集することで、新しいホストや外部サービスを追加して監視を開始できます。リモートホスト上の内部サービスを監視する必要がある場合は、NRPE、NSClient++、SNMPのようなエージェントをリモートホストにインストールしてデータを収集し、Icingaのメインプロセスに送信する必要があります。

関連記事</b>

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

関連記事: