JP6928237B2 - Control program, control device and control method - Google Patents
Control program, control device and control method Download PDFInfo
- Publication number
- JP6928237B2 JP6928237B2 JP2017110775A JP2017110775A JP6928237B2 JP 6928237 B2 JP6928237 B2 JP 6928237B2 JP 2017110775 A JP2017110775 A JP 2017110775A JP 2017110775 A JP2017110775 A JP 2017110775A JP 6928237 B2 JP6928237 B2 JP 6928237B2
- Authority
- JP
- Japan
- Prior art keywords
- physical
- machines
- machine
- virtual
- information
- 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.)
- Active
Links
Images
Landscapes
- Computer And Data Communications (AREA)
Description
本発明は、制御プログラム、制御装置及び制御方法に関する。 The present invention relates to control programs, control devices and control methods.
例えば、利用者にサービスを提供する事業者(以下、単に事業者とも呼ぶ)は、サービスの提供を行うための業務システム(以下、情報処理システムとも呼ぶ)を構築して稼働させる。 For example, a business operator that provides a service to a user (hereinafter, also simply referred to as a business operator) constructs and operates a business system (hereinafter, also referred to as an information processing system) for providing the service.
具体的に、事業者は、例えば、利用者からの処理要求に対する処理を行う複数の仮想マシン(以下、VM:Virtual Machineとも呼ぶ)と、複数の仮想マシンに対して利用者からの処理要求の振り分けを行う仮想マシン(以下、負荷分散装置とも呼ぶ)とを有する業務システムの構築を行う。そして、負荷分散装置は、例えば、各仮想マシンの現在の負荷を参照し、負荷が相対的に低い仮想マシンに対して、利用者からの処理要求に対する処理を行わせる。これにより、事業者は、業務システムを構成する各仮想マシンの負荷を平準化しながら、利用者に対するサービスの提供を行うことが可能になる(例えば、特許文献1乃至4参照)。
Specifically, the business operator, for example, has a plurality of virtual machines (hereinafter, also referred to as VM: Virtual Machine) that perform processing for processing requests from users, and processing requests from users for a plurality of virtual machines. A business system having a virtual machine for distribution (hereinafter, also referred to as a load balancer) is constructed. Then, the load balancer refers to, for example, the current load of each virtual machine, and causes the virtual machine having a relatively low load to process the processing request from the user. As a result, the business operator can provide services to users while leveling the load of each virtual machine constituting the business system (see, for example,
上記のような業務システムにおいて、利用者からの処理要求が増加した場合、一台の負荷分散装置では各仮想マシンに対して処理要求の振り分けを行うことができない場合がある。 In the above-mentioned business system, when the processing requests from users increase, it may not be possible for one load balancer to distribute the processing requests to each virtual machine.
そこで、事業者は、例えば、必要に応じて複数の負荷分散装置を用意する。そして、事業者は、複数の負荷分散装置のうちの一台を、他の負荷分散装置に対して利用者からの処理要求を振り分ける負荷分散装置(以下、単に管理装置とも呼ぶ)として機能させる。また、事業者は、管理装置以外の負荷分散装置のそれぞれを、管理装置から振り分けられた処理要求を各仮想マシンに振り分ける負荷分散装置として機能させる。これにより、事業者は、複数の負荷分散装置が動作する場合であっても、業務システムを構成する各仮想マシンの負荷を平準化しながら利用者に対してサービスの提供を行うことが可能になる。 Therefore, the business operator prepares, for example, a plurality of load balancers as needed. Then, the business operator causes one of the plurality of load balancers to function as a load balancer (hereinafter, also simply referred to as a management device) that distributes processing requests from users to other load balancers. In addition, the business operator causes each of the load balancers other than the management device to function as a load balancer that distributes the processing requests distributed from the management device to each virtual machine. As a result, the business operator can provide services to users while leveling the load of each virtual machine constituting the business system even when a plurality of load balancers operate. ..
ここで、管理装置は、例えば、利用者からの処理要求の振り分けに加え、負荷分散装置の追加や削除を行う場合がある。具体的に、管理装置は、各仮想マシンが動作する物理マシンのそれぞれから、現在の負荷を示す情報(以下、負荷情報とも呼ぶ)を取得する。そして、管理装置は、例えば、現在の負荷が所定の閾値よりも高い物理マシンが存在する場合、その物理マシンで動作する負荷分散装置の負荷が高くなっていると判定し、その物理マシンで動作する負荷分散装置を追加する。これにより、管理装置は、仮想マシンごとの負荷情報を取得することなく、各物理マシンに負荷分散装置を追加すべきか否かの判定を行うことが可能になり、各負荷分散装置が処理要求を振り分ける仮想マシンの数の調整を行うことが可能になる。 Here, the management device may add or delete a load balancer, for example, in addition to distributing processing requests from users. Specifically, the management device acquires information indicating the current load (hereinafter, also referred to as load information) from each of the physical machines on which each virtual machine operates. Then, for example, when there is a physical machine whose current load is higher than a predetermined threshold value, the management device determines that the load of the load balancer operating on the physical machine is high, and operates on the physical machine. Add a load balancer. This enables the management device to determine whether or not to add a load balancer to each physical machine without acquiring load information for each virtual machine, and each load balancer makes a processing request. It is possible to adjust the number of virtual machines to be distributed.
しかしながら、各仮想マシンが動作する物理マシンでは、負荷分散装置が処理要求の振り分けを行わない仮想マシン(以下、他の仮想マシンとも呼ぶ)が動作する場合がある。そのため、管理装置は、物理マシンごとの負荷情報に基づいて負荷分散装置の追加を行う場合、負荷分散装置を必要以上に追加する可能性があり、負荷の大きい物理マシンの処理負荷がより増大する場合がある。 However, in the physical machine on which each virtual machine operates, a virtual machine (hereinafter, also referred to as another virtual machine) in which the load balancer does not distribute processing requests may operate. Therefore, when the management device adds the load balancer based on the load information for each physical machine, the load balancer may be added more than necessary, and the processing load of the heavy physical machine is further increased. In some cases.
そこで、一つの側面では、本発明は、各物理マシンの負荷を平準化することを可能とする制御プログラム、制御装置及び制御方法を提供することを目的とする。 Therefore, in one aspect, it is an object of the present invention to provide a control program, a control device, and a control method capable of leveling the load of each physical machine.
実施の形態の一態様では、それぞれが複数の物理マシンのいずれかに構築された複数の仮想マシンのいずれかに受け付けた要求を振り分ける特定の仮想マシンを、前記複数の物理マシンのいずれかに配置する制御プログラムにおいて、前記複数の物理マシンの負荷情報に基づき、前記特定の仮想マシンを配置する配置先の物理マシンを特定し、特定した前記物理マシンの負荷情報に基づき、前記複数の仮想マシンのうち、前記特定の仮想マシンが受け付けた要求を振り分け可能な仮想マシンの数を算出し、特定した前記物理マシンへの前記特定の仮想マシンの配置に応じて、前記複数の仮想マシンのうち、算出した前記数に応じた数の仮想マシンを、前記特定の仮想マシンが受け付けた要求を振り分ける振り分け先の仮想マシンとする、処理をコンピュータに実行させる。 In one aspect of the embodiment, a specific virtual machine that distributes the received request to any of the plurality of virtual machines, each of which is built on one of the plurality of physical machines, is placed on one of the plurality of physical machines. In the control program to be executed, the physical machine to which the specific virtual machine is to be placed is specified based on the load information of the plurality of physical machines, and the plurality of virtual machines of the plurality of virtual machines are specified based on the load information of the specified physical machine. Among them, the number of virtual machines capable of distributing the requests received by the specific virtual machine is calculated, and the number of the plurality of virtual machines is calculated according to the arrangement of the specific virtual machine in the specified physical machine. A computer is made to execute a process in which the number of virtual machines corresponding to the above-mentioned number is set as the distribution destination virtual machine for which the request received by the specific virtual machine is distributed.
一つの側面によれば、各物理マシンの負荷を平準化することを可能とする。 According to one aspect, it is possible to level the load of each physical machine.
[情報処理システムの構成]
図1は、情報処理システム10の全体構成を示す図である。図1に示す情報処理システム10は、例えば、利用者にサービスを提供するための業務システムである。図1に示す情報処理システム10において、管理装置1及び物理マシン2がデータセンター(図示しない)内に設けられている。そして、事業者端末5は、インターネットやイントラネット等のネットワークを介して、データセンターとアクセス可能になっている。
[Information processing system configuration]
FIG. 1 is a diagram showing an overall configuration of the
物理マシン2は、例えば、複数の物理マシンから構成される。各物理マシンは、CPU(Central Computing Unit)と、メモリ(DRAM:Dynamic Random Access Memory)と、ハードディスク(HDD:Hard Disk Drive)等の大容量メモリとを有する。そして、物理マシン2の物理リソースは、利用者に対してサービスを提供するための各処理を実行する複数の仮想マシン3に割当てられる。
The
仮想化ソフトウエア4は、物理マシン2のCPU、メモリ及びハードディスクを割当てることにより、仮想マシン3を動作させる基盤ソフトウエアである。仮想化ソフトウエア4は、例えば、物理マシン2で動作する。
The
管理装置1は、例えば、利用者が利用者端末(図示しない)を介して送信した処理要求を受信した場合に、受信した処理要求を仮想マシン3のいずれかに振り分ける。管理装置1は、例えば、仮想マシン3からなるものであってよい。以下、管理装置1の処理の具体例について説明を行う。
For example, when the user receives a processing request transmitted via a user terminal (not shown), the
[管理装置における処理の具体例]
図2から図4は、管理装置1における処理の具体例について説明を行う。なお、以下、物理マシン2が物理マシン21、22及び23からなるものとして説明を行う。また、物理マシン21、22及び23において動作する仮想マシン3の一部が、他の仮想マシン3に対して処理要求を振り分ける負荷分散装置31a、32a及び33a(以下、これらを総称して負荷分散装置3aとも呼ぶ)としてそれぞれ動作するものとして説明を行う。さらに、負荷分散装置31aがVM31b、31c及び31dに対して処理要求の振り分けを行い、負荷分散装置32aがVM32b、32c及び32dに対して処理要求の振り分けを行い、負荷分散装置33aがVM33b及び33cに対して処理要求の振り分けを行うものとして説明を行う。
[Specific examples of processing in the management device]
2 to 4 show a specific example of the processing in the
管理装置1は、利用者端末(図示しない)等から処理要求を受信した場合、負荷分散装置31a、32a及び33aのうちのいずれかに対し、受信した処理要求を振り分ける。
When the
具体的に、管理装置1は、図2に示すように、例えば、物理マシン21、22及び23から各物理マシン全体としての負荷を示す情報(以下、単に負荷情報とも呼ぶ)を取得する。そして、管理装置1は、例えば、取得した各負荷情報に基づき、現在の負荷が最も小さい物理マシン2を特定する。その後、管理装置1は、図3に示すように、例えば、特定した物理マシン2において動作する負荷分散装置3aに対して処理要求の振り分けを行う。これにより、管理装置1は、各物理マシン2における負荷を平準化することが可能になる。
Specifically, as shown in FIG. 2, the
また、管理装置1は、例えば、定期的なタイミングにおいて、各物理マシン2において負荷分散装置の追加または削除を行う必要があるか否かの判定を行う。
Further, the
具体的に、管理装置1は、図3に示すように、例えば、取得した各負荷情報に基づき、現在の負荷が予め定めた所定の閾値を上回っている物理マシン2が存在するか否かを判定する。そして、所定の閾値を上回っている物理マシン2が存在する場合、管理装置1は、その物理マシン2において動作する負荷分散装置3aの負荷が高くなっていると判定し、新たな負荷分散装置3aの追加を行う。これにより、管理装置1は、例えば、負荷分散装置3aが高負荷になることに伴って、処理要求に対する応答が遅延することを防止することが可能になる。また、管理装置1は、この場合、各物理マシン2において生成された仮想マシン3それぞれの負荷情報を取得することなく、新たな負荷分散装置3aの追加を行うか否かの判定を行うことが可能になる。
Specifically, as shown in FIG. 3, the
ここで、物理マシン2には、負荷分散装置3aが処理要求の振り分けを行わない仮想マシン3(他の仮想マシン3)が生成される場合がある。具体的に、図4に示す例において、物理マシン21には、他の仮想マシン3であるVM31e、31f及び31gが生成され、物理マシン22には、他の仮想マシン3であるVM32eが生成されている。そのため、管理装置1は、物理マシンごと2の負荷情報に基づいて負荷分散装置3aの追加を行う場合、負荷分散装置3aを必要以上に追加する可能性があり、各物理マシン2の処理負担がより増大する場合がある。
Here, the
そこで、本実施の形態における管理装置1は、複数の物理マシン2の負荷情報に基づき、複数の物理マシン2のいずれかに構築された複数の仮想マシン3のいずれかに受け付けた処理要求を振り分ける特定の負荷分散装置3a(以下、特定の仮想マシン3とも呼ぶ)を配置する配置先の物理マシン2を特定する。そして、管理装置1は、特定した物理マシン2の負荷情報に基づき、複数の仮想マシン3のうち、特定の負荷分散装置3が受け付けた処理要求を振り分け可能な仮想マシン3の数を算出する。
Therefore, the
さらに、管理装置1は、特定した物理マシン2への特定の負荷分散装置3aの配置に応じて、複数の仮想マシン3のうち、算出した数に応じた数の仮想マシン3を、特定の負荷分散装置3aが受け付けた処理要求を振り分ける振り分け先の仮想マシン3とする。
Further, the
すなわち、管理装置1は、新たな負荷分散装置3aの追加を行う場合、負荷が比較的小さい物理マシン2に対して新たな負荷分散装置3aの追加を行う。そして、管理装置1は、負荷が大きい物理マシン2に生成された負荷分散装置3aが処理要求の振り分けを行っている仮想マシン3(仮想マシン3の一部)に対する振り分けを、新たな負荷分散装置3aに行わせる。
That is, when the
これにより、管理装置1は、負荷が大きい物理マシン2に対して新たな負荷分散装置3aが追加されることを防止することが可能になる。また、管理装置1は、負荷が大きい物理マシン2に生成された負荷分散装置3aが振り分けを行う仮想マシン3の数を減らすことによって、負荷が大きい物理マシン2の負荷を抑制することが可能になる。そのため、管理装置1は、各物理マシン2の負荷を平準化させることが可能になる。
As a result, the
[情報処理システムのハードウエア構成]
次に、情報処理システム10のハードウエア構成について説明する。図5は、管理装置1のハードウエア構成を示す図である。また、図6は、物理マシン2のハードウエア構成を示す図である。
[Hardware configuration of information processing system]
Next, the hardware configuration of the
管理装置1は、図5に示すように、プロセッサであるCPU101と、メモリ102と、外部インターフェース(以下、I/Oユニットとも呼ぶ)103と、記憶媒体104とを有する。各部は、バス105を介して互いに接続される。
As shown in FIG. 5, the
記憶媒体104は、例えば、記憶媒体104内のプログラム格納領域(図示しない)に、負荷分散装置3aの管理を行う処理(以下、制御処理とも呼ぶ)を行うためのプログラム110を記憶する。また、記憶媒体104は、例えば、制御処理を行う際に用いられる情報を記憶する情報格納領域130(以下、記憶部130とも呼ぶ)を有する。
The
CPU101は、プログラム110の実行時に、プログラム110を記憶媒体104からメモリ102にロードし、プログラム110と協働して制御処理を行う。また、外部インターフェース103は、例えば、物理マシン2と通信を行う。
When the program 110 is executed, the
また、物理マシン2は、図6に示すように、プロセッサであるCPU201と、メモリ202と、外部インターフェース(以下、I/Oユニットとも呼ぶ)203と、記憶媒体204とを有する。各部は、バス205を介して互いに接続される。
Further, as shown in FIG. 6, the
記憶媒体204は、例えば、記憶媒体204内のプログラム格納領域(図示しない)に、制御装置を行うためのプログラム210を記憶する。また、記憶媒体204は、例えば、制御処理を行う際に用いられる情報を記憶する情報格納領域230(以下、記憶部230とも呼ぶ)を有する。
The
CPU201は、プログラム210の実行時に、プログラム210を記憶媒体204からメモリ202にロードし、プログラム210と協働して制御処理を行う。また、外部インターフェース203は、例えば、管理装置1及び事業者端末5と通信を行う。
When the program 210 is executed, the
[情報処理システムの機能]
次に、情報処理システム10の機能について説明する。図7は、管理装置1の機能のブロック図である。また、図8は、物理マシン2の機能のうち、負荷分散装置3aによって実現される機能のブロック図である。
[Information processing system functions]
Next, the function of the
[管理装置の機能]
初めに、管理装置1の機能について説明を行う。管理装置1のCPU101は、プログラム110と協働することにより、図7に示すように、処理要求受付部111と、処理要求振分部112と、情報取得部113と、情報管理部114と、配置先特定部115と、マシン数算出部116と、振分先決定部117として動作する。また、情報格納領域130には、例えば、振分管理情報131と、ホスト管理情報132と、VM管理情報133と、閾値情報134とが記憶される。
[Management device function]
First, the function of the
処理要求受付部111は、例えば、利用者端末(図示しない)から送信された処理要求を受信する。そして、処理要求振分部112は、例えば、処理要求受付部111が受信した処理要求を、負荷分散装置3aのうちのいずれかに振り分ける。
The processing
情報取得部113は、例えば、定期的なタイミングにおいて、各物理マシン2から負荷情報を取得する。そして、情報管理部114は、情報取得部113が取得した負荷情報に基づいて、情報格納領域130に記憶された振分管理情報131、ホスト管理情報132及びVM管理情報133を更新する。振分管理情報131は、管理装置1及び各負荷分散装置3aに関する情報であり、ホスト管理情報132は、各物理マシン2に関する情報である。また、VM管理情報133は、負荷分散装置3aが処理要求を振り分ける各仮想マシン3に関する情報である。
The
配置先特定部115は、各物理マシン2の負荷情報に基づき、新たな負荷分散装置3aを配置する配置先の物理マシン2を特定する。具体的に、配置先特定部115は、例えば、現在の負荷が閾値情報134を上回る物理マシン2が存在する場合に、新たな負荷分散装置3aを配置する配置先の物理マシン2の特定を行う。
The placement
マシン数算出部116は、配置先特定部115が特定した物理マシン2の負荷情報に基づき、各仮想マシン3のうち、新たな負荷分散装置3aが処理要求を振り分け可能な仮想マシン3の数を算出する。
The machine
振分先決定部117は、配置先特定部115が特定した物理マシン2への新たな負荷分散装置3aの配置に応じて、各仮想マシン3のうち、マシン数算出部116が算出した数に応じた数の仮想マシン3を、新たな負荷分散装置3aが処理要求を振り分ける仮想マシン3として決定する。
The distribution
[物理マシン(負荷分散装置)の機能]
次に、物理マシン2の機能のうち、負荷分散装置3aによって実現される機能について説明を行う。物理マシン2のCPU201は、プログラム210と協働することにより、図8に示すように、処理要求受付部311と、処理要求振分部312として機能する。また、情報格納領域230には、例えば、管理装置1における情報格納領域130と同様に、例えば、振分管理情報131と、ホスト管理情報132と、VM管理情報133とが記憶される。
[Functions of physical machine (load balancer)]
Next, among the functions of the
処理要求受付部311は、例えば、管理装置1から送信された処理要求を受信する。そして、処理要求振分部312は、例えば、処理要求受付部311が受信した処理要求を、仮想マシン3のうちのいずれかに振り分ける。
The processing
[第1の実施の形態の概略]
次に、第1の実施の形態の概略について説明を行う。図9は、第1の実施の形態における制御処理の概略を説明するフローチャート図である。図10から図15は、第1の実施の形態における制御処理の概略を説明する図である。図10から図15を参照しながら、図9に示す第1の実施の形態における制御処理の概略について説明を行う。
[Outline of the first embodiment]
Next, the outline of the first embodiment will be described. FIG. 9 is a flowchart illustrating an outline of the control process according to the first embodiment. 10 to 15 are diagrams for explaining the outline of the control process according to the first embodiment. The outline of the control process in the first embodiment shown in FIG. 9 will be described with reference to FIGS. 10 to 15.
[第1の実施の形態における負荷分散装置]
初めに、第1の実施の形態における負荷分散装置3aについて説明を行う。
[Load Balancing Device in the First Embodiment]
First, the load balancer 3a according to the first embodiment will be described.
第1の実施の形態における負荷分散装置3aは、図10に示すように、1以上の物理マシン2に生成された複数の仮想マシン3のそれぞれに対して、管理装置1によって振り分けられた処理要求を振り分ける。
As shown in FIG. 10, the load balancer 3a according to the first embodiment requests processing requests distributed by the
すなわち、第1の実施の形態における負荷分散装置3aは、自装置と同じ物理マシン2に生成されている仮想マシン3だけでなく、他の物理マシン2に生成されている仮想マシン3に対しても処理要求の振り分けを行う。
That is, the load balancer 3a in the first embodiment refers not only to the
具体的に、図10に示す例において、物理マシン21において生成された負荷分散装置3aは、物理マシン21において生成された仮想マシン3であるVM31b、31c及び31dと、物理マシン22において生成された仮想マシン3であるVM32b、32c及び32dとに対して、管理装置1によって振り分けられた処理要求の振り分けを行う。また、図10に示す例において、物理マシン21において生成された負荷分散装置3cは、物理マシン23において生成された仮想マシン3であるVM33b及び31cに対して、管理装置1によって振り分けられた処理要求の振り分けを行う。
Specifically, in the example shown in FIG. 10, the load balancer 3a generated in the
これにより、管理装置1は、例えば、各物理マシン2において生成された負荷分散装置3aの負荷が小さい場合、複数の物理マシン2において生成された仮想マシン3に対する処理要求の振り分けを、1台の負荷分散装置3aに行わせること可能になる。そのため、管理装置1は、各物理マシン2の処理負担を軽減させることが可能になる。なお、以下、1台の負荷分散装置3aが処理要求を振り分ける1以上の仮想マシン3が動作する1以上の物理マシン2をグループとも呼ぶ。
As a result, for example, when the load of the load balancer 3a generated by each
[第1の実施の形態の概略についてのフローチャート図]
次に、第1の実施の形態の概略についてのフローチャート図について説明を行う。
[Flowchart diagram for outline of the first embodiment]
Next, a flowchart of an outline of the first embodiment will be described.
管理装置1は、図9に示すように、仮想マシン追加判定タイミングまで待機する(S1のNO)。仮想マシン追加判定タイミングは、例えば、現在の負荷が情報格納領域130に予め記憶された閾値情報134を上回っている物理マシン2の存在を検知したタイミングであってよい。具体的に、管理装置1は、例えば、図11に示すように、他の仮想マシン3であるVM31eが生成されたことに伴って、物理マシン21の負荷が閾値情報134を上回ったことを検知した場合に、仮想マシン追加タイミングになったものと判定するものであってよい。
As shown in FIG. 9, the
そして、仮想マシン追加タイミングになった場合(S1のYES)、管理装置1は、図12に示すように、複数の物理マシン2の負荷情報に基づき、複数の物理マシン2から新たな負荷分散装置3aを配置する配置先の物理マシン2を特定する(S2)。さらに、管理装置1は、図12に示すように、S2の処理で特定した物理マシン2の負荷情報に基づき、複数の物理マシン2に構築された複数の仮想マシン3のうち、負荷分散装置3aが受け付けた処理要求を振り分け可能な仮想マシン3の数を算出する(S3)。
Then, when the virtual machine addition timing is reached (YES in S1), as shown in FIG. 12, the
その後、管理装置1は、S2の処理で特定した物理マシン2への負荷分散装置3aの配置に応じて、複数の仮想マシン3のうち、S3の処理で算出した数に応じた数の仮想マシン3を、負荷分散装置3aが処理要求を振り分ける振り分け先の仮想マシン3とする(S4)。
After that, the
具体的に、例えば、S2の処理において物理マシン22が特定された場合、管理装置1は、図13に示すように、新たな負荷分散装置3aである負荷分散装置32aを物理マシン22に生成する。そして、管理装置1は、例えば、物理マシン22で動作しているVM32b、32c及び32dに対する処理要求の振り分けを、新たな負荷分散装置3aである負荷分散装置32aに行わせる。
Specifically, for example, when the
さらに、例えば、S3の処理において算出された仮想マシン3の数が6台以上である場合、管理装置1は、図14に示すように、物理マシン22に生成されたVM32b、32c及び32dに加え、物理マシン21に生成されたVM31b、31c及び31dに対する処理要求の振り分けを、新たな負荷分散装置3aである負荷分散装置32aに行わせる。そして、この場合、管理装置1は、例えば、図14に示すように、処理要求の振り分け先の仮想マシン3がなくなった負荷分散装置31aを削除する。
Further, for example, when the number of
一方、例えば、S2の処理において物理マシン23が特定され、S3の処理において算出された仮想マシン3の数が5台以上である場合、管理装置1は、図15に示すように、物理マシン23に生成されたVM33b及び33cに加え、物理マシン22に生成されたVM32b、32c及び32dに対する処理要求の振り分けを、既存の負荷分散装置3aである負荷分散装置33aに行わせる。
On the other hand, for example, when the
すなわち、管理装置1は、新たな負荷分散装置3aの追加を行う場合、負荷が比較的小さい物理マシン2に対して新たな負荷分散装置3aの追加を行う。そして、管理装置1は、負荷が大きい物理マシン2に生成された負荷分散装置3aが処理要求の振り分けを行っている仮想マシン3(仮想マシン3の一部)に対する振り分けを、新たな負荷分散装置3aに行わせる。
That is, when the
これにより、管理装置1は、負荷が大きい物理マシン2に対して新たな負荷分散装置3aが追加されることを防止することが可能になる。また、管理装置1は、負荷が大きい物理マシン2に生成された負荷分散装置3aが振り分けを行う仮想マシン3の数を減らすことによって、負荷が大きい物理マシン2の負荷を抑制することが可能になる。そのため、管理装置1は、各物理マシン2の負荷を平準化させることが可能になる。
As a result, the
[第1の実施の形態の詳細]
次に、第1の実施の形態の詳細について説明する。図16から図23は、第1の実施の形態における制御処理の詳細を説明するフローチャート図である。また、図24から図29は、第1の実施の形態における制御処理の詳細を説明する図である。図24から図29を参照しながら、図16から図23に示す制御処理の詳細を説明する。
[Details of the first embodiment]
Next, the details of the first embodiment will be described. 16 to 23 are flowcharts illustrating the details of the control process according to the first embodiment. Further, FIGS. 24 to 29 are diagrams for explaining the details of the control process according to the first embodiment. The details of the control processing shown in FIGS. 16 to 23 will be described with reference to FIGS. 24 to 29.
[振り分け処理]
初めに、利用者端末(図示しない)等から処理要求が送信された場合に行われる処理(以下、振り分け処理とも呼ぶ)について説明を行う。図16及び図17は、振り分け処理を説明する図である。
[Distribution processing]
First, a process (hereinafter, also referred to as a distribution process) performed when a process request is transmitted from a user terminal (not shown) or the like will be described. 16 and 17 are diagrams for explaining the sorting process.
管理装置1の処理要求受付部111は、図16に示すように、例えば、利用者が利用者端末(図示しない)を介して送信した処理要求を受信するまで待機する(S11のNO)。
As shown in FIG. 16, the processing
そして、処理要求を受信した場合(S11のYES)、管理装置1の処理要求振分部112は、ホスト管理情報132を参照し、各グループの物理マシン2の負荷の和を算出する(S12)。その後、処理要求振分部112は、振分管理情報131を参照し、S12の処理で算出した和が最も小さいグループに対応する負荷分散装置を特定する(S13)。以下、振分管理情報131及びホスト管理情報132の具体例について説明を行う。
Then, when the processing request is received (YES in S11), the processing
[振分管理情報及びホスト管理情報の具体例]
図24、図26、図28及び図29は、振分管理情報131及びホスト管理情報132の具体例を説明する図である。具体的に、図24(A)、図26(A)、図28(A)及び図29(A)は、振分管理情報131の具体例を説明する図である。また、図24(B)、図26(B)、図28(B)及び図29(B)は、ホスト管理情報132の具体例を説明する図である。なお、図24に示す振分管理情報131及びホスト管理情報132の内容は、図10で説明した各装置の状態に対応する。
[Specific examples of distribution management information and host management information]
24, 26, 28, and 29 are diagrams for explaining specific examples of the
図24(A)等に示す振分管理情報131は、各グループを識別する「グループID」と、各装置が管理装置1と負荷分散装置3aとのいずれであるかを示す「フラグ」と、各装置を識別する「装置ID」と、各装置のIPアドレスが設定される「IPアドレス」とを項目として有する。「フラグ」には、各装置が管理装置1であることを示す「true」、または、各装置が負荷分散装置3aであることを示す「false」のいずれかが設定される。また、図24(A)等に示す振分管理情報131は、管理装置1が処理要求の振り分けを行う負荷分散装置3aの台数、または、負荷分散装置3が処理要求の振り分けを行う仮想マシン3の台数が設定される「振り分け数」と、管理装置1が処理要求の振り分けを行う負荷分散装置3aの台数の上限値、または、負荷分散装置3が処理要求の振り分けを行う仮想マシン3の台数の上限値が設定される「上限値」とが設定される。さらに、図24(A)等に示す振分管理情報131は、各装置の現在の負荷情報が設定される「負荷情報」と、各装置が生成されている物理マシン2を識別する「ホストID」とが設定される。「負荷情報」には、例えば、各装置に割当てられたCPUの現在の平均使用率が設定される。
The
具体的に、図24(A)に示す振分管理装置1において、「グループID」が「0000」である情報には、「フラグ」として「true」が設定され、「装置ID」として「1000」が設定され、「IPアドレス」として「100.100.100.50」が設定されている。そして、図24(A)に示す振分管理装置1において、「グループID」が「0000」である情報には、「振り分け数」として「2(台)」が設定され、「上限値」として「4(台)」が設定され、「負荷情報」として「10%/秒」が設定され、「ホストID」として「2000」が設定される。また、図24(A)に示す振分管理装置1において、「グループID」が「0001」である情報には、「フラグ」として「false」が設定され、「装置ID」として「1001」が設定され、「IPアドレス」として「100.100.100.51」が設定されている。そして、図24(A)に示す振分管理装置1において、「グループID」が「0001」である情報には、「振り分け数」として「6(台)」が設定され、「上限値」として「6(台)」が設定され、「負荷情報」として「10%/秒」が設定され、「ホストID」として「2001」が設定される。図24(A)に含まれる他の情報については説明を省略する。
Specifically, in the
また、図24(B)等に示すホスト管理情報132には、各グループを識別する「グループID」と、各物理マシン2を識別する「ホストID」と、各物理マシン2のIPアドレスが設定される「IPアドレス」とを項目として有する。そして、図24(B)等に示すホスト管理情報132には、各物理マシン2に生成された仮想マシン3の数が設定される「VM数」と、負荷分散装置3aと負荷分散装置3aによって処理要求の振り分けが行われる仮想マシン3との合計数が設定される「自サービスVM数」と、各物理マシン2の現在の負荷情報が設定される「負荷情報」とを項目として有する。
Further, in the
具体的に、図24(B)に示すホスト管理情報132において、「グループID」が「00001」であって「ホストID」が「20001」である情報には、「IPアドレス」として「100.100.100.1」が設定され、「VM数」として「4(台)」が設定され、「自サービスVM数」として「4(台)」が設定され、「負荷情報」として「30%/秒」が設定されている。また、図24(B)に示すホスト管理情報132において、「グループID」が「00001」であって「ホストID」が「20002」である情報には、「IPアドレス」として「100.100.100.2」が設定され、「VM数」として「3(台)」が設定され、「自サービスVM数」として「3(台)」が設定され、「負荷情報」として「20%/秒」が設定されている。図24(B)に含まれる他の情報については説明を省略する。
Specifically, in the
そして、処理要求振分部112は、S12の処理において、例えば、図24(B)で説明したホスト管理情報132を参照し、「グループID」が「0001」である情報の「負荷情報」に設定された情報である「30%/秒」と「20%/秒」との和である「50%/秒」を算出する。また、処理要求振分部112は、例えば、図24(B)で説明したホスト管理情報132を参照し、「グループID」が「0002」である情報の「負荷情報」に設定された情報である「30%/秒」を特定する。すなわち、処理要求振分部112は、「グループID」が「0001」であるグループに含まれる各物理マシン2の負荷の和として「50%/秒」を算出し、「グループID」が「0002」であるグループに含まれる各物理マシン2の負荷の和として「30%/秒」を算出する。
Then, in the processing of S12, the processing
その後、処理要求振分部112は、S13の処理において、図24(A)で説明した振分管理情報131を参照し、S12の処理において算出した「30%/秒」(S12の処理において算出した「50%/秒」及び「30%/秒」のうちの最小の値)に対応する「0001」が「グループID」に設定された情報の「装置ID」に設定された情報である「10001」を特定する。
After that, the processing
図16に戻り、処理要求振分部112は、S13の処理で特定した負荷分散装置3aに、S11の処理で受け付けた処理要求を送信する(S14)。具体的に、S13の処理で特定した負荷分散装置3aの「グループID」が「10001」である場合、「グループID」が「10001」である負荷分散装置3aに対して、S11の処理で受け付けた処理要求を送信する。
Returning to FIG. 16, the processing
これにより、管理装置1は、各負荷分散装置3aにおける処理負担を平準化することが可能になる。
As a result, the
一方、負荷分散装置3aの処理要求受付部311は、図17に示すように、管理装置1から送信された処理要求を受信するまで待機する(S21のNO)。
On the other hand, as shown in FIG. 17, the processing
そして、処理要求を受信した場合(S21のYES)、処理要求振分部312は、VM管理情報133を参照し、自装置が処理要求を振り分ける仮想マシン3から、負荷情報が最も小さい仮想マシン3を特定する(S22)。以下、VM管理情報の具体例について説明を行う。
Then, when the processing request is received (YES in S21), the processing
[VM管理情報の具体例]
図25及び図27は、VM管理情報133の具体例を説明する図である。なお、図25に示すVM管理情報133の内容は、図10で説明した各装置の状態に対応する。
[Specific example of VM management information]
25 and 27 are diagrams for explaining a specific example of the
図25等に示すVM管理情報133は、各仮想マシン3が生成されている物理マシン2を識別する「ホストID」と、各仮想マシン3を識別する「VMID」と、各仮想マシン3のIPアドレスが設定される「IPアドレス」とを項目として有する。また、図25等に示すVM管理情報133は、各仮想マシン3が動作することによって利用者に提供するサービスを識別する「処理種別」と、各仮想マシン3の現在の負荷情報が設定される「負荷情報」とを項目として有する。
The
具体的に、図25に示すVM管理情報133において、「ホストID」が「20001」であって「VMID」が「30001」である情報には、「IPアドレス」として「100.100.100.101」が設定され、「処理種別」として「A」が設定され、「負荷情報」として「10%/秒」が設定される。また、図25に示すVM管理情報133において、「ホストID」が「20001」であって「VMID」が「30002」である情報には、「IPアドレス」として「100.100.100.102」が設定され、「処理種別」として「A」が設定され、「負荷情報」として「5%/秒」が設定される。図25に含まれる他の情報については説明を省略する。
Specifically, in the
そして、S22の処理において、負荷分散装置31aが管理装置1から処理要求を受信した場合、処理要求振分部312は、例えば、図25に示すVM管理情報133を参照し、負荷分散装置31aが動作している物理マシン2に対応する「20001」が「ホストID」に設定された情報の「VMID」に設定された情報である「30001」、「30002」及び「30003」を特定する。ここで、図25に示すVM管理情報133において、「VMID」に「30001」、「30002」及び「30003」が設定された情報の「負荷情報」には、「10%/秒」、「5%/秒」及び「10%/秒」がそれぞれ設定されている。そのため、処理要求振分部312は、「5%/秒」(「10%/秒」、「5%/秒」及び「10%/秒」のうちの最小の値)が「負荷情報」に設定された情報の「VMID」に設定された情報である「30002」を特定する(S22)。
Then, in the processing of S22, when the
図16に戻り、処理要求振分部312は、S22の処理で特定した仮想マシン3に、S21の処理で受け付けた処理要求を送信する(S23)。具体的に、処理要求振分部312は、S22の処理において、「VMID」が「30002」である仮想マシン3が特定された場合、「VMID」が「30002」である仮想マシン3に処理要求を送信する。
Returning to FIG. 16, the processing
これにより、負荷分散装置3aは、処理要求を振り分ける各仮想マシン3における処理負担を平準化することが可能になる。
As a result, the load balancer 3a can equalize the processing load in each
[情報更新処理]
次に、情報格納領域130に記憶された振分管理情報131、ホスト管理情報132及びVM管理情報133の更新を行う処理(以下、情報更新処理とも呼ぶ)について説明を行う。図18は、情報更新処理を説明する図である。
[Information update processing]
Next, a process for updating the
管理装置1の情報取得部113は、図18に示すように、情報取得タイミングまで待機する(S31のNO)。情報取得タイミングは、振分管理情報131、ホスト管理情報132及びVM管理情報133の更新に必要な情報を取得するタイミングであり、例えば、定期的なタイミングであってよい。
As shown in FIG. 18, the
そして、情報取得タイミングになった場合(S31のYES)、情報取得部113は、各物理マシン2にアクセスし、振分管理情報131、ホスト管理情報132及びVM管理情報133の更新に必要な情報を取得する(S32)。
Then, when the information acquisition timing comes (YES in S31), the
具体的に、情報取得部113は、例えば、ホスト管理情報132における「VM数」及び「自サービスVM数」に設定される情報を取得する。また、情報取得部113は、例えば、VM管理情報133における「VMID」、「IPアドレス」、「処理種別」及び「負荷情報」に設定される情報を取得する。
Specifically, the
その後、管理装置1の情報管理部114は、S32の処理で取得した情報に基づき、情報格納領域130に記憶された振分管理情報131、ホスト管理情報132及びVM管理情報133を更新する(S33)。
After that, the
具体的に、情報管理部114は、例えば、S32の処理で取得した情報によって、ホスト管理情報132及びVM管理情報133を更新する。また、情報管理部114は、S32の処理で取得した情報から、振分管理情報131における「振り分け数」及び「上限値」に設定される情報と、ホスト管理情報132における「負荷情報」に設定される情報とを算出し、算出した情報によって、振分管理情報131及びホスト管理情報132を更新する。
Specifically, the
これにより、管理装置1は、仮想マシン3の状態の変化等に応じて随時更新された情報に基づいて、制御処理を行うことが可能になる。
As a result, the
[制御処理の詳細]
次に、制御処理の詳細について説明を行う。図19から図23は、制御処理の詳細を説明する図である。
[Details of control processing]
Next, the details of the control process will be described. 19 to 23 are diagrams for explaining the details of the control process.
管理装置1の配置先特定部115は、図19に示すように、制御タイミングまで待機する(S41のNO)。制御タイミングは、例えば、定期的なタイミングであってよい。
As shown in FIG. 19, the arrangement
そして、制御タイミングになった場合(S41のYES)、配置先特定部115は、情報格納領域130に記憶されたホスト管理情報132に含まれる負荷情報を取得する(S42)。具体的に、配置先特定部115は、ホスト管理情報132に含まれる情報のうち、物理マシン2ごとの負荷情報を取得する。また、配置先特定部115は、この場合、情報格納領域130に記憶された閾値情報134を取得する(S43)。
Then, when the control timing is reached (YES in S41), the placement
その後、配置先特定部115は、複数の物理マシン2から、S42の処理で取得した負荷情報がS43の処理で取得した閾値情報134を上回る物理マシン2を特定する(S44)。
After that, the placement
その結果、負荷情報が閾値情報134を上回る物理マシン2が存在しなかった場合(S45のNO)、配置先特定部115は、制御処理を終了する。すなわち、配置先特定部115は、この場合、新たな負荷分散装置3aを物理マシン2のいずれかに配置する必要がないと判定する。
As a result, when there is no
一方、負荷情報が閾値情報134を上回る物理マシン2が存在した場合(S45のYES)、配置先特定部115は、図20以降に示すように、新たな負荷分散装置3aを物理マシン2のいずれかに配置するための処理を行う。以下、負荷情報が閾値情報134を上回る物理マシン2が存在する場合の具体例について説明を行う。
On the other hand, when there is a
[負荷情報が閾値情報を上回る物理マシンが存在する場合の具体例]
図26及び図27は、負荷情報が閾値情報134を上回る物理マシン2が存在する場合における振分管理情報131、ホスト管理情報132及びVM管理情報133の具体例について説明する図である。具体的に、図11で説明したように、物理マシン21に他の仮想マシン3であるVM31eが生成された結果、物理マシン21の負荷情報が閾値情報134を上回った場合における各情報の具体例について説明を行う。
[Specific example when there is a physical machine whose load information exceeds the threshold information]
26 and 27 are diagrams illustrating specific examples of
この場合、情報管理部114は、図26(B)の下線部分に示すように、「グループID」が「0001」であって「ホストID」が「20001」である情報の「VM数」に設定されている値に1を加算する。一方、情報管理部114は、物理マシン21に生成されたVM31eが他の仮想マシン3であるため、「自サービスVM数」に設定されている値の更新を行わない。
In this case, as shown in the underlined portion of FIG. 26B, the
また、情報管理部114は、この場合、「グループID」が「0001」であって「ホストID」が「20001」である情報の「負荷情報」を更新する。具体的に、情報管理部114は、図26(B)の下線部分に示すように、例えば、「グループID」が「0001」であって「ホストID」が「20001」である情報の「負荷情報」を「45%秒」に更新する。
Further, in this case, the
さらに、情報管理部114は、物理マシン21に生成されたVM31eに対応する情報として、例えば、図27の下線部分に示すように、「ホストID」が「20001」であり、「VMID」が「30009」であり、「IPアドレス」が「100.100.100.109」であり、「処理種別」が「B」であり、「負荷情報」が「15%/秒」である情報を追加する。
Further, in the
そして、例えば、情報格納領域130に記憶されている閾値情報134が示す値が「40%/秒」である場合、配置先特定部115は、物理マシン21の負荷情報が閾値情報134を上回っていると判定し、新たな負荷分散装置3aを物理マシン2のいずれかに配置するための処理を開始する(S44、S45のYES)。
Then, for example, when the value indicated by the
図19に戻り、負荷情報が閾値情報134を上回る物理マシン2が存在した場合(S45のYES)、配置先特定部115は、図20に示すように、ホスト管理情報132を参照し、複数の物理マシン2のうち、存在した物理マシン2において動作する負荷分散装置3aによって処理要求が振り分けられている1以上の仮想マシン3が動作する1以上の物理マシン2を特定する(S51)。
Returning to FIG. 19, when there is a
具体的に、物理マシン21の負荷情報が閾値情報134を上回っている場合、配置先特定部115は、例えば、図26(B)で説明したホスト管理情報132を参照し、物理マシン21と、「グループID」に設定された情報が物理マシン21と同じである物理マシン22とを特定する。
Specifically, when the load information of the
そして、配置先特定部115は、ホスト管理情報132を参照し、S51の処理で特定した1以上の物理マシンから、負荷情報が所定の閾値未満である物理マシン2を特定する(S52)。所定の閾値は、例えば、各物理マシン2の負荷情報が示す値から、S45の処理で存在した物理マシン2において動作している負荷分散装置3aの負荷情報が示す値を減算した値であってよい。
Then, the placement
具体的に、物理マシン21の負荷情報が閾値情報134を上回っている場合、配置先特定部115は、例えば、図26(A)で説明した振分管理情報131を参照し、物理マシン21の負荷分散装置3aに対応する「10001」が「装置ID」に設定された情報の「負荷情報」に設定されている情報である「10%/秒」を特定する。また、配置先特定部115は、例えば、図26(B)で説明したホスト管理情報132を参照し、物理マシン21と同じグループに含まれる物理マシン22に対応する「20002」が「ホストID」に設定された情報の「負荷情報」に設定されている情報である「20%/秒」を特定する。
Specifically, when the load information of the
そして、情報格納領域130に記憶された閾値情報134が「40%/秒」である場合、所定の閾値は、特定した値である「10%/秒」を閾値情報134である「40%/秒」から減算した「30%/秒」であり、特定した値である「20%/秒」よりも大きい。そのため、配置先特定部115は、この場合、負荷情報が所定の閾値未満である物理マシン2として物理マシン22を特定する。
When the
その後、負荷情報が所定の閾値未満である物理マシン2が存在した場合(S53のYES)、配置先特定部115は、存在した物理マシン2のいずれかを、新たな負荷分散装置3aの配置先の物理マシン2として決定し、決定した物理マシン2に対し、新たな負荷分散装置3aを配置する(S54)。
After that, when there is a
さらに、管理装置1の振分先決定部117は、この場合、S53の処理で存在した物理マシン2において動作する仮想マシン3のうち、処理要求が振り分けされる仮想マシン3の全てを、S54の処理で配置した負荷分散装置3aが処理要求を振り分ける仮想マシン3として決定する(S55)。
Further, in this case, the distribution
具体的に、物理マシン22において、負荷分散装置31aが処理要求を振り分ける仮想マシン3としてVM32b、32c及び32dが動作していた場合、振分先決定部117は、VM32b、32c及び32dを、新たな負荷分散装置3aである負荷分散装置32aが処理要求を振り分ける仮想マシン3として決定する。
Specifically, in the
すなわち、配置先特定部115は、物理マシン21の負荷情報が閾値情報134を上回っている場合、物理マシン21で動作する負荷分散装置31aが処理要求を振り分ける仮想マシン3の数を抑制する。
That is, when the load information of the
これにより、管理装置1は、負荷情報が閾値情報134を上回っている物理マシン21の負荷を低減させることが可能になる。
As a result, the
続いて、管理装置1のマシン数算出部116は、図21に示すように、S54の処理で配置した負荷分散装置3aが、S55の処理で決定した仮想マシン3以外の仮想マシン3に対しても処理要求を振り分けることが可能であるか否かを、S51の処理で特定した1以上の物理マシン2のうち、S54の処理で決定した物理マシン2以外の物理マシン2に生成された仮想マシン3毎に判定する(S61)。
Subsequently, as shown in FIG. 21, the machine
そして、S55の処理で決定した仮想マシン3以外の仮想マシン3に対しても処理要求を振り分けることが可能であると判定した場合(S62のYES)、振分先決定部117は、S62の処理で振り分けることが可能であると判定した仮想マシン3を、S54の処理で配置した新たな負荷分散装置3aが処理要求を振り分ける仮想マシン3として決定する(S63)。
Then, when it is determined that the processing request can be distributed to the
すなわち、新たな負荷分散装置3aを生成した物理マシン2は、その物理マシン2において動作する仮想マシン3だけでなく、その物理マシン2において動作する仮想マシン3以外の仮想マシン3に対しても処理要求の振り分けを行うことが可能である場合がある。そのため、マシン数算出部116は、S61の処理において、S54の処理で配置した負荷分散装置3aがより多くの仮想マシン3に対して処理要求の振り分けを行うことが可能であるか否かの判定を行う。
That is, the
具体的に、マシン数算出部116は、例えば、振分管理情報131における「振り分け数」に設定された値が「上限値」に設定された値を上回らない範囲内で、S54の処理で決定した物理マシン2以外の物理マシン2において動作する処理要求の振り分け先の仮想マシン3の数を、各物理マシン2に生成された仮想マシン3毎に、S54の処理で配置した負荷分散装置3aに対応する「振り分け数」に設定された値に加算する。そして、マシン数算出部116は、「振り分け数」に設定された値に対して仮想マシン3の数が加算された仮想マシン3を、新たな負荷分散装置3aが振り分ける仮想マシン3として決定する。
Specifically, the machine
その後、情報管理部114は、S45の処理で存在した物理マシン2で動作していた負荷分散装置3aが削除可能であるか否かを判定する(S64)。具体的に、情報管理部114は、S45の処理で存在した物理マシン2で動作していた負荷分散装置3aが処理要求の振り分けを行う仮想マシン3が存在しているか否かの判定を行う。なお、情報管理部114は、S62の処理において、S55の処理で決定した仮想マシン3以外の仮想マシン3に対して処理要求を振り分けることが可能でないと判定した場合も同様に(S62のNO)、S64の処理を行う。
After that, the
そして、S45の処理で存在した物理マシン2で動作していた負荷分散装置3aが削除可能であると判定した場合(S64のYES)、情報管理部114は、S45の処理で存在した物理マシン2で動作していた負荷分散装置3aの削除を行う(S65)。一方、S45の処理で存在した物理マシン2で動作していた負荷分散装置3aが削除可能でないと判定した場合(S64のNO)、情報管理部114は、S65の処理を行わない。
Then, when it is determined that the load balancer 3a operating in the
これにより、負荷情報が閾値情報134を上回っている物理マシン21の負荷をより低減させることが可能になる。
This makes it possible to further reduce the load on the
[振分管理情報及びホスト管理情報の具体例(1)]
次に、S63及びS65の処理が行われた場合における振分管理情報131及びホスト管理情報132の具体例について説明を行う。具体的に、各装置が図14で説明した状態になった場合に、情報更新処理において更新された振分管理情報131及びホスト管理情報132の具体例について説明を行う。
[Specific examples of distribution management information and host management information (1)]
Next, specific examples of the
情報管理部114は、この場合、図28(A)に示すように、図26(A)に示す振分管理情報131のうち、「グループID」に「00001」が設定され、「装置ID」に「10001」が設定された情報を削除する。そして、情報管理部114は、図28の下線部分に示すように、「グループID」に「00001」が設定され、「フラグ」に「false」が設定され、「装置ID」に「10003」が設定され、「IPアドレス」に「100.100.100.53」が設定され、「振り分け数」に「6」が設定され、「上限値」に「6」が設定され、「負荷情報」に「10%/秒」が設定され、「ホストID」に「20002」が設定された情報を追加する。
In this case, as shown in FIG. 28 (A), the
すなわち、情報管理部114は、物理マシン21において動作していた負荷分散装置31aが削除され、物理マシン22に負荷分散装置32aが生成されたことを示す情報を振分管理情報131に反映させる。また、情報管理部114は、物理マシン22に生成された3台の仮想マシン3のみでなく、物理マシン21に生成された3台の仮想マシン3に対する処理要求の振り分けを、負荷分散装置31aに代わって負荷分散装置32aが開始したことを示す情報を振分管理情報131に反映させる。
That is, the
また、情報管理部114は、この場合、図28(B)に示すように、「グループID」が「00001」であって「ホストID」が「20001」である情報の「VM数」及び「自サービスのVM数」に設定された値から1を減算する。そして、情報管理部114は、図28(B)に示すように、「グループID」が「00001」であって「ホストID」が「20002」である情報の「VM数」及び「自サービスのVM数」に設定された値に1を加算する。
Further, in this case, the
すなわち、情報管理部114は、物理マシン21において動作していた負荷分散装置31aが削除され、物理マシン22に負荷分散装置32aが生成されたことを示す情報をホスト管理情報132に反映させる。
That is, the
図20に戻り、S53の処理において、負荷情報が所定の閾値未満である物理マシン2が存在しなかった場合(S53のNO)、配置先特定部115は、図22に示すように、ホスト管理情報132を参照し、他のグループの物理マシン2から、S51の処理で特定した1以上の物理マシン2以外の物理マシン2で動作している負荷分散装置3aを特定する(S71)。
Returning to FIG. 20, when there is no
すなわち、配置先特定部115は、この場合、負荷情報が閾値情報134を上回っている物理マシン2と異なるグループの物理マシン2において動作している負荷分散装置3aのうち、負荷分散装置3aが処理要求を振り分けている仮想マシン3に対しても処理要求を振り分けることが可能な負荷分散装置3aの特定を行う。
That is, in this case, the arrangement
具体的に、物理マシン21の負荷情報が閾値情報134を上回っている場合、配置先特定部115は、例えば、図26(B)で説明したホスト管理情報132を参照し、物理マシン21及び物理マシン22以外の物理マシン2である物理マシン23において動作する負荷分散装置33aを特定する。
Specifically, when the load information of the
そして、マシン数算出部116は、S71の処理で特定した負荷分散装置3aのそれぞれが、S45で存在した物理マシン2において動作する負荷分散装置3aが処理要求を振り分ける仮想マシン3に対しても処理要求を振り分けることが可能であるか否かを、複数の物理マシン2のうち、S51の処理で特定した1以上の物理マシン2に生成された仮想マシン3毎に判定する(S72)。
Then, the machine
そして、処理要求を振り分けることが可能である負荷分散装置3aが存在しないと判定した場合(S73のNO)、配置先特定部115は、新たな物理マシン2を、新たな負荷分散装置3aの配置先の物理マシン2として決定する(S74)。
Then, when it is determined that the load balancer 3a capable of distributing the processing request does not exist (NO in S73), the placement
すなわち、配置先特定部115は、この場合、現在動作している物理マシン2のいずれかに、新たな負荷分散装置3aを生成することができないものと判定する。そのため、配置先特定部115は、新たな物理マシン2を用意し、その物理マシン2に新たな負荷分散装置3aを生成する必要があると判定する。そして、配置先特定部115は、例えば、事業者端末5に対し、上記の内容についての出力を行う。
That is, in this case, the placement
一方、S73の処理において、処理要求を振り分けることが可能である物理マシン2が存在すると判定した場合(S73のYES)、配置先特定部115は、図23に示すように、振分先決定部117は、S73の処理で振り分けることが可能であると判定した仮想マシン3を、S71の処理で特定した負荷分散装置3aが処理要求を振り分ける仮想マシン3として決定する(S81)。
On the other hand, in the processing of S73, when it is determined that the
具体的に、マシン数算出部116は、例えば、振分管理情報131における「振り分け数」に設定された値が「上限値」に設定された値を上回らない範囲内で、負荷が閾値情報134を上回った物理マシン2において動作する処理要求の振り分け先の仮想マシン3の数を、各物理マシン2に生成された仮想マシン3毎に、S71の処理で特定した負荷分散装置3aに対応する「振り分け数」に設定された値に加算する。そして、マシン数算出部116は、「振り分け数」に設定された値に対して仮想マシン3の数が加算された仮想マシン3を、S71の処理で特定した物理マシン2で動作している負荷分散装置3aが振り分ける仮想マシン3として決定する。
Specifically, in the machine
その後、情報管理部114は、S45の処理で存在した物理マシン2で動作していた負荷分散装置3aが削除可能であるか否かを判定する(S82)。具体的に、情報管理部114は、S45の処理で存在した物理マシン2で動作していた負荷分散装置3aが処理要求の振り分けを行う仮想マシン3が存在しているか否かの判定を行う。
After that, the
そして、S45の処理で存在した物理マシン2で動作していた負荷分散装置3aが削除可能であると判定した場合(S82のYES)、情報管理部114は、S45の処理で存在した物理マシン2で動作していた負荷分散装置3aの削除を行う(S83)。一方、S45の処理で存在した物理マシン2で動作していた負荷分散装置3aが削除可能でないと判定した場合(S82のNO)、情報管理部114は、S83の処理を行わない。
Then, when it is determined that the load balancer 3a operating on the
これにより、負荷情報が閾値情報134を上回っている物理マシン21の負荷をより低減させることが可能になる。
This makes it possible to further reduce the load on the
[振分管理情報及びホスト管理情報の具体例(2)]
次に、S81の処理が行われ、かつ、S83の処理が行われた場合における振分管理情報131及びホスト管理情報132の具体例について説明を行う。具体的に、各装置が図15で説明した状態になった場合に、情報更新処理において更新された振分管理情報131及びホスト管理情報132の具体例について説明を行う。
[Specific example of distribution management information and host management information (2)]
Next, a specific example of the
情報管理部114は、この場合、図29(A)の下線部分に示すように、図26(A)に示す振分管理情報131のうち、「グループID」に「00001」が設定された情報の「振り分け数」に設定された値を、物理マシン22で動作している仮想マシン3の台数である「3(台)」を減算した値に更新する。また、情報管理部114は、図29(A)の下線部分に示すように、図26(A)に示す振分管理情報131のうち、「グループID」に「00002」が設定された情報の「振り分け数」に設定された値を、物理マシン22で動作している仮想マシン3の台数である「3(台)」を加算した値に更新する。
In this case, the
すなわち、情報管理部114は、負荷分散装置31aが処理要求を振り分けていた仮想マシン3の一部に対して、負荷分散装置33aが振り分けを開始したことを示す情報を振分管理情報131に反映させる。
That is, the
このように、本実施の形態における管理装置1は、複数の物理マシン2の負荷情報に基づき、複数の物理マシン2のいずれかに構築された複数の仮想マシン3のいずれかに受け付けた処理要求を振り分ける特定の負荷分散装置3aを配置する配置先の物理マシン2を特定する。そして、管理装置1は、特定した物理マシン2の負荷情報に基づき、複数の仮想マシン3のうち、特定の負荷分散装置3が受け付けた処理要求を振り分け可能な仮想マシン3の数を算出する。
As described above, the
さらに、管理装置1は、特定した物理マシン2への特定の負荷分散装置3aの配置に応じて、複数の仮想マシン3のうち、算出した数に応じた数の仮想マシン3を、特定の負荷分散装置3aが受け付けた処理要求を振り分ける振り分け先の仮想マシン3とする。
Further, the
すなわち、管理装置1は、新たな負荷分散装置3aの追加を行う場合、負荷が比較的小さい物理マシン2に対して新たな負荷分散装置3aの追加を行う。そして、管理装置1は、負荷が大きい物理マシン2に生成された負荷分散装置3aが処理要求の振り分けを行っている仮想マシン3(仮想マシン3の一部)に対する振り分けを、新たな負荷分散装置3aに行わせる。
That is, when the
これにより、管理装置1は、負荷が大きい物理マシン2に対して新たな負荷分散装置3aが追加されることを防止することが可能になる。また、管理装置1は、負荷が大きい物理マシン2に生成された負荷分散装置3aが振り分けを行う仮想マシン3の数を減らすことによって、負荷が大きい物理マシン2の負荷を抑制することが可能になる。そのため、管理装置1は、各物理マシン2の負荷を平準化させることが可能になる。
As a result, the
以上の実施の形態をまとめると、以下の付記のとおりである。 The above embodiments can be summarized as follows.
(付記1)
それぞれが複数の物理マシンのいずれかに構築された複数の仮想マシンのいずれかに受け付けた要求を振り分ける特定の仮想マシンを、前記複数の物理マシンのいずれかに配置する制御プログラムにおいて、
前記複数の物理マシンの負荷情報に基づき、前記特定の仮想マシンを配置する配置先の物理マシンを特定し、
特定した前記物理マシンの負荷情報に基づき、前記複数の仮想マシンのうち、前記特定の仮想マシンが受け付けた要求を振り分け可能な仮想マシンの数を算出し、
特定した前記物理マシンへの前記特定の仮想マシンの配置に応じて、前記複数の仮想マシンのうち、算出した前記数に応じた数の仮想マシンを、前記特定の仮想マシンが受け付けた要求を振り分ける振り分け先の仮想マシンとする、
処理をコンピュータに実行させることを特徴とする制御プログラム。
(Appendix 1)
In a control program in which a specific virtual machine that distributes a request received to any of a plurality of virtual machines built on one of the plurality of physical machines is placed on one of the plurality of physical machines.
Based on the load information of the plurality of physical machines, the physical machine to which the specific virtual machine is to be placed is specified, and the physical machine to be placed is specified.
Based on the load information of the specified physical machine, the number of virtual machines that can distribute the request received by the specific virtual machine among the plurality of virtual machines is calculated.
According to the arrangement of the specific virtual machine on the specified physical machine, among the plurality of virtual machines, the number of virtual machines corresponding to the calculated number is distributed to the request received by the specific virtual machine. Set as the distribution destination virtual machine,
A control program characterized by having a computer execute processing.
(付記2)
付記1において、
前記複数の物理マシンの負荷情報は、前記複数の物理マシンごとの現在の負荷を示す情報であり、
前記特定する処理では、前記複数の物理マシンの負荷情報を参照し、前記複数の物理マシンに、現在の負荷が所定の閾値以上の物理マシンが存在する場合、前記配置先の物理マシンの決定を行う、
ことを特徴とする制御プログラム。
(Appendix 2)
In
The load information of the plurality of physical machines is information indicating the current load of each of the plurality of physical machines.
In the specific process, the load information of the plurality of physical machines is referred to, and when the plurality of physical machines have a physical machine whose current load is equal to or higher than a predetermined threshold value, the physical machine to be placed is determined. conduct,
A control program characterized by that.
(付記3)
付記2において、
前記特定する処理では、
前記複数の物理マシンのうち、現在の負荷が第1閾値以上の物理マシンにおいて動作する仮想マシンによって要求が振り分けられる1以上の仮想マシンが動作する1以上の物理マシンを特定し、
前記1以上の物理マシンのうちの現在の負荷が第2閾値未満の物理マシンから、前記配置先の物理マシンの決定を行う、
ことを特徴とする制御プログラム。
(Appendix 3)
In
In the specific process,
Among the plurality of physical machines, one or more physical machines in which one or more virtual machines whose requests are distributed by virtual machines operating in the physical machines whose current load is equal to or higher than the first threshold value are specified.
The physical machine to be placed is determined from the physical machines whose current load is less than the second threshold value among the one or more physical machines.
A control program characterized by that.
(付記4)
付記3において、
前記特定する処理では、
前記1以上の物理マシンに、現在の負荷が前記第2閾値未満の物理マシンが存在しない場合、前記複数の物理マシンのうち、前記1以上の物理マシン以外の物理マシンから、前記配置先の物理マシンの決定を行う、
ことを特徴とする制御プログラム。
(Appendix 4)
In
In the specific process,
When there is no physical machine whose current load is less than the second threshold value in the one or more physical machines, the physical machine of the placement destination is selected from the physical machines other than the one or more physical machines among the plurality of physical machines. Make machine decisions,
A control program characterized by that.
(付記5)
付記3において、
前記数に応じた数の仮想マシンを振り分け先の仮想マシンとする処理では、前記1以上の仮想マシンから、前記振り分け先の仮想マシンを決定する、
ことを特徴とする制御プログラム。
(Appendix 5)
In
In the process of setting the number of virtual machines corresponding to the number as the distribution destination virtual machine, the distribution destination virtual machine is determined from the one or more virtual machines.
A control program characterized by that.
(付記6)
付記5において、
前記数に応じた数の仮想マシンを振り分け先の仮想マシンとする処理では、各物理マシンにおいて動作する仮想マシンごとに、前記振り分け先の仮想マシンとして決定する、
ことを特徴とする制御プログラム。
(Appendix 6)
In
In the process of using the number of virtual machines corresponding to the number as the distribution destination virtual machine, each virtual machine operating in each physical machine is determined as the distribution destination virtual machine.
A control program characterized by that.
(付記7)
付記6において、
前記数に応じた数の仮想マシンを振り分け先の仮想マシンとする処理では、前記1以上の仮想マシンのうち、前記1以上の仮想マシンに要求を振り分ける仮想マシンと異なる物理マシンで動作する仮想マシンを優先して、前記振り分け先の仮想マシンとして決定する、
ことを特徴とする制御プログラム。
(Appendix 7)
In
In the process of using the number of virtual machines according to the number as the distribution destination virtual machine, the virtual machine operating on a physical machine different from the virtual machine that distributes the request to the one or more virtual machines among the one or more virtual machines. Is prioritized and determined as the virtual machine to be distributed.
A control program characterized by that.
(付記8)
付記5において、さらに、
前記1以上の仮想マシンのすべてを前記振り分け先の仮想マシンとして決定した場合、前記1以上の仮想マシンに要求を振り分ける仮想マシンを削除する、
処理をコンピュータに実行させることを特徴とする制御プログラム。
(Appendix 8)
In
When all of the one or more virtual machines are determined as the distribution destination virtual machines, the virtual machines that distribute the requests to the one or more virtual machines are deleted.
A control program characterized by having a computer execute processing.
(付記9)
付記1において、
算出する処理では、
特定した前記物理マシンの負荷情報を参照し、特定した前記物理マシンの現在の負荷と第3閾値との差を算出し、
特定した前記物理マシンの負荷の増加が前記差以下になる仮想マシンの追加数を、前記特定の仮想マシンが受け付けた要求を振り分け可能な仮想マシンの数として算出する、
ことを特徴とする制御プログラム。
(Appendix 9)
In
In the calculation process
With reference to the load information of the specified physical machine, the difference between the current load of the specified physical machine and the third threshold value is calculated.
The number of additional virtual machines whose load increase of the specified physical machine is equal to or less than the difference is calculated as the number of virtual machines to which the request received by the specific virtual machine can be distributed.
A control program characterized by that.
(付記10)
付記9において、
算出する処理では、特定した前記物理マシンの負荷の増加が前記差以下になる前記振り分け先の仮想マシンの数のうちの最大数を、前記特定の仮想マシンが受け付けた要求を振り分け可能な仮想マシンの数として算出する、
ことを特徴とする制御プログラム。
(Appendix 10)
In Appendix 9,
In the calculation process, the virtual machine capable of distributing the request received by the specific virtual machine to the maximum number of the distribution destination virtual machines in which the increase in the load of the specified physical machine is equal to or less than the difference. Calculated as the number of
A control program characterized by that.
(付記11)
それぞれが複数の物理マシンのいずれかに構築された複数の仮想マシンのいずれかに受け付けた要求を振り分ける特定の仮想マシンを、前記複数の物理マシンのいずれかに配置する制御装置において、
前記複数の物理マシンの負荷情報に基づき、前記特定の仮想マシンを配置する配置先の物理マシンを特定する配置先特定部と、
特定した前記物理マシンの負荷情報に基づき、前記複数の仮想マシンのうち、前記特定の仮想マシンが受け付けた要求を振り分け可能な仮想マシンの数を算出するマシン数算出部と、
特定した前記物理マシンへの前記特定の仮想マシンの配置に応じて、前記複数の仮想マシンのうち、算出した前記数に応じた数の仮想マシンを、前記特定の仮想マシンが受け付けた要求を振り分ける振り分け先の仮想マシンとする振分先決定部と、を有する、
ことを特徴とする制御装置。
(Appendix 11)
In a control device in which a specific virtual machine that distributes a request received to any of a plurality of virtual machines built in each of the plurality of physical machines is arranged in any of the plurality of physical machines.
Based on the load information of the plurality of physical machines, the placement destination specifying unit that specifies the physical machine to be placed where the specific virtual machine is placed, and the placement destination specifying unit.
A machine number calculation unit that calculates the number of virtual machines that can distribute requests received by the specific virtual machine among the plurality of virtual machines based on the load information of the specified physical machine.
According to the arrangement of the specific virtual machine on the specified physical machine, among the plurality of virtual machines, the number of virtual machines corresponding to the calculated number is distributed to the request received by the specific virtual machine. It has a distribution destination determination unit that serves as a distribution destination virtual machine.
A control device characterized by that.
(付記12)
付記11において、
前記複数の物理マシンの負荷情報は、前記複数の物理マシンごとの現在の負荷を示す情報であり、
前記配置先特定部は、前記複数の物理マシンの負荷情報を参照し、前記複数の物理マシンに、現在の負荷が所定の閾値以上の物理マシンが存在する場合、前記配置先の物理マシンの決定を行う、
ことを特徴とする制御装置。
(Appendix 12)
In Appendix 11,
The load information of the plurality of physical machines is information indicating the current load of each of the plurality of physical machines.
The placement destination specifying unit refers to the load information of the plurality of physical machines, and determines the physical machine of the placement destination when the plurality of physical machines have a physical machine whose current load is equal to or higher than a predetermined threshold value. I do,
A control device characterized by that.
(付記13)
付記12において、
前記配置先特定部は、
前記複数の物理マシンのうち、現在の負荷が第1閾値以上の物理マシンにおいて動作する仮想マシンによって要求が振り分けられる1以上の仮想マシンが動作する1以上の物理マシンを特定し、
前記1以上の物理マシンのうちの現在の負荷が第2閾値未満の物理マシンから、前記配置先の物理マシンの決定を行う、
ことを特徴とする制御装置。
(Appendix 13)
In Appendix 12,
The placement destination identification part is
Among the plurality of physical machines, one or more physical machines in which one or more virtual machines whose requests are distributed by virtual machines operating in the physical machines whose current load is equal to or higher than the first threshold value are specified.
The physical machine to be placed is determined from the physical machines whose current load is less than the second threshold value among the one or more physical machines.
A control device characterized by that.
(付記14)
付記13において、
前記配置先特定部は、
前記1以上の物理マシンに、現在の負荷が前記第2閾値未満の物理マシンが存在しない場合、前記複数の物理マシンのうち、前記1以上の物理マシン以外の物理マシンから、前記配置先の物理マシンの決定を行う、
ことを特徴とする制御装置。
(Appendix 14)
In Appendix 13,
The placement destination identification part is
When there is no physical machine whose current load is less than the second threshold value in the one or more physical machines, the physical machine of the placement destination is selected from the physical machines other than the one or more physical machines among the plurality of physical machines. Make machine decisions,
A control device characterized by that.
(付記15)
それぞれが複数の物理マシンのいずれかに構築された複数の仮想マシンのいずれかに受け付けた要求を振り分ける特定の仮想マシンを、前記複数の物理マシンのいずれかに配置する制御方法において、
前記複数の物理マシンの負荷情報に基づき、前記特定の仮想マシンを配置する配置先の物理マシンを特定し、
特定した前記物理マシンの負荷情報に基づき、前記複数の仮想マシンのうち、前記特定の仮想マシンが受け付けた要求を振り分け可能な仮想マシンの数を算出し、
特定した前記物理マシンへの前記特定の仮想マシンの配置に応じて、前記複数の仮想マシンのうち、算出した前記数に応じた数の仮想マシンを、前記特定の仮想マシンが受け付けた要求を振り分ける振り分け先の仮想マシンとする、
ことを特徴とする制御方法。
(Appendix 15)
In a control method in which a specific virtual machine that distributes a request received to any of a plurality of virtual machines, each of which is built on one of a plurality of physical machines, is arranged on one of the plurality of physical machines.
Based on the load information of the plurality of physical machines, the physical machine to which the specific virtual machine is to be placed is specified, and the physical machine to be placed is specified.
Based on the load information of the specified physical machine, the number of virtual machines that can distribute the request received by the specific virtual machine among the plurality of virtual machines is calculated.
According to the arrangement of the specific virtual machine on the specified physical machine, among the plurality of virtual machines, the number of virtual machines corresponding to the calculated number is distributed to the request received by the specific virtual machine. Set as the distribution destination virtual machine,
A control method characterized by that.
(付記16)
付記15において、
前記複数の物理マシンの負荷情報は、前記複数の物理マシンごとの現在の負荷を示す情報であり、
前記特定する工程では、前記複数の物理マシンの負荷情報を参照し、前記複数の物理マシンに、現在の負荷が所定の閾値以上の物理マシンが存在する場合、前記配置先の物理マシンの決定を行う、
ことを特徴とする制御方法。
(Appendix 16)
In Appendix 15,
The load information of the plurality of physical machines is information indicating the current load of each of the plurality of physical machines.
In the specifying step, the load information of the plurality of physical machines is referred to, and when the plurality of physical machines have a physical machine whose current load is equal to or higher than a predetermined threshold value, the physical machine to be placed is determined. conduct,
A control method characterized by that.
(付記17)
付記16において、
前記特定する工程では、
前記複数の物理マシンのうち、現在の負荷が第1閾値以上の物理マシンにおいて動作する仮想マシンによって要求が振り分けられる1以上の仮想マシンが動作する1以上の物理マシンを特定し、
前記1以上の物理マシンのうちの現在の負荷が第2閾値未満の物理マシンから、前記配置先の物理マシンの決定を行う、
ことを特徴とする制御方法。
(Appendix 17)
In Appendix 16,
In the specific step,
Among the plurality of physical machines, one or more physical machines in which one or more virtual machines whose requests are distributed by virtual machines operating in the physical machines whose current load is equal to or higher than the first threshold value are specified.
The physical machine to be placed is determined from the physical machines whose current load is less than the second threshold value among the one or more physical machines.
A control method characterized by that.
(付記18)
付記17において、
前記特定する工程では、
前記1以上の物理マシンに、現在の負荷が前記第2閾値未満の物理マシンが存在しない場合、前記複数の物理マシンのうち、前記1以上の物理マシン以外の物理マシンから、前記配置先の物理マシンの決定を行う、
ことを特徴とする制御方法。
(Appendix 18)
In Appendix 17,
In the specific step,
When there is no physical machine whose current load is less than the second threshold value in the one or more physical machines, the physical machine of the placement destination is selected from the physical machines other than the one or more physical machines among the plurality of physical machines. Make machine decisions,
A control method characterized by that.
1:管理装置 2:物理マシン
3:仮想マシン 4:仮想化ソフトウエア
5:事業者端末
1: Management device 2: Physical machine 3: Virtual machine 4: Virtualization software 5: Business terminal
Claims (11)
前記複数の物理マシンの負荷情報に基づき、前記特定の仮想マシンを配置する配置先の物理マシンを特定し、
特定した前記物理マシンの負荷情報に基づき、前記複数の仮想マシンのうち、前記特定の仮想マシンが受け付けた要求を振り分け可能な仮想マシンの数を算出し、
特定した前記物理マシンへの前記特定の仮想マシンの配置に応じて、前記複数の仮想マシンのうち、算出した前記数に応じた数の仮想マシンを、前記特定の仮想マシンが受け付けた要求を振り分ける振り分け先の仮想マシンとする、
処理をコンピュータに実行させることを特徴とする制御プログラム。 In a control program in which a specific virtual machine that distributes a request received to any of a plurality of virtual machines built on one of the plurality of physical machines is placed on one of the plurality of physical machines.
Based on the load information of the plurality of physical machines, the physical machine to which the specific virtual machine is to be placed is specified, and the physical machine to be placed is specified.
Based on the load information of the specified physical machine, the number of virtual machines that can distribute the request received by the specific virtual machine among the plurality of virtual machines is calculated.
According to the arrangement of the specific virtual machine on the specified physical machine, among the plurality of virtual machines, the number of virtual machines corresponding to the calculated number is distributed to the request received by the specific virtual machine. Set as the distribution destination virtual machine,
A control program characterized by having a computer execute processing.
前記複数の物理マシンの負荷情報は、前記複数の物理マシンごとの現在の負荷を示す情報であり、
前記特定する処理では、前記複数の物理マシンの負荷情報を参照し、前記複数の物理マシンに、現在の負荷が所定の閾値以上の物理マシンが存在する場合、前記配置先の物理マシンの決定を行う、
ことを特徴とする制御プログラム。 In claim 1,
The load information of the plurality of physical machines is information indicating the current load of each of the plurality of physical machines.
In the specific process, the load information of the plurality of physical machines is referred to, and when the plurality of physical machines have physical machines whose current load is equal to or higher than a predetermined threshold value, the physical machine to be placed is determined. conduct,
A control program characterized by that.
前記特定する処理では、
前記複数の物理マシンのうち、現在の負荷が第1閾値以上の物理マシンにおいて動作する仮想マシンによって要求が振り分けられる1以上の仮想マシンが動作する1以上の物理マシンを特定し、
前記1以上の物理マシンのうちの現在の負荷が第2閾値未満の物理マシンから、前記配置先の物理マシンの決定を行う、
ことを特徴とする制御プログラム。 In claim 2,
In the specific process,
Among the plurality of physical machines, one or more physical machines in which one or more virtual machines whose requests are distributed by virtual machines operating in the physical machines whose current load is equal to or higher than the first threshold value are specified.
The physical machine to be placed is determined from the physical machines whose current load is less than the second threshold value among the one or more physical machines.
A control program characterized by that.
前記特定する処理では、
前記1以上の物理マシンに、現在の負荷が前記第2閾値未満の物理マシンが存在しない場合、前記複数の物理マシンのうち、前記1以上の物理マシン以外の物理マシンから、前記配置先の物理マシンの決定を行う、
ことを特徴とする制御プログラム。 In claim 3,
In the specific process,
When there is no physical machine whose current load is less than the second threshold value in the one or more physical machines, the physical machine of the placement destination is selected from the physical machines other than the one or more physical machines among the plurality of physical machines. Make machine decisions,
A control program characterized by that.
前記数に応じた数の仮想マシンを振り分け先の仮想マシンとする処理では、前記1以上の仮想マシンから、前記振り分け先の仮想マシンを決定する、
ことを特徴とする制御プログラム。 In claim 3,
In the process of setting the number of virtual machines corresponding to the number as the distribution destination virtual machine, the distribution destination virtual machine is determined from the one or more virtual machines.
A control program characterized by that.
前記数に応じた数の仮想マシンを振り分け先の仮想マシンとする処理では、各物理マシンにおいて動作する仮想マシンごとに、前記振り分け先の仮想マシンとして決定する、
ことを特徴とする制御プログラム。 In claim 5,
In the process of using the number of virtual machines corresponding to the number as the distribution destination virtual machine, each virtual machine operating in each physical machine is determined as the distribution destination virtual machine.
A control program characterized by that.
前記数に応じた数の仮想マシンを振り分け先の仮想マシンとする処理では、前記1以上の仮想マシンのうち、前記1以上の仮想マシンに要求を振り分ける仮想マシンと異なる物理マシンで動作する仮想マシンを優先して、前記振り分け先の仮想マシンとして決定する、
ことを特徴とする制御プログラム。 In claim 6,
In the process of using the number of virtual machines according to the number as the distribution destination virtual machine, the virtual machine operating on a physical machine different from the virtual machine that distributes the request to the one or more virtual machines among the one or more virtual machines. Is prioritized and determined as the virtual machine to be distributed.
A control program characterized by that.
前記1以上の仮想マシンのすべてを前記振り分け先の仮想マシンとして決定した場合、前記1以上の仮想マシンに要求を振り分ける仮想マシンを削除する、
処理をコンピュータに実行させることを特徴とする制御プログラム。 In claim 5, further
When all of the one or more virtual machines are determined as the distribution destination virtual machines, the virtual machines that distribute the requests to the one or more virtual machines are deleted.
A control program characterized by having a computer execute processing.
特定した前記物理マシンの負荷情報は、特定した前記物理マシンに生成されている仮想マシンの生成数と、特定した前記物理マシンに生成されている仮想マシンのそれぞれの負荷情報とを含み、
算出する処理では、特定した前記物理マシンに生成されている仮想マシンの前記生成数と、特定した前記物理マシンに生成されている仮想マシンのそれぞれの前記負荷情報とを用いることによって、前記特定の仮想マシンが受け付けた要求を振り分け可能な仮想マシンの数を算出する、
ことを特徴とする制御プログラム。 In claim 1,
The specified load information of the physical machine includes the number of virtual machines generated in the specified physical machine and the load information of each virtual machine generated in the specified physical machine.
In the calculation process, the specific number of virtual machines generated in the specified physical machine and the load information of each of the virtual machines generated in the specified physical machine are used . Calculate the number of virtual machines that can distribute the requests received by the virtual machines,
A control program characterized by that.
前記複数の物理マシンの負荷情報に基づき、前記特定の仮想マシンを配置する配置先の物理マシンを特定する配置先特定部と、
特定した前記物理マシンの負荷情報に基づき、前記複数の仮想マシンのうち、前記特定の仮想マシンが受け付けた要求を振り分け可能な仮想マシンの数を算出するマシン数算出部と、
特定した前記物理マシンへの前記特定の仮想マシンの配置に応じて、前記複数の仮想マシンのうち、算出した前記数に応じた数の仮想マシンを、前記特定の仮想マシンが受け付けた要求を振り分ける振り分け先の仮想マシンとする振分先決定部と、を有する、
ことを特徴とする制御装置。 In a control device in which a specific virtual machine that distributes a request received to any of a plurality of virtual machines built in each of the plurality of physical machines is arranged in any of the plurality of physical machines.
Based on the load information of the plurality of physical machines, the placement destination specifying unit that specifies the physical machine to be placed where the specific virtual machine is placed, and the placement destination specifying unit.
A machine number calculation unit that calculates the number of virtual machines that can distribute requests received by the specific virtual machine among the plurality of virtual machines based on the load information of the specified physical machine.
According to the arrangement of the specific virtual machine on the specified physical machine, among the plurality of virtual machines, the number of virtual machines corresponding to the calculated number is distributed to the request received by the specific virtual machine. It has a distribution destination determination unit that serves as a distribution destination virtual machine.
A control device characterized by that.
前記複数の物理マシンの負荷情報に基づき、前記特定の仮想マシンを配置する配置先の物理マシンを特定し、
特定した前記物理マシンの負荷情報に基づき、前記複数の仮想マシンのうち、前記特定の仮想マシンが受け付けた要求を振り分け可能な仮想マシンの数を算出し、
特定した前記物理マシンへの前記特定の仮想マシンの配置に応じて、前記複数の仮想マシンのうち、算出した前記数に応じた数の仮想マシンを、前記特定の仮想マシンが受け付けた要求を振り分ける振り分け先の仮想マシンとする、
ことを特徴とする制御方法。 In a control method in which a specific virtual machine that distributes a request received to any of a plurality of virtual machines, each of which is built on one of a plurality of physical machines, is arranged on one of the plurality of physical machines.
Based on the load information of the plurality of physical machines, the physical machine to which the specific virtual machine is to be placed is specified, and the physical machine to be placed is specified.
Based on the load information of the specified physical machine, the number of virtual machines that can distribute the request received by the specific virtual machine among the plurality of virtual machines is calculated.
According to the arrangement of the specific virtual machine on the specified physical machine, among the plurality of virtual machines, the number of virtual machines corresponding to the calculated number is distributed to the request received by the specific virtual machine. Set as the distribution destination virtual machine,
A control method characterized by that.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017110775A JP6928237B2 (en) | 2017-06-05 | 2017-06-05 | Control program, control device and control method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017110775A JP6928237B2 (en) | 2017-06-05 | 2017-06-05 | Control program, control device and control method |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2018206062A JP2018206062A (en) | 2018-12-27 |
JP6928237B2 true JP6928237B2 (en) | 2021-09-01 |
Family
ID=64957955
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017110775A Active JP6928237B2 (en) | 2017-06-05 | 2017-06-05 | Control program, control device and control method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6928237B2 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113687940B (en) * | 2020-05-19 | 2024-02-27 | 阿里巴巴集团控股有限公司 | Load balancing method and device and physical machine |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110078303A1 (en) * | 2009-09-30 | 2011-03-31 | Alcatel-Lucent Usa Inc. | Dynamic load balancing and scaling of allocated cloud resources in an enterprise network |
JP5557590B2 (en) * | 2010-05-06 | 2014-07-23 | 株式会社日立製作所 | Load balancing apparatus and system |
WO2014157512A1 (en) * | 2013-03-29 | 2014-10-02 | 日本電気株式会社 | System for providing virtual machines, device for determining paths, method for controlling paths, and program |
-
2017
- 2017-06-05 JP JP2017110775A patent/JP6928237B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2018206062A (en) | 2018-12-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10079879B2 (en) | Weighted rendezvous hashing | |
US11966792B2 (en) | Resource processing method of cloud platform, related device, and storage medium | |
US20080104608A1 (en) | Starting up at least one virtual machine in a physical machine by a load balancer | |
CN110417903A (en) | A kind of information processing method and system based on cloud computing | |
KR102062478B1 (en) | Methods, terminals, devices, and computer readable storage media to improve the performance of virtual computers | |
CN108933829A (en) | A kind of load-balancing method and device | |
CN110442610A (en) | The method, apparatus of load balancing calculates equipment and medium | |
US20220318071A1 (en) | Load balancing method and related device | |
US12010169B2 (en) | Dynamic management of locations of modules of a platform hosted by a distributed system | |
CN111131486A (en) | Load adjustment method and device of execution node, server and storage medium | |
JP6928237B2 (en) | Control program, control device and control method | |
US8458509B1 (en) | Multipath failover | |
CN114564313A (en) | Load adjustment method and device, electronic equipment and storage medium | |
CN107784463A (en) | Inventory information processing method, system and equipment | |
CN115237595A (en) | Data processing method, data processing device, distribution server, data processing system, and storage medium | |
CN104104611B (en) | A kind of method and device for realizing cluster load balance scheduling | |
CN115454576B (en) | Virtual machine process management method and system and electronic equipment | |
US20220086221A1 (en) | System and method for load balancing in a multitenant environment | |
JP6959519B2 (en) | Processing distribution program, processing distribution device and processing distribution method | |
JP6920612B2 (en) | Scale-in management program, scale-in management device and scale-in management method | |
JP2017033136A (en) | Information control program, information control device and information control method | |
CN112799849A (en) | Data processing method, device, equipment and storage medium | |
JP6365027B2 (en) | Allocation program, allocation device, allocation system, and allocation method | |
JP2008129794A (en) | Backup system and backup apparatus | |
JP6349786B2 (en) | Virtual machine management apparatus, virtual machine management method, and virtual machine management program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20200310 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20210209 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20210302 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20210426 |
|
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: 20210706 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20210719 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6928237 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |