ローカルおよびリモートモジュールの作成方法

ローカルおよびリモートモジュールの作成方法

ローカルとリモートモジュールの違い

ローカルモジュール は、モニタ対象マシンにインストールされたソフトウエアエージェントで実行されるコマンドやスクリプトです。ソフトウエアエージェントは、コマンドやスクリプトを実行し、その結果をモニタリング結果として Pandora FMS サーバへ送信」します。

リモートモジュール は、ソフトウエアエージェントがインストールされていないマシンに対してリモートからモニタするために Pandora サーバで実行されるコマンドです。このモジュールが実行されると、サーバはリモートの問い合わせを実行し、出力をモニタリング結果として扱います。

ローカルモジュール

2種類のローカルモジュールがあります。

  • ソフトウエアエージェントに事前定義されているもの
  • 一般的なコマンド

一般モジュール は、情報を取得しモニタリング結果として単一の値を返す、システムのコマンド、スクリプト、その他プログラムです。このモジュールは、module_exec パラメータを使って実行されます。

一般モジュールに加えて、Pandora FMS のソフトウエアエージェントには、簡単に情報を取得できる 事前定義モジュール があります。事前定義モジュールは、CPU使用率、メモリ使用率、ディスク使用率、logパーサなどです。

ローカルモジュールの作成方法

ローカルモジュールは、Pandora FMS ソフトウエアエージェントの設定ファイル内で定義します。

一般モジュールの定義例は次の通りです。

module_begin
module_name proctotal
module_type generic_data
module_exec ps -A | tail --lines=+5 | wc -l
module_description Total processes
module_end

このモジュールは、システムで動作しているプロセスの数を返します。事前定義モジュールの例は次の通りです。

 module_begin
 module_name CPUUse
 module_type generic_data
 module_cpuusage all
 module_description CPU usage
 module_end

このモジュールは、システムの全体の CPU 使用率を返します。

ソフトウエアエージェントが Pandora FMS サーバへ情報を送信すると、エージェント内の全てのローカルモジュールは次のように見えます。

ソフトウエアエージェントによるモニタリングに関するより詳細な情報および例は、ソフトウエアエージェントを使ったモニタリングを参照してください。ソフトウエアエージェントの事前定義モジュールに関する詳細は、モジュール定義にあります。

リモートモジュール

リモートモジュールには、次の種類があります。

  • ネットワークモジュール:
    • ICMP
    • TCP
    • SNMP
  • WMI
  • プラグイン
  • Webチェック

ネットワークモジュール は、ICMP, TCP, SNMP といったネットワークプロトコルでチェックを実行します。モジュール作成時にこれらのどれを使ったチェックをするか定義します。例えば、マシンのポートが開いているかどうかをモニタしたい場合は、TCP boolean data モジュールを選択します。ポートが開いていれば 1 を返し、そうでなければ 0 を返します。

WMIモジュール は、Windows マシンに対して WMI プロトコルを用いてリモートからクエリを実行できるモジュールです。

プラグインモジュール は、ユーザが作成した監視スクリプトを実行することができるモジュールです。どんな処理でも実行できます。ただし、唯一の条件として、プラグインは単一の値を返す必要があります。プラグインは、リモートから実行し処理ができるように作ります。例えば、ウェブからの情報取得であれば、どの情報を返すかを考える必要があります。

Webチェック は、ウェブの遷移監視を実現するモジュールです。ユーザがウェブサイトを閲覧するときのような動きを再現します。

リモートモジュールの作成方法

エージェント管理画面のモジュールメニューでリモートモジュールを作成できます。以下に 80番ポートが開いているかどうかをチェックするリモートモジュールを作成する例を示します。

異なるリモートモジュールがデータを収集すると、次のようにリモートモジュールの種類に応じて Pandora コンソールには異なるアイコンで表示されます。

リモートモジュールについての詳細および設定方法は、リモートモニタリングを参照してください。