ja:documentation:pandorafms:technical_annexes:03_capacity_planning

差分

このページの2つのバージョン間の差分を表示します。

この比較画面へのリンク

両方とも前のリビジョン 前のリビジョン
次のリビジョン
前のリビジョン
ja:documentation:pandorafms:technical_annexes:03_capacity_planning [2024/08/16 05:29] – [SNMP サーバ] junichija:documentation:pandorafms:technical_annexes:03_capacity_planning [2024/10/14 06:48] (現在) – [概要] junichi
行 9: 行 9:
 ===== 概要 ===== ===== 概要 =====
  
-[[en:documentation:pandorafms:introduction:01_introduction|Pandora FMS]] is a complex distributed application that has different key elements, susceptible to represent a bottleneck if it is not sized and configured correctly. The purpose of this chapter is to help to carry out a capacity study, **to analyze the //scalability// of Pandora FMS according to a specific set of parameters**. This study will help to know the requirements that the installation should have to be able to support a certain capacity.+[[:en:documentation:pandorafms:introduction:01_introduction|Pandora FMS]] is a complex distributed application that has different key elements, susceptible to represent a bottleneck if it is not sized and configured correctly. The purpose of this chapter is to help to carry out a capacity study, **to analyze the //scalability// of Pandora FMS according to a specific set of parameters**. This study will help to find out the requirements that the installation should have to be able to support a certain capacity.
  
 [[:ja:documentation:pandorafms:introduction:01_introduction|Pandora FMS]] は、さまざまな主要要素を持つ複雑な分散アプリケーションであり、サイズと設定が適切でない場合、ボトルネックになりやすくなります。この章の目的は、キャパシティ スタディの実行、**Pandora FMS の //スケーラビリティ// を特定のパラメータ セットに従って分析する** ことです。このスタディは、特定のキャパシティをサポートするために必要なインストール要件を知るのに役立ちます。 [[:ja:documentation:pandorafms:introduction:01_introduction|Pandora FMS]] は、さまざまな主要要素を持つ複雑な分散アプリケーションであり、サイズと設定が適切でない場合、ボトルネックになりやすくなります。この章の目的は、キャパシティ スタディの実行、**Pandora FMS の //スケーラビリティ// を特定のパラメータ セットに従って分析する** ことです。このスタディは、特定のキャパシティをサポートするために必要なインストール要件を知るのに役立ちます。
  
-The load tests are also used to observe the maximum capacity per server. In the current architecture model ([[en:documentation:pandorafms:technical_reference:10_versions|version 3.0 or later]]), with "N" independent servers and a **[[en:documentation:pandorafms:command_center:01_introduction|Command Center (Metaconsole)]]** installed, this //scalability //tends to be of linear order, while //scalability// based on centralized models is exponential.+Load tests are also used to see the maximum capacity per server. In the current architecture model ([[:en:documentation:pandorafms:technical_reference:10_versions|version 3.0 or later]]), with "N" independent servers and a **[[:en:documentation:pandorafms:command_center:01_introduction|Command Center (Metaconsole)]]** installed, this //scalability //tends to be of linear order, while //scalability// based on centralized models is exponential.
  
 負荷テストは、サーバあたりの最大容量を観察するためにも使用されます。現在のアーキテクチャモデル ([[ja:documentation:pandorafms:technical_reference:10_versions|バージョン 3.0 以降]]) では、"N" 台の独立したサーバと **[[ja:documentation:pandorafms:command_center:01_introduction|コマンドセンター (メタコンソール)]]** がインストールされている場合、この //スケーラビリティ // は線形になる傾向がありますが、単一サーバモデルでの //スケーラビリティ// は指数関数的になります。 負荷テストは、サーバあたりの最大容量を観察するためにも使用されます。現在のアーキテクチャモデル ([[ja:documentation:pandorafms:technical_reference:10_versions|バージョン 3.0 以降]]) では、"N" 台の独立したサーバと **[[ja:documentation:pandorafms:command_center:01_introduction|コマンドセンター (メタコンソール)]]** がインストールされている場合、この //スケーラビリティ // は線形になる傾向がありますが、単一サーバモデルでの //スケーラビリティ// は指数関数的になります。
行 515: 行 515:
 ==== プラグイン、ネットワーク(オープンソース)、HTTP サーバ ==== ==== プラグイン、ネットワーク(オープンソース)、HTTP サーバ ====
  
-Here is applied the same concept that above, but in a more simplified wayYou should check:+The same concept applies here as above, but in a more simplified formIt will be necessary to control:
  
 前述と同じ概念を適用しますが、より単純化された方法です。 以下を確認する必要があります。 前述と同じ概念を適用しますが、より単純化された方法です。 以下を確認する必要があります。
  
   * Number of threads.   * Number of threads.
 +  * Timeouts to calculate the worst-case incidence.
 +  * Average check time.
  
   * スレッド数   * スレッド数
- 
-  * Timeouts (to calculate the incidence in the worst case). 
- 
   * タイムアウト(最悪の場合の発生率を計算するため)   * タイムアウト(最悪の場合の発生率を計算するため)
- 
-  * Check average time. 
- 
   * 平均時間の確認   * 平均時間の確認
  
-Scaling with these data a test group and check that the server capacity is constant over time.+Size a test set with this data, and verify that the server capacity is constant over time.
  
 これらのデータを使用してテストグループをスケーリングし、サーバ容量が時間の経過とともに一定であることを確認します。 これらのデータを使用してテストグループをスケーリングし、サーバ容量が時間の経過とともに一定であることを確認します。
 +
 +<wrap #ks3_5 />
  
 ==== トラップ受信 ==== ==== トラップ受信 ====
  
-Herethe case is more simplessume that the system is not going to receive traps in a constant way, but that it is about evaluating the response to traps floodfrom which some of them will generate alerts.+Here the assumption is simplerit is assumed that the system is not going to receive traps constantly, but rather to evaluate the response to an avalanche of traps, some of which will generate alerts.
  
 このケースはより単純です。システムが一定量のトラップを受信するのではなく、一時的に大量のトラップが来た場合の応答を評価し、そこからアラートを生成することを想定します。 このケースはより単純です。システムが一定量のトラップを受信するのではなく、一時的に大量のトラップが来た場合の応答を評価し、そこからアラートを生成することを想定します。
  
-To do thisyou will only have to do simple script that generates traps in a controlled way and at hight speed:+To do this you simply need to make a script that generates traps in a controlled manner at high speed:
  
 それには、制御された方法で高速でトラップを生成する単純なスクリプトを実行するだけで済みます。 それには、制御された方法で高速でトラップを生成する単純なスクリプトを実行するだけで済みます。
  
-<file>+<code bash>
 #!/bin/bash #!/bin/bash
 TARGET=192.168.1.1 TARGET=192.168.1.1
行 553: 行 551:
 done done
  
-</file>+</code>
  
-Note: stop it with the CTRL+C key after a few seconds, as it will generate hundreds of traps quickly.+**Note**: stop it with the CTRL+C key after a few seconds, as it will generate hundreds of traps quickly.
  
-注: 数百のトラップがすばやく生成されるため、数秒後に CTRL+C キーで停止してください。+****: 数百のトラップがすばやく生成されるため、数秒後に CTRL+C キーで停止してください。
  
-Once the environment is set up we need to validate the following things:+Once the environment has been set upthe following assumptions must be validated:
  
 環境をセットアップしたら、次のことを検証する必要があります。 環境をセットアップしたら、次のことを検証する必要があります。
  
-  - Traps injection to a constant rate(just put one ''sleep 1''  to the previous script inside the loop **while**, to generate 1 trap/secLet the system operating 48 hours and evaluate the impact in the server. +  - Injection of traps at a constant rate (just enter a ''sleep 1'' command to the above script inside the **while** loop, to generate 1 trap per secondThe system is left running for 48 hours and the impact on the server is evaluated
-  - Traps Storm. Evaluate moments before, during and the recovery if traps storm occurs+  - Trap storm. Evaluate the before, duringand recovery from trap storm. 
-  - Effects of the system on a huge traps table ( more than 50 thounsand). This includes the effect of passing the DDBB maintenance.+  - Effects of the system on a very large table of traps (greater than 50 thousand). This includes the effect of passing the DB maintenance.
  
   - 一定速度のトラップを受信します(前述のスクリプトの **while** ループ内に ''sleep 1'' を設定するだけで、1トラップ/秒を生成します)。システムを 48時間稼働させ、サーバへの影響を評価します。   - 一定速度のトラップを受信します(前述のスクリプトの **while** ループ内に ''sleep 1'' を設定するだけで、1トラップ/秒を生成します)。システムを 48時間稼働させ、サーバへの影響を評価します。
   - 大量トラップ。大量のトラップ受信が発生した場合の、その前後、発生中の評価をします。   - 大量トラップ。大量のトラップ受信が発生した場合の、その前後、発生中の評価をします。
   - 巨大なトラップテーブル(5万以上)に対するシステム影響の確認。 これには、データベースメンテナンスへの影響も含みます。   - 巨大なトラップテーブル(5万以上)に対するシステム影響の確認。 これには、データベースメンテナンスへの影響も含みます。
 +
 +<wrap #ks3_6 />
  
 ==== イベント ==== ==== イベント ====
  
-In a similar way as with the SNMP, evaluate the PFMS system'[[:en:documentation:04_using:02_events|events]] in two cases:+Similar to SNMP, the [[en:documentation:pandorafms:management_and_operation:02_events|events]] of the PFMS system will be evaluated in two scenarios:
  
-SNMP の場合と同様に、次の 2つの場合の Pandora FMS システムの[[:ja:documentation:04_using:02_events|イベント]]を評価します。+SNMP の場合と同様に、次の 2つの場合の Pandora FMS システムの[[:ja:documentation:pandorafms:management_and_operation:02_events|イベント]]を評価します。
  
-1. Normal range of event reception. This has been already tested in the data server, so in each status change, an event will be generated.+  - Normal event reception rate. This has already been tested in the data server, since an event is generated at each state change
 +  - Event generation storm. To do thiswe will force the generation of events via CLIUsing the following command (with an existing group called "Tests"):
  
-1. イベント受信の通常の範囲。 これはデータサーバですでにテストされているため、ステータスが変更されるたびにイベントが生成されます。+  - イベント受信の通常の範囲。 これはデータサーバですでにテストされているため、ステータスが変更されるたびにイベントが生成されます。 
 +  - 大量のイベント生成。これを行うには、CLI を介してイベントの生成を強制します。 次のコマンドを使用します(作成された "TestingGroup" を使用)
  
-2. Event generation Storm. To do this, we force the generation of evets via CLI. Using the following command (with a created "TestingGroup"):+<code bash> 
 +pandora_manage /etc/pandora/pandora_server.conf --create_event "Event testsystem Tests
  
-2. 大量のイベント生成。これを行うには、CLI を介してイベントの生成を強制します。 次のコマンドを使用します(作成された "TestingGroup" を使用)。+</code>
  
-<file>+That command, used in a loop like the one used to generate traps, can be used to generate dozens of events per second. It can be parallelized in a script with several instances to cause a higher number of insertions. This would serve to simulate the behavior of the system in an event storm. In this way the system could be tested before, during and after an event storm.
  
-/usr/share/pandora_server/util/pandora_manage.pl \ +このコマンドは、トラップの生成に使用したものと同様にループを使用し、1秒ごとに数十のイベントを生成するために使用します。発生数を増やすために、複数のインスタンスを使用して 1つのスクリプトを並列化することができます。 これは、大量のイベントが発生した場合にシステムのパフォーマンスをシミュレートするのに役立ちます。 このようにして、大量イベントの前後、最中にシステムをチェックできます。
-  /etc/pandora/pandora_server.conf --create_event "Event test" system TestingGroup+
  
-</file> +<wrap #ks3_7 />
- +
-This command, used un a loop as the one used to generate traps, it can be used to generate tens of events by second. It could be parallelize in one script with several instances to get a higher number of insertions. This will be useful to simulate the performance of the system if an event storm happens. This way we could check the system, before, during and after the event storm. +
- +
-このコマンドは、トラップの生成に使用したものと同様にループを使用し、1秒ごとに数十のイベントを生成するために使用します。発生数を増やすために、複数のインスタンスを使用して 1つのスクリプトを並列化することができます。 これは、大量のイベントが発生した場合にシステムのパフォーマンスをシミュレートするのに役立ちます。 このようにして、大量イベントの前後、最中にシステムをチェックできます。+
  
 ==== ユーザの同時アクセス ==== ==== ユーザの同時アクセス ====
  
-For this use another serverindependent from Pandora FMS, using the WEB monitoring functionality. Do a user session where we have to do the following tasks in this orderand see how long they take.+For thisanother server independent from Pandora FMS will be used, using the WEB monitoring functionality. In a user session where it will perform the following tasks in a specific order and measure how long they take to be processed:
  
 こにには、WEB 監視機能を使用して、Pandora FMS から独立した別のサーバを使用します。 次のタスクをこの順序で実行するユーザセッションを実行し、それらにかかる時間を確認します。 こにには、WEB 監視機能を使用して、Pandora FMS から独立した別のサーバを使用します。 次のタスクをこの順序で実行するユーザセッションを実行し、それらにかかる時間を確認します。
  
-  - Login in the console+  - Login to the web console.
   - See events.   - See events.
   - Go to the group view.   - Go to the group view.
-  - Go to the agent detail view. +  - Go to agent detail view 
-  - Visualize a report (in HTML). This report should contain a pair of graphs and a pair of modules with report type SUM or AVERAGE. The interval of each item should be of one week or five days. +  - Display a report (in HTML). This report should contain a couple of graphs and a couple of modules with SUM or AVERAGE type reports. The interval for each item should be one week or five days. 
-  - Visualization of a combined graph (24 hours). +  - Display of a combined graph (24 hours). 
-  - Generation of report in PDF (another different report).+  - Generation of PDF report (another different report).
  
   - コンソールへのログイン。   - コンソールへのログイン。
行 618: 行 616:
   - PDF でのレポート生成(他のレポートにて)。   - PDF でのレポート生成(他のレポートにて)。
  
-This test is done with at least three different users. This task could be parallelize to execute it every minute, so as if there are 5 tasks (each one with their user) we would be simulating the navigation of simultaneous users.Once the environment is set upwe should consider this:+This test is performed with at least three different users. You can parallelize that task to run it every minute, so that if there are 5 tasks (each with its user), you would be simulating the navigation of five simultaneous users. Once the environment is establishedit will take into account:
  
 このテストは、少なくとも 3人の異なるユーザを使用して行います。このタスクは並列化して毎分実行することができるため、5つのタスク(それぞれがユーザを含む)があるのであれば、5人のユーザの同時ナビゲーションをシミュレートします。環境をセットアップしたら、次のことを考慮する必要があります。 このテストは、少なくとも 3人の異なるユーザを使用して行います。このタスクは並列化して毎分実行することができるため、5つのタスク(それぞれがユーザを含む)があるのであれば、5人のユーザの同時ナビゲーションをシミュレートします。環境をセットアップしたら、次のことを考慮する必要があります。
  
-  - The average velocity of each module is relevant facing to identify " bottle necksrelating with other parallel activities, such as the execution of the maintenance script, etc+  - The average speed of each module is relevant in order to identify "bottlenecksrelated to other parallel activities, such as the execution of maintenance //script//et cetera
-  - The impact of CPU and memory will be measured in the server for each concurrent session. +  - CPU and memory impact on the server will be measured for each concurrent session. 
-  - The impact of each user session simulated referred to the average time of the rest of sessions will be measuredThis is, you should estimate how many seconds of delay adds each simultaneous extra session.+  - The impact of each simulated user session will be measured with respect to the average time of the rest of the sessions. That is, it should be estimated how many seconds of delay each simultaneous extra session adds.
  
   - 各モジュールの平均速度で、メンテナンススクリプトの実行など、他の平行して行われる処理に関連した "ボトルネック" を特定します。   - 各モジュールの平均速度で、メンテナンススクリプトの実行など、他の平行して行われる処理に関連した "ボトルネック" を特定します。
  • ja/documentation/pandorafms/technical_annexes/03_capacity_planning.1723786170.txt.gz
  • 最終更新: 2024/08/16 05:29
  • by junichi