目次

サテライトサーバによる分散監視

概要

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

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

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

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

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

バージョン 759 NG 以降

  • バージョン 759NG 以降、サテライトサーバと Enterprise ネットワークサーバの両方のすべての高度な機能において IPv6 をサポートしています。以前は IPv4 でのみサポートされていた高性能なコードが IPv6 にも適用されるようになり、既存のポーリング機能が強化されました。

キャパシティ

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

障害状態の監視項目が多いとパフォーマンスに影響します。 障害状態の監視項目ごとに タイムアウト が 1つしかないため、 タイムアウト 値が考慮されている必要があります。障害状態のモジュールが 1000 で タイムアウト が 4秒に設定されている場合、1つのスレッドですべてのチェックを実行するには 4000秒かかります。

インストール

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

Linux 版のサテライトサーバは、このドキュメントで指定している外部パッケージへの依存があります。

オンラインインストールツール


Enterprise 版これは Pandora FMS の特別な機能です。 使用するには Enterprise ライセンスが必要です。 いずれの場合も、必須のインストールパラメータは Pandora FMS Enterprise サーバの IP アドレスまたは FQDN です。 ライセンスに関しては、 こちら までお問合せください。

このツールは、Rocky Linux 8.x、AlmaLinux 8.x、および RHEL8.x に対応しています。

オンラインインストールツール利用の前提条件:

  • インターネットアクセスできること。
  • curl がインストールされていること。(ほとんどのディストリビューションではデフォルトでインストールされています)
  • 最低限の ハードウエア要件 を満たすこと。
  • root ユーザ権限を持っていること。
  • 対応している OS であること。
  • RHEL 8 を使用する場合は、事前にライセンスを有効化し、標準リポジトリをサブスクライブしていること。

オンラインインストールツールを使用するには、root 管理者ユーザでコマンドラインにアクセスし、次のコマンドを実行します。

export PANDORA_SERVER_IP='<PandoraServer IP or FQDN>' && curl -Ls https://pfms.me/satellite-ent-deploy| bash

オンラインインストールツールを使ったカスタムインストール:

  • PANDORA_SERVER_IP: サテライトサーバーが接続する Pandora FMS Enterprise サーバの IP アドレスまたは FQDN。必須パラメータ。
  • TZ: サテライトサーバのタイムゾーン。オプションパラメータ。
  • SATELLITE_SERVER_PACKAGE: サテライトサーバインストール tarball パッケージのカスタム URL。オプションパラメータ。
  • SATELLITE_KEY: 自動的に有効化するためのサテライトサーバライセンス。オプションパラメータ。
  • REMOTE_CONFIG: リモート設定。オプションパラメータ。デフォルトでは有効化されています(値 1)。
  • INSTALL_AGENT: ソフトウエアエージェント(すべての エージェントのオンラインインストーラ の設定変数を利用できます)をインストールするオプションパラメータ。デフォルトでは有効化されています(値 1)。
  • VMWARE_DEPENDENCIES: VMware® プラグインをインストールするオプションです。デフォルトでは無効化されています(0)。
  • ORACLE_DEPENDENCIES: Oracle® プラグインをインストールするオプションです。デフォルトでは無効化されています(0)。
  • MSSQL_DEPENDENCIES: MS SQL Server® プラグインをインストールするオプションです。デフォルトでは無効化されています(0)。
  • SKIP_KERNEL_OPTIMIZATIONS: kernel の最適化を行わないオプションです。デフォルトでは無効化されています(0)。

例:

env TZ='Europe/Madrid' \
SATELLITE_KEY='SOPORTEDEV00RS0REB3M2T7ZHISO51IIQH52JISJ47VGHIRM...'\
  PANDORA_SERVER_IP='192.168.10.10' \
  REMOTE_CONFIG=1 \
  INSTALL_AGENT=1 \
  VMWARE_DEPENDENCIES=1 \
  ORACLE_DEPENDENCIES=1 \
  MSSQL_DEPENDENCIES=1 \
  SKIP_KERNEL_OPTIMIZATIONS=0 \
sh -c "$(curl -fsSL https://pfms.me/satellite-ent-deploy)"

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

推奨 GNU/Linux OS は RedHat Enterprise (RHEL) 8 / Rocky Linux 8 です。

インストールを行う前に、サテライトサーバの主な依存関係は次の通りです: Perl, Braa, Wmic (バージョン 761 以前) または PandoraWMIC (バージョン 762 以降), Fping, Nmap および libnsl

以前のバージョンの OS を利用している場合は、dnf の代わりに yum を利用してください。

次のコマンドで Perl をインストールします。

dnf install perl

インストーラに、依存する braa および wmic/PandoraWMIC は含まれています。fping および nmap は先に EPEL を設定し、個別にインストールする必要があります。以下のリンクを確認してください。

https://docs.fedoraproject.org/en-US/epel/#_quickstart

リポジトリの設定ができたら、以下を実行します。

dnf install fping nmap

最後に、依存関係で libnsl をインストールしていることを確認します。

dnf install libnsl

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

tar -xvzf pandorafms_satellite_server_X.XNG.XXX_x86_64.tar.gz

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

cd satellite_server/

サテライトサーバをインストールするには、インストールコマンドを実行します。

./satellite_server_installer --install

完了したら、以下の satelite_server.conf を編集します。

/etc/pandora/satellite_server.conf

761 より前のバージョンでは、ライセンスは pandora_license オプションに手動で入力する必要があります。テキストエディタ VIM などを用いて、pandora_license トークンを探してコメントを外し、Pandora FMS Enterprise ライセンスを入力します。

server_ip トークンを検索し、サテライトサーバが接続する Pandora FMS Enterprise サーバの IP アドレスまたはドメインを指定します。

ファイルを保存したのち、以下を実行してサテライトサーバを実行します。

sudo /etc/init.d/satellite_serverd start

何らかのエラーが発生した場合は、次のログファイルを確認してください。

/var/log/satellite_server.log

Windows へのインストール

デジタル署名されたインストーラ(バージョン 762 およびそれ以上)を実行し、Yes をクリックします。

インストール言語を選択します。(日本語はありません)

Next をクリックします。

プログラムをインストールする場所を選択します。

WinPCap のインストールが必要です。インストールウィンドウは、インストールプロセスの次のステップで表示されます。

システムの起動時に起動するように WinPCap を設定します。

WinPCap のインストールが完了すると、次のウィンドウが表示されます。

Pandora FMS ライセンス番号を入力して、インストールを続行します。

次に、データ送信先の Pandora FMS サーバアドレスを設定します。 サテライトサーバーのネットワーク自動検出ルールを定義します。

すべての変更が適用されるように、マシンを再起動します。

処理が完了したら、MS Windows® の [スタート] メニューから Pandora FMS サテライトサーバを起動および停止します。


MS Windows のバージョンに応じて、これらのライブラリのいくつかをインストールする必要があります:

Microsoft Visual C++ Redistributable (最新のサポート版):

  • Visual Studio 2015, 2017, 2019, および 2022.
  • Visual Studio 2013 (VC++ 12.0).
  • Visual Studio 2012 (VC++ 11.0) Update 4.
  • Visual Studio 2010 (VC++ 10.0) SP1 (サポートされなくなっています).
  • Visual Studio 2008 (VC++ 9.0) SP1 (サポートされなくなっています).

32 ビット(X86)、64 ビット(X64)、および ARM64 プロセッサ用いずれも、以下のリンクから入手できます。

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

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

手順は次の通りです。

サービスを開きます。

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

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

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

設定

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

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

agent_interval xxx

agent_interval xxx

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

agent_theads xxx

agent_threads xxx

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

xxxxxx_interval

xxxxxx_interval xxx

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

xxxxx_retries

xxxxx_retries xxx

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

xxxxx_timeout

xxxxx_timeout xxx

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

xxxxx_block

xxxxx_block xxx

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

xxxxx_threads

xxxxx_threads n

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

log_file

log_file <ファイルのパス>

サテライトサーバのログファイルです。デフォルトのパスは /var/log/satelite_server.log です。

recon_task xxxxx ,yyyy

recon_task xxxxx[,yyyy]

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

192.168.50.0/24,10.0.1.0/22,192.168.70.64/26

server_ip

server_ip <IP>

情報を送信する先の Pandora FMS サーバの IP アドレスまたは名前です。tentacle プロトコルを使うため、そのポート番号(41121/tcp)でアクセスできる必要があります。

recon_mode

recon_mode <自動検出モード>

自動検出モードです。<自動検出モード> には、次のプロトコルを指定できます。

  • icmp: ホストの応答と遅延時間のみを確認します。
  • snmp: SNMP(v1 および v2 のみ)で通信できる場合、すべてのインターフェイスを検索し、すべてのインターフェイスからトラフィックを取得します。また、動作ステータス、デバイス名、場所も取得します。設定ファイルで定義されているさまざまなコミュニティを試して接続します。
  • wmi: 上記と似ていますが、CPU 利用率、メモリおよびディスクドライブ(存在するのもすべて)を表示します。

recon_community

recon_community <aaa>,<bbb>,<ccc>...

SNMP の自動検出で利用する SNMP コミュニティのカンマ区切りの一覧です。SNMP 探索でこのリストを使用します。見つかった IP ごとに、これらのコミュニティのいずれかに応答するかどうかを確認します。

wmi_auth

wmi_auth Administrator%password[,user%pass]

User%Password の一覧です。例えば、admin%1234,super%qwerty です。この一覧は WMI の自動検出で利用されます。見つかった IP ごとに、これらの組み合わせのいずれかに応答するかどうかを確認します。

wmi_ntlmv2

wmi_ntlmv2 [0|1]

It enables (1) or disables (0) authentication with protocol NTLMv2 for WMI.

WMI の NTLMv2 プロトコル による認証を有効化(1)または無効化(0)します。

agent_conf_dir

agent_conf_dir <パス>

<パス> に指定したディレクトリに、サテライトサーバが検出したエージェントの設定ファイルが保存されます。デフォルトでは /etc/pandora/conf です。後述するように、手動で作成することもできます。

group <グループ>

group <グループ名>

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

daemon

daemon [1|0]

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

hostfile

ネットワークスキャンの別手法です。各行にアドレスを書いたファイルを用意します。ファイルには、各行にアドレスを記載します。IP アドレスに続けてホスト名を書くこともでき、エージェントはその名前で作成され、IP はモジュールでのアクセスに使用します(例:193.168.0.2 ホスト名)。正しく動作させるためには、各アドレスに fping を送信可能でなければなりません。

pandora_license xxxxxxx

バージョン 761 以降では、サテライトサーバのライセンスは自動的に設定され、このトークンは廃止となりました。

pandora_license xxxxxxx

Pandora FMS コンソールの セットアップ → ライセンス のメニューで表示される Pandora FMS サーバのライセンス番号を入力する必要があります。

ライセンスを使用するエージェントの合計は、サテライトサーバではなく Pandora FMS サーバで確認されるため、必要な数のサテライトサーバで同じライセンスを使用できます。

remote_config

remote_config [1|0]

デフォルトでは、検出されたエージェントのリモート設定が有効になります。それらを検出した後、コンソールから管理したい場合には必須です。 また、サテライトサーバのリモート設定も有効化します。より詳細については、ソフトウエアエージェントを使ったモニタリング を参照してください。

temporal_min_size

temporal_min_size xxx

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

xml_buffer

xml_buffer [0|1]

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

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

snmp_version

snmp_version xx

デフォルトで利用する SNMP バージョンです(1 および 2c のみ対応しています)。デフォルトは 1 です。SNMP v3を使用する場合は、アクセス権限情報を設定する方法についてこちらを確認してください。

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

braa <path to braa>

braa <パス>

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

fping <path to fping>

fping <path>

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

fsnmp <path a fsnmp>

fsnmp <パス>

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

latency_packets xxx

latency_packets xxx

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

nmap <path to nmap>

nmap <パス>

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

nmap_timing_template xxx

nmap_timing_template x

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

ping_packets xxx

ping_packets xxx

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

recon_enabled 0|1

recon_enabled [0|1]

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

recon_timing_template xxx

recon_timing_template xxx

nmap_timing_template のように、ネットワーク検出に適用されます。

server_port xxxxx

server_port xxxxx

tentacle サーバのポートです。

server_name xxxxx

server_name xxxxx

サテライトサーバの名前です。(デフォルトはマシンのホスト名です)

server_path xxxxx

server_path <path>

transfer_mode が local の場合の XML ファイルがコピーされるパスです。(デフォルトは /var/spool/pandora/data_in)

server_opts

tentacle に渡されるサーバパラメータです。

transfer_mode XXX

transfer_mode [tentacle|local]

ファイル転送モードです。tentacle または local を指定できます。(デフォルトは tentacle)

セカンダリサーバ

secondary_mode [on_error|always]

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

  • 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

snmp_verify

snmp_verify [0|1]

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

snmp2_verify

snmp2_verify [0|1]

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

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

snmp3_verify

snmp3_verify [0|1]

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

SNMP v3を使用する場合は、アクセス権限情報を設定する方法についてこちらを確認してください。

snmp3_seclevel

SNMPv3 メッセージのセキュリティレベル(noauth, authnopriv または authpriv)です。

SNMP v3を使用する場合は、アクセス権限情報を設定する方法についてこちらを確認してください。

snmp3_secname

SNMPv3 メッセージのセキュリティ名です。

SNMP v3を使用する場合は、アクセス権限情報を設定する方法についてこちらを確認してください。

snmp3_authproto

SNMPv3 リクエストの認証プロトコル(md5 または sha)です。

SNMP v3を使用する場合は、アクセス権限情報を設定する方法についてこちらを確認してください。

snmp3_authpass

SNMPv3 リクエストの認証パスワードです。

SNMP v3を使用する場合は、アクセス権限情報を設定する方法についてこちらを確認してください。

snmp3_privproto

SNMPv3 リクエストの暗号化プロトコル(des または aes)です。

SNMP v3を使用する場合は、アクセス権限情報を設定する方法についてこちらを確認してください。

snmp3_privpass

SNMPv3 メッセージの暗号化パスワードです。

SNMP v3を使用する場合は、アクセス権限情報を設定する方法についてこちらを確認してください。

startup_delay

startup_delay xxx

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

temporal

temporal <ディレクトリ>

XML ファイルが生成されるテンポラリディレクトリ。デフォルトは /tmp です。

tentacle_client

tentacle_client <パス>

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

wmi_client

wmi_client <パス>

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

snmp_blacklist

snmp_blacklist <パス>

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

add_host

add_host <IPアドレス> [エージェント名]

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

 add_host 192.168.0.1
 add_host 192.168.0.2 localhost.localdomain

ignore_host

ignore_host <エージェント名>

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

 ignore host 192.168.0.1
 ignore host localhost.localdomain

keepalive

keepalive xxx

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

credential_pass

credential_pass xxx

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

timeout_bin

timeout_bin <パス>

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

timeout_seconds

timeout_seconds xxx

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

proxy_traps_to

proxy_traps_to <IP[:port]>

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

proxy_tentacle_from

proxy_tentacle_from <IP[:port]>

tentacle サーバが受け付けるアドレスとポート番号です。デフォルトではポート番号は 41121 が使われます。

proxy_tentacle_to

proxy_tentacle_to <IP[:port]>

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

このオプションは、リモートエージェント設定と競合することがあります。

これは、サテライトサーバが一部のソフトウェアエージェントのプロキシとして使用され、サテライトサーバ自体(ICMP、SNMPなど)から遠隔で監視され、両方でリモート設定が有効になっている場合に発生します。

このような場合は、実行されたチェックに異なるエージェントを使用するか、異なるエージェント名を使用するか、リモート設定を 2つのサテライト・サーバーまたはソフトウェア・エージェントのいずれか一方のみに有効にしておく必要があります。

dynamic_inc

dynamic_inc [0|1]

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

vlan_cache_enabled

vlan_cache_enabled [0|1]

自己検出ホストで VLAN キャッシュを有効化(1)または無効化(0)します。

verbosity

verbosity <0-10>

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

agents_blacklist_icmp

バージョン NG 713 以上

agents_blacklist_icmp 10.0.0.0/24[,8.8.8.8/30]

ICMP チェックのブラックリストです。このフィールドは、ICMP タイプのモジュールが実行されないようにするために、CIDR 表記を使用して IP のリストを設定することができます。カンマ区切りで複数のサブネットを指定できます。

agents_blacklist_snmp

バージョン NG 713 以上

agents_blacklist_snmp 10.0.0.0/24[,8.8.8.8/30]

SNMP チェックのブラックリストです。このフィールドは、SNMP タイプのモジュールが実行されないようにするために、CIDR 表記を使用して IP のリストを設定することができます。カンマ区切りで複数のサブネットを指定できます。

agents_blacklist_wmi

バージョン NG 713 以上

agents_blacklist_wmi 10.0.0.0/24[,8.8.8.8/30]

WMI チェックのブラックリストです。このフィールドは、WMI タイプのモジュールが実行されないようにするために、CIDR 表記を使用して IP のリストを設定することができます。カンマ区切りで複数のサブネットを指定できます。

general_gis_exec

バージョン NG 713 以上

general_gis_exec xxx

サテライトサーバによって検出される全エージェントの位置設定スクリプト。スクリプトは実行可能で、<経度>,<緯度>,[<高度>] というフォーマットを出力する必要があります。3つ目のパラメータはオプションです。

forced_add

1 に設定すると、(host_file または add_host を介して)モジュール無しの設定で手動で追加されたホストは、ping に応答しない場合でも常に作成されます。

サテライトサーバでのエージェント作成

サテライトサーバでのエージェント作成には、自動検出タスクSatelite_hosts.txt ファイル、エージェントの .conf ファイルの 手動 作成の 3通りがあります。

自動検出タスクでのエージェント作成

自動検出タスクを通してのエージェント作成は、Pandora FMS ユーザに最も使われている方法です。これをできるようにするには、サテライトサーバ設定ファイルで次のパラメータを設定する必要があります。

  • recon_community: カンマ区切りで SNMP 検出で利用する SNMP コミュニティを指定します。(snmp タイプの自動検出を実行する場合)
  • recon_enabled: サテライトサーバの自動検出タスクを有効化するには、1 に設定する必要があります。
  • recon_interval: 秒単位のネットワークをスキャンする間隔です。(デフォルトは 604800 秒です。)
  • recon_mode: カンマ区切りで自動検出タスクのモード(snmp,icmp,wmi)を指定します。
  • recon_task: カンマ区切りで自動検出したいネットワークの一覧を指定します。
  • recon_timing_template: 1 から 5 で、nmap をどの程度アグレッシブに動作させるかを指定します。 1 はゆっくりですが信頼性があります。5 は、早いですが信頼性は低いです。(デフォルトは 3です)

自動検出タスクの例を以下に示します。

 recon_community public
 recon_enabled 1
 recon_interval 604800
 recon_mode icmp,snmp,wmi
 recon_task 192.168.0.0/24,192.168.1.0/24
 recon_timing_template 3

設定を行ったら、以下のコマンドでサテライトサーバを実行します。

/etc/init.d/satellite_serverd start

設定ファイルにモジュールが無いエージェントは、サテライトサーバに無視されます。

Satellite_hosts.txt を通してのエージェント作成

最初に、satelite_hosts.txt ファイルを通してエージェントを作成するためには、サテライトサーバの設定ファイルで以下の行のコメントを外す必要があります。

host_file /etc/pandora/satellite_hosts.txt

次に、作成したいエージェントの IP と名前を記載した satelite_hosts.txt ファイルを作成します。

 192.168.10.5 Server.5
 192.168.10.6 Server.6
 192.168.10.7 Server.7

指定の IP で作成されるためには、一覧に記載した IP に対して fping ができる必要があります。そうでないと作成されません。

設定が完了したら、次のコマンドでサテライトサーバを実行します。

/etc/init.d/satellite_serverd start

指定のファイルの読み込みは、“recon_interval” で指定した秒ごとに行われます。

手動エージェント作成

最初に、サテライトサーバの設定ファイルの agent_conf_dir パラメータを見ます。ここが、新たに作成するエージェントの設定ファイルを置く場所です(/etc/pandora/conf)。

cd /etc/pandora/conf

パスを確認したら、例に示すような作成したいエージェントの .conf ファイルを作成するだけです。次のフィールドは手動で設定します。

  • agent_name: エージェント名を設定します。
  • agent_alias: エージェントの別名を設定します。
  • address: 監視したいエージェントの IP を設定します。
  • group: エージェントを割りあてるグループを設定します。
  • gis_exec: 位置を決定するスクリプトです。これは general_gis_exec の指定を上書きします。
  • modules: 自動検出タスクを実行するときに作成したいモジュールを指定します。

例を以下に示します:

 agent_name Example
 agent_alias This is an example
 address 127.0.0.1
 group Servers

 module_begin
 module_name Ping
 module_ping
 module_end

 module_begin
 module_name Latency
 module_latency
 module_end

設定を行ったら、次のコマンドでサテライトサーバを起動します。

/etc/init.d/satellite_serverd start

サテライトサーバでのエージェント削除

サテライトサーバからのエージェント削除には、全エージェントの削除か一部のエージェントの削除があります。

実行の前に、フォルダおよびファイルをバックアップしてください。

全ての エージェントの場合は、エージェントをどのように作成したかを考慮する必要があります。

  • 手動: 最初に、/etc/pandora/conf フォルダに作成したエージェントの .conf ファイルを削除し、次にコンソールからエージェントを削除します。
  • Satellite_hosts.txt ファイル: /etc/pandora/conf フォルダに作成したファイルだけでなく、file.txt を削除する必要があります。その後、コンソールからエージェントを削除します。
  • 自動検出タスク: サテライトサーバの設定ファイルから、自動検出タスクを無効化する必要があります。そして、/etc/pandora/conf フォルダに作成された conf を削除し、コンソールからエージェントを削除します。

一部の削除 でも、エージェントをどのように作成したかを考慮する必要があります。

  • 手動: 最初に、/etc/pandora/conf フォルダに作成したエージェントの .conf ファイルを削除し、その後コンソールからエージェントを削除します。
  • Satellite_hosts.txt ファイル: /etc/pandora/conf フォルダに作成した対象エージェントの conf だけでなく、file.txt 内の削除したい IP の行を削除します。その後、コンソールからエージェントを削除します。
  • 自動検出タスク: サテライトサーバの設定ファイル内の recon_task のブラックリストを設定する必要があります。そして、/etc/pandora/conf 内の該当の conf ファイルを削除し、コンソールから対象のエージェントを削除します。

カスタム設定(エージェント)

自動検出モジュールに加えて、ソフトウエアエージェントのモジュールに似たような書式で TCP, SNMP, WMI のすべての種類の監視を追加することができます。以下は、システムによって検出された後に自動生成される、サテライトサーバに有効なモジュールの例です。

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 generic_data_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 generic_data_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

ポートチェック(TCP の利用)。

 module_begin
 module_name Port 80
 module_type generic_proc
 module_tcp
 module_port 80
 module_end

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

 module_begin
 module_name if eth0 OutOctets
 module_description The total number of octets transmitted out of the interface, including framing characters.
 module_type generic_data_inc
 module_snmp 192.168.70.225
 module_oid .1.3.6.1.2.1.2.2.1.16.2
 module_community public
 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 コマンド。

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

バージョン 7 から、module_exec と同じようにプラグインを追加できます。プラグインはサテライトサーバーが稼働しているマシンで実行されることに注意してください。したがって、これらのプラグインで、監視したいリモートコンピュータに接続するための実装をする必要があります。以前のバージョンよりも優れている点は、その大きな柔軟性です。このようにして、前提条件やその他 module_exec ではできないことを実装することができます。書式はエージェントと同じです。 プラグインの使用例は次のとおりです。

module_plugin /usr/share/pandora/remote_advanced_checks.sh 192.168.0.1

SNMPv3

SNMPv3 モジュールを設定するには、module_version を 3に設定し、以下を設定します。

  • module_seclevel: セキュリティレベル ( noauth, authnopriv または authpriv ).
  • module_secname: セキュリティ名
  • module_authproto: 認証プロトコル ( md5 または sha ).
  • module_authpass: 認証パスワード
  • module_privproto: 暗号化プロトコル ( aes または des ).
  • module_privpass: 暗号化パスワード(必要な場合)

以下に例を示します。

 module_begin
 module_name snmp_noauth
 module_type generic_data_string
 module_snmp 127.0.0.1
 module_version 3
 module_oid .1.3.6.1.2.1.1.1.0
 module_seclevel noauth
 module_secname snmpuser
 module_end
 module_begin
 module_name snmp_authnopriv
 module_type generic_data_string
 module_snmp 127.0.0.1
 module_version 3
 module_oid .1.3.6.1.2.1.1.2.0
 module_seclevel authnopriv
 module_secname snmpuser
 module_authproto md5
 module_authpass 12345678
 module_end
 module_begin
 module_name snmp_authpriv
 module_type generic_data_string
 module_snmp 127.0.0.1
 module_version 3
 module_oid .1.3.6.1.2.1.1.2.0
 module_seclevel authpriv
 module_secname snmpuser
 module_authproto sha
 module_authpass 12345678
 module_privproto aes
 module_privpass 12345678
 module_end

SNMPv3 の特定の設定内容は、モジュール設定の外に置くことでモジュール間で共有することができます。(サテライトの設定ファイルに移動することにより、エージェント間でも共有することができます)

agent_name snmp
address 127.0.0.1

seclevel authpriv
secname snmpuser
authproto md5
authpass 12345678
privproto des
privpass 12345678

module_begin
module_name snmp_authpriv_1
module_type generic_data_string
module_snmp
module_version 3
module_oid .1.3.6.1.2.1.1.1.0
module_end

module_begin
module_name snmp_authpriv_2
module_type generic_data_string
module_snmp
module_version 3
module_oid .1.3.6.1.2.1.1.2.0
module_end

Pandora FMS Web コンソールから SNMP モジュール(SNMPv3 を含む)作成は、こちらの動画を確認してください。コンポーネントグループ(SNMPv3 を含む)の作成は、SNMP ウィザードを確認してください。

SNMPv3 のデフォルトのサテライトサーバ設定:

独自の値や認証情報を入力する必要があります。また、必要なプロトコルや暗号化方式を変更する必要があります。新しい設定値を有効にするには、サテライトサーバを再起動する必要があります。

# Security level used for SNMPv3 messages (noauth, authnopriv or authpriv).
#snmp3_seclevel authpriv

# Security name used for SNMPv3 messages.
#snmp3_secname

# Authentication protocol (md5 or sha) for authenticated SNMPv3 requests.
#snmp3_authproto sha

# Authentication password for authenticated SNMPv3 request.
#snmp3_authpass

# Privacy protocol (des or aes) for encrypted SNMPv3 requests.
#snmp3_privproto des

# Privacy password for encrypted SNMPv3 messages.
#snmp3_privpass

認証設定

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

network/mask,username,password

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|]]

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

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

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

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

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

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

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

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