JP2011186701A - Resource allocation apparatus, resource allocation method and resource allocation program - Google Patents

Resource allocation apparatus, resource allocation method and resource allocation program Download PDF

Info

Publication number
JP2011186701A
JP2011186701A JP2010050195A JP2010050195A JP2011186701A JP 2011186701 A JP2011186701 A JP 2011186701A JP 2010050195 A JP2010050195 A JP 2010050195A JP 2010050195 A JP2010050195 A JP 2010050195A JP 2011186701 A JP2011186701 A JP 2011186701A
Authority
JP
Japan
Prior art keywords
load
physical server
resource
physical
virtual machine
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.)
Pending
Application number
JP2010050195A
Other languages
Japanese (ja)
Inventor
Rui Sato
硫維 佐藤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP2010050195A priority Critical patent/JP2011186701A/en
Publication of JP2011186701A publication Critical patent/JP2011186701A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To suitably allocate a physical server to virtual machines. <P>SOLUTION: Even when, in a state where a high-load physical server to be a physical server (host) whose load factor exceeds a load factor threshold is allocated to a plurality of virtual machines (guests), allocation to virtual machines other than a high-load virtual machine to be a virtual machine having the highest load out of the plurality of allocated virtual machines is changed from the high-load physical server to another physical server other than the high-load physical server, a resource allocation part 13 calculates the order of the plurality of virtual machines in a virtualization system 301 for virtualizing the load factor of the high-load physical machine when the load factor of the high-load physical server exceeds the load factor threshold, and changes allocation to the high-load virtual machine from the high-load physical server to a same-order physical server to be a physical server whose order of stored resource amounts out of the plurality of physical servers in the virtualization system 301 is the same as the calculated order. <P>COPYRIGHT: (C)2011,JPO&INPIT

Description

本発明は、リソース割当装置、リソース割当方法、およびリソース割当プログラムに関し、特に、複数の物理サーバにおいて複数の仮想マシンを稼働させるための仮想化システムにおけるリソース割当装置、リソース割当方法、およびリソース割当プログラムに関する。   The present invention relates to a resource allocation device, a resource allocation method, and a resource allocation program, and in particular, a resource allocation device, a resource allocation method, and a resource allocation program in a virtualization system for operating a plurality of virtual machines in a plurality of physical servers. About.

近年の分散システムにおいては、計算機の仮想化技術が発達し、より細分化した柔軟なリソース割当が可能な計算機リソースインフラが整備されている。柔軟なリソース割当を実現する一手法として、ゲストOS(Operating System)が物理筐体間をオンラインのまま移動できるライブマイグレーション技術が考案されている。ここで、リソースとは、コンピュータにおいて、ソフトウェアおよびハードウェアを動作させるのに必要なCPU(Central Processing Unit)の処理速度、メモリ容量、およびハードディスクの容量等を意味する。   In recent distributed systems, computer virtualization technology has been developed, and a computer resource infrastructure capable of more detailed and flexible resource allocation has been established. As a technique for realizing flexible resource allocation, a live migration technique has been devised in which a guest OS (Operating System) can move between physical enclosures while online. Here, the resource means a processing speed of a CPU (Central Processing Unit), a memory capacity, a hard disk capacity, and the like necessary for operating software and hardware in the computer.

仮想化技術の一例として、たとえば、特許文献1(特開2005−115653号公報)には、以下のような技術が開示されている。すなわち、複数の仮想マシンを稼働させる複数のサーバとネットワークを介して接続される仮想マシン管理装置であって、各上記仮想マシンの所定時間ごとのパフォーマンスを示す実測データをデータベースから読み出す読出手段と、上記実測データを用いて、各仮想マシンを複数のサーバのいずれかで稼働させた場合の各時間における各仮想マシンのパフォーマンス値の合計が最大となる、仮想マシンとサーバの組み合わせを算出する組み合わせ算出手段と、上記組み合わせ算出手段により算出された仮想マシンとサーバの組み合わせに従って、各仮想マシンのファイルを当該仮想マシンに対応するサーバの記憶領域に格納して各仮想マシンの再配置を行なう手段とを備える。   As an example of virtualization technology, for example, Patent Literature 1 (Japanese Patent Laid-Open No. 2005-115653) discloses the following technology. That is, a virtual machine management apparatus connected via a network to a plurality of servers that operate a plurality of virtual machines, a reading unit that reads actual measurement data indicating performance for each predetermined time of each virtual machine from a database, Using the above measured data, combination calculation that calculates the combination of virtual machine and server that maximizes the total performance value of each virtual machine at each time when each virtual machine is operated on one of multiple servers And means for relocating each virtual machine by storing a file of each virtual machine in a storage area of the server corresponding to the virtual machine according to the combination of the virtual machine and the server calculated by the combination calculating unit. Prepare.

また、特許文献2(特開2008−59599号公報)には、以下のような技術が開示されている。すなわち、プログラムをその稼働条件に適したリソースへ配置するプログラム配置方法であって、各リソースの性能および容量に関する状態を示す管理情報を参照することにより各リソースの構成管理情報を生成するステップと、各業務プログラムの使用するリソースの識別情報を含む構成管理情報を参照して、その識別情報で識別されるリソースの構成管理情報を各リソースの構成管理情報の中から読み出すことにより、当該業務プログラムの構成管理情報と上記検索されたリソースの構成管理情報とを関連付けた業務プログラム情報を生成するステップと、上記業務プログラム情報中のリソースの構成管理情報が、対応する業務プログラムでのリソース異常を検出するためのルールに該当する場合に、当該業務プログラムでリソース異常が発生していることを示す情報を出力するステップとを含む。   Patent Document 2 (Japanese Patent Laid-Open No. 2008-59599) discloses the following technique. That is, a program placement method for placing a program on a resource suitable for its operating conditions, generating configuration management information for each resource by referring to management information indicating a state related to the performance and capacity of each resource; By referring to the configuration management information including the identification information of the resource used by each business program and reading the configuration management information of the resource identified by the identification information from the configuration management information of each resource, A step of generating business program information in which the configuration management information and the configuration management information of the searched resource are associated with each other, and the resource configuration management information in the business program information detects a resource abnormality in the corresponding business program. Resource error in the relevant business program And outputting information indicating that has occurred.

また、特許文献3(特開平09−212467号公報)には、以下のような技術が開示されている。すなわち、並列型計算機の各計算機に負荷を分散する負荷分散制御システムにおいて、各計算機(仮想計算機を含む)の負荷情報の通知を受けて余剰能力を評価して算出する余剰能力評価手段と、いずれかの計算機にジョブが投入されたときに当該ジョブ情報の通知を受けて上記評価した余剰能力が最も高い計算機を選択し、ジョブを受け付けた計算機が最も余剰能力が高いときはその計算機にジョブを実行させ、一方、ジョブを受け付けた計算機以外の他の計算機が最も余剰能力が高いときはそのジョブを受け付けた計算機にジョブを転送させて実行させる手段とを並列型計算機のうちのマスタ計算機に備える。   Patent Document 3 (Japanese Patent Laid-Open No. 09-212467) discloses the following technique. That is, in a load balancing control system that distributes a load to each computer of a parallel computer, a surplus capacity evaluation unit that evaluates and calculates a surplus capacity upon receiving notification of load information of each computer (including a virtual machine), When a job is submitted to that computer, the computer with the highest surplus capacity evaluated as described above is selected upon notification of the job information, and if the computer that received the job has the highest surplus capacity, the job is sent to that computer. On the other hand, when a computer other than the computer that received the job has the highest surplus capacity, the master computer of the parallel computers has means for transferring the job to the computer that received the job and executing it .

特開2005−115653号公報JP 2005-115653 A 特開2008−59599号公報JP 2008-59599 A 特開平09−212467号公報JP 09-212467 A

特許文献1に記載されているように、リソース割り当て方法としては、たとえば、サーバ等のホストが有するリソースの使用状況等に応じてリソース割り当てを行ない、仮想マシン等のゲストによる負荷を分散する方法がある。   As described in Patent Document 1, as a resource allocation method, for example, there is a method of allocating resources according to the use status of resources of a host such as a server and distributing a load caused by a guest such as a virtual machine. is there.

このようなリソース割り当て方法の具体例としては、たとえば、ゲストのリソース使用状況を監視し、ゲストのリソース使用率が上限閾値を超えた場合に、この閾値を超えたゲストを別のホスト上にマイグレーションする方法(方法1)が考えられる。しかしながら、方法1では、設定された上限閾値を超えた高負荷なゲストが存在した場合に、ゲストのマイグレーション処理がループになってしまう可能性がある。   As a specific example of such a resource allocation method, for example, when the resource usage rate of a guest is monitored and the guest resource usage rate exceeds the upper limit threshold, the guest exceeding this threshold is migrated to another host A method (method 1) is conceivable. However, in Method 1, when there is a high-load guest exceeding the set upper threshold, there is a possibility that the guest migration process becomes a loop.

また、リソース割り当て方法の具体例としては、たとえば、ゲストのリソース使用状況を監視し、ゲストのリソース使用量が大きくなった場合に、同一ホスト上で負荷率が低い他のゲストを別のホスト上にマイグレーションする方法(方法2)が考えられる。しかしながら、方法2では、高負荷のゲストが低スペックのホスト上に配置された場合に、高負荷のゲストに低スペックのホストが固定的に割り当てられてしまう可能性がある。   As a specific example of the resource allocation method, for example, when the resource usage status of a guest is monitored, and the guest resource usage increases, another guest with a low load factor on the same host is placed on another host. A method of migrating to (method 2) is conceivable. However, in Method 2, when a high-load guest is arranged on a low-spec host, there is a possibility that the low-spec host is fixedly assigned to the high-load guest.

すなわち、従来の手法では、特定の条件下において適切なゲストの配置が実現できないという課題が懸念される。これら方法1および方法2の課題について、ゲストの配置例を用いて説明する。   That is, with the conventional method, there is a concern that an appropriate guest arrangement cannot be realized under specific conditions. The problems of Method 1 and Method 2 will be described using a guest arrangement example.

図5は、仮想化システムにおけるホストおよびゲストの初期配置を示す図である。図6は、各ゲストの稼動状況を示す図である。図7は、各ホストの搭載リソース量を示す。ここでは、上限閾値が90%であると仮定する。   FIG. 5 is a diagram showing an initial arrangement of hosts and guests in the virtualization system. FIG. 6 is a diagram showing the operating status of each guest. FIG. 7 shows the amount of resources mounted on each host. Here, it is assumed that the upper threshold is 90%.

図5を参照して、仮想化システム300は、ゲストOS#1,ゲストOS#2,ゲストOS#3,ゲストOS#4,ゲストOS#5と、ホストHW(ハードウェア)#1,ホストHW#2,ホストHW#3とを備える。   Referring to FIG. 5, virtualization system 300 includes guest OS # 1, guest OS # 2, guest OS # 3, guest OS # 4, guest OS # 5, host HW (hardware) # 1, and host HW. # 2 and host HW # 3.

図6を参照して、ゲストOS#1の必要リソース量(要求リソース量)は130であり、ゲストOS#2の必要リソース量は40であり、ゲストOS#3の必要リソース量は40であり、ゲストOS#4の必要リソース量は10であり、ゲストOS#5の必要リソース量は10である。   Referring to FIG. 6, the required resource amount (requested resource amount) of guest OS # 1 is 130, the required resource amount of guest OS # 2 is 40, and the required resource amount of guest OS # 3 is 40. The required resource amount of guest OS # 4 is 10, and the required resource amount of guest OS # 5 is 10.

図7を参照して、ホストHW#1の搭載(供給)リソース量は100であり、ホストHW#2の搭載リソース量は100であり、ホストHW#3の搭載リソース量は150である。   Referring to FIG. 7, the mounted (supply) resource amount of host HW # 1 is 100, the mounted resource amount of host HW # 2 is 100, and the mounted resource amount of host HW # 3 is 150.

図8は、リソース割り当て方法として方法1を適用した場合におけるゲストの動的配置のイメージを示す図である。   FIG. 8 is a diagram showing an image of dynamic guest allocation when Method 1 is applied as the resource allocation method.

図8を参照して、上限閾値が90%であることから、ホストHW#1,#2における使
用可能リソース量は90であり、ホストHW#3における使用可能リソース量は135である。
Referring to FIG. 8, since the upper limit threshold is 90%, the usable resource amount in hosts HW # 1 and # 2 is 90, and the usable resource amount in host HW # 3 is 135.

ここでは、ゲストOS#4,ゲストOS#5がホストHW#1に配置されており、ゲストOS#2がホストHW#2に配置されており、ゲストOS#3がホストHW#3に配置されている。   Here, guest OS # 4 and guest OS # 5 are arranged on host HW # 1, guest OS # 2 is arranged on host HW # 2, and guest OS # 3 is arranged on host HW # 3. ing.

高負荷のゲストOS#1は、いずれのホストHWに配置される場合でも、ホストHWにおける使用可能リソース量を超えてしまう、すなわちホストHWの負荷率が上限閾値を超えてしまう。このため、ゲストOS#1はホストHW#1,ホストHW#2,ホストHW#3の間を配置変更され続け、マイグレーション処理がループになってしまう。   Even when the high-load guest OS # 1 is placed on any host HW, the amount of available resources in the host HW exceeds the available resource amount, that is, the load factor of the host HW exceeds the upper limit threshold. For this reason, the guest OS # 1 is continuously relocated between the host HW # 1, the host HW # 2, and the host HW # 3, and the migration process becomes a loop.

図9は、リソース割り当て方法として方法2を適用した場合におけるゲストの動的配置のイメージを示す図である。   FIG. 9 is a diagram illustrating an image of the dynamic arrangement of guests when the method 2 is applied as the resource allocation method.

図9を参照して、ゲストOS#1,OS#4,OS#5がホストHW#1に配置されており、ゲストOS#2がホストHW#2に配置されており、ゲストOS#3がホストHW#3に配置されている。   Referring to FIG. 9, guest OS # 1, OS # 4, OS # 5 are arranged on host HW # 1, guest OS # 2 is arranged on host HW # 2, and guest OS # 3 is It is arranged on the host HW # 3.

この場合、ホストHW#1の負荷率が上限閾値を超えてしまうため、ホストHW#1上で負荷率が低いゲストOS#4,OS#5がそれぞれホストHW#3,#2へ配置変更される。   In this case, since the load factor of the host HW # 1 exceeds the upper limit threshold, the guest OS # 4 and OS # 5 having a low load factor on the host HW # 1 are relocated to the hosts HW # 3 and # 2, respectively. The

そうすると、ゲストOS#1よりも高負荷のゲストOSがホストHW#1に配置されない限り、ゲストOS#1が低スペックのホストHW#1に固定されてしまう。   Then, the guest OS # 1 is fixed to the low-spec host HW # 1 unless the guest OS having a higher load than the guest OS # 1 is arranged on the host HW # 1.

このように、方法1では、ゲストに対するホストの割り当てがループしてしまうという問題点があり、また、方法2では、ゲストに対するホストの割り当てが固定化されてしまうという問題点があった。特許文献1〜3には、これらの問題点を解決するための構成は開示されていない。   As described above, the method 1 has a problem that the assignment of the host to the guest is looped, and the method 2 has a problem that the assignment of the host to the guest is fixed. Patent Documents 1 to 3 do not disclose a configuration for solving these problems.

この発明は、上述の課題を解決するためになされたもので、その目的は、複数の物理サーバにおいて複数の仮想マシンを稼働させるための仮想化システムにおいて、仮想マシンに対する物理サーバの割り当てを適切に行なうことが可能なリソース割当装置、リソース割当方法、およびリソース割当プログラムを提供することである。   The present invention has been made to solve the above-described problems, and an object thereof is to appropriately allocate physical servers to virtual machines in a virtualization system for operating a plurality of virtual machines on a plurality of physical servers. A resource allocation device, a resource allocation method, and a resource allocation program that can be performed.

上記課題を解決するために、この発明のある局面に係わるリソース割当装置は、複数の物理サーバを備えかつ上記複数の物理サーバにおいて複数の仮想マシンを稼働させるための仮想化システムにおいて、上記複数の物理サーバの有する各リソースを上記複数の仮想マシンに割り当てるためのリソース割当装置であって、上記複数の物理サーバの各リソース量を記憶するためのリソース管理部と、上記複数の物理サーバの各稼働負荷を監視するための稼働状況管理部と、上記リソース管理部の記憶する上記各リソース量および上記稼働状況管理部の監視結果である上記各稼働負荷に基づいて、上記各仮想マシンに割り当てる上記物理サーバを選択するためのリソース割当部とを備え、上記稼働状況管理部は、上記各物理サーバの負荷率閾値を記憶し、上記物理サーバの負荷率が上記負荷率閾値を超えた場合には、上記リソース割当部へ警告情報および上記各物理サーバの負荷率を示す負荷情報を出力し、上記リソース割当部は、上記警告情報を受けて、上記リソース管理部の記憶する上記各リソース量、および上記負荷情報に基づいて、上記各仮想マシンに割り当てる上記物理サーバを選択し、上記リソース割当部は、負荷率が上記負荷率閾値を超えた上
記物理サーバである高負荷物理サーバが複数の上記仮想マシンに割り当てられている場合であって、割り当てられている上記複数の仮想マシンのうち最も高負荷の上記仮想マシンである高負荷仮想マシン以外の上記仮想マシンへの割り当てを、上記高負荷物理サーバから上記高負荷物理サーバ以外の他の上記物理サーバへ変更しても、上記高負荷物理サーバの負荷率が上記負荷率閾値を超えるときには、上記高負荷仮想マシンの負荷量の上記仮想化システムにおける上記複数の仮想マシン中の順位を算出し、上記高負荷仮想マシンへの割り当てを、上記高負荷物理サーバから、上記仮想化システムにおける上記複数の物理サーバ中の保有リソース量の順位が上記算出した順位と同じ上記物理サーバである同順位物理サーバへ変更する。
In order to solve the above-described problem, a resource allocation device according to an aspect of the present invention includes a plurality of physical servers, and a virtual system for operating a plurality of virtual machines on the plurality of physical servers. A resource allocation device for allocating each resource of a physical server to the plurality of virtual machines, a resource management unit for storing each resource amount of the plurality of physical servers, and each operation of the plurality of physical servers An operation status management unit for monitoring the load, and the physical resources allocated to the virtual machines based on the resource amounts stored in the resource management unit and the operation loads as monitoring results of the operation status management unit. A resource allocation unit for selecting a server, and the operation status management unit sets a load factor threshold value for each physical server. If the load factor of the physical server exceeds the load factor threshold, warning information and load information indicating the load factor of each physical server are output to the resource allocation unit, and the resource allocation unit Upon receiving the warning information, the physical server to be allocated to the virtual machines is selected based on the resource amounts stored in the resource management unit and the load information, and the resource allocation unit has a load factor of A high-load physical server that is the physical server that has exceeded the load factor threshold is assigned to a plurality of the virtual machines, and is the virtual machine with the highest load among the assigned virtual machines. Change the assignment of the virtual machine other than a high-load virtual machine from the high-load physical server to another physical server other than the high-load physical server. When the load factor of the high load physical server exceeds the load factor threshold, the rank of the load amount of the high load virtual machine in the virtual system in the virtualization system is calculated, and the high load virtual machine Is changed from the high-load physical server to the same-order physical server that is the same physical server as the calculated rank in the order of the amount of resources held in the plurality of physical servers in the virtualization system.

またこの発明の別の局面に係わるリソース割当装置は、複数の物理サーバを備えかつ上記複数の物理サーバにおいて複数の仮想マシンを稼働させるための仮想化システムにおいて、上記複数の物理サーバの有する各リソースを上記複数の仮想マシンに割り当てるためのリソース割当装置であって、上記複数の物理サーバの各リソース量を記憶するためのリソース管理部と、上記複数の物理サーバの各稼働負荷を監視するための稼働状況管理部と、上記リソース管理部の記憶する上記各リソース量および上記稼働状況管理部の監視結果である上記各稼働負荷に基づいて、上記各仮想マシンに割り当てる上記物理サーバを選択するためのリソース割当部とを備え、上記稼働状況管理部は、上記各物理サーバの負荷率閾値を記憶し、上記物理サーバの負荷率が上記負荷率閾値を超えた場合には、上記リソース割当部へ警告情報および上記各物理サーバの負荷率を示す負荷情報を出力し、上記リソース割当部は、上記警告情報を受けて、上記リソース管理部の記憶する上記各リソース量、および上記負荷情報に基づいて、上記複数の仮想マシンの各々にどの上記物理サーバを割り当てるかを示す割り当て計画を作成し、上記稼働状況管理部は、さらに、上記各仮想マシンにどの上記物理サーバがどれぐらいの期間割り当てられてきたかの稼働履歴を記録し、上記リソース割当部は、上記割り当て計画において上記物理サーバの割り当てが変更される上記仮想マシンの、所定期間における上記物理サーバの割り当て変更回数が所定値以上であるか否かを上記稼働履歴に基づいて判定し、上記所定値以上である場合には、上記割り当て計画に関わらず上記仮想マシンに割り当てられる上記物理サーバを変更しない。   In addition, a resource allocation device according to another aspect of the present invention includes a plurality of physical servers, and each resource of the plurality of physical servers in a virtualization system for operating a plurality of virtual machines on the plurality of physical servers. A resource allocation device for allocating resources to the plurality of virtual machines, a resource management unit for storing the amount of each resource of the plurality of physical servers, and a monitor for operating loads of the plurality of physical servers For selecting the physical server to be assigned to each virtual machine based on the operation status management unit, the resource amounts stored in the resource management unit, and the operation loads as monitoring results of the operation status management unit A resource allocation unit, wherein the operation status management unit stores a load factor threshold value of each physical server, and the physical server When the load factor exceeds the load factor threshold, warning information and load information indicating the load factor of each physical server are output to the resource allocation unit, and the resource allocation unit receives the warning information, Based on each resource amount stored in the resource management unit and the load information, create an allocation plan indicating which physical server to allocate to each of the plurality of virtual machines, the operation status management unit, Further, the operation history of which physical server has been allocated to each virtual machine for how long, and the resource allocation unit of the virtual machine whose allocation of the physical server is changed in the allocation plan, Based on the operation history, it is determined whether or not the number of physical server allocation changes in a predetermined period is greater than or equal to a predetermined value. If the value or more, does not change the physical server allocated to the virtual machine Notwithstanding the foregoing allocation plan.

上記課題を解決するために、この発明のある局面に係わるリソース割当方法は、複数の物理サーバを備えかつ上記複数の物理サーバにおいて複数の仮想マシンを稼働させるための仮想化システムにおいて、上記複数の物理サーバの有する各リソースを上記複数の仮想マシンに割り当てるためのリソース割当方法であって、(a)上記複数の物理サーバの各リソース量を記憶するステップと、(b)上記複数の物理サーバの各稼働負荷を監視するステップと、(c)上記(a)のステップにおいて記憶した上記各リソース量および上記(b)のステップにおける監視結果である上記各稼働負荷に基づいて、上記各仮想マシンに割り当てる上記物理サーバを選択するステップとを含み、上記(b)のステップにおいては、上記物理サーバの負荷率が自己の負荷率閾値を超えた場合には、警告情報および上記各物理サーバの負荷率を示す負荷情報を出力し、上記(c)のステップにおいては、上記警告情報を受けて、上記(a)のステップにおいて記憶した上記各リソース量、および上記負荷情報に基づいて、上記各仮想マシンに割り当てる上記物理サーバを選択し、上記(c)のステップにおいては、負荷率が上記負荷率閾値を超えた上記物理サーバである高負荷物理サーバが複数の上記仮想マシンに割り当てられている場合であって、割り当てられている上記複数の仮想マシンのうち最も高負荷の上記仮想マシンである高負荷仮想マシン以外の上記仮想マシンへの割り当てを、上記高負荷物理サーバから上記高負荷物理サーバ以外の他の上記物理サーバへ変更しても、上記高負荷物理サーバの負荷率が上記負荷率閾値を超えるときには、上記高負荷仮想マシンの負荷量の上記仮想化システムにおける上記複数の仮想マシン中の順位を算出し、上記高負荷仮想マシンへの割り当てを、上記高負荷物理サーバから、上記仮想化システムにおける上記複数の物理サーバ中の保有リソース
量の順位が上記算出した順位と同じ上記物理サーバである同順位物理サーバへ変更する。
In order to solve the above-described problem, a resource allocation method according to an aspect of the present invention includes a plurality of physical servers, and a virtual system for operating a plurality of virtual machines on the plurality of physical servers. A resource allocation method for allocating each resource of a physical server to the plurality of virtual machines, comprising: (a) storing each resource amount of the plurality of physical servers; and (b) the plurality of physical servers. Monitoring each operating load; (c) based on each resource amount stored in step (a) and each operating load that is a monitoring result in step (b). Selecting the physical server to be allocated, and in the step (b), the load factor of the physical server When the load factor threshold of the self is exceeded, warning information and load information indicating the load factor of each physical server are output. In the step (c), the warning information is received and the above (a) The physical server to be allocated to each virtual machine is selected based on each resource amount stored in the step and the load information. In the step (c), the load factor exceeds the load factor threshold. When a high-load physical server that is the physical server is assigned to a plurality of the virtual machines other than the high-load virtual machine that is the virtual machine with the highest load among the assigned virtual machines Even if the allocation to the virtual machine is changed from the high-load physical server to another physical server other than the high-load physical server, the high-load physical server When the load factor of the server exceeds the load factor threshold, the rank of the load amount of the high load virtual machine in the virtual system in the virtualization system is calculated, and the assignment to the high load virtual machine is performed, The high-load physical server is changed to the same physical server that is the same physical server as the calculated rank in the order of the amount of resources held in the plurality of physical servers in the virtualization system.

またこの発明の別の局面に係わるリソース割当方法は、複数の物理サーバを備えかつ上記複数の物理サーバにおいて複数の仮想マシンを稼働させるための仮想化システムにおいて、上記複数の物理サーバの有する各リソースを上記複数の仮想マシンに割り当てるためのリソース割当方法であって、(a)上記複数の物理サーバの各リソース量を記憶するステップと、(b)上記複数の物理サーバの各稼働負荷を監視するステップと、(c)上記(a)のステップにおいて記憶した上記各リソース量および上記(b)のステップにおける監視結果である上記各稼働負荷に基づいて、上記各仮想マシンに割り当てる上記物理サーバを選択するステップとを含み、上記(b)のステップにおいては、上記物理サーバの負荷率が自己の負荷率閾値を超えた場合には、警告情報および上記各物理サーバの負荷率を示す負荷情報を出力し、上記(c)のステップにおいては、上記警告情報を受けて、上記(a)のステップにおいて記憶した上記各リソース量、および上記負荷情報に基づいて、上記複数の仮想マシンの各々にどの上記物理サーバを割り当てるかを示す割り当て計画を作成し、上記(b)のステップにおいては、さらに、上記各仮想マシンにどの上記物理サーバがどれぐらいの期間割り当てられてきたかの稼働履歴を記録し、上記(c)のステップにおいては、上記割り当て計画において上記物理サーバの割り当てが変更される上記仮想マシンの、所定期間における上記物理サーバの割り当て変更回数が所定値以上であるか否かを上記稼働履歴に基づいて判定し、上記所定値以上である場合には、上記割り当て計画に関わらず上記仮想マシンに割り当てられる上記物理サーバを変更しない。   In addition, a resource allocation method according to another aspect of the present invention provides a resource allocation method including a plurality of physical servers and a resource in each of the plurality of physical servers in a virtualization system for operating a plurality of virtual machines on the plurality of physical servers. Is a resource allocation method for allocating resources to the plurality of virtual machines, wherein (a) storing each resource amount of the plurality of physical servers; and (b) monitoring each operation load of the plurality of physical servers. And (c) selecting the physical server to be allocated to each virtual machine based on each resource amount stored in step (a) and each operation load as a monitoring result in step (b) In the step (b), the load factor of the physical server exceeds its own load factor threshold. If the warning information and the load information indicating the load factor of each physical server are output, the warning information is received in the step (c), and the information stored in the step (a) is received. Based on the resource amount and the load information, an allocation plan indicating which physical server is allocated to each of the plurality of virtual machines is created, and in the step (b), each virtual machine is further assigned to each virtual machine. The operation history of which physical server has been allocated for which period is recorded, and in the step (c), the virtual machine whose allocation of the physical server is changed in the allocation plan in the predetermined period. It is determined based on the operation history whether the number of physical server allocation changes is equal to or greater than a predetermined value. If that does not change the above-mentioned physical server to be assigned to the virtual machine, regardless of the allocation plan.

上記課題を解決するために、この発明のある局面に係わるリソース割当プログラムは、複数の物理サーバを備えかつ上記複数の物理サーバにおいて複数の仮想マシンを稼働させるための仮想化システムにおいて、上記複数の物理サーバの有する各リソースを上記複数の仮想マシンに割り当てるためのリソース割当プログラムであって、コンピュータに、(a)上記複数の物理サーバの各リソース量を記憶するステップと、(b)上記複数の物理サーバの各稼働負荷を監視するステップと、(c)上記(a)のステップにおいて記憶した上記各リソース量および上記(b)のステップにおける監視結果である上記各稼働負荷に基づいて、上記各仮想マシンに割り当てる上記物理サーバを選択するステップとを実行させ、上記(b)のステップにおいては、上記物理サーバの負荷率が自己の負荷率閾値を超えた場合には、警告情報および上記各物理サーバの負荷率を示す負荷情報を出力し、上記(c)のステップにおいては、上記警告情報を受けて、上記(a)のステップにおいて記憶した上記各リソース量、および上記負荷情報に基づいて、上記各仮想マシンに割り当てる上記物理サーバを選択し、上記(c)のステップにおいては、負荷率が上記負荷率閾値を超えた上記物理サーバである高負荷物理サーバが複数の上記仮想マシンに割り当てられている場合であって、割り当てられている上記複数の仮想マシンのうち最も高負荷の上記仮想マシンである高負荷仮想マシン以外の上記仮想マシンへの割り当てを、上記高負荷物理サーバから上記高負荷物理サーバ以外の他の上記物理サーバへ変更しても、上記高負荷物理サーバの負荷率が上記負荷率閾値を超えるときには、上記高負荷仮想マシンの負荷量の上記仮想化システムにおける上記複数の仮想マシン中の順位を算出し、上記高負荷仮想マシンへの割り当てを、上記高負荷物理サーバから、上記仮想化システムにおける上記複数の物理サーバ中の保有リソース量の順位が上記算出した順位と同じ上記物理サーバである同順位物理サーバへ変更する。   In order to solve the above-described problem, a resource allocation program according to an aspect of the present invention includes a plurality of physical servers, and a virtual system for operating a plurality of virtual machines in the plurality of physical servers. A resource allocation program for allocating each resource of a physical server to the plurality of virtual machines, comprising: (a) storing each resource amount of the plurality of physical servers in a computer; and (b) the plurality of the plurality of virtual servers. A step of monitoring each operating load of the physical server, and (c) each of the resource amounts stored in the step (a) and each operating load which is a monitoring result in the step (b). Selecting the physical server to be allocated to the virtual machine, and performing the step (b) If the load factor of the physical server exceeds its own load factor threshold, warning information and load information indicating the load factor of each physical server are output. In the step (c), Upon receipt of the warning information, the physical server to be allocated to each virtual machine is selected based on each resource amount stored in the step (a) and the load information. In the step (c), A high-load physical server that is the physical server whose load factor exceeds the load factor threshold is assigned to a plurality of the virtual machines, and has the highest load among the assigned virtual machines. The allocation to the virtual machine other than the high-load virtual machine that is the virtual machine is performed from the high-load physical server to the other physical server other than the high-load physical server. Even when the load factor of the high load physical server exceeds the load factor threshold even if the load is changed to the server, the rank of the load amount of the high load virtual machine among the plurality of virtual machines in the virtualization system is calculated, The same-order physical server is assigned to the high-load virtual machine from the high-load physical server as the physical server having the same rank as the calculated rank in the amount of resources held in the plurality of physical servers in the virtualization system Change to

またこの発明の別の局面に係わるリソース割当プログラムは、複数の物理サーバを備えかつ上記複数の物理サーバにおいて複数の仮想マシンを稼働させるための仮想化システムにおいて、上記複数の物理サーバの有する各リソースを上記複数の仮想マシンに割り当てるためのリソース割当プログラムであって、コンピュータに、(a)上記複数の物理サーバの各リソース量を記憶するステップと、(b)上記複数の物理サーバの各稼働負荷を監視するステップと、(c)上記(a)のステップにおいて記憶した上記各リソース量およ
び上記(b)のステップにおける監視結果である上記各稼働負荷に基づいて、上記各仮想マシンに割り当てる上記物理サーバを選択するステップとを実行させ、上記(b)のステップにおいては、上記物理サーバの負荷率が自己の負荷率閾値を超えた場合には、警告情報および上記各物理サーバの負荷率を示す負荷情報を出力し、上記(c)のステップにおいては、上記警告情報を受けて、上記(a)のステップにおいて記憶した上記各リソース量、および上記負荷情報に基づいて、上記複数の仮想マシンの各々にどの上記物理サーバを割り当てるかを示す割り当て計画を作成し、上記(b)のステップにおいては、さらに、上記各仮想マシンにどの上記物理サーバがどれぐらいの期間割り当てられてきたかの稼働履歴を記録し、上記(c)のステップにおいては、上記割り当て計画において上記物理サーバの割り当てが変更される上記仮想マシンの、所定期間における上記物理サーバの割り当て変更回数が所定値以上であるか否かを上記稼働履歴に基づいて判定し、上記所定値以上である場合には、上記割り当て計画に関わらず上記仮想マシンに割り当てられる上記物理サーバを変更しない。
A resource allocation program according to another aspect of the present invention provides a resource allocation program including a plurality of physical servers and each resource of the plurality of physical servers in a virtualization system for operating a plurality of virtual machines on the plurality of physical servers. Is a resource allocation program for allocating to each of the plurality of virtual machines, and (a) storing each resource amount of the plurality of physical servers in a computer; and (b) each operating load of the plurality of physical servers. And (c) the physical resources allocated to the virtual machines based on the resource amounts stored in the step (a) and the operating loads that are monitoring results in the step (b). Selecting a server, and in the step (b), the physical server When the load factor exceeds the own load factor threshold, warning information and load information indicating the load factor of each physical server are output. In the step (c), the warning information is received, Based on each resource amount stored in the step (a) and the load information, an allocation plan indicating which physical server is allocated to each of the plurality of virtual machines is created. In the step, an operation history of which physical server has been allocated to each virtual machine for how long is recorded, and in the step (c), the allocation of the physical server is changed in the allocation plan. Whether or not the number of physical server allocation changes in a predetermined period of the virtual machine to be used is greater than or equal to a predetermined value in the operation history Determined by Zui, when it is the predetermined value or more, it does not change the physical server allocated to the virtual machine Notwithstanding the foregoing allocation plan.

本発明によれば、複数の物理サーバにおいて複数の仮想マシンを稼働させるための仮想化システムにおいて、仮想マシンに対する物理サーバの割り当てを適切に行なうことができる。   According to the present invention, in a virtualization system for operating a plurality of virtual machines on a plurality of physical servers, it is possible to appropriately assign physical servers to the virtual machines.

本発明の実施の形態に係るリソース割当装置の概略構成図である。It is a schematic block diagram of the resource allocation apparatus which concerns on embodiment of this invention. 本発明の実施の形態に係る仮想化システムの構成、および本発明の実施の形態に係るリソース割当装置が提供する制御構造を示すブロック図である。It is a block diagram which shows the structure of the virtualization system which concerns on embodiment of this invention, and the control structure which the resource allocation apparatus which concerns on embodiment of this invention provides. 本発明の実施の形態に係るリソース割当装置がリソース割当処理を行なう際の動作手順を示すフローチャートである。It is a flowchart which shows the operation | movement procedure at the time of the resource allocation apparatus which concerns on embodiment of this invention performing a resource allocation process. 図5〜図7に示す例において、本発明の実施の形態に係るリソース割当装置がリソース割当処理を行なった場合におけるゲストの動的配置のイメージを示す図である。In the example shown in FIGS. 5-7, it is a figure which shows the image of the dynamic arrangement | positioning of the guest when the resource allocation apparatus which concerns on embodiment of this invention performs a resource allocation process. 仮想化システムにおけるホストおよびゲストの初期配置を示す図である。It is a figure which shows the initial arrangement | positioning of the host and guest in a virtualization system. 各ゲストの稼動状況を示す図である。It is a figure which shows the operating condition of each guest. 各ホストの搭載リソース量を示す。Indicates the amount of resources installed on each host. リソース割り当て方法として方法1を適用した場合におけるゲストの動的配置のイメージを示す図である。It is a figure which shows the image of the dynamic arrangement | positioning of the guest at the time of applying the method 1 as a resource allocation method. リソース割り当て方法として方法2を適用した場合におけるゲストの動的配置のイメージを示す図である。It is a figure which shows the image of the dynamic arrangement | positioning of the guest at the time of applying the method 2 as a resource allocation method.

[概要]
前述のように、リソース割当の動的計画手法と、ライブマイグレーション技術とを組み合わせることにより、柔軟なリソース割当を実現することが可能となる。
[Overview]
As described above, flexible resource allocation can be realized by combining the dynamic allocation method of resource allocation and the live migration technique.

しかしながら、動的計画においては、計画要素に時間と共に変動するゲストのリソース要求量が含まれるため、最適計画を立案するのは困難である。   However, in dynamic planning, it is difficult to formulate an optimal plan because the planning elements include the resource requirements of guests that vary with time.

本発明の実施の形態では、従来の動的計画手法で発生が懸念される課題を解決することが可能となる。   In the embodiment of the present invention, it is possible to solve a problem that is likely to occur in the conventional dynamic planning method.

より詳細には、従来の仮想マシン配置手法の課題として懸念される、高負荷ゲストのマイグレーション処理がループしてしまう問題、および高負荷ゲストが低スペックのホストに貼りついてしまう問題の原因として、動的配置のマイグレーション対象となるゲストの
選定が固定化されてしまうことが考えられる。
More specifically, as a cause of the problem that the migration process of a high-load guest loops and the problem that a high-load guest sticks to a low-spec host, which is a concern of the conventional virtual machine placement method, It is conceivable that the selection of guests to be migrated in a specific arrangement will be fixed.

本発明の実施の形態では、ゲストの高負荷状態の検出による動的配置の契機ごとに、リソース供給状態を指標として取り入れてマイグレーション対象となるゲストの選定計画を行なうことにより、前述の課題の解決を図る。   The embodiment of the present invention solves the above-mentioned problem by planning the selection of a guest to be migrated by taking the resource supply state as an index at every opportunity of dynamic placement by detecting a high load state of the guest. Plan.

本発明の実施の形態は、以下のような特徴を有する。すなわち、複数種類の物理サーバ(以下、ホストとも称する。)および複数種類の仮想マシン(以下、ゲストとも称する。)からなるプラットフォーム(仮想化システム)を考える。この仮想化システムで稼動するリソース割当装置において、各ゲストの稼動状況を監視し、各ゲストに対する各ホストのHWリソースの割り当てを動的に調整する。これにより、柔軟なリソース割り当て、および負荷分散のための配置を計画する。このような構成において、動的配置案を検討する際の指標としてリソース供給状態を追加することにより、効率的なリソース割当を実現する。   The embodiment of the present invention has the following features. That is, consider a platform (virtualized system) composed of a plurality of types of physical servers (hereinafter also referred to as hosts) and a plurality of types of virtual machines (hereinafter also referred to as guests). In the resource allocation device operating in this virtualization system, the operating status of each guest is monitored, and the allocation of the HW resource of each host to each guest is dynamically adjusted. As a result, an arrangement for flexible resource allocation and load distribution is planned. In such a configuration, efficient resource allocation is realized by adding a resource supply state as an index when considering a dynamic allocation plan.

すなわち、本発明の実施の形態では、サーバ仮想化技術を用いて複数種類のホストおよび複数種類のゲストからなるプラットフォームで稼動するシステムにおいて、仮想マシンの稼動監視と動的配置とを行なうリソース割当装置を導入することにより、ゲストに対して、従来手法よりも効率的なリソース割当を実現することができる。   In other words, in the embodiment of the present invention, in a system that operates on a platform composed of a plurality of types of hosts and a plurality of types of guests using server virtualization technology, a resource allocation device that performs operation monitoring and dynamic placement of virtual machines By introducing, it is possible to achieve resource allocation more efficiently for guests than in the conventional method.

本発明の実施の形態に係るリソース割当装置は、典型的には、汎用的なアーキテクチャを有するコンピュータを基本構造としており、予めインストールされたプログラムを実行することで、後述するような各種機能を提供する。一般的に、このようなプログラムは、フレキシブルディスク(Flexible Disk)およびCD−ROM(Compact Disk Read Only Memory)などの記録媒体に格納されて、あるいはネットワークなどを介して流通する。   The resource allocation device according to the embodiment of the present invention typically has a computer having a general-purpose architecture as a basic structure, and provides various functions as described later by executing a preinstalled program. To do. In general, such a program is stored in a recording medium such as a flexible disk and a CD-ROM (Compact Disk Read Only Memory) or distributed via a network or the like.

本発明の実施の形態に係るプログラムは、OS等の他のプログラムの一部に組み込まれて提供されるものであってもよい。この場合でも、本発明の実施の形態に係るプログラム自体は、上記のような組み込み先の他のプログラムが有するモジュールを含んでおらず、当該他のプログラムと協働して処理が実行される。すなわち、本発明の実施の形態に係るプログラムとしては、このような他のプログラムに組み込まれた形態であってもよい。   The program according to the embodiment of the present invention may be provided by being incorporated in a part of another program such as an OS. Even in this case, the program itself according to the embodiment of the present invention does not include a module included in the other program as described above, and the process is executed in cooperation with the other program. That is, the program according to the embodiment of the present invention may be in a form incorporated in such another program.

なお、代替的に、プログラムの実行により提供される機能の一部もしくは全部を専用のハードウェア回路として実装してもよい。   Alternatively, some or all of the functions provided by program execution may be implemented as a dedicated hardware circuit.

[装置構成]
以下、本発明の実施の形態について図面を用いて説明する。なお、図中同一または相当部分には同一符号を付してその説明は繰り返さない。
[Device configuration]
Hereinafter, embodiments of the present invention will be described with reference to the drawings. In the drawings, the same or corresponding parts are denoted by the same reference numerals and description thereof will not be repeated.

図1は、本発明の実施の形態に係るリソース割当装置の概略構成図である。図1を参照して、リソース割当装置201は、演算処理部であるCPU(Central Processing Unit)101と、記憶部としてのメインメモリ102およびハードディスク103と、入力インターフェイス104と、表示コントローラ105と、データリーダ/ライタ106と、通信インターフェイス107とを備える。これらの各部は、バス121を介して互いにデータ通信可能に接続される。   FIG. 1 is a schematic configuration diagram of a resource allocation device according to an embodiment of the present invention. Referring to FIG. 1, a resource allocation device 201 includes a CPU (Central Processing Unit) 101 that is an arithmetic processing unit, a main memory 102 and a hard disk 103 as a storage unit, an input interface 104, a display controller 105, data A reader / writer 106 and a communication interface 107 are provided. These units are connected to each other via a bus 121 so that data communication is possible.

CPU101は、ハードディスク103に格納されたプログラム(コード)をメインメモリ102に展開し、これらを所定順序で実行することにより、各種の演算を実施する。メインメモリ102は、典型的には、DRAM(Dynamic Random Access Memory)などの揮発性の記憶装置であり、ハードディスク103から読み出されたプログラムに加えて、
各種の演算処理結果を示すデータなどを保持する。また、ハードディスク103は不揮発性の磁気記憶装置であり、CPU101で実行されるプログラムに加えて、各種設定値などが格納される。このハードディスク103にインストールされるプログラムは、後述するように、記録媒体111に格納された状態で流通する。なお、ハードディスク103に加えて、あるいはハードディスク103に代えて、フラッシュメモリなどの半導体記憶装置を採用してもよい。
The CPU 101 performs various operations by developing programs (codes) stored in the hard disk 103 in the main memory 102 and executing them in a predetermined order. The main memory 102 is typically a volatile storage device such as a DRAM (Dynamic Random Access Memory), and in addition to the program read from the hard disk 103,
It stores data indicating various arithmetic processing results. The hard disk 103 is a non-volatile magnetic storage device, and stores various setting values in addition to programs executed by the CPU 101. The program installed in the hard disk 103 is distributed in a state of being stored in the recording medium 111 as will be described later. In addition to the hard disk 103 or instead of the hard disk 103, a semiconductor storage device such as a flash memory may be employed.

入力インターフェイス104は、CPU101とキーボード108、マウス109および図示しないタッチパネルなどの入力部との間のデータ伝送を仲介する。すなわち、入力インターフェイス104は、ユーザが入力部を操作することで与えられる操作指令などの外部からの入力を受け付ける。   The input interface 104 mediates data transmission between the CPU 101 and an input unit such as a keyboard 108, a mouse 109, and a touch panel (not shown). That is, the input interface 104 receives an external input such as an operation command given by a user operating the input unit.

表示コントローラ105は、表示部の典型例であるディスプレイ110と接続され、ディスプレイ110での表示を制御する。すなわち、表示コントローラ105は、CPU101による画像処理の結果などをユーザに対して表示する。ディスプレイ110は、たとえばLCD(Liquid Crystal Display)またはCRT(Cathode Ray Tube)である。   The display controller 105 is connected to a display 110 that is a typical example of a display unit, and controls display on the display 110. That is, the display controller 105 displays the result of image processing by the CPU 101 to the user. The display 110 is, for example, an LCD (Liquid Crystal Display) or a CRT (Cathode Ray Tube).

データリーダ/ライタ106は、CPU101と記録媒体111の間のデータ伝送を仲介する。すなわち、記録媒体111は、リソース割当装置201で実行されるプログラムなどが格納された状態で流通し、データリーダ/ライタ106は、この記録媒体111からプログラムを読み出す。また、データリーダ/ライタ106は、CPU101の内部指令に応答して、リソース割当装置201における処理結果などを記録媒体111へ書き込む。なお、記録媒体111は、たとえば、CF(Compact Flash)およびSD(Secure Digital)などの汎用的な半導体記憶デバイス、フレキシブルディスク(Flexible Disk)などの磁気記憶媒体、またはCD−ROM(Compact Disk Read Only Memory)などの光学記憶媒体である。   The data reader / writer 106 mediates data transmission between the CPU 101 and the recording medium 111. That is, the recording medium 111 is distributed in a state where a program executed by the resource allocation device 201 is stored, and the data reader / writer 106 reads the program from the recording medium 111. Further, the data reader / writer 106 writes the processing result in the resource allocation device 201 into the recording medium 111 in response to the internal command of the CPU 101. The recording medium 111 is, for example, a general-purpose semiconductor storage device such as CF (Compact Flash) and SD (Secure Digital), a magnetic storage medium such as a flexible disk, or a CD-ROM (Compact Disk Read Only). Memory).

通信インターフェイス107は、CPU101とパーソナルコンピュータおよびサーバ装置などの間のデータ伝送を仲介する。通信インターフェイス107は、典型的には、イーサネット(登録商標)またはUSB(Universal Serial Bus)の通信機能を有する。なお、記録媒体111に格納されたプログラムをリソース割当装置201にインストールする形態に代えて、通信インターフェイス107を介して配信サーバなどからダウンロードしたプログラムをリソース割当装置201にインストールしてもよい。   The communication interface 107 mediates data transmission between the CPU 101 and a personal computer, a server device, or the like. The communication interface 107 typically has an Ethernet (registered trademark) or USB (Universal Serial Bus) communication function. Instead of installing the program stored in the recording medium 111 in the resource allocation device 201, a program downloaded from a distribution server or the like via the communication interface 107 may be installed in the resource allocation device 201.

また、リソース割当装置201には、必要に応じてプリンタなどの他の出力装置が接続されてもよい。   Further, the resource allocation device 201 may be connected to another output device such as a printer as necessary.

[制御構造]
次に、リソース割当装置201における各種機能を提供するための制御構造について説明する。
[Control structure]
Next, a control structure for providing various functions in the resource assignment device 201 will be described.

図2は、本発明の実施の形態に係る仮想化システムの構成、および本発明の実施の形態に係るリソース割当装置が提供する制御構造を示すブロック図である。なお、以下で説明する内容以外は図5に示す仮想化システム300と同様である。   FIG. 2 is a block diagram showing the configuration of the virtualization system according to the embodiment of the present invention and the control structure provided by the resource allocation device according to the embodiment of the present invention. The contents other than those described below are the same as those of the virtualization system 300 shown in FIG.

図2に示すリソース割当装置201の各ブロックは、ハードディスク103に格納されたプログラム(コード)などをメインメモリ102に展開して、CPU101に実行させることで提供される。なお、図2に示すモジュールの一部もしくは全部がハードウェアに実装されているファームウェアによって提供される場合もある。あるいは、図2に示す制御構造の一部もしくは全部を専用ハードウェアおよび/または配線回路によって実現して
もよい。
Each block of the resource allocation device 201 shown in FIG. 2 is provided by developing a program (code) stored in the hard disk 103 in the main memory 102 and causing the CPU 101 to execute it. Note that some or all of the modules shown in FIG. 2 may be provided by firmware implemented in hardware. Alternatively, part or all of the control structure shown in FIG. 2 may be realized by dedicated hardware and / or a wiring circuit.

図2を参照して、仮想化システム301は、リソース割当装置201と、稼働システム202とを備える。稼働システム202は、ゲストOS#1,ゲストOS#2,ゲストOS#3,ゲストOS#4,ゲストOS#5と、ホストHW#1,ホストHW#2,ホストHW#3とを含む。   With reference to FIG. 2, the virtualization system 301 includes a resource allocation device 201 and an operation system 202. The operating system 202 includes guest OS # 1, guest OS # 2, guest OS # 3, guest OS # 4, guest OS # 5, and host HW # 1, host HW # 2, and host HW # 3.

稼働システム202は、複数のホストを備えかつ当該複数のホストにおいて複数のゲストを稼働させる。リソース割当装置201は、当該複数のホストの有する各リソースを当該複数のゲストに割り当てる。   The operation system 202 includes a plurality of hosts and operates a plurality of guests on the plurality of hosts. The resource allocation device 201 allocates each resource of the plurality of hosts to the plurality of guests.

より詳細には、リソース割当装置(仮想マシン配置装置)201は、その制御構造として、稼働状況管理部11と、供給リソース管理部12と、リソース割当部13とを備える。リソース割当部13は、仮想マシンマイグレーション命令発行部26と、仮想マシン配置計画部27とを含む。   More specifically, the resource allocation device (virtual machine placement device) 201 includes an operation status management unit 11, a supply resource management unit 12, and a resource allocation unit 13 as its control structure. The resource allocation unit 13 includes a virtual machine migration command issuing unit 26 and a virtual machine arrangement planning unit 27.

稼働状況管理部11は、稼働システム202における各ホストの各稼働負荷を監視する。稼働状況管理部11は、各ホストの負荷率閾値を記憶している。また、稼働状況管理部11は、各ゲストにどのホストがどれぐらいの期間割り当てられてきたかの稼働履歴を記録する。   The operation status management unit 11 monitors each operation load of each host in the operation system 202. The operating status management unit 11 stores a load factor threshold value of each host. The operation status management unit 11 records an operation history indicating which host has been allocated to each guest for how long.

供給リソース管理部12は、稼働システム202における各ホストの各リソース量を記憶する。リソース割当部13は、供給リソース管理部12の記憶する各リソース量および稼働状況管理部11の監視結果である各稼働負荷に基づいて、各ゲストに割り当てるホストを選択する。   The supply resource management unit 12 stores each resource amount of each host in the operation system 202. The resource allocation unit 13 selects a host to be allocated to each guest based on each resource amount stored in the supply resource management unit 12 and each operation load that is a monitoring result of the operation status management unit 11.

仮想マシン配置計画部27は、各ゲストにどのホストを割り当てるかを示す割り当て計画を作成する。   The virtual machine arrangement planning unit 27 creates an allocation plan indicating which host is allocated to each guest.

仮想マシンマイグレーション命令発行部26は、仮想マシン配置計画部27が作成した割り当て計画に従って、ホストHWをゲストOSに割り当てる。   The virtual machine migration command issuing unit 26 allocates the host HW to the guest OS according to the allocation plan created by the virtual machine arrangement planning unit 27.

稼働状況管理部11は、ホスト稼働状況テーブル21と、ゲスト稼働状況テーブル22と、負荷率閾値テーブル23と、ゲスト稼働履歴テーブル24とを有する。供給リソース管理部12は、ホスト搭載リソーステーブル25を含む。仮想マシン配置計画部27は、ゲスト配置状況テーブル31を有する。リソース割当装置201における各テーブルは、たとえば図1に示すメインメモリ102またはハードディスク103に格納される。   The operating status management unit 11 includes a host operating status table 21, a guest operating status table 22, a load factor threshold table 23, and a guest operating history table 24. The supply resource management unit 12 includes a host-mounted resource table 25. The virtual machine arrangement planning unit 27 has a guest arrangement situation table 31. Each table in the resource allocation device 201 is stored in, for example, the main memory 102 or the hard disk 103 shown in FIG.

ホスト稼働状況テーブル21は、ホストHW#1,ホストHW#2,ホストHW#3の負荷率等の稼働状況を示す。ゲスト稼働状況テーブル22は、ゲストOS#1,ゲストOS#2,ゲストOS#3,ゲストOS#4,ゲストOS#5の負荷量等の稼働状況を示す。負荷率閾値テーブル23は、ホストHW#1,ホストHW#2,ホストHW#3の負荷率閾値を示す。ゲスト稼働履歴テーブル24は、ゲストOS#1,ゲストOS#2,ゲストOS#3,ゲストOS#4,ゲストOS#5に割り当てられたホストHWの履歴を示す。ホスト搭載リソーステーブル25は、ホストHW#1,ホストHW#2,ホストHW#3が搭載しているリソース量を示す。ゲスト配置状況テーブル31は、各ゲストの各ホストにおける配置状況、すなわち、現在どのゲストにどのホストが割り当てられているかを示す。   The host operating status table 21 shows operating statuses such as load factors of the host HW # 1, host HW # 2, and host HW # 3. The guest operating status table 22 indicates operating statuses such as the load amounts of guest OS # 1, guest OS # 2, guest OS # 3, guest OS # 4, and guest OS # 5. The load factor threshold table 23 indicates the load factor thresholds of the host HW # 1, host HW # 2, and host HW # 3. The guest operation history table 24 shows the history of the host HW assigned to the guest OS # 1, guest OS # 2, guest OS # 3, guest OS # 4, and guest OS # 5. The host mounting resource table 25 indicates the amount of resources mounted on the host HW # 1, host HW # 2, and host HW # 3. The guest arrangement status table 31 indicates the arrangement status of each guest in each host, that is, which host is currently assigned to which guest.

[動作]
次に、本発明の実施の形態に係るリソース割当装置の動作について図面を用いて説明する。本発明の実施の形態では、リソース割当装置201を動作させることによって、本発明の実施の形態に係るリソース割当方法が実施される。よって、本発明の実施の形態に係るリソース割当方法の説明は、以下のリソース割当装置201の動作説明に代える。なお、以下の説明においては、適宜図2を参照する。
[Operation]
Next, the operation of the resource allocation device according to the embodiment of the present invention will be described with reference to the drawings. In the embodiment of the present invention, the resource allocation method according to the embodiment of the present invention is implemented by operating the resource allocation device 201. Therefore, the description of the resource allocation method according to the embodiment of the present invention is replaced with the following description of the operation of the resource allocation apparatus 201. In the following description, FIG. 2 will be referred to as appropriate.

図3は、本発明の実施の形態に係るリソース割当装置がリソース割当処理を行なう際の動作手順を示すフローチャートである。   FIG. 3 is a flowchart showing an operation procedure when the resource assignment device according to the embodiment of the present invention performs the resource assignment process.

図3を参照して、稼働状況管理部11は、稼動システム202の稼働負荷を監視している。より詳細には、稼働状況管理部11は、各ホストの負荷率および各ゲストの負荷量を監視する。この負荷量は、図6に示す必要リソース量に相当する。たとえば、稼働状況管理部11は、各ホストから負荷率を定期的に取得し、また、各ゲストから負荷量を定期的に取得する(ステップS1)。   With reference to FIG. 3, the operating status management unit 11 monitors the operating load of the operating system 202. More specifically, the operation status management unit 11 monitors the load factor of each host and the load amount of each guest. This load amount corresponds to the required resource amount shown in FIG. For example, the operation status management unit 11 periodically acquires the load factor from each host and periodically acquires the load amount from each guest (step S1).

また、供給リソース管理部12は、稼動システム202における供給リソース量を取得して保持している。より詳細には、稼働状況管理部11は、各ホストから供給リソース量を取得して保持する。この供給リソース量は、図7に示す搭載リソース量に相当する(ステップS2)。   In addition, the supply resource management unit 12 acquires and holds the supply resource amount in the operating system 202. More specifically, the operating status management unit 11 acquires and holds the supply resource amount from each host. This supply resource amount corresponds to the mounted resource amount shown in FIG. 7 (step S2).

次に、稼働状況管理部11は、稼動システム202のリソース使用量が、保持している閾値を超えたときに、警告情報および稼動システム202の負荷状況を仮想マシン配置計画部27へ出力する。すなわち、稼働状況管理部11は、いずれかのホストの負荷率が負荷率閾値を超えると、リソース割当部13へ警告情報および各ホストの負荷率を示す負荷情報を出力する(ステップS3)。   Next, the operation status management unit 11 outputs the warning information and the load status of the operation system 202 to the virtual machine arrangement planning unit 27 when the resource usage amount of the operation system 202 exceeds the stored threshold. That is, when the load factor of any host exceeds the load factor threshold, the operation status management unit 11 outputs warning information and load information indicating the load factor of each host to the resource allocation unit 13 (step S3).

次に、仮想マシン配置計画部27は、稼働状況管理部11から警告情報を受けて、供給リソース管理部12から、各ホストの供給リソース量を取得する(ステップS4)。   Next, the virtual machine arrangement planning unit 27 receives the warning information from the operation status management unit 11, and acquires the supply resource amount of each host from the supply resource management unit 12 (step S4).

次に、リソース割当部13は、稼働状況管理部11から警告情報を受けて、供給リソース管理部12の記憶する各リソース量、および稼働状況管理部11から受けた負荷情報に基づいて、各ゲストに割り当てるホストを選択する。より詳細には、仮想マシン配置計画部27は、取得した情報に基づいて、以下のステップに示す手順でゲスト配置計画を立案する。すなわち、仮想マシン配置計画部27は、稼働状況管理部11から警告情報を受けて、供給リソース管理部12の記憶する各リソース量、および稼働状況管理部11から受けた負荷情報に基づいて、複数のゲストの各々にどのホストを割り当てるかを示す割り当て計画を作成する(ステップS5)。   Next, the resource allocation unit 13 receives the warning information from the operation status management unit 11, and based on each resource amount stored in the supply resource management unit 12 and the load information received from the operation status management unit 11, each guest Select a host to assign to. More specifically, the virtual machine placement planning unit 27 creates a guest placement plan according to the procedure shown in the following steps based on the acquired information. That is, the virtual machine arrangement planning unit 27 receives warning information from the operation status management unit 11, and based on each resource amount stored in the supply resource management unit 12 and load information received from the operation status management unit 11, An allocation plan indicating which host is allocated to each of the guests is created (step S5).

より詳細には、リソース割当部13は、負荷率が負荷率閾値を超えたホスト(以下、高負荷ホストとも称する。)が複数のゲストに割り当てられている場合には、割り当てられている複数のゲストのうち最も高負荷のゲスト(以下、高負荷ゲストとも称する。)以外のゲスト(以下、低負荷ゲストとも称する。)への割り当てを、高負荷ホストから高負荷ホスト以外の他のホストへ変更するか否かを判別する。すなわち、仮想マシン配置計画部27は、高負荷ホストにおいて、高負荷ゲスト以外の他のゲストをマイグレーションすることにより、高負荷ホスト上でリソース供給が可能か否かを計算する。仮想マシン配置計画部27は、高負荷ホスト上でリソース供給が可能である場合には(ステップS6でYES)、高負荷ホスト上の低負荷ゲストを他のホストへのマイグレーション対象として選択する(ステップS9)。   More specifically, when a host whose load factor exceeds the load factor threshold (hereinafter also referred to as a high load host) is assigned to a plurality of guests, the resource assigning unit 13 Change the assignment of guests other than the highest-load guest (hereinafter also referred to as a high-load guest) from a high-load host to a host other than the high-load host. It is determined whether or not to do so. In other words, the virtual machine arrangement planning unit 27 calculates whether or not resources can be supplied on the high load host by migrating a guest other than the high load guest on the high load host. If the resource can be supplied on the high load host (YES in step S6), the virtual machine arrangement planning unit 27 selects a low load guest on the high load host as a migration target to another host (step S6). S9).

一方、リソース割当部13は、低負荷ゲストへの割り当てを、高負荷ホストから高負荷
ホスト以外の他のホストへ変更しても、高負荷ホストの負荷率が負荷率閾値を超えるときには(ステップS6でNO)、高負荷ゲストの負荷量の仮想化システム301における全ゲスト中の順位(以下、負荷量順位とも称する。)を算出する。そして、リソース割当部13は、高負荷ゲストへの割り当てを、高負荷ホストから、仮想化システム301における全ホスト中の保有リソース量の順位が負荷量順位と同じホスト(以下、同順位ホストとも称する。)へ変更する(ステップS7)。すなわち、仮想マシン配置計画部27は、高負荷ホストにおいて高負荷ゲスト以外の他のゲストをマイグレーションしても、高負荷ホスト上でリソース供給ができない場合には(ステップS6でNO)、高負荷ゲストが、仮想化システム301における全ゲスト中、何番目の高負荷状態かを計算し、計算した順位と同じ供給リソース量を搭載した同順位ホストを高負荷ゲストの稼動ホストとする(ステップS7)。
On the other hand, even if the resource allocation unit 13 changes the allocation to the low load guest from the high load host to another host other than the high load host, when the load factor of the high load host exceeds the load factor threshold (step S6). No), the rank of all the guests in the virtualization system 301 of the load amount of the high-load guest (hereinafter also referred to as load amount rank) is calculated. Then, the resource allocation unit 13 allocates the high load guest from the high load host to the host in which the rank of the retained resource amount in all the hosts in the virtualization system 301 is the same as the load amount rank (hereinafter also referred to as the same rank host). (Step S7). In other words, the virtual machine arrangement plan unit 27 migrates a guest other than the high-load guest on the high-load host and, if resources cannot be supplied on the high-load host (NO in step S6), the high-load guest However, among the guests in the virtualization system 301, the number of the high load state is calculated, and the same rank host having the same supply resource amount as the calculated rank is set as the active host of the high load guest (step S7).

また、リソース割当部13は、同順位ホストを高負荷ゲストに割り当てた場合、同順位ホストが自己の負荷率閾値以下で稼働可能か否かを判定し、稼働できない場合には(ステップS8でNO)、同順位ホストが割り当てられている1または複数のゲストであって高負荷ゲスト以外の他のゲストへの割り当てを、同順位ホストから他のホストへ変更する(ステップS9)。すなわち、仮想マシン配置計画部27は、高負荷ゲストを同順位ホストへマイグレーションした場合において高負荷ホストが上限閾値内で稼動できるか否かを計算し、稼働できない場合には(ステップS8でNO)、同順位ホスト上の高負荷ゲスト以外のゲストを他のホストへのマイグレーション対象として選択する(ステップS9)。   Further, the resource allocating unit 13 determines whether or not the same rank host can be operated at or below its own load factor threshold when the same rank host is allocated to the high load guest, and if it cannot be operated (NO in step S8). ) The assignment to one or more guests to which the same rank host is assigned but other than the high load guest is changed from the same rank host to another host (step S9). In other words, the virtual machine arrangement planning unit 27 calculates whether or not the high load host can operate within the upper limit threshold when the high load guest is migrated to the same rank host, and if it cannot be operated (NO in step S8). The guest other than the high-load guest on the same-order host is selected as a migration target to another host (step S9).

一方、仮想マシン配置計画部27は、高負荷ホストにおいて高負荷ゲスト以外の他のゲストをマイグレーションしても、高負荷ホスト上でリソース供給が可能である場合には(ステップS8でYES)、高負荷ゲストのみをマイグレーション対象として選択する。   On the other hand, if the virtual machine arrangement planning unit 27 is able to supply resources on the high load host even if other guests other than the high load guest are migrated on the high load host (YES in step S8), the virtual machine arrangement planning unit 27 is high. Select only load guests for migration.

次に、リソース割当部13は、割り当て計画においてホストの割り当てが変更されるゲストの、所定期間におけるホストの割り当て変更回数が所定値以上であるか否かを稼働履歴に基づいて判定する(ステップS10)。そして、リソース割当部13は、割り当て変更回数が所定値以上である場合には(ステップS11でYES)、割り当て計画に関わらず当該ゲストに割り当てられるホストを変更しない(ステップS12)。   Next, the resource allocation unit 13 determines whether or not the number of host allocation changes in a predetermined period of the guest whose host allocation is changed in the allocation plan is greater than or equal to a predetermined value based on the operation history (step S10). ). If the number of allocation changes is equal to or greater than the predetermined value (YES in step S11), the resource allocation unit 13 does not change the host allocated to the guest regardless of the allocation plan (step S12).

より詳細には、仮想マシン配置計画部27は、以下のステップに示す手順で、マイグレーション命令の発行を中止すべきか否か、すなわちループ処理の回避を行なうべきか否かを判定する(ステップS10)。すなわち、仮想マシン配置計画部27は、ゲスト稼動履歴テーブル24を参照することにより、マイグレーション対象となるゲスト(以下、対象ゲストとも称する。)に関しループ処理が行なわれているか否かを判定する(ステップS11)。仮想マシン配置計画部27は、対象ゲストがループしている場合には(ステップS11でYES)、対象ゲストへのマイグレーション命令を発行しない(ステップS12)。これは、高負荷ゲストによって高負荷ホストの負荷量は閾値を超えているが、仮想化システム301において提供されているホストのリソース状況では現状の配置が最適となるためである。   More specifically, the virtual machine arrangement planning unit 27 determines whether or not to stop issuing a migration instruction, that is, whether or not to avoid loop processing, according to the procedure shown in the following steps (step S10). . That is, the virtual machine arrangement planning unit 27 refers to the guest operation history table 24 to determine whether or not a loop process is being performed on a guest to be migrated (hereinafter also referred to as a target guest) (step) S11). If the target guest is looped (YES in step S11), the virtual machine arrangement planning unit 27 does not issue a migration command to the target guest (step S12). This is because the load amount of the high load host exceeds the threshold by the high load guest, but the current arrangement is optimal in the host resource status provided in the virtualization system 301.

一方、仮想マシン配置計画部27は、マイグレーション対象がループしている場合には(ステップS11でNO)、立案したゲスト配置計画を仮想マシンマイグレーション命令発行部26へ出力する(ステップS13)。   On the other hand, when the migration target is looped (NO in step S11), the virtual machine arrangement planning unit 27 outputs the planned guest arrangement plan to the virtual machine migration instruction issuing unit 26 (step S13).

次に、仮想マシンマイグレーション命令発行部26は、仮想マシン配置計画部27から受けたゲスト配置計画に従い、稼動システム202の対象ホストにマイグレーション命令を発行する(ステップS14)。   Next, the virtual machine migration command issuing unit 26 issues a migration command to the target host of the operating system 202 according to the guest placement plan received from the virtual machine placement planning unit 27 (step S14).

次に、マイグレーション命令を受けたホストは、マイグレーション命令が示すゲストの配置変更を実行する(ステップS15)。   Next, the host that has received the migration command executes a guest arrangement change indicated by the migration command (step S15).

図4は、図5〜図7に示す例において、本発明の実施の形態に係るリソース割当装置がリソース割当処理を行なった場合におけるゲストの動的配置のイメージを示す図である。   FIG. 4 is a diagram showing an image of guest dynamic arrangement when the resource allocation device according to the embodiment of the present invention performs resource allocation processing in the examples illustrated in FIGS. 5 to 7.

図3および図4を参照して、高負荷となったゲストOS#1が稼動しているホストHW#1において、ゲストOS#4,#5をマイグレーションしても、ホストHW#1は、その搭載リソース量が100であるため、ゲストOS#1が必要とするリソース(130)を供給することができない(ステップS6でNO)。   3 and 4, even if the guest OS # 4 and # 5 are migrated in the host HW # 1 in which the guest OS # 1 having a high load is running, the host HW # 1 Since the mounted resource amount is 100, the resource (130) required by the guest OS # 1 cannot be supplied (NO in step S6).

高負荷となったゲストOS#1は、ゲストOS#1〜OS#5の全ゲストOS中、1番高い負荷状態となるため、1番大きいリソース量を供給可能なホストHW#3へゲストOS#1がマイグレーションされる(ステップS7)。   Since the guest OS # 1 that has become heavily loaded is the highest load state among all guest OSes of the guest OS # 1 to OS # 5, the guest OS # 1 is supplied to the host HW # 3 that can supply the largest resource amount # 1 is migrated (step S7).

ゲストOS#1をホストHW#3にマイグレーションした場合、ゲストOS#1およびゲストOS#3のリソース使用量の合計値(170)が、ホストHW#3の上限閾値すなわち搭載リソース量(150)を超える(ステップS8でNO)。このため、ゲストOS#3をたとえばホストHW#2にマイグレーションし、高負荷のゲストOS#1に優先的にホストHW#3のリソースを割り当てることとする(ステップS9)。   When the guest OS # 1 is migrated to the host HW # 3, the total resource usage amount (170) of the guest OS # 1 and the guest OS # 3 is the upper limit threshold of the host HW # 3, that is, the installed resource amount (150). (NO in step S8). For this reason, the guest OS # 3 is migrated to the host HW # 2, for example, and the resource of the host HW # 3 is preferentially allocated to the high-load guest OS # 1 (step S9).

ところで、前述の方法1では、ゲストに対するホストの割り当てがループしてしまうという問題点があった。   By the way, the above-described method 1 has a problem in that host allocation to guests is looped.

これに対して、本発明の実施の形態では、リソース割当部13は、稼働状況管理部11から警告情報を受けて、供給リソース管理部12の記憶する各リソース量、および稼働状況管理部11から受けた負荷情報に基づいて、各仮想マシン(ゲスト)にどの物理サーバ(ホスト)を割り当てるかを示す割り当て計画を作成する。また、稼働状況管理部11は、各仮想マシンにどの物理サーバがどれくらいの期間割り当てられてきたかの稼働履歴を記録する。そして、リソース割当部13は、作成した割り当て計画において物理サーバの割り当てが変更される仮想マシンの、所定期間における物理サーバの割り当て変更回数が所定値以上であるか否かを稼働履歴に基づいて判定する。リソース割当部13は、割り当て変更回数が所定値以上である場合には、割り当て計画に関わらず当該仮想マシンに割り当てられる物理サーバを変更しない。   On the other hand, in the embodiment of the present invention, the resource allocation unit 13 receives the warning information from the operation status management unit 11, receives each warning amount from the resource management unit 12, and the operation status management unit 11. Based on the received load information, an allocation plan indicating which physical server (host) is allocated to each virtual machine (guest) is created. The operation status management unit 11 records an operation history indicating which physical server has been allocated to each virtual machine for how long. Then, the resource allocation unit 13 determines, based on the operation history, whether or not the number of physical server allocation changes in a predetermined period of the virtual machine whose physical server allocation is changed in the created allocation plan is greater than or equal to a predetermined value. To do. The resource allocation unit 13 does not change the physical server allocated to the virtual machine regardless of the allocation plan when the allocation change count is equal to or greater than the predetermined value.

このような構成により、ゲストに対するホストの割り当てがループしてしまうという問題を防ぐことができる。すなわち、本発明の実施の形態では、仮想マシンの動的配置計画立案に際して、高負荷ゲストが存在する場合に、高負荷ゲストが要求するリソース量の提供を満たすホストを発見するまでマイグレーションし続けるループ処理の発生を避けることができる。   With such a configuration, it is possible to prevent a problem that a host assignment to a guest is looped. In other words, in the embodiment of the present invention, when a virtual machine is dynamically arranged, when there is a high load guest, a loop that continues to migrate until a host that satisfies the provision of the resource amount requested by the high load guest is found. Generation of processing can be avoided.

また、前述の方法2では、ゲストに対するホストの割り当てが固定化されてしまうという問題点があった。   Further, the above-described method 2 has a problem that the allocation of the host to the guest is fixed.

これに対して、本発明の実施の形態では、リソース割当部13は、稼働状況管理部11から警告情報を受けて、供給リソース管理部12の記憶する各リソース量、および稼働状況管理部11から受けた負荷情報に基づいて、各仮想マシンに割り当てる物理サーバを選択する。すなわち、リソース割当部13は、負荷率が負荷率閾値を超えた物理サーバである高負荷物理サーバが複数の仮想マシンに割り当てられている場合には、割り当てられている複数の仮想マシンのうち最も高負荷の仮想マシンである高負荷仮想マシン以外の仮想
マシンへの割り当てを、高負荷物理サーバから高負荷物理サーバ以外の他の物理サーバへ変更したときの高負荷物理サーバの負荷率を算出する。リソース割当部13は、この割り当て変更を行なっても高負荷物理サーバの負荷率が負荷率閾値を超える場合には、高負荷仮想マシンの負荷量の仮想化システム301における全仮想マシン中の順位(負荷量順位)を算出する。そして、リソース割当部13は、高負荷仮想マシンへの割り当てを、高負荷物理サーバから、仮想化システム301における全物理サーバ中の保有リソース量の順位が負荷量順位と同じ物理サーバである同順位物理サーバへ変更する。
On the other hand, in the embodiment of the present invention, the resource allocation unit 13 receives the warning information from the operation status management unit 11, receives each warning amount from the resource management unit 12, and the operation status management unit 11. Based on the received load information, a physical server to be assigned to each virtual machine is selected. That is, when a high load physical server that is a physical server whose load factor exceeds the load factor threshold is assigned to a plurality of virtual machines, the resource assignment unit 13 is the most of the assigned virtual machines. Calculate the load factor of a high-load physical server when the assignment to a virtual machine other than a high-load virtual machine that is a high-load virtual machine is changed from a high-load physical server to another physical server other than a high-load physical server . If the load factor of the high-load physical server exceeds the load factor threshold even after making this allocation change, the resource allocation unit 13 ranks the load amount of the high-load virtual machine among all virtual machines in the virtualization system 301 ( (Load amount ranking) is calculated. Then, the resource allocating unit 13 allocates the high load virtual machine from the high load physical server to the same physical server in which the rank of the retained resource amount in all the physical servers in the virtualization system 301 is the same as the load amount rank. Change to a physical server.

このような構成により、ゲストに対するホストの割り当てが固定化されてしまうという問題を防ぐことができる。すなわち、仮想マシンの動的配置計画立案に際して、異なるリソース量を搭載するホスト、および高負荷のゲストが存在する場合に、高負荷ゲストに高スペックのホストを割り当てることができる。   With such a configuration, it is possible to prevent the problem that the allocation of the host to the guest is fixed. That is, when a virtual machine dynamic allocation plan is made, if there are a host with a different amount of resources and a high-load guest, a high-spec host can be assigned to the high-load guest.

以上のように、本発明の実施の形態に係るリソース割当装置201における各構成要素のうち、稼働状況管理部11、供給リソース管理部12およびリソース割当部13からなる最小構成により、仮想マシンに対する物理サーバの割り当てを適切に行なうという本発明の目的を達成することが可能となる。   As described above, among the components in the resource allocation device 201 according to the embodiment of the present invention, the physical configuration for the virtual machine is realized by the minimum configuration including the operation status management unit 11, the supply resource management unit 12, and the resource allocation unit 13. It is possible to achieve the object of the present invention to appropriately allocate servers.

また、本発明の実施の形態では、リソース割当部13は、同順位物理サーバ(同順位ホスト)を高負荷仮想マシン(高負荷ゲスト)に割り当てた場合、同順位物理サーバが自己の負荷率閾値以下で稼働可能か否かを判定し、稼働できない場合には、同順位物理サーバが割り当てられている1または複数の仮想マシンであって高負荷ゲスト以外の他の仮想マシンへの割り当てを、同順位物理サーバから他の物理サーバへ変更する。このような構成により、仮想マシンに対する物理サーバの割り当てをさらに適切に行ない、仮想化システムにおける負荷分散をさらに図ることができる。   In the embodiment of the present invention, when the resource allocating unit 13 allocates the same rank physical server (same rank host) to the high load virtual machine (high load guest), the rank physical server has its own load factor threshold. In the following, it is determined whether or not it can be operated. If it cannot be operated, one or more virtual machines to which the same rank physical server is allocated and allocated to other virtual machines other than the high-load guest are allocated. Change from a physical server to another physical server. With such a configuration, the physical server can be more appropriately allocated to the virtual machine, and load distribution in the virtualization system can be further achieved.

付言すれば、本発明の実施の形態に係るリソース割当装置の特徴としては、たとえば、ゲスト稼動履歴テーブル24およびホスト搭載リソーステーブル25を有し、これらのテーブルに格納されている情報を仮想マシン配置計画部27での計画立案時の指標とする点が挙げられる。   In other words, the resource allocation apparatus according to the embodiment of the present invention has, for example, a guest operation history table 24 and a host-mounted resource table 25, and information stored in these tables is allocated to the virtual machine. The point used as the index at the time of planning in the plan part 27 is mentioned.

すなわち、ゲスト稼動履歴テーブル24の情報を計画立案時の指標とすることにより、方法1で懸念されていた、高負荷ゲストのマイグレーションループ処理の発生を防ぐことができる。   That is, by using the information in the guest operation history table 24 as an index at the time of planning, it is possible to prevent the occurrence of migration loop processing of a high-load guest, which has been a concern in Method 1.

また、ホスト搭載リソーステーブル25の情報を計画立案時の指標とすることにより、方法2で懸念されていた、高負荷ゲストが低スペックホスト上に固定的に配置されてしまう問題を防ぐことができる。   In addition, by using the information in the host-mounted resource table 25 as an index at the time of planning, it is possible to prevent the problem that the high-load guest, which is concerned in the method 2, is fixedly arranged on the low-spec host. .

上記実施の形態は、すべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記説明ではなく特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。   The above embodiment should be considered as illustrative in all points and not restrictive. The scope of the present invention is defined by the terms of the claims, rather than the description above, and is intended to include any modifications within the scope and meaning equivalent to the terms of the claims.

本発明によれば、複数の物理サーバにおいて複数の仮想マシンを稼働させるための仮想化システムにおいて、仮想マシンに対する物理サーバの割り当てを適切に行なうことができる。したがって、本発明は、仮想化された計算機リソースを用いたシステムに適用され、このシステムにおけるリソース有効活用を可能とすることから、産業上の利用可能性を有している。   According to the present invention, in a virtualization system for operating a plurality of virtual machines on a plurality of physical servers, it is possible to appropriately assign physical servers to the virtual machines. Therefore, the present invention is applied to a system using virtualized computer resources and enables effective use of resources in this system, and thus has industrial applicability.

[付記1]
複数の物理サーバを備えかつ前記複数の物理サーバにおいて複数の仮想マシンを稼働させるための仮想化システムにおいて、前記複数の物理サーバの有する各リソースを前記複数の仮想マシンに割り当てるためのリソース割当方法であって、
(a)前記複数の物理サーバの各リソース量を記憶するステップと、
(b)前記複数の物理サーバの各稼働負荷を監視するステップと、
(c)前記(a)のステップにおいて記憶した前記各リソース量および前記(b)のステップにおける監視結果である前記各稼働負荷に基づいて、前記各仮想マシンに割り当てる前記物理サーバを選択するステップとを含み、
前記(b)のステップにおいては、前記物理サーバの負荷率が自己の負荷率閾値を超えた場合には、警告情報および前記各物理サーバの負荷率を示す負荷情報を出力し、
前記(c)のステップにおいては、前記警告情報を受けて、前記(a)のステップにおいて記憶した前記各リソース量、および前記負荷情報に基づいて、前記各仮想マシンに割り当てる前記物理サーバを選択し、
前記(c)のステップにおいては、負荷率が前記負荷率閾値を超えた前記物理サーバである高負荷物理サーバが複数の前記仮想マシンに割り当てられている場合であって、割り当てられている前記複数の仮想マシンのうち最も高負荷の前記仮想マシンである高負荷仮想マシン以外の前記仮想マシンへの割り当てを、前記高負荷物理サーバから前記高負荷物理サーバ以外の他の前記物理サーバへ変更しても、前記高負荷物理サーバの負荷率が前記負荷率閾値を超えるときには、前記高負荷仮想マシンの負荷量の前記仮想化システムにおける前記複数の仮想マシン中の順位を算出し、前記高負荷仮想マシンへの割り当てを、前記高負荷物理サーバから、前記仮想化システムにおける前記複数の物理サーバ中の保有リソース量の順位が前記算出した順位と同じ前記物理サーバである同順位物理サーバへ変更する、リソース割当方法。
[Appendix 1]
In a virtualization system comprising a plurality of physical servers and operating a plurality of virtual machines on the plurality of physical servers, a resource allocation method for allocating each resource of the plurality of physical servers to the plurality of virtual machines There,
(A) storing each resource amount of the plurality of physical servers;
(B) monitoring each operating load of the plurality of physical servers;
(C) selecting the physical servers to be allocated to the virtual machines based on the resource amounts stored in the step (a) and the operating loads that are monitoring results in the step (b); Including
In the step (b), when the load factor of the physical server exceeds its own load factor threshold, warning information and load information indicating the load factor of each physical server are output,
In the step (c), the physical server to be allocated to each virtual machine is selected based on the amount of each resource stored in the step (a) and the load information in response to the warning information. ,
In the step (c), a high-load physical server that is the physical server whose load factor exceeds the load factor threshold is assigned to a plurality of the virtual machines, and the assigned plurality Change the allocation to the virtual machine other than the high-load virtual machine that is the virtual machine with the highest load among the virtual machines from the high-load physical server to the other physical server other than the high-load physical server When the load factor of the high load physical server exceeds the load factor threshold value, the rank of the load amount of the high load virtual machine among the virtual machines in the virtualization system is calculated, and the high load virtual machine The ranking of the amount of resources held in the plurality of physical servers in the virtualization system is calculated from the high load physical server. Change position to ties physical server which is the same the physical servers, the resource allocation method.

[付記2]
前記(c)のステップにおいては、前記同順位物理サーバを前記高負荷仮想マシンに割り当てた場合、前記同順位物理サーバが自己の前記負荷率閾値以下で稼働可能か否かを判定し、稼働できない場合には、前記同順位物理サーバが割り当てられている1または複数の前記仮想マシンであって前記高負荷仮想マシン以外の他の前記仮想マシンへの割り当てを、前記同順位物理サーバから他の前記物理サーバへ変更する、付記1に記載のリソース割当方法。
[Appendix 2]
In the step (c), when the same-order physical server is assigned to the high-load virtual machine, it is determined whether or not the same-order physical server can be operated at or below its own load factor threshold and cannot be operated. In the case, one or a plurality of the virtual machines to which the same-order physical server is assigned and assignment to the other virtual machines other than the high-load virtual machine is performed from the same-order physical server to the other virtual machines. The resource allocation method according to attachment 1, wherein the resource allocation method is changed to a physical server.

[付記3]
前記(c)のステップにおいては、前記警告情報を受けて、前記(a)のステップにおいて記憶した前記各リソース量、および前記負荷情報に基づいて、前記複数の仮想マシンの各々にどの前記物理サーバを割り当てるかを示す割り当て計画を作成し、
前記(b)のステップにおいては、さらに、前記各仮想マシンにどの前記物理サーバがどれぐらいの期間割り当てられてきたかの稼働履歴を記録し、
前記(c)のステップにおいては、前記割り当て計画において前記物理サーバの割り当てが変更される前記仮想マシンの、所定期間における前記物理サーバの割り当て変更回数が所定値以上であるか否かを前記稼働履歴に基づいて判定し、前記所定値以上である場合には、前記割り当て計画に関わらず前記仮想マシンに割り当てられる前記物理サーバを変更しない、付記1または2に記載のリソース割当方法。
[Appendix 3]
In the step (c), the physical server is assigned to each of the plurality of virtual machines based on the resource amounts and the load information stored in the step (a) upon receiving the warning information. Create an allocation plan that shows whether
In the step (b), an operation history of which physical server has been allocated to each virtual machine for how long is recorded.
In the step (c), it is determined whether or not the number of physical server allocation changes in a predetermined period of the virtual machine whose physical server allocation is changed in the allocation plan is greater than or equal to a predetermined value. The resource allocation method according to appendix 1 or 2, wherein the physical server allocated to the virtual machine is not changed regardless of the allocation plan if the physical server is determined based on the allocation plan.

[付記4]
複数の物理サーバを備えかつ前記複数の物理サーバにおいて複数の仮想マシンを稼働させるための仮想化システムにおいて、前記複数の物理サーバの有する各リソースを前記複数の仮想マシンに割り当てるためのリソース割当プログラムであって、コンピュータに、(a)前記複数の物理サーバの各リソース量を記憶するステップと、
(b)前記複数の物理サーバの各稼働負荷を監視するステップと、
(c)前記(a)のステップにおいて記憶した前記各リソース量および前記(b)のステップにおける監視結果である前記各稼働負荷に基づいて、前記各仮想マシンに割り当てる前記物理サーバを選択するステップとを実行させ、
前記(b)のステップにおいては、前記物理サーバの負荷率が自己の負荷率閾値を超えた場合には、警告情報および前記各物理サーバの負荷率を示す負荷情報を出力し、
前記(c)のステップにおいては、前記警告情報を受けて、前記(a)のステップにおいて記憶した前記各リソース量、および前記負荷情報に基づいて、前記各仮想マシンに割り当てる前記物理サーバを選択し、
前記(c)のステップにおいては、負荷率が前記負荷率閾値を超えた前記物理サーバである高負荷物理サーバが複数の前記仮想マシンに割り当てられている場合であって、割り当てられている前記複数の仮想マシンのうち最も高負荷の前記仮想マシンである高負荷仮想マシン以外の前記仮想マシンへの割り当てを、前記高負荷物理サーバから前記高負荷物理サーバ以外の他の前記物理サーバへ変更しても、前記高負荷物理サーバの負荷率が前記負荷率閾値を超えるときには、前記高負荷仮想マシンの負荷量の前記仮想化システムにおける前記複数の仮想マシン中の順位を算出し、前記高負荷仮想マシンへの割り当てを、前記高負荷物理サーバから、前記仮想化システムにおける前記複数の物理サーバ中の保有リソース量の順位が前記算出した順位と同じ前記物理サーバである同順位物理サーバへ変更する、リソース割当プログラム。
[Appendix 4]
In a virtualization system comprising a plurality of physical servers and operating a plurality of virtual machines in the plurality of physical servers, a resource allocation program for allocating each resource of the plurality of physical servers to the plurality of virtual machines And (a) storing each resource amount of the plurality of physical servers in a computer;
(B) monitoring each operating load of the plurality of physical servers;
(C) selecting the physical servers to be allocated to the virtual machines based on the resource amounts stored in the step (a) and the operating loads that are monitoring results in the step (b); And execute
In the step (b), when the load factor of the physical server exceeds its own load factor threshold, warning information and load information indicating the load factor of each physical server are output,
In the step (c), the physical server to be allocated to each virtual machine is selected based on the amount of each resource stored in the step (a) and the load information in response to the warning information. ,
In the step (c), a high-load physical server that is the physical server whose load factor exceeds the load factor threshold is assigned to a plurality of the virtual machines, and the assigned plurality Change the allocation to the virtual machine other than the high-load virtual machine that is the virtual machine with the highest load among the virtual machines from the high-load physical server to the other physical server other than the high-load physical server When the load factor of the high load physical server exceeds the load factor threshold value, the rank of the load amount of the high load virtual machine among the virtual machines in the virtualization system is calculated, and the high load virtual machine The ranking of the amount of resources held in the plurality of physical servers in the virtualization system is calculated from the high load physical server. Change position to ties physical server which is the same the physical server, resource allocation program.

[付記5]
前記(c)のステップにおいては、前記同順位物理サーバを前記高負荷仮想マシンに割り当てた場合、前記同順位物理サーバが自己の前記負荷率閾値以下で稼働可能か否かを判定し、稼働できない場合には、前記同順位物理サーバが割り当てられている1または複数の前記仮想マシンであって前記高負荷仮想マシン以外の他の前記仮想マシンへの割り当てを、前記同順位物理サーバから他の前記物理サーバへ変更する、付記4に記載のリソース割当プログラム。
[Appendix 5]
In the step (c), when the same-order physical server is assigned to the high-load virtual machine, it is determined whether or not the same-order physical server can be operated at or below its own load factor threshold and cannot be operated. In the case, one or a plurality of the virtual machines to which the same-order physical server is assigned and assignment to the other virtual machines other than the high-load virtual machine is performed from the same-order physical server to the other virtual machines. The resource allocation program according to appendix 4, which is changed to a physical server.

[付記6]
前記(c)のステップにおいては、前記警告情報を受けて、前記(a)のステップにおいて記憶した前記各リソース量、および前記負荷情報に基づいて、前記複数の仮想マシンの各々にどの前記物理サーバを割り当てるかを示す割り当て計画を作成し、
前記(b)のステップにおいては、さらに、前記各仮想マシンにどの前記物理サーバがどれぐらいの期間割り当てられてきたかの稼働履歴を記録し、
前記(c)のステップにおいては、前記割り当て計画において前記物理サーバの割り当てが変更される前記仮想マシンの、所定期間における前記物理サーバの割り当て変更回数が所定値以上であるか否かを前記稼働履歴に基づいて判定し、前記所定値以上である場合には、前記割り当て計画に関わらず前記仮想マシンに割り当てられる前記物理サーバを変更しない、付記4または5に記載のリソース割当プログラム。
[Appendix 6]
In the step (c), the physical server is assigned to each of the plurality of virtual machines based on the resource amounts and the load information stored in the step (a) upon receiving the warning information. Create an allocation plan that shows whether
In the step (b), an operation history of which physical server has been allocated to each virtual machine for how long is recorded.
In the step (c), it is determined whether or not the number of physical server allocation changes in a predetermined period of the virtual machine whose physical server allocation is changed in the allocation plan is greater than or equal to a predetermined value. The resource allocation program according to appendix 4 or 5, wherein the physical server allocated to the virtual machine is not changed regardless of the allocation plan if the physical server is determined based on

11 稼働状況管理部
12 供給リソース管理部
13 リソース割当部
26 仮想マシンマイグレーション命令発行部
27 仮想マシン配置計画部
101 CPU
102 メインメモリ
103 ハードディスク
104 入力インターフェイス
105 表示コントローラ
106 データリーダ/ライタ
107 通信インターフェイス
121 バス
201 リソース割当装置
202 稼働システム
300 仮想化システム
301 仮想化システム

DESCRIPTION OF SYMBOLS 11 Operation | movement condition management part 12 Supply resource management part 13 Resource allocation part 26 Virtual machine migration command issue part 27 Virtual machine arrangement | positioning plan part 101 CPU
DESCRIPTION OF SYMBOLS 102 Main memory 103 Hard disk 104 Input interface 105 Display controller 106 Data reader / writer 107 Communication interface 121 Bus 201 Resource allocation apparatus 202 Operating system 300 Virtualization system 301 Virtualization system

Claims (8)

複数の物理サーバを備えかつ前記複数の物理サーバにおいて複数の仮想マシンを稼働させるための仮想化システムにおいて、前記複数の物理サーバの有する各リソースを前記複数の仮想マシンに割り当てるためのリソース割当装置であって、
前記複数の物理サーバの各リソース量を記憶するためのリソース管理部と、
前記複数の物理サーバの各稼働負荷を監視するための稼働状況管理部と、
前記リソース管理部の記憶する前記各リソース量および前記稼働状況管理部の監視結果である前記各稼働負荷に基づいて、前記各仮想マシンに割り当てる前記物理サーバを選択するためのリソース割当部とを備え、
前記稼働状況管理部は、前記各物理サーバの負荷率閾値を記憶し、前記物理サーバの負荷率が前記負荷率閾値を超えた場合には、前記リソース割当部へ警告情報および前記各物理サーバの負荷率を示す負荷情報を出力し、
前記リソース割当部は、前記警告情報を受けて、前記リソース管理部の記憶する前記各リソース量、および前記負荷情報に基づいて、前記各仮想マシンに割り当てる前記物理サーバを選択し、
前記リソース割当部は、負荷率が前記負荷率閾値を超えた前記物理サーバである高負荷物理サーバが複数の前記仮想マシンに割り当てられている場合であって、割り当てられている前記複数の仮想マシンのうち最も高負荷の前記仮想マシンである高負荷仮想マシン以外の前記仮想マシンへの割り当てを、前記高負荷物理サーバから前記高負荷物理サーバ以外の他の前記物理サーバへ変更しても、前記高負荷物理サーバの負荷率が前記負荷率閾値を超えるときには、前記高負荷仮想マシンの負荷量の前記仮想化システムにおける前記複数の仮想マシン中の順位を算出し、前記高負荷仮想マシンへの割り当てを、前記高負荷物理サーバから、前記仮想化システムにおける前記複数の物理サーバ中の保有リソース量の順位が前記算出した順位と同じ前記物理サーバである同順位物理サーバへ変更する、リソース割当装置。
In a virtualization system comprising a plurality of physical servers and operating a plurality of virtual machines on the plurality of physical servers, a resource allocation device for allocating each resource of the plurality of physical servers to the plurality of virtual machines There,
A resource management unit for storing the amount of each resource of the plurality of physical servers;
An operational status management unit for monitoring each operational load of the plurality of physical servers;
A resource allocation unit for selecting the physical server to be allocated to each virtual machine based on each resource amount stored in the resource management unit and each operation load that is a monitoring result of the operation status management unit; ,
The operating status management unit stores a load factor threshold value of each physical server, and when the load factor of the physical server exceeds the load factor threshold value, the resource allocation unit is notified of warning information and each physical server Outputs load information indicating the load factor,
The resource allocation unit receives the warning information, selects the physical server to be allocated to each virtual machine based on each resource amount stored in the resource management unit and the load information,
The resource allocation unit is a case where a high-load physical server that is the physical server whose load factor exceeds the load factor threshold is allocated to the plurality of virtual machines, and the plurality of virtual machines that are allocated Even if the assignment to the virtual machine other than the high-load virtual machine that is the most heavily loaded virtual machine is changed from the high-load physical server to another physical server other than the high-load physical server, When the load factor of the high load physical server exceeds the load factor threshold, the rank of the load amount of the high load virtual machine in the virtual machine in the virtualization system is calculated and assigned to the high load virtual machine From the high-load physical server, the ranking of the amount of resources held in the plurality of physical servers in the virtualization system is the same as the calculated ranking. To change to the same rank physical server which is a serial physical server, resource allocation device.
前記リソース割当部は、前記同順位物理サーバを前記高負荷仮想マシンに割り当てた場合、前記同順位物理サーバが自己の前記負荷率閾値以下で稼働可能か否かを判定し、稼働できない場合には、前記同順位物理サーバが割り当てられている1または複数の前記仮想マシンであって前記高負荷仮想マシン以外の他の前記仮想マシンへの割り当てを、前記同順位物理サーバから他の前記物理サーバへ変更する、請求項1に記載のリソース割当装置。   When the resource allocating unit allocates the same-order physical server to the high-load virtual machine, the resource allocation unit determines whether the same-order physical server can operate at or below the load factor threshold of its own. , One or a plurality of the virtual machines to which the same-order physical server is assigned, and the assignment to the other virtual machines other than the high-load virtual machine is performed from the same-order physical server to the other physical servers The resource allocation device according to claim 1, wherein the resource allocation device is changed. 前記リソース割当部は、前記警告情報を受けて、前記リソース管理部の記憶する前記各リソース量、および前記負荷情報に基づいて、前記複数の仮想マシンの各々にどの前記物理サーバを割り当てるかを示す割り当て計画を作成し、
前記稼働状況管理部は、さらに、前記各仮想マシンにどの前記物理サーバがどれぐらいの期間割り当てられてきたかの稼働履歴を記録し、
前記リソース割当部は、前記割り当て計画において前記物理サーバの割り当てが変更される前記仮想マシンの、所定期間における前記物理サーバの割り当て変更回数が所定値以上であるか否かを前記稼働履歴に基づいて判定し、前記所定値以上である場合には、前記割り当て計画に関わらず前記仮想マシンに割り当てられる前記物理サーバを変更しない、請求項1または2に記載のリソース割当装置。
The resource allocation unit receives the warning information and indicates which physical server is allocated to each of the plurality of virtual machines based on each resource amount stored in the resource management unit and the load information Create an allocation plan,
The operation status management unit further records an operation history of how long the physical server has been allocated to each virtual machine,
Based on the operation history, the resource allocation unit determines whether the number of physical server allocation changes in a predetermined period of the virtual machine whose physical server allocation is changed in the allocation plan is greater than or equal to a predetermined value. 3. The resource allocation device according to claim 1, wherein when the determination is greater than or equal to the predetermined value, the physical server allocated to the virtual machine is not changed regardless of the allocation plan.
複数の物理サーバを備えかつ前記複数の物理サーバにおいて複数の仮想マシンを稼働させるための仮想化システムにおいて、前記複数の物理サーバの有する各リソースを前記複数の仮想マシンに割り当てるためのリソース割当装置であって、
前記複数の物理サーバの各リソース量を記憶するためのリソース管理部と、
前記複数の物理サーバの各稼働負荷を監視するための稼働状況管理部と、
前記リソース管理部の記憶する前記各リソース量および前記稼働状況管理部の監視結果である前記各稼働負荷に基づいて、前記各仮想マシンに割り当てる前記物理サーバを選択するためのリソース割当部とを備え、
前記稼働状況管理部は、前記各物理サーバの負荷率閾値を記憶し、前記物理サーバの負荷率が前記負荷率閾値を超えた場合には、前記リソース割当部へ警告情報および前記各物理サーバの負荷率を示す負荷情報を出力し、
前記リソース割当部は、前記警告情報を受けて、前記リソース管理部の記憶する前記各リソース量、および前記負荷情報に基づいて、前記複数の仮想マシンの各々にどの前記物理サーバを割り当てるかを示す割り当て計画を作成し、
前記稼働状況管理部は、さらに、前記各仮想マシンにどの前記物理サーバがどれぐらいの期間割り当てられてきたかの稼働履歴を記録し、
前記リソース割当部は、前記割り当て計画において前記物理サーバの割り当てが変更される前記仮想マシンの、所定期間における前記物理サーバの割り当て変更回数が所定値以上であるか否かを前記稼働履歴に基づいて判定し、前記所定値以上である場合には、前記割り当て計画に関わらず前記仮想マシンに割り当てられる前記物理サーバを変更しない、リソース割当装置。
In a virtualization system comprising a plurality of physical servers and operating a plurality of virtual machines on the plurality of physical servers, a resource allocation device for allocating each resource of the plurality of physical servers to the plurality of virtual machines There,
A resource management unit for storing the amount of each resource of the plurality of physical servers;
An operational status management unit for monitoring each operational load of the plurality of physical servers;
A resource allocation unit for selecting the physical server to be allocated to each virtual machine based on each resource amount stored in the resource management unit and each operation load that is a monitoring result of the operation status management unit; ,
The operating status management unit stores a load factor threshold value of each physical server, and when the load factor of the physical server exceeds the load factor threshold value, the resource allocation unit is notified of warning information and each physical server Outputs load information indicating the load factor,
The resource allocation unit receives the warning information and indicates which physical server is allocated to each of the plurality of virtual machines based on each resource amount stored in the resource management unit and the load information Create an allocation plan,
The operation status management unit further records an operation history of how long the physical server has been allocated to each virtual machine,
Based on the operation history, the resource allocation unit determines whether the number of physical server allocation changes in a predetermined period of the virtual machine whose physical server allocation is changed in the allocation plan is greater than or equal to a predetermined value. A resource allocating apparatus that determines and does not change the physical server allocated to the virtual machine regardless of the allocation plan when it is equal to or greater than the predetermined value.
複数の物理サーバを備えかつ前記複数の物理サーバにおいて複数の仮想マシンを稼働させるための仮想化システムにおいて、前記複数の物理サーバの有する各リソースを前記複数の仮想マシンに割り当てるためのリソース割当方法であって、
(a)前記複数の物理サーバの各リソース量を記憶するステップと、
(b)前記複数の物理サーバの各稼働負荷を監視するステップと、
(c)前記(a)のステップにおいて記憶した前記各リソース量および前記(b)のステップにおける監視結果である前記各稼働負荷に基づいて、前記各仮想マシンに割り当てる前記物理サーバを選択するステップとを含み、
前記(b)のステップにおいては、前記物理サーバの負荷率が自己の負荷率閾値を超えた場合には、警告情報および前記各物理サーバの負荷率を示す負荷情報を出力し、
前記(c)のステップにおいては、前記警告情報を受けて、前記(a)のステップにおいて記憶した前記各リソース量、および前記負荷情報に基づいて、前記各仮想マシンに割り当てる前記物理サーバを選択し、
前記(c)のステップにおいては、負荷率が前記負荷率閾値を超えた前記物理サーバである高負荷物理サーバが複数の前記仮想マシンに割り当てられている場合であって、割り当てられている前記複数の仮想マシンのうち最も高負荷の前記仮想マシンである高負荷仮想マシン以外の前記仮想マシンへの割り当てを、前記高負荷物理サーバから前記高負荷物理サーバ以外の他の前記物理サーバへ変更しても、前記高負荷物理サーバの負荷率が前記負荷率閾値を超えるときには、前記高負荷仮想マシンの負荷量の前記仮想化システムにおける前記複数の仮想マシン中の順位を算出し、前記高負荷仮想マシンへの割り当てを、前記高負荷物理サーバから、前記仮想化システムにおける前記複数の物理サーバ中の保有リソース量の順位が前記算出した順位と同じ前記物理サーバである同順位物理サーバへ変更する、リソース割当方法。
In a virtualization system comprising a plurality of physical servers and operating a plurality of virtual machines on the plurality of physical servers, a resource allocation method for allocating each resource of the plurality of physical servers to the plurality of virtual machines There,
(A) storing each resource amount of the plurality of physical servers;
(B) monitoring each operating load of the plurality of physical servers;
(C) selecting the physical servers to be allocated to the virtual machines based on the resource amounts stored in the step (a) and the operating loads that are monitoring results in the step (b); Including
In the step (b), when the load factor of the physical server exceeds its own load factor threshold, warning information and load information indicating the load factor of each physical server are output,
In the step (c), the physical server to be allocated to each virtual machine is selected based on the amount of each resource stored in the step (a) and the load information in response to the warning information. ,
In the step (c), a high-load physical server that is the physical server whose load factor exceeds the load factor threshold is assigned to a plurality of the virtual machines, and the assigned plurality Change the allocation to the virtual machine other than the high-load virtual machine that is the virtual machine with the highest load among the virtual machines from the high-load physical server to the other physical server other than the high-load physical server When the load factor of the high load physical server exceeds the load factor threshold value, the rank of the load amount of the high load virtual machine among the virtual machines in the virtualization system is calculated, and the high load virtual machine The ranking of the amount of resources held in the plurality of physical servers in the virtualization system is calculated from the high load physical server. Change position to ties physical server which is the same the physical servers, the resource allocation method.
複数の物理サーバを備えかつ前記複数の物理サーバにおいて複数の仮想マシンを稼働させるための仮想化システムにおいて、前記複数の物理サーバの有する各リソースを前記複数の仮想マシンに割り当てるためのリソース割当方法であって、
(a)前記複数の物理サーバの各リソース量を記憶するステップと、
(b)前記複数の物理サーバの各稼働負荷を監視するステップと、
(c)前記(a)のステップにおいて記憶した前記各リソース量および前記(b)のステップにおける監視結果である前記各稼働負荷に基づいて、前記各仮想マシンに割り当てる前記物理サーバを選択するステップとを含み、
前記(b)のステップにおいては、前記物理サーバの負荷率が自己の負荷率閾値を超え
た場合には、警告情報および前記各物理サーバの負荷率を示す負荷情報を出力し、
前記(c)のステップにおいては、前記警告情報を受けて、前記(a)のステップにおいて記憶した前記各リソース量、および前記負荷情報に基づいて、前記複数の仮想マシンの各々にどの前記物理サーバを割り当てるかを示す割り当て計画を作成し、
前記(b)のステップにおいては、さらに、前記各仮想マシンにどの前記物理サーバがどれぐらいの期間割り当てられてきたかの稼働履歴を記録し、
前記(c)のステップにおいては、前記割り当て計画において前記物理サーバの割り当てが変更される前記仮想マシンの、所定期間における前記物理サーバの割り当て変更回数が所定値以上であるか否かを前記稼働履歴に基づいて判定し、前記所定値以上である場合には、前記割り当て計画に関わらず前記仮想マシンに割り当てられる前記物理サーバを変更しない、リソース割当方法。
In a virtualization system comprising a plurality of physical servers and operating a plurality of virtual machines on the plurality of physical servers, a resource allocation method for allocating each resource of the plurality of physical servers to the plurality of virtual machines There,
(A) storing each resource amount of the plurality of physical servers;
(B) monitoring each operating load of the plurality of physical servers;
(C) selecting the physical servers to be allocated to the virtual machines based on the resource amounts stored in the step (a) and the operating loads that are monitoring results in the step (b); Including
In the step (b), when the load factor of the physical server exceeds its own load factor threshold, warning information and load information indicating the load factor of each physical server are output,
In the step (c), the physical server is assigned to each of the plurality of virtual machines based on the resource amounts and the load information stored in the step (a) upon receiving the warning information. Create an allocation plan that shows whether
In the step (b), an operation history of which physical server has been allocated to each virtual machine for how long is recorded.
In the step (c), it is determined whether or not the number of physical server allocation changes in a predetermined period of the virtual machine whose physical server allocation is changed in the allocation plan is greater than or equal to a predetermined value. A resource allocation method in which the physical server allocated to the virtual machine is not changed regardless of the allocation plan if the physical server is determined based on the allocation plan and is equal to or greater than the predetermined value.
複数の物理サーバを備えかつ前記複数の物理サーバにおいて複数の仮想マシンを稼働させるための仮想化システムにおいて、前記複数の物理サーバの有する各リソースを前記複数の仮想マシンに割り当てるためのリソース割当プログラムであって、コンピュータに、(a)前記複数の物理サーバの各リソース量を記憶するステップと、
(b)前記複数の物理サーバの各稼働負荷を監視するステップと、
(c)前記(a)のステップにおいて記憶した前記各リソース量および前記(b)のステップにおける監視結果である前記各稼働負荷に基づいて、前記各仮想マシンに割り当てる前記物理サーバを選択するステップとを実行させ、
前記(b)のステップにおいては、前記物理サーバの負荷率が自己の負荷率閾値を超えた場合には、警告情報および前記各物理サーバの負荷率を示す負荷情報を出力し、
前記(c)のステップにおいては、前記警告情報を受けて、前記(a)のステップにおいて記憶した前記各リソース量、および前記負荷情報に基づいて、前記各仮想マシンに割り当てる前記物理サーバを選択し、
前記(c)のステップにおいては、負荷率が前記負荷率閾値を超えた前記物理サーバである高負荷物理サーバが複数の前記仮想マシンに割り当てられている場合であって、割り当てられている前記複数の仮想マシンのうち最も高負荷の前記仮想マシンである高負荷仮想マシン以外の前記仮想マシンへの割り当てを、前記高負荷物理サーバから前記高負荷物理サーバ以外の他の前記物理サーバへ変更しても、前記高負荷物理サーバの負荷率が前記負荷率閾値を超えるときには、前記高負荷仮想マシンの負荷量の前記仮想化システムにおける前記複数の仮想マシン中の順位を算出し、前記高負荷仮想マシンへの割り当てを、前記高負荷物理サーバから、前記仮想化システムにおける前記複数の物理サーバ中の保有リソース量の順位が前記算出した順位と同じ前記物理サーバである同順位物理サーバへ変更する、リソース割当プログラム。
In a virtualization system comprising a plurality of physical servers and operating a plurality of virtual machines in the plurality of physical servers, a resource allocation program for allocating each resource of the plurality of physical servers to the plurality of virtual machines And (a) storing each resource amount of the plurality of physical servers in a computer;
(B) monitoring each operating load of the plurality of physical servers;
(C) selecting the physical servers to be allocated to the virtual machines based on the resource amounts stored in the step (a) and the operating loads that are monitoring results in the step (b); And execute
In the step (b), when the load factor of the physical server exceeds its own load factor threshold, warning information and load information indicating the load factor of each physical server are output,
In the step (c), the physical server to be allocated to each virtual machine is selected based on the amount of each resource stored in the step (a) and the load information in response to the warning information. ,
In the step (c), a high-load physical server that is the physical server whose load factor exceeds the load factor threshold is assigned to a plurality of the virtual machines, and the assigned plurality Change the allocation to the virtual machine other than the high-load virtual machine that is the virtual machine with the highest load among the virtual machines from the high-load physical server to the other physical server other than the high-load physical server When the load factor of the high load physical server exceeds the load factor threshold value, the rank of the load amount of the high load virtual machine among the virtual machines in the virtualization system is calculated, and the high load virtual machine The ranking of the amount of resources held in the plurality of physical servers in the virtualization system is calculated from the high load physical server. Change position to ties physical server which is the same the physical server, resource allocation program.
複数の物理サーバを備えかつ前記複数の物理サーバにおいて複数の仮想マシンを稼働させるための仮想化システムにおいて、前記複数の物理サーバの有する各リソースを前記複数の仮想マシンに割り当てるためのリソース割当プログラムであって、コンピュータに、(a)前記複数の物理サーバの各リソース量を記憶するステップと、
(b)前記複数の物理サーバの各稼働負荷を監視するステップと、
(c)前記(a)のステップにおいて記憶した前記各リソース量および前記(b)のステップにおける監視結果である前記各稼働負荷に基づいて、前記各仮想マシンに割り当てる前記物理サーバを選択するステップとを実行させ、
前記(b)のステップにおいては、前記物理サーバの負荷率が自己の負荷率閾値を超えた場合には、警告情報および前記各物理サーバの負荷率を示す負荷情報を出力し、
前記(c)のステップにおいては、前記警告情報を受けて、前記(a)のステップにおいて記憶した前記各リソース量、および前記負荷情報に基づいて、前記複数の仮想マシンの各々にどの前記物理サーバを割り当てるかを示す割り当て計画を作成し、
前記(b)のステップにおいては、さらに、前記各仮想マシンにどの前記物理サーバが
どれぐらいの期間割り当てられてきたかの稼働履歴を記録し、
前記(c)のステップにおいては、前記割り当て計画において前記物理サーバの割り当てが変更される前記仮想マシンの、所定期間における前記物理サーバの割り当て変更回数が所定値以上であるか否かを前記稼働履歴に基づいて判定し、前記所定値以上である場合には、前記割り当て計画に関わらず前記仮想マシンに割り当てられる前記物理サーバを変更しない、リソース割当プログラム。
In a virtualization system comprising a plurality of physical servers and operating a plurality of virtual machines in the plurality of physical servers, a resource allocation program for allocating each resource of the plurality of physical servers to the plurality of virtual machines And (a) storing each resource amount of the plurality of physical servers in a computer;
(B) monitoring each operating load of the plurality of physical servers;
(C) selecting the physical servers to be allocated to the virtual machines based on the resource amounts stored in the step (a) and the operating loads that are monitoring results in the step (b); And execute
In the step (b), when the load factor of the physical server exceeds its own load factor threshold, warning information and load information indicating the load factor of each physical server are output,
In the step (c), the physical server is assigned to each of the plurality of virtual machines based on the resource amounts and the load information stored in the step (a) upon receiving the warning information. Create an allocation plan that shows whether
In the step (b), an operation history of which physical server has been allocated to each virtual machine for how long is recorded.
In the step (c), it is determined whether or not the number of physical server allocation changes in a predetermined period of the virtual machine whose physical server allocation is changed in the allocation plan is greater than or equal to a predetermined value. And a resource allocation program that does not change the physical server allocated to the virtual machine regardless of the allocation plan.
JP2010050195A 2010-03-08 2010-03-08 Resource allocation apparatus, resource allocation method and resource allocation program Pending JP2011186701A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010050195A JP2011186701A (en) 2010-03-08 2010-03-08 Resource allocation apparatus, resource allocation method and resource allocation program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010050195A JP2011186701A (en) 2010-03-08 2010-03-08 Resource allocation apparatus, resource allocation method and resource allocation program

Publications (1)

Publication Number Publication Date
JP2011186701A true JP2011186701A (en) 2011-09-22

Family

ID=44792903

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010050195A Pending JP2011186701A (en) 2010-03-08 2010-03-08 Resource allocation apparatus, resource allocation method and resource allocation program

Country Status (1)

Country Link
JP (1) JP2011186701A (en)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101529163B1 (en) * 2013-02-15 2015-06-16 주식회사 케이티 Registration system and method for virtual desktop service of client that has multiple user accounts
KR101539619B1 (en) * 2013-10-31 2015-07-27 삼성에스디에스 주식회사 Apparatus and Method for Changing Resource Using Pattern Information, and Recording Medium Using the Same
JP2016129043A (en) * 2012-10-21 2016-07-14 マカフィー, インコーポレイテッド Providing virtual security appliance architecture to virtual cloud infrastructure
KR102062157B1 (en) * 2019-04-29 2020-01-03 오케스트로 주식회사 Vitual machine placement method and virtual machine placement device implementing the same
KR102126434B1 (en) * 2019-12-27 2020-06-25 오케스트로 주식회사 Vitual machine placement method through workload prediction using deep learning and virtual machine placement device implementing the same
KR102135209B1 (en) * 2019-08-19 2020-07-17 오케스트로 주식회사 Virtual machine placement simulation method and virtual machine placement simulation device implementing the same
KR102135208B1 (en) * 2019-07-31 2020-07-17 오케스트로 주식회사 Virtual machine placement method using scheduling and virtual machine placement device implementing the same
KR102135210B1 (en) * 2020-01-23 2020-07-17 오케스트로 주식회사 Virtaul machine recommendation method and virtual machine recommendation system using the same
WO2020171234A1 (en) * 2019-02-22 2020-08-27 日本電信電話株式会社 Method and program for optimally allocating software of offload server
KR20210015636A (en) * 2019-07-31 2021-02-10 오케스트로 주식회사 Virtual machine workload prediction method, virtual machine placement method and virtual machine placement device implementing the same
KR20210021907A (en) * 2019-08-19 2021-03-02 오케스트로 주식회사 Virtual machine placement simulation method using deep learning and virtual machine placement simulation device implementing the same

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016129043A (en) * 2012-10-21 2016-07-14 マカフィー, インコーポレイテッド Providing virtual security appliance architecture to virtual cloud infrastructure
KR101529163B1 (en) * 2013-02-15 2015-06-16 주식회사 케이티 Registration system and method for virtual desktop service of client that has multiple user accounts
KR101539619B1 (en) * 2013-10-31 2015-07-27 삼성에스디에스 주식회사 Apparatus and Method for Changing Resource Using Pattern Information, and Recording Medium Using the Same
WO2020171234A1 (en) * 2019-02-22 2020-08-27 日本電信電話株式会社 Method and program for optimally allocating software of offload server
US11614927B2 (en) 2019-02-22 2023-03-28 Nippon Telegraph And Telephone Corporation Off-load servers software optimal placement method and program
JP7063289B2 (en) 2019-02-22 2022-05-09 日本電信電話株式会社 Optimal software placement method and program for offload servers
JP2020137017A (en) * 2019-02-22 2020-08-31 日本電信電話株式会社 Optimum arrangement method for software of off-road server, and program
KR102062157B1 (en) * 2019-04-29 2020-01-03 오케스트로 주식회사 Vitual machine placement method and virtual machine placement device implementing the same
KR102316749B1 (en) 2019-07-31 2021-10-25 오케스트로 주식회사 Virtual machine workload prediction method, virtual machine placement method and virtual machine placement device implementing the same
KR20210015636A (en) * 2019-07-31 2021-02-10 오케스트로 주식회사 Virtual machine workload prediction method, virtual machine placement method and virtual machine placement device implementing the same
KR102135208B1 (en) * 2019-07-31 2020-07-17 오케스트로 주식회사 Virtual machine placement method using scheduling and virtual machine placement device implementing the same
KR20210021907A (en) * 2019-08-19 2021-03-02 오케스트로 주식회사 Virtual machine placement simulation method using deep learning and virtual machine placement simulation device implementing the same
KR102347371B1 (en) 2019-08-19 2022-01-05 오케스트로 주식회사 Virtual machine placement simulation method using deep learning and virtual machine placement simulation device implementing the same
KR102135209B1 (en) * 2019-08-19 2020-07-17 오케스트로 주식회사 Virtual machine placement simulation method and virtual machine placement simulation device implementing the same
KR102126434B1 (en) * 2019-12-27 2020-06-25 오케스트로 주식회사 Vitual machine placement method through workload prediction using deep learning and virtual machine placement device implementing the same
KR102135210B1 (en) * 2020-01-23 2020-07-17 오케스트로 주식회사 Virtaul machine recommendation method and virtual machine recommendation system using the same

Similar Documents

Publication Publication Date Title
JP2011186701A (en) Resource allocation apparatus, resource allocation method and resource allocation program
JP4240062B2 (en) Computer system, performance measurement method, and management server device
JP5400482B2 (en) Management computer, resource management method, resource management program, recording medium, and information processing system
US9183016B2 (en) Adaptive task scheduling of Hadoop in a virtualized environment
US7937615B2 (en) Method for improving reliability of multi-core processor computer
EP2701064B1 (en) Robust tenant placement and migration in database-as-a-service environments
JP5577412B2 (en) Computer system, migration method and management server
US9852008B2 (en) Computer-readable recording medium storing execution information notification program, information processing apparatus, and information processing system
US20140359356A1 (en) Information processing apparatus and method for shutting down virtual machines
JP6186787B2 (en) Data transfer device, data transfer system, data transfer method and program
US9329937B1 (en) High availability architecture
JP5585140B2 (en) Virtual computer system management program, management apparatus, and management method
US20170017511A1 (en) Method for memory management in virtual machines, and corresponding system and computer program product
JP5589218B2 (en) Computer system and management computer
US9176787B2 (en) Preserving, from resource management adjustment, portions of an overcommitted resource managed by a hypervisor
JP2009205696A (en) Control method of multi-core processor computer
US11740921B2 (en) Coordinated container scheduling for improved resource allocation in virtual computing environment
JP2017041191A (en) Resource management apparatus, resource management program, and resource management method
KR20100074920A (en) Apparatus and method for load balancing in multi-core system
JP5178778B2 (en) Virtual machine and CPU allocation method
KR20110069717A (en) Method, data processing program, and computer program product to compensate for coupling overhead in a distributed computing system, and corresponding overhead calculator for a distributed computing system and corresponding computer system
US11635996B2 (en) Management system and management method for migrating a business system operating on a target infrastructure
JP6239400B2 (en) Control device
JP2021196687A (en) Computer system and computer system control method
JP2010026828A (en) Method for controlling virtual computer