nagiosの設定は、テキストファイルベースの設定なので、しばらく使っていなかったので忘れてしまいました。
やっぱり、書いておかないとダメですね。ということで覚書です。
/etc/nagios2に設定ファイルが格納されています。ここには、設定の雛形が用意されています。
設定ファイルは、とても自由度が高いのでどう設定したらよいか迷います。また、一度、設定したあとで、設定変更しようと思ったときに、どこに何を設定したか分からなくなってしまいます。
最低限のサーバの死活監視(ping監視)を設定する手順です。
nagios2のインストール
aptでインストールします。
$ sudo apt-get install nagios2 nagios-plugins nagios-images
ブラウザでhttp://サーバ/nagios2にアクセスします。
/etc/nagios2/htpasswd.usersにhtpasswd形式のパスワードファイルがあります。
設定ファイル
/etc/nagios2/nagios.cfgがメインの設定ファイルでnagios全体の設定をします。
nagiosは、起動時に/etc/nagios2/conf.dディレクリ下のファイルを起動時に読み込むので、ここに適切な単位で監視対象のサーバを設定するのがよさそうです。
ファイル | 概要 | 例 | |
hosts.cfg | 監視対象のサーバの名前やIPアドレスを設定 | ||
hostgroups.cfg | hosts.cfgで定義したサーバをグループにまとめる | WebサーバやSSHサーバなどでまとめる | |
services.cfg | hostgroups.cfgで定義したサーバグループごとに監視で使うコマンドを定義や閾値を定義する |
監視対象サーバの追加
監視対象のサーバを追加するには、/etc/nagios2/conf.d/hosts.cfgの設定にhostを追加します。
例えば、サーバ名がserver1、IPアドレスが192.168.0.10のサーバの場合は、下記のようになります。
define host { host_name server1 alias aliasname address 192.168.0.10 use generic-host }
naigosの監視画面には、host_nameに設定した名前が表示されます。
hostgroupを設定する
naigosは、hostgroup単位でサーバを監視します。
例えば、追加したサーバのping監視をする場合には、次のように/etc/nagiso2/conf.d/hostgroups.cfgにhostgroupを追加します。
define hostgroup { hostgroup_name ping-servers alias Pingable servers members server1,gateway }
hostgroup_nameに何を監視しているか分かり易いグループ名を付け、membersにカンマ区切りでhostで設定したhost_nameを追加します。
監視を設定する
hostgroupに対して監視するコマンドを設定します。
pingの監視は、check_pingというプラグインを使います。
$ sudo apt-get install nagios-plugins-basic
下記のように/etc/nagios2/conf.d/services.cfgにserviceを追加します。
define service { hostgroup_name ping-servers service_description PING check_command check_ping!100.0,20%!500.0,60% use generic-service notification_interval 0 ; set > 0 if you want to be renotified }
hostgroup_nameにhostgroups.cfgに設定したhostgroup_nameを設定します。
check_commandに監視ようのコマンドを設定します。
設定をチェックする
設定に間違いがないかチェックします。
$ /usr/sbin/nagios2 -v /etc/nagios2/nagios.cfg Nagios 2.6 Copyright (c) 1999-2006 Ethan Galstad (http://www.nagios.org) Last Modified: 11-27-2006 License: GPL Reading configuration data... ... 中略 ... Total Warnings: 0 Total Errors: 0 Things look okay - No serious problems were detected during the pre-flight check $
nagios2を再起動
下記で設定を再読み込みします。
$ sudo /etc/init.d/nagios2 force-reload
監視状況を確認する
ブラウザでhttp://サーバ/nagios2にアクセスして監視状況を確認します。