====== テンプレートとコンポーネント ====== {{indexmenu_n>3}} [[ja:documentation:start|Pandora FMS ドキュメント一覧に戻る]] ===== テンプレートとコンポーネント ===== ==== 概要 ==== Pandora FMS は全てのチェックをモジュールを通して行います。これらは、Pandora FMS が処理できる異なるデータタイプごとに異なります。Pandora FMS のデフォルトのモジュールリストは、**リソース(Resources)** > **モジュールタイプ(Module Types)** から参照できます。 {{ :wiki:pfms-resources-module_types.png?600 }} Pandora FMS には、異なるモジュールのタイプとグループがあります。 * **async**: 非同期データ * **generic**: 一般的なデータ * **keep_alive**: エージェントへの最終接続状態を制御するのに便利な特別な keepalive モジュール * **icmp**: ICMP チェック (ping) * **snmp**: SNMP チェック * **tcp**: TCP チェック * **web**: ウェブチェック これらのほとんどには、いくつかのチェックタイプがあります。 * **data**: 数値データ * **proc**: ブーリアン値。1 か 0 を返します。 * **string**: テキスト文字列 * **inc**: インクリメンタルデータ (例えば、ネットワークインタフェースから送信されたパケットの総量などの増加するデータ) * **inc_abs**: 絶対インクリメンタルデータ。前回からの増分の値を示します。 === コンポーネント === **//コンポーネントとは?// ** コンポーネントは、エージェントに繰り返し適用することができる "一般的なモジュール" です。エージェントに関連付けるモジュールの "コピー元" になります。最も良く利用するコンポーネントを構成するデータベースと考えることができます。普段利用するコンポーネントを定義することにより、モニタリングの設定が簡単になります。新たなエージェントには、これらのコンポーネントを適用すれば良いのです。 コンポーネントには 2つのタイプがあります。 リモートモジュール (wmi、tcp、snmp、icmp、plugin、web など) に分類される **ネットワークコンポーネント** と、ソフトウェアエージェントの設定で定義するモジュールの **ローカルコンポーネント** です。ローカルコンポーネントは、(リモート設定を有効にして)エージェントの設定ファイルに組み込んだり、手動で(リモート設定なしで)エージェントの設定に貼り付けることができます。 === コンポーネントテンプレート === //**コンポーネントテンプレートとは?** // Pandora FMS では、複数のネットワークコンポーネントをエージェントに直接適用できるように、ネットワークコンポーネントを "テンプレート" にグループ化することができます。 テンプレートに関連付けられたネットワークコンポーネントを通して複数のモジュールを同時に作成できるので、監視設定の展開が容易になります。 [[:ja:documentation:pandorafms:introduction:02_architecture#自動検出_recognition_サーバ|自動検出サーバ]]は、テンプレートに関連付けられたネットワークコンポーネントを検出したホストに適用し、指定されたモジュールを自動的に追加し、非常に高速かつ自動の監視設定の展開ができます。は、テンプレートに関連付けられたネットワークコンポーネントを検出したホストに適用し、指定されたモジュールを自動的に追加し、非常に高速かつ自動の監視設定の展開ができます。 ==== ネットワークコンポーネント ==== 前述の通り、ネットワークコンポーネントはリモートネットワークチェックを行うためのエレメントです。Pandora FMS では、約 40 の定義済みのネットワークチェックがあります。エンタープライズ版では、400 以上あります。 Pandora FMS のネットワークコンポーネントの確認および作成は、**設定(Configuration)** → **テンプレート(Templates)** → **リモートコンポーネント(Remote components)** から行えます。 {{ :wiki:pfms-configuration-templates-remote_components.png }} ここでは、定義済のコンポーネントの検索 (グループや任意の文字での検索によるフィルタが可能です)、設定詳細の確認、修正、新規コンポーネントの作成ができます。 モジュールのプロパティを参照するには名前をクリックします。たとえば、すべての Host Alive ネットワークコンポーネントの詳細などの編集ページに移動します。 {{ :wiki:pfms-configuration-templates-remote_components_management-host_alive.png?700x1400 }} モジュールに適用すると、自動的に調整されるメインのエージェント IP アドレスフィールドを除いて、ネットワークコンポーネントの詳細が反映されます。すべてのパラメーターは後で編集できます(例:WMI モジュールのユーザ/パスワードの変更)。 {{ :wiki:nc_form2.png?850 }} \\ テンプレートを編集すると、**その時以降に行うモジュールへの適用に反映されます。すでにモジュールに適用されているものは変更されません。** \\ 実行間隔など、コンポーネントの値は、その名前をクリックし変更したい値を編集することにより可能です。変更したら、画面下の **更新(Update)** ボタンをクリックします。変更が反映され、以降はその内容でエージェントに適用できるようになります。 {{ :wiki:pfms-configuration-templates-remote_components-remote_component_management.png?600 }} その時点から、新しいコンポーネント設定が、そのモジュールが追加されたエージェントに適用されます。 === 新たなネットワークコンポーネントの作成 === 4つのタイプのネットワークコンポーネントを作成することができます。 * ネットワークコンポーネント * プラグインコンポーネント (サーバアドオン) * ウィザードコンポーネント * WMI コンポーネント 新たなネットワークコンポーネントを作成するには、**設定(Configuration)** →**テンプレート(Templates)** → **リモートコンポーネント(Remote components)** へ行きます。ページの下の方へ行き、プルダウンメニュー(ネットワーク、プラグイン、ウィザード、WMI)にてコンポーネントを選択し、**作成(Create)** をクリックします。 {{ :wiki:pfms-configuration-templates-remote_components-create_component.png?400 }} その後、コンポーネントのすべてのフィールドを設定し、**作成(Create)** をクリックします。以下に WMI コンポーネント作成画面を示します。 {{ :wiki:pfms-configuration-templates-remote_components-remote_component_management-create_wmi_component.png?600 }} フィールドを設定するとき、モジュールの説明については、それぞれエージェントに適用する時に設定するように考えても良いでしょう。SNMP のコミュニティ、ユーザ名、パスワードのようないくつかのパラメータは、適用するエージェントのモジュールごとに異なります。正しく動作させるためには、個別に設定する必要があります。しかし対象のシステムに共通のポリシーがある場合は、ユーザ名、パスワードやその他設定を共通にすることができます。もちろん、定義せずに空白にすることも可能です。 {{ :wiki:pfms-configuration-templates-remote_components-remote_component_management-create_network_component.png?600 }} 同様に、プラグインコンポーネントの場合は次のようになります。 {{ :wiki:pfms-configuration-templates-remote_components-remote_component_management-create_plugin_component.png?600 }} この場合、プラグインモジュールの作成と同様に、インターフェイスでプラグインを選択すると、プラグインマクロで定義されたフィールドが表示されます。 ==== ローカルコンポーネント ==== [[https://pandorafms.com/en/prices/?o=dwpfms|{{:wiki:icono-modulo-enterprise.png?23x23 |Enterprise 版}}]]ローカルコンポーネントは、ソフトウエアエージェントに適用できます。エンタープライズ版の場合は、コンポーネントは自動的にそしてリモートから適用することができます。ポリリーに従って適用したり、エージェントリモート設定エディタにて手動にて行うことができます。Pandora FMS Enterprise版でリモートのソフトウエアエージェントにローカルコンポーネントを実装する方法については、ポリシーを参照してください。 Pandora FMS Enterprise でソフトウエアエージェントにローカルコンポーネントをリモートで適用する方法を知るには[[:ja:documentation:pandorafms:complex_environments_and_optimization:02_policy|ポリシーの章]] を確認してください。 ローカルコンポーネントは、Pandora FMS のオープンソース版でも利用可能です。エンタープライズ版との違いは、自動適用ができず手動で必要な設定を書く必要がある点のみです。エンタープライズ版の Pandora FMS には、カテゴリごとに分類された操作やポリシーを実装した多くのローカルモジュールがあります。 ローカルコンポーネントは、ネットワークコンポーネントととても似た動作をします。'設定(Configuration) -> ローカルコンポーネント(Local components)' から管理ページへ行くことができます。 {{ :wiki:pfms-configuration-templates-local_components.png?750 }} この画面では、すでに定義済のローカルモジュールを表示しています。異なるパラメータ (グループ、OS、任意のテキスト文字列) でフィルタリングして表示したり、編集や新たなコンポーネントの作成ができます。 モジュールのプロパティを見るには、名前をクリックします。詳細のページへのリンクになっています。 {{ :wiki:pfms-configuration-templates-local_components-local_components_management-busy_xml_threads.png?800 }} 見ての通り、ローカルコンポーネントの設定はとてもシンプルです。設定項目は次の通りです。 * **名前(Name)**: コンポーネントの名前です。この名前は、エージェントにモジュールを作成したときに、コンポーネントの選択で表示されます。 * **OS**: コンポーネントのオペレーティングシステムです。 * **グループ(Group)**: モジュールが所属するグループです。フィルタしたりソートするのに便利です。 * **説明(Description)**: モジュールの説明です。デフォルトの説明は変更が可能です。 * **設定(Configuration)**: コンポーネントの設定です。ソフトウエアエージェントのモジュール設定と同様です。設定例やより詳細の情報は、[[:ja:documentation:pandorafms:installation:04_configuration#Modules_definition|モジュール定義]] を参照してください。 * **警告状態(Warning Status):** 状態が ''警告'' に変わる範囲。ボックス **条件の反転(inverse interval)** がチェックされている場合、定義された範囲にない場合、状態は ''警告'' に変わります。 * **障害状態(Critical Status):** 状態が ''障害'' に変わる範囲。ボックス **条件の反転(inverse interval)** がチェックされている場合、定義された範囲にない場合、状態は ''障害'' に変わります。 * **警告時手順(Warning Instructions):** 状態が ''警告'' になった場合の手順です。 * **障害時手順(Critical Instructions):** 状態が ''障害'' になった場合の手順です。 * **不明時手順(Unknown Instructions):** 状態が ''不明'' になった場合の手順です。 * **カテゴリ(Category):** 別の方法でグループ化または分類する必要がある場合は、ここでカテゴリを定義できます。 * **タグ(Tags):** ここでタグを定義できます。 * **マクロ(Macros):** 実行モジュール(''module_exec'')またはプラグインパラメーター内でマクロを定義できます。 === 新たなローカルコンポーネントの作成 === 新たなローカルコンポーネントを作成するには、**設定(Configuration)** → **テンプレート(Templates)** → **ローカルコンポーネント(Local components)** をクリックし、ページの右下にある **作成(Create)** をクリックします。 新たにローカルコンポーネントを作成するフォームが表示されます。前述の情報をフォームに入力し、**作成(Create)** をクリックします。 === ローカル実行マクロ === Pandora FMS バージョン 5.0 以降では、ローカルコンポーネントにマクロを定義することができます。マクロは、 **module_exec** パラメータに設定し、''_field1_'' , ''_field2_'' … ''_fieldN_'' という構造です。 モジュールの編集フォームでは、マクロはユーザにとって透過的な通常のフィールドとして表示されます。 それぞれのマクロには、**説明(Description)**、**デフォルト値(Default value)**、**ヘルプ(Help)** の 3つのフィールドがあります。 * 説明(Description): モジュールフォームのフィールドに近いラベル。 * デフォルト値(Default value): モジュールフォームでデフォルトで設定される値。 * ヘルプ(help): フィールドの追加情報に追加される文字列。設定すると、その文字列がフィールドの近くに表示されます。 {{ :wiki:local_components_macros.png?800 }} モジュールコンポーネントにマクロが含まれている場合、デフォルトで表示を簡素化するために、構成データは非表示のままになります。 {{ wiki:local_components_macros_editor_hidden.png?750 }} ただし、表示および編集することもできます。 {{ wiki:local_components_macros_editor_showed.png?750 }} ==== モジュールテンプレート ==== モジュールテンプレートは、ネットワークチェックモジュールを含むテンプレートです。これらのテンプレートを作成すると、一つ一つモジュールを追加することなく直接エージェントに適用することができます。また、自動検出処理に利用することもできます。これについては、[[:ja:documentation:pandorafms:monitoring:04_discovery|ネットワーク検出タスク]] にて説明しています。 モジュールテンプレートを管理するには、**設定(Configuration)** → **テンプレート(Templates)** → **モジュールテンプレート(Module templates)** をクリックします。 {{ :wiki:pfms-configuration-templates-module_templates.png?600x500 }} テンプレート管理画面が表示されます。デフォルトの設定がされています。 {{ :wiki:pfms-configuration-templates-module_template_management.png?700x900 }} 詳細を見るには、テンプレートをクリックします。右のごみ箱アイコンをクリックすると削除できます。新しいテンプレートを作成する場合は、作成(Create)ボタンをクリックします。 テンプレートの名前をクリックすると、その詳細が表示されます。たとえば、以下のスクリーンショットでは、Basic Monitoring のモジュールテンプレート詳細が表示されています。 {{ :wiki:pfms-configuration-templates-module_template_management-basic_monitoring.png?800x600 }} 以下は、このテンプレートに含まれるモジュールの一覧です。テンプレートからモジュールを削除するには、右側の **削除(Delete)** 列のごみ箱アイコンをクリックします。 最後に、**コンポーネントの追加(Add components)** をクリックすると、モジュール追加のためのフォームが表示されます。モジュールグループによってフィルタリングし、モジュールを選択して追加できます。 {{ :wiki:pfms-configuration-templates-module_template_management-edit_template-add_components.png?650x400 }} === 新たなモジュールテンプレートの作成 === 新たなモジュールテンプレートを作成するには、システム管理メニューから、**設定(Configuration)** → **テンプレート(Templates)** → **モジュールテンプレート(Module templates)** へ行きます。そして、ページ右下の **作成(Create)** ボタンをクリックします。 新たなコンポーネントの作成フォームが表示されます。 {{ :wiki:pfms-configuration-templates-new_module_template.png?500x500 }} 新たなテンプレートの名前と説明を入力し、 **作成(Create)** ボタンをクリックします。 次に、**コンポーネントの追加(Add components)** をクリックすることにより、テンプレートにモジュールを追加できます。 {{ :wiki:pfms-configuration-templates-new_module_template-add_components.png?800x600 }} 下の方でモジュールを選択し (必要であればグループでフィルタリングして) **OK** をクリックします。 不要なモジュールは、選択して **削除(Delete)** ボタンを押すことによって削除できます。 {{ :wiki:pfms-configuration-templates-new_module_template-delete_components.png?700x630 }} 最後に、 **更新(Update)** をクリックして、追加したモジュールを保存することを忘れないでください。 === エージェントへのモジュールテンプレートの適用 === 既存のモニタリングモジュールテンプレートや新たに作成したテンプレートをエージェントに適用するには、**リソース(Resources)** → **エージェント管理(Manage agents)** へ行きます。 {{ :wiki:pfms-resources-manage_agents-agent_edit_modules.png?500x500 }} エージェント一覧から、対応する **モジュール** リンクの 1つを選択します。(上記画像を参照) 以下のような画面が表示されるので、ページの上の **モジュールテンプレート(Module templates)** をクリックします。 {{ :wiki:pfms-resources-manage_agents-modules-module_templates.png?710x150 }} 次の画面には、エージェントと既存のモジュールテンプレートがすでに含まれているモジュールが表示されています。 {{ :wiki:pfms-resources-manage_agents-modules-module_templates_assignation.png?700x400 }} テンプレートを選択し、 **割当(Assign)** ボタンをクリックします。選択したテンプレートに含まれるモジュールが自動的に追加されます。テンプレートが適用されたら、ごみ箱アイコンをクリックしてモジュールの一部を削除したり、ツールアイコンをクリックしてモジュールを編集できます。 追加されたモジュールには、テンプレート名にもとづいた自動的な説明がつきます。 {{ :wiki:pfms-resources-manage_agents-modules-module_templates_assigned.png?800x800 }} エージェントに適用したテンプレートは表示されません。モジュールのみが表示されます。 ==== プライベートエンタープライズ番号 ==== すべての SNMP デバイスには独自の OID があります。これは、各デバイスのブランドとモデルに限定されたものです。どの製造元からのものかを示す文字列に対応する 7番目を占める数値があります。 これは製造元のプライベートエンタープライズ番号(**[[https://en.wikipedia.org/wiki/Private Enterprise Number|PEN]]** )であり、[[https://es.wikipedia.org/wiki/Internet_Assigned_Numbers_Authority|IANA]] に登録されています。これらの PEN は、Pandora FMS でモジュールテンプレートと一緒に使用するように設定でき、動的監視を追加できます。 登録済の PEN 一覧へアクセスするには、**設定(Configuration)** → **テンプレート(Templates)** → **プライベート Enterprise 番号(Private Enterprise Numbers)** へ行きます。 {{ :wiki:pfms-configuration-templates-private_enterprise_numbers.png?700x500 }} **オプション(Option)** 列から対応するアイコンをクリックすると、登録されている各 PEN を編集または削除できます。 {{ :wiki:pfms-configuration-templates-private_enterprise_numbers_list.png?800x830 }} 新しいメーカーを登録するには、**メーカーの登録(Register manufacturer)** をクリックします。メーカーの対応する PEN を挿入し、その名前と説明を設定するだけです。 そうすれば、既存のリストに追加されます。 {{ :wiki:pfms-configuration-templates-private_enterprise_numbers-register_new_manufacturer.png?700x640 }} モジュールテンプレートでは、1つまたは複数の PEN が示されるため、検出タスクがある場合、Pandora FMS はデバイスの製造元に関する情報を取得し、適切な監視情報を追加できます。 {{ :wiki:pfms-configuration-templates-module_template_management-cisco_mibs.png?800 }} ==== ウィザードコンポーネント ==== SNMP および WMI ウィザードの機能には、//ウィザードコンポーネント(Wizard components)//と呼ばれる種類のリモートコンポーネントがあります。 これらのコンポーネントを使用すると、任意のウィザード(SNMP または WMI)の実行時にエージェントで生成されるモジュールの基本設定を行えます。さらに、1つのコンポーネントのみで複数のモジュールを動的に生成することができます。たとえば、実行中のストレージデバイスのユニットや、プロセスをスキャンするコンポーネントです。 これらのコンポーネントは、**設定(Configuration)** → **テンプレート(Templates)** → **リモートコンポーネント(Remote components)**メニューから作成できます。 {{ :wiki:pfms-configuration-templates-remote_components.png?700x700 }} **新規ウィザードコンポーネント作成(Create a new wizard component)** オプションを選択し、**作成(Create)** をクリックします。 {{ :wiki:pfms-configuration-templates-remote_components-create_new_wizard.png?600x300 }} 作成ボックスには、使用するモジュールのプロトコルという重要なオプションがあります。 SNMP(デフォルト) と WMI の2つのプロトコルを使用できます。どちらも共通フィールドは同じですが、個別のフィールドもあります。 {{ :wiki:pfms-configuration-templates-remote_components-create_new_wizard-module_protocol.png?800x290 }} 共通フィールドは次の通りです: * **有効化(Enabled)**: このトークンを有効化すると、ウィザードの起動時にコンポーネントがスキャンを試みます。 * **デフォルトで追加(Add by default)**: コンポーネントによって生成されたモジュールが、ウィザードの起動時にデフォルトで追加されるようにするかどうかを選択できます。つまり、トークンが有効化されると、コンポーネントによって生成されたモジュールは、デフォルトでは後で確認できるビューでチェックされ、エージェントに追加されます。このアクションは変更することができ、このビューでは、変更を加えたり、必要に応じてチェックを外したり確認したり、しきい値や説明などを変更したりできます。 * **モジュール名(Module name)**: コンポーネントが持つ名前と、コンポーネントによって生成されるモジュールのデフォルトの名前です。一部のマクロが使用できます(後ほど示します)。 * **モジュールプロトコル(Module protocol)**: コンポーネントを構成するウィザード(SNMP または WMI)を示します。選択したプロトコルに応じて、フォームには各ウィザードの特定のフィールドが表示されます。これについては後で説明します。 * **コンポーネントグループ(Component group)**: コンポーネントが属するグループです。これにより、モジュールの表示方法を整理できます。 * **モジュールタイプ(Module type)**: このドロップダウンリストでは、コンポーネントによって生成されるモジュールが取得するデータのタイプを選択できます。 * **モジュール単位(Module unit)**: コンポーネントによって生成されたモジュールによって取得されたデータの単位。これは完全に編集可能なフィールドなので、必要なものを追加できます。 * **警告状態(Warning status)**: このセクションでは、ウィザードで生成されたモジュールの警告状態のデフォルトしきい値を設定できます。ここでは範囲が示されていますが、見つかったすべてのモジュールを収集する最終画面で、モジュールごとにそれをカスタマイズすることができます。 * **障害状態(Critical status)**: このセクションでは、ウィザードで生成されたモジュールの障害状態のデフォルトしきい値を設定できます。ここでは範囲が示されていますが、見つかったすべてのモジュールを収集する最終画面で、モジュールごとにそれをカスタマイズすることができます。 * **説明(Description)**: これは、コンポーネントとそれが生成したモジュールの説明です。いくつかのマクロを使用できます。(後ほど示します)。 * **スキャンタイプ(Scan type)**: このコンポーネントを使用して、ウィザードで実行できる 2つのスキャンモードを選択できます。このフィールドは、コンポーネントが 1つまたは複数のモジュールを生成するかどうかを決定します。選択した値は、各ウィザードの他の特定のフィールドへの入力に影響します。 * **固定(Fixed)**: コンポーネントは 1つのモジュールのみを生成します。たとえば、SNMP によってデバイスの稼働時間を取得します。 * **動的(Dynamic)**: コンポーネントは 1つ以上のモジュールを生成します。 たとえば、WMI によるディスク装置の使用率を取得する場合など。 * **実行タイプ(Execution type)**: このフィールドは、コンポーネント生成モジュールの実行タイプを示します。ウィザードの起動元に応じて、作成時にモジュールが属する Pandora FMS サーバを決定すると便利です。 * **ネットワーク(Network)**: コンポーネントによって生成されたモジュールは、SNMP および WMI モジュール用の Pandora FMS 独自のシステムでデータを取得します。これらは、ネットワーク、WMI、およびサテライトサーバです。 * **プラグイン(Plugin)**: コンポーネントによって生成されたモジュールは、コマンド、プラグイン、またはカスタマイズされたスクリプトの実行からデータを取得します。したがって、それらは ''exec'' モジュールを介してプラグインまたはサテライトサーバによって実行されます。 === SNMP ウィザード === {{ :wiki:pfms-configuration-templates-remote_components-create_new_wizard-module_protocol-snmp.png?600x650 }} SNMP ウィザードコンポーネント特有のフィールドは次の通りです: * **名前 OID(Name OID)** * **製造元 ID(Manufacturer ID)** * **実行タイプ(Execution type)** が **Network** の場合: * **Value OID** * **実行タイプ(Execution type)** が **Plugin** の場合: * **OID Macros** * **Value operation** * **Satellite execution** * **Server plugin** {{ :wiki:pfms-configuration-templates-remote_components-create_new_wizard-module_protocol-snmp-execute_plugin.png?600x950 }} **名前 OID(Name OID)** マクロを介してモジュール名に追加できる値を取得する OID を設定することができます。 これは、動的コンポーネントによって生成された複数のモジュールを取得するときに特に役立ちます。 これにより、デフォルトで異なる名前が付けられます。ただし、固定スキャンコンポーネントにも使用できるため、動的コンポーネントに限定されません。 この OID の値は、マクロ _nameOID_ に格納され、**モジュール名(Module name)** フィールドで使用できます。 動的コンポーネントで使用する場合、このフィールドに示される OID は、最終的な OID ではなく、SNMP のブランチのものである必要があります。例えば、OID //.1.3.6.1.4.1.2021.10.1.2// が示されている場合、各モジュールでマクロが持つ値は、OID // .1.3.6.1.4.1.2021.10.1.2.// **x** から取得されます。 ここで **x** はブランチが持つ最後を表します。 固定コンポーネントで使用する場合、このフィールドに示される OID は最終的な OID でなければなりません。 例えば、OID //.1.3.6.1.2.1.5.0// が示されている場合、マクロがモジュールに持つ値は、その OID から直接取得されます。 **製造元 ID(Manufacturer ID)** SNMP ウィザードコンポーネントが有効になる特定の製造元の ID を指定することができます。 このようにして、ウィザードが起動され、コンポーネントに割り当てられた製造元 ID の Pandora FMS にプライベートエンタープライズ番号(PEN)が登録されているすべてのデバイスに対して、生成されたモジュールの取得が試行されます。 たとえば、//general_snmp// に割り当てられたコンポーネントは、PEN 2021 および 8072 のすべてのデバイスに対してスキャンされます。 製造元として //すべて(All)// を指定すると、Pandora に登録されている任意の PEN に対してコンポーネントのスキャンが行われます。 **製造元 ID** を使用するには、Pandora FMS コンソールにプライベートエンタープライズ番号(PEN)を登録する必要があります。 == ネットワーク SNMP 実行 == 実行タイプが **ネットワーク(Netrowrk)** の場合は次の通りです: **値 OID(Value OID)** これにより、コンポーネントが生成したモジュールデータを取得する OID を設定できます。 動的コンポーネントで使用する場合、このフィールドに示される OID は、最終的な OID ではなく、SNMP のブランチのものである必要があります。例えば、OID //.1.3.6.1.4.1.2021.10.1.3// が示されている場合、各モジュールでマクロが持つ値は、OID // .1.3.6.1.4.1.2021.10.1.3.//**x** から取得されます。 また、各 OID の //X// ノードは、//名前 OID// フィールドの //X// ノードにと同じ値を使用する必要があります。 固定コンポーネントで使用する場合、このフィールドに示される OID は最終的な OID でなければなりません。 例えば、OID //.1.3.6.1.4.1.2021.11.9.0// が示されている場合、マクロがモジュールに持つ値は、その OID から直接取得されます。 {{ :wiki:img3_wizard_components.png }} == SNMP プラグイン実行 == 実行タイプが **プラグイン(Plugin)** の場合は次の通りです: **OID マクロ(OID Macros)** → //_oid_N_// プラグインタイプのコンポーネントを使用する主な目的は、使用済みメモリ量と使用可能な合計メモリ量から使用済メモリの割合を取得するなど、同じデバイスで 1つ以上の OID の値を使用して操作を実行できるようにすることです。 そのため、これらのコンポーネントでは、他のフィールドで使用するために必要な数の OID を指定できます。 さらに、これらの OID またはその値は、//_oid_N_// マクロから使用できます。マクロが使用される次のフィールドに応じて、OIDの値または OID 自体が使用されます。 動的コンポーネントで使用する場合、このフィールドに示される OID は、最終的な OID ではなく、SNMP のブランチのものである必要があります。例えば、OID //.1.3.6.1.4.1.2021.10.1.3// が示されている場合、各モジュールでマクロが持つ値は、OID // .1.3.6.1.4.1.2021.10.1.3.//**x** から取得されます。 また、各 OID の //X// ノードは、//名前 OID// フィールドの //X// ノードにと同じ値を使用する必要があります。 固定コンポーネントで使用する場合、このフィールドに示される OID は最終的な OID でなければなりません。 例えば、OID //.1.3.6.1.4.1.2021.4.6.0// が示されている場合、マクロがモジュールに持つ値は、その OID から直接取得されます。 **値の計算(Value operation)** ここでは、ウィザードモジュールのプレビューにおいてコンポーネントで生成された各モジュールの現在の値に対する算術計算を設定できます。生成されたモジュールの最終的な実行には影響しません。 "+ - * / ( ) ." を利用できます。数値および //_oid_N_// マクロの値が計算に利用されます。例: (_oid_1_ * 100) / _oid_2_ **サテライト実行(Satellite execution)** ここでは、//exec server// を使用してサテライトサーバからウィザードが起動されたときに、サテライトサーバが生成されたモジュールに対して実行する内容を指定できます。これは、サテライトサーバの //module_exec// で利用するコマンド、プラグイン、またはスクリプトです。 各モジュールで使用される OID を取得するために、SNMP ウィザードのマクロ(後で詳しく説明します)および //_oid_N_// マクロを利用できます。 サテライトサーバは、これらのコンポーネントに推奨される一連のプラグインを配布します。 - /etc/pandora/satellite_plugins/wizard_snmp_module - /etc/pandora/satellite_plugins/wizard_snmp_process **サーバプラグイン(Server plugin)** {{ :wiki:pfms-configuration-templates-remote_components-create_new_wizard-module_protocol-snmp-execute_plugin-types.png?500x450 }} このドロップダウンから、以前に Pandora FMS コンソールに登録されたプラグインを指定することができます。これは、コンポーネントによって生成された各モジュールでプラグインサーバによって使用されます。プラグインを選択すると、フォームで特定のフィールドが同時に表示されます。 独自のプラグインフィールドでは、SNMP ウィザードのマクロと、各モジュールで使用される OID を取得するための //_oid_N_// マクロを利用できます。 Pandora FMS コンソールには、これらのコンポーネントに必要な一連の登録済みプラグインがあります。 - Wizard SNMP module. - Wizard SNMP process. {{ :wiki:img4_wizard_components.png }} プラグインタイプの実行フィールドで利用可能な SNMP ウィザードコンポーネント特有のマクロは次の通りです。 * **//_address_//**: SNMP ウィザードで使われる IP アドレス。このマクロは、ウィザードがポリシー内で実行された場合は置き換えできません。 * **//_port_//**: SNMP ウィザードで使われるポート番号。 * **//_version_//**: SNMP ウィザードで使われる SNMP バージョン。1, 2c または 3 の値を利用できます。 * **//_community_//**: SNMP ウィザードで使われる SNMP コミュニティ。 * **//_sec_level_//**: SNMP ウィザードで使われる SNMPv3 セキュリティレベル。noAuthNoPriv, authNoPriv または authPriv のいずれかです。 * **//_auth_user_//**: SNMP ウィザードで使われる SNMPv3 ユーザ。 * **//_auth_method_//**: SNMP ウィザードで使われる SNMPv3 認証手法。MD5 または SHA のいずれかです。 * **//_auth_pass_//**: SNMP ウィザードで使われる SNMPv3 認証パスワード。 * **//_priv_method_//**: SNMP ウィザードで使われる SNMPv3 暗号化手法。DES または AES のいずれかです。 * **//_priv_pass_//**: SNMP ウィザードで使われる SNMPv3 暗号化パスワード。 === WMI ウィザード === {{ :wiki:pfms-configuration-templates-remote_components-create_new_wizard-module_protocol-wmi.png?600x800 }} == ネットワーク WMI 実行 == 実行タイプが **ネットワーク(Network)** の場合は次の通りです。 **WMI クラス** チェックする WMI クラスを指定できます。 WMI クラスは事前定義されており、WindowsManagementInstrumentation®(WMI)コアの各名前空間に含まれています。 **クエリキーフィールド(Query key field)** ( ''_field_wmi_0_'' ) **追加フィールドクエリ(Query extra fields)** ( ''_field_wmi_1_'' ) **クエリフィルタ(Query filters)** → 実行(Execution) これにより、コンポーネントによって生成された各モジュールによって起動された WMI クエリの条件を示すことができます。 各フィールドログの値を取得するために、クエリフィールド (''_FIELDNAME_'') の名前を持つマクロの使用ができます。 例: DriveType = 3 AND DeviceID = '_DeviceID_'. 以下のクエリは、C: ドライブの空き領域を取得取得します。 SELECT DeviceID, FreeSpace FROM Win32_LogicalDisk WHERE DriveType = 3 AND DeviceID = 'C:' **フィールド値(Field value)** モジュール値を取得する WMI クエリのフィールドの番号を示します。フィールド 0 はそのクラスのキーフィールドであり、フィールド 1 以上はそれらのクラスの追加フィールドです。 **キー文字列(Key string)** //フィールド値// に示されているフィールドの値がこのフィールドに示されているテキスト文字列と一致するかどうかによって、モジュール値をブール値(1 または 0)に変換できます。 **exec server** によってサテライトサーバからウィザードが起動された場合、キー文字列オプションは考慮されません。 {{ :wiki:img6_wizard_components.png }} == WMI プラグイン実行 == {{ :wiki:pfms-configuration-templates-remote_components-create_new_wizard-module_protocol-wmi-execute-plugin.png?700x500 }} 実行タイプが **プラグイン(Plugin)** の場合は次の通りです: **スキャン**(**クエリフィルター**)フィールドまでは、**ネットワーク** 実行と共通のフィールドです。 **値の計算(Value operation)** プラグインタイプのコンポーネントを使用する主な目的は、空きディスク容量と使用可能な合計ディスク容量からディスク使用率を取得するなど、さまざまなクエリフィールドの値を使用して計算を実行できるようにすることです。 このフィールドでは、ウィザードのモジュールプレビューでコンポーネントによって生成された各モジュールの現在の値を取得する算術演算を設定できます。 生成されたモジュールの最終的な実行には影響しません。 計算した値を得るために、"+ - * / ( ) ."、数値、およびフィールド名のマクロ(''_FIELDNAME_'')を利用できます。例: ((_Size_ - _FreeSpace_) * 100) / _Size_ **サテライト実行(Satellite execution)** //exec server// を使用してサテライトサーバからウィザードを起動したときに、生成されたモジュールに対してサテライトサーバが実行するものを指定することができます。 これは、サテライトサーバの ''module_exec'' で使用するコマンド、プラグイン、またはスクリプトです。 これは、WMI ウィザードのマクロと ''_class_wmi_'' マクロを使用して WMI クラスの名前を取得し、''_field_wmi_N_'' を使用して各モジュールで使用されるクラスのフィールドの名前を取得できます。 サテライトサーバには、これらのコンポーネントが要求するプラグインがあります。 /etc/pandora/satellite_plugins/wizard_wmi_module. **サーバプラグイン(Server plugin)** コンポーネントによって生成された各モジュールでプラグインサーバによって使用される Pandora FMS コンソールに登録されたプラグインを指定することができます。プラグインを選択すると、それ用の特定のフィールドがフォームに表示されます。 独自のプラグインフィールドでは、WMI ウィザードのマクロの使用ができ、''_class_wmi_'' マクロは WMI クラスの名前を取得し、 ''_field_wmi_N_'' は各モジュールで使用されるクラスのフィールドの名前を取得します。 Pandora FMS コンソールには、これらのコンポーネント用の登録済みのプラグインがあります。 {{ :wiki:img7_wizard_components.png }} プラグイン実行フィールドで使用できる WMI ウィザードコンポーネントの特定のマクロは次のとおりです。 * **//_address_//**: WMI ウィザードで利用される IP アドレス。ウィザードがポリシーから起動された場合は、このマクロは置き換えられません。 * **//_namespace_wmi_//**: WMI ウィザードで利用されるネームスペース。 * **//_user_wmi_//**: WMI ウィザードで利用されるユーザ。 * **//_pass_wmi_//**: WMI ウィザードで利用されるパスワード。 WMI ウィザードコンポーネントに指定されているフィールドは次のとおりです。 * **WMI class**: これは、コンポーネントによって生成されたモジュールのクエリで使用されるWMIクラスを指します。例: //Win32_LogicalDisk//. **クエリキーフィールド(Query key field)** (''_field_wmi_0_'') 生成されたモジュールで使用される WMI クエリで取得されるキーフィールドの名前です。 一般に、WMI クラスにはキーフィールドがあり、設定されているかどうかに関係なく、常にクエリで返されます。これは、それに指定するフィールドです。 たとえば、//Win32_Processor// クラスのキーフィールドは //DeviceID// になります。 このフィールドの名前は、''_field_wmi_0_'' マクロを介して他のフォームで利用でき、フィールドが WMI クエリの各レコードに対して持つ値は、フィールドの同じ名前のマクロ(//_フィールド名_//)を介して取得できます。 これらの ''_FIELDNAME_'' マクロは、とりわけ、コンポーネントフィールド **モジュール名** および **説明** で利用して、名前と説明を動的に生成できます。 たとえば、//DeviceID// フィールドの場合、値を含むマクロは ''_DeviceID_'' になります。 **追加フィールドクエリ(Query extra fields)** → ''_field_wmi_N_'' このフィールドでは、生成されたモジュールで使用される WMI クエリで使用する追加フィールドの名前を指定します。 これらのフィールドの名前は、''_field_wmi_N_'' マクロを介してフォームの他のフィールドで利用でき、WMI クエリの各レコードに対してフィールドが持つ値は、フィールドの同じ名前のマクロ(''_FIELDNAME_'')を介して利用できます。 これらの ''_FIELDNAME_'' マクロは、とりわけ、コンポーネントのフィールド **モジュール名** および **説明** で利用して、名前と説明を動的に生成できます。 たとえば、FreeSpace フィールドの場合、値を持つマクロは ''_FreeSpace_'' になります。 **クエリフィルタ(Query filters)** → スキャン(Scan) ここには、スキャンで起動する WMI クエリの条件を指定します。これにより、1つ以上のレコードを取得できます。 たとえば、''DriveType = 3'' です。 WMI ウィザードコンポーネントでは、WMI スキャンクエリによって返されるレコードごとに異なるモジュールが生成されます。これまでに示した例に基づいて、Windows コンピューターのドライブの空き領域を取得するスキャンクエリは次のようになります。 SELECT DeviceID, FreeSpace FROM Win32_LogicalDisk WHERE DriveType = 3 {{ :wiki:img5_wizard_components.png?500x380 }} ==== コンポーネントグループ ==== コンポーネントのソートや分類をするために、コンポーネントグループがあります。コンポーネントは、作成時のグループに属します。 定義済みのコンポーネントグループを見るには、**リソース(Resources)** → **コンポーネントグループ(Component Groups)** へ行きます。 {{ :wiki:pla9.png }} 定義済みのグループとその説明が表示されます。 {{ :wiki:pfms-module_management-component_group_management.png?600x600 }} グループの名前をクリックするとその詳細を見ることができます。削除するには、右側のごみ箱アイコンをクリックします。新たに作成する場合は、**作成(Create)** ボタンをクリックします。それぞれの選択チェックボックスで複数選択して、**削除(Delete)** することもできます。 新たなコンポーネントグループを作成したい場合は、作成(Create)ボタンをクリックし、フォームに入力します。 {{ :wiki:pfms-module_management-component_group_management-create.png?600x300 }} グループの名前を入力し、既存のグループと親子関係があればそれの選択をするだけです。あとは、 **作成(Create)** ボタンをクリックします。 これにより、新たなコンポーネントを、作成したコンポーネントグループに追加することができます。