Icingaをインストールすると、Webインターフェイスを介してシステムを監視できます。デフォルトでは、Icingaがインストールされているローカルマシンの監視に制限されています。リモートのLinuxボックスまたはWindowsボックスを監視する場合は、リモートボックスにNagiosプラグインとNRPEアドオンをインストールする必要があります。プラグインとアドオンをインストールしたら、リモートマシンから情報を収集してWebインターフェイスに表示するようにIcingaサーバーを構成する必要があります。
Icingaをまだインストールしていない場合。 Centos7へのIcingaのインストールの投稿にアクセスしてください。リモートLinuxシステムの監視には6つのステップが含まれます
Icingaリモートホスト:
- ユーザーアカウントの追加
- Nagiosプラグインをダウンロードしてインストールする
- NRPEアドオンをインストールする
- NRPEアドオンの構成
Icingaサーバーホスト:
- Icingaサーバーを構成する
- リモートマシンを監視します。
Icingaリモートホスト:
必要なパッケージをインストールします。
yum install gcc cpp glibc-devel glibc-headers kernel-headers libgomp libmpc mpfr make openssl* xinetd
ユーザーアカウントの追加:
インストールを続行する前に、「icinga」という名前の新しいユーザーを作成し、パスワードを指定します。
useradd icinga
パスワードを設定します。
passwd icinga
Nagiosプラグインをダウンロードしてインストールします:
次のコマンドを使用して、リモートホストにNagiosプラグインをダウンロードします(最新バージョンについては、Nagios Webサイトにアクセスしてください)
cd /tmp wget http://nagios-plugins.org/download/nagios-plugins-2.0.3.tar.gz
Nagiosプラグインのtarballを抽出します。
tar -zxvf /tmp/nagios-plugins-2.0.3.tar.gz cd /tmp/nagios-plugins-2.0.3
プラグインをコンパイルしてインストールします。
./configure --prefix=/usr/local/icinga --with-cgiurl=/icinga/cgi-bin --with-nagios-user=icinga --with-nagios-group=icinga make make install>
リモートホスト上のnagiosプラグインディレクトリの権限を変更します。
chown icinga:icinga /usr/local/icinga/ chown -R icinga:icinga /usr/local/icinga/libexec/
NRPEアドオンをダウンロードしてインストールします:
Nagiosダウンロードページにアクセスして、NRPEアドオンをダウンロードします。
cd /tmp wget http://downloads.sourceforge.net/project/nagios/nrpe-2.x/nrpe-2.15/nrpe-2.15.tar.gz
ダウンロードしたら、tarボールを抽出します。
tar -zxvf /tmp/nrpe-2.15.tar.gz cd /tmp/nrpe-2.15
コンパイルします。
./configure --with-nagios-user=icinga --with-nagios-group=icinga --with-nrpe-group=icinga --with-nrpe-user=icinga --prefix=/usr/local/icinga make all make install-plugin make install-daemon make install-daemon-config make install-xinetd
NRPEアドオンの構成:
NRPEはxinetdデーモンの一部です。NRPE構成ファイルを変更して、Nagiosサーバーからの接続を受け入れ、/ etc / xinetd.d/nrpeを編集します。
vi /etc/xinetd.d/nrpe
以下のようにNagiosサーバーのIPアドレスを追加します。
only_from = 127.0.0.1 192.168.12.151
/ etc/servicesファイルの最後にNRPEポートを追加します。
nrpe 5666/tcp # NRPE
Xinetd.dサービスを再起動します。
systemctl restart xinetd.service
NRPEリスニングを確認します。
netstat -at | grep 5666 tcp6 0 0 :::5666 :::* LISTEN 26780/xinetd
NRPEが機能していることを確認します。
/usr/local/nagios/libexec/check_nrpe -H 127.0.0.1 NRPE v2.15
NRPE構成ファイルの変更:
リモートホストの/usr/local/icinga/etc/nrpe.cfgを変更します。これには、リモートホストのサービスを確認するためのコマンド引数が含まれています。 nrpe.cfgファイルには、リモートサービスをチェックするための基本的なコマンドが含まれています。以下は、CPUのロードと実行中のプロセスをチェックするためのコマンドラインです。監視を有効にするには、サーバーホストのテンプレートファイルにcheck_loadとcheck_total_procsを入力する必要があります。
command[check_load]=/usr/local/nagios/libexec/check_load -w 15,10,5 -c 30,25,20 command[check_total_procs]=/usr/local/nagios/libexec/check_procs -w 150 -c 200
上記のコマンドで、-wは警告を表し、-cはクリティカルアラートを表します。たとえば、ターミナルで2番目のコマンドを実行すると、実行中のプロセスがチェックされます。プロセスが150を超えると警告が表示され、プロセスが200を超えるとクリティカルが報告され、同時にプロセスが150を下回るとOKと表示されます。
/usr/local/icinga/libexec/check_procs -w 150 -c 200 PROCS OK: 17 processes | procs=17;150;200;0;
サーバーで実行されているプロセスは非常に少ないため、テスト目的で警告を15に、クリティカルを150に変更します。これで、要件に応じて警告メッセージが表示されます。
/usr/local/icinga/libexec/check_procs -w 15 -c 200 PROCS WARNING: 17 processes | procs=17;15;200;0;
Icingaサーバーホスト:
Icingaサーバーには、NRPEアドオンとリモートホストのテンプレートがインストールされている必要があります。
NRPEアドオンのインストール:
Nagiosダウンロードページにアクセスして、NRPEアドオンをダウンロードします。
cd /tmp wget http://downloads.sourceforge.net/project/nagios/nrpe-2.x/nrpe-2.15/nrpe-2.15.tar.gz
ダウンロードしたら、tarボールを抽出します。
tar -zxvf /tmp/nrpe-2.15.tar.gz cd /tmp/nrpe-2.15
コンパイルします。
./configure --with-nagios-user=icinga --with-nagios-group=icinga --with-nrpe-group=icinga --with-nrpe-user=icinga --prefix=/usr/local/icinga make all make install-plugin
Nagiosサーバーの構成:
次に、リモートクライアントを監視するようにIcingaサーバーを構成します。check_nrpeプラグインを使用するには、Icingaオブジェクト構成ファイルの1つにコマンド定義を作成する必要があります。コマンド.cfgファイルを編集します。
vi /usr/local/icinga/etc/objects/commands.cfg
次のコマンド定義をファイルに追加します。
# .check_nrpe. command definition define command{ command_name check_nrpe command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -t 30 -c $ARG1$ }
新しい構成ファイル(/usr/local/icinga/etc/objects/remote.cfg)を作成して、ホストとサービスの定義を定義します。次のテンプレートを使用して、要件に応じて変更できます。以下は、CPU負荷、ディスク容量、現在のユーザーを表示するように構成されています。など、
define host{ use linux-server host_name remote.itzgeek.com alias Client 1 address 192.168.12.102 } define hostgroup{ hostgroup_name Linux Client alias Linux Client 1 members remote.itzgeek.com } define service{ use local-service host_name remote.itzgeek.com service_description Root Partition check_command check_nrpe!check_hda1 } define service{ use local-service host_name remote.itzgeek.com service_description Current Users check_command check_nrpe!check_users } define service{ use local-service host_name remote.itzgeek.com service_description Total Processes check_command check_nrpe!check_total_procs } define service{ use local-service host_name remote.itzgeek.com service_description Current Load check_command check_nrpe!check_load }
icinga.cfg構成ファイルに新しいテンプレートを追加して、新しいエントリを読み取れるようにします。
vi /usr/local/icinga/etc/icinga.cfg
以下の行を追加してください。
# Definitions for monitoring the Remote (Linux) host cfg_file=/usr/local/icinga/etc/objects/remote.cfg
icingaサーバーを再起動します。
/etc/init.d/icinga restart
リモートマシンを監視する:
次に、Webインターフェイスにログインして、監視を開始します。次のスクリーンショットは、デフォルトのサービスが利用可能なリモートLinuxサーバーを示しています。
それで全部です。これで、Icingaを使用してリモートマシンを簡単に監視できます。