NSClientのインストール


(1)解凍
このパッケージはWindowsマシン用であり、普段使っているWindows XPをインストールしたマシンをターゲットのリモートホストにするためのものであり、NSClient Official site より最新バー ジョンの
NSClient 1.0.7.1をダウンロードして解凍する。
 
その中に次の4つのフォルダがあり、その内容は下記のとおりです。

UnixSource Nagiosで使う check_nt 用のソースファイルがはいっている。
LinuxBin Nagiosで使う check_nt が入っている。
NTSource Windows用のソース(なんでしょうか。。。(~_~;) )
Win_2k_XP_Bin
監視対象となるWindowsXP,2000マシンで使う実行 ファイルやdllファイルが入っている。
pNSClient.exe、pdh.dll、psapi.dll、counters.defs
Win_NT4_Bin
NT用の実行ファイルやdllが入っている。



(2)インストー ル

構成としては、左図のように pNSClient.exe をリモートホスト上で実行し、check_nt をNagiosを稼動させているホスト上で実行することになる。

Windowsマシンでのインストールは、
コマンドプロンプトで pNSClient /install とすればサービスとして組み込まれる。
アンインストールは、
pNSClient /uninstall

続いて、「コントロールパネル」−「管理ツール」−「サービス」の順に開く。

この『サービス(ローカル)」の中に「NetSaint NT Agent」というサービスがあるので、これを選択し「サービスの開始」をクリックすれば、準備完了。
Nagios側は、
解凍ファイルの中にある check_nt を /usr/local/nagios/libexec にコピー。


(3) Nagios側(ローカルホスト)の設定
以下のコマンドを /usr/local/nagios/etc/checkcommands.cfg ファイルに定義します。

# 'check_nt_memuse' command definition
define command{
        command_name    check_nt_memuse
        command_line    $USER1$/check_nt -H $HOSTADDRESS$ -p 1248 -v MEMUSE -w $
ARG1$ -c $ARG2$
        }
# 'check_nt_disk' command definition
define command{
        command_name    check_nt_disk
        command_line    $USER1$/check_nt -H $HOSTADDRESS$ -p 1248 -v USEDDISKSPA
CE -l $ARG1$ -w $ARG2$ -c $ARG3$
        }
# 'check_nt_cpuload'command definition
define command{
        command_name    check_nt_cpuload
        command_line   
$USER1$/check_nt -H $HOSTADDRESS$ -p 1248 -v CPULOAD -l $ARG1$
        }

# 'check_nt_uptime'command definition
define command{
        command_name    check_nt_cpuload
        command_line   
$USER1$/check_nt -H $HOSTADDRESS$ -p 1248 -v UPTIME
 
        }
# 'check_nt_process'command definition
define command{
        command_name    check_nt_process
        command_line   
$USER1$/check_nt -H $HOSTADDRESS$ -p 1248 -v PROCSTATE -l $ARG1$
          }
 
# 'check_nt_service'command definition
define command{
        command_name    check_nt_service
        command_line   
$USER1$/check_nt -H $HOSTADDRESS$ -p 1248 -v SERVICESTATE -l $ARG1$
 
          }
  


それぞれのオプション、引数の意味は、
    /usr/local/nagios/libexex/check_nt --help
で調べてみてください。

最後に、/usr/local/nagios/etc/services.cfgターゲットとなるリモートホストに対して実行するプラグインを定義する。

# Service definition
define service{
        use                             generic-service         ; Name of service template to use

        host_name                       test
        service_description             DISKCHECK
        is_volatile                       0
        check_period                     24x7
        max_check_attempts           5
        normal_check_interval          30
        retry_check_interval            1
        contact_groups                  nt-admins
        notification_interval            120
        notification_period              24x7
        notification_options             c,r
        check_command                 check_nt_disk!C!80!90
        }

# Service definition
define service{
        use                             generic-service         ; Name of service template to use

        host_name                       test
        service_description            Memory Usage
        is_volatile                       0
        check_period                     24x7
        max_check_attempts           5
        normal_check_interval          30
        retry_check_interval            1
        contact_groups                  nt-admins
        notification_interval            120
        notification_period              24x7
        notification_options             c,r
        check_command                 check_nt_memuse!80!90
        }

  以上でNagios側の準備もできたことになる。
新しい設定を有効にするためにNagiosを再起動する。

実際には、稼動しているNagiosを一旦ストップし、起動テストを行ってから、スタートべきである。

前 ページ