Pandora: Documentation ja: Satellite

From Pandora FMS Wiki
Jump to: navigation, search

Pandora FMS ドキュメント一覧に戻る

Contents

1 サテライトサーバ

1.1 概要

サテライトサーバは、ネットワークおよびリモートシステムの監視、検出に利用します。SNMP や ICMP を使ってネットワークの構成要素(ルータ、スイッチなど)や、Windows(WMIを利用)や Linux サーバ(SNMPを利用)を検出することができます。これは通常のサーバではなく、拡張機能をもったブローカーエージェントであるとみなすことができます。Enterprise 版の追加コンポーネントです。これは、特に Pandora ソフトウエアエージェントを使わずに、サーバから直接アクセスできないリモートネットワークを監視するのに便利です。

Esquema-satellite.png

このサーバは、pandora データベースへの接続は必要ありません。エージェントのように tentacle プロトコルを使ってすべての情報を XML フォーマットで送ります。

サテライトサーバは、Windows および Linux で利用できます。インストール手順はそれぞれの場合で若干違う程度です。

このサーバはいくつかのユニークで特徴的な点があります。

  • 非常に高い頻度(500チェック/秒)でネットワークテスト(ICMP、遅延および SNMP v1 および v2)を実行できます。
  • 一定間隔(デフォルトでは300秒)でサーバに情報を送信します。しかし、遅延の計測、ICMP および SNMP 監視はより小さい間隔(例えば30秒)で実行できます。これにより、状態変化を検知したときに素早く Pandora サーバへ通知することができます。モジュールのタイプが generic_proc でない(例えばネットワークインタフェースや一般的なネットワークの接続性)場合は、この状態変化は事前に設定しておく必要があります。
  • データベースへの接続は必要ありません。ブローカーエージェントやエクスポートサーバのように XML フォーマットでファイルをサーバに送信します。
  • SNMP および WMI の自動検出機能があります。(IPアドレスにより)エージェントを検出すると、動的に要素(ネットワークインタフェース、ストレージ)を検出し、自動的に監視を行います。
  • Windows システムでは、ディスクドライブ、CPU、メモリを検出できます。
  • SNMP に応答するシステムでは、インタフェースの状態とそれぞれの入出力トラフィック、システム名を検出することができます。
  • 自動生成されたモジュールは、他のモジュール同様に、コンソールからエージェントの管理で編集することができます。また、他のエージェントと同様に一括操作メニューのサテライトメニューからモジュールを編集することもできます。
  • エージェントは、サテライトサーバのエージェント設定ファイルディレクトリ内のエージェント設定ファイルにより直接作成することができます。

1.1.1 サテライトサーバのキャパシティとパフォーマンス

サテライトサーバのキャパシティをピンポイントで最大化するのは難しく、サーバ全体で何が動作しているかや実行する監視内容に依存します。最も良い場合で、1秒間に 500 の ICMP/SNMP チェックができますが、リモートデバイスの応答時間に大いに依存します(0.5ミリ秒で応答するデバイスと 2秒で応答するデバイスでは異なります)。理想的な条件下では、1台のサーバで 150,000項目の監視ができます。実際の環境では、閉じた LAN 環境でローエンドなハードウエア(Intel i5, 2GZ, 4GB RAM)による 1台のサテライトサーバで、約 50,000モジュールを監視できることを確認しています。

1.2 インストール

サテライトサーバはバイナリにて配布されています。追加のライブラリは必要ありません。Windows と Linux ともに、このサーバの機能は同じです。Windows システムではサービスとしてインストールされ、Linux システムではデーモンとしてインストールされます。設定ファイルと仕様はどちらも同じです。

1.3 Linux システムへのサテライトサーバのインストール

サテライトサーバを含むバイナリをダウンロードしたら、ダウンロードしたファイルのあるディレクトリへ行き、root 権限でファイルを展開します。

Desarchivar.png



satelite_server ディレクトリが作成されるので、そのディレクトリに入ります。

cd satellite_server/

インストールを進める前に、サテライトサーバに必要な fping、nmap、wmic および braa を確認する必要があります。

braa および wmic パッケージのインストーラは含まれています。fping と nmap は個別にインストールする必要があります。

サテライトサーバをインストールするには、次の画像に示す手順を行います。

Instalacion linux.png



完了したら、/etc/pandora 以下にある satelite_server.conf ファイルを編集する必要があります。サテライトサーバを起動するには、次のコマンドを実行します。

sudo /etc/init.d/satellite_serverd start

何らかのエラーが発生した場合は、/var/log 以下の satelite_server.log ファイルを確認してください。

1.4 Windows へのインストール

サテライトサーバは、以下に示す簡単なステップでインストールすることができます。

インストール言語の選択から開始します。(日本語はありません)

English installation1.png


Next をクリックします。

English installation2.png



サテライトサーバをどこにインストールするか選択します。


English installation3.png



WinPCap のインストールが必要です。この時点で WinPCap のインストール画面が表示されます。

Instalación wincap1.png


システム起動時に WinPCap が起動するように設定する必要があります。

Instalación wincap2.png



WinPCap のインストールが完了したら、次の画面が表示されます。

Instalación wincap3.png


ライセンス番号を入力します。

English installation4.png


自動検出タスクのパラメータを設定する必要があります。

English installation5.png


最後にすべての設定を反映させるため、システムの再起動が必要です。

English installation6.png


完了すると、スタートメニューからサテライトサーバを起動できます。

1.4.1 いくつかの Windows バージョンにおける WMI モジュールの実行

Windows のセキュリティ上の理由により、いくつかのバージョンではリモートから WMI クエリを実行できるユーザは限定されています。このような場合は、Administrator ユーザ権限でサテライトサーバのサービスを実行します。

手順は次の通りです。

サービスを開きます。

Instalacion windows7e.png

サービスを右クリックし、プロパティに入ります。

Instalacion windows8e.png

ログオンウインドウで、Administrator 権限のあるアカウント選択し、変更を適用します。

Instalacion windows9e.png

そして、以降の対応を行い、サービスを再起動します。

1.5 設定

すべてのパラメータにおいて、タイムアウト値やいくつかの時間は秒単位で指定する必要があります。例えば、5分は 300 です。

遅延と snmp を使った監視では、状態変化が特別であるということを理解しておくことが重要です。二値(boolean)監視(ポートやマシンの生き死に)では、状態変化は自動で行われます。数値(遅延、各インタフェースのネットワークトラフィック、ディスクの空き、CPU など)では、それぞれのモジュールで定義された閾値に基づいています。

1.5.1 agent_interval xxx

デフォルトで 300 秒(5分)で、5分間隔でエージェントを作成します。この間隔を過ぎるまではサーバに情報が送信されません。より間隔を細かく設定したネットワークサーバによって独立して監視は行われます。

1.5.2 agent_theads xxx

エージェントの XML データファイルを送信するのに利用するスレッドの数です。

1.5.3 xxxxxx_interval xxx

すべての監視(遅延、snmpなど)の間隔です。前回と値が違った場合は、すぐにサーバへ送信されます。値が同じだった場合は、agent_interval に設定された間隔でサーバへ送信されます。これは、状態変化が発生した時のみすぐに通知する場合に便利です。

1.5.4 xxxxx_retries xxx

チェック(遅延、snmp など)のリトライ回数です。

1.5.5 xxxxx_timeout xxx

SNMP、遅延、ping 監視のタイムアウト値(秒単位)です。

1.5.6 xxxxx_block xxx

サーバが監視を一度に実行する項目のブロック数です。値を大きくすると(最大500)能力は上がりますが、遅延が大きくなります。いくつかの場合においては、この値は小さくすることをお勧めします(遅延、ping および snmp)。

1.5.7 xxxxx_threads n

それぞれのタイプの監視実行における割り当てスレッド数です。これは、マシンのキャパシティ(CPU およびメモリ)に依存します。スレッド数を大きくするとマシンに負荷がかかりますが、サテライトサーバの処理速度は高くなります。

1.5.8 log_file /dev/null

サテライトサーバのログファイルです。すぐに大きくなるため、必要が無い場合は /dev/null を指定することをお勧めします。テストする場合やエラーの確認を行う場合に便利です。

1.5.9 recon_task xxxxx[,yyyy]

自動検出のための IP アドレスおよびネットワークアドレスです。以下に例を示します。

192.168.50.0/24,10.0.1.0/22,192.168.70.64/26

1.5.10 server_ip <ip>

tentacle プロトコル(41121/tcp)を使って情報を送信する先の Pandora FMS サーバの IP アドレスです。

1.5.11 recon_mode [icmp,snmp,wmi]

自動検出モードです。システムは、自動検出に次のプロトコルを利用します。

  • ICMP: ホストの応答と遅延時間のみを確認します。
  • SNMP: 可能であれば全インタフェース、トラフィック、状態などを検出します。

SNMP v1 および 2 のみ利用可能です。

  • WMI: 上記と似ていますが、CPU 利用率、メモリおよびディスクドライブを表示します。


1.5.12 recon_community aaa,bbb,ccc...

自動検出モードで利用する SNMP コミュニティの一覧です。

1.5.13 wmi_auth Administrator%password

User%Password の一覧です。例えば、admin%1234,super%qwerty です。この一覧は自動検出モードで利用されます。

1.5.14 agent_conf_dir <path to agente conf dir>

このディレクトリに、サテライトサーバが検出したエージェントの設定ファイルが保存されます。

1.5.15 group <grupo>

サテライトサーバで作成されたエージェントのデフォルトグループの指定です。

1.5.16 daemon 1|0

1 に設定すると、デーモンとしてバックグラウンドで起動します(デフォルト)。

1.5.17 hostfile <file>

ネットワークスキャンの別手法です。各行にアドレスを書いたファイルを用意します。ホスト名も含めることができます。

1.5.18 pandora_license xxxxxxx

設定 -> ライセンスメニューで表示される Pandora FMS サーバのライセンス番号を入力する必要があります。エージェント数の合計が pandora コンソールで確認されます。

1.5.19 remote_config 1|0

自動検出されたエージェントをコンソールからリモートで設定できるようにするかを設定します。それ自身のリモート設定も有効にします。

1.5.20 temporal_min_size

テンポラリディレクトリのパーティション空き容量がここで指定したサイズ (MB 単位) より小さくなったら、データパケットの生成を停止します。何らかの理由でサーバへの接続が長時間切れた場合に、ディスクがいっぱいになるのを避けます。

1.5.21 xml_buffer

デフォルトは 0 です。1 に設定すると、送信できなかった XML データファイルを保存します。

セキュアな環境の UNIX で XML バッファを有効にしたい場合は、テンポラリディレクトリの変更を検討してください。'/tmp' は誰もが書き込めます。

1.5.22 snmp_version

デフォルトで利用する SNMP バージョンです(1 および 2c のみ対応しています)。デフォルトは 1 です。

Template warning.png

この設定を変更すると、いくつかのモジュールは動作しなくなります。

 


1.5.23 braa <path to braa>

braa バイナリのパスです。(デフォルトは /usr/bin/braa)

1.5.24 fping <path to fping>

fping バイナリのパスです。(デフォルトは /usr/sbin/fping)

1.5.25 latency_packets xxx

遅延要求ごとに送信する ICMP パケット数です。

1.5.26 nmap <path to nmap>

nmap バイナリのパスです。(デフォルトは /usr/bin/nmap)

1.5.27 nmap_timing_template xxx

1 から 5 でnmap がどの程度の精度で動作するかを指定します。1 は遅いですが信頼性が高く、5 は早いですが信頼性は低くなります。デフォルトは 2 です。

1.5.28 ping_packets xxx

ping リクエストごとに送信する ICMP パケット数です。

1.5.29 recon_enabled 0|1

動検出を有効化(1)または無効化(0)する設定です。

1.5.30 recon_timing_template xxx

nmap_timing_template のように、サテライトサーバおよび自動検出サーバのネットワーク検索に適用されます。デフォルトは 3 です。

1.5.31 server_port xxxxx

tentacle サーバのポートです。

1.5.32 セカンダリサーバ

特殊な設定パラメータとしては、セカンダリサーバの設定があります。これにより、データを送信する別のサーバを設定します。セカンダリサーバモードには、二種類の動作があります。

  • on_error: プライマリサーバにデータを送信出来なかった場合のみ、セカンダリサーバにデータを送信します。
  • always: プライマリサーバにデータが送信できるかどうかに関わらず、常にセカンダリサーバにもデータを送信します。

設定例:

secondary_server_ip     192.168.1.123
secondary_server_path   /var/spool/pandora/data_in
secondary_mode          on_error
secondary_transfer_mode tentacle
secondary_server_port   41121

1.5.33 snmp_verify 0|1

braa でのリアルタイムの実行を妨げる SNMPv1 モジュールの確認を有効化(1)または無効化(0)します。これらのモジュールは、実行が停止されます。

1.5.34 snmp2_verify 0|1

braa でのリアルタイムの実行を妨げる SNMPv2 モジュールの確認を有効化(1)または無効化(0)します。これらのモジュールは、実行が停止されます。

Template warning.png

SNMP バージョン 2 モジュールの確認は非常に遅くなる可能性があります。

 


1.5.35 startup_delay xxx

初回の XML データファイル送信を startup_delay に指定した秒間遅らせます。

1.5.36 temporal /tmp

XML ファイルが生成されるテンポラリディレクトリ。

1.5.37 tentacle_client <path to tentacle_client>

tentacle クライアントのフルパスです。(デフォルトは /usr/bin/tentacle_client)

1.5.38 wmi_client <path to wmic>

WMI クライアントバイナリのフルパスです。(デフォルトは /usr/bin/wmic)

1.5.39 snmp_blacklist <path to the blacklist>

SNMP ブラックリストファイルのパスです。(デフォルトは /etc/pandora/satelite_server.blacklist)

1.5.40 add_host <IP address> [agent name] (バージョン >= 6.0)

監視対象エージェントの一覧にホストを追加します。IP アドレスの後にエージェント名を指定できます。1行に一ホストで複数のホストを追加できます。 例:

add host 192.168.0.1
add host 192.168.0.2 localhost.localdomain

1.5.41 ignore_host <agent name> (バージョン >= 6.0)

自動検出タスクで見つかったものを含めて、監視対象エージェントの一覧から指定のホストを削除します。ホストはエージェント名で指定する必要があります。1行に一ホストで複数のホストを除外できます。 例:

ignore host 192.168.0.1
ignore host localhost.localdomain

1.5.42 keepalive xxx (バージョン >= 6.0)

ここで設定された秒数ごとに、サテライトサーバは Pandora Server に接続して状態を報告し、(ソフトウェアエージェントおよびサテライトサーバ自身の)リモート設定による更新が無いかを確認します。デフォルトは 30 秒です。

1.5.43 credential_pass xxx (バージョン > 6.0)

credential box に記述したパスワードの暗号化に使ったパスワードを指定します。コンソールで定義されているパスワードに一致しなければなりません。デフォルトではホスト名が使われます。

1.5.44 timeout_bin <path to timeout> (バージョン > 6.0SP3)

定義すると、tentacle クライアントを呼び出すときにタイムアウトコマンド(通常は /usr/bin/timeout)が使われます。

1.5.45 timeout_seconds xxx (バージョン > 6.0SP3)

タイムアウトコマンドのタイムアウト秒数です。timeout_bin が設定されている必要があります。

1.5.46 proxy_traps_to <address[:port]> (バージョン > 6.0SP3)

サテライトサーバで受信した SNMP トラップを、指定のアドレス(およびポート)にプロキシします。デフォルトでは 162番ポートが利用されます。

1.5.47 proxy_tentacle_to <address[:port]> (バージョン > 6.0SP3)

サテライトサーバで受信した Tentacle クライアントリクエストを指定のアドレス(およびポート)にプロキシします。デフォルトでは 41121番ポートが利用されます。

1.5.48 dynamic_inc 0|1 (バージョン > 6.0SP4)

1 に設定すると、リモートエージェント設定の動作を妨げないように、動的に自動検出したモジュール(SNMP、WMI...)を別のファイルに移動します。

1.5.49 verbosity <0-10> (バージョン > 7.0OUM204)

ログレベル 0(最も少ない) から 10(最も多い)。

1.6 個別設定 (エージェントごと)

自動検出モジュールに加えて、ソフトウエアエージェントのモジュールの似たような書式で TCP, SNMP, WMI のすべての種類の監視を追加することができます。

Template warning.png

OID はドットから始まっていることを確認してください。そうでないと SNMP モジュールが動作しません。

 


インタフェースのステータスです(SNMP)。サテライトサーバはそれぞれのインタフェースを自動検出します。

module_begin
module_name if eth1 OperStatus
module_description IP address N/A. Description: The current operational state of the interface. The testing(3) state indicates that no operational packets can be passed.
module_type remote_snmp_string
module_snmp 192.168.70.225
module_oid .1.3.6.1.2.1.2.2.1.8.3
module_community artica06
module_end

モジュールで SNMP バージョン 2c を使うには、次の行を追加します。

module_version 2c

モジュールで SNMP バージョン 1 を使うには、次の行を追加します。

module_version 1

例:

module_begin
module_name if eth1 OperStatus
module_description IP address N/A. Description: The current operational state of the interface. The testing(3) state indicates that no operational packets can be passed.
module_type remote_snmp_string
module_snmp 192.168.70.225
module_version 2c
module_oid .1.3.6.1.2.1.2.2.1.8.3
module_community artica06
module_end

マシンへの応答確認です(PINGの利用)。

module_begin
module_name ping
module_type generic_data
module_ping 192.168.70.225
module_end

一般的な SNMP 監視です。この場合、サーバはそれぞれのインタフェースのトラフィックを指定した名前で自動的に展開します。

module_name if eth0 OutOctets
module_description The total number of octets transmitted out of the interface, including framing characters.
module_type remote_snmp_inc
module_snmp 192.168.70.225
module_oid .1.3.6.1.2.1.2.2.1.16.2
module_community artica06
module_end

WMI による CPU 状態確認(パーセント)。

module_begin
module_name CPU
module_type generic_data
module_wmicpu 192.168.30.3
module_wmiauth admin%none
module_end

WMI によるメモリ空き容量確認(パーセント)。

module_begin
module_name FreeMemory
module_type generic_data
module_wmimem 192.168.30.3
module_wmiauth admin%none
module_end

WMI クエリ。

module_begin
module_name GenericWMI
module_type generic_data_string
module_wmi 192.168.30.3
module_wmiquery SELECT Name FROM Win32_ComputerSystem
module_wmiauth admin%none
module_end


SSH コマンド (バージョン > 6.0)。

module_begin
module_name GenericSSH
module_type generic_data
module_ssh 192.168.30.3
module_command ls /tmp | wc -l
module_end

閾値を設定するには、次のようなモジュール設定(module_min_warning, module_min_critical)を行い、コンソールでモジュール設定を行う必要があります。

module_begin
module_name latency
module_type generic_data
module_latency 192.168.70.225
module_min_warning 80
module_min_critical 120
module_end

手動で実行モジュールを作成することができます。サテライトサーバが実行するスクリプトやコマンドは、事前に作成してサーバに置いておく必要があります。module_exec の利用は、サテライトサーバの実行速度を低下させる可能性があります。

module_begin
module_name Sample_Remote_Exec
module_type generic_data
module_exec /usr/share/test/test.sh 192.168.50.20
module_min_warning 90
module_min_critical 95
module_end

1.7 Credential Box (バージョン > 6.0)

鍵認証が正しく設定されていない場合、sshモジュールはユーザとパスワードによる認証を必要とします。その認証情報は、サテライトサーバの設定ファイル satellite_server.conf に次のようなフォーマットで設定します:

credential_box network/mask,username,password
credential_box network/mask,username,[[encrypted password]]

例:

credential_box 192.168.1.1/32,user,pass1
credential_box 192.168.1.0/24,user,pass2

credential_box で記述された認証情報は、ネットワークマスクの適用範囲が狭いものから順に検索します。

blowfishのECBモードで暗号化したパスワードも記述できます。暗号化されたパスワードは、文字列を二重の括弧([[ ]])で囲います。暗号化に利用するパスワードは credential_pass に記述してください (デフォルトではホスト名が使われます):

credential_box 192.168.1.0/24,user,[[80b51b60786b3de2]]

1.8 コンソールでの全エージェントの表示

サテライトサーバの設定が正しくできると、エージェント詳細で次のような画面を見ることができます。

Selección 146.png


全マシンで ICMP モジュール(PING および遅延)が作成されていますが、いくつかのマシンでは SNMP および WMI モジュールもあります。

WMI が有効なマシンでは、次のようなモジュールが生成されます。

Modulos.png


SNMP が有効なマシンでは、次のようなモジュールが生成されます。

Modulos1.png


Pandora コンソールの一括操作メニューでは、サテライトサーバ用のメニューがあります。エージェントおよびモジュールを一括して編集したり削除したりできます。

Operación massivas.png

1.9 SNMP ブラックリスト

大きなネットワークで不正なデータを返す SNMP モジュールがある場合、サテライトサーバのパフォーマンスに影響したり、多くのモジュールが不明状態になります。サテライトサーバは、実行を行わない SNMP モジュールのブラックリストを読み込むことができます。

新たなブラックリストを作成するには、/etc/pandora/satellite_server.conf を編集し、snmp_blacklist が設定されているか確認します。そして、次のように実行します。

   satellite_server -v /etc/pandora/satellite_server.conf

そして、サテライトサーバを再起動します。ブラックリストは、必要に応じて再生成できます。

ブラックリストファイルのフォーマットは次の通りです。

agent:OID
agent:OID
...

例:

192.168.0.1:1.3.6.1.4.1.9.9.27 
192.168.0.2:1.3.6.1.4.1.9.9.27