2009年9月8日火曜日

nagios 設定、インストール 3

これまで
nagiosのインストール
apacheとの連携まで
行いました。
今度は nagios の設定ファイルを準備します。デフォルトでは/usr/local/nagios/etcにあります。
1.メイン設定ファイル「nagios.cfg」

$cd /usr/local/nagios/etc

サンプル設定ファイルがありますので、それをコピーして使用します。
$cp -p nagios.cfg-sample nagios.cfg
$vi nagios.cfg

変更があった部分のみを書きます。
dependencies.cfg(サービス依存関係の設定)、escalations.cfg(詳細なアラートの通知方法)らしいですが、私は使い方が良く分かりません。色々WEBで調べて、コメントアウトしても問題ないらしいので、分からないところはコメントあうとしておきます。

#cfg_file=/usr/local/nagios/etc/dependencies.cfg #cfg_file=/usr/local/nagios/etc/escalations.cfg

cgi 外部コマンドを利用するので 1 にします。これはデフォルトで1にすれば良いと思います。どうして0なんだろう?
#check_external_commands=0 (デフォルト)
check_external_commands=1

2.cgi設定ファイル 「cgi.cfg」

$cd /usr/local/nagios/etc

サンプル設定ファイルがありますので、それをコピーして使用します。
$cp -p cgi.cfg-sample cgi.cfg
$vi cgi.cfg

変更があった部分のみを書きます。認証部分のみです。apacheの認証設定で「nagiosadmin」ユーザでアクセスするよう設定したので、私は以下のようにしました。
このようにすることで、nagiosのWEB画面で様々なことが出来るようになります。
#authorized_for_system_information=nagiosadmin,theboss,jdoe(デフォルト)
authorized_for_system_information=nagiosadmin
#authorized_for_configuration_information=nagiosadmin,jdoe(デフォルト)
authorized_for_configuration_information=nagiosadmin
#authorized_for_system_commands=nagiosadmin(デフォルト)
authorized_for_system_commands=nagiosadmin
#authorized_for_all_services=nagiosadmin,guest(デフォルト)
authorized_for_all_services=nagiosadmin
#authorized_for_all_hosts=nagiosadmin,guest(デフォルト)
authorized_for_all_hosts=nagiosadmin
#authorized_for_all_service_commands=nagiosadmin(デフォルト)
authorized_for_all_service_commands=nagiosadmin
#authorized_for_all_host_commands=nagiosadmin(デフォルト)
authorized_for_all_host_commands=nagiosadmin


3.resource.cfg(リソース設定)、checkcommands.cfg(コマンド設定)、misccommands.cfg(アラートメールの内容)、timeperiods.cfg(アラートを通知する時間帯)はデフォルトのままでよいので


$cd /usr/local/nagios/etc
サンプル設定ファイルがありますので、それをコピーして使用します。
$cp -p resource.cfg-sample resource.cfg
$cp -p checkcommands.cfg-sample checkcommands.cfg
$cp -p misccommands.cfg-sample misccommands.cfg
$cp -p timeperiods.cfg-sample timeperiods.cfg


4.hostgroups.cfg(ホストグループ設定)ファイルの設定。
私の場合は、DBシステムグループを監視することにしたので、hostgroup_nameを「db-servers」、aliasを「DB Servers」、contact_groupsを「DB-admins」、membersには実際に監視する機器を設定します「DB-WEB」「DB-PG」。5で設定する hosts.cfg のhostnameと一致させる必要があります。

# 'db-servers' host group definitiondefine
hostgroup{
hostgroup_name db-servers
alias DB Servers
contact_groups DB-admins
  members DB-WEB,DB-PG
}

5.hosts.cfgの設定。設定ファイル上にある # Generic host definition template部はtemplateなので、そのままして下さい。その下に今回監視したいホストの情報を書きます。私の場合は、DB-WEBとDB-PGを監視したいので以下のように書きました。ここで注意するのは、host_nameをhostgroups.cfgで設定したホスト名と一致させる必要があります。あと、IPアドレスを正しく設定します。その他はサンプルのままで構わないと思います。

# 'DB-WEB' host definitiondefine
host{
use generic-host ; Name of host template to use
host_name DB-WEB
alias DB WEB Server
address 192.168.xx.xx
check_command check-host-alive
max_check_attempts 10
notification_interval 120
notification_period 24x7
notification_options d,u,r
}
# 'DB-PG' host definitiondefine
host{ use generic-host ; Name of host template to use
host_name DB-PG
alias DB POSTGRES Server
address 192.168.xx.xx
check_command check-host-alive
max_check_attempts 10
notification_interval 120
notification_period 24x7
notification_options d,u,r
}

長くなったので、6以下は次に書きます。

0 件のコメント:

コメントを投稿

What A Wonderful World - ルイ・アームストロング  名曲です。

  きょうは、ルイ・アームストロングの「What A Wonderful World 」です。  コロナ禍時こそ、この歌を聞きたくなりました。  なんて、素晴らしい世界なんだー!   素晴らしい世界は身近なことにあることを教えてくれる曲です。  この曲を知ったきっかけは、予備校時...