====== Pandora RMM ======
{{indexmenu_n>18}}
[[:ja:documentation:start|Pandora FMS ドキュメント一覧に戻る]]
===== RMM とは? =====
The name **RMM** comes from the acronym **Remote Monitoring and Management**.
**RMM** という名前は、**Remote Monitoring and Management** の頭字語に由来しています。
It is a centralized system that allows to create and schedule tasks from **Pandora FMS** Web Console and that will be run locally by agents to later report to the server the information related to the executions carried out and their status. It is implemented from version 778 of Pandora FMS and the necessary components for its operation are distributed together with the server and agent.
これは、**Pandora FMS** Web コンソールからタスクを作成およびスケジュールし、エージェントによってローカルで実行されて、実行された処理とその状態に関する情報を後でサーバに報告できる集中型システムです。これは、Pandora FMS のバージョン 778 から実装されており、その動作に必要なコンポーネントは、サーバとエージェントとともに配布されます。
It has 3 components:
3つのコンポーネントがあります。
* **RMM agent**:
It is in charge of connecting with the RMM server in search of new executions, carrying them out in case there are any and sending two types of files: keepalive and data. These files have JSON format and contain information such as the agent's name, the date the file was sent, the interval the agent is following, the execution status, etc.
* **RMM エージェント**:
RMM サーバに接続して新しい処理を探し、それがある場合は実行し、keepalive と data の 2 種類のファイルを送信します。これらのファイルは JSON 形式で、エージェントの名前、ファイルが送信された日付、エージェントが従う間隔、実行ステータスなどの情報が含まれています。
* **RMM server**:
It hosts the scripts and the queued and scheduled executions to be carried out by RMM agents.
* **RMM サーバ**:
RMM エージェントによって実行されるスクリプトと、キューに入れられた実行の処理およびスケジュールをホストします。
* **RMM Tentacle service**:
It enables connection between client and **RMM** server. In its configuration parameters are indicated for the password and certificates used for connection encryption, the type of files to read and the configuration of directories to make them only for upload or only for download. By default the ''rmm'', ''res'' and ''queue'' folders are for download only, and the ''data'' and ''keepalive'' folders are for upload only.
* **RMM Tentacle サービス**:
これにより、クライアントと **RMM** サーバ間の接続が可能になります。設定パラメータには、接続の暗号化に使用されるパスワードと証明書、読み取るファイルのタイプ、アップロード専用またはダウンロード専用にするディレクトリの構成が示されています。デフォルトでは、''rmm''、''res''、''queue'' フォルダはダウンロード専用で、''data'' および ''keepalive'' フォルダはアップロード専用です。
The proper functioning of all 3 components is key to keep the RMM system functional.
RMM システムを機能させ続けるには、3 つのコンポーネントすべてが適切に機能することが重要です。
===== 要件と設定 =====
As it has been mentioned, **RMM** is implemented in Pandora FMS version 778 and the necessary components for its operation with the server and the software Agent are included. Pandora FMS server includes also **Tentacle**, so with a usual installation in 778 or upgrade to that version is enough to meet usage requirements. This includes the certificates for connection encryption through Tentacle between agent and RMM server, although you may use your own [[:en:documentation:pandorafms:technical_reference:09_tentacle#ks5|SSL certificates]] and change the connection password.
前述のとおり、**RMM** は Pandora FMS バージョン 778 に実装されており、サーバとソフトウェアエージェントでの動作に必要なコンポーネントが含まれています。Pandora FMS サーバには **Tentacle** も含まれているため、778 での通常のインストールまたはそのバージョンへのアップグレードで使用要件を満たすことができます。これには、エージェントと RMM サーバ間の Tentacle 経由の接続暗号化用の証明書が含まれますが、独自の [[:ja:documentation:pandorafms:technical_reference:09_tentacle#ks5|SSL 証明書]] を使用して接続パスワードを変更することもできます。
As for the configuration, it is a two-step process:
設定に関しては、次の 2 つの手順で行います。
* **Enabling the RMM server of PFMS server**
* **PFMS サーバの RMM サーバを有効にする**
To that end, the server configuration file must be modified. If you have remote configuration enabled, you must do it from the Web Console, otherwise from the terminal. Modify the line ''#rmmserver 1'' and //uncomment it//.
そのためには、サーバ設定ファイルを変更する必要があります。リモート設定が有効になっている場合は、Web コンソールから、そうでない場合はターミナルから行う必要があります。行 ''#rmmserver 1'' を変更し、//コメントを外し//ます。
There are also two additional parameters for **RMM**: ''rmmserver_threads'' and ''rmmdir''. They allow to choose the number of threads for **RMM** server execution and to indicate the local directory of the machine to be used for data exchange with RMM agents, accordingly. This directory will be where the ''tentacle_rmm'' service will manage the files exchanged with the agents.
**RMM** には、さらに 2 つのパラメータがあります: ''rmmserver_threads'' と ''rmmdir''。これらにより、**RMM** サーバの実行スレッド数を選択し、それに応じて RMM エージェントとのデータ交換に使用するマシンのローカルディレクトリを指定できます。このディレクトリは、''tentacle_rmm'' サービスがエージェントと交換するファイルを管理する場所になります。
When saving the changes, it is possible to wait for its automatic application or [[:en:documentation:pandorafms:installation:06_server_management#ks1|manually restart PFMS server]]. From the web console view, in the server list, it will be possible to visually check whether the **RMM server** is active:
変更を保存すると、自動的に適用されるまで待つか、[[:ja:documentation:pandorafms:installation:06_server_management#ks1|PFMS サーバを手動で再起動]] することができます。Web コンソール表示のサーバ一覧で、**RMM サーバ** が有効かどうかを視覚的に確認できます。
{{ :wiki:pandora_rmm-image_010.png }}
You may also check at terminal level that the **Tentacle** process for **RMM** is active. This process should be created automatically after enabling the **RMM server**.
**RMM** の **Tentacle** プロセスが有効であることをターミナルレベルで確認することもできます。このプロセスは、**RMM サーバ** を有効にすると自動的に作成されます。
{{ :wiki:pandora_rmm-image_020.png }}
* **Enable RMM agent**
* **RMM エージェントの有効化**
To enable the RMM agent, the configuration file of each agent must also be modified. It should be noted that it works for both GNU/Linux® and MS Windows® agents. The value of the ''rmm_enabled'' line must be changed to ''1''. Other parameters:
RMM エージェントを有効にするには、各エージェントの設定ファイルも変更する必要があります。これは GNU/Linux® エージェントと MS Windows® エージェントの両方で機能することに注意してください。''rmm_enabled'' 行の値を ''1'' に変更する必要があります。その他のパラメータ:
''rmm_interval'': It determines how often the RMM agent checks whether there are queued executions for itself and runs them. By default it is set to 30 seconds. It also indicates how often it will send ''.keepalive'' files to report its connection status.
''rmm_interval'': RMM エージェントがキューに入れられた実行処理があるかどうかを確認し、それを実行する頻度を決定します。デフォルトでは 30 秒に設定されています。また、接続ステータスを報告するために ''.keepalive'' ファイルを送信する頻度も示します。
''rmm_server'': It indicates the IP address or DNS name of the RMM server. By default, this line is commented and uses the same DNS address or name that is specified in the [[:en:documentation:pandorafms:installation:05_configuration_agents#server_ip|server_ip]] parameter for the software agent. A different address or name may be specified here if the **RMM server** is located in a different machine than the **PFMS server** of the software agent.
''rmm_server'': RMM サーバーの IP アドレスまたは DNS 名を示します。デフォルトでは、この行はコメントアウトされており、ソフトウェアエージェントの [[:ja:documentation:pandorafms:installation:05_configuration_agents#server_ip|server_ip]] パラメータで指定されたものと同じ DNS アドレスまたは名前を使用します。**RMM サーバ** がソフトウェアエージェントの **PFMS サーバ** とは別のマシンにある場合は、ここで別のアドレスまたは名前を指定できます。
''rmm_port'': It indicates the port to be used for Tentacle connections, and must be the same as the one used by PFMS server. The default one is ''41123''.
''rmm_port'': Tentacle 接続に使用するポートを示します。PFMS サーバが使用するポートと同じである必要があります。デフォルトは ''41123'' です。
''rmm_temp'': It specifies the local directory for temporary files related to RMM executions. By default it will indicate ''/tmp'' on GNU/Linux® agents and ''C:\Program Files\pandora_agent\temp'' for MS/Windows® agents.
''rmm_temp'': RMM 実行に関連する一時ファイルのローカルディレクトリを指定します。デフォルトでは、GNU/Linux® エージェントの場合は ''/tmp''、MS/Windows® エージェントの場合は ''C:\Program Files\pandora_agent\temp'' です。
''rmm_extra_opts'': This parameter indicates the additional options to connect to the ''tentacle_rmm'' service, among others, it includes the password or key needed to establish the connection through **Tentacle** for RMM executions. It is configured by default, if necessary it can be found in the ''/etc/tentacle/tentacle_rmm.conf'' file of the server, in the ''password'' parameter.
''rmm_extra_opts'': このパラメータは、''tentacle_rmm'' サービスに接続するための追加オプションを示します。これには、RMM 実行のために **Tentacle** を介して接続を確立するために必要なパスワードまたはキーなどが含まれます。これはデフォルトで設定されていますが、必要な場合は、サーバーの ''/etc/tentacle/tentacle_rmm.conf'' ファイルの ''password'' パラメータで確認できます。
''rmm_debug'': It indicates the local file where the log or debug entries will be stored, in case this mode is enabled. In GNU/Linux® agents it is ''/var/log/pandora/pandora_rmm.debug'' and in MS/Windows® agents it is ''C:\Program Files\pandora_agent\pandora_rmm.debug'' by default.
''rmm_debug'': このモードが有効な場合に、ログまたはデバッグエントリが保存されるローカルファイルを示します。デフォルトでは、GNU/Linux® エージェントでは ''/var/log/pandora/pandora_rmm.debug''、MS/Windows® エージェントでは ''C:\Program Files\pandora_agent\pandora_rmm.debug'' です。
Once the changes have been saved, you may wait for the next agent interval or [[:en:documentation:pandorafms:installation:05_configuration_agents#ks5|restart it manually]]. Once the changes take effect, the ''pandora_rmm_agent'' process can be seen in the device:
変更を保存したら、次のエージェント間隔を待つか、[[:ja:documentation:pandorafms:installation:05_configuration_agents#ks5|手動で再起動してください]]。変更が有効になると、デバイスで ''pandora_rmm_agent'' プロセスが表示されます。
{{ :wiki:pandora_rmm-image_030.png}}
===== エージェントとRMMサーバ間の通信 =====
As mentioned, it is the agent that connects to the RMM server in search of executions to be performed and to report the appropriate statuses. All this is done through **Tentacle** by means of an encrypted connection thanks to the certificates included with the installation of **Pandora FMS server**. The files sent by the RMM agent are the ''.data'' and ''.keepalive''.
前述のように、RMM サーバに接続して実行する処理を検索し、適切なステータスを報告するのはエージェントです。これはすべて、**Pandora FMS サーバ** のインストールに含まれる証明書による暗号化された接続を使用して、**Tentacle** を介して行われます。RMM エージェントによって送信されるファイルは、''.data'' と ''.keepalive'' です。
==== .data ファイル ====
The ''.data''' files will be sent to the server only when script executions have been carried out in the previous time interval, where they will include, as well as in the ''.keepalive''' files, the agent name (''agent_name''), the contact date, the RMM agent time interval, and the difference is the presence of data about the execution carried out. The execution ID, the step where the execution ended, the status in numerical format, the output message (''STDOUT'') and the error message (''STDERR'') will be indicated:
''.data''' ファイルは、前回の時間間隔でスクリプトが実行された場合にのみサーバに送信されます。このファイルには、''.keepalive''' ファイルと同様に、エージェント名 (''agent_name'')、接続日、RMM エージェントの時間間隔が含まれますが、実行された処理に関するデータが存在するかどうかが異なります。実行 ID、実行が終了したステップ、数値形式のステータス、出力メッセージ (''STDOUT'')、およびエラーメッセージ (''STDERR'') が示されます。
{
"agent_name": "4a6d4f8f8d599d57ba3b5b7c1c0bf4450306e720c5c46d9de2ef31daf3984dca",
"last_contact": "1731402567",
"rmm_interval": "30",
"script": [
{
"queue_id": "60",
"step": "post",
"status": 0,
"output": "Execution completed successfully\n",
"error": ""
}
]
}
==== .keepalive ファイル ====
The ''.keepalive'' files are sent at all RMM agent intervals and will indicate to the server that the RMM agent is available/connected. The contents of these files include the agent name (''agent_name'') to facilitate linking to the corresponding agent previously registered in the console, a timestamp indicating the exact date the file was sent to work as a last contact date, and the time interval it follows:
''.keepalive'' ファイルは、すべての RMM エージェント間隔で送信され、RMM エージェントが使用可能/接続されていることをサーバに通知します。これらのファイルの内容には、コンソールに事前に登録された対応するエージェントへのリンクを容易にするエージェント名 (''agent_name'')、最後の接続日としてファイルが送信された正確な日付を示すタイムスタンプ、およびその時間間隔が含まれます。
{
"agent_name": "4a6d4f8f8d599d57ba3b5b7c1c0bf4450306e720c5c46d9de2ef31daf3984dca",
"last_contact": "1731402285",
"rmm_interval": "30"
}
===== Webコンソールからの表示と設定 =====
At this point, communication between agent and RMM server should be working properly. It can be checked by accessing the RMM Agents list or **Heatmap** view in the **Management → RMM** section of the left side menu of the Web Console.
この時点で、エージェントと RMM サーバ間の通信は正常に動作しているはずです。これは、Web コンソールの左側メニューの **管理(Management) → RMM** セクションにある RMM エージェント一覧または **ヒートマップ(Heatmap)** 表示にアクセスして確認できます。
==== ヒートマップ ====
In case the connection is successful between agents and **RMM server**, a different box will be shown for each RMM agent in the **Heatmap** view, represented with a color or color scheme and a legend to interpret the status of the RMM agent based on those colors.
エージェントと **RMM サーバ** 間の接続が成功した場合、**ヒートマップ(Heatmap)** 表示で各 RMM エージェントに対して異なるボックスが表示され、色または配色と凡例で表され、それらの色に基づいて RMM エージェントの状態を確認できます。
{{ :wiki:pandora_rmm-image_040.png }}
==== エージェント一覧 ====
From the **Agent list** view you will find the same color system for RMM agent statuses, besides having additional data such as the agent name, its IP address, its operating system and version and its description (if any).
**エージェント一覧(Agent list)** 表示では、RMM エージェントの状態と同じカラーシステムが表示されます。さらに、エージェント名、IP アドレス、オペレーティングシステムとバージョン、説明 (ある場合) などの追加データも表示されます。
{{ :wiki:pandora_rmm-image_050.png }}
==== スクリプト ====
In this view you may find all the scripts registered in the environment, as well as information about them and the possibility to create new scripts, edit existing ones or delete them.
この画面では、環境に登録されているすべてのスクリプトと、それらに関する情報が表示され、新しいスクリプトを作成したり、既存のスクリプトを編集したり、削除したりすることができます。
{{ :wiki:pandora_rmm-image_060.png }}
The form to create scripts is the same as to edit them. If you click on **New script** or on the name of one of the existing scripts, they will be opened for creation or editing.
スクリプトを作成するフォームは、スクリプトを編集するフォームと同じです。**新しいスクリプト(New script)** または既存のスクリプトの名前をクリックすると、スクリプトが開き、作成または編集できるようになります。
{{ :wiki:pandora_rmm-image_070.png }}
Each script can be given a name, a description, the operating system in which it will be used or will be supported by, as well as the version of that OS. //This part is only organizational, as it has no limitation when assigning executions to RMM agents.//
各スクリプトには、名前、説明、使用されるまたはサポートされるオペレーティングシステム、およびその OS のバージョンを指定できます。//この部分は組織的なもので、RMM エージェントに実行を割り当てる際には制限はありません。//
It is also necessary to indicate a group to which this script will belong, and next to it you will see an option called **Notify before executing**. If enabled, the agent will execute this script will report **success** status before the actual execution of the script. **This is useful in cases where** the RMM agent process would be stopped and it would be impossible to report correctly the execution data after the execution, for example when restarting the equipment. This correct status will be represented in the queue list, but in a different way than the correct status of a real finished execution, so that it can be easily identified. The status column will show a green box with white stripes or lines.
このスクリプトが属するグループを指定する必要があり、その横に **実行前に通知する(Notify before execution)** というオプションが表示されます。有効にすると、エージェントはこのスクリプトを実行し、スクリプトが実際に実行される前に **成功(success)** ステータスを報告します。**これは、** RMM エージェントプロセスが停止し、実行後に実行データを正しく報告できない場合 (たとえば、機器を再起動する場合) に役立ちます。この正しいステータスはキューリストに表示されますが、実際に完了した実行の正しいステータスとは異なる方法で表示されるため、簡単に識別できます。ステータス列には、白い縞模様または線が入った緑色のボックスが表示されます。
{{ :wiki:pandora_rmm-image_080.png }}
The following **Inputs** section will allow you to further customize the script when creating executions. By clicking on **Add input**, it will be possible to give a name, choose a type between **string** and **resource**, indicate a tip or help on this input, and the macro value that this input will have, which is automatically filled in.
次の **入力(Inputs)** セクションでは、実行を作成するときにスクリプトをさらにカスタマイズできます。**入力の追加(Add input)** をクリックすると、名前を付けたり、**文字列(string)** と **リソース(resource)** の間でタイプを選択したり、この入力に関するヒントやヘルプを指定したり、この入力に含まれるマクロ値 (自動的に入力されます) を指定したりできるようになります。
{{ :wiki:pandora_rmm-image_090.png }}
The difference between **string** and **resource** types is that with an input of type string, when creating an execution, the value of this input can be indicated by hand and, as its name indicates, it would be a text or character string.
**文字列(string)** 型と **リソース(resource)** 型の違いは、文字列型の入力では、実行を作成するときに、この入力の値を手動で指定でき、その名前が示すように、テキストまたは文字列になることです。
If a script that restarts a service makes use of string inputs, this script may be used for multiple services, just by indicating a different service for each execution. With resource inputs, it will be possible to choose the resource to be used by the script in each execution. To do this, you need to upload the resources beforehand, as we will see later on.
サービスを再起動するスクリプトが文字列入力を使用する場合、実行ごとに異なるサービスを指定するだけで、このスクリプトを複数のサービスに使用できます。リソース入力を使用すると、実行ごとにスクリプトが使用するリソースを選択できます。これを行うには、後で説明するように、事前にリソースをアップロードする必要があります。
Inputs are not required for script creation.
スクリプトの作成には入力は必要ありません。
Once the inputs are configured, the next step is to configure the script itself. There are three types of scripts:
入力が設定されたら、次のステップはスクリプト自体を設定することです。スクリプトには 3 つの種類があります。
* **Precondition script**.
* **Script**.
* **Post script**.
* **事前条件スクリプト(Precondition script)**.
* **スクリプト(Script)**.
* **事後スクリプト(Post script)**.
Out of these three types, only script configuration, located in the middle, is required:
これら 3 つのタイプのうち、中央にあるスクリプト設定のみが必須です。
{{ :wiki:pandora_rmm-image_100.png }}
The configuration structure is the same for all three types. You may indicate which parameters each script will use in the **Parameters** field by indicating the macro name seen in the **Inputs** section. In the **Interpreter** section indicate which command interpreter will be used to run the script. You may use some such as Bash, Python, Perl… always taking into account that they must be installed and available in the agent environment.
In **File extension**, the extension of the script file will be indicated and finally the **Code** section, where the script code itself will be entered. The file extension is especially important in MS Windows® systems, since in case of not indicating the appropriate one, the scripts would not be executed correctly.
Once the script is configured, just click on **Update configuration** to update it if was edited or **Save configuration** if a new one was created.
==== Resources ====
This view contains the uploaded resources that may later be used in executions. By default, this view will not show anything, but rather your own resources should be added.
The file must be selected from the explorer, clicking on **Select a file** and indicating a **short name** that will work as a unique identifier for the resource. When uploading a resource using a **short name** that already exists, you will be asked if you wish to update the previous resource.
These resources will be stored, as well as the ''keepalive'' and ''data'' folders, in the RMM directory indicated in the server configuration file under the name ''res''.
In the Web Console, it will be displayed as follows:
{{ :wiki:pandora_rmm-image_110.png }}
There is also the option of deleting these resources individually or in bulk. These resources may be used as inputs in the [[#ks4_3|scripts]] if the input type is set to **Resource**.
==== Agent details ====
To be able to see the **Queues** and **Schedules** views in a correct way, it is necessary to add executions in some agent, otherwise no content will be displayed.
To do this, from **Agent list** or **Heatmap** you may access the **Agent details** view of the chosen agent by clicking on its name. Default view without any execution created:
{{ :wiki:pandora_rmm-image_120.png }}
To add executions to the agent, just click on **New execution** and the execution creation form will open.
Here you may use the first drop-down list to filter according to your operating system (organizational data). Then, with the **Scripts** drop down list you may choose which script will be used by the execution you are creating.
Afterwards, the name of the execution and its type of programming may be indicated:
* **Only once**: It will add the execution right away to the queue, so it will be executed immediately after its creation and as soon as the RMM agent reads the execution in the server. They will be visible in the **Queues** view.
* **Schedule**: It will show drop-downs to select, in **cron** format, when the execution will take place. Until the indicated time elapses, this type of executions will not appear in the **Queues** view but will always be visible and editable from the **Schedules** view.
{{ :wiki:pandora_rmm-image_150.png }}
Depending on the chosen script, its inputs, if any, will appear. **S****tring** ones will let you fill in the text as needed, and resource ones will offer the list of RMM resources uploaded to the environment.
In addition, if the **Tip** field is filled in by configuring the inputs, it will display the help message:
{{ :wiki:pandora_rmm-image_160.png }}
After finishing the configuration for execution, click **Confirm** to save. It will be listed in the **Agent details** view:
{{ :wiki:pandora_rmm-image_170.png }}
The executions will be automatically grouped by task name and script, so that if there are executions at different times that share name and script, their execution histories will be merged and will be visible by clicking on the **Execution history** button that appears in the **Actions** column of the table.
{{ :wiki:pandora_rmm-image_180.png }}
As for the scheduled runs, they will appear in the lower table and their consecutive runs will only appear when the time indicated in the **Cron** section goes by.
==== Queues ====
In this view you may find all the consecutive runs in the environment together with a series of data that will help to identify them.
{{ :wiki:pandora_rmm-image_190.png }}
A number of filters will help to limit the data displayed, such as **Free search** (will search in the columns **Task name, agent, script, step, output, error**) and filters by **scripts, status, last queue, step**.
In addition, there are actions in the table to open the execution detail or to delete it from the queue. **If it was not executed yet, this will prevent its future execution ** If it was executed, it will just be deleted both from the list of RMM agent executions and from the queue view.
==== Schedules ====
To display the scheduled executions:
{{ :wiki:pandora_rmm-image_200.png }}
Filters may be used to search by agent, script or specified **cron** schedules. It is also possible to edit tasks or delete them.
[[:ja:documentation:start|Pandora FMS ドキュメント一覧に戻る]]