JP5997659B2 - Distributed processing system and distributed processing method - Google Patents
Distributed processing system and distributed processing method Download PDFInfo
- Publication number
- JP5997659B2 JP5997659B2 JP2013099117A JP2013099117A JP5997659B2 JP 5997659 B2 JP5997659 B2 JP 5997659B2 JP 2013099117 A JP2013099117 A JP 2013099117A JP 2013099117 A JP2013099117 A JP 2013099117A JP 5997659 B2 JP5997659 B2 JP 5997659B2
- Authority
- JP
- Japan
- Prior art keywords
- processing unit
- processing
- information
- unit
- physical server
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 238000012545 processing Methods 0.000 title claims description 862
- 238000003672 processing method Methods 0.000 title description 6
- 238000012217 deletion Methods 0.000 claims description 98
- 230000037430 deletion Effects 0.000 claims description 98
- 238000000034 method Methods 0.000 claims description 69
- 241001522296 Erithacus rubecula Species 0.000 claims description 9
- 238000010586 diagram Methods 0.000 description 10
- 230000005540 biological transmission Effects 0.000 description 8
- 238000004891 communication Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 238000007616 round robin method Methods 0.000 description 4
- 239000000284 extract Substances 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 230000003247 decreasing effect Effects 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 230000001174 ascending effect Effects 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 239000006185 dispersion Substances 0.000 description 1
- 125000005842 heteroatom Chemical group 0.000 description 1
- 230000001771 impaired effect Effects 0.000 description 1
- 238000013508 migration Methods 0.000 description 1
- 230000005012 migration Effects 0.000 description 1
- 230000000087 stabilizing effect Effects 0.000 description 1
Images
Landscapes
- Engineering & Computer Science (AREA)
- Computer And Data Communications (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
Description
本発明は、アプリケーション負荷を物理サーバで構成される物理サーバ群の複数の処理部において、分散処理させる技術分野に属する。 The present invention belongs to a technical field in which an application load is distributedly processed in a plurality of processing units of a physical server group including physical servers.
近年、システム規模の拡大やサーバ仮想化技術の普及に伴い、システム全体の調達コストを削減することが課題となっている。特に、サーバ仮想化技術を用いたシステム運用では、クライアントからの処理要求を処理するための処理部(仮想マシン)の数を柔軟に変更することが可能であるため、入力された処理要求の負荷量に応じて、実行する処理部数を調整することにより、使用する処理部数を減らし、物理サーバの台数を削減することができる。 In recent years, with the expansion of the system scale and the spread of server virtualization technology, it has become an issue to reduce the procurement cost of the entire system. In particular, in system operation using server virtualization technology, the number of processing units (virtual machines) for processing processing requests from clients can be flexibly changed. By adjusting the number of processing copies to be executed according to the amount, the number of processing copies to be used can be reduced and the number of physical servers can be reduced.
アプリケーション負荷の変動に応じて、実行する処理部数を調整する従来技術として、特許文献1に記載の技術が挙げられる。
特許文献1に記載の技術は、クライアントから入力された処理要求の負荷およびその処理要求を処理するアプリケーションの処理部ごとの負荷を監視することにより処理部の増設判断を行い、必要に応じて処理部の増設を行うスケールアウト方式のシステム構成をとる。しかしながら、特許文献1に記載の技術は、負荷増加時に処理部を増設するのみで、負荷変動に応じた処理部の増減ができないため、リソース使用効率の低下を招く虞がある。
この問題を解決するため、クライアントから入力された処理要求の負荷を監視し、負荷の変動に応じて処理部の増設・減設の双方が可能なスケールアウト方式のシステム構成が考えられる。この場合のシステム構成は、クライアントから入力された処理要求による負荷量を、各処理部に振り分ける前の段階で監視し、監視の結果得られた負荷量に対して、上限・下限閾値を用いたシンプルな処理部の増減設判定基準を設けたものになる。
As a conventional technique for adjusting the number of processing units to be executed according to a change in application load, a technique described in Patent Document 1 can be cited.
The technology described in Patent Document 1 determines whether to add a processing unit by monitoring the load of a processing request input from a client and the load of each processing unit of an application that processes the processing request. A scale-out system configuration is used to add more units. However, the technique described in Patent Document 1 only increases the number of processing units when the load increases, and the number of processing units cannot be increased or decreased according to load fluctuations.
In order to solve this problem, a scale-out system configuration is conceivable in which the load of a processing request input from a client is monitored, and both processing units can be added / removed in accordance with load fluctuations. The system configuration in this case is to monitor the load amount due to the processing request input from the client at the stage before allocating to each processing unit, and use the upper and lower thresholds for the load amount obtained as a result of the monitoring. A simple processing unit increase / decrease determination criterion is provided.
しかしながら、上記のようなシステム構成では、実際に処理要求を各処理部に振り分ける振分部において負荷量の総量の監視が不可能なシステム仕様の場合(例えば、単純なラウンドロビンで振り分けるロードバランサ等を振分部に用いる場合)に適用が困難になる。さらに、上限・下限閾値に基づき増減設を単純に判定するため、各閾値を超える度に処理部の増減設処理を実行することとなり、処理部数の変更や処理部の配置変更に要するオーバヘッドが増加し、システム安定性が損なわれる虞がある。 However, in the system configuration as described above, in the case of a system specification in which it is impossible to monitor the total amount of load in the distribution unit that actually distributes processing requests to each processing unit (for example, a load balancer that distributes by simple round robin, etc. Is difficult to apply to the distribution unit. Furthermore, since the increase / decrease setting is simply determined based on the upper and lower thresholds, the processing unit increase / decrease processing is executed each time the thresholds are exceeded, increasing the overhead required for changing the number of processing units and changing the arrangement of the processing units. However, system stability may be impaired.
このような背景に鑑みて本発明がなされたのであり、本発明は、振分部において負荷量の監視が不可能な場合であっても、負荷量に応じて適切な処理部数を設定でき、処理部数の変更に伴うオーバヘッドの増加を抑えシステム安定性を確保できる、分散処理システムおよび分散処理方法を提供することを課題とする。 The present invention has been made in view of such a background, and the present invention can set an appropriate number of processing units according to the load amount even when the load amount cannot be monitored in the distribution unit, It is an object of the present invention to provide a distributed processing system and a distributed processing method capable of suppressing an increase in overhead associated with a change in the number of processing units and ensuring system stability.
前記した課題を解決するため、請求項1に記載の発明は、クライアントから受け取った処理要求を、物理サーバに配置された処理部に振り分ける振分装置と、前記振り分けられた処理要求を処理する処理部と、1つ以上の前記処理部を配置する複数の前記物理サーバと、前記振分装置、前記処理部それぞれおよび複数の前記物理サーバに接続され、前記物理サーバに配置される前記処理部の数を調整するリソース調整装置と、を備える分散処理システムであって、前記処理部それぞれが、当該処理部自身の使用リソース量または処理件数を収集する処理部負荷量情報収集部と、収集した前記使用リソース量または前記処理件数を処理部負荷量情報として、前記リソース調整装置に通知する処理部負荷量情報通知部と、を備え、前記リソース調整装置が、(1)前記処理部の追加を判定するための、前記処理部負荷量情報に対する上限閾値および前記上限閾値以上の値が継続する期間を示す第1の継続期間閾値、並びに、(2)前記処理部の削除を判定するための、前記処理部負荷量情報に対する下限閾値および前記下限閾値を下回る値が継続する期間を示す第2の継続期間閾値、が格納される処理部増減判定閾値情報が記憶される記憶部と、前記処理部それぞれから、前記処理部負荷量情報を受信する処理部負荷量情報受信部と、前記処理部負荷量情報に基づき、前記分散処理システムの全処理部のうち第1の所定の割合以上を占める処理部の前記使用リソース量または前記処理件数が、前記上限閾値以上である期間が前記第1の継続期間閾値を超える場合に前記処理部の追加条件を満たすと判定すると共に、前記処理部負荷量情報に基づき、前記分散処理システムの全処理部のうち第2の所定の割合以上を占める処理部の前記使用リソース量または前記処理件数が、前記下限閾値を下回る期間が前記第2の継続期間閾値を超える場合に前記処理部の削除条件を満たすと判定する処理部増減判定部と、前記処理部の追加条件を満たすと判定された場合に、前記物理サーバに対し処理部を追加するように制御すると共に、前記処理部の削除条件を満たすと判定された場合に、前記物理サーバに対し処理部を削除するように制御する処理部配置実行部と、前記処理部を追加する場合に、当該追加する処理部の情報を含む処理部追加情報を生成し前記振分装置に送信すると共に、前記処理部を削除する場合に、当該削除する処理部の情報を含む処理部削除情報を生成し前記振分装置に送信する処理部追加・削除情報送信部と、を備え、前記振分装置が、前記処理要求の振分先となる前記処理部を示す振分先情報が記憶される記憶部と、前記処理部追加情報に示される前記追加する処理部の情報を前記振分先情報に登録すると共に、前記処理部削除情報に示される前記削除する処理部の情報を前記振分先情報から削除する処理部追加・削除実行部と、受信した前記処理要求を、前記振分先情報を参照して、前記処理部に振り分ける振分処理部と、を備えることを特徴とする分散処理システムとした。 In order to solve the above-described problem, the invention according to claim 1 is directed to a distribution device that distributes a processing request received from a client to a processing unit arranged in a physical server, and a process that processes the distributed processing request A plurality of physical servers in which one or more processing units are arranged, the distribution device, each of the processing units, and each of the plurality of physical servers, and the processing units arranged in the physical server Each of the processing units, a processing unit load amount information collecting unit that collects the used resource amount or the number of processing cases of the processing unit, and the collected A processing unit load amount information notifying unit for notifying the resource adjusting device of the amount of used resources or the number of processing cases as processing unit load amount information, (1) An upper limit threshold for the processing unit load amount information for determining whether to add the processing unit, a first duration threshold indicating a period during which a value equal to or greater than the upper limit threshold continues, and (2 ) A processing unit increase / decrease determination threshold for storing a lower limit threshold for the processing unit load information and a second duration threshold indicating a period during which a value lower than the lower threshold continues to determine deletion of the processing unit A storage unit for storing information, a processing unit load amount information receiving unit for receiving the processing unit load amount information from each of the processing units , and all processing units of the distributed processing system based on the processing unit load amount information first the use resource amount or the processed number of processing units account for more than a predetermined percentage, additional terms of the processing unit when the period in which the at least the upper threshold exceeds said first duration threshold of Thereby judged satisfied, based on the processor load information, the used resource amount or the processed number of processor occupying the second predetermined ratio or more of the total processor of the distributed processing system, the lower threshold A processing unit increase / decrease determination unit that determines that the deletion condition of the processing unit is satisfied when the period less than the second duration threshold is exceeded, and the physical unit when it is determined that the additional condition of the processing unit is satisfied A processing unit placement execution unit that controls the server to delete a processing unit when it is determined that the processing unit is added to the server, and when it is determined that a deletion condition of the processing unit is satisfied. When adding the processing unit, the processing unit additional information including information of the processing unit to be added is generated and transmitted to the distribution device, and when the processing unit is deleted, the processing unit to be deleted A processing unit addition / deletion information transmission unit that generates processing unit deletion information including the information of the processing unit and transmits the processing unit deletion information to the distribution device, and the distribution device includes the processing unit as a distribution destination of the processing request The storage unit information to be stored is stored, and the information of the processing unit to be added indicated in the processing unit additional information is registered in the distribution destination information, and the deletion indicated in the processing unit deletion information is deleted. A processing unit addition / deletion execution unit that deletes information of the processing unit from the distribution destination information; a distribution processing unit that distributes the received processing request to the processing unit with reference to the distribution destination information; A distributed processing system characterized by comprising:
また、請求項4に記載の発明は、クライアントから受け取った処理要求を、物理サーバに配置された処理部に振り分ける振分装置と、前記振り分けられた処理要求を処理する処理部と、1つ以上の前記処理部を配置する複数の前記物理サーバと、前記振分装置、前記処理部それぞれおよび複数の前記物理サーバに接続され、前記物理サーバに配置される前記処理部の数を調整するリソース調整装置と、を備える分散処理システムの分散処理方法であって、前記処理部それぞれが、当該処理部自身の使用リソース量または処理件数を収集するステップと、収集した前記使用リソース量または前記処理件数を処理部負荷量情報として、前記リソース調整装置に通知するステップと、を実行し、前記リソース調整装置が、(1)前記処理部の追加を判定するための、前記処理部負荷量情報に対する上限閾値および前記上限閾値以上の値が継続する期間を示す第1の継続期間閾値、並びに、(2)前記処理部の削除を判定するための、前記処理部負荷量情報に対する下限閾値および前記下限閾値を下回る値が継続する期間を示す第2の継続期間閾値、が格納される処理部増減判定閾値情報が記憶される記憶部を備えており、前記処理部それぞれから、前記処理部負荷量情報を受信するステップと、前記処理部負荷量情報に基づき、前記分散処理システムの全処理部のうち第1の所定の割合以上を占める処理部の前記使用リソース量または前記処理件数が、前記上限閾値以上である期間が前記第1の継続期間閾値を超える場合に前記処理部の追加条件を満たすと判定するステップと、前記処理部負荷量情報に基づき、前記分散処理システムの全処理部のうち第2の所定の割合以上を占める処理部の前記使用リソース量または前記処理件数が、前記下限閾値を下回る期間が前記第2の継続期間閾値を超える場合に前記処理部の削除条件を満たすと判定するステップと、前記処理部の追加条件を満たすと判定された場合に、前記物理サーバに対し処理部を追加するように制御するステップと、前記処理部の削除条件を満たすと判定された場合に、前記物理サーバに対し処理部を削除するように制御するステップと、前記処理部を追加する場合に、当該追加する処理部の情報を含む処理部追加情報を生成し前記振分装置に送信するステップと、前記処理部を削除する場合に、当該削除する処理部の情報を含む処理部削除情報を生成し前記振分装置に送信するステップと、を実行し、前記振分装置が、前記処理要求の振分先となる前記処理部を示す振分先情報が記憶される記憶部を備えており、前記処理部追加情報に示される前記追加する処理部の情報を前記振分先情報に登録するステップと、前記処理部削除情報に示される前記削除する処理部の情報を前記振分先情報から削除するステップと、受信した前記処理要求を、前記振分先情報を参照して、前記処理部に振り分けるステップと、を実行することを特徴とする分散処理方法とした。 According to a fourth aspect of the present invention, there is provided a distribution device that distributes a processing request received from a client to a processing unit arranged in a physical server, a processing unit that processes the distributed processing request, and one or more processing units. A plurality of physical servers in which the processing units are arranged, and resource adjustment that adjusts the number of the processing units that are connected to the distribution device, the processing units, and the plurality of physical servers and are arranged in the physical servers A distributed processing method of a distributed processing system comprising: a step in which each of the processing units collects the amount of used resources or the number of processed cases of the processing unit itself; and the collected amount of used resources or the number of processed cases A step of notifying the resource adjustment device as processing unit load amount information, and the resource adjustment device adds (1) the processing unit. An upper limit threshold for the processing unit load amount information and a first duration threshold indicating a period during which a value equal to or higher than the upper limit threshold continues, and (2) for determining deletion of the processing unit, A storage unit for storing processing unit increase / decrease determination threshold information in which a lower limit threshold for the processing unit load amount information and a second duration threshold indicating a period during which a value lower than the lower limit threshold continues are stored; Receiving the processing unit load information from each of the processing units, and the processing units occupying a first predetermined ratio or more of all processing units of the distributed processing system based on the processing unit load information. Determining that an additional condition of the processing unit is satisfied when a period in which the amount of resources used or the number of processes exceeds the first threshold exceeds a first duration threshold; Based on the load information, the dispersion the use resource amount or the processed number of processor occupying the second predetermined ratio or more of the total processing of the processing system, the duration is the second below the lower threshold A step of determining that the deletion condition of the processing unit is satisfied when a period threshold is exceeded, and a step of controlling to add a processing unit to the physical server when it is determined that the additional condition of the processing unit is satisfied And a step of controlling the physical server to delete the processing unit when it is determined that the processing unit deletion condition is satisfied, and information on the processing unit to be added when adding the processing unit Generating the processing unit additional information including the processing unit and transmitting the processing unit to the allocating device; and, when deleting the processing unit, generating processing unit deletion information including information on the processing unit to be deleted Transmitting to an apparatus, and the distribution apparatus includes a storage unit that stores distribution destination information indicating the processing unit that is a distribution destination of the processing request, and adds the processing unit Registering information of the processing unit to be added indicated in the information in the distribution destination information; deleting information of the processing unit to be deleted indicated in the processing unit deletion information from the distribution destination information; And a step of distributing the received processing request to the processing unit with reference to the distribution destination information.
このようにすることにより、分散処理システム(分散処理方法)は、リソース調整装置が、各処理部から受信した処理部負荷量情報に基づき、処理部の追加条件または削除条件を満たすか否かを判定することができる。そして、処理部の追加条件を満たす場合には、リソース調整装置は、物理サーバの処理部を追加した上で、追加する処理部の情報を振分装置に送信し、振分装置がその追加する処理部の情報を振分先情報に登録することができる。また、処理部の削除条件を満たす場合には、リソース調整装置は、削除する処理部の情報を振分装置に送信して振分先情報から削除させ、その削除対象の処理部を物理サーバから削除することができる。
よって、本発明によれば、振分部において負荷量の監視が不可能な場合であっても、処理部の負荷量に応じて適切な処理部数を設定できる。
また、リソース調整装置は、分散処理システムの全処理部のうち所定の割合(第1の所定の割合、第2の所定の割合)以上を占める処理部における、所定の期間(第1の継続期間閾値、第2の継続期間閾値)の処理部負荷量情報に基づき、処理部の追加・削除の判定を行うため、従来技術のように、各閾値を超える度に処理部数を変更する必要がないため、処理部数の変更に伴うオーバヘッドの増加を抑えることができる。
By doing so, the distributed processing system (distributed processing method) determines whether or not the resource adjustment device satisfies the additional condition or the deleted condition of the processing unit based on the processing unit load amount information received from each processing unit. Can be determined. When the additional condition of the processing unit is satisfied, the resource adjustment device adds the processing unit of the physical server, and then transmits information on the processing unit to be added to the distribution device, and the distribution device adds the information. Information of the processing unit can be registered in the distribution destination information. Further, when the deletion condition of the processing unit is satisfied, the resource adjustment device transmits information on the processing unit to be deleted to the distribution device, deletes it from the distribution destination information, and deletes the processing unit to be deleted from the physical server. Can be deleted.
Therefore, according to the present invention, an appropriate number of processing units can be set according to the load amount of the processing unit even when the distribution unit cannot monitor the load amount.
Further, the resource adjustment apparatus is configured to execute a predetermined period (first continuation period ) in the processing units that occupy a predetermined ratio (first predetermined ratio, second predetermined ratio) or more of all the processing sections of the distributed processing system. Since the addition / deletion of the processing unit is determined based on the processing unit load amount information of the threshold value and the second duration threshold value), it is not necessary to change the number of processing units every time each threshold value is exceeded as in the prior art. Therefore, an increase in overhead due to the change in the number of processing copies can be suppressed.
請求項2に記載の発明は、前記振分装置の振分処理部が、前記振分先情報に登録された前記処理部それぞれへの前記処理要求の振分比率を均等に設定したラウンドロビン、または、前記処理部それぞれへの前記処理要求の振分比率を、前記処理部が配置される前記物理サーバの処理能力に応じて設定した重み付けラウンドロビンにより、振分先となる前記処理部を決定すること、を特徴とする請求項1に記載の分散処理システムとした。 The invention according to claim 2 is a round robin in which the distribution processing unit of the distribution device equally sets the distribution ratio of the processing request to each of the processing units registered in the distribution destination information. Alternatively, the processing unit that is a distribution destination is determined by a weighted round robin in which the distribution ratio of the processing request to each processing unit is set according to the processing capacity of the physical server in which the processing unit is arranged. The distributed processing system according to claim 1 is provided.
このようにすることにより、分散処理システムの振分装置は、ラウンドロビンまたは重み付けラウンドロビンを用いて、振分先となる処理部を決定し、処理要求を振り分けることができる。 By doing so, the distribution device of the distributed processing system can determine a processing unit as a distribution destination by using round robin or weighted round robin, and distribute processing requests.
請求項3に記載の発明は、クライアントから受け取った処理要求を、物理サーバに配置された処理部に振り分ける振分装置と、前記振り分けられた処理要求を処理する処理部と、1つ以上の前記処理部を配置する複数の前記物理サーバと、前記振分装置、前記処理部それぞれおよび複数の前記物理サーバに接続され、前記物理サーバに配置される前記処理部の数を調整するリソース調整装置と、を備える分散処理システムであって、前記処理部それぞれが、当該処理部自身の使用リソース量または処理件数を収集する処理部負荷量情報収集部と、収集した前記使用リソース量または前記処理件数を処理部負荷量情報として、前記リソース調整装置に通知する処理部負荷量情報通知部と、を備え、前記リソース調整装置が、(1)前記処理部の追加を判定するための、前記処理部負荷量情報に対する上限閾値および前記上限閾値以上の値が継続する期間を示す第1の継続期間閾値、並びに、(2)前記処理部の削除を判定するための、前記処理部負荷量情報に対する下限閾値および前記下限閾値を下回る値が継続する期間を示す第2の継続期間閾値、が格納される処理部増減判定閾値情報が記憶される記憶部と、前記処理部それぞれから、前記処理部負荷量情報を受信する処理部負荷量情報受信部と、前記処理部負荷量情報に基づき、前記使用リソース量または前記処理件数が、前記上限閾値以上である期間が前記第1の継続期間閾値を超える場合に前記処理部の追加条件を満たすと判定すると共に、前記処理部負荷量情報に基づき、前記使用リソース量または前記処理件数が、前記下限閾値を下回る期間が前記第2の継続期間閾値を超える場合に前記処理部の削除条件を満たすと判定する処理部増減判定部と、前記処理部の追加条件を満たすと判定された場合に、前記物理サーバに対し処理部を追加するように制御すると共に、前記処理部の削除条件を満たすと判定された場合に、前記物理サーバに対し処理部を削除するように制御する処理部配置実行部と、前記処理部を追加する場合に、当該追加する処理部の情報を含む処理部追加情報を生成し前記振分装置に送信すると共に、前記処理部を削除する場合に、当該削除する処理部の情報を含む処理部削除情報を生成し前記振分装置に送信する処理部追加・削除情報送信部と、を備え、前記振分装置が、前記処理要求の振分先となる前記処理部を示す振分先情報が記憶される記憶部と、前記処理部追加情報に示される前記追加する処理部の情報を前記振分先情報に登録すると共に、前記処理部削除情報に示される前記削除する処理部の情報を前記振分先情報から削除する処理部追加・削除実行部と、受信した前記処理要求を、前記振分先情報を参照して、前記処理部に振り分ける振分処理部と、を備え、前記処理部が、前記物理サーバ上に配置される仮想マシンで構成されており、前記物理サーバが、前記処理要求に対する処理を実行する処理部を配置する稼働中の前記物理サーバと、前記処理要求を受け付けない待機状態の前記処理部を配置するリソースプール用の前記物理サーバとで構成されており、前記物理サーバそれぞれが、当該物理サーバ自身の使用リソース量を収集する物理サーバリソース情報収集部と、収集した前記使用リソース量を物理サーバリソース情報として、前記リソース調整装置に通知する物理サーバリソース情報通知部と、備え、前記リソース調整装置が、前記記憶部にさらに、前記処理要求を処理するためのアプリケーションを実行する予定の期間を示す処理スケジュールを前記処理部ごとに示す処理スケジュール情報と、前記処理部とその処理部が配置されている前記物理サーバとを関連付けた情報である処理部配置情報と、前記物理サーバの使用リソース量に対する上限閾値および前記処理スケジュール情報を用いて算出される前記物理サーバの使用予定リソース量に対する上限閾値が格納される物理サーバ選定閾値情報と、が記憶されており、前記物理サーバそれぞれから、前記物理サーバリソース情報を受信する物理サーバリソース情報受信部と、前記処理部増減判定部が、前記処理部の追加条件を満たすと判定した場合に、前記物理サーバそれぞれについて、当該物理サーバに配置されているすべての前記処理部を前記処理部配置情報に基づき抽出し、前記抽出した前記処理部それぞれの使用予定リソース量を前記処理スケジュール情報を用いて算出し、算出した前記処理部ごとの前記使用予定リソース量を合計して、前記物理サーバごとの使用予定リソース量を算出し、当該算出した使用予定リソース量が、前記物理サーバの使用予定リソース量に対する上限閾値を超えず、かつ、前記物理サーバから受信した前記物理サーバリソース情報に示される前記使用リソース量が、前記物理サーバの使用リソース量に対する上限閾値を超えない物理サーバを選定し、前記選定した物理サーバの中から、前記処理部を追加する配置先の物理サーバを決定すると共に、前記処理部増減判定部が、前記処理部の削除条件を満たすと判定した場合に、前記削除条件を満たす処理部の中から削除対象となる処理部を決定する配置先物理サーバ決定部と、をさらに備え、前記処理部配置実行部が、前記処理部増減判定部が、前記処理部の追加条件を満たすと判定した場合に、前記リソースプール用の物理サーバに配置された処理部を、前記配置先物理サーバ決定部が決定した前記配置先の物理サーバに移動させるように制御すると共に、前記処理部増減判定部が、前記処理部の削除条件を満たすと判定した場合に、前記削除対象となる処理部を、前記リソースプール用の物理サーバに移動させるように制御すること、を特徴とする分散処理システムとした。 The invention according to claim 3 is a distribution device that distributes a processing request received from a client to a processing unit arranged in a physical server, a processing unit that processes the distributed processing request, and one or more of the one or more A plurality of physical servers in which processing units are arranged, and a resource adjustment device that is connected to the distribution device, each of the processing units, and the plurality of physical servers, and adjusts the number of the processing units arranged in the physical servers; Each of the processing units includes a processing unit load amount information collecting unit that collects the amount of used resources or the number of processing cases of the processing unit, and the collected amount of used resources or the number of processing cases. A processing unit load amount information notifying unit that notifies the resource adjustment device as processing unit load amount information, and the resource adjustment device is configured to: (1) An upper limit threshold for the processing unit load amount information and a first duration threshold indicating a period during which a value equal to or higher than the upper limit threshold continues, and (2) determining deletion of the processing unit A storage unit storing processing unit increase / decrease determination threshold information in which a lower limit threshold for the processing unit load amount information and a second duration threshold indicating a period during which a value lower than the lower limit threshold continues are stored; A processing unit load amount information receiving unit that receives the processing unit load amount information from each processing unit, and a period in which the amount of used resources or the number of processes is equal to or greater than the upper limit threshold based on the processing unit load amount information. When the first duration threshold is exceeded, it is determined that the additional condition of the processing unit is satisfied, and based on the processing unit load amount information, the used resource amount or the processing number is When it is determined that the processing unit increase / decrease determination unit determines that the deletion condition of the processing unit is satisfied when the period below the limit threshold exceeds the second duration threshold value, and the additional condition of the processing unit is satisfied, A processing unit arrangement execution unit that controls to add a processing unit to the physical server and controls the physical server to delete the processing unit when it is determined that the processing unit deletion condition is satisfied. When the processing unit is added, processing unit additional information including information on the processing unit to be added is generated and transmitted to the distribution device, and when the processing unit is deleted, the processing unit to be deleted A processing unit addition / deletion information transmission unit that generates processing unit deletion information including the information of the processing unit and transmits the processing unit deletion information to the distribution device, and the distribution device includes the processing unit as a distribution destination of the processing request The distribution destination information is stored And information on the processing unit to be added indicated in the processing unit addition information is registered in the distribution destination information, and information on the processing unit to be deleted indicated in the processing unit deletion information is registered in the distribution. A processing unit addition / deletion execution unit to be deleted from the destination information, and a distribution processing unit that distributes the received processing request to the processing unit with reference to the distribution destination information, and the processing unit includes : Consists of virtual machines placed on the physical server, and the physical server is in a standby state in which the physical server is in operation to place a processing unit that executes processing for the processing request, and the processing request is not accepted Physical server resource information collection in which each physical server collects the amount of resources used by the physical server. And a physical server resource information notification unit that notifies the resource adjustment device of the collected used resource amount as physical server resource information, and the resource adjustment device further processes the processing request in the storage unit Processing unit arrangement, which is processing schedule information indicating a processing schedule indicating a period for executing an application for each processing unit, and information relating the processing unit and the physical server on which the processing unit is arranged Information and physical server selection threshold information in which an upper limit threshold for the amount of resource used by the physical server and an upper limit threshold for the amount of resource scheduled to be used of the physical server calculated using the processing schedule information are stored. And receiving the physical server resource information from each of the physical servers. When the physical server resource information receiving unit and the processing unit increase / decrease determining unit determine that the additional condition of the processing unit is satisfied, for each of the physical servers, all the processing units arranged in the physical server are Extracting based on the processing unit arrangement information, calculating the use scheduled resource amount of each of the extracted processing units using the processing schedule information, summing the calculated planned use resource amount for each processing unit, The physical server resource information received from the physical server, the calculated scheduled resource amount for each physical server being calculated, the calculated scheduled resource amount not exceeding the upper limit threshold for the physical server scheduled resource amount The physical server in which the used resource amount shown in FIG. 1 does not exceed the upper threshold for the used resource amount of the physical server. When selecting and determining a physical server to which the processing unit is to be added from the selected physical servers, and when the processing unit increase / decrease determination unit determines that the deletion condition of the processing unit is satisfied, A placement destination physical server determination unit that determines a processing unit to be deleted from among the processing units that satisfy the deletion condition, wherein the processing unit placement execution unit, the processing unit increase / decrease determination unit, and the processing unit When it is determined that the additional condition is satisfied, control is performed so that the processing unit arranged in the physical server for the resource pool is moved to the physical server at the placement destination determined by the placement destination physical server determination unit. When the processing unit increase / decrease determination unit determines that the deletion condition of the processing unit is satisfied, control is performed to move the processing unit to be deleted to the physical server for the resource pool. When, was distributed processing system that it said.
このように、分散処理システムは、処理部を仮想マシンで構成し、物理サーバを、処理要求に対する処理を実行する処理部を配置する稼働中の物理サーバと、待機状態の処理部を配置するリソースプール用の物理サーバとで構成する。これにより、リソース調整装置は、処理部の追加条件を満たすと判定した場合に、リソースプール用の物理サーバに配置された処理部を、配置先の物理サーバに移動させることができる。また、リソース調整装置は、処理部の削除条件を満たすと判定された場合に、削除対象の処理部を、稼働中の物理サーバからリソースプール用の物理サーバに移動させることができる。よって、処理部の増減を柔軟に実行することができる。
また、リソース調整装置は、各物理サーバから受信した物理サーバリソース情報と、物理サーバごとの使用予定リソース量とを用いて、追加する処理部のより適切な配置先となる物理サーバを決定することができる。
As described above, the distributed processing system includes a processing unit configured with a virtual machine, a physical server, an active physical server in which a processing unit that executes processing for a processing request is arranged, and a resource in which a processing unit in a standby state is arranged. It consists of a physical server for the pool. Accordingly, when the resource adjustment device determines that the additional condition of the processing unit is satisfied, the processing unit arranged in the physical server for the resource pool can be moved to the physical server of the arrangement destination. Further, when it is determined that the deletion condition of the processing unit is satisfied, the resource adjustment device can move the processing unit to be deleted from the operating physical server to the physical server for the resource pool. Therefore, increase / decrease of a process part can be performed flexibly.
In addition, the resource adjustment device uses the physical server resource information received from each physical server and the scheduled use resource amount for each physical server to determine a physical server that is a more appropriate placement destination of the processing unit to be added. Can do.
本発明によれば、振分部において負荷量の監視が不可能な場合であっても、負荷量に応じて適切な処理部数を設定でき、処理部数の変更に伴うオーバヘッドの増加を抑えシステム安定性を確保できる、分散処理システムおよび分散処理方法を提供することができる。 According to the present invention, even when the distribution unit cannot monitor the load amount, an appropriate number of processing units can be set according to the load amount, and an increase in overhead due to a change in the number of processing units can be suppressed, thereby stabilizing the system. It is possible to provide a distributed processing system and a distributed processing method that can ensure the performance.
次に、本発明を実施するための形態(以下、「本実施形態」という)における分散処理システム1等について説明する。 Next, the distributed processing system 1 and the like in a mode for carrying out the present invention (hereinafter referred to as “the present embodiment”) will be described.
<システム構成と処理概要>
最初に、図1を参照して、本実施形態に係る分散処理システム1の構成と処理概要について説明する。
本実施形態に係る分散処理システム1は、分散処理を行う各処理部20の負荷量を所定の期間(所定の時間間隔ごとに)監視し、負荷量の変動に応じて処理部20の数を柔軟に変更可能なスケールアウト型の分散処理システムである。
<System configuration and processing overview>
Initially, with reference to FIG. 1, the structure and process outline | summary of the distributed processing system 1 which concern on this embodiment are demonstrated.
The distributed processing system 1 according to the present embodiment monitors the load amount of each
本実施形態に係る分散処理システム1は、図1に示すように、クライアント5からの処理要求を処理部20に振り分ける振分装置10と、複数の物理サーバ30(30A,30B,30C,…)上に設けられ、振分装置10により振り分けられた処理要求の処理を実行し、その応答情報をクライアント5に返信する複数の処理部20(20a,20b,20c,…)と、クライアント5からの処理の実行に伴う負荷量に応じて、処理部20の数の増減と、物理サーバ30上での各処理部20の配置場所とを決定するリソース調整装置40とを備える。
As shown in FIG. 1, the distributed processing system 1 according to the present embodiment distributes a processing request from the
各処理部20(20a,20b,20c,…)は、仮想マシンで構成され、任意の物理サーバ30(30A,30B,30C,…)上に配置される。なお、1つの物理サーバ30上に複数の処理部20(仮想マシン)を備えてもよい。また、ある物理サーバ30上に配置された処理部20(仮想マシン)を、仮想化技術を用いて、別の物理サーバ30上に移動することもできる。
リソース調整装置40は、各処理部20(20a,20b,20c,…)の負荷量情報(後記する「処理部負荷量情報」を示し、例えば、使用リソース量や処理件数)に基づき、処理部20の数を調整(処理部20の追加・削除)すると共に、各物理サーバ30(30A,30B,30C,…)の負荷量情報(後記する「物理サーバリソース情報」)に基づき、各処理部20の配置先となる物理サーバ30を決定する。この物理サーバ30は、処理部20が配置され処理要求に対する処理を実行する稼動状態の物理サーバ30(30A,30B,30C,…)と、処理要求を受け付けない待機状態の処理部20(図示省略)が配置されるリソースプール用の物理サーバ30(30P)の2種類で構成される。
Each processing unit 20 (20a, 20b, 20c,...) Is configured by a virtual machine and is arranged on an arbitrary physical server 30 (30A, 30B, 30C,...). A plurality of processing units 20 (virtual machines) may be provided on one
The
リソース調整装置40は、各処理部20の負荷量情報(処理部負荷量情報)に基づき、処理部20の追加が必要と判定したときは、新たに追加する処理部20の配置先となる物理サーバ30を決定し、その追加する処理部20をリソースプール用の物理サーバ30(30P)から決定した配置先の物理サーバ30に移動させる。その後、リソース調整装置40から振分装置10に新たに追加された処理部20に関する情報(後記する「処理部追加情報」)を送信し、振分装置10が、クライアント5からの処理要求の振り分け先となる各処理部20が登録された振分先情報131に、追加した処理部20を登録する。
また、リソース調整装置40は、各処理部20の負荷量情報(処理部負荷量情報)に基づき、処理部20の削除が必要と判定したときは、削除対象となる処理部20に関する情報(後記する「処理部削除情報」)を振分装置10へ送信し、振分装置10が、振分先情報131から削除対象となる処理部20を削除する。その後、リソース調整装置40は、削除対象となる処理部20をリソースプール用の物理サーバ30(30P)に移動させる。
When it is determined that the
Further, when it is determined that the
このようにすることで、本実施形態に係る分散処理システム1は、各処理部20の負荷量に応じて適切な処理部20の数を調整できる。また、分散処理システム1は、処理部20の追加または削除が必要か否かの判定を、所定の期間毎に行う。よって、処理部数の変更に伴うオーバヘッドの増加を抑え、システム安定性を確保することができる。
By doing in this way, the distributed processing system 1 which concerns on this embodiment can adjust the number of the
<各装置等の構成>
次に、本実施形態に係る分散処理システム1を構成する、振分装置10、処理部20、物理サーバ30およびリソース調整装置40について、具体的に説明する。
<Configuration of each device>
Next, the
≪物理サーバ30および処理部20≫
まず、本実施形態に係る物理サーバ30および処理部20の構成例について説明する。
図2は、本実施形態に係る物理サーバ30および処理部20の構成例を示すブロック図である。物理サーバ30は、仮想化技術を適用して複数の処理部20(仮想マシン)を配置し、その処理部20がクライアント5からの処理要求に対する処理を実行する。なお、本実施形態においては、1つの処理部20(仮想マシン)が、1つのアプリケーションを実行するものとして説明する。
<<
First, configuration examples of the
FIG. 2 is a block diagram illustrating a configuration example of the
物理サーバ30は、図示を省略した制御部、入出力部および記憶部を備える装置である。この制御部は、図2に示すように、仮想化制御部31、物理サーバリソース情報収集部32および物理サーバリソース情報通知部33を備える。
The
仮想化制御部31は、仮想化技術に基づき、物理サーバ30上に仮想化プラットホームを構築し、複数の処理部20(仮想マシン)を配置する制御を行う。
The
物理サーバリソース情報収集部32は、物理サーバ30自身の各種のリソース使用量(CPU使用率、メモリ使用率、ディスクI/O(Input/Output)量、ネットワークI/O量等)を物理サーバリソース情報として収集する。なお、物理サーバリソース情報収集部32は、CPU(Central Processing Unit)使用率、メモリ使用率、ディスクI/O量、ネットワークI/O量のうち少なくとも1つを物理サーバリソース情報として、所定の時間間隔で収集する。
The physical server resource
物理サーバリソース情報通知部33は、物理サーバリソース情報収集部32が所定の時間間隔で収集した物理サーバリソース情報を、入出力部(図示省略)を介して、リソース調整装置40に通知する。
The physical server resource
処理部20は、物理サーバ30の仮想化制御部31により物理サーバ30上に配置される仮想マシンであり、図2に示すように、アプリケーション処理部21、処理部負荷量情報収集部22および処理部負荷量情報通知部23を備える。
The
アプリケーション処理部21は、クライアント5から振分装置10を介して取得した処理要求を受け取り、アプリケーションに従い処理を実行し、その結果をクライアント5に応答情報として送信する。
The
処理部負荷量情報収集部22は、処理部20(仮想サーバ)ごとに自身の負荷量情報(処理部負荷量情報)を収集する。ここで処理部負荷量情報とは、使用リソース量や処理件数である。処理部負荷量情報収集部22は、使用リソース量として、CPU使用率、メモリ使用率、ディスクI/O量、ネットワークI/O量のうち少なくもと1つを収集する。または、処理部負荷量情報収集部22は、クライアント5から受け取った処理要求を処理した数である処理件数(処理件数/単位時間)を収集する。処理部負荷量情報収集部22は、自身の処理部負荷量情報として予め設定された、各種の使用リソース量のいずれか、または、処理件数を処理部負荷量情報として、所定の時間間隔で収集する。
The processing unit load amount
処理部負荷量情報通知部23は、処理部負荷量情報収集部22が所定の時間間隔で収集した処理部負荷量情報を、リソース調整装置40に通知する。
The processing unit load amount
≪リソース調整装置40≫
次に、本実施形態に係るリソース調整装置40の構成例について説明する。
図3は、本実施形態に係るリソース調整装置40の構成例を示す機能ブロック図である。
リソース調整装置40は、各処理部20(20a,20b,20c,…)から取得した処理部負荷量情報(使用リソース量または処理件数)に基づき、処理部20の数を増減するか否かを判定する。そして、リソース調整装置40は、処理部20の追加が必要と判定したときは、リソースプール用の物理サーバ30(30P)から新たな処理部20を配置先となる物理サーバ30に移動させ、その追加する処理部20の情報を、振分装置10に送信する。また、リソース調整装置40は、処理部20の削除が必要と判定したときは、削除対象の処理部20の情報を振分装置10の送信し、その削除対象の処理部20をリソースプール用の物理サーバ30(30P)に移動させる。
このリソース調整装置40は、図3に示すように、制御部41と、入出力部42と、記憶部43とを含んで構成される。
<<
Next, a configuration example of the
FIG. 3 is a functional block diagram illustrating a configuration example of the
The
As shown in FIG. 3, the
入出力部42は、振分装置10や、各処理部20(20a,20b,20c,…)、各物理サーバ30(30A,30B,30C,…,30P)等との間の情報の入出力を行う。また、この入出力部42は、通信回線を介して情報の送受信を行う通信インタフェースと、図示を省略したキーボード等の入力手段やモニタ等の出力手段等との間で入出力を行う入出力インタフェースとから構成される。
The input /
制御部41は、リソース調整装置40全体の制御を司り、処理部負荷量情報受信部411、物理サーバリソース情報受信部412、処理部増減判定部413、配置先物理サーバ決定部414、処理部配置実行部415および処理部追加・削除情報送信部416を含んで構成される。
なお、この制御部41は、例えば、記憶部43に格納されたプログラムを、図示を省略したCPUがRAM(Random Access Memory)に展開し実行することで実現される。
The
In addition, this
処理部負荷量情報受信部411は、各処理部20(20a,20b,20c,…)が送信した処理部負荷量情報(使用リソース量または処理件数)を受信し、記憶部43に記憶する。なお、記憶部43に記憶された処理部負荷量情報431は、処理部増減判定部413による後記する処理部増減判定処理の際に参照される。
The processing unit load amount
物理サーバリソース情報受信部412は、各物理サーバ30(30A,30B,30C,…)が送信した物理サーバリソース情報(使用リソース量等)を受信し、記憶部43に記憶する。なお、記憶部43に記憶された物理サーバリソース情報432は、配置先物理サーバ決定部414による後記する配置先物理サーバ決定処理の際に参照される。
The physical server resource
処理部増減判定部413は、処理部負荷量情報受信部411が受信した処理部負荷量情報431(使用リソース量または処理件数)に基づき、処理部20の増減(追加または削除)を判定する。なお、処理部増減判定部413は、所定の時間間隔毎に受信した処理部負荷量情報431を集積した後記する所定期間(判定に用いる継続期間閾値)を超える間隔で、処理部増減判定処理を実行する。
以下具体的に、処理部増減判定部413が、処理部負荷量情報として、(1)使用リソース量(CPU使用率、メモリ使用率、ディスクI/O量、ネットワークI/O量のいずれか)を用いる場合と、(2)処理件数を用いる場合と、において実行する処理部増減判定処理について説明する。
The processing unit increase /
Specifically, the processing unit increase /
(各処理部20の使用リソース量に基づく処理部増減判定処理)
〔処理部の追加時〕
処理部増減判定部413は、処理部20の全体数をN台としたとき、所定の割合a1%以上の数の処理部20がいずれかの使用リソース量の上限閾値b1を継続して所定期間c1(第1の継続期間閾値)超過するときに(ここまでを「第1の追加条件」と呼ぶ。)、処理部20の数を所定の割合d1%追加する。
〔処理部の削減時〕
処理部増減判定部413は、処理部20の全体数をN台としたとき、所定の割合e1%以上の数の処理部20が予め設定したすべての種類のリソース使用量において、そのリソース使用量の下限閾値f1を継続して所定期間g1(第2の継続期間閾値)下回るときに(ここまでを「第1の削除条件」と呼ぶ。)、処理部20の数を所定の割合h1%削減する。
(Processing unit increase / decrease determination processing based on the amount of resources used by each processing unit 20)
[When processing part is added]
When the total number of the
[When processing parts are reduced]
When the total number of
(各処理部20の処理件数に基づく処理部増減判定処理)
〔処理部の追加時〕
処理部増減判定部413は、処理部20の全体数をN台としたとき、所定の割合a2%以上の数の処理部20が処理件数(処理件数/単位時間)の上限閾値b2を継続して所定期間c2(第1の継続期間閾値)超過するときに(ここまでを「第2の追加条件」と呼ぶ。)、処理部20の数を所定の割合d2%追加する。
〔処理部の削減時〕
処理部増減判定部413は、処理部20の全体数をN台としたとき、所定の割合e2%以上の数の処理部20が、処理件数(処理件数/単位時間)の下限閾値f2を継続して所定期間g2(第2の継続期間閾値)下回るときに(ここまでを「第2の削除条件」と呼ぶ。)、処理部20の数を所定の割合h2%削減する。
(Processing unit increase / decrease determination processing based on the number of processing cases of each processing unit 20)
[When processing part is added]
When the total number of
[When processing parts are reduced]
Processor
処理部増減判定部413は、以上説明した処理部の追加条件(「第1の追加条件」または「第2の追加条件」)と削除条件(「第1の削除条件」または「第2の削除条件」)に基づき、処理部20の増減(追加・削除)を判定する。なお、処理部増減判定部413は、追加条件または削除条件のいずれも満たさない場合は、処理部20の数を変更しないものと判定する。
なお、処理部増減判定部413が処理部増減判定に用いる各閾値や所定期間の情報は、記憶部43内の処理部増減判定閾値情報436に予め記憶される。
The processing unit increase /
Information about each threshold and a predetermined period used by the processing unit increase /
また、処理部増減判定部413は、「第1の追加条件」を満足すると判定した場合に、「処理部の数を所定の割合d1%追加する」処理を実行するが、例えば、処理部20の全体数をN台=50台とし、所定の割合d1%=3%とした場合に、追加する処理部20の台数は、50×0.03=1.5台となる。このような場合は、小数点以下を切り上げ2台追加するようにロジックを設定しておく。「第2の追加条件」の場合も同様である。
一方、処理部増減判定部413は、「第1の削除条件」を満足すると判定した場合に、「処理部の数を所定の割合h1%削減する」処理を実行するが、例えば、処理部20の全体数をN台=50台とし、所定の割合h1%=3%とした場合に、削除する処理部20の台数は、50×0.03=1.5台となる。このような場合は、小数点以下を切り捨て1台削除するようにロジックを設定しておく。「第2の削除条件」の場合も同様である。
Further, when the processing unit increase /
On the other hand, when the processing unit increase /
配置先物理サーバ決定部414は、処理部増減判定部413が処理部20の追加条件を満たすと判定した場合に、どの物理サーバ30に処理部20を追加するのかを決定する。また、配置先物理サーバ決定部414は、処理部増減判定部413が処理部20の削除条件を満たすと判定した場合に、どの処理部20を削除対象の処理部20をするのかを決定する。
The placement destination physical
(処理部20の追加時の配置先物理サーバ決定処理)
まず、配置先物理サーバ決定部414による、処理部20の追加時の配置先物理サーバ決定処理について説明する。
処理部増減判定部413が処理部20の追加条件を満たすと判定したとき、配置先物理サーバ決定部414は、リソースプール用の物理サーバ30(30P)から、処理部増減判定部413が決定した追加する数の処理部20の配置先となる物理サーバ30を、以下の物理サーバ選定基準を満たす物理サーバ30の中から決定する。
(Destination physical server determination process when processing
First, the placement destination physical server determination process when the
When the processing unit increase /
〔物理サーバ選定基準〕
現在稼働中の物理サーバ30(30A,30B,30C,…)について、物理サーバリソース情報受信部412が受信した物理サーバリソース情報432を参照し、各種の使用リソース量(CPU使用率、メモリ使用率、ディスクI/O量、ネットワークI/O量のうち予め設定したもののすべて)が、各種の使用リソース量ごとに設定される上限閾値xを超過せず、かつ、今後所定の期間継続して物理サーバ30の使用予定リソース量が上限閾値yを超過しない物理サーバを選定する。
なお、各種の使用リソース量ごとの上限閾値xおよび物理サーバ30の使用予定リソース量の上限閾値yは、リソース調整装置40の記憶部43に物理サーバ選定閾値情報437として予め記憶される。
[Physical server selection criteria]
For the physical server 30 (30A, 30B, 30C,...) That is currently in operation, the physical server resource
Note that the upper limit threshold value x and the upper limit threshold value y of the scheduled resource amount used by the
上記の物理サーバ選定基準のうち、物理サーバ30の使用予定リソース量とは、各物理サーバ30に配置済みの処理部20(仮想マシン)の使用予定リソース量の和で計算される。リソース調整装置40の記憶部43には、この物理サーバ30の使用予定リソース量を算出するための情報として、処理スケジュール情報433、処理部使用予定リソース情報434、処理部配置情報435が記憶される。
Of the above physical server selection criteria, the scheduled use resource amount of the
図4は、本実施形態に係る処理スケジュール情報433のデータ構成の一例を示す図である。
図4に示すように、処理スケジュール情報433には、各アプリケーションを実行する処理部20に対応付けて、そのアプリケーションによる処理が発生する予定の期間(処理発生期間)が処理スケジュールとして記憶される。
FIG. 4 is a diagram illustrating an example of a data configuration of the
As illustrated in FIG. 4, the
図5は、本実施形態に係る処理部使用予定リソース情報434のデータ構成の一例を示す図である。
図5に示すように、処理部使用予定リソース情報434には、各処理部20が実行するアプリケーションの種類に応じて、使用を予定するリソース量(使用予定リソース量)が格納される。
なお、配置先物理サーバ決定部414は、図4の処理スケジュール情報433において、ある処理部20の処理スケジュールが記憶されていない場合には、例えば、所定期間内すべてにおいて処理部使用予定リソース情報434に基づく所定のリソース量を使用するものと仮定して、その処理部20の使用予定リソース量を計算する。
FIG. 5 is a diagram illustrating an example of a data configuration of the processing unit use scheduled resource information 434 according to the present embodiment.
As shown in FIG. 5, the processing unit scheduled use resource information 434 stores the amount of resources scheduled to be used (scheduled use resource amount) according to the type of application executed by each processing
If the processing schedule of a
図6は、本実施形態に係る処理部配置情報435のデータ構成の一例を示す図である。
この処理部配置情報435は、処理部20とその処理部20が配置されている物理サーバ30とを関連付けた情報である。
FIG. 6 is a diagram illustrating an example of a data configuration of the processing
The processing
配置先物理サーバ決定部414(図3参照)は、物理サーバ30それぞれについて、その物理サーバ30に配置されているすべての処理部20を処理部配置情報435に基づき抽出し、抽出した各処理部20の使用予定リソース量の和を処理スケジュール情報433(図4参照)および処理部使用予定リソース情報434(図5参照)に基づき算出して、物理サーバ30毎の使用予定リソース量を計算する。そして配置先物理サーバ決定部414は、その計算した物理サーバ30の使用予定リソース量と上限閾値yとを比較する。
The placement destination physical server determination unit 414 (see FIG. 3) extracts all the
なお、配置先物理サーバ決定部414は、物理サーバ選定基準を満たす物理サーバ30が、追加の決定をした物理サーバ30の数より多く選定された場合には、物理サーバ選定基準を満たす物理サーバ30の中から任意の物理サーバ30を選定するようにする。
The placement destination physical
(処理部20の削除時の削除対象の処理部20の決定処理)
次に、配置先物理サーバ決定部414による、処理部20の削除時の削除対象の処理部20の決定処理について説明する。
処理部増減判定部413が、処理部20の削除条件を満たすと判定したとき、配置先物理サーバ決定部414は、その削除条件を満たす処理部20の中から、削除する処理部20の数だけ任意の処理部20を選定し、削除対象の処理部20と決定する。なお、配置先物理サーバ決定部414は、処理部20の削除条件を満たす処理部20のうち、リソース使用量が低いものから順に、または、処理件数が少ないものから順に、削除する処理部の数だけ処理部20を決定するようにしてもよい。
(Determination processing of the
Next, the determination process of the
When the processing unit increase /
処理部配置実行部415は、処理部20の追加時において、リソースプール用の物理サーバ30(30P)が備える処理部20を、配置先物理サーバ決定部414が決定した新たに追加する処理部20の配置先の物理サーバ30に移動するように、リソースプール用の物理サーバ30(30P)および配置先の物理サーバ30を制御する。このとき、処理部配置実行部415は、新たに追加する処理部20の配置を完了すると、処理部配置情報435を更新する。
また、処理部配置実行部415は、処理部20の削除時において、削除対象の処理部20をその物理サーバ30からリソースプール用の物理サーバ30(30P)へ移動させる制御を行う。このとき、処理部配置実行部415は、削除対象の処理部20のリソースプール用の物理サーバ30(30P)への移動を完了すると、処理部配置情報435を更新する。
When the
In addition, when the
処理部追加・削除情報送信部416は、追加された処理部20の情報(処理部20の識別情報やアドレス等)を処理部追加情報として、入出力部42を介して、振分装置10へ送信する。また、処理部追加・削除情報送信部416は、削除された処理部20の情報(処理部20の識別情報等)を処理部削除情報として、入出力部42を介して、振分装置10へ送信する。
The processing unit addition / deletion
記憶部43は、ハードディスクやフラッシュメモリ、RAM等の記憶手段からなり、前記した、処理部負荷量情報431や、物理サーバリソース情報432、処理スケジュール情報433、処理部使用予定リソース情報434、処理部配置情報435、処理部増減判定閾値情報436、物理サーバ選定閾値情報437等が記憶される。
The
≪振分装置10≫
次に、本実施形態に係る振分装置10の構成例について説明する。
図7は、本実施形態に係る振分装置10の構成例を示す機能ブロック図である。
振分装置10は、クライアント5から受信した処理要求を、所定の方式にしたがい各処理部20に振り分ける。また、振分装置10は、処理部20から受信した応答情報を、処理要求を送信したクライアント5に返信する装置である。
この振分装置10は、図7に示すように、制御部11と、入出力部12と、記憶部13とを含んで構成される。
Next, a configuration example of the sorting
FIG. 7 is a functional block diagram illustrating a configuration example of the sorting
The
As shown in FIG. 7, the
入出力部12は、各処理部20や、リソース調整装置40等との間の情報の入出力を行う。また、この入出力部12は、通信回線を介して情報の送受信を行う通信インタフェースと、図示を省略したキーボード等の入力手段やモニタ等の出力手段等との間で入出力を行う入出力インタフェースとから構成される。
The input /
制御部11は、振分装置10全体の制御を司り、振分方式設定部111、処理部追加・削除情報受信部112、処理部追加・削除実行部113および振分処理部114を含んで構成される。
なお、この制御部11は、例えば、記憶部13に格納されたプログラムを、図示を省略したCPUがRAMに展開し実行することで実現される。
The
In addition, this
振分方式設定部111は、クライアント5からの処理要求の振分先となる処理部20を、記憶部13に記憶された振分先情報131を参照して決定する方式を設定する。この振分方式設定部111は、例えば、ラウンドロビンや、重み付けラウンドロビン等の方式を設定することができる。
The distribution
ラウンドロビン方式では、各処理部20への処理要求の振分比率を均等に設定する。
一方、重み付けラウンドロビン方式では、各処理部20への処理要求の振分比率が指定した値に設定される。この振分比率の値は、例えば、物理サーバ30のサーバスペック値(処理能力)が異なるヘテロ環境において、処理部20を配置する物理サーバ30のスペック値に応じた値を設定する。なお、このスペック値は、例えば、物理サーバ30のCPUのコア数や、メモリ容量等が該当する。そして、例えば、CPUのコア数が他の物理サーバ30より多い物理サーバ30には、処理要求の振分比率を高く設定するようにする。
In the round robin method, the distribution ratio of processing requests to the
On the other hand, in the weighted round robin method, the distribution ratio of processing requests to each
この振分方式設定部111は、振分処理部114による処理開始前に、図示を省略したシステム管理装置等から振分方式の設定情報を、入出力部12を介して取得し、ラウンドロビン方式や重み付けラウンドロビン方式を予め設定する。
The distribution
処理部追加・削除情報受信部112は、リソース調整装置40から、処理部追加情報または処理部削除情報を受信し、処理部追加・削除実行部113に引き渡す。
The processing unit addition / deletion
処理部追加・削除実行部113は、処理部追加情報を取得した場合に、その処理部追加情報に含まれる新たに追加される処理部20の情報を、記憶部13内の振分先情報131に登録する。なお、振分先情報131は、クライアント5からの処理要求の振分先となる処理部20の識別情報やアドレスが、リストとして記憶される情報である。
When the processing unit addition /
また、処理部追加・削除実行部113は、処理部削除情報を取得した場合に、記憶部13内の振分先情報131に記憶されている削除対象の処理部20の情報を削除する。
Further, when the processing unit addition /
振分処理部114は、クライアント5から処理要求を受信すると、記憶部13内の振分先情報131を参照し、振分方式設定部111により設定された振分方式にしたがって、振分先を決定し、その決定した振分先の処理部20に処理要求を送信する。
Upon receiving a processing request from the
記憶部13は、ハードディスクやフラッシュメモリ、RAM等の記憶手段からなり、前記した、振分先情報131等が記憶される。
The
<処理の流れ>
次に、本実施形態に係る分散処理システム1の処理の流れについて説明する。
図8は、本実施形態に係る分散処理システム1の処理の流れを示すフローチャートである。
なお、本実施形態に係る分散処理システム1において、以下のフローチャートの説明の前提処理として、各処理部20(20a,20b,20c,…)が、所定の時間間隔で、処理部負荷量情報をリソース調整装置40に送信し、各物理サーバ30(30A,30B,30C,…)が、同じく所定の時間間隔で、物理サーバリソース情報をリソース調整装置40に送信しているものとする。
また、初期状態の物理サーバ30の台数と、処理部20(仮想サーバ)の物理サーバ30への配置は、例えば、非特許文献1(中里 彦俊他,「OSSを構成する仮想マシンの最適配置手法の提案」,電子情報通信学会,信学技報,112(120),2012/07/12,31-36)に記載の仮想マシン初期配置手法により、設定済みであるものとする。そして、この初期状態の物理サーバ30(30A,30B,30C,…)上の処理部20(20a,20b,20c,…)の配置に基づき、リソース調整装置40の記憶部43内に、処理スケジュール情報433および処理部配置情報435が記憶済みであるものとする。
さらに、分散処理システム1のシステム管理装置(図示省略)等から取得した、処理部増減判定処理に用いる各種の閾値である処理部増減判定閾値情報436、および、配置先物理サーバ決定処理に用いる各種の閾値である物理サーバ選定閾値情報437が、リソース調整装置40の記憶部43内に記憶されているものとする。
<Process flow>
Next, a processing flow of the distributed processing system 1 according to the present embodiment will be described.
FIG. 8 is a flowchart showing a processing flow of the distributed processing system 1 according to the present embodiment.
In the distributed processing system 1 according to the present embodiment, each processing unit 20 (20a, 20b, 20c,...) Processes the processing unit load amount information at a predetermined time interval as a premise process for explaining the following flowchart. It is assumed that each physical server 30 (30A, 30B, 30C,...) Transmits physical server resource information to the
The number of
Furthermore, the processing unit increase / decrease
まず、リソース調整装置40の処理部負荷量情報受信部411は、各処理部20から処理部負荷量情報を受信する(ステップS10)。
First, the processing unit load amount
また、リソース調整装置40の物理サーバリソース情報受信部412は、各物理サーバ30から物理サーバリソース情報を受信する(ステップS11)。
なお、ステップS10とステップS11とは、どちらを先に実行しても構わない。
Further, the physical server resource
Note that either step S10 or step S11 may be executed first.
次に、リソース調整装置40の処理部増減判定部413は、処理部増減判定処理を行う(ステップS12)。
Next, the processing unit increase /
ここで、処理部増減判定部413は、処理部増減判定処理において、前記した処理部20の追加条件および削除条件のいずれも満たさない場合は(ステップS12→「追加・削除条件満たさない」)、処理部20の数の増減を行わず、処理を終える。一方、処理部増減判定処理において、追加条件を満たす場合には(ステップS12→「追加条件を満たす」)、次のステップS13に進む。また、処理部増減判定処理において、削除条件を満たす場合には(ステップS12→「削除条件を満たす」)、次のステップS18に進む。
Here, the processing unit increase /
(処理部20の追加処理)
次に、ステップS13〜S17の処理部20の追加処理について説明する。
ステップS13において、リソース調整装置40の処理部増減判定部413は、追加する処理部20の数を決定する。
(Additional processing of processing unit 20)
Next, an additional process of the
In step S13, the processing unit increase /
続いて、リソース調整装置40の配置先物理サーバ決定部414は、物理サーバ選定基準に基づき、配置先となる物理サーバ30を決定する配置先物理サーバ決定処理を行う(ステップS14)。
具体的には、配置先物理サーバ決定部414は、処理部配置情報435(図6)を参照して、各物理サーバ30に配置された処理部20を抽出し、記憶部43に記憶された処理スケジュール情報433(図4)および処理部使用予定リソース情報434(図5)を参照して、抽出した処理部20の使用予定リソース量を計算する。そして、配置先物理サーバ決定部414は、抽出した処理部20の使用予定リソース量の和を計算することにより、物理サーバ30毎の使用予定リソース量を計算する。次に、配置先物理サーバ決定部414は、ステップS11で取得した物理サーバリソース情報に示される実使用リソース量が上限閾値xを超過せず、かつ、物理サーバ30の使用予定リソース量が上限閾値yを超過しない物理サーバ30を選定する。なお、物理サーバ選定基準を満たす物理サーバ30が、1つも選定されない場合は、稼働状態とする物理サーバ30を1つ増設して、再び配置先物理サーバ決定処理を実行する。
続いて、配置先物理サーバ決定部414は、物理サーバ選定基準を満たすとして選定された物理サーバ30の中から、処理部20の配置先となる物理サーバ30を決定する。なお、この配置先の物理サーバ30の決定は、任意に決定されるものとする。
Subsequently, the placement destination physical
Specifically, the placement destination physical
Subsequently, the placement destination physical
次に、リソース調整装置40の処理部配置実行部415は、新たに追加する処理部20を、リソースプール用の物理サーバ30から、ステップS14において決定した配置先の物理サーバ30に移動させる(ステップS15)。なお、このとき、処理部配置実行部415は、記憶部43内の処理部配置情報435を、新たに追加した処理部20が配置先の物理サーバ30に配置されるように更新する。
Next, the processing unit
続いて、リソース調整装置40の処理部追加・削除情報送信部416は、新たに追加する処理部20の識別情報およびアドレス等の情報を含む処理部追加情報を生成し、振分装置10へ送信する(ステップS16)。
Subsequently, the processing unit addition / deletion
そして、振分装置10の処理部追加・削除情報受信部112は、リソース調整装置40から処理部追加情報を受信し、処理部追加・削除実行部113が、記憶部13に記憶された振分先情報131に追加する処理部20に関する情報を登録し(ステップS17)、処理を終える。
Then, the processing unit addition / deletion
(処理部20の削除処理)
次に、ステップS18〜S21の処理部20の削除処理について説明する。
ステップS18において、リソース調整装置40の処理部増減判定部413は、削除する処理部20の数を決定する。また、処理部増減判定部413は、削除条件を満たす処理部20の中から、実際に削除する処理部20を決定する。この削除対象の処理部20の決定は、削除条件を満たす処理部20の中から任意に選択して削除対象の処理部20を決定してもよいし、使用リソース量が最も少ない処理部20から順に、または、処理件数が最も少ない処理部20から順に、削除する処理部20の数だけ選択し、削除対象の処理部20を決定するようにしてもよい。
なお、配置先物理サーバ決定部414は、前記した非特許文献1に記載の仮想マシン再配置手法により、削除対象の処理部20を削除したものとして、処理部20を他の物理サーバ30へ再配置することにより、稼働状態の物理サーバ30の台数を減らすことができる。
(Deleting process of the processing unit 20)
Next, the deletion process of the
In step S18, the processing unit increase /
Note that the placement destination physical
続いて、リソース調整装置40の処理部追加・削除情報送信部416は、削除対象の処理部20の識別情報を含む処理部削除情報を生成し、振分装置10に送信する(ステップS19)。
Subsequently, the processing unit addition / deletion
そして、振分装置10の処理部追加・削除情報受信部112は、リソース調整装置40から処理部削除情報を受信し、処理部追加・削除実行部113が、記憶部13に記憶された振分先情報131に記憶された削除対象の処理部20の情報を削除する(ステップS20)。
Then, the processing unit addition / deletion
次に、リソース調整装置40の処理部配置実行部415は、削除対象の処理部20を、それまでの配置先の物理サーバ30から、リソースプール用の物理サーバ30(30P)に移動させる(ステップS21)。なお、処理部配置実行部415は、記憶部43内の処理部配置情報435を、削除対象の処理部20を配置先の物理サーバ30から削除し、リソースプール用の物理サーバ30(30P)に移動させるようにして更新する。そして、分散処理システム1全体の処理を終える。
Next, the processing unit
以上説明したように、本実施形態に係る分散処理システム1および分散処理方法によれば、振分部において負荷量の監視が不可能な場合であっても、各処理部20の負荷量に応じて適切な処理部20の数を調整できる。また、処理部20の追加または削除が必要か否かの判定を、所定の期間毎に行うため、処理部数の変更に伴うオーバヘッドの増加を抑え、システム安定性を確保することができる。
As described above, according to the distributed processing system 1 and the distributed processing method according to the present embodiment, even if it is impossible to monitor the load amount in the allocating unit, it depends on the load amount of each
以上、本実施形態について説明したが、本発明は、ここで説明した実施形態に限定されるものではない。
例えば、本発明において、処理部20は仮想マシンであることを前提として説明したが、例えば、物理サーバ30に設けられた複数のCPU(コア)を処理部20とし、この処理部20の使用リソース量または処理件数を処理部負荷量情報としてリソース調整装置40に送信し、処理部増減判定を行うようにすることもできる。この場合、処理部20自体は、他の物理サーバ30に移動はできないが、処理部20を追加する場合には、待機状態のCPU(コア)を稼動状態にし、処理部20を削除する場合には、稼動状態のCPU(コア)を待機状態にすることで、処理部20の数を調整することができる。
Although the present embodiment has been described above, the present invention is not limited to the embodiment described here.
For example, in the present invention, the
1 分散処理システム
5 クライアント
10 振分装置
11,41 制御部
12,42 入出力部
13,43 記憶部
20 処理部
21 アプリケーション処理部
22 処理部負荷量情報収集部
23 処理部負荷量情報通知部
30 物理サーバ
31 仮想化制御部
32 物理サーバリソース情報収集部
33 物理サーバリソース情報通知部
40 リソース調整装置
111 振分方式設定部
112 処理部追加・削除情報受信部
113 処理部追加・削除実行部
114 振分処理部
131 振分先情報
411 処理部負荷量情報受信部
412 物理サーバリソース情報受信部
413 処理部増減判定部
414 配置先物理サーバ決定部
415 処理部配置実行部
416 処理部追加・削除情報送信部
431 処理部負荷量情報
432 物理サーバリソース情報
433 処理スケジュール情報
434 処理部使用予定リソース情報
435 処理部配置情報
436 処理部増減判定閾値情報
437 物理サーバ選定閾値情報
DESCRIPTION OF SYMBOLS 1 Distributed
Claims (4)
前記処理部それぞれは、
当該処理部自身の使用リソース量または処理件数を収集する処理部負荷量情報収集部と、
収集した前記使用リソース量または前記処理件数を処理部負荷量情報として、前記リソース調整装置に通知する処理部負荷量情報通知部と、を備え、
前記リソース調整装置は、
(1)前記処理部の追加を判定するための、前記処理部負荷量情報に対する上限閾値および前記上限閾値以上の値が継続する期間を示す第1の継続期間閾値、並びに、(2)前記処理部の削除を判定するための、前記処理部負荷量情報に対する下限閾値および前記下限閾値を下回る値が継続する期間を示す第2の継続期間閾値、が格納される処理部増減判定閾値情報が記憶される記憶部と、
前記処理部それぞれから、前記処理部負荷量情報を受信する処理部負荷量情報受信部と、
前記処理部負荷量情報に基づき、前記分散処理システムの全処理部のうち第1の所定の割合以上を占める処理部の前記使用リソース量または前記処理件数が、前記上限閾値以上である期間が前記第1の継続期間閾値を超える場合に前記処理部の追加条件を満たすと判定すると共に、
前記処理部負荷量情報に基づき、前記分散処理システムの全処理部のうち第2の所定の割合以上を占める処理部の前記使用リソース量または前記処理件数が、前記下限閾値を下回る期間が前記第2の継続期間閾値を超える場合に前記処理部の削除条件を満たすと判定する処理部増減判定部と、
前記処理部の追加条件を満たすと判定された場合に、前記物理サーバに対し処理部を追加するように制御すると共に、前記処理部の削除条件を満たすと判定された場合に、前記物理サーバに対し処理部を削除するように制御する処理部配置実行部と、
前記処理部を追加する場合に、当該追加する処理部の情報を含む処理部追加情報を生成し前記振分装置に送信すると共に、前記処理部を削除する場合に、当該削除する処理部の情報を含む処理部削除情報を生成し前記振分装置に送信する処理部追加・削除情報送信部と、を備え、
前記振分装置は、
前記処理要求の振分先となる前記処理部を示す振分先情報が記憶される記憶部と、
前記処理部追加情報に示される前記追加する処理部の情報を前記振分先情報に登録すると共に、前記処理部削除情報に示される前記削除する処理部の情報を前記振分先情報から削除する処理部追加・削除実行部と、
受信した前記処理要求を、前記振分先情報を参照して、前記処理部に振り分ける振分処理部と、を備えること
を特徴とする分散処理システム。 A distribution device that distributes a processing request received from a client to a processing unit arranged in a physical server, a processing unit that processes the distributed processing request, and a plurality of the physical units that arrange one or more of the processing units A distributed processing system comprising: a server; and a resource adjustment device that is connected to each of the distribution device, the processing unit, and the plurality of physical servers, and adjusts the number of the processing units arranged in the physical server. ,
Each of the processing units
A processing unit load amount information collecting unit that collects the amount of resources used or the number of processing cases of the processing unit itself,
A processing unit load amount information notifying unit that notifies the resource adjustment device of the collected resource amount used or the number of processing cases as processing unit load amount information,
The resource adjustment device includes:
(1) a first continuation period threshold value indicating a period during which an upper limit threshold value for the processing unit load amount information and a value equal to or greater than the upper limit threshold value for determining the addition of the processing unit; and (2) the process Processing unit increase / decrease determination threshold information for storing a lower limit threshold value for the processing unit load amount information and a second duration threshold value indicating a period during which a value lower than the lower limit threshold value continues is determined. A storage unit,
A processing unit load information receiving unit for receiving the processing unit load information from each of the processing units;
Based on the processing unit load amount information, a period in which the amount of resources used or the number of processing cases of processing units occupying a first predetermined ratio or more of all processing units of the distributed processing system is equal to or greater than the upper limit threshold Determining that the additional condition of the processing unit is satisfied if the first duration threshold is exceeded;
Based on the processing unit load amount information, a period in which the amount of used resources or the number of processing cases of processing units occupying a second predetermined ratio or more of all processing units of the distributed processing system is lower than the lower limit threshold is the first time. A processing unit increase / decrease determination unit that determines that the deletion condition of the processing unit is satisfied when the duration threshold value of 2 is exceeded,
When it is determined that the additional condition of the processing unit is satisfied, the physical server is controlled to add a processing unit, and when it is determined that the deletion condition of the processing unit is satisfied, the physical server A processing unit placement execution unit that controls to delete the processing unit;
When the processing unit is added, processing unit additional information including information on the processing unit to be added is generated and transmitted to the distribution device. When the processing unit is deleted, information on the processing unit to be deleted A processing unit addition / deletion information transmitting unit that generates and transmits processing unit deletion information including the processing unit deletion information,
The sorting device is
A storage unit that stores distribution destination information indicating the processing unit that is a distribution destination of the processing request;
The information of the processing unit to be added indicated in the processing unit additional information is registered in the distribution destination information, and the information of the processing unit to be deleted indicated in the processing unit deletion information is deleted from the distribution destination information. Processing part addition / deletion execution part,
A distributed processing system, comprising: a distribution processing unit that distributes the received processing request to the processing unit with reference to the distribution destination information.
前記振分先情報に登録された前記処理部それぞれへの前記処理要求の振分比率を均等に設定したラウンドロビン、または、前記処理部それぞれへの前記処理要求の振分比率を、前記処理部が配置される前記物理サーバの処理能力に応じて設定した重み付けラウンドロビンにより、振分先となる前記処理部を決定すること、
を特徴とする請求項1に記載の分散処理システム。 The distribution processing unit of the distribution device is
The round robin in which the distribution ratios of the processing requests to the respective processing units registered in the distribution destination information are set evenly, or the distribution ratios of the processing requests to the respective processing units, Determining the processing unit to be a distribution destination by weighted round robin set according to the processing capacity of the physical server where
The distributed processing system according to claim 1.
前記処理部それぞれは、
当該処理部自身の使用リソース量または処理件数を収集する処理部負荷量情報収集部と、
収集した前記使用リソース量または前記処理件数を処理部負荷量情報として、前記リソース調整装置に通知する処理部負荷量情報通知部と、を備え、
前記リソース調整装置は、
(1)前記処理部の追加を判定するための、前記処理部負荷量情報に対する上限閾値および前記上限閾値以上の値が継続する期間を示す第1の継続期間閾値、並びに、(2)前記処理部の削除を判定するための、前記処理部負荷量情報に対する下限閾値および前記下限閾値を下回る値が継続する期間を示す第2の継続期間閾値、が格納される処理部増減判定閾値情報が記憶される記憶部と、
前記処理部それぞれから、前記処理部負荷量情報を受信する処理部負荷量情報受信部と、
前記処理部負荷量情報に基づき、前記使用リソース量または前記処理件数が、前記上限閾値以上である期間が前記第1の継続期間閾値を超える場合に前記処理部の追加条件を満たすと判定すると共に、
前記処理部負荷量情報に基づき、前記使用リソース量または前記処理件数が、前記下限閾値を下回る期間が前記第2の継続期間閾値を超える場合に前記処理部の削除条件を満たすと判定する処理部増減判定部と、
前記処理部の追加条件を満たすと判定された場合に、前記物理サーバに対し処理部を追加するように制御すると共に、前記処理部の削除条件を満たすと判定された場合に、前記物理サーバに対し処理部を削除するように制御する処理部配置実行部と、
前記処理部を追加する場合に、当該追加する処理部の情報を含む処理部追加情報を生成し前記振分装置に送信すると共に、前記処理部を削除する場合に、当該削除する処理部の情報を含む処理部削除情報を生成し前記振分装置に送信する処理部追加・削除情報送信部と、を備え、
前記振分装置は、
前記処理要求の振分先となる前記処理部を示す振分先情報が記憶される記憶部と、
前記処理部追加情報に示される前記追加する処理部の情報を前記振分先情報に登録すると共に、前記処理部削除情報に示される前記削除する処理部の情報を前記振分先情報から削除する処理部追加・削除実行部と、
受信した前記処理要求を、前記振分先情報を参照して、前記処理部に振り分ける振分処理部と、を備え、
前記処理部は、前記物理サーバ上に配置される仮想マシンで構成されており、
前記物理サーバは、前記処理要求に対する処理を実行する処理部を配置する稼働中の前記物理サーバと、前記処理要求を受け付けない待機状態の前記処理部を配置するリソースプール用の前記物理サーバとで構成されており、
前記物理サーバそれぞれは、
当該物理サーバ自身の使用リソース量を収集する物理サーバリソース情報収集部と、
収集した前記使用リソース量を物理サーバリソース情報として、前記リソース調整装置に通知する物理サーバリソース情報通知部と、備え、
前記リソース調整装置は、
前記記憶部にさらに、前記処理要求を処理するためのアプリケーションを実行する予定の期間を示す処理スケジュールを前記処理部ごとに示す処理スケジュール情報と、前記処理部とその処理部が配置されている前記物理サーバとを関連付けた情報である処理部配置情報と、前記物理サーバの使用リソース量に対する上限閾値および前記処理スケジュール情報を用いて算出される前記物理サーバの使用予定リソース量に対する上限閾値が格納される物理サーバ選定閾値情報と、が記憶されており、
前記物理サーバそれぞれから、前記物理サーバリソース情報を受信する物理サーバリソース情報受信部と、
前記処理部増減判定部が、前記処理部の追加条件を満たすと判定した場合に、前記物理サーバそれぞれについて、当該物理サーバに配置されているすべての前記処理部を前記処理部配置情報に基づき抽出し、前記抽出した前記処理部それぞれの使用予定リソース量を前記処理スケジュール情報を用いて算出し、算出した前記処理部ごとの前記使用予定リソース量を合計して、前記物理サーバごとの使用予定リソース量を算出し、当該算出した使用予定リソース量が、前記物理サーバの使用予定リソース量に対する上限閾値を超えず、かつ、前記物理サーバから受信した前記物理サーバリソース情報に示される前記使用リソース量が、前記物理サーバの使用リソース量に対する上限閾値を超えない物理サーバを選定し、前記選定した物理サーバの中から、前記処理部を追加する配置先の物理サーバを決定すると共に、前記処理部増減判定部が、前記処理部の削除条件を満たすと判定した場合に、前記削除条件を満たす処理部の中から削除対象となる処理部を決定する配置先物理サーバ決定部と、をさらに備え、
前記処理部配置実行部は、前記処理部増減判定部が、前記処理部の追加条件を満たすと判定した場合に、前記リソースプール用の物理サーバに配置された処理部を、前記配置先物理サーバ決定部が決定した前記配置先の物理サーバに移動させるように制御すると共に、前記処理部増減判定部が、前記処理部の削除条件を満たすと判定した場合に、前記削除対象となる処理部を、前記リソースプール用の物理サーバに移動させるように制御すること、
を特徴とする分散処理システム。 A distribution device that distributes a processing request received from a client to a processing unit arranged in a physical server, a processing unit that processes the distributed processing request, and a plurality of the physical units that arrange one or more of the processing units A distributed processing system comprising: a server; and a resource adjustment device that is connected to each of the distribution device, the processing unit, and the plurality of physical servers, and adjusts the number of the processing units arranged in the physical server. ,
Each of the processing units
A processing unit load amount information collecting unit that collects the amount of resources used or the number of processing cases of the processing unit itself,
A processing unit load amount information notifying unit that notifies the resource adjustment device of the collected resource amount used or the number of processing cases as processing unit load amount information,
The resource adjustment device includes:
(1) a first continuation period threshold value indicating a period during which an upper limit threshold value for the processing unit load amount information and a value equal to or greater than the upper limit threshold value for determining the addition of the processing unit; and (2) the process Processing unit increase / decrease determination threshold information for storing a lower limit threshold value for the processing unit load amount information and a second duration threshold value indicating a period during which a value lower than the lower limit threshold value continues is determined. A storage unit,
A processing unit load information receiving unit for receiving the processing unit load information from each of the processing units;
Based on the processing unit load amount information, it is determined that an additional condition of the processing unit is satisfied when a period in which the amount of used resources or the number of processing cases is greater than or equal to the upper limit threshold exceeds the first duration threshold ,
A processing unit that, based on the processing unit load amount information, determines that the usage resource amount or the number of processing cases satisfies a deletion condition of the processing unit when a period in which the amount of used resources is less than the lower limit threshold exceeds the second duration threshold An increase / decrease determination unit;
When it is determined that the additional condition of the processing unit is satisfied, the physical server is controlled to add a processing unit, and when it is determined that the deletion condition of the processing unit is satisfied, the physical server A processing unit placement execution unit that controls to delete the processing unit;
When the processing unit is added, processing unit additional information including information on the processing unit to be added is generated and transmitted to the distribution device. When the processing unit is deleted, information on the processing unit to be deleted A processing unit addition / deletion information transmitting unit that generates and transmits processing unit deletion information including the processing unit deletion information,
The sorting device is
A storage unit that stores distribution destination information indicating the processing unit that is a distribution destination of the processing request;
The information of the processing unit to be added indicated in the processing unit additional information is registered in the distribution destination information, and the information of the processing unit to be deleted indicated in the processing unit deletion information is deleted from the distribution destination information. Processing part addition / deletion execution part,
A distribution processing unit that distributes the received processing request to the processing unit with reference to the distribution destination information;
The processing unit is configured by a virtual machine arranged on the physical server,
The physical server includes an active physical server that arranges a processing unit that executes processing for the processing request, and a physical server for a resource pool that arranges the processing unit in a standby state that does not accept the processing request. Configured,
Each of the physical servers
A physical server resource information collection unit that collects the used resource amount of the physical server itself;
A physical server resource information notification unit for notifying the resource adjustment device of the collected used resource amount as physical server resource information,
The resource adjustment device includes:
The storage unit further includes processing schedule information indicating a processing schedule indicating a period for which an application for processing the processing request is to be executed for each processing unit, and the processing unit and the processing unit. The processing unit arrangement information, which is information associating the physical server, the upper limit threshold for the used resource amount of the physical server, and the upper limit threshold for the scheduled use amount of the physical server calculated using the processing schedule information are stored. And physical server selection threshold information to be stored,
A physical server resource information receiving unit for receiving the physical server resource information from each of the physical servers;
When the processing unit increase / decrease determination unit determines that the additional condition of the processing unit is satisfied, for each of the physical servers, all the processing units arranged in the physical server are extracted based on the processing unit arrangement information. And calculating the scheduled use resource amount of each of the extracted processing units using the processing schedule information, and summing the calculated scheduled use resource amount for each of the processing units to obtain the scheduled use resource for each physical server. The amount of used resources indicated by the physical server resource information received from the physical server does not exceed the upper limit threshold for the amount of scheduled resource used of the physical server. Selecting a physical server that does not exceed the upper threshold for the amount of resource used by the physical server, and selecting the selected physical server Among the processing units that satisfy the deletion condition when the processing unit increase / decrease determination unit determines that the deletion condition of the processing unit is satisfied, while determining the physical server to which the processing unit is to be added. A placement destination physical server determination unit that determines a processing unit to be deleted from
When the processing unit increase / decrease determining unit determines that the additional condition of the processing unit is satisfied, the processing unit placement execution unit determines that the processing unit placed on the resource pool physical server is the placement destination physical server. When the determination unit determines that the processing unit increase / decrease determination unit satisfies the deletion condition of the processing unit, the processing unit to be deleted is controlled. Controlling to move to the physical server for the resource pool,
It said distributed processing system.
前記処理部それぞれは、
当該処理部自身の使用リソース量または処理件数を収集するステップと、
収集した前記使用リソース量または前記処理件数を処理部負荷量情報として、前記リソース調整装置に通知するステップと、を実行し、
前記リソース調整装置は、
(1)前記処理部の追加を判定するための、前記処理部負荷量情報に対する上限閾値および前記上限閾値以上の値が継続する期間を示す第1の継続期間閾値、並びに、(2)前記処理部の削除を判定するための、前記処理部負荷量情報に対する下限閾値および前記下限閾値を下回る値が継続する期間を示す第2の継続期間閾値、が格納される処理部増減判定閾値情報が記憶される記憶部を備えており、
前記処理部それぞれから、前記処理部負荷量情報を受信するステップと、
前記処理部負荷量情報に基づき、前記分散処理システムの全処理部のうち第1の所定の割合以上を占める処理部の前記使用リソース量または前記処理件数が、前記上限閾値以上である期間が前記第1の継続期間閾値を超える場合に前記処理部の追加条件を満たすと判定するステップと、
前記処理部負荷量情報に基づき、前記分散処理システムの全処理部のうち第2の所定の割合以上を占める処理部の前記使用リソース量または前記処理件数が、前記下限閾値を下回る期間が前記第2の継続期間閾値を超える場合に前記処理部の削除条件を満たすと判定するステップと、
前記処理部の追加条件を満たすと判定された場合に、前記物理サーバに対し処理部を追加するように制御するステップと、
前記処理部の削除条件を満たすと判定された場合に、前記物理サーバに対し処理部を削除するように制御するステップと、
前記処理部を追加する場合に、当該追加する処理部の情報を含む処理部追加情報を生成し前記振分装置に送信するステップと、
前記処理部を削除する場合に、当該削除する処理部の情報を含む処理部削除情報を生成し前記振分装置に送信するステップと、を実行し、
前記振分装置は、
前記処理要求の振分先となる前記処理部を示す振分先情報が記憶される記憶部を備えており、
前記処理部追加情報に示される前記追加する処理部の情報を前記振分先情報に登録するステップと、
前記処理部削除情報に示される前記削除する処理部の情報を前記振分先情報から削除するステップと、
受信した前記処理要求を、前記振分先情報を参照して、前記処理部に振り分けるステップと、を実行すること
を特徴とする分散処理方法。 A distribution device that distributes a processing request received from a client to a processing unit arranged in a physical server, a processing unit that processes the distributed processing request, and a plurality of the physical units that arrange one or more of the processing units Distributed processing of a distributed processing system comprising: a server; and a resource adjustment device that is connected to each of the distribution device, the processing unit, and the plurality of physical servers, and adjusts the number of the processing units arranged in the physical server A method,
Each of the processing units
A step of collecting the amount of resources used or the number of processing cases of the processing unit itself;
Performing the step of notifying the resource adjustment device of the collected use resource amount or the number of processing cases as processing unit load amount information;
The resource adjustment device includes:
(1) a first continuation period threshold value indicating a period during which an upper limit threshold value for the processing unit load amount information and a value equal to or greater than the upper limit threshold value for determining the addition of the processing unit; and (2) the process Processing unit increase / decrease determination threshold information for storing a lower limit threshold value for the processing unit load amount information and a second duration threshold value indicating a period during which a value lower than the lower limit threshold value continues is determined. A storage unit,
Receiving the processing unit load information from each of the processing units;
Based on the processing unit load amount information, a period in which the amount of resources used or the number of processing cases of processing units occupying a first predetermined ratio or more of all processing units of the distributed processing system is equal to or greater than the upper limit threshold Determining that the additional condition of the processing unit is satisfied when the first duration threshold is exceeded;
Based on the processing unit load amount information, a period in which the amount of used resources or the number of processing cases of processing units occupying a second predetermined ratio or more of all processing units of the distributed processing system is lower than the lower limit threshold is the first time. Determining that the deletion condition of the processing unit is satisfied if the duration threshold of 2 is exceeded;
Controlling to add a processing unit to the physical server when it is determined that the additional condition of the processing unit is satisfied;
A step of controlling the physical server to delete the processing unit when it is determined that the deletion condition of the processing unit is satisfied;
When adding the processing unit, generating processing unit additional information including information of the processing unit to be added, and transmitting the processing unit additional information to the distribution device;
When deleting the processing unit, generating processing unit deletion information including information of the processing unit to be deleted and transmitting to the sorting device,
The sorting device is
A storage unit for storing distribution destination information indicating the processing unit to which the processing request is allocated;
Registering information of the processing unit to be added indicated in the processing unit additional information in the distribution destination information;
Deleting the information of the processing unit to be deleted indicated in the processing unit deletion information from the distribution destination information;
A step of distributing the received processing request to the processing unit with reference to the distribution destination information.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013099117A JP5997659B2 (en) | 2013-05-09 | 2013-05-09 | Distributed processing system and distributed processing method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013099117A JP5997659B2 (en) | 2013-05-09 | 2013-05-09 | Distributed processing system and distributed processing method |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2014219859A JP2014219859A (en) | 2014-11-20 |
JP5997659B2 true JP5997659B2 (en) | 2016-09-28 |
Family
ID=51938239
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013099117A Expired - Fee Related JP5997659B2 (en) | 2013-05-09 | 2013-05-09 | Distributed processing system and distributed processing method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5997659B2 (en) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017146791A (en) * | 2016-02-17 | 2017-08-24 | 日本電信電話株式会社 | In-cluster migration management system, in-cluster migration management method, management server and program |
US20180203784A1 (en) * | 2016-03-28 | 2018-07-19 | Hitachi, Ltd. | Management computer and performance degradation sign detection method |
CN115002209A (en) * | 2022-06-23 | 2022-09-02 | 京东方科技集团股份有限公司 | Data processing method, device and system |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5287623B2 (en) * | 2009-09-11 | 2013-09-11 | 株式会社リコー | Virtual server management system, image processing system, virtual server management apparatus, and control program |
-
2013
- 2013-05-09 JP JP2013099117A patent/JP5997659B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2014219859A (en) | 2014-11-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9571347B2 (en) | Reactive auto-scaling of capacity | |
Tomás et al. | An autonomic approach to risk-aware data center overbooking | |
CN107273185B (en) | Load balancing control method based on virtual machine | |
JP5332065B2 (en) | Cluster configuration management method, management apparatus, and program | |
JP4170302B2 (en) | Load control device and load control program | |
CN108182105B (en) | Local dynamic migration method and control system based on Docker container technology | |
WO2017167025A1 (en) | Method and device for realizing task scheduling, and computer storage medium | |
JP6881575B2 (en) | Resource allocation systems, management equipment, methods and programs | |
CN110196851B (en) | Data storage method, device, equipment and storage medium | |
EP2725862A1 (en) | Resource allocation method and resource management platform | |
KR20170029263A (en) | Apparatus and method for load balancing | |
JP2005196601A (en) | Policy simulator for autonomous management system | |
JP2010238051A (en) | Load balancing program and load balancing apparatus | |
KR101696698B1 (en) | Distribution and management method of components having reliance | |
JP2011118525A (en) | Server management apparatus, server management method, and server management program | |
CN105703927A (en) | Resource allocation method, network device and network system | |
CN103366022B (en) | Information handling system and disposal route thereof | |
CN112817728B (en) | Task scheduling method, network device and storage medium | |
JP6031462B2 (en) | Virtual machine placement apparatus, method, and program | |
US20160081103A1 (en) | Method and apparatus for adjusting physical resource, and controller | |
CN112463395A (en) | Resource allocation method, device, equipment and readable storage medium | |
JP5997659B2 (en) | Distributed processing system and distributed processing method | |
CN112559122A (en) | Virtualization instance management and control method and system based on electric power special security and protection equipment | |
KR101448413B1 (en) | Method and apparatus for scheduling communication traffic in atca-based equipment | |
CN107203256B (en) | Energy-saving distribution method and device under network function virtualization scene |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20150731 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20160412 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20160524 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20160725 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20160823 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20160826 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5997659 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |