JP2011170679A - Virtual computer system and resource distribution control method of the same - Google Patents
Virtual computer system and resource distribution control method of the same Download PDFInfo
- Publication number
- JP2011170679A JP2011170679A JP2010034834A JP2010034834A JP2011170679A JP 2011170679 A JP2011170679 A JP 2011170679A JP 2010034834 A JP2010034834 A JP 2010034834A JP 2010034834 A JP2010034834 A JP 2010034834A JP 2011170679 A JP2011170679 A JP 2011170679A
- Authority
- JP
- Japan
- Prior art keywords
- user
- virtual machine
- memory
- allocated
- individual virtual
- 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
Links
- 238000000034 method Methods 0.000 title claims description 103
- 238000012545 processing Methods 0.000 claims abstract description 150
- 238000013468 resource allocation Methods 0.000 claims abstract description 136
- 230000008859 change Effects 0.000 claims abstract description 51
- 230000004044 response Effects 0.000 claims abstract description 14
- 239000000284 extract Substances 0.000 claims abstract description 6
- 230000015654 memory Effects 0.000 claims description 189
- 230000008569 process Effects 0.000 claims description 48
- 230000003247 decreasing effect Effects 0.000 claims description 8
- 230000002829 reductive effect Effects 0.000 claims description 8
- 238000010586 diagram Methods 0.000 description 17
- 230000007704 transition Effects 0.000 description 13
- 238000007726 management method Methods 0.000 description 10
- 238000004891 communication Methods 0.000 description 8
- 230000006870 function Effects 0.000 description 6
- 230000007423 decrease Effects 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 5
- 230000006266 hibernation Effects 0.000 description 4
- 238000002360 preparation method Methods 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 238000012508 change request Methods 0.000 description 2
- 238000011156 evaluation Methods 0.000 description 2
- 230000014509 gene expression Effects 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 230000008520 organization Effects 0.000 description 2
- 238000007639 printing Methods 0.000 description 2
- 230000001960 triggered effect Effects 0.000 description 2
- 238000010200 validation analysis Methods 0.000 description 2
- 102100027207 CD27 antigen Human genes 0.000 description 1
- 101000914511 Homo sapiens CD27 antigen Proteins 0.000 description 1
- 101000580720 Homo sapiens RNA-binding protein 25 Proteins 0.000 description 1
- 102100027478 RNA-binding protein 25 Human genes 0.000 description 1
- 241000700605 Viruses Species 0.000 description 1
- 230000001174 ascending effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013523 data management Methods 0.000 description 1
- 230000000593 degrading effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 230000008570 general process Effects 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000000691 measurement method Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000013508 migration Methods 0.000 description 1
- 230000005012 migration Effects 0.000 description 1
- 230000036314 physical performance Effects 0.000 description 1
- 230000003449 preventive effect Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 238000007616 round robin method Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 239000000725 suspension Substances 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Images
Landscapes
- Memory System Of A Hierarchy Structure (AREA)
Abstract
Description
本発明は、仮想計算機システムおよびその資源配分制御方法に関するものであり、より詳細には、仮想計算機システム内に複数の個別仮想計算機を構築して、それぞれの個別仮想計算機を複数の個別ユーザの各々に割り当て、各個別ユーザからのサービス要求はWEBサービスを用いて個別仮想計算機管理サブシステムにおいて受信し、通常各個別仮想計算機に配分される資源を、個別ユーザの一時的なサービス要求に際して変更可能とした仮想計算機システムおよびその資源配分制御方法に関するものである。 The present invention relates to a virtual machine system and a resource allocation control method thereof, and more specifically, a plurality of individual virtual machines are constructed in the virtual machine system, and each individual virtual machine is assigned to each of a plurality of individual users. The service request from each individual user is received by the individual virtual machine management subsystem using the WEB service, and the resources normally allocated to each individual virtual machine can be changed upon a temporary service request of the individual user. The present invention relates to a virtual computer system and a resource allocation control method thereof.
従来から、仮想計算機モニタプログラム(VMモニタ)として知られた制御プログラムにより実計算機上で複数の仮想計算機(ゲストVM)を動作可能とし、ゲストVMの各々がオペレーティングシステムOSで動作できる仮想計算機システムが大型コンピュータの利用技術の一つとして知られている。このような仮想計算機の技術を応用すれば、1つの大型の仮想計算機上に、複数の個別仮想計算機を構築し、その個別仮想計算機を個別のユーザの利用に供するシステムを提供することができる。 Conventionally, a virtual machine system in which a plurality of virtual machines (guest VMs) can be operated on a real machine by a control program known as a virtual machine monitor program (VM monitor), and each guest VM can be operated by an operating system OS. It is known as one of the techniques for using large computers. By applying such virtual machine technology, it is possible to provide a system in which a plurality of individual virtual machines are constructed on one large virtual machine and the individual virtual machines are used by individual users.
例えば、下記の特許文献1(特開平5−324361号公報)には、各仮想計算機上のゲストOSで実行されるコマンドを一元的に取り扱うようにした仮想計算機システムが開示されている。この仮想計算機システムは、仮想計算機システムのハイパーバイザーの表示する制御画面に、仮想計算機上で動作するオペレーティングシステムのコマンドを入力できるようにし、制御画面では、コマンドとそれが実行される各仮想計算機の識別子を対として入力し、コマンドとその実行条件の設定、変更をおこなうことができるように構成したものである。 For example, the following Patent Document 1 (Japanese Patent Laid-Open No. 5-324361) discloses a virtual machine system in which commands executed by a guest OS on each virtual machine are handled in an integrated manner. This virtual machine system enables the input of operating system commands that run on the virtual machine to the control screen displayed by the hypervisor of the virtual machine system. The control screen displays the command and each virtual machine on which it is executed. The identifier is inputted as a pair, and the command and its execution condition can be set and changed.
また、下記の特許文献2(特開2008−293117号公報)には、仮想計算機の性能を監視する方法及び装置の発明が開示されている。この監視方法及び装置は、計算機は、論理的に分割された前記計算機の資源の各々を、第1仮想計算機及び第2仮想計算機として動作させる仮想化プログラムを実行し、前記第1仮想計算機は、第1OSを実行し、前記第2仮想計算機は、第2OSを実行し、前記方法は、前記仮想化プログラムによって前記第1仮想計算機及び前記第2仮想計算機に割り当てられた前記資源に関する情報を、前記仮想化プログラムから取得し、前記第1仮想計算機の性能を示す情報を、前記第1OSから取得し、前記第2仮想計算機の性能を示す情報を、前記第2OSから取得し、前記取得した情報と、前記情報が取得された時刻を示す情報とを記憶装置に格納し、前記時刻を示す情報、前記時刻において取得された前記資源に関する情報及び前記性能を示す情報を出力するようにしたものである。
このような仮想計算機システムで、複数のゲストVMを複数のCPU上で動作させる場合には、ゲストVMがCPU能力を有効に利用できるようにするため、各ゲストVMにCPU資源の配分量(配分比)を決め、この配分量に従って順番にゲストVMを走行させている。 When a plurality of guest VMs are operated on a plurality of CPUs in such a virtual machine system, the CPU resource allocation amount (allocation) is allocated to each guest VM so that the guest VM can effectively use the CPU capacity. Ratio) and the guest VMs are run in order according to the distribution amount.
更に、下記の特許文献3(特開平5−324361号公報)には、CPU配分が不均等であっても、指定したCPU資源の配分比を維持して実CPUの有効利用を図った仮想計算機システムのCPU制御方式が開示されている。この制御方式は、CPU割当情報域16に設けられ、指定されたCPU資源の配分量を消化した回数をゲストVM1〜VMn毎に動作カウンタで記憶し、レディキュー上のゲストVM1〜VMnのCPU資源の配分順序を配分順序制御手段により動作カウンタの動作回数の小さい順番に並べ、動作カウンタの動作回数が同一の場合は配分比の大きい順番にゲストVM1〜VMnのCPU配分を行い、動作回数が異なる場合には、動作回数の少ない順番にゲストVM1〜VMnのCPU配分を行うようにしたものである。
Further, in the following Patent Document 3 (Japanese Patent Laid-Open No. 5-324361), even if the CPU allocation is uneven, a virtual computer that maintains the specified CPU resource allocation ratio and effectively uses the real CPU. A system CPU control scheme is disclosed. This control method is provided in the CPU
仮想計算機システムにおいては、システム総体としてその処理性能の低下を防ぐため、与えられる処理量を事前に計測し個別仮想計算機に適切な負荷となるようにそれぞれの仮想計算機に配分される処理量に制限をかけるか、仮想計算機の稼働状況を実時間で計測し処理能力の低下を起こさないよう、実時間で負荷を制御するなどの防止策をとる必要があった。 In a virtual machine system, in order to prevent a decrease in processing performance as a whole system, the amount of processing given is measured in advance, and the amount of processing allocated to each virtual machine is limited so that the load is appropriate for each individual virtual machine It is necessary to take preventive measures such as controlling the load in real time so that the operating status of the virtual machine is measured in real time and the processing capacity is not reduced.
しかし、ある種のオペレーティングシステム(以下「OS」という)では中央演算処理装置(CPU)の稼働状況を示すデータが抽出できても、他の種類のOSでは出来ないなどの不整合があり、必ずしも意図した通り制御することができないでいた。精緻に負荷を計測し制御することは技術的には可能であるが、制御系のサブシステムが巨大なものとなり、主たる機能を提供する仮想計算機機構に近いコストを必要とするなど実用化する上では大きな障害となっている。簡易な負荷分散のための一般的な技術として、精緻な計測が困難な場合のために、例えばラウンドロビン方式などが提唱され利用されている技術分野はあるが、仮想計算機の分野には必ずしも適切とはいえない。 However, in some types of operating systems (hereinafter referred to as “OS”), data indicating the operating status of the central processing unit (CPU) can be extracted, but there are inconsistencies that cannot be performed in other types of OSs. It was not possible to control as intended. Although it is technically possible to precisely measure and control the load, the control subsystem becomes enormous and requires a cost close to that of the virtual machine mechanism that provides the main functions. It is a big obstacle. As a general technique for simple load balancing, there are technical fields where, for example, the round robin method is proposed and used for cases where precise measurement is difficult, but it is not always appropriate for the virtual computer field. That's not true.
仮想計算機において、一台に構築された大型の仮想計算機上に多数の個別仮想計算機を構築し、その個別仮想計算機を個々のユーザの任意の利用に供するという情報処理システムおいて、全体としての処理性能を低下させることなく、個別仮想計算機の処理能力を変動させようとした場合、これまでに提案されている負荷の計測技術や制御の方式では商用的実現性に困難さがあった。 In an information processing system in which a large number of individual virtual machines are constructed on a large virtual machine constructed in a single virtual machine and the individual virtual machines are used for arbitrary use by individual users, the overall processing When trying to change the processing capacity of an individual virtual machine without degrading the performance, there has been difficulty in commercial feasibility with the load measurement techniques and control methods proposed so far.
理論的には、全ての個別仮想計算機の負荷状況と処理能力を既知の技術で計測し、負荷のバランスを取るなどの方法は容易に考えられるが、個別仮想計算機のユーザが一時的に高性能の仮想計算機を利用したり、一定時間の操作が行われない場合には一時的に低性能の仮想計算機に移動させることなどで資源を節約する、といった細かな要求に応える商用的解決策を提供するには至っていない。 Theoretically, it is possible to easily balance the load by measuring the load status and processing capacity of all individual virtual machines using known technology, but the individual virtual machine users are temporarily in high performance. Provide commercial solutions that respond to the detailed demands of saving resources by using virtual machines or temporarily moving to a low-performance virtual machine when no operation is performed for a certain period of time It has not been done.
計算機を利用するユーザの業務は多岐にわたる。大きな記憶容量を必要とする高度なOSを利用するユーザもいれば、そうでない一般的なOSを利用するユーザもいる。また、ユーザが利用するアプリケーションを同様である。一般的なアプリケーションのみで業務を処理できるユーザもいれば、専門的、高度なアプリケーションを用いて業務を処理するユーザもいる。例えば、文書や表の作成、表計算、簡単な画像処理などの作業は一般的なアプリケーションを用いることができ、高いCPUの処理能力やメモリを必要としない。一方、高度な画像処理などの作業はそのためのアプリケーションを必要とし、高いCPUの処理能力やメモリを必要とする。 The work of users who use computers is diverse. Some users use advanced OSs that require large storage capacities, while others use general OSs that do not. The same application is used by the user. There are users who can process business using only general applications, and there are users who process business using specialized and advanced applications. For example, general applications can be used for operations such as creation of documents and tables, spreadsheets, and simple image processing, and high CPU processing capacity and memory are not required. On the other hand, work such as advanced image processing requires an application for that purpose, and requires high CPU processing capacity and memory.
また、同じユーザであっても、1日あるいは1週間、1ケ月という単位でみた場合、定常的に高度なCPUの処理能力を必要とするものではなく、専門的、高度なアプリケーションを用いた業務を処理する時もあれば、一般的なドキュメント作成などの業務を処理する時もある。 In addition, even if the same user is seen in units of one day, one week, or one month, it does not require a high level of CPU processing ability on a regular basis, and it uses professional and advanced applications. There are also times when processing general document creation and other tasks.
個々のユーザに個別仮想計算機を割り当て各個別仮想計算機に割り当てる資源の配分を考える時、特定の企業内あるいは特定の企業内の特定の業務を担当する組織単位などの場合、各個別仮想計算機の処理能力や割り当てる資源は各ユーザの平均的な業務に基づいて平均化することもでき、そのようにしても資源の有効利用を大きく阻害することもない。しかしながら、不特定多数の個人ユーザに対して個別仮想計算機を提供するサービスを考えた場合には、個々のユーザの要求する水準がまちまちであるから、標準的な個別仮想計算機を提供するシステムでは柔軟な対応ができず、資源の有効利用も阻害されるという問題点がある。 When assigning individual virtual machines to individual users and considering the allocation of resources to be assigned to each individual virtual machine, in the case of an organizational unit in charge of a specific business within a specific company or a specific company, the processing of each individual virtual machine The ability and the resources to be allocated can be averaged based on the average work of each user, and even if so, the effective use of the resources is not significantly hindered. However, when considering a service that provides individual virtual machines to an unspecified number of individual users, the level required by individual users varies, and the system that provides standard individual virtual machines is flexible. There is a problem that it is not possible to cope with it effectively and the effective use of resources is hindered.
そこで、本発明の目的は、事前に設定した個別仮想計算機の処理能力、資源配分の制御手順に加えて、個別仮想計算機のユーザの要請によっても、個別仮想計算機の処理能力を容易に変化させ、全体としての負荷を高めることなく、また、過大な資源を設けることなく、商用化の観点で合理的な資源配分を実現することができる仮想計算機システムおよびその資源配分制御方法を提供することにある。 Therefore, the object of the present invention is to easily change the processing capacity of the individual virtual machine according to the request of the user of the individual virtual machine in addition to the processing capacity of the individual virtual machine and the resource allocation control procedure set in advance, To provide a virtual machine system and its resource allocation control method capable of realizing rational resource allocation from the viewpoint of commercialization without increasing the overall load and without providing excessive resources. .
すなわち、本発明は、仮想計算機システム内に複数の個別仮想計算機を構築して、それぞれの個別仮想計算機を複数の個別ユーザの各々に割り当て、各個別ユーザからのサービス要求はWEBサービスを用いて個別仮想計算機管理サブシステムにおいて受信し、通常各個別仮想計算機に配分される資源を、個別ユーザの一時的なサービス要求に際して変更可能とした仮想計算機システムおよびその資源配分制御方法を提供することを目的とするものである。 That is, the present invention constructs a plurality of individual virtual machines in a virtual machine system, assigns each individual virtual machine to each of a plurality of individual users, and service requests from each individual user individually using the WEB service. It is an object of the present invention to provide a virtual machine system and a resource allocation control method thereof that can change the resources received by the virtual machine management subsystem and normally distributed to each individual virtual machine upon a temporary service request of an individual user. To do.
前記課題を解決するために、本願にかかる第1の発明は、
1または複数の実計算機の総資源を論理的に分割して、分割した資源のそれぞれが互いに独立した複数の個別仮想計算機を前記1または複数の実計算機上に構築し、ハイパーバイザーにより制御する仮想計算機システムであって、
前記仮想計算機システムは、ユーザの処理要求を受け付けるWEBサーバと、該WEBサーバからの指示に基づいて前記個別仮想計算機への割り当て資源の配分を特定する資源割り当てサブシステムと、各個別仮想計算機毎に割り当てユーザと使用状況と資源の割り当て状況を示す情報を蓄積した使用割当状況表示テーブルと、を備え、
ユーザが予めシステムに登録した所望の計算機性能レベルを満たすに足るだけの資源が配分された前記個別仮想計算機を当該ユーザに割り当て、
ユーザから、前記予めシステムに登録した所望の計算機性能レベルを超えるかまたは下回る計算機性能レベルへの変更を伴う処理要求が前記WEBサーバに送信された場合、前記資源割り当てサブシステムは、使用割当状況表示テーブルを参照して、前記処理要求において変更を要求された計算機性能レベルに応じた空き資源を抽出し、当該ユーザに割り当てた個別仮想計算機を含む資源の割り当てを変更して配分することを特徴とする。
In order to solve the above problems, the first invention according to the present application is:
A virtual system in which a total resource of one or more real computers is logically divided, and a plurality of individual virtual computers, each of which is independent of each other, are constructed on the one or more real computers and controlled by a hypervisor. A computer system,
The virtual machine system includes a WEB server that accepts a user's processing request, a resource allocation subsystem that specifies allocation of allocated resources to the individual virtual machine based on an instruction from the WEB server, and an individual virtual machine A usage allocation status display table storing information indicating the allocation user, usage status, and resource allocation status,
Assigning to the user the individual virtual machine to which resources sufficient to satisfy a desired computer performance level previously registered in the system by the user are allocated;
When a processing request accompanied by a change to a computer performance level that exceeds or falls below the desired computer performance level registered in advance in the system is sent from the user to the WEB server, the resource allocation subsystem displays the usage allocation status display. A free resource corresponding to the computer performance level requested to be changed in the processing request is extracted with reference to the table, and the allocation of resources including the individual virtual machines allocated to the user is changed and distributed. To do.
また、前記第1の発明の1態様において、前記資源割り当てサブシステムは、使用割当状況表示テーブルを参照して、前記処理要求において変更を要求された計算機性能レベルに応じた空きの個別仮想計算機を抽出し、前記抽出された空きの個別仮想計算機を当該ユーザに一時的に割り当てることを特徴とし、また、第1の発明の1態様において、前記各個別仮想計算機は、割り当てられたユーザが使用するOSを含むシステム・ソフト部を有し、それぞれ内部IPアドレスが付与され、前記資源割り当てサブシステムは、使用割当状況表示テーブルを参照して、前記処理要求において変更を要求された計算機性能レベルに応じた空きの個別仮想計算機を抽出すると、当該抽出した個別仮想計算機に、当該ユーザに割り当てられた個別仮想計算機のシステム・ソフト部の内容を、当該抽出した個別仮想計算機に複製するとともに、前記抽出した個別仮想計算機に付与されたIPアドレスを当該ユーザに割り当てられた個別仮想計算機に付与されたIPアドレスに付け替えることにより前記抽出された空きの個別仮想計算機を当該ユーザに一時的に割り当てることを特徴とする。更に、第1の発明の1態様において、前記資源割り当てサブシステムは、使用割当状況表示テーブルを参照し、前記仮想計算機システムの配分可能な総資源量を把握し、既に配分されている資源量との差異を計算することで配分可能な資源量を把握し、変更を要求された計算機性能レベルに基づいて追加すべき資源配分の量とを比較することにより、要求の実行が可能であるかを判断し、その結果により実行不能を通知するかまたは要求に従い資源を配分することを特徴とする。 In one aspect of the first aspect of the invention, the resource allocation subsystem refers to a usage allocation status display table and assigns a free individual virtual computer according to a computer performance level requested to be changed in the processing request. Extracting and temporarily allocating the extracted free individual virtual machine to the user, and in one aspect of the first invention, each individual virtual machine is used by an assigned user. A system software section including an OS, each of which is assigned an internal IP address, and the resource allocation subsystem refers to a usage allocation status display table according to the computer performance level requested to be changed in the processing request. When an empty individual virtual machine is extracted, an individual virtual machine assigned to the user is assigned to the extracted individual virtual machine. The contents of the system software part of the machine are copied to the extracted individual virtual machine, and the IP address assigned to the extracted individual virtual machine is changed to the IP address assigned to the individual virtual machine assigned to the user. The extracted vacant individual virtual machines are temporarily allocated to the user by replacing them. Furthermore, in one aspect of the first invention, the resource allocation subsystem refers to a usage allocation status display table, grasps the total amount of resources that can be allocated to the virtual machine system, The amount of resources that can be allocated is calculated by calculating the difference between the two, and whether or not the request can be executed is compared with the amount of resource allocation to be added based on the requested computer performance level. Judgment is made, and notification of infeasibility is made according to the result, or resources are allocated according to the request.
本願にかかる第2の発明は、第1発明において、
前記仮想計算機システムのメモリ資源は、実メモリを所定の記憶容量の単位で分割し、分割された単位記憶領域毎に論理アドレスが付与された仮想化メモリであり、前記仮想計算機システムは、更に、前記各個別仮想計算機に配分される仮想化メモリの論理アドレスおよび未配分の仮想化メモリの論理アドレスが記憶されるメモリアロケーションテーブルを備え、
ユーザから、前記予めシステムに登録した所望の計算機性能レベルを超える計算機性能レベルへの変更を伴う処理要求が前記WEBサーバに送信された場合、前記資源割り当てサブシステムは、前記メモリアロケーションテーブルを参照して、前記未配分の仮想メモリの論理アドレスを抽出し、前記処理要求において変更を要求された計算機性能レベルに応じた量のメモリ資源を満たすように、仮想メモリ資源を増加して当該ユーザに一時的に割り当てて前記メモリアロケーションテーブルを更新し、
ユーザから、前記予めシステムに登録した所望の計算機性能レベルを下回る計算機性能レベルへの変更を伴う処理要求が前記WEBサーバに送信された場合、前記資源割り当てサブシステムは、前記メモリアロケーションテーブルを参照して、当該ユーザに割り当てられている仮想メモリ資源のうち、前記処理要求において変更を要求された計算機性能レベルに応じた量のメモリ資源を満たすように、仮想メモリ資源を減じて当該ユーザに一時的に割り当て、該減じた仮想メモリ資源を未配分として前記メモリアロケーションテーブルを更新することを特徴とする。
The second invention according to the present application is the first invention,
The memory resource of the virtual computer system is a virtual memory in which a real memory is divided in units of a predetermined storage capacity, and a logical address is assigned to each divided unit storage area, and the virtual computer system further includes: A memory allocation table storing a virtual memory logical address allocated to each individual virtual machine and an unallocated virtual memory logical address;
When a processing request accompanied by a change to a computer performance level exceeding the desired computer performance level registered in the system is transmitted from the user to the WEB server, the resource allocation subsystem refers to the memory allocation table. Then, the logical address of the unallocated virtual memory is extracted, and the virtual memory resource is increased and temporarily allocated to the user so as to satisfy the amount of memory resource corresponding to the computer performance level requested to be changed in the processing request. Assigning and updating the memory allocation table,
When a processing request accompanied by a change to a computer performance level lower than the desired computer performance level registered in the system is transmitted from the user to the WEB server, the resource allocation subsystem refers to the memory allocation table. Among the virtual memory resources allocated to the user, the virtual memory resource is temporarily reduced to the user so as to satisfy the amount of memory resource corresponding to the computer performance level requested to be changed in the processing request. And the memory allocation table is updated with the reduced virtual memory resource unallocated.
本願にかかる第3の発明は、
1または複数の実計算機の総資源を論理的に分割して、分割した資源のそれぞれが互いに独立した複数の個別仮想計算機を前記1または複数の実計算機上に構築し、ハイパーバイザーにより制御する仮想計算機システムであって、
前記複数の個別仮想計算機のうち、ユーザの一時的な処理要求に対して一時的に割り当てる個別仮想計算機を1または複数の一時的割り当て個別仮想計算機として構成され、
前記仮想計算機システムのメモリ資源は、実メモリを所定の記憶容量の単位で分割し、分割された単位記憶領域毎に論理アドレスが付与された仮想化メモリであり、
前記仮想計算機システムは、前記各個別仮想計算機に配分される仮想化メモリの論理アドレスおよび未配分の仮想化メモリの論理アドレスが記憶されるメモリアロケーションテーブルと、ユーザの処理要求を受け付けるWEBサーバと、該WEBサーバからの指示に基づいて前記個別仮想計算機への割り当て資源の配分を特定する資源割り当てサブシステムと、各個別仮想計算機毎に割り当てユーザと使用状況と資源の割り当て状況を示す情報を蓄積した使用割当状況表示テーブルと、を備え、
ユーザが予めシステムに登録した所望の計算機性能レベルを満たすに足るだけの資源が配分された前記個別仮想計算機を当該ユーザに割り当て、
ユーザから、前記予めシステムに登録した所望の計算機性能レベルを超えるかまたは下回る計算機性能レベルへの変更を伴う処理要求が前記WEBサーバに送信された場合、前記資源割り当てサブシステムは、使用割当状況表示テーブルを参照して、空きの一時的割り当て個別仮想計算機を抽出するとともに、前記メモリアロケーションテーブルを参照して、当該ユーザに割り当てられている仮想メモリ資源のうち、前記処理要求において変更を要求された計算機性能レベルに応じた量のメモリ資源を満たすように、仮想メモリ資源を増減して前記抽出した一時的割り当て個別仮想計算機に配分することを特徴とする。
The third invention according to the present application is
A virtual system in which a total resource of one or more real computers is logically divided, and a plurality of individual virtual computers, each of which is independent of each other, are constructed on the one or more real computers and controlled by a hypervisor. A computer system,
Among the plurality of individual virtual machines, an individual virtual machine that is temporarily allocated in response to a user's temporary processing request is configured as one or a plurality of temporarily allocated individual virtual machines,
The memory resource of the virtual computer system is a virtual memory in which a real memory is divided in units of a predetermined storage capacity, and a logical address is assigned to each divided unit storage area,
The virtual machine system includes a memory allocation table in which a logical address of a virtual memory allocated to each individual virtual machine and a logical address of an unallocated virtual memory are stored, a WEB server that receives a user processing request, A resource allocation subsystem that identifies the allocation of allocated resources to the individual virtual machines based on instructions from the WEB server, and information indicating the allocated users, usage status, and resource allocation status for each individual virtual machine A usage allocation status display table,
Assigning to the user the individual virtual machine to which resources sufficient to satisfy a desired computer performance level previously registered in the system by the user are allocated;
When a processing request accompanied by a change to a computer performance level that exceeds or falls below the desired computer performance level registered in advance in the system is sent from the user to the WEB server, the resource allocation subsystem displays the usage allocation status display. With reference to the table, free temporary allocation individual virtual machines are extracted, and referring to the memory allocation table, a change is requested in the processing request among the virtual memory resources allocated to the user. The virtual memory resource is increased or decreased so as to satisfy the amount of memory resource corresponding to the computer performance level, and is allocated to the extracted temporarily allocated individual virtual computer.
本願にかかる第4の発明は、
1または複数の実計算機の総資源を論理的に分割して、分割した資源のそれぞれが互いに独立した複数の個別仮想計算機を前記1または複数の実計算機上に構築し、ハイパーバイザーにより制御する仮想計算機システムであって、
前記複数の個別仮想計算機のうち、ユーザに対して一時的に割り当てる個別仮想計算機を1または複数の一時的割り当て個別仮想計算機として構成され、
前記仮想計算機システムのメモリ資源は、実メモリを所定の記憶容量の単位で分割し、分割された単位記憶領域毎に論理アドレスが付与された仮想化メモリであり、
前記仮想計算機システムは、前記各個別仮想計算機に配分される仮想化メモリの論理アドレスおよび未配分の仮想化メモリの論理アドレスが記憶されるメモリアロケーションテーブルと、ユーザの処理要求を受け付けるWEBサーバと、該WEBサーバからの指示に基づいて前記個別仮想計算機への割り当て資源の配分を特定する資源割り当てサブシステムと、各個別仮想計算機毎に割り当てユーザと使用状況と資源の割り当て状況を示す情報を蓄積した使用割当状況表示テーブルと、を備え、
前記ユーザに配分された前記個別仮想計算機において一定時間入出力の操作がなされない状態が継続した時に、前記資源割り当てサブシステムは、使用割当状況表示テーブルを参照して当該仮想計算機のユーザへの割り当てを自動的に解除し、事前に用意した限定的資源配分の一時割り当て個別仮想計算機を自動的に割り当て、ユーザに配分された前記個別仮想計算機に付与されたIPアドレスを当該ユーザに割り当てられた限定的資源配分の個別仮想計算機に付与されたIPアドレスに付け替えることにより当該ユーザに限定的資源配分の個別仮想計算機を一時的に割り当てることを特徴とする。
The fourth invention according to the present application is
A virtual system in which a total resource of one or more real computers is logically divided, and a plurality of individual virtual computers, each of which is independent of each other, are constructed on the one or more real computers and controlled by a hypervisor. A computer system,
Among the plurality of individual virtual machines, an individual virtual machine that is temporarily allocated to a user is configured as one or a plurality of temporarily allocated individual virtual machines,
The memory resource of the virtual computer system is a virtual memory in which a real memory is divided in units of a predetermined storage capacity, and a logical address is assigned to each divided unit storage area,
The virtual machine system includes a memory allocation table in which a logical address of a virtual memory allocated to each individual virtual machine and a logical address of an unallocated virtual memory are stored, a WEB server that receives a user processing request, A resource allocation subsystem that identifies the allocation of allocated resources to the individual virtual machines based on instructions from the WEB server, and information indicating the allocated users, usage status, and resource allocation status for each individual virtual machine A usage allocation status display table,
When the state in which the input / output operation is not performed for a certain period of time continues in the individual virtual machine allocated to the user, the resource allocation subsystem refers to the usage allocation status display table and allocates the virtual machine to the user. Is automatically released, and a temporary allocation individual virtual machine with limited resource allocation prepared in advance is automatically assigned, and the IP address assigned to the individual virtual machine allocated to the user is assigned to the user. It is characterized by temporarily assigning an individual virtual machine with limited resource allocation to the user by changing the IP address assigned to the individual virtual machine with static resource allocation.
本願にかかる第5の発明〜第8の発明は、第1発明〜第4発明の仮想計算機システムにおける資源配分制御方法の発明である。 5th invention-8th invention concerning this application is invention of the resource allocation control method in the virtual computer system of 1st invention-4th invention.
本願の第1の発明にかかる仮想計算機システムにおいては、仮想計算機システムは、ユーザの処理要求を受け付けるWEBサーバと、該WEBサーバからの指示に基づいて前記個別仮想計算機への割り当て資源の配分を特定する資源割り当てサブシステムと、各個別仮想計算機毎に割り当てユーザと使用状況と資源の割り当て状況を示す情報を蓄積した使用割当状況表示テーブルと、を備え、
ユーザが予めシステムに登録した所望の計算機性能レベルを満たすに足るだけの資源が配分された前記個別仮想計算機を当該ユーザに割り当て、
ユーザから、前記予めシステムに登録した所望の計算機性能レベルを超えるかまたは下回る計算機性能レベルへの変更を伴う処理要求が前記WEBサーバに送信された場合、前記資源割り当てサブシステムは、使用割当状況表示テーブルを参照して、前記処理要求において変更を要求された計算機性能レベルに応じた空き資源を抽出し、当該ユーザに割り当てた個別仮想計算機を含む資源の割り当てを変更して配分する。
In the virtual machine system according to the first invention of the present application, the virtual machine system specifies a WEB server that accepts a user's processing request, and allocation of allocated resources to the individual virtual machine based on an instruction from the WEB server. A resource allocation subsystem, a usage allocation status display table that stores information indicating the allocation user, usage status, and resource allocation status for each individual virtual machine,
Assigning to the user the individual virtual machine to which resources sufficient to satisfy a desired computer performance level previously registered in the system by the user are allocated;
When a processing request accompanied by a change to a computer performance level that exceeds or falls below the desired computer performance level registered in advance in the system is sent from the user to the WEB server, the resource allocation subsystem displays the usage allocation status display. With reference to the table, free resources corresponding to the computer performance level requested to be changed in the processing request are extracted, and the allocation of resources including the individual virtual machines allocated to the user is changed and distributed.
かかる構成によれば、各個別ユーザからのサービス要求はWEBサービスを用いて個別仮想計算機管理サブシステムにおいて受信し、通常各個別仮想計算機に配分される資源を、個別ユーザの一時的なサービス要求に際して容易に変更することが可能になる。 According to this configuration, the service request from each individual user is received by the individual virtual machine management subsystem using the WEB service, and the resources normally allocated to each individual virtual machine are allocated to the temporary service request of the individual user. It can be changed easily.
本願の第2の発明にかかる仮想計算機システムにおいては、第1の発明にかかる仮想計算機システムにおいて、仮想計算機システムのメモリ資源は、実メモリを所定の記憶容量の単位で分割し、分割された単位記憶領域毎に論理アドレスが付与された仮想化メモリであり、前記仮想計算機システムは、更に、前記各個別仮想計算機に配分される仮想化メモリの論理アドレスおよび未配分の仮想化メモリの論理アドレスが記憶されるメモリアロケーションテーブルを備え、ユーザから、予めシステムに登録した所望の計算機性能レベルを超えるか下回る計算機性能レベルへの変更を伴う処理要求が前記WEBサーバに送信された場合、前記資源割り当てサブシステムは、前記メモリアロケーションテーブルを参照して、前記未配分の仮想メモリの論理アドレスを抽出し、前記処理要求において変更を要求された計算機性能レベルに応じた量のメモリ資源を満たすように、仮想メモリ資源を増減して当該ユーザに一時的に割り当てて前記メモリアロケーションテーブルを更新する。 In the virtual machine system according to the second invention of the present application, in the virtual machine system according to the first invention, the memory resource of the virtual machine system divides the real memory by a unit of a predetermined storage capacity, and the divided unit A virtual memory to which a logical address is assigned for each storage area, and the virtual machine system further includes a logical address of a virtual memory allocated to each individual virtual machine and a logical address of an unallocated virtual memory. When a processing request including a memory allocation table to be stored and transmitted from the user to the WEB server with a change to a computer performance level that exceeds or falls below a desired computer performance level registered in the system in advance, the resource allocation sub The system refers to the memory allocation table and refers to the unallocated virtual memory. A logical address is extracted, and the virtual memory resources are increased or decreased temporarily to satisfy the amount of memory resources corresponding to the computer performance level requested to be changed in the processing request, and the memory allocation table is allocated to the user. Update.
かかる構成によれば、ユーザからの予めシステムに登録した所望の計算機性能レベルを超えるか下回る計算機性能レベルへの変更を伴う一時的な処理要求に対して、変更を要求された計算機性能レベルに応じた量のメモリ資源を満たすように資源を割り当てることができるようになる。 According to such a configuration, in response to a temporary processing request accompanied by a change to a computer performance level that exceeds or falls below a desired computer performance level registered in the system in advance by the user, the change is made in accordance with the requested computer performance level. Resources can be allocated to fill a certain amount of memory resources.
本願の第3の発明にかかる仮想計算機システムにおいては、
複数の個別仮想計算機のうち、ユーザの一時的な処理要求に対して一時的に割り当てる個別仮想計算機を1または複数の一時的割り当て個別仮想計算機として構成され、
前記仮想計算機システムのメモリ資源は、実メモリを所定の記憶容量の単位で分割し、分割された単位記憶領域毎に論理アドレスが付与された仮想化メモリであり、
前記仮想計算機システムは、前記各個別仮想計算機に配分される仮想化メモリの論理アドレスおよび未配分の仮想化メモリの論理アドレスが記憶されるメモリアロケーションテーブルと、ユーザの処理要求を受け付けるWEBサーバと、該WEBサーバからの指示に基づいて前記個別仮想計算機への割り当て資源の配分を特定する資源割り当てサブシステムと、各個別仮想計算機毎に割り当てユーザと使用状況と資源の割り当て状況を示す情報を蓄積した使用割当状況表示テーブルと、を備え、
ユーザから、前記予めシステムに登録した所望の計算機性能レベルを超えるかまたは下回る計算機性能レベルへの変更を伴う処理要求が前記WEBサーバに送信された場合、前記資源割り当てサブシステムは、使用割当状況表示テーブルを参照して、空きの一時的割り当て個別仮想計算機を抽出するとともに、前記メモリアロケーションテーブルを参照して、当該ユーザに割り当てられている仮想メモリ資源のうち、前記処理要求において変更を要求された計算機性能レベルに応じた量のメモリ資源を満たすように、仮想メモリ資源を増減して前記抽出した一時的割り当て個別仮想計算機に配分する。
In the virtual computer system according to the third invention of the present application,
Among the plurality of individual virtual machines, an individual virtual machine that is temporarily assigned in response to a user's temporary processing request is configured as one or a plurality of temporarily assigned individual virtual machines,
The memory resource of the virtual computer system is a virtual memory in which a real memory is divided in units of a predetermined storage capacity, and a logical address is assigned to each divided unit storage area,
The virtual machine system includes a memory allocation table in which a logical address of a virtual memory allocated to each individual virtual machine and a logical address of an unallocated virtual memory are stored, a WEB server that receives a user processing request, A resource allocation subsystem that identifies the allocation of allocated resources to the individual virtual machines based on instructions from the WEB server, and information indicating the allocated users, usage status, and resource allocation status for each individual virtual machine A usage allocation status display table,
When a processing request accompanied by a change to a computer performance level that exceeds or falls below the desired computer performance level registered in advance in the system is sent from the user to the WEB server, the resource allocation subsystem displays the usage allocation status display. With reference to the table, free temporary allocation individual virtual machines are extracted, and referring to the memory allocation table, a change is requested in the processing request among the virtual memory resources allocated to the user. The virtual memory resources are increased / decreased and allocated to the extracted temporarily allocated individual virtual machines so as to satisfy the amount of memory resources corresponding to the computer performance level.
かかる構成によれば、各個別ユーザからのサービス要求はWEBサービスを用いて個別仮想計算機管理サブシステムにおいて受信し、通常各個別仮想計算機に配分される資源を、個別ユーザの一時的なサービス要求に際して容易に変更することが可能になる。また、ユーザからの予めシステムに登録した所望の計算機性能レベルを超えるか下回る計算機性能レベルへの変更を伴う一時的な処理要求に対して、変更を要求された計算機性能レベルに応じた量のメモリ資源を満たすように資源を割り当てることができるようになる。 According to this configuration, the service request from each individual user is received by the individual virtual machine management subsystem using the WEB service, and the resources normally allocated to each individual virtual machine are allocated to the temporary service request of the individual user. It can be changed easily. Also, in response to a temporary processing request accompanied by a change to a computer performance level that exceeds or falls below a desired computer performance level registered in the system in advance by the user, an amount of memory corresponding to the computer performance level requested to be changed Resources can be allocated to fill the resources.
本願の第4の発明にかかる仮想計算機システムにおいては、
複数の個別仮想計算機のうち、ユーザに対して一時的に割り当てる個別仮想計算機を1または複数の一時的割り当て個別仮想計算機として構成され、
前記仮想計算機システムのメモリ資源は、実メモリを所定の記憶容量の単位で分割し、分割された単位記憶領域毎に論理アドレスが付与された仮想化メモリであり、
前記仮想計算機システムは、前記各個別仮想計算機に配分される仮想化メモリの論理アドレスおよび未配分の仮想化メモリの論理アドレスが記憶されるメモリアロケーションテーブルと、ユーザの処理要求を受け付けるWEBサーバと、該WEBサーバからの指示に基づいて前記個別仮想計算機への割り当て資源の配分を特定する資源割り当てサブシステムと、各個別仮想計算機毎に割り当てユーザと使用状況と資源の割り当て状況を示す情報を蓄積した使用割当状況表示テーブルと、を備え、
ユーザに配分された前記個別仮想計算機において一定時間入出力の操作がなされない状態が継続した時に、前記資源割り当てサブシステムは、使用割当状況表示テーブルを参照して当該仮想計算機のユーザへの割り当てを自動的に解除し、事前に用意した限定的資源配分の一時割り当て個別仮想計算機を自動的に割り当て、ユーザに配分された前記個別仮想計算機に付与されたIPアドレスを当該ユーザに割り当てられた限定的資源配分の個別仮想計算機に付与されたIPアドレスに付け替えることにより当該ユーザに限定的資源配分の個別仮想計算機を一時的に割り当てる。
In the virtual machine system according to the fourth invention of the present application,
Among the plurality of individual virtual machines, an individual virtual machine that is temporarily allocated to the user is configured as one or a plurality of temporarily allocated individual virtual machines,
The memory resource of the virtual computer system is a virtual memory in which a real memory is divided in units of a predetermined storage capacity, and a logical address is assigned to each divided unit storage area,
The virtual machine system includes a memory allocation table in which a logical address of a virtual memory allocated to each individual virtual machine and a logical address of an unallocated virtual memory are stored, a WEB server that receives a user processing request, A resource allocation subsystem that identifies the allocation of allocated resources to the individual virtual machines based on instructions from the WEB server, and information indicating the allocated users, usage status, and resource allocation status for each individual virtual machine A usage allocation status display table,
When the state in which the input / output operation is not performed for a certain period of time continues in the individual virtual machine allocated to the user, the resource allocation subsystem refers to the usage allocation status display table and allocates the virtual machine to the user. Automatic release, automatic allocation of temporary virtual machines for limited resource allocation prepared in advance, and automatic assignment of IP addresses assigned to the individual virtual machines allocated to users By changing to the IP address assigned to the resource allocation individual virtual machine, the individual virtual machine with limited resource allocation is temporarily allocated to the user.
かかる構成によれば、本来ユーザに割り当てられた個別仮想計算機が休止状態を継続している場合に、当該個別仮想計算機において余剰となる資源を、他のユーザの一時的な処理の要求に対して有効に活用することができるようになり、仮想計算機システムに用意する総資源をいたずらに増大させることがない。 According to such a configuration, when the individual virtual machine originally assigned to the user continues to be in a dormant state, the surplus resources in the individual virtual machine can be used in response to a temporary processing request of another user. It can be used effectively, and the total resources prepared in the virtual machine system are not increased unnecessarily.
本願にかかる第5の発明〜第8の発明によれば、それぞれ、第1発明〜第4発明の仮想計算機システムにおける資源配分制御方法を提供することができるようになる。 According to the fifth to eighth aspects of the present application, it is possible to provide the resource allocation control method in the virtual machine systems of the first to fourth aspects, respectively.
以下、本発明の具体例を実施例及び図面を用いて詳細に説明する。但し、以下に示す実施例は、本発明の技術思想を具体化するための仮想計算機システムを例示するものであって、本発明をこの実施例の仮想計算機システムに特定することを意図するものではなく、特許請求の範囲に含まれるその他の実施形態の仮想計算機システムにも等しく適用し得るものである。 Hereinafter, specific examples of the present invention will be described in detail with reference to examples and drawings. However, the embodiment shown below exemplifies a virtual computer system for embodying the technical idea of the present invention, and is not intended to specify the present invention as the virtual computer system of this embodiment. However, the present invention is equally applicable to the virtual computer systems of other embodiments included in the claims.
図1は、本発明の実施例にかかる仮想計算機システムの構成を示すシステム構成図である。本発明の第1の実施態様にかかる仮想計算機システムSは、図1において、複数のユーザが利用する基本仮想計算機10とその仮想計算機上にソフトウェアとして設定された個別仮想計算機群20a〜20n、その個別仮想計算機20a〜20nを利用するユーザが入出力を行うためのユーザ端末40a〜40nと、ユーザの要求に応じた資源配分の管理を行うための制御用計算機50等により構成される。
FIG. 1 is a system configuration diagram showing the configuration of a virtual machine system according to an embodiment of the present invention. The virtual machine system S according to the first embodiment of the present invention is shown in FIG. 1 as a basic virtual machine 10 used by a plurality of users, individual
ユーザ端末40a〜40nはネットワーク30を介して制御用計算機50にリクエストを送信し、それぞれに割り当てられた個別仮想計算機20a〜20nを利用する。制御用計算機50は、ユーザ端末40a〜40nから受信したリクエストに基づいて、基本仮想計算機10を介して、それぞれに割り当てられた個別仮想計算機20a〜20nにリクエストを処理させる。ユーザ(ユーザ端末)と基本仮想計算機10の実体が1つの組織や拠点内にある場合にはネットワーク30は、いわゆる社内ネットワーク(イントラネット)となり、ユーザが広域(社外などに)分散する場合にはインターネット、もしくは広域専用線である。
The user terminals 40a to 40n transmit a request to the
基本仮想計算機10は、複数の実計算機群12(高性能の単一の実計算機であってもよい)と、実計算機群12(市販のサーバであってよい)のハードウェア上に仮想化を実現するハイパーバイザー14(例えば、英国ケンブリッジ大学で開発されたXENと呼ばれるソフトウェアを用いて構成される)を搭載する。その上で、個別仮想計算機を構成する基礎となる特権ドメインと呼ばれる第一の個別仮想計算機(ユーザには解放されないこと、内部機能であることから図1の上では記載していない)を構成する。この第一の個別仮想計算機を使って、ユーザに提供するための第二以降の個別仮想計算機20a〜20nを必要台数構成している。
The basic virtual computer 10 performs virtualization on the hardware of a plurality of real computer groups 12 (which may be a single high-performance real computer) and the real computer group 12 (which may be a commercially available server). A hypervisor 14 (for example, configured using software called XEN developed at the University of Cambridge, UK) is mounted. In addition, a first individual virtual machine called a privileged domain that forms the basis of the individual virtual machine is configured (not shown in FIG. 1 because it is not released to the user and is an internal function). . Using the first individual virtual machine, the necessary number of second and subsequent individual
第二以降の個別仮想計算機20a〜20nを構成するにあたっては、ハイパーバイザー14上にソフトウェアでCPUに相当するインターフェース(図1のプロセッサ部24a
〜24nを指す)を構成し、そのインターフェース上にユーザに提供するOS26(例えば、マイクロソフト社が提供する各種OS)を搭載している。ユーザが利用するアプリケーションソフト(文書作成ソフトウェア、印刷用プリンタドライバなど)はそのOS上に適合する(互換性がある)バージョンのソフトウェアを搭載する。個別仮想計算機20a〜20nを利用するユーザは、図1のユーザ端末40a〜40nより当該ユーザに割り当てられた仮想計算機に接続し、必要なアプリケーションを利用する。
In configuring the second and subsequent individual
-24n), and an OS 26 (for example, various OSs provided by Microsoft) provided to the user is mounted on the interface. Application software (document creation software, printer driver for printing, etc.) used by the user is loaded with a compatible (compatible) version of software on the OS. Users who use the individual
上記説明は、単体の実サーバ上に個別仮想計算機を構成した場合を説明しているが、複数台のサーバを集めてサーバ群を構成することで、一台のサーバでは達成が困難な処理能力を持った仮想的サーバを構成し利用する場合もある。すなわち、仮想化技術を用いることで一台のサーバを複数台の個別仮想計算機に構成でき、また複数台の実サーバをまとめ仮想的に一台のサーバも構成できる。この技術を用いて、複数台の実サーバをまとめたサーバ群上に複数台の個別仮想計算機を構成することで、安価なサーバを複数集めた高性能サーバ上に必要な個別計算機を構成することができ、商用的観点で合理的なシステムを構成することができる。 The above explanation describes the case where individual virtual machines are configured on a single real server. However, it is difficult to achieve with a single server by gathering multiple servers to form a server group. In some cases, a virtual server having a server is configured and used. That is, by using the virtualization technology, one server can be configured as a plurality of individual virtual machines, and a plurality of real servers can be combined to form a single server virtually. Using this technology, by configuring multiple individual virtual machines on a group of multiple real servers, configure the required individual computers on a high-performance server that collects multiple inexpensive servers. It is possible to construct a rational system from a commercial viewpoint.
一般的な仮想計算機システムにおいては、システム側でユーザの処理要求を満足できるように個別仮想計算機への資源配分を設定している。しかしながら不特定多数の個人ユーザに対して個別仮想計算機を提供するサービスを考えた場合には、個々のユーザの要求する水準がまちまちであるから、ユーザに対して標準的な個別仮想計算機を提供するシステムでは柔軟な対応ができず、資源の有効利用も阻害される。 In a general virtual machine system, resource allocation to individual virtual machines is set so that the system side can satisfy a user's processing request. However, when considering a service that provides individual virtual machines to an unspecified number of individual users, the level required by each individual user varies, so a standard individual virtual machine is provided to users. The system can not respond flexibly and the effective use of resources is also hindered.
図2は、図1に示す本発明にかかる仮想計算機システムSにおけるサービスの概念を示す模式図である。ここでは、ユーザ端末40a(ユーザa)と、当該ユーザaに割り当てられた個別仮想計算機20aのシステム・ソフト部22aのみが図示されている。ユーザ端末40aはネットワーク30を介して制御用計算機50にリクエストを送信し、それぞれに割り当てられた個別仮想計算機20aを利用する。制御用計算機50は、ユーザ端末40aから受信したリクエストに基づいて、基本仮想計算機10を介して、それぞれに割り当てられた個別仮想計算機20aにリクエストを処理させる。
FIG. 2 is a schematic diagram showing a service concept in the virtual machine system S according to the present invention shown in FIG. Here, only the user terminal 40a (user a) and the system software unit 22a of the individual
ユーザaに割り当てられた個別仮想計算機20aのシステム・ソフト部22aには、ユーザaに応じたOS26と、ユーザaが使用する個別APP(個別アプリケーション)28が搭載されている。複数のユーザが共通的(一般的)に使用するアプリケーションは、システム側に用意された共通APP(共通アプリケーション)29を用いるように構成されている。制御用計算機50は、WEBサーバ56を有しており、ユーザ端末40aはネットワーク30を介してWEBサーバ56にリクエストを送信し、WEBサーバ56が提供するブラウザを使い、自身に割り当てられた個別仮想計算機20aに接続して必要とする処理を行い、処理の経過あるいは処理結果は個別仮想計算機20aに保存される。処理の経過や配分されている資源量などの管理情報はWEBサーバ56が提供するブラウザ上に表示される。WEBサーバ56を含む制御用計算機50の構成、機能は後に詳細に説明する。
An
ユーザaは計算機を用いた自身の業務を実行するにあたって、ユーザ端末40aから、予めシステムに登録したユーザ名、PW(パスワード)、クライアント名などのユーザ識別情報を入力してWEBサーバ56に接続要求を送信する。WEBサーバ56はユーザ識別情報に基づいて認証を行い正規のユーザであれば、ユーザaに割り当てられた個別仮想計算機20aの内部IPアドレス(仮想計算機システム側で管理する個別仮想計算機20a〜20nの内部IPアドレス)に変換し、該当する個別仮想計算機20aを起動し、WEBブラウザを用いてユーザ端末40aの表示画面に個別仮想計算機20aのデスクトップ画面を表示させ、ユーザaが所望する処理を行わせる。処理の経過、結果もユーザ端末20aの表示画面上に表示されるが、それら処理経過や処理結果のデータは個別仮想計算機20aに保存される。
When the user a executes his or her business using the computer, the user terminal 40a inputs user identification information such as a user name, PW (password), and client name registered in advance in the system and requests connection to the
従って、ユーザaのユーザ端末40aは、ネットワークを用いた通信機能とWEBサーバ56から提供されるブラウザを表示する機能があればよく、ユーザaが利用するアプリケーションをインストールしておく必要もない。ユーザが必要とするOSや各種アプリケーションプログラムのバージョンアップを仮想計算機システム側で実施するように実装したことから、ユーザはこれらのメンテナンス処理を自身で行う必要もない。また、コンピュータウィルスに対する対応も仮想計算機システム側で構築しているので、ユーザが個別に対応する必要もなくキュリティーも確保できる。
Therefore, the user terminal 40a of the user a only needs to have a communication function using a network and a function of displaying a browser provided from the
なお、ユーザ端末40a等をシンクライアントシステム(例えば、特開2005−228227号公報に開示された技術)に適合するシンクライアントPCとすれば、個別仮想計算機とのネットワーク接続を行うときにブラウザを使用し、その後の処理の結果を表示する時はソフトで構成されたいわゆるシンクライアント端末として動作させることができる。 If the user terminal 40a or the like is a thin client PC compatible with a thin client system (for example, the technology disclosed in Japanese Patent Application Laid-Open No. 2005-228227), a browser is used for network connection with an individual virtual machine. Then, when displaying the result of the subsequent processing, it can be operated as a so-called thin client terminal configured by software.
更に、複数のユーザでグループを構成し、個々のユーザがそれぞれの個別仮想計算機を用いて作成あるいは取得したデータを共有し、各データへのアクセス権、アクセスレベル(表示、参照、複写、書換え)をユーザ対応に設定しておけば、グループ内のデータ管理、データセキュリティーの確保が可能になる。仮想計算機システム側はこのようなサービスおよび、以下に述べる個別仮想計算機の提供サービスを総合した対価をユーザあるいはユーザのグループに対して設定することで、仮想計算機システムを用いたビジネスモデルが構築される。 In addition, a group is formed by a plurality of users, and each user shares data created or obtained using each individual virtual machine. Access rights and access levels (display, reference, copy, rewrite) for each data If the user is set to be user-friendly, data management and data security within the group can be ensured. On the virtual machine system side, a business model using the virtual machine system is constructed by setting a price for such a service or a service provided by the individual virtual machine described below for a user or a group of users. .
ユーザの業務は多岐にわたる。文書や表の作成、表計算、簡単な画像処理などの作業は一般的なアプリケーションを用いることができ、高いCPUの処理能力やメモリを必要としない。高度な画像処理などの作業はそのためのアプリケーションを必要とし、高いCPUの処理能力やメモリを必要とする。また、同じユーザであっても、ある時間の単位でみた場合、定常的に高度なCPUの処理能力を必要とするものではなく、専門的、高度なアプリケーションを用いた業務を処理する時もあれば、一般的なドキュメント作成などの業務を処理する時もある。 User tasks are diverse. General applications can be used for operations such as creation of documents and tables, spreadsheets, and simple image processing, and high CPU processing capacity and memory are not required. Advanced operations such as image processing require an application for that purpose, and require high CPU processing capacity and memory. Moreover, even if the same user is seen in a certain unit of time, it does not require a high level of CPU processing power constantly, and there may be times when processing business using specialized and advanced applications. For example, there are times when a general document creation process is processed.
本発明の仮想計算機システムSによれば、ユーザは、最もユーザが日常的に(平均的に)必要とする計算機の処理能力(計算機性能レベル)を予めシステム側に設定(登録)して、自身に割り当てられる個別仮想計算機の資源配分を設定しておき、ユーザが設定した計算機の処理能力(日常的に使用する処理能力(計算機性能レベル))を一時的に上回る、あるいは、下回る処理能力を必要とする場合には、システムに対して資源配分の一時的変更を要求するようにしたものである。このような構成によれば、ユーザは日常的に必要とする資源配分を受けた個別仮想計算機を用いたサービスに対する対価を支払い、ユーザが設定した計算機の処理能力(日常的に使用する処理能力)を一時的に上回る、あるいは、下回る処理能力を必要とした場合には、通常の対価に上乗せし、あるいは、通常の対価を低減して対価を支払うことにより所望のサービスを受けることができる。 According to the virtual computer system S of the present invention, the user sets (registers) the processing capacity (computer performance level) of the computer that the user needs most (on average) in advance on the system side, and The resource allocation of the individual virtual machine assigned to the computer is set, and processing capacity that temporarily exceeds or falls below the processing capacity of the computer set by the user (processing capacity used on a daily basis (computer performance level)) is required. In this case, the system is requested to change the resource allocation temporarily. According to such a configuration, the user pays for the service using the individual virtual machine that receives the daily resource allocation, and the processing capacity of the computer set by the user (processing capacity for daily use) When processing capacity that is temporarily above or below is required, it is possible to receive a desired service by adding to the normal price or paying the price by reducing the normal price.
図3は、制御用計算機50の構成を示すブロック図である。制御用計算機50は、ユーザがより高性能の個別仮想計算機を要求、あるいは逆により低性能の個別仮想計算機の利用に切り替える要求に対応し、個別仮想計算機20a〜20nの割り当てを制御するサブシステムである。制御用計算機50は、先に説明したWEBサーバ56の他に、ハイパーバイザーIF(インターフェース)55、使用割当状況表示テーブル57、資源割り当てサブシステム58、サービス間連携プロセス59等を含んで構成されている。
FIG. 3 is a block diagram showing the configuration of the
ハイパーバイザーIF55は、基本仮想計算機10と制御用計算機50とを連携させるための通信インターフェースであり、WEBサーバ56を介して受け付けられたユーザの要求は、ハイパーバイザーIFを経由して仮想化を実現するハイパーバイザー14に伝えられる。また、ユーザ要求に応じたハイパーバイザー14の処理はハイパーバイザーIF55を介してサービス間連携プロセス59に伝えられる。
The hypervisor IF 55 is a communication interface for linking the basic virtual machine 10 and the
資源割当サブシステム58はWEBサーバ56がユーザの要求を受け付けると、使用割当状況表示テーブル57に記憶された個別仮想計算機20a〜20nを参照し、利用可能な資源の有無を判断し、利用可能な個別仮想計算機を選択しユーザの利用に提供するための指示をWEBサーバ56、サービス間連携プロセス59に与える。使用割当状況表示テーブル57の構成およびその詳細は、図4〜図7を参照して後に詳述する。サービス間連携プロセス59は、ハイパーバイザーIF55を介して資源割り当てサブシステム58はハイパーバイザー14、WEBサーバ56等の間を連携させる。
When the
次に、本発明の仮想計算機システムにおける個別仮想計算機とその資源配分方法の概念について、図4〜図6を参照して説明する。図4は基本仮想計算機10の配分可能な総可用性能指標の算出例である。本発明では資源配分実施に先立って、配分可能な計算機資源の総量を把握しておく必要がある。このアイデアの背景は、個別仮想計算機20a〜20nの性能は配分される主メモリー量とCPUの性能で決定されるという性質を利用している。
Next, the concept of an individual virtual machine and its resource allocation method in the virtual machine system of the present invention will be described with reference to FIGS. FIG. 4 is an example of calculating the total availability capability index that can be allocated to the basic virtual machine 10. In the present invention, prior to resource allocation, it is necessary to grasp the total amount of computer resources that can be allocated. The background of this idea utilizes the property that the performance of the individual
実計算機1台に主メモリー32GB(ギガバイト)、CPUモジュールとしてその内部にCPUコア4ヶを有するものを2基搭載した(合計CPUコアが8ヶある)計算機を想定した時、そのクロック数が2GHz(ギガヘルツ)のものは、ラップトップ型パソコンで主メモリー1GB(ギガバイト)、クロック数1GHz(ギガヘルツ)のものに換算すると30台に相当することが経験的にわかっている。 Assuming a computer with a main memory of 32GB (gigabytes) in one real computer and two CPU modules with 4 CPU cores inside (with a total of 8 CPU cores), the number of clocks is 2GHz. It is empirically known that (gigahertz) is equivalent to 30 units when converted to a laptop personal computer with a main memory of 1 GB (gigabytes) and a clock frequency of 1 GHz (gigahertz).
そこで、図1における基本仮想計算機10を構成する実計算機として複数台の実計算機群12を用いる時に、その複数台の実計算機群12が全体として有する配分可能な資源量の見極めを上記した換算方式で算出する。計算はその実計算機の有する主メモリー量、CPUのコア数、クロック数の積から、「主メモリー量(ギガバイト)―2」×「コア数/CPU」×「CPU数」×「クロック数(ギガヘルツ)」÷16台の算術式を用いて配分可能な台数を導く。例えば、32GB主メモリー、2CPUで4コア、クロック数2GHzの場合には「(32−2)×4×2×2÷16=30台」となる。
Therefore, when a plurality of
ただし、本発明では性能の違う個別仮想計算機20a〜20nの配分をユーザの所望する個別仮想計算機の性能をきめ細かく実施することがねらいであるので、上記したように台数で管理するのではなく、指標で管理する方式を採る。例えば、いわゆるスクリーンセーバーなどのアプリケーションに必要となる最小限の資源配分状態から高性能サーバに近い性能を個別ユーザに割り当てることを勘案して、上記したラップトップ型パソコンの指数を4とおくこととした。本発明ではこれを基準に総合指標(「可用性能指標」と呼ぶ)に換算した値を利用している。これによると、上記した実計算機の可用性能指標は、「30台×指数(4)=120」と表される。
However, in the present invention, since the purpose is to finely implement the performance of the individual virtual machines desired by the user in the distribution of the individual
この可用性能指標の意味するところは、上気したラップトップ型パソコンと同等の計算機性能レベルを持つ個別仮想計算機を構成するならば「120÷4=30台」が当該サーバ上に構成できることを意味し、より低位機種としていわゆるPDA程度の処理能力の機種とするならば、その必要となる可用性能指標は1程度となることから、「120÷1=120台」となり、120台を構成することが可能と判断できる。 The meaning of this availability capability index means that “120 ÷ 4 = 30” can be configured on the server if an individual virtual machine having a computer performance level equivalent to that of an up-to-date laptop computer is configured. However, if the lower model is a model with a processing capability of about the so-called PDA, the required availability index will be about 1, so that “120 ÷ 1 = 120 units”, which constitutes 120 units. Can be determined to be possible.
こうした計算方式で、実計算機群12の物理的性能数値から、本発明で用いる配分可能な個々の実計算機の可用性能指標(計算機性能レベルに相当する指標)を算出し、それぞれの実計算機の可用性能指標の合算値をだすことにより、基本仮想計算機10が有する総可用性能指標(総性能指標)を導き出すことができる。本発明のシステムの運用に当たっては、この総可用性能指標(総性能指標)をそれぞれのユーザの要求に応じて動的に配分を切り替えながら、この総可用性能指標(総性能指標)を越えない範囲で、ユーザの個別の要求を充足しながら運転する構成としている。図4は、このようにして番号001〜番号nまでの各実計算機について算出した可用性能指標を例示したものである。各実計算機の可用性能指標を合計した値「600」が、基本仮想計算機10の総可用性能指標となる。従って、図4に従えば、本発明にかかる仮想計算機システムでは、可用性能指標「600」の範囲で、各個別仮想計算機20a〜20nを構成することができることになる。
With this calculation method, the availability capability index (an index corresponding to the computer performance level) of each real computer that can be allocated in the present invention is calculated from the physical performance values of the
図5は、可用性能指標と個別仮想計算機20a〜20nの性能との関係を表現している。本発明は商用的簡便さを持って動的に資源配分をおこなうことを実現することにある。この観点から、ユーザが実際に利用しているパソコンや携帯型のデバイス(いわゆるパーソナル・ディジタルアシスタンス=PDAと略す)などの性能評価を行った。その結果、上述した様に、汎用のラップトップ型コンピュータの必要とする可用性能指標を4とした場合にPDAではその1/4程度であり、上位機種に相当するデスクトップ型パソコンでは汎用ラップトップ型の倍の性能指標となっているので、その結果を適用することとした。
FIG. 5 expresses the relationship between the availability capability index and the performance of the individual
この他、ほぼ休止状態に近いが運転は行われている状態を作っておくために、可用性能指標として0.2という割当も用意した。また、ユーザからより上位機種(上位の性能)を求められた場合に提供可能とするために可用性能指標16というサーバクラスの割当も用意した。これまでに述べているのは可用性能指標であるが、実際のシステム構築時にはその可用性能指標のそれぞれに対応する実メモリーの割当を変動させることで実現している。図5は、上述した可用性能指標「16」〜「0.2」に対応する個別仮想計算機に具体的に配分される実メモリー量の関係を示したものである。
In addition, an allocation of 0.2 as an availability capability index is also prepared in order to create a state in which driving is being performed although it is almost close to a dormant state. In addition, in order to be able to provide when a higher model (higher performance) is requested by the user, server class assignment called
図6は、以上のようにして構築される個別仮想計算機20a〜20nの使用割当状況表示テーブル57の内容を示している。本割当テーブルは、現在時間で基本仮想計算機10の内部に構成された個別仮想計算機20a〜20nのそれぞれが、どのような可用性能指標を有するか、現在どのユーザに割当られているか、当該ユーザは使用中であるかあるいは割り当られてはいるがアイドリング状態にあるか、また有期限での割り当となっている場合には残存利用可能時間はあと何時間何分残っているか、とそれぞれの個別仮想計算機20a〜20nのとりうる状態遷移のなかでどの状態にあるか、を示すものである。状態遷移については、図7〜図8を参照して後述する。
FIG. 6 shows the contents of the usage allocation status display table 57 of the individual
また、本発明では個別仮想計算機(それぞれ固有の可用性能指標を有する)の台数設定に当たっては、ビジネス的観点から可用性能指標が4である個別仮想計算機を80台(これにより図4に例示した基本仮想計算機総性能指標である可用性能指標600の中から、320を可用性能指標が4である個別仮想計算機に配分されている。残る可用性能指標280の中から可用性能指標8である個別仮想計算機20台に配分し、可用性能指標16の個別仮想計算機6台に、さらに可用性能指標1の機種を20台、可用性能指標0.2の機種を20台で、合計600の可用性能指標の累積値とした。
In the present invention, in setting the number of individual virtual machines (each having a unique availability capability index), 80 individual virtual computers having an availability capability index of 4 from the business viewpoint (the basic example illustrated in FIG. 4). Of the
この数値は、ビジネス的観点から設定しているのであり、可用性能指標8の計算機を可用性能指標1の計算機8台に置き換えることや、その逆の置き換えもユーザの要求に対する対応として変更することができる。上記では、図6でいう総可用性能指標であるXは600となっており、最大限の配分がなされている状態である。ただし、そのうち、ユーザに割り当されていない仮想計算機があり、割り当られ使用されている可用性能指標の合算値Yは600を越えない。
This numerical value is set from a business viewpoint, and the computer of
本発明においては、先に説明したように、ユーザ自身が所望する計算機の性能(サーバマシン相当、デスクトップ機相当、汎用ラップトップ相当等)を予めシステムに設定(登録)しておく。システム側ではこのユーザの設定(登録)に基づいて個別仮想計算機の1つを当該ユーザに割り当て、その可用性能指標に応じた資源(メモリ量)を配分する。以下、本明細書においてはユーザが設定した計算機の性能(可用性能指標)の範囲内での処理を、通常処理要求レベルまたは通常処理要求ということとする。これに対して、ユーザが一時的に通常処理要求レベルを超える処理または通常処理要求レベルより低い処理を行う場合を、一時的処理要求レベルまたは一時的処理要求ということとする。 In the present invention, as described above, computer performance (equivalent to a server machine, equivalent to a desktop machine, equivalent to a general-purpose laptop, etc.) desired by the user is set (registered) in advance in the system. On the system side, one of the individual virtual machines is allocated to the user based on the setting (registration) of the user, and resources (memory amount) corresponding to the availability capability index are allocated. Hereinafter, in this specification, the processing within the range of the computer performance (availability index) set by the user is referred to as a normal processing request level or a normal processing request. On the other hand, a case where the user temporarily performs processing that exceeds the normal processing request level or processing that is lower than the normal processing request level is referred to as a temporary processing request level or a temporary processing request.
特定のユーザに割り当てられた個別仮想計算機(例えば20a)にはシステム側で管理する内部IPアドレスが付与され、ユーザ名、PW、クライアント名から、そのユーザに割り当てられた内部IPアドレスに変換され、該当する個別仮想計算機(例えば20a)が特定される。通常、ユーザは設定した計算機の性能の範囲内(通常処理要求レベル)で仮想計算機システムに処理を要求する。 An internal IP address managed on the system side is assigned to an individual virtual machine (for example, 20a) assigned to a specific user, converted from a user name, PW, and client name to an internal IP address assigned to the user, The corresponding individual virtual machine (for example, 20a) is specified. Normally, the user requests processing from the virtual computer system within the set performance range of the computer (normal processing request level).
ユーザが設定した計算機の性能を上回るまたは下回る処理(一時的処理要求レベル)を所望する時には、WEBサーバ56への接続要求時にその旨を入力する。この要求が行われると、仮想計算機システムSは、図6に示す使用割当状況表示テーブル57を参照し、空き資源を一時的に再配分する。本発明の実施例1においては、ユーザが要求した一時的処理要求レベルに相当する可用性能指標を持ち、他のユーザに割り当てられた個別仮想計算機の空きを調べ、空きがあれば、空いている個別仮想計算機を要求ユーザに対して一時的に割り当てて利用させる。すなわち、本実施例においては資源としての個別仮想計算機そのものが空き資源の状態にある時には、当該空きの個別仮想計算機を一時的に他のユーザに割り当て変更して配分する。
When processing that exceeds or falls below the performance of the computer set by the user (temporary processing request level) is desired, this is entered when a connection request to the
例えば、可用性能指標「4」の性能を登録し、個別仮想計算機20aを割り当てられたユーザaが、可用性能指標「16」の性能を要する一時的処理要求レベルを行い、他のユーザに割り当てられた可用性能指標「16」の個別仮想計算機20nが空きであった場合、資源割り当てサブシステム58は、個別仮想計算機20aのシステム・ソフト部に記憶されたOS26やアプリケーションを個別仮想計算機20nにコピー(複製)し、個別仮想計算機20nの内部IPアドレスを、個別仮想計算機20aの内部IPアドレスに付け替える。この手順により、可用性能指標「16」に一時的に変更を要求したユーザに対して、該当する空きの個別仮想計算機20nを一時的に割り当て変更して利用させることができる。
For example, the performance of the availability capability index “4” is registered, and the user a assigned the individual
次に、このような資源配分の手順の詳細について、図7〜図9に示す動作シーケンス図を参照して説明する。図7は、図1〜図6を参照して説明した構成をもつ基本仮想計算機10において個別ユーザの利用に提供されている個別仮想計算機群20a〜20nの中から、その一例として個別仮想計算機20aを例に、状態遷移の観点から仮想計算機システムSの動作シーケンスを説明するシーケンス図である。
Next, details of the resource allocation procedure will be described with reference to the operation sequence diagrams shown in FIGS. FIG. 7 shows an example of an individual
まず、ユーザaは個別仮想計算機20aを利用するに先立って、ユーザaはWEBサーバ56にユーザ名、パスワード、クライアント名など所定のユーザ情報を送信し、WEBサーバ56においてユーザとして利用権限があるか否か認証される。このシーケンスは一般的プロセスであることから図示は省略している。利用権限が確認されると、当該ユーザaに割り当てられている個別仮想計算機20aへユーザ端末40からの通信経路の確立が行われる(使用開始:シーケンスS100の状態)。
First, before the user a uses the individual
通信経路の確立は、ユーザ端末40aからのIP通信(インターネットプロトコル通信)がなされる先の個別仮想計算機20aにシステムから動的に割り当てられているIPアドレスを、ユーザ端末40にシステムの経路確立までの動作の一部として通知し、通信経路を確立する通常の方式でなされる。ユーザは実質的には通知されたIPアドレスを意識する必要はなく、WEBサーバ56においてユーザ名、PW等の認証情報に基づいて当該ユーザに割割り当てられた個別仮想計算機20aのIPアドレスを特定し、そのIPアドレスに該当するその個別仮想計算機20のデスクトップ画面をブラウザ表示させることで行われる。
The establishment of the communication path is performed by assigning an IP address dynamically assigned from the system to the individual
使用開始のシーケンスS100の状態からシステムが立ち上がる一定時間が経過すると、ユーザaが予め設定(システムに登録した)所定の性能(可用性能指標)を有する個別仮想計算機20aの割当が完了し、通常リソース割り当て状態(シーケンスS104)に状態は遷移する。このあと、個別仮想計算機20aの利用が連続的にあるときは連続運転状態(シーケンスS110)として、特にそのリソース割り当て(資源配分)の変化が起きることは無い。連続的であるとは、アプリケーションプログラムが所定の処理をおこなっている、ユーザが文章を入力している、システムの入出力系が動作している等の状態にあることをいう。
When a certain period of time when the system is started up from the state of the use start sequence S100, the allocation of the individual
しかし、そうしたアプリケーションプログラムが処理を終了しており、ユーザがキー入力などを行わない状態にあるときは「使用」していない状態であるという。しかし、連続運転状態(シーケンスS110)が継続していた中で、当該ユーザが「使用を中止する」(シーケンスS124)の手順を起動させるか、「当初の割り当てと異なるリソース割当要求」発生(シーケンスS150)があるか、「一定時間以上の使用が無い」(シーケンスS122)状態のいずれかが発生すると、それぞれのイベントごとに別の状態遷移を起こさせる様にシステムを構築してある。 However, when such an application program has finished processing and the user does not perform key input or the like, the application program is not in use. However, while the continuous operation state (sequence S110) continues, the user activates the procedure of “cancel use” (sequence S124) or generates a “resource allocation request different from the initial allocation” (sequence The system is constructed so as to cause another state transition for each event when there is a state of (S150) or "no use for a certain period of time" (sequence S122) occurs.
「使用を中止する」(シーケンスS124)手順が起動された場合には、それまで当該ユーザに割り当てられていた個別仮想計算機20aへの通信路が切断され、図6に示した例として、個別仮想計算機番号1001の使用ステータスは「使用中」からたとえば個別仮想計算機番号1003に見られる様に使用割当状況「未割り当て」、使用ステータス「アイドリング中」に書き換えられ、個別仮想計算機20aは開放される(シーケンスS140)。これにより、これまで使用されていた個別仮想計算機20aの使用は終了し(シーケンスS142)、他のユーザの利用に提供される準備ができた。
When the “cancel use” (sequence S124) procedure is activated, the communication path to the individual
使用を中止するシステム設計上の原因は、ユーザが使用を中止する選択しそのための操作を行った結果として中止に至る場合と、当初より所定の時間のみ利用するという選択を行った結果、図6に示される「管理タイマー」が残り使用可能時間を計測してきて残存時間がゼロになったことをトリガーとして使用を中止するプロセスが起動される場合とがある。 The cause of the system design for canceling the use is that the user selects to cancel the use and performs the operation for that purpose, and the result of the selection to use only for a predetermined time from the beginning is shown in FIG. The “management timer” shown in FIG. 5 may measure the remaining usable time, and a process for stopping the use may be triggered when the remaining time becomes zero.
「一定時間以上の使用が無い」(シーケンスS122)状態が発生するとは、ユーザが端末40aに対してキーボードの操作を行わないでいる時間であり、使用中の個別仮想計算機20a内部でもアイドリング状態が一定時間(本実施例では10分間に設定した)以上継続している状態をいう。この状態にもかかわらずCPUリソースが配分されていることはリソースの無駄であるとの考え方から、休止状態の限定的リソース配分状態へ強制的に遷移させ(シーケンスS130)て、総合的資源の節約を行っている。この状態遷移の手順は次に述べる通常と異なるリソース割当要求が発生した場合と同様であるので、詳細は次に述べる。
The occurrence of the “no use for a certain time” (sequence S122) state is a time when the user does not operate the keyboard on the terminal 40a, and the idling state is also present in the individual
次に、ユーザaにより通常と異なるリソース割り当て要求が発生した場合の状態遷移を説明する。ユーザが計算機を利用していると、利用するアプリケーションの種類や、処理すべき情報量が多い場合によっては、いっそうの高性能の計算機を一時的必要とする場合がある。そのような例を挙げれば、高機能の画像処理ソフトウェアとして多く用いられている例としてはAdobe社のPhotoshopやIllustratorなどがあり、処理すべき情報量が多い例としては、年度末に集中して利用される会計ソフトの各種経理データや、印刷版下作成用の原稿などがあげられる。 Next, a state transition when a resource allocation request different from normal occurs by the user a will be described. When a user uses a computer, a higher-performance computer may be required temporarily depending on the type of application to be used and the amount of information to be processed. For example, Adobe's Photoshop and Illustrator are frequently used as high-performance image processing software. Examples of a large amount of information to be processed are concentrated at the end of the fiscal year. Examples include accounting data for accounting software used and manuscripts for creating printing blocks.
図8は、図7の「イベントの発生」(シーケンスS120)のイベントの内、ユーザが一時的により高性能な処理能力の個別仮想計算機の要求を行った場合の処理の流れを説明するシーケンス図である。利用にあたっては、一旦高性能の処理能力を得た後、ユーザの判断で元の通常の処理能力の利用に戻る場合もあれば、高性能機の利用は追加料金が発生することを管理するために利用を時間で制限することもあり、システムとしてはいずれの方法でも不整合を起こさないで機能するようにしている。 FIG. 8 is a sequence diagram for explaining the flow of processing when the user temporarily requests an individual virtual machine with higher performance processing power among the events of “event occurrence” (sequence S120) in FIG. It is. In order to manage the use of high-performance machines, once the high-performance processing capacity is obtained, the user's judgment may return to the original normal processing capacity. In some cases, the system can be used without any inconsistency by either method.
ユーザaがより高性能の処理能力を必要とする時は、最初に図3に示されているユーザ接続要求や処理能力拡張要求などを受け付けるWEBサーバ56に、ユーザが利用している個別仮想計算機のWEBブラウザからアクセスし、必要な性能要求を入力する。この入力は一般のユーザの理解しやすさの観点から、ユーザはWEBサーバ56が表現する、図5の「ユーザへ配分される個別仮想計算機の性能の例示説明」の中から必要と思われる性能表現(可用性能指標)を選択する方式で行うように構成されている。例えば、ユーザaが使用していた個別仮想計算機20aの性能は「汎用のラップトップ計算機に相当」するものであるので、可用性能指標は4、主メモリー配分量は1Gバイトである。今回のユーザの要求(一時的処理要求)例は「サーバマシンに相当」する処理能力であり、この場合の可用性能指標は16、主メモリー配分は4Gバイトとなる。
When the user a needs a higher performance processing capacity, the individual virtual machine used by the user is firstly received by the
ユーザから「サーバマシン相当」の処理能力利用の要求を受け付けたWEBサーバ56は、図8の遷移状態(シーケンスS152)のプロセスにある、ユーザの処理要求を、可用性能指標「16」に変換を行い、図3に示す資源割り当てサブシステム58に対して、当該ユーザaが必要とするリソースは可用性能指標「16」であるとしてアイドリング中の仮想計算機を検索し入手可能であれば割当を行う指示を伝達する。次に、当該指示を受けた資源割当サブシステム58は、個別仮想計算機の使用割当状況表示テーブル57の使用中の可用性能指標の合算値Yを再計算し最新のYの値を求めておく(状態遷移シーケンスS153)。
The
この結果最新の使用されている可用性能指標が算出されるので、ここでさらにY+16−4=Y'を計算する(16は新たに配分される予定(要求された)可用性能指標の値である。現在使用中の資源が4あることから、それからの増分を求めている)次の状態遷移である判定プロセス154において、XとY'の大小の比較を行い、もしY'>Xであるならば、プロセス156(シーケンスS156)へ、もしY'≦Xであるならば、プロセス160(シーケンスS160)の処理を行わせる。 As a result, since the latest used availability index is calculated, Y + 16−4 = Y ′ is further calculated here (16 is the value of the newly allocated (requested) availability index. In the decision process 154, which is the next state transition (because there are 4 resources currently in use, the increment is being calculated), X and Y 'are compared, and if Y'> X For example, the process 156 (sequence S156) is caused to perform the process 160 (sequence S160) if Y ′ ≦ X.
プロセス156(シーケンスS156)は、基本仮想計算機10のほとんどのリソースはすでに配分されてしまっており、ユーザがそれまでに利用していた可用性能指標4は利用可能であったが、さらに追加する可用性能指標12を獲得する余裕の無い状態であったことを意味している。プロセス160(シーケンスS160)に状態遷移させることができるということは、さらに配分可能な可用性能指標が12を含みそれ以上あった場合であることを意味している。
In the process 156 (sequence S156), most of the resources of the basic virtual machine 10 have already been allocated, and the
プロセス156に振り分けられた場合には、割当は不能であるので、資源割当サブシステム58はWebサーバ56に対して、割当不能の回答を伝達しその伝達内容は要求してきたユーザに対して、Web上で要求されたリソースは現在入手できないため、性能の高度の要求に応えられない旨の表示を行ったのち処理を中止する。
If the allocation is made to the process 156, the allocation is impossible, so the
図8におけるプロセス160(シーケンスS160)の詳細は、図9に示すシーケンス図に示される。その詳細を示している。プロセス160(シーケンスS160)を起動した資源割り当サブシステム58は、図9のプロセス161(シーケンスS160)に示すように個別仮想計算機20a〜20nの使用割当状況表示テーブル57の中から要求された可用性能指標16を持ち、使用ステータスがアイドリング中となっている、他のユーザに割り当てられた個別仮想計算機を検索する。すなわち、図6に示した個別仮想計算機の使用割当状況表示テーブル57から、可用性能指標「16」として他のユーザに割り当てられたグループである個別仮想計算機番号5000番台から検索を開始し、最初のアイドリング中である個別仮想計算機を抽出する。
Details of the process 160 (sequence S160) in FIG. 8 are shown in the sequence diagram shown in FIG. The details are shown. The
図6に示す例によれば、仮想計算機番号5001番は可用性能指標16を持ち、かつアイドリング中であることから当該個別仮想計算機が特定され、その内部IPアドレスが個別仮想計算機の使用割当状況表示テーブル57から抽出され、資源割当サブシステム58に引き渡される。資源割当サブシステム58は、プロセス162(シーケンスS162)として、次に割当を要求してきた個別仮想計算機20aのシステム・ソフト部22a(この中にはオペレーティングシステム26も含まれる)の複製を、仮想計算機番号5001番に対応する個別仮想計算機(この場合、図1上の20nとして説明する)の22n部分に作成する。
According to the example shown in FIG. 6, since the virtual machine number 5001 has the
次にプロセス163(シーケンスS163)では、個別仮想計算機20nの運転を開始し、それ以前に端末が接続先として利用していた個別仮想計算機20aのための接続用IPアドレスに代わるIPアドレスとして個別仮想計算機の使用割当状況表示テーブル57から抽出し資源割当サブシステム58に引き渡された個別仮想計算機20nの持つIPアドレスが利用できるように付け替え(入れ替え)を行うことで、ユーザ端末からの接続先が停止すること無く切り替えられる。
Next, in the process 163 (sequence S163), the operation of the individual virtual machine 20n is started, and the individual virtual machine 20n is used as an IP address that replaces the connection IP address for the individual
このようにIPアドレスを付け替えることで、異なる性能指標を有する個別仮想計算機の割り当てユーザを一時的に本来割り当てられたユーザから他のユーザに変更しながら合理的なリソース配分で運転することができるようになる。切り替えが終わった段階で、これまで当該ユーザの利用に供してきた個別仮想計算機20aは利用を終了したので、個別仮想計算機の使用割当状況表示テーブル57の上で、使用割当状況は「未割り当て」、使用ステータスは「アイドリング中」に状態記述は改変され、また使用中の総可用性能指標Y'もそれに従い修正される。
By changing the IP address in this way, it is possible to operate with reasonable resource allocation while temporarily changing the assigned user of the individual virtual machines having different performance indexes from the originally assigned user to another user. become. Since the individual
その後、提供された個別仮想計算機20nが他の仮想計算機と同様に定常的に運転されていれば、状態遷移は発生しない。これを示しているのが図9における状態165(シーケンス(S165)である。しかし、この場合でも前述したように、一定時間(本実施例では10分間)操作が行われない状態が継続したときは、休止時のリソース割当状態169に遷移させ、端末上で何らかのキー操作を行えば(シーケンスS171)、シーケンスS164の定常状態に復帰するように実装した。この休止状態の提供も上述した要求割り当と同じ手順が、10分間の操作が無い状態の継続をトリガーとして起動され、ユーザが端末のキーを操作すれば元の状態に回復するという自動化されたプロセスとして構成している。 After that, if the provided individual virtual machine 20n is steadily operated like other virtual machines, no state transition occurs. This is indicated by the state 165 (sequence (S165) in FIG. 9. However, even in this case, as described above, when the operation is not performed for a certain time (in this embodiment, 10 minutes), Is implemented so that if a transition is made to the resource allocation state 169 during suspension and any key operation is performed on the terminal (sequence S171), the steady state is returned to the steady state of sequence S164. This same procedure is configured as an automated process that is triggered by the continuation of a state where there is no operation for 10 minutes and is restored to the original state when the user operates a key on the terminal.
休止状態とする以外は、ユーザが一時的に利用してきた高性能の個別仮想計算機の利用を終わらせ、当初利用していた標準的性能指標をもつ個別仮想計算機の利用に戻る場合(図9のプロセス172(シーケンスS172))と、使用そのものを終了する場合に分かれる。使用そのものを終了させる場合には、先述したプロセス140(シーケンスS140)に遷移し、ユーザaに一時的に割り当てられて利用されていた個別仮想計算機20nは解放される。 Except for hibernation, the user ends the use of the high-performance individual virtual machine that has been temporarily used and returns to the use of the individual virtual machine having the standard performance index that was originally used (FIG. 9). The process 172 (sequence S172)) and the use itself are ended. When the use itself is terminated, the process proceeds to the above-described process 140 (sequence S140), and the individual virtual machine 20n that has been temporarily allocated to the user a and used is released.
通常リソース割り当状態に復帰するプロセス172(シーケンスS172)においては、手順はプロセス160(シーケンスS160)と同様にたどるが、プロセス154(シーケンスS154)で行われている、総性能指標の評価によるリソース割り当の可否の判断プロセスは省かれている。高性能機の利用からそれ以下の性能の仮想計算機に切り替える場合には、リソースの必要量は必ず低下することから、割当可否の判断は不要であることによる。これにより、復帰プロセスの処理時間は短縮され、利用者に不便をかけることが無くなっている。プロセス172(シーケンスS172)のでは、当該個別仮想計算機20nのシステム・ソフト部(コアイメージ)を、要求元のユーザa(ユーザ端末40a)に割り当てられていた標準の性能指標をもつイドリング中の個別仮想計算機20a上に複製を作成し、入出力のネットワークIPアドレスを付け替えて再割り当てを完了する。
In the process 172 (sequence S172) that returns to the normal resource allocation state, the procedure is the same as that of the process 160 (sequence S160), but the resource by the evaluation of the total performance index performed in the process 154 (sequence S154). The process for determining whether assignment is possible is omitted. This is because, when switching from the use of a high-performance machine to a virtual machine with a lower performance, the necessary amount of resources always decreases, and therefore it is not necessary to determine whether or not to allocate. As a result, the processing time of the return process is shortened, and there is no inconvenience to the user. In the process 172 (sequence S172), the system software part (core image) of the individual virtual machine 20n is individually stored in the idling having the standard performance index assigned to the requesting user a (user terminal 40a). A replica is created on the
以上、詳細に説明したように、本発明の実施例1にかかる仮想計算機システムによれば、可用性能指標「4」の性能を登録し、個別仮想計算機20aを割り当てられたユーザaが、可用性能指標「16」の性能を要する一時的処理要求レベルを行い、他のユーザに割り当てられた可用性能指標「16」の個別仮想計算機20nが空きであった場合、資源割り当てサブシステム58は、個別仮想計算機20aのシステム・ソフト部に記憶されたOS26やアプリケーションを個別仮想計算機20nにコピー(複写)し、個別仮想計算機20nの内部IPアドレスを、個別仮想計算機20aの内部IPアドレスに付け替える。この手順により、可用性能指標「16」に一時的に変更を要求したユーザに対して、該当する空きの個別仮想計算機20nを一時的に割り当て変更して利用させることができる。
As described above in detail, according to the virtual machine system according to the first embodiment of the present invention, the user a who has registered the performance of the availability ability index “4” and assigned the individual
上記実施例1にかかる仮想計算機システムにおいては、ユーザがシステムに予め設定(登録)した可用性能指標(例えば、可用性能指標「4」)に応じて当該ユーザに割り当てられた個別仮想計算機(例えば、20a)を用いた通常処理要求ではなく、前記可用性能指標を超える一時的処理要求を所望した場合、他のユーザに割り当てられたまたは未割り当ての、前記一時的処理要求を満たす可用性能指標(例えば、可用性能指標「16」を持つ個別仮想計算機を一時的に要求ユーザに割り当て変更するものであるから、該当する可用性能指標を持つ個別仮想計算機に空きがなければ、割り当ての変更は不能になる(図8のシーケンスS156参照)。設定された可用性能指標を下回る一時的処理要求の場合も同様である。 In the virtual machine system according to the first embodiment, the individual virtual machine (for example, the user assigned to the user in accordance with the availability capacity index (for example, the availability capacity index “4”) set (registered) in advance in the system by the user) When a temporary processing request exceeding the availability capability index is desired instead of a normal processing request using 20a), an availability capability index satisfying the temporary processing request assigned to another user or unallocated (for example, Since the individual virtual machine having the availability capability index “16” is temporarily allocated to the requesting user, the allocation cannot be changed unless the individual virtual computer having the availability index is available. (Refer to sequence S156 in FIG. 8.) The same applies to a temporary processing request that falls below the set availability capability index.
しかしながら、仮想計算機システムSの資源全体の中で、一時的処理要求を満足できる空き資源を提供できれば上記の不都合は生じない。例えば、予め設定(登録)された可用性能指標が「4」であり、要求された可用性能指標が「16」である上記の場合、他のユーザに割り当てられた可用性能指標「4」の4つの個別仮想計算機が空きであれば、その資源を一時的に要求元のユーザの個別仮想計算機20aに割り当て、これを可用性能指標「16」の性能を持つ個別仮想計算機20aとして運用させることもできる。
However, the above inconvenience does not occur if free resources that can satisfy the temporary processing request can be provided in the entire resources of the virtual computer system S. For example, in the above case where the availability capability index set (registered) in advance is “4” and the requested availability capability index is “16”, the availability capability index “4” assigned to another user is 4 If one individual virtual machine is available, the resource can be temporarily allocated to the individual
そこで、本実施例2にかかる仮想計算機システムでは、ある時点で存在する複数のユーザと、そのユーザに割当られている個別仮想計算機との関係を変えること無く、性能変更のための割り当メモリ量を、ユーザの要求に応じて、その時点で使用割り当されていないメモリを動的に探索し割り当することで、ユーザの要求に応えるものである。本実施例2にかかる仮想計算機システムは、使用割り当のされていない個別仮想計算機を可用性能指標によることなく排除することで、資源の節約を図っているところに特徴がある Therefore, in the virtual machine system according to the second embodiment, the amount of allocated memory for performance change without changing the relationship between a plurality of users existing at a certain point in time and individual virtual machines assigned to the user. In response to the user's request, the memory that is not allocated for use at that time is dynamically searched and allocated to meet the user's request. The virtual machine system according to the second embodiment is characterized in that resources are saved by eliminating individual virtual machines that are not assigned to use without using an availability capability index.
実施例2にかかる仮想計算機システムSの構成およびサービス提供の概念は、図1および図2に示した実施例1と同様のものである。図10は、本発明の実施例2にかかる仮想計算機システムSにおける制御用計算機50の構成を示すブロック図である。本実施例2にかかる制御用計算機50は、図3に示す実施例1にかかる制御用計算機50の構成と基本的には同様の構成であるが、メモリアロケーションテーブル60が設けられている点で実施例1の制御用計算機50とは異なる。他の構成要素は実施例1と同様であり、実施例1の制御用計算機50と同一の構成要素には同一の参照符号を付してある。説明の重複を避けるため、それら同一の構成要素についての説明は省略する。
The configuration of the virtual computer system S according to the second embodiment and the concept of service provision are the same as those in the first embodiment shown in FIGS. FIG. 10 is a block diagram illustrating the configuration of the
本実施例では、動的な資源割り当を商用的簡便さで行うために、基本仮想計算機10(図1参照)が有する実メモリを、仮想化を実現するハイパーバイザー14で仮想化されたメモリ70に変換し、以降の利用のために一定の量(本実施例では256メガバイト)毎にブロック分けして、その単位毎に論理アドレスを連番として付与している。図11はこのようなメモリアロケーションの概念を示している。図11に示すように、本実施例2では最初の256メガバイトは論理アドレス0000に、次の連続するブロック(256メガバイト)は0001の論理アドレスをもち、それに続くブロックは連続した論理アドレスが与えられている。
In this embodiment, in order to perform dynamic resource allocation with commercial simplicity, the real memory of the basic virtual computer 10 (see FIG. 1) is virtualized by the
これらのブロック単位で論理アドレスが付された実メモリが、個別仮想計算機20a〜20nにそれぞれ与えられた可用性能指標に応じて実時間における各個別仮想計算機の使用状況に応じて動的に割り当てられる。従って、図12に示す本実施例2における使用割当状況表示テーブル57には、図6に示す実施例1における使用割当状況表示テーブル57と比較してメモリアロケーションテーブル60の参照先の情報が追加されている。図12において、Zは総可用性能指標Xから使用中の可用性能指標の合算値Yを減じた値である。
The real memory to which logical addresses are assigned in units of blocks is dynamically allocated according to the usage status of each individual virtual machine in real time according to the availability capability index given to each of the individual
図13はメモリアロケーションテーブル60の構成を示しており、ユーザからの一時的処理要求に基づく資源の割り当て(資源配分)の変更前の状態の例が図13Aに示されている。この状態では、それぞれの個別仮想計算機20a〜20nが使用している仮想化されたメモリ70の論理アドレスがメモリアロケーションテーブル上で、どの論理アドレスの仮想化されたメモリブロックが配分されているかが示されている。この時点では、どのユーザもそれぞれがシステムに設定(登録)した可用性能指標を超えるあるいは下回る一時的処理要求をしていな状態を示している。
FIG. 13 shows the configuration of the memory allocation table 60, and FIG. 13A shows an example of a state before a change in resource allocation (resource allocation) based on a temporary processing request from a user. In this state, the logical address of the virtualized memory 70 used by each individual
すなわち、図13Aは、ある時間においてそれぞれの個別仮想計算機20a〜20nが使用しているメモリ(割り当てられたメモリ)の論理アドレスが記憶されたものであり、未割り当てとなっているメモリの論理アドレスも記憶される。この関係が、図11の時間断面でみた資源の配分状況(割り当て状況)72に示されている。
That is, FIG. 13A shows the memory addresses of the memories (allocated memories) used by the individual
この時点でのメモリの配分状況を説明すると、ユーザ#0001が使用している個別仮想計算機1001は論理アドレス0000で示される256メガバイトのメモリ、0001から0003までのそれぞれの256メガバイトのメモリが割り当てられており、合計1ギガバイトを使用中である。この個別仮想計算機の持つ可用性能指標は4であり、本発明では管理の容易さから、可用性能指標の1単位毎に論理アドレスの増分1単位が対応するように構成している。
Explaining the memory allocation status at this point, the individual
次に、あるユーザから予めユーザがシステムに設定(登録)してある可用性能指標を超えるまたは下回る資源を必要とする一時的処理要求があった場合について説明する。まず、ユーザがより高性能を必要とする場合には、ユーザの要求を受け付けるWEBサーバ56(図10参照)に対して、メモリ量の拡張を要求(一時的処理要求)すると、本実施例2では、追加するメモリ量と価格の情報をユーザに提供し、追加を必要とするメモリの量(増加・減少)の単位は可用性能指標に対応する256メガバイトを一単位としている。このようなメモリ量のユーザへの提示は可用性能指標を単位とし、ユーザ判断の容易さとシステム運用の簡便さを計るためである。 Next, a case will be described in which there is a temporary processing request from a certain user that requires resources that exceed or fall below the availability capability index set (registered) in the system by the user in advance. First, when the user needs higher performance, when the WEB server 56 (see FIG. 10) that accepts the user's request is requested to expand the memory amount (temporary processing request), the second embodiment Then, information on the amount of memory to be added and price information is provided to the user, and the unit of the amount of memory (increase / decrease) that needs to be added is 256 megabytes corresponding to the availability capability index. The purpose of presenting such a memory amount to the user is to measure the ease of user judgment and the ease of system operation using the availability capability index as a unit.
具体例としては、例えば、ユーザ#0003が使用している個別仮想計算機1003のすでに配分されているメモリ量である可用性能指標「2」を、4単位増加させ可用性能指標「6」とする要求を行った場合である。図14はこの場合を具体例とした割り当てサブシステム58が資源を再配分する詳細な処理の手順を示すシーケンス図である。
As a specific example, for example, a request to increase the availability capability index “2”, which is the amount of memory already allocated to the individual
ユーザからの要求をWEBサーバ56が受け付けると、次に資源割当てサブシステム58に対して、個別仮想計算機1003の可用性能指標を「6」に変更する指示を行う。資源割り当てサブシステム58はWEBサーバ56の指示を受けると、変更要求に伴い割り当てを増加すべきメモリ量を算出する。この場合、当初の(予め設定された)可用性能指標は「2」であり、変更が要求された可用性能指標は「6」であるから、追加割割り当てすべきメモリ量は可用性能指標「4」相当分であると判断される(シーケンスS261)。
When the
次いで、資源割り当てサブシステム58は、図13Aに図示するメモリアロケーションテーブル60の中の「未割り当てブロック」をスキャンし、その時点で配分されていない論理アドレス番号を検索し、増加を必要とする可用性能指標に合致する数まで論理アドレスを抽出する。今回は4単位を追加するので、未割り当のリストから、論理アドレス1013,1014,1017,1018の計4単位を抽出する(シーケンスS262)。
The
次に、抽出した論理アドレスリストをメモリアロケーションテーブル60の個別仮想計算機番号1003の配分メモリの論理アドレスが記録されている領域に追記する。そうすると、配分前には1011と1012のみであったものが、論理アドレスのリストは1011,1012,1013,1014,1017,1018と書き換えられる(シーケンスS263)。これにより、ユーザが要求する可用性能指標6とするための用意ができた。図13Bはこの時点のメモリアロケーションテーブル60の状態を示している。
Next, the extracted logical address list is added to the area where the logical address of the allocated memory of the individual
次に、このメモリの論理アドレスを有効化する(割り当てられた個別仮想計算機のOSが認識できるようにする)必要があり、その有効化のためには当該個別仮想計算機のOSを再立ち上げする。そのために、資源割り当サブシステム58は論理アドレスのリストを書き換えた後に、当該OSに対してサービス間連携プロセス59を経由して「再起動」の指示を送り、一旦当該OSをシャットダウンしその後、自動的に当該OSが立ち上がるのを待つ(シーケンスS263)。
Next, it is necessary to validate the logical address of this memory (so that the OS of the assigned individual virtual machine can be recognized), and for the validation, the OS of the individual virtual machine is restarted. . Therefore, after rewriting the list of logical addresses, the
本実施例2では「再起動」の指示をOSに送った後にOSが立ち上がり、使用に供されるようになるまでの時間は45秒から1分30秒程度と、搭載しているアプリケーションの多寡によりばらつきがあった。しかし、ハードウェアとしての計算機を交換するのに必要とする時間を勘案すると、著しく短時間で性能の変更を行うことができている。この状態で必要な時間だけ、ユーザが要求した可用性能指標を満足する個別仮想計算機を一時処理要求に基づく処理が完了するまで利用し続けることができる(シーケンスS264)。すなわち、個別仮想計算機に対して連続して操作があれば、資源の追加配分を受けた状態で運転が継続される(シーケンスS265)。
In the second embodiment, after the “restart” instruction is sent to the OS, it takes 45 seconds to 1
次に、高性能の個別仮想計算機の利用を終了させ、割り当てられた個別仮想計算機の性能(可用性能指標)を変更前の性能に戻す必要がある場合や、個別仮想計算機そのものの利用を終わらせる選択がされる場合がある。図14におけるシーケンスS266(状態266)が、この状態変更の判断を行っていることを意味している。ユーザは前記したように、性能を変更する必要が発生した場合にはWEBサーバ56に対して、再度処理能力の変更(この場合には、元の変更前の状態に戻す、あるいは、使用そのものを中止する、という変更選択がなされる)要求を行う。 Next, terminate the use of the high-performance individual virtual machine, and if the performance (availability index) of the assigned individual virtual machine needs to be returned to the performance before the change, or terminate the use of the individual virtual machine itself There may be a choice. Sequence S266 (state 266) in FIG. 14 means that this state change is being determined. As described above, when it is necessary to change the performance, the user again changes the processing capacity to the WEB server 56 (in this case, return to the original state before the change, or change the use itself). Request to change).
元の、性能に戻す場合には、図14のシーケンスS267に示すように、これまで行われてきた操作の逆が実施され、資源割り当てサブシステム58は、WEBサーバ56から、割り当てメモリを減少させる指示を受取り、現在個別仮想計算機に割り当てられているメモリの論理アドレスが1011,1012,1013,1014,1017,1018であることを確認する。次いで、要求の意味する論理アドレス(ブロック数)が「2」(可用性能指標の差)になるためには、1013,1014,1017,1018の4ブロックを減ずる必要があることを認識する。
In the case of returning to the original performance, as shown in the sequence S267 of FIG. 14, the reverse of the operation performed so far is performed, and the
本実施例では、新たに追加するときは論理アドレスの番号の少ない方から追加し、減ずるときは大きい番号から減ずるというアルゴリズムを採用している。従って、減ずる必要がある論理アドレス1013,1014,1017,1018の計4単位のメモリは、メモリアロケーションテーブル60の未割り当領域に移動される。ここでいう移動とは、メモリアロケーションテーブル60上の個別仮想計算機1003に登録されているメモリの論理アドレスから、移動対象のメモリの論理アドレスが削除され、その論理アドレスが未割り当領域に追記されることをいう。
In the present embodiment, an algorithm is adopted in which a new logical address is added from a smaller logical address number, and a new logical address is decreased from a larger number. Accordingly, a total of four units of
これにより、配分変更の前には1011,1012,1013,1014,1017,1018であったものが(図13B参照)、論理アドレスのリストは1011,1012と、元の状態に書き換えられる(図13A参照)。これにより、ユーザが要求する可用性能指標2に戻すための用意ができた。次に、このメモリの論理アドレスを有効化する必要があり、その有効化のためには当該個別仮想計算機のOSを再立ち上げする必要がある。なお、当該個別仮想計算機で使用している以外のOSはなんらの操作はしない。
As a result, what was 1011, 1012, 1013, 1014, 1017, 1018 before the distribution change (see FIG. 13B), the logical address list is rewritten to the original state as 1011, 1012 (FIG. 13A). reference). Thus, preparations for returning to the
資源割り当サブシステム58は、上記したとおり、メモリアロケーションテーブル60の論理アドレスのリストを書き換えた後に、当該OSに対して「再起動」の指示を送り、一旦OSをシャットダウンしその後の自動立ち上がりを待つ。この手順により、個別仮想計算機は、可用性能指標「2」の個別仮想計算機に戻り、一時的に利用していた一旦OSをシャットダウンしその後の自動立ち上がりを待つ。この手順により、可用性能指標2の個別仮想計算機に戻り、一時的に利用していたメモリは開放される。
As described above, the
これとは別に、操作を終了する選択を行った場合には、個別仮想計算機1003に配分されていた論理アドレス1011,1012,1013,1014,1017,1018のすべてが、未割り当領域に書き換えられた後に、当該OSの終了オプションの内「シャットダウンする」指示が送られ、当該OSの稼働が停止し個別仮想計算機の使用が終了する(シーケンスS268)。
In addition to this, when the selection to end the operation is performed, all of the
以上、説明した実施例2にかかる仮想計算機システムによれば、実施例1にかかる仮想計算機システムにおいて、ユーザからの予めシステムに登録した所望の計算機性能レベルを超えるか下回る計算機性能レベルへの変更を伴う一時的な処理要求に対して、変更を要求された計算機性能レベルに応じた量のメモリ資源を満たすように資源を割り当てることができるようになる。 As described above, according to the virtual computer system according to the second embodiment described above, in the virtual computer system according to the first embodiment, a change from a user to a computer performance level that exceeds or falls below a desired computer performance level registered in the system in advance. In response to a temporary processing request, resources can be allocated so as to satisfy an amount of memory resources corresponding to the requested computer performance level.
以上、説明した実施例2にかかる仮想計算機システムによれば、ユーザがシステムに予め設定(登録)した処理性能(可用性能指標)を超えるまたは下回る一時的処理要求を行った場合、該ユーザに割り当てられた所定の可用性能指標を持つ個別仮想計算機を変更することなく、当該個別仮想計算機に割り当てられ資源配分(メモリ量)を一時的に増減するものであった。また、先に説明した実施例1にかかる仮想計算機システムにおいては、ユーザがシステムに予め設定(登録)した処理性能(可用性能指標)を超えるまたは下回る一時的処理要求を行った場合、ユーザに割り当てられた個別仮想計算機を用いず、他のユーザに割り当てられたまたは未割り当ての前記一時的処理要求を満たす可用性能指標を持つ、空きの個別仮想計算機を一時的に要求ユーザに割り当て変更するものであった。 As described above, according to the virtual machine system according to the second embodiment described above, when a temporary processing request exceeding or lowering the processing performance (availability index) previously set (registered) by the user is assigned to the user, The resource allocation (memory amount) allocated to the individual virtual machine is temporarily increased or decreased without changing the individual virtual machine having the predetermined availability capability index. Further, in the virtual machine system according to the first embodiment described above, when a temporary processing request that exceeds or falls below the processing performance (availability index) set (registered) in the system by the user is assigned to the user, A temporary individual virtual machine having an availability capability index satisfying the temporary processing request assigned to or not assigned to another user is temporarily assigned to the requesting user without using the assigned individual virtual machine. there were.
これら第1の実施例、第2の実施例に加えて、第1の実施例の構成と第2の実施例の構成を併用した仮想計算機システムを構築することができる。本発明の実施例3にかかる仮想計算機システムは、可用性能指標0.2という一般的にスクリーンセーバーと呼ばれるような、入力信号を待っているだけの状態の個別仮想計算機を1または複数台構築し、ユーザに本来割り当てた個別仮想計算機において一定時間(本実施例では10分間)操作が行われない状態が継続した時、当該ユーザにこの可用性能指標の個別仮想計算機を使用させるように実施例1の手順(IPアドレスの付け替えとシステム・ソフト部の複写)を適用するとともに、ユーザの要求する可用性能指標に応じたメモリ量の増減(実施例2の手順)も要求に応じて適用する。 In addition to the first embodiment and the second embodiment, a virtual computer system using both the configuration of the first embodiment and the configuration of the second embodiment can be constructed. The virtual computer system according to the third embodiment of the present invention constructs one or a plurality of individual virtual computers that are simply waiting for an input signal, generally called a screen saver with an availability capability index of 0.2, When an individual virtual machine originally assigned to a user has not been operated for a certain period of time (10 minutes in this embodiment), the user can use the individual virtual machine with the availability capability index of the first embodiment. In addition to applying the procedure (IP address replacement and system software copy), the memory amount increase / decrease according to the availability capability index requested by the user (procedure of the second embodiment) is also applied as required.
以下、簡単に本発明の実施例3にかかる仮想計算機システムについて説明する。この仮想計算機システムSは、実施例1にあるような可用性能指標「0.2」という一般的にスクリーンセーバーと呼ばれるような、入力信号を待っているだけの状態の個別仮想計算機を一定時間操作が行われない状態が継続する個別仮想計算機と一時的に入れ替えることで総資源の節約、効率的利用を図ったものである。本実施例3における仮想計算機システムの基本構成は、図1に示す構成と同様の構成であり、制御用計算機は図10に示す実施例2にかかる制御用計算機の構成と同様の構成である。 A virtual machine system according to the third embodiment of the present invention will be briefly described below. In this virtual computer system S, an individual virtual computer that is simply waiting for an input signal, such as an availability capability index “0.2” as in the first embodiment, generally called a screen saver, can be operated for a certain period of time. It is intended to save total resources and use them efficiently by temporarily replacing them with individual virtual machines that are not used. The basic configuration of the virtual computer system in the third embodiment is the same as the configuration shown in FIG. 1, and the control computer is the same as the configuration of the control computer according to the second embodiment shown in FIG.
この実施例では、図11の個別仮想計算機の使用割当状況表示テーブル内に新たに個別仮想計算機で可用性能指標「0.2」の割当をしたものを複数台設置し、管理のために個別仮想計算機番号として2001,2002〜2010と番号を与えている。これらの個別仮想計算機群は、内部IPアドレスとしては異なるセグメントである192.168.20.XXX(XXXは1から10まで)を付与し、個別仮想計算機番号2001のIPアドレスは192.168.20.1に番号2002のアドレスは192.168.20.2に、他もそれぞれが対応する様にアドレスを付与して、ユーザに割り当てられる個別仮想計算機とは別管理が行えるように構成している。
In this embodiment, in the individual virtual machine usage allocation status display table of FIG. 11, a plurality of newly allocated virtual capacity computers with the availability capability index “0.2” are installed, and individual virtual machines are managed for the purpose of management. As computer numbers,
従って、これらの変更用個別仮想計算機は専ら、ユーザに本来割り当てた個別仮想計算機において一定時間操作が行われない状態が継続する時(休止状態と呼ぶ)に当該個別仮想計算機の資源を節約するためユーザに割り当てられた個別仮想計算機の割り当て変更用に用いることができる。この構成により実施例1において空きの個別仮想計算機がない状態や、変更により一時的に他のユーザに変更して割り当てられた個別仮想計算機の本来ユーザの使用と重複して当該他のユーザの使用が待たされる事態が生ずるような不都合が緩和される。 Therefore, these individual virtual machines for change are exclusively used to save the resources of the individual virtual machines when the individual virtual machines originally assigned to the user are not operated for a certain period of time (referred to as hibernation). It can be used for changing the assignment of an individual virtual machine assigned to a user. With this configuration, there is no empty individual virtual machine in the first embodiment, or the use of the other user overlaps with the original user's use of the individual virtual machine that is temporarily changed and assigned to another user due to the change. The inconvenience that causes a situation where the user waits is alleviated.
あるユーザに割り当てられた個別仮想計算機において、一定時間ユーザによる操作が行われない休止状態が継続する場合、資源割り当てサブシステム(図10参照)は、変更用個別仮想計算機のうち空きの1つを当該ユーザにタイマーによる管理で自動的に(図7のシーケンスS122)、一時的に割り当てる。この割当ての手順は、実施例1において採用した図9のシーケンスS166,S167,S169の順番で、システム・ソフト部の複製、内部IPアドレスの付け替えを行った後、変更用個別仮想計算機の連続運転に移行する(図7のシーケンスS130)手順である。 In the individual virtual machine assigned to a certain user, when the hibernation state in which no operation is performed by the user for a certain period of time continues, the resource allocation subsystem (see FIG. 10) uses one of the individual virtual machines for change to be free. The user is automatically assigned temporarily by the management by the timer (sequence S122 in FIG. 7). This allocation procedure is the sequence of S166, S167, and S169 in FIG. 9 employed in the first embodiment, after duplicating the system software section and reassigning the internal IP address, and then continuously operating the individual virtual machine for change. (Sequence S130 in FIG. 7).
休止状態を終了し本来の使用状態に戻す場合は、当該変更用個別仮想計算機を開放して処理を終了する(実施例1、図9のシーケンスS171)が、その具体的プロセスは、システム・ソフト部を本来ユーザに割り当てられていた個別仮想計算機に複製し、IPアドレスの付け替えを行う(図9のシーケンスS162、S163と同様の手順となる)。これによりユーザの一時的休止状態(一時的処理要求と見做すことができる)に対して一時的に事前に設定された少量の資源を配分することができ、その後ユーザは本来割り当てられた個別仮想計算機に復帰して通常処理要求を実行することができる。 When returning from the hibernation state to the original use state, the individual virtual machine for change is released and the processing is terminated (Sequence S171 in FIG. 9 in the first embodiment). Are copied to the individual virtual machine originally assigned to the user, and the IP address is changed (the procedure is the same as the sequence S162 and S163 in FIG. 9). This allows a small amount of preset resources to be temporarily allocated to the user's temporary dormant state (which can be regarded as a temporary processing request), after which the user is assigned an individual The normal processing request can be executed by returning to the virtual machine.
なお、上記の説明は、ユーザに本来割り当てられた個別仮想計算機において、一定時間ユーザ操作がなく休止状態にある場合に、変更用仮想計算機を当該ユーザに一時的に割り当てる態様であるが、ユーザから予め登録した可用性能指標を超える又は下回る一時的所要求があった場合にも適用することができる。この場合、変更用個別仮想計算機を一時的に該当ユーザに割り当てる実施例1の手順と、変更用個別仮想計算機に割り当てられたメモリ資源を増減させる実施例2の手順とを併用して適用すればよい。 The above description is a mode in which an individual virtual machine originally assigned to a user is temporarily assigned a change virtual machine to the user when there is no user operation for a certain period of time and is in a dormant state. The present invention can also be applied when there is a temporary request that exceeds or falls below a pre-registered availability capability index. In this case, if the procedure of the first embodiment for temporarily assigning the individual virtual machine for change to the corresponding user and the procedure of the second embodiment for increasing or decreasing the memory resources assigned to the individual virtual machine for change are applied in combination. Good.
上記実施例3は、実施例2では本来ユーザに割り当てられた個別仮想計算機が休止状態を継続している場合の資源の有効活用が実現できていない課題へ対応する解決策を提供するために実施例1と実施例2の技術を複合して構築したものである。しかし、実施例1と実施例2の複合構成による構成は休止状態の実現に留まらず、より広範な領域への適応が可能になっている。その応用例を以下に示す。 The third embodiment is implemented in order to provide a solution to the problem that the effective utilization of resources cannot be realized when the individual virtual machine originally assigned to the user in the second embodiment is in the dormant state. This is constructed by combining the techniques of Example 1 and Example 2. However, the configuration of the combined configuration of the first embodiment and the second embodiment is not limited to the realization of the dormant state, and can be applied to a wider area. The application example is shown below.
実施例1では、個別仮想計算機の可用性能指標を「0.2」、「1」、4から「16」と管理の容易さから実施例2(可用性能指標は1を増減の単位とするステップになっている)と比較すると粗い段階分けとなっている。ユーザの要求によっては、一層きめ細かい性能の割当て変更を要求される場合があり、そうした要求に応えるには、例えば可用性能指標4(この場合の主メモリの配分量は1Gバイト)までは、実施例1の割当て方式を採用し、可用性能指標4を越えてユーザが追加の性能を要求した場合には、実施例2の方式の、よりきめ細かく主メモリの配分を制御することで、一層ユーザの要求に忠実に応える解決策を提供する事もできる。
In the first embodiment, the availability capacity index of the individual virtual machine is set to “0.2”, “1”, 4 to “16”, which is easy to manage the second embodiment (the availability capacity index is a step in which 1 is the increment / decrement unit. It is a rough stage division compared to Depending on the user's request, it may be required to change the allocation of performance more finely. To meet such a request, for example, up to the availability capability index 4 (in this case, the distribution amount of the main memory is 1 Gbyte) When the allocation method of 1 is adopted and the user requests additional performance beyond the
その他の適応事例としては、図5に示す汎用ラップトップ機相当(可用性能指標4)を標準としたときに、どの機種(どの可用性能指標)を選択するかの一義的(最初の)選択には実施例1の方式で対応させるが、一旦実施例1の方式で対応した後に、調整的(可用性能指標の変更幅がプラスマイナス2程度の)変更には実施例2の方式を採用するという、複合構成の実装も可能である。 As another application example, when the standard equivalent to the general-purpose laptop machine shown in FIG. 5 (availability capability index 4) is used as a standard, a unique (first) selection of which model (which availability capability index) is selected The method according to the first embodiment is used, but once the method according to the first embodiment is used, the method according to the second embodiment is adopted for the adjustment (the availability capability index change range is about plus or minus 2). A composite configuration can also be implemented.
以上、詳細に説明したように、本発明にかかる仮想計算機システムによれば、仮想計算機システム内に複数の個別仮想計算機を配置し、ユーザの都度の要求に応じた処理能力を、商用的簡便さで提供することができ、従来の仮想計算機システムに比較して低コストで、おおむねにおいて最適な資源配分を達成することができるようになる。 As described above in detail, according to the virtual machine system according to the present invention, a plurality of individual virtual machines are arranged in the virtual machine system, and the processing capability according to each user's request is obtained for commercial convenience. In general, the optimal resource allocation can be achieved at a lower cost than the conventional virtual computer system.
本発明にかかる仮想計算機システムは、ユーザ(ユーザ端末)と基本仮想計算機10の実体が1つの組織や拠点内にあるイントラネットを用いたシステムに適用できるが、インターネットや広域専用線を用いて広域(社外などに)分散するユーザにサービスを提供するシステムとして好適に適用することができる。
その他、個人事業主などのように情報システムに関する専門家の支援が得にくい職種や事業形態の利用者に、当該サービスを集中的に生成し提供することにより、OSなどの世代交代があっても、情報システムやパソコンの買い替え無しに、より高性能の機能を利用でき、買い替えをした場合に発生する旧型機の廃棄などの環境問題に対してもエコロジカルな解決策を提供することができる。
The virtual machine system according to the present invention can be applied to a system using an intranet in which an entity of a user (user terminal) and a basic virtual machine 10 is in one organization or base, but can be applied to a wide area ( The present invention can be suitably applied as a system that provides services to distributed users (outside the company etc.).
In addition, even if there is a generational change in the OS, etc., by intensively generating and providing the service to users of occupations and business forms that are difficult to obtain assistance from information system specialists such as individual business owners Therefore, it is possible to use higher-performance functions without replacement of information systems and personal computers, and to provide ecological solutions to environmental problems such as disposal of old models that occur when replacement is performed.
S・・・・仮想計算機システム
10・・・基本仮想計算機
12・・・実計算機
14・・・ハイパーバイザー
20a〜20n・・・・個別仮想計算機
22a〜22n・・・・システム・ソフト部
24a〜24n・・・・プロセッサ部
26・・・OS
28・・・個別アプリケーション
29・・・共通アプリケーション
30・・・ネットワーク
40a〜40n・・・・ユーザ端末
50・・・制御用計算機
55・・・ハイパーバイザーIF
56・・・WEBサーバ
57・・・使用割当状況表示テーブル
58・・・資源割り当てサブシステム
59・・・サービス間連携プロセス
60・・・メモリアロケーションテーブル
70・・・仮想化されたメモリ
S ··· Virtual computer system 10 ··· Basic
28 ...
56 ...
Claims (14)
前記仮想計算機システムは、ユーザの処理要求を受け付けるWEBサーバと、該WEBサーバからの指示に基づいて前記個別仮想計算機への割り当て資源の配分を特定する資源割り当てサブシステムと、各個別仮想計算機毎に割り当てユーザと使用状況と資源の割り当て状況を示す情報を蓄積した使用割当状況表示テーブルと、を備え、
ユーザが予めシステムに登録した所望の計算機性能レベルを満たすに足るだけの資源が配分された前記個別仮想計算機を当該ユーザに割り当て、
ユーザから、前記予めシステムに登録した所望の計算機性能レベルを超えるかまたは下回る計算機性能レベルへの変更を伴う処理要求が前記WEBサーバに送信された場合、前記資源割り当てサブシステムは、使用割当状況表示テーブルを参照して、前記処理要求において変更を要求された計算機性能レベルに応じた空き資源を抽出し、当該ユーザに割り当てた個別仮想計算機を含む資源の割り当てを変更して配分することを特徴とする仮想計算機システム。 A virtual system in which a total resource of one or more real computers is logically divided, and a plurality of individual virtual computers, each of which is independent of each other, are constructed on the one or more real computers and controlled by a hypervisor. A computer system,
The virtual machine system includes a WEB server that accepts a user's processing request, a resource allocation subsystem that specifies allocation of allocated resources to the individual virtual machine based on an instruction from the WEB server, and an individual virtual machine A usage allocation status display table storing information indicating the allocation user, usage status, and resource allocation status,
Assigning to the user the individual virtual machine to which resources sufficient to satisfy a desired computer performance level previously registered in the system by the user are allocated;
When a processing request accompanied by a change to a computer performance level that exceeds or falls below the desired computer performance level registered in advance in the system is sent from the user to the WEB server, the resource allocation subsystem displays the usage allocation status display. A free resource corresponding to the computer performance level requested to be changed in the processing request is extracted with reference to the table, and the allocation of resources including the individual virtual machines allocated to the user is changed and distributed. A virtual machine system.
ユーザから、前記予めシステムに登録した所望の計算機性能レベルを超える計算機性能レベルへの変更を伴う処理要求が前記WEBサーバに送信された場合、前記資源割り当てサブシステムは、前記メモリアロケーションテーブルを参照して、前記未配分の仮想メモリの論理アドレスを抽出し、前記処理要求において変更を要求された計算機性能レベルに応じた量のメモリ資源を満たすように、仮想メモリ資源を増加して当該ユーザに一時的に割り当てて前記メモリアロケーションテーブルを更新し、
ユーザから、前記予めシステムに登録した所望の計算機性能レベルを下回る計算機性能レベルへの変更を伴う処理要求が前記WEBサーバに送信された場合、前記資源割り当てサブシステムは、前記メモリアロケーションテーブルを参照して、当該ユーザに割り当てられている仮想メモリ資源のうち、前記処理要求において変更を要求された計算機性能レベルに応じた量のメモリ資源を満たすように、仮想メモリ資源を減じて当該ユーザに一時的に割り当て、該減じた仮想メモリ資源を未配分として前記メモリアロケーションテーブルを更新することを特徴とする請求項1に記載の仮想計算機システム。 The memory resource of the virtual computer system is a virtual memory in which a real memory is divided in units of a predetermined storage capacity, and a logical address is assigned to each divided unit storage area, and the virtual computer system further includes: A memory allocation table storing a virtual memory logical address allocated to each individual virtual machine and an unallocated virtual memory logical address;
When a processing request accompanied by a change to a computer performance level exceeding the desired computer performance level registered in the system is transmitted from the user to the WEB server, the resource allocation subsystem refers to the memory allocation table. Then, the logical address of the unallocated virtual memory is extracted, and the virtual memory resource is increased and temporarily allocated to the user so as to satisfy the amount of memory resource corresponding to the computer performance level requested to be changed in the processing request. Assigning and updating the memory allocation table,
When a processing request accompanied by a change to a computer performance level lower than the desired computer performance level registered in the system is transmitted from the user to the WEB server, the resource allocation subsystem refers to the memory allocation table. Among the virtual memory resources allocated to the user, the virtual memory resource is temporarily reduced to the user so as to satisfy the amount of memory resource corresponding to the computer performance level requested to be changed in the processing request. The virtual computer system according to claim 1, wherein the memory allocation table is updated by allocating the reduced virtual memory resource as unallocated.
前記複数の個別仮想計算機のうち、ユーザの一時的な処理要求に対して一時的に割り当てる個別仮想計算機を1または複数の一時的割り当て個別仮想計算機として構成され、
前記仮想計算機システムのメモリ資源は、実メモリを所定の記憶容量の単位で分割し、分割された単位記憶領域毎に論理アドレスが付与された仮想化メモリであり、
前記仮想計算機システムは、前記各個別仮想計算機に配分される仮想化メモリの論理アドレスおよび未配分の仮想化メモリの論理アドレスが記憶されるメモリアロケーションテーブルと、ユーザの処理要求を受け付けるWEBサーバと、該WEBサーバからの指示に基づいて前記個別仮想計算機への割り当て資源の配分を特定する資源割り当てサブシステムと、各個別仮想計算機毎に割り当てユーザと使用状況と資源の割り当て状況を示す情報を蓄積した使用割当状況表示テーブルと、を備え、
ユーザが予めシステムに登録した所望の計算機性能レベルを満たすに足るだけの資源が配分された前記個別仮想計算機を当該ユーザに割り当て、
ユーザから、前記予めシステムに登録した所望の計算機性能レベルを超えるかまたは下回る計算機性能レベルへの変更を伴う処理要求が前記WEBサーバに送信された場合、前記資源割り当てサブシステムは、使用割当状況表示テーブルを参照して、空きの一時的割り当て個別仮想計算機を抽出するとともに、前記メモリアロケーションテーブルを参照して、当該ユーザに割り当てられている仮想メモリ資源のうち、前記処理要求において変更を要求された計算機性能レベルに応じた量のメモリ資源を満たすように、仮想メモリ資源を増減して前記抽出した一時的割り当て個別仮想計算機に配分することを特徴とする仮想計算機システム。 A virtual system in which a total resource of one or more real computers is logically divided, and a plurality of individual virtual computers, each of which is independent of each other, are constructed on the one or more real computers and controlled by a hypervisor. A computer system,
Among the plurality of individual virtual machines, an individual virtual machine that is temporarily allocated in response to a user's temporary processing request is configured as one or a plurality of temporarily allocated individual virtual machines,
The memory resource of the virtual computer system is a virtual memory in which a real memory is divided in units of a predetermined storage capacity, and a logical address is assigned to each divided unit storage area,
The virtual machine system includes a memory allocation table in which a logical address of a virtual memory allocated to each individual virtual machine and a logical address of an unallocated virtual memory are stored, a WEB server that receives a user processing request, A resource allocation subsystem that identifies the allocation of allocated resources to the individual virtual machines based on instructions from the WEB server, and information indicating the allocated users, usage status, and resource allocation status for each individual virtual machine A usage allocation status display table,
Assigning to the user the individual virtual machine to which resources sufficient to satisfy a desired computer performance level previously registered in the system by the user are allocated;
When a processing request accompanied by a change to a computer performance level that exceeds or falls below the desired computer performance level registered in advance in the system is sent from the user to the WEB server, the resource allocation subsystem displays the usage allocation status display. With reference to the table, free temporary allocation individual virtual machines are extracted, and referring to the memory allocation table, a change is requested in the processing request among the virtual memory resources allocated to the user. A virtual computer system characterized in that virtual memory resources are increased or decreased and allocated to the extracted temporarily allocated individual virtual computers so as to satisfy an amount of memory resources corresponding to a computer performance level.
前記複数の個別仮想計算機のうち、ユーザに対して一時的に割り当てる個別仮想計算機を1または複数の一時的割り当て個別仮想計算機として構成され、
前記仮想計算機システムのメモリ資源は、実メモリを所定の記憶容量の単位で分割し、分割された単位記憶領域毎に論理アドレスが付与された仮想化メモリであり、
前記仮想計算機システムは、前記各個別仮想計算機に配分される仮想化メモリの論理アドレスおよび未配分の仮想化メモリの論理アドレスが記憶されるメモリアロケーションテーブルと、ユーザの処理要求を受け付けるWEBサーバと、該WEBサーバからの指示に基づいて前記個別仮想計算機への割り当て資源の配分を特定する資源割り当てサブシステムと、各個別仮想計算機毎に割り当てユーザと使用状況と資源の割り当て状況を示す情報を蓄積した使用割当状況表示テーブルと、を備え、
前記ユーザに配分された前記個別仮想計算機において一定時間入出力の操作がなされない状態が継続した時に、前記資源割り当てサブシステムは、使用割当状況表示テーブルを参照して当該仮想計算機のユーザへの割り当てを自動的に解除し、事前に用意した限定的資源配分の一時割り当て個別仮想計算機を自動的に割り当て、ユーザに配分された前記個別仮想計算機に付与されたIPアドレスを当該ユーザに割り当てられた限定的資源配分の個別仮想計算機に付与されたIPアドレスに付け替えることにより当該ユーザに限定的資源配分の個別仮想計算機を一時的に割り当てることを特徴とする仮想計算機システム。 A virtual system in which a total resource of one or more real computers is logically divided, and a plurality of individual virtual computers, each of which is independent of each other, are constructed on the one or more real computers and controlled by a hypervisor. A computer system,
Among the plurality of individual virtual machines, an individual virtual machine that is temporarily allocated to a user is configured as one or a plurality of temporarily allocated individual virtual machines,
The memory resource of the virtual computer system is a virtual memory in which a real memory is divided in units of a predetermined storage capacity, and a logical address is assigned to each divided unit storage area,
The virtual machine system includes a memory allocation table in which a logical address of a virtual memory allocated to each individual virtual machine and a logical address of an unallocated virtual memory are stored, a WEB server that receives a user processing request, A resource allocation subsystem that identifies the allocation of allocated resources to the individual virtual machines based on instructions from the WEB server, and information indicating the allocated users, usage status, and resource allocation status for each individual virtual machine A usage allocation status display table,
When the state in which the input / output operation is not performed for a certain period of time continues in the individual virtual machine allocated to the user, the resource allocation subsystem refers to the usage allocation status display table and allocates the virtual machine to the user. Is automatically released, and a temporary allocation individual virtual machine with limited resource allocation prepared in advance is automatically assigned, and the IP address assigned to the individual virtual machine allocated to the user is assigned to the user. A virtual computer system characterized by temporarily assigning an individual virtual computer with limited resource allocation to the user by changing to an IP address assigned to the individual virtual computer with physical resource allocation.
前記仮想計算機システムは、ユーザの処理要求を受け付けるWEBサーバと、該WEBサーバからの指示に基づいて前記個別仮想計算機への割り当て資源の配分を特定する資源割り当てサブシステムと、各個別仮想計算機毎に割り当てユーザと使用状況と資源の割り当て状況を示す情報を蓄積した使用割当状況表示テーブルと、を備え、
ユーザが予めシステムに登録した所望の計算機性能レベルを満たすに足るだけの資源が配分された前記個別仮想計算機を当該ユーザに割り当てるステップと、
ユーザから、前記予めシステムに登録した所望の計算機性能レベルを超えるかまたは下回る計算機性能レベルへの変更を伴う処理要求が前記WEBサーバに送信された場合、前記資源割り当てサブシステムが、使用割当状況表示テーブルを参照して、前記処理要求において変更を要求された計算機性能レベルに応じた空き資源を抽出するステップと、当該ユーザに割り当てた個別仮想計算機を含む資源の割り当てを変更して配分するステップと、有することを特徴とする仮想計算機システムにおける資源配分制御方法。 A virtual system in which a total resource of one or more real computers is logically divided, and a plurality of individual virtual computers, each of which is independent of each other, are constructed on the one or more real computers and controlled by a hypervisor. A resource allocation control method in a computer system, comprising:
The virtual machine system includes a WEB server that accepts a user's processing request, a resource allocation subsystem that specifies allocation of allocated resources to the individual virtual machine based on an instruction from the WEB server, and an individual virtual machine A usage allocation status display table storing information indicating the allocation user, usage status, and resource allocation status,
Assigning to the user the individual virtual machine to which resources sufficient to satisfy a desired computer performance level previously registered in the system by the user are allocated;
When a processing request accompanied by a change to a computer performance level that exceeds or falls below the desired computer performance level registered in advance in the system is sent from the user to the WEB server, the resource allocation subsystem displays the usage allocation status display. Referring to a table, extracting free resources according to the computer performance level requested to be changed in the processing request, and changing and allocating resources including individual virtual machines assigned to the user; A resource allocation control method in a virtual computer system, comprising:
ユーザから、前記予めシステムに登録した所望の計算機性能レベルを超える計算機性能レベルへの変更を伴う処理要求が前記WEBサーバに送信された場合、前記資源割り当てサブシステムは、前記メモリアロケーションテーブルを参照して、前記未配分の仮想メモリの論理アドレスを抽出し、前記処理要求において変更を要求された計算機性能レベルに応じた量のメモリ資源を満たすように、仮想メモリ資源を増加して当該ユーザに一時的に割り当てて前記メモリアロケーションテーブルを更新するステップと、
ユーザから、前記予めシステムに登録した所望の計算機性能レベルを下回る計算機性能レベルへの変更を伴う処理要求が前記WEBサーバに送信された場合、前記資源割り当てサブシステムは、前記メモリアロケーションテーブルを参照して、当該ユーザに割り当てられている仮想メモリ資源のうち、前記処理要求において変更を要求された計算機性能レベルに応じた量のメモリ資源を満たすように、仮想メモリ資源を減じ、該減じた仮想メモリ資源を未配分として前記メモリアロケーションテーブルを更新するステップと、有することを特徴とする請求項8に記載の仮想計算機システムにおける資源配分制御方法。 The memory resource of the virtual computer system is a virtual memory in which a real memory is divided in units of a predetermined storage capacity, and a logical address is assigned to each divided unit storage area, and the virtual computer system further includes: A memory allocation table storing a virtual memory logical address allocated to each individual virtual machine and an unallocated virtual memory logical address;
When a processing request accompanied by a change to a computer performance level exceeding the desired computer performance level registered in the system is transmitted from the user to the WEB server, the resource allocation subsystem refers to the memory allocation table. Then, the logical address of the unallocated virtual memory is extracted, and the virtual memory resource is increased and temporarily allocated to the user so as to satisfy the amount of memory resource corresponding to the computer performance level requested to be changed in the processing request. Allocating and updating the memory allocation table;
When a processing request accompanied by a change to a computer performance level lower than the desired computer performance level registered in the system is transmitted from the user to the WEB server, the resource allocation subsystem refers to the memory allocation table. The virtual memory resources are reduced to satisfy the amount of memory resources corresponding to the computer performance level requested to be changed in the processing request among the virtual memory resources allocated to the user. 9. The resource allocation control method in a virtual machine system according to claim 8, further comprising a step of updating the memory allocation table with no resources allocated.
前記複数の個別仮想計算機のうち、ユーザの一時的な処理要求に対して一時的に割り当てる個別仮想計算機を1または複数の一時的割り当て個別仮想計算機として構成され、
前記仮想計算機システムのメモリ資源は、実メモリを所定の記憶容量の単位で分割し、分割された単位記憶領域毎に論理アドレスが付与された仮想化メモリであり、
前記仮想計算機システムは、前記各個別仮想計算機に配分される仮想化メモリの論理アドレスおよび未配分の仮想化メモリの論理アドレスが記憶されるメモリアロケーションテーブルと、ユーザの処理要求を受け付けるWEBサーバと、該WEBサーバからの指示に基づいて前記個別仮想計算機への割り当て資源の配分を特定する資源割り当てサブシステムと、各個別仮想計算機毎に割り当てユーザと使用状況と資源の割り当て状況を示す情報を蓄積した使用割当状況表示テーブルと、を備え、
ユーザが予めシステムに登録した所望の計算機性能レベルを満たすに足るだけの資源が配分された前記個別仮想計算機を当該ユーザに割り当てるステップと、
ユーザから、前記予めシステムに登録した所望の計算機性能レベルを超えるかまたは下回る計算機性能レベルへの変更を伴う処理要求が前記WEBサーバに送信された場合、前記資源割り当てサブシステムが、使用割当状況表示テーブルを参照して、空きの一時的割り当て個別仮想計算機を抽出するステップと、前記メモリアロケーションテーブルを参照して、当該ユーザに割り当てられている仮想メモリ資源のうち、前記処理要求において変更を要求された計算機性能レベルに応じた量のメモリ資源を満たすように、仮想メモリ資源を増減して前記抽出した一時的割り当て個別仮想計算機に配分するステップと、を有することを特徴とする仮想計算機システムにおける資源配分制御方法。 A virtual system in which a total resource of one or more real computers is logically divided, and a plurality of individual virtual computers, each of which is independent of each other, are constructed on the one or more real computers and controlled by a hypervisor. A resource allocation control method in a computer system, comprising:
Among the plurality of individual virtual machines, an individual virtual machine that is temporarily allocated in response to a user's temporary processing request is configured as one or a plurality of temporarily allocated individual virtual machines,
The memory resource of the virtual computer system is a virtual memory in which a real memory is divided in units of a predetermined storage capacity, and a logical address is assigned to each divided unit storage area,
The virtual machine system includes a memory allocation table in which a logical address of a virtual memory allocated to each individual virtual machine and a logical address of an unallocated virtual memory are stored, a WEB server that receives a user processing request, A resource allocation subsystem that identifies the allocation of allocated resources to the individual virtual machines based on instructions from the WEB server, and information indicating the allocated users, usage status, and resource allocation status for each individual virtual machine A usage allocation status display table,
Assigning to the user the individual virtual machine to which resources sufficient to satisfy a desired computer performance level previously registered in the system by the user are allocated;
When a processing request accompanied by a change to a computer performance level that exceeds or falls below the desired computer performance level registered in advance in the system is sent from the user to the WEB server, the resource allocation subsystem displays the usage allocation status display. A step of extracting a temporary temporarily allocated individual virtual machine with reference to the table and a request for a change in the processing request among virtual memory resources allocated to the user with reference to the memory allocation table. And increasing and decreasing the virtual memory resources so as to satisfy the amount of memory resources according to the performance level of the computer, and allocating them to the extracted temporarily allocated individual virtual computers. Distribution control method.
前記複数の個別仮想計算機のうち、ユーザに対して一時的に割り当てる個別仮想計算機を1または複数の一時的割り当て個別仮想計算機として構成され、
前記仮想計算機システムのメモリ資源は、実メモリを所定の記憶容量の単位で分割し、分割された単位記憶領域毎に論理アドレスが付与された仮想化メモリであり、
前記仮想計算機システムは、前記各個別仮想計算機に配分される仮想化メモリの論理アドレスおよび未配分の仮想化メモリの論理アドレスが記憶されるメモリアロケーションテーブルと、ユーザの処理要求を受け付けるWEBサーバと、該WEBサーバからの指示に基づいて前記個別仮想計算機への割り当て資源の配分を特定する資源割り当てサブシステムと、各個別仮想計算機毎に割り当てユーザと使用状況と資源の割り当て状況を示す情報を蓄積した使用割当状況表示テーブルと、を備え、
前記ユーザに配分された前記個別仮想計算機において一定時間入出力の操作がなされない状態が継続した時に、前記資源割り当てサブシステムが、使用割当状況表示テーブルを参照して当該仮想計算機のユーザへの割り当てを自動的に解除するステップと、事前に用意した限定的資源配分の一時割り当て個別仮想計算機を自動的に割り当てるステップと、ユーザに配分された前記個別仮想計算機に付与されたIPアドレスを当該ユーザに割り当てられた限定的資源配分の個別仮想計算機に付与されたIPアドレスに付け替えることにより当該ユーザに限定的資源配分の個別仮想計算機を一時的に割り当てるステップと、を有することを特徴とする仮想計算機システムにおける資源配分方法。 A virtual system in which a total resource of one or more real computers is logically divided, and a plurality of individual virtual computers, each of which is independent of each other, are constructed on the one or more real computers and controlled by a hypervisor. A resource allocation method in a computer system,
Among the plurality of individual virtual machines, an individual virtual machine that is temporarily allocated to a user is configured as one or a plurality of temporarily allocated individual virtual machines,
The memory resource of the virtual computer system is a virtual memory in which a real memory is divided in units of a predetermined storage capacity, and a logical address is assigned to each divided unit storage area,
The virtual machine system includes a memory allocation table in which a logical address of a virtual memory allocated to each individual virtual machine and a logical address of an unallocated virtual memory are stored, a WEB server that receives a user processing request, A resource allocation subsystem that identifies the allocation of allocated resources to the individual virtual machines based on instructions from the WEB server, and information indicating the allocated users, usage status, and resource allocation status for each individual virtual machine A usage allocation status display table,
When a state in which input / output operations are not performed for a certain period of time continues in the individual virtual machine allocated to the user, the resource allocation subsystem refers to the usage allocation status display table and allocates the virtual machine to the user. Automatically releasing a temporary allocation individual virtual machine for limited resource allocation prepared in advance, and an IP address assigned to the individual virtual machine allocated to the user to the user A step of temporarily allocating an individual virtual machine with limited resource allocation to the user by changing to an IP address assigned to the allocated virtual machine with limited resource allocation. Resource allocation method.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2010034834A JP2011170679A (en) | 2010-02-19 | 2010-02-19 | Virtual computer system and resource distribution control method of the same |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2010034834A JP2011170679A (en) | 2010-02-19 | 2010-02-19 | Virtual computer system and resource distribution control method of the same |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JP2011170679A true JP2011170679A (en) | 2011-09-01 |
Family
ID=44684728
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2010034834A Pending JP2011170679A (en) | 2010-02-19 | 2010-02-19 | Virtual computer system and resource distribution control method of the same |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP2011170679A (en) |
Cited By (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2013171355A (en) * | 2012-02-20 | 2013-09-02 | Hitachi Ltd | Computer system |
| JP2013196696A (en) * | 2012-03-16 | 2013-09-30 | Hon Hai Precision Industry Co Ltd | Memory management system of virtual machine and method of managing memory of virtual machine |
| JP2014089710A (en) * | 2012-10-30 | 2014-05-15 | Hon Hai Precision Industry Co Ltd | Virtual machine allocation system and method |
| JP2015529918A (en) * | 2012-08-23 | 2015-10-08 | アマゾン・テクノロジーズ、インコーポレイテッド | Scaling virtual machine instances |
| CN111143037A (en) * | 2019-12-31 | 2020-05-12 | 联想(北京)有限公司 | Virtual machine resource allocation method, equipment, system and storage medium |
| US20220342711A1 (en) * | 2021-04-23 | 2022-10-27 | Kabushiki Kaisha Toshiba | Allocation of heterogeneous computational resource |
-
2010
- 2010-02-19 JP JP2010034834A patent/JP2011170679A/en active Pending
Cited By (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2013171355A (en) * | 2012-02-20 | 2013-09-02 | Hitachi Ltd | Computer system |
| JP2013196696A (en) * | 2012-03-16 | 2013-09-30 | Hon Hai Precision Industry Co Ltd | Memory management system of virtual machine and method of managing memory of virtual machine |
| JP2015529918A (en) * | 2012-08-23 | 2015-10-08 | アマゾン・テクノロジーズ、インコーポレイテッド | Scaling virtual machine instances |
| JP2014089710A (en) * | 2012-10-30 | 2014-05-15 | Hon Hai Precision Industry Co Ltd | Virtual machine allocation system and method |
| CN111143037A (en) * | 2019-12-31 | 2020-05-12 | 联想(北京)有限公司 | Virtual machine resource allocation method, equipment, system and storage medium |
| CN111143037B (en) * | 2019-12-31 | 2023-11-21 | 联想(北京)有限公司 | Virtual machine resource allocation method, device, system and storage medium |
| US20220342711A1 (en) * | 2021-04-23 | 2022-10-27 | Kabushiki Kaisha Toshiba | Allocation of heterogeneous computational resource |
| US12073252B2 (en) * | 2021-04-23 | 2024-08-27 | Kabushiki Kaisha Toshiba | Allocation of processing computers based on priority lists |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US9396026B2 (en) | Allocating a task to a computer based on determined resources | |
| JP4519098B2 (en) | Computer management method, computer system, and management program | |
| KR102524540B1 (en) | Apparatus and method for multi-cloud service platform | |
| US9684542B2 (en) | Smart cloud workload balancer | |
| US9588789B2 (en) | Management apparatus and workload distribution management method | |
| JP5614226B2 (en) | Virtual machine control device, virtual machine control program, and virtual machine control method | |
| JP5976230B2 (en) | Resource management system and resource management method | |
| US8065676B1 (en) | Automated provisioning of virtual machines for a virtual machine buffer pool and production pool | |
| US20120096149A1 (en) | Cloud federation in a cloud computing environment | |
| CN103365713B (en) | A kind of scheduling of resource and management method and device | |
| US20200226521A1 (en) | Methods and systems to optimize server utilization for a virtual data center | |
| US20100293619A1 (en) | License management system and license management method | |
| CN103200020B (en) | A kind of calculation resource disposition method and system | |
| US20190334765A1 (en) | Apparatuses and methods for site configuration management | |
| CN104506635B (en) | A kind of establishment of cloud host and matching process and system rapidly and efficiently | |
| US20160156568A1 (en) | Computer system and computer resource allocation management method | |
| WO2012032679A1 (en) | Computer system and control method for computer system | |
| CN104937546A (en) | Perform restart loops, restart schedules for on-demand restarts | |
| WO2010023148A2 (en) | Method and system for policy based lifecycle management of virtual software appliances | |
| WO2017088794A1 (en) | System and method for resource management | |
| US11609831B2 (en) | Virtual machine configuration update technique in a disaster recovery environment | |
| US9953276B2 (en) | Method and system that measures and reports computational-resource usage in a data center | |
| JP2011170679A (en) | Virtual computer system and resource distribution control method of the same | |
| JP5134149B1 (en) | Network system and control method thereof | |
| WO2013117079A1 (en) | Virtual machine load balancing method, management modules and virtual machine cluster system |