JP2014099036A - Information processing device - Google Patents
Information processing device Download PDFInfo
- Publication number
- JP2014099036A JP2014099036A JP2012250245A JP2012250245A JP2014099036A JP 2014099036 A JP2014099036 A JP 2014099036A JP 2012250245 A JP2012250245 A JP 2012250245A JP 2012250245 A JP2012250245 A JP 2012250245A JP 2014099036 A JP2014099036 A JP 2014099036A
- Authority
- JP
- Japan
- Prior art keywords
- resource
- virtual machine
- task
- resources
- surplus
- 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
Images
Abstract
Description
本発明は、複数の仮想マシンへリソースの割り当てを効率的に行う情報処理装置に関するものである。 The present invention relates to an information processing apparatus that efficiently allocates resources to a plurality of virtual machines.
1つの物理的なサーバを仮想化することで、複数の仮想的なサーバを構築する仮想化技術が知られている。このような仮想化技術において、仮想的なサーバはハードウエアから仮想化ソフトウエアを介して仮想マシンを構築することで成り立ち、仮想化ソフトウエアとして、例えばVMware ESXi(登録商標)やXen(登録商標)などがある。 A virtualization technology for constructing a plurality of virtual servers by virtualizing one physical server is known. In such a virtualization technology, a virtual server is configured by constructing a virtual machine from hardware via virtualization software. For example, VMware ESXi (registered trademark) or Xen (registered trademark) is used as the virtualization software. )and so on.
構築された複数の仮想マシンは1つの物理サーバのリソースを共有して保持することができ、各仮想マシンのリソースは指定して割り当てられる。このようなリソース割り当てにおいて、物理サーバ上に存在する限られたリソースを有効に活用するために、各仮想マシンに対して動的にリソースを割り当てる方法が知られている(例えば、特許文献1参照)。 A plurality of constructed virtual machines can share and hold the resources of one physical server, and the resources of each virtual machine are designated and assigned. In such resource allocation, a method of dynamically allocating resources to each virtual machine is known in order to effectively use limited resources existing on a physical server (see, for example, Patent Document 1). ).
しかしながら、従来の動的リソース割り当て方法では、仮想マシンで実行されているアプリケーションの優先度に応じて仮想マシンの優先度を決め、その優先度に基づき仮想マシンに対して動的にリソースを割り当てるので、リソース割り当てがタスク実行後となってしまい、突発的にリソースを多く使用するタスクを実行しようとしても、リソース不足となり処理が遅延してしまうという課題があった。 However, in the conventional dynamic resource allocation method, the priority of the virtual machine is determined according to the priority of the application running on the virtual machine, and the resource is dynamically allocated to the virtual machine based on the priority. However, resource allocation is after task execution, and even if an attempt is made to execute a task that uses a lot of resources suddenly, there is a problem that processing is delayed due to insufficient resources.
本発明は、上述した課題を解決するためになされたものであり、タスク実行前にリソースを割り当ててリソース不足による処理遅延を防止できる情報処理装置及び情報処理システムを提供することを目的とする。 The present invention has been made to solve the above-described problems, and an object of the present invention is to provide an information processing apparatus and an information processing system capable of allocating resources before task execution and preventing processing delay due to resource shortage.
本発明に係る情報処理装置は、複数の仮想マシンへのリソース割り当てを制御する情報処理装置であって、ユーザの前記仮想マシンへの接続の有無を検知し、接続した前記ユーザの情報を管理するユーザ情報管理部と、ハードウエアのリソースのうち、前記複数の仮想マシンに割り当てられたリソース及び前記ハードウエアの余剰リソースをリソース割当情報として管理するリソース管理部と、前記複数の仮想マシンへリソースを割り当てるリソース制御部と、を備え、前記ユーザ情報管理部が前記ユーザによる第1の仮想マシンへの接続を検知すると、前記リソース制御部は、接続した前記ユーザの情報に基づいて前記第1の仮想マシンにリソースを割り当てることを特徴とする。 An information processing apparatus according to the present invention is an information processing apparatus that controls resource allocation to a plurality of virtual machines, detects whether a user is connected to the virtual machine, and manages information on the connected user A user information management unit, a resource management unit that manages resources allocated to the plurality of virtual machines and surplus resources of the hardware as resource allocation information among hardware resources, and resources to the plurality of virtual machines A resource control unit to be allocated, and when the user information management unit detects a connection to the first virtual machine by the user, the resource control unit detects the first virtual machine based on information of the connected user. It is characterized by allocating resources to machines.
本発明の情報処理装置によれば、ユーザの仮想マシンへの接続を検知し、接続された仮想マシンに対してタスク実行前にリソースを割り当てるので、リソース不足による処理遅延を防止することが可能となる。 According to the information processing apparatus of the present invention, the connection to the virtual machine of the user is detected, and resources are allocated to the connected virtual machine before executing the task. Become.
実施の形態1.
以下図面を用いて本発明の実施の形態1を説明する。
図1は実施の形態1に係る情報処理装置10の構成例を示す図である。例えば物理サーバ等により実現される情報処理装置10は、CPU(Central Processing Unit)、メモリ、記録容量等を備えたハードウエア(H/W)11と、複数のOS(Operating System)を1台の装置上で動作させるための仮想化ソフトウエア12と、仮想化技術によって物理的なハードウエア11を分割し、その中で独立したOSを持つコンピュータである仮想マシン13とを備え、ユーザ14はハードウエア11を介して仮想マシン13に接続する。情報処理装置10は、仮想化ソフトウエア12を利用して複数の仮想マシン13へのリソース割り当てを制御する。この仮想化ソフトウエア12は、例えばプログラムとしてハードウエア11の記録容量に記録される。なお、図1では、仮想マシン13は仮想マシン13A〜Cとして3つの仮想マシンを構成している例を示すが、この数に限定されない。
FIG. 1 is a diagram illustrating a configuration example of an
仮想化ソフトウエア12は、ユーザ管理部(ユーザ情報管理部)121と、リソース制御部122と、リソース管理部123とを備える。
The
ユーザ管理部121は、ユーザ14の仮想マシン13への接続の有無を検知し、接続したユーザ14の情報を例えばユーザ情報テーブルとして管理する。ここで言う接続とは、単に仮想マシン13にアクセスすることを指すのではなく、ユーザ情報をユーザ管理部121に送信した上でアクセスすることを指し、例えばログイン、ログアウト等がそれぞれ接続、接続断に該当する。以下の説明では一例としてログイン、ログアウトを用いて説明を行うが、これに限定するものではない。
The
リソース制御部122は、複数の仮想マシン13へリソースを割り当ててリソースを制御する。ここで、リソースとは、仮想CPU、仮想メモリ、記録容量及びネットワークのうち少なくとも1つ又は2つ以上の組み合わせであればよい。
The
リソース管理部123は、ハードウエア11が保持するリソースのうち、複数の仮想マシン13に割り当てられているリソースと、仮想マシン13に割り当てた後ハードウエア11に残存しているリソース(余剰リソース)についての情報(リソース割り当て情報)を、例えばリソース割当テーブルとして管理する。
Among the resources held by the
図2は実施の形態1に係るリソース割当テーブルの例を示す図である。カラム21には起動している仮想マシン13の名称が格納される。カラム22には仮想マシン13に割り当てるCPUであって、物理CPUをコア数などの仮想CPUで割り当てた値が格納される。カラム23には仮想マシン13に割り当てるメモリ量であって、ハードウエア11が保持するメモリ量を仮想メモリとして各仮想マシンに割り当てた値が格納される。カラム24には仮想マシン13に割り当てる記録領域であって、ハードウエア11が保持している記録領域を各仮想マシン13に割り当てた値が格納される。カラム25には仮想マシン13に割り当てるネットワーク帯域であって、ハードウエア11が保持しているネットワーク帯域を分割して各仮想マシン13に割り当てた値が格納される。
FIG. 2 is a diagram illustrating an example of a resource allocation table according to the first embodiment. The
図2に示す例では、起動している仮想マシン13Aには、仮想CPUが3Core、仮想メモリが2GB、記録容量が4TB、ネットワークが1000Mbps割り当てられている。仮想マシン13B、Cについても同様に考え、ハードウエア11に残っている余剰リソースは、仮想CPUは2Core、仮想メモリは1GB、記録容量は1TB、ネットワークは400Mbpsである。そのため、例えば仮想CPUについて言うと、仮想マシン13に割り当てる前のハードウエア11全体が保持するCPUは8Coreとなる。
In the example shown in FIG. 2, the
図3は実施の形態1に係るユーザ情報テーブルの例を示す図である。ユーザ情報テーブルは、仮想マシン13にログインしたユーザ情報及び追加するリソース情報が格納される。
FIG. 3 is a diagram illustrating an example of a user information table according to the first embodiment. The user information table stores user information logged into the
カラム31には、仮想マシン13にログインしたユーザ14の名称が格納される。カラム32は、カラム31のユーザに関するユーザ情報が格納されており、カラム33、カラム34、カラム35から構成されている。カラム33には、仮想マシン13にログインしたユーザ14の種別が格納され、例えば「管理者」や「一般」などが格納される。カラム34には、仮想マシン13にログインしたユーザ14の優先度が格納される。例えば、種別が管理者の場合は「高」とされ、種別が一般の場合はユーザのレベルに応じて「高」、「低」を分けてもよい。カラム35には、ログインした仮想マシン13の名称が格納される。
The
カラム36は、仮想マシン13にユーザ14がログインした事により仮想マシン13に追加で割り当てるリソース情報が格納されており、カラム37、カラム38、カラム39から構成されている。カラム37には、仮想マシン13に追加で割り当てる仮想CPUの値が格納されている。カラム38には、仮想マシン13に追加で割り当てる仮想メモリの値が格納されている。カラム39には、仮想マシン13に追加で割り当てるネットワークの帯域が格納されている。
The
次に、リソース割り当て動作について説明する。図4は実施の形態1に係るリソース割り当て処理についての動作例を示すフローチャートである。 Next, a resource allocation operation will be described. FIG. 4 is a flowchart showing an operation example of the resource allocation processing according to the first embodiment.
まず、仮想マシン13を構築するにあたって、ハードウエア11から、静的に各仮想マシン13に対してリソースを割り当てる(ステップST401)。この際に割り当てられるリソース量は、仮想マシン13で実行するアプリケーションや処理負荷に応じて決定される。割り当てられたリソースは図2に示すリソース割り当てテーブルに格納され、リソース管理部123により管理される。
First, in constructing the
次に、ユーザ管理部121は、ユーザ14の仮想マシン13への接続の有無、つまりログイン又はログアウトを検知する(ステップST402)。ステップST402においてログインが検知された場合、ステップST403以降の処理がなされる。一方、ログアウトが検知された場合、ステップST408以降の処理がなされる。
Next, the
まずはステップST402においてログインが検知された場合について説明する。ユーザ管理部121によりユーザ14のログインが検知されると、当該ログインされた仮想マシン13に対して動的にリソース割り当てが実施される。まず、リソース管理部123によりハードウエア11の余剰リソースが存在するか否かの確認が行われる(ステップST403)。
First, a case where login is detected in step ST402 will be described. When the login of the
ハードウエア11の余剰リソースがある場合(ステップST403−Yes)、リソース制御部122は、ハードウエア11の余剰リソースの一部又は全部を、ログインされた仮想マシン13に追加する(ステップST404)。この際、追加するリソース量については、ユーザ管理部121が管理するユーザ情報テーブルに格納されたユーザの優先度に応じて決定される。例えば、ユーザaである「管理者」が仮想マシンAにログインすると、図3に示すように、仮想CPUが2Core、仮想メモリが256MB、ネットワークが100Mbps追加される。このようにすることで、優先度の高いユーザ14に対して優先してリソースを割り当てることができ、リソース不足による処理遅延を防止することができる。なお、ここではユーザの優先度に応じて追加リソース量を決定することとしたが、必ずしもこれに限定されず、例えばログインした仮想マシン13の種類に応じて決定してもよい。例えば仮想マシン13Aが仮想マシン13Bよりも優先度が高い場合、仮想マシン13Bにユーザ14がログインした場合よりも、仮想マシン13Aにユーザ14がログインした場合の方が、追加リソース量は多くなる。
When there is a surplus resource of the hardware 11 (step ST403-Yes), the
ステップST403においてハードウエア11の余剰リソースがない場合(ステップST403−No)、リソース管理部123は、複数の仮想マシン13のうち、ログインされた仮想マシン13以外の他の仮想マシン13が保持する余剰リソースがあるか否かを確認する(ステップST405)。リソース管理部123は、各仮想マシン13のリソース使用状況を取得し、リソース割り当てテーブルに格納された割り当てリソース量から、使用リソース量を引くことにより余剰リソースを算出する。
When there is no surplus resource of the
他の仮想マシン13に余剰リソースがある場合(ステップST405−Yes)、つまり、リソース管理部123が算出した余剰リソースが、ユーザ情報テーブルにて設定された追加リソース分を上回っている場合、リソース制御部122は、その余剰リソースの一部又は全部を、ログインされた仮想マシン13に追加する(ステップST406)。この際、追加する余剰リソース量については、ユーザ管理部121が保持するユーザ情報テーブルに格納されたユーザの優先度に応じて決定される。ただし、ハードウエア11からの余剰リソース割り当ての時よりも割り当てリソース量を少量にするなど変更しても良い。
If there is a surplus resource in another virtual machine 13 (step ST405-Yes), that is, if the surplus resource calculated by the
一方、他の仮想マシン13に余剰リソースがない場合(ステップST405−No)、つまり、リソース管理部123が算出した余剰リソースが、ユーザ情報テーブルにて設定された追加リソース分を下回っている場合、リソース制御部122は、ログインされた仮想マシン13へのリソース追加を行わない(ステップST407)。
On the other hand, when there is no surplus resource in the other virtual machine 13 (step ST405 No), that is, when the surplus resource calculated by the
ステップST402においてログアウトが検知された場合、リソース管理部123は、各仮想マシン13のリソース使用率を取得し、リソース使用率の高い仮想マシン13があるか否かを確認する(ステップST408)。なお、リソース使用率については、リソース管理部123が各仮想マシン13のリソース使用状況を取得し、リソース割り当てテーブルの情報から求めた割り当てリソース量に対する使用リソース量を計算することにより算出することができる。
When logout is detected in step ST402, the
リソース使用率の高い仮想マシン13がある場合(ステップST408−Yes)、リソース制御部122は、仮想マシン13をログアウトしたユーザ14用に追加していたリソースを、リソース使用率の高い仮想マシン13に割り当てる(ステップST409)。
When there is a
一方、リソース使用率の高い仮想マシン13がない場合(ステップST408−No)、リソース制御部122は、仮想マシン13をログアウトしたユーザ用に追加していたリソースを、ハードウエア11に割り当てる(ステップST410)。
On the other hand, when there is no
ステップST404、ステップST406、ステップST407、ステップST409、ステップST410のいずれかの処理が実施されると、リソース管理部123は、リソース割り当てテーブル及びユーザ情報テーブルの更新を行う(ステップST411)。
When one of the processes of step ST404, step ST406, step ST407, step ST409, and step ST410 is performed, the
ステップST404の処理が実施された後は、リソース管理部123は、仮想マシン13にログインしたユーザ14の情報をユーザ情報テーブルに追加し、新たにログインした仮想マシン13のリソースと、ハードウエア11の余剰リソースについてリソース割り当てテーブルを更新する。例えば、ステップST404前のリソース割り当てテーブルが図2に示す状態であり、その後ユーザaが仮想マシン13Aにログインした場合、ステップST404の後、リソース管理部123により更新されたリソース割り当てテーブルは、仮想CPUが5Core、仮想メモリが2.256GB、ネットワークが1100Mbpsとなる。一方、更新後のリソース割り当てテーブルにおけるハードウエア11の余剰リソースは、仮想CPUが0Core、仮想メモリが744MB、ネットワークが300Mbpsとなる。
After the processing of step ST404 is performed, the
同様に、ステップST406の処理が実施された後は、リソース管理部123は、仮想マシン13にログインしたユーザ14の情報をユーザ情報テーブルに追加し、ログインした仮想マシン13のリソースと、ログインした仮想マシン13に余剰リソースを提供した他の仮想マシン13のリソースについてリソース割り当てテーブルを更新する。
Similarly, after the process of step ST406 is performed, the
ステップST407の処理が実施された後は、仮想マシン13にログインしたユーザ14の情報をユーザ情報テーブルに追加する。リソース割り当てテーブルについては情報の更新はされない。
After the process of step ST407 is performed, the information of the
ステップST409の処理が実施された後は、仮想マシン13からログアウトしたユーザ14の情報をユーザ情報テーブルから削除し、ログアウトした仮想マシン13のリソースと、ログアウトしたユーザ用に追加していたリソースを新たに割り当てた仮想マシン13のリソースについてリソース割り当てテーブルを更新する。
After the process of step ST409 is performed, the information of the
ステップST410の処理が実施された後は、仮想マシン13からログアウトしたユーザ14の情報をユーザ情報テーブルから削除し、ログアウトした仮想マシン13のリソース情報と、ログアウトしたユーザ用に追加していたリソースを新たに割り当てたハードウエア11の余剰リソースについてリソース割り当てテーブルを更新する。
After the processing of step ST410 is performed, the information of the
以上のように、本発明の実施の形態1によれば、ユーザ14の仮想マシン13へのログインを検知し、ログインしたユーザ14の情報に基づいて、ログインした仮想マシン13に対してリソースを追加するようにしたので、タスク実行処理を行う前に十分なリソースを割り当てることができ、リソース不足による処理遅延を防止することが可能となる。
As described above, according to the first embodiment of the present invention, the login of the
また、ログインしたユーザ14の優先度に応じて追加するリソース量を決定するので、優先度の高いユーザ14に対して優先してリソースを割り当てることができ、リソース不足をより確実に防止できる。
In addition, since the amount of resources to be added is determined according to the priority of the logged-in
また、ログインした仮想マシン13に追加で割り当てるリソースは、ハードウエア11の余剰リソースがある場合はハードウエア11から割り当て、ハードウエア11の余剰リソースがない場合において他の仮想マシン13の余剰リソースから割り当てるようにしたので、できるだけ他の仮想マシン13の余剰リソースを使用しなくてもよく、他の仮想マシン13に突発的なタスクが発生してもリソース不足が生じないようにできる。
Further, the resources to be additionally allocated to the logged-in
また、ユーザ14のログアウト後は、ログインしたユーザ14用に追加していたリソースを他の仮想マシン13に割り当てるので、物理サーバ全体のリソースを複数の仮想マシン13に対して効率的に分配することが可能になる。
In addition, after the
なお、上述したように、ハードウエア11の余剰リソースがない場合に、他の仮想マシン13から追加のリソースを割り当てるようにするのが好ましいが、必ずしもそうでなくてもよい。例えば、他の仮想マシン13の余剰リソースが存在するか否かをまず確認し、存在しない場合にハードウエア11の余剰リソースから割り当てる構成としてもよい。また、必ずしもハードウエア11と他の仮想マシン13の片方のみからリソースを割り当てなくてもよく、これら両方からリソースを割り当てるようにしてもよい。こうすることにより、例えば優先度の高いユーザ14がログインした場合であって、ハードウエア11の余剰リソースのみでは追加分のリソースに足らず、他の仮想マシン13の余剰リソースのみでは追加分のリソースに足らない場合であっても、これら余剰リソース量を合計することによって追加分のリソースを満足するのであれば、当該ユーザ14がログインした仮想マシン13にリソースを追加で割り当てることが可能となり、リソース不足による処理遅延をより確実に防止できることとなる。
As described above, when there is no surplus resource of the
なお、図4のステップST405において、他の仮想マシン13に余剰リソースがある場合に、他の仮想マシン13の余剰リソースをログインされた仮想マシン13に追加する構成について説明したが、これに限定されず、例えばリソース使用率が低い仮想マシン13がある場合に、当該仮想マシン13のリソースをログインされた仮想マシン13に追加するようにしてもよい。また、余剰リソースを有する他の仮想マシン13が複数ある場合などは、余剰リソースを有し、かつ、リソース使用率が低い仮想マシン13のリソースを、ログインされた仮想マシン13に追加するようにしてもよい。
In addition, in step ST405 of FIG. 4, when the other
実施の形態2.
以下図面を用いて本発明の実施の形態2について説明する。実施の形態2では、仮想マシン13が実行するタスクのリソースが不足している場合に、仮想マシン14が実行している複数のタスクのうちの一部を停止することにより必要なリソースを確保して、実行するタスクのリソース不足を防止する。
The second embodiment of the present invention will be described below with reference to the drawings. In the second embodiment, when the resources of tasks executed by the
図5は実施の形態2に係る情報処理装置100の構成例を示す図である。実施の形態2の情報処理装置100は、実施の形態1の情報処理装置10の構成に加えて、仮想化ソフトウエア12が、新たにタスク実行制御部124及びタスク管理部125を備えている点において実施の形態1と異なる。また、図5の例では、情報処理装置100が構築する複数の仮想マシン13A〜Cのうち、仮想マシン13Aが複数のタスク131A〜131Cを実行するとしているが、これに限定されない。仮想マシン13B、13Cのおいても仮想マシン13Aと同様、タスクを実行するが、簡単のため説明を省略している。以下の説明においても同様である。なお、各タスク131A〜Cは同一アプリケーションであってもよいし、異なるアプリケーションであってもよい。実施の形態2に係る情報処理装置100の、その他の構成については実施の形態1と同様であるので図1と同一の符号を付してその説明を省略する。
FIG. 5 is a diagram illustrating a configuration example of the
タスク実行制御部124は、仮想マシン13で動作するタスク131の実行権限を有し、仮想マシン13からタスク131の実行命令を受信するとともに、タスク131の実行又は停止を仮想マシン13に対して指示する。
The task
タスク管理部125は、仮想マシン13で動作するタスク131の種別、優先度、使用リソース量等の情報(タスク管理情報)を、例えばタスク管理テーブルとして管理する。
The
図6は実施の形態2に係るタスク管理テーブルの例を示す図である。カラム61には、対象とする仮想マシン13の名称が格納される。図6の例では、仮想マシン13Aで動作するタスクについての情報が格納されている。カラム62には、仮想マシン13Aで動作するタスク131の名称が格納される。カラム63には、仮想マシン13Aで動作するタスク131の種別が格納される。種別は例として、ユーザ14による動作命令が行われる「ユーザ」や、メンテナンスなどスケジューリングによって動作命令が行われる「スケジューラ」、システム上、常時動作する必要がある「常時稼動」などがある。
FIG. 6 is a diagram showing an example of a task management table according to the second embodiment. The
カラム64には、仮想マシン13Aで動作するタスク131の優先度が格納される。優先度は主にカラム63に格納されている種別によって決定される。カラム65には、仮想マシン13Aで動作するタスク131の実行状態が格納される。実行状態は例として、現在実行中の状態を「実行」、実行を試みてある理由で実行できなかった場合は「停止」、実行を開始する状態を「開始」とする。ここで、実行状態が「実行」のタスク131を実行タスク、実行状態が「停止」のタスク131を停止タスク、実行状態が「開始」のタスク131を開始タスクと定義する。
The
カラム66には、仮想マシン13Aで動作するタスク131のCPU使用量の目安が格納される。この値は一度タスク131を動作させることでシステムが自動で設定しても良いし、管理者が手動で設定しても良い。カラム67には、仮想マシン13Aで動作するタスク131のメモリ使用量の目安が格納される。この値は一度タスク131を動作させることでシステムが自動で設定しても良いし、管理者が手動で設定しても良い。カラム68には、仮想マシン13Aで動作するタスク131のネットワーク使用量の目安が格納される。この値は一度タスク131を動作させることでシステムが自動で設定しても良いし、管理者が手動で設定しても良い。
A
次に、タスク制御動作について説明する。図7は実施の形態2に係るタスク制御処理についての動作例を示すフローチャートである。 Next, the task control operation will be described. FIG. 7 is a flowchart showing an operation example of the task control process according to the second embodiment.
まず、タスク管理部125が、仮想マシン13で動作しているタスク131についてのタスク管理情報を取得し、その情報をタスク管理テーブルに格納する(ステップST701)。
First, the
次に、タスク実行制御部124が、仮想マシン13で開始タスク131の実行命令が発生したか否かの確認を行う(ステップST702)。以下では、一例として、仮想マシン13Aで動作するタスク131aを開始タスクとして説明を行う。
Next, the task
ステップST702において開始タスク131Aの実行命令が発生した場合はステップST703以降の処理がなされ、開始タスク131Aの実行命令が発生しない場合はステップST710以降の処理がなされる。
If an execution instruction for the
まず、ステップST703以降の処理について説明する。開始タスク131Aの実行命令が発生すると(ステップST702−Yes)、タスク管理部125はタスク管理テーブルに開始タスク131A(開始タスクa)の情報を格納する。また、リソース管理部123は仮想マシン13Aの余剰リソースについての情報をタスク管理部125に通知し、タスク管理部125は、仮想マシン13Aにおいて、開始タスク131Aを実行するのに必要なリソースが不足しているか否かを決定する(ステップST703)。タスク管理部125は、リソース管理部123から通知された仮想マシン13Aの余剰リソース量と、タスク管理テーブルに格納された開始タスク131Aを実行するのに必要なリソース量とを比較することにより、リソース不足か否かを決定する。図6の例では、タスク131の実行に必要なCPU、メモリ等のリソース量は「中」、「高」のようになっているが、より具体的には、必要なリソース量の情報が定量的に格納されている。
First, the process after step ST703 is demonstrated. When an execution instruction for the
タスク管理部125が、開始タスク131Aを実行するリソースが不足していると決定すると(ステップST703−Yes)、リソース管理部123がリソース管理テーブルの情報に基づき、ハードウエア11に余剰リソースがあるか否かを確認する(ステップST704)。
If the
リソース管理部123が、ハードウエア11に余剰リソースがないと判断した場合(ステップST704−No)、タスク管理部125は、開始タスク131Aの優先度と、仮想マシン13Aで実行されている他の実行タスク131の優先度とを、タスク管理テーブルから取得し、開始タスク131Aよりも優先度が低い実行タスク131が存在するか否かを確認する(ステップST705)。
When the
タスク管理部125が、開始タスク131Aよりも優先度が低い実行タスク131が存在すると判断した場合(ステップST705−Yes)、タスク実行制御部124は、優先度の低い実行タスク131を停止し、タスク管理部125が当該実行タスク131を停止タスク131に移行する(ステップST706)。
When the
一方、タスク管理部125が、開始タスク131Aよりも優先度が低い実行タスク131が存在しないと判断した場合(ステップST705−No)、開始タスク131Aを実行するために必要なリソースを仮想マシン13Aに確保できないため、タスク管理部125が開始タスク131Aを停止タスクに移行する(ステップST707)。図6に示す場合を例にとると、仮想マシン13Aには、開始タスク131Aよりも優先度が低い実行タスク131は存在しない。
On the other hand, when the
ステップST704において、ハードウエア11に余剰リソースがある場合(ステップST704−Yes)、リソース制御部122は、開始タスク131Aを実行する仮想マシン13Aに対してハードウエア11の余剰リソースの一部又は全部を追加リソースとして割り当てる(ステップST708)。この際追加するリソース量は、少なくとも開始タスク131Aを実行できる程度のリソース量であればよい。
In step ST704, when there is a surplus resource in the hardware 11 (step ST704-Yes), the
ステップST706において優先度の低い実行タスク131を停止タスク131に移行した場合、ステップST708において開始タスク131Aを実行する仮想マシン13Aにリソースを追加した場合、または、開始タスク131Aを実行するためのリソースが仮想マシン13Aにて不足していない場合(ステップST703−No)、タスク管理部125は、開始タスク131Aを実行タスク131に移行し、タスク実行制御部124は仮想マシン13Aに当該タスク131の実行許可を発行、つまり当該タスク131を実行するよう指示する(ステップST709)。
When the execution task 131 having a low priority is transferred to the stop task 131 in step ST706, a resource is added to the
次に、開始タスク131Aの実行命令が発生しない場合(ステップST702−No)におけるステップST710以降の処理について説明する。
Next, the processing after step ST710 when the execution instruction of the
タスク管理部125は、タスク管理テーブルに格納された情報に基づいて停止タスク131があるか否かの確認を行い、停止タスク131が存在する場合、リソース管理部123から通知されたハードウエア11の余剰リソースを用いて当該停止タスク131が実行可能か否かを確認する(ステップST710)。
The
タスク管理部125が、ハードウエア11の余剰リソースを用いることにより停止タスク131を実行できると判断した場合(ステップST710−Yes)、タスク管理部125は停止タスク131を実行タスク131に移行し、タスク実行制御部124は、仮想マシン13Aに当該タスク131を実行するよう指示する(ステップST711)。
When the
以上のように、本発明の実施の形態2によれば、仮想マシン13Aにおいて開始タスク131Aを実行する際に、タスク131の優先度に応じて他の実行タスク131を停止するよう制御するので、十分なリソースを確保した上で優先度の高いタスク131を実行でき、リソース不足による処理遅延を防止することが可能となる。
As described above, according to the second embodiment of the present invention, when the
また、ハードウエア11に余剰リソースが存在する場合は、開始タスク131Aを実行する仮想マシン13Aにハードウエア11の余剰リソースを追加で割り当てるようにしたので、十分なリソースを確保した上で開始タスク131Aを実行することができる。
Further, when there are surplus resources in the
また、仮想マシン13Aでリソース不足により一度停止されたタスク131についても、ハードウエア11からの余剰リソースを追加で割り当てることにより十分なリソースを確保して再度実行することも可能となる。
In addition, the task 131 once stopped due to a resource shortage in the
なお、これまで、例えば図7のステップST704、ST708において、ハードウエア11に余剰リソースがある場合に、開始タスク131Aを実行する仮想マシン13Aに追加のリソースを割り当てる処理について説明したが、これに限定されず、実施の形態1と同様、仮想マシン13A以外の他の仮想マシン13の余剰リソースを追加してもよいし、他の仮想マシン13の余剰リソースとハードウエア11の余剰リソースの両方から追加するようにしてもよい。
Heretofore, for example, in steps ST704 and ST708 of FIG. 7, the process of allocating an additional resource to the
実施の形態3.
以下図面を用いて本発明の実施の形態3について説明する。実施の形態3では、仮想マシン13が実行するタスクのリソースが不足している場合に、仮想マシン14が実行している複数のタスクのうちの一部についてのリソースを制限することにより、必要なリソースを確保して、実行するタスクのリソース不足を防止する。
Embodiment 3 FIG.
Embodiment 3 of the present invention will be described below with reference to the drawings. In the third embodiment, when the resources of tasks executed by the
図8は実施の形態3に係る情報処理装置1000の構成例を示す図である。実施の形態3の情報処理装置1000は、実施の形態1、2の情報処理装置の構成に加えて、仮想化ソフトウエア12が、新たにタスクリソース制御部126を備えている点において実施の形態1、2と異なる。その他の構成については実施の形態1、2と同様であるので、図1及び図5と同一の符号を付してその説明を省略する。
FIG. 8 is a diagram illustrating a configuration example of the
タスクリソース制御部126は、タスク管理部125が管理するタスク管理テーブルに格納されたリソース制限に関する情報に基づき、仮想マシン13で動作するタスクのリソース量を制限する。
The task resource control unit 126 limits the resource amount of a task that operates on the
図9は、実施の形態3に係るタスク管理テーブルの例を示す図である。図9のタスク管理テーブルは、図6で説明したタスク管理テーブルと比べ、リソース制限に関する情報が新たに追加して格納されている点において異なる。その他の構成については同一であるため、図6と同様の符号を付して説明を省略する。 FIG. 9 is a diagram illustrating an example of a task management table according to the third embodiment. The task management table of FIG. 9 differs from the task management table described with reference to FIG. 6 in that information regarding resource restrictions is newly added and stored. Since other configurations are the same, the same reference numerals as those in FIG.
カラム9はカラム91、カラム92から構成されており、タスク131のリソース制限量を格納したものである。カラム91には、仮想マシン13で動作するタスク131で使用するリソースの内、I/O(Input/Output)リソースの制限幅についての値が格納される。I/Oリソースの制限幅は、管理者によって設定することが可能である。カラム92には、仮想マシン13で動作するタスク131で使用するリソースの内、ネットワークリソースの制限幅についての値が格納される。ネットワークリソースの制限幅についても、管理者によって設定することが可能である。
The
次に、タスク制御動作について説明する。図10は実施の形態3に係るタスク制御処理についての動作例を示すフローチャートである。なお、図10におけるステップST701〜ST711の処理については、図7で説明したステップST701〜ST711の処理と同一であるため、同一の符号を付して説明を省略する。 Next, the task control operation will be described. FIG. 10 is a flowchart showing an operation example of the task control process according to the third embodiment. Note that the processing in steps ST701 to ST711 in FIG. 10 is the same as the processing in steps ST701 to ST711 described with reference to FIG.
ステップST705において、仮想マシン13Aに開始タスク131Aよりも優先度の低い実行タスク131がある場合(ステップST705−Yes)、タスク管理部125が、タスク管理テーブルに格納された情報に基づき算出したリソース制限後の実行タスク131のリソースの予測値と、リソース管理部123から通知された仮想マシン13Aの余剰リソース量とに基づき、開始タスク131Aを実行することが可能か否か、つまり開始タスク131Aを実行するためのリソースが確保されるか否かを確認する(ステップST1001)。
In step ST705, when there is an execution task 131 having a lower priority than the
優先度の低い実行タスク131のリソースを制限することにより開始タスク131Aの実行が可能である場合(ステップST1001−Yes)、タスクリソース制御部126は、タスク管理部125が管理するタスク管理テーブルに格納されたリソース制限に関する情報に基づき、優先度の低い実行タスク131のリソースを制限する(ステップST1002)。ステップST1002の処理がなされると、次はステップST709の処理がなされる。
When the
一方、ステップST1001において優先度の低い実行タスク131のリソースを制限しても開始タスク131Aを実行できない場合(ステップST1001−No)、タスクリソース制御部126は優先度の低い実行タスク131のリソース制限処理を実施せず、ステップST706の処理がなされる。
On the other hand, if the
ステップST705において、仮想マシン13Aに開始タスク131Aよりも優先度の低い実行タスク131がない場合(ステップST705−No)、タスク管理部125が、タスク管理テーブルに格納された情報に基づき算出したリソース制限後の開始タスク131Aのリソースの予測値と、リソース管理部123から通知された仮想マシン13Aの余剰リソース量とに基づき、開始タスク131Aを実行することが可能か否か、つまり開始タスク131Aを実行するためのリソースが確保されるか否かを確認する(ステップST1001)。つまり、タスク管理部125は、ステップST1001とは異なり、開始タスク131A自体のリソースを制限することにより、仮想マシン13Aにて開始タスク131Aを実行するためのリソースが確保できるか否かを確認する。
In step ST705, when there is no execution task 131 having a lower priority than the
開始タスク131Aのリソースを制限することで開始タスク131Aが実行可能である場合(ステップST1003−Yes)、タスクリソース制御部126は、タスク管理部125が管理するタスク管理テーブルに格納されたリソース制限に関する情報に基づき、開始タスク131Aのリソースを制限する(ステップST1004)。ステップST1004の処理がなされると、次はステップST709の処理がなされる。
When the
一方、ステップST1003において、開始タスク131Aのリソースを制限しても開始タスク131Aが実行できない場合(ステップST1003−No)、タスクリソース制御部126は、開始タスク131Aのリソースを制限せず、ステップST707の処理がなされる。
On the other hand, if the
以上のように、本発明の実施の形態3によれば、仮想マシン13Aにおいて開始タスク131Aを実行する際に、開始タスク131Aよりも優先度が低い他の実行タスク131のリソースを制限するようにしたので、他の実行タスク131を停止させることなく、開始タスク131Aを実行するのに十分なリソースを確保することができ、リソース不足による処理遅延を防止することが可能となる。
As described above, according to the third embodiment of the present invention, when the
また、開始タスク131Aよりも優先度の低い実行タスク131が存在しない場合は、開始タスク131A自体のリソースを制限して開始タスク131Aを実行するようにしたので、他の実行タスク131を停止させることなく、かつ、開始タスク131Aについても実行不可とすることなく実行することができるので、仮想マシン13に割り当てられたリソースを効率的に使用することが可能となる。
In addition, when there is no execution task 131 having a lower priority than the
なお、本願発明はその発明の範囲内において、各実施の形態の自由な組み合わせ、あるいは各実施の形態の任意の構成要素の変形、もしくは各実施の形態において任意の構成要素の省略が可能である。 In the present invention, within the scope of the invention, any combination of the embodiments, or any modification of any component in each embodiment, or omission of any component in each embodiment is possible. .
10、100、1000 情報処理装置、11 ハードウエア、12 仮想化ソフトウエア、13A〜C 仮想マシン、14 ユーザ、121 ユーザ管理部、122 リソース制御部、123 リソース管理部、124 タスク実行制御部、125 タスク管理部、126 タスクリソース制御部 10, 100, 1000 Information processing apparatus, 11 hardware, 12 virtualization software, 13A to C virtual machines, 14 users, 121 user management unit, 122 resource control unit, 123 resource management unit, 124 task execution control unit, 125 Task management unit, 126 Task resource control unit
Claims (10)
ユーザの前記仮想マシンへの接続の有無を検知し、接続した前記ユーザの情報を管理するユーザ情報管理部と、
ハードウエアのリソースのうち、前記複数の仮想マシンに割り当てられたリソース及び前記ハードウエアの余剰リソースをリソース割当情報として管理するリソース管理部と、
前記複数の仮想マシンへリソースを割り当てるリソース制御部と、を備え、
前記ユーザ情報管理部が前記ユーザによる第1の仮想マシンへの接続を検知すると、前記リソース制御部は、接続した前記ユーザの情報に基づいて前記第1の仮想マシンにリソースを割り当てることを特徴とする情報処理装置。 An information processing apparatus that controls resource allocation to a plurality of virtual machines,
A user information management unit that detects whether a user is connected to the virtual machine and manages information of the connected user;
Among the hardware resources, a resource management unit that manages the resources allocated to the plurality of virtual machines and the hardware surplus resources as resource allocation information;
A resource control unit that allocates resources to the plurality of virtual machines,
When the user information management unit detects a connection to the first virtual machine by the user, the resource control unit allocates resources to the first virtual machine based on information of the connected user. Information processing apparatus.
前記リソース制御部は、前記リソース管理部で選択された前記仮想マシンに対して、前記第1の仮想マシンに割り当てていたリソースを割り当てることを特徴とする請求項5に記載の情報処理装置。 The resource management unit selects a virtual machine with a high resource usage rate from the plurality of virtual machines based on the resource management information,
The information processing apparatus according to claim 5, wherein the resource control unit allocates the resource allocated to the first virtual machine to the virtual machine selected by the resource management unit.
タスクの実行または停止を前記仮想マシンに指示するタスク実行制御部と、を備え、
前記タスク実行制御部は、前記複数の仮想マシンのうち第2の仮想マシンが第1のタスクを実行するために必要なリソースを有していない場合に、前記タスク管理情報に基づき、前記第1のタスクよりも優先度の低い第2のタスクを停止するよう指示することを特徴とする請求項1乃至7のいずれかに記載の情報処理装置。 A task management unit for managing task management information including at least information on priority of a task executed in the virtual machine;
A task execution control unit that instructs the virtual machine to execute or stop the task,
The task execution control unit, based on the task management information, when the second virtual machine among the plurality of virtual machines does not have a resource necessary for executing the first task, The information processing apparatus according to claim 1, wherein an instruction is given to stop a second task having a lower priority than the task.
前記タスク実行制御部は、前記タスクリソース制御部により前記第2のタスクを実行するために使用されるリソースを制限しても、前記第2の仮想マシンが前記第1のタスクを実行するために必要なリソースを有さない場合に、前記第2のタスクを停止するよう指示することを特徴とする請求項8または9に記載の情報処理装置。 A task resource control unit that limits the resources used to execute a task,
The task execution control unit allows the second virtual machine to execute the first task even if the resource used by the task resource control unit to execute the second task is limited. 10. The information processing apparatus according to claim 8, wherein the second task is instructed to stop when the necessary resource is not included.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012250245A JP2014099036A (en) | 2012-11-14 | 2012-11-14 | Information processing device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012250245A JP2014099036A (en) | 2012-11-14 | 2012-11-14 | Information processing device |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2014099036A true JP2014099036A (en) | 2014-05-29 |
Family
ID=50941004
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012250245A Pending JP2014099036A (en) | 2012-11-14 | 2012-11-14 | Information processing device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2014099036A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2020144750A (en) * | 2019-03-08 | 2020-09-10 | Necソリューションイノベータ株式会社 | Method for managing session, session controller, and program |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH1097435A (en) * | 1996-09-20 | 1998-04-14 | Nec Corp | Resource allocation system |
JP2007188208A (en) * | 2006-01-12 | 2007-07-26 | Hitachi Ltd | System and method for allocating computer resource |
JP2008140123A (en) * | 2006-12-01 | 2008-06-19 | Toshiba Corp | Multiple program control management method and control management device |
JP2009258982A (en) * | 2008-04-16 | 2009-11-05 | Ntt Docomo Inc | Node device, program, and resource-allocating method |
WO2012056731A1 (en) * | 2010-10-27 | 2012-05-03 | 株式会社日立製作所 | Resource management server, resource management method and storage medium in which resource management program is stored |
-
2012
- 2012-11-14 JP JP2012250245A patent/JP2014099036A/en active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH1097435A (en) * | 1996-09-20 | 1998-04-14 | Nec Corp | Resource allocation system |
JP2007188208A (en) * | 2006-01-12 | 2007-07-26 | Hitachi Ltd | System and method for allocating computer resource |
JP2008140123A (en) * | 2006-12-01 | 2008-06-19 | Toshiba Corp | Multiple program control management method and control management device |
JP2009258982A (en) * | 2008-04-16 | 2009-11-05 | Ntt Docomo Inc | Node device, program, and resource-allocating method |
WO2012056731A1 (en) * | 2010-10-27 | 2012-05-03 | 株式会社日立製作所 | Resource management server, resource management method and storage medium in which resource management program is stored |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2020144750A (en) * | 2019-03-08 | 2020-09-10 | Necソリューションイノベータ株式会社 | Method for managing session, session controller, and program |
JP7235296B2 (en) | 2019-03-08 | 2023-03-08 | Necソリューションイノベータ株式会社 | SESSION MANAGEMENT METHOD, SESSION MANAGEMENT DEVICE, AND PROGRAM |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10810045B2 (en) | Method and apparatus for allocating central processing unit (CPU) resources in a default resource pool | |
US9588789B2 (en) | Management apparatus and workload distribution management method | |
US9183016B2 (en) | Adaptive task scheduling of Hadoop in a virtualized environment | |
US10191771B2 (en) | System and method for resource management | |
US9971621B1 (en) | Hotpooling virtual machines | |
EP3481007B1 (en) | Method, apparatus and management server for processing resource pool | |
US20130219390A1 (en) | Cloud server and method for creating virtual machines | |
US20200356402A1 (en) | Method and apparatus for deploying virtualized network element device | |
US20150269187A1 (en) | Apparatus and method for providing virtual machine image file | |
CN111078363A (en) | NUMA node scheduling method, device, equipment and medium for virtual machine | |
US20120311577A1 (en) | System and method for monitoring virtual machine | |
JP2014520346A5 (en) | ||
CN104331375A (en) | Shared virtualized resource management method and shared virtualized resource management device under shared virtualized resource pool environment | |
CN107920117B (en) | Resource management method, control equipment and resource management system | |
JP2016103179A (en) | Allocation method for computer resource and computer system | |
CN103309721A (en) | Virtual machine monitor management system and method | |
KR20130019698A (en) | Method for optimizing resource by using migration based on user's scheduler | |
KR101585160B1 (en) | Distributed Computing System providing stand-alone environment and controll method therefor | |
KR102168994B1 (en) | How to delete a cloud host in a cloud computing environment, devices, servers and storage media | |
US20160147657A1 (en) | System and method for optimized disk io ram caching for a vdi environment | |
CN107766154B (en) | Server conversion method and device | |
US9015418B2 (en) | Self-sizing dynamic cache for virtualized environments | |
KR102574043B1 (en) | Container-based gpu resource sharing mtehod and apparatus in cloud environment | |
US10831557B2 (en) | Task management using a virtual node | |
JP2014099036A (en) | Information processing device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20140327 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20150929 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20160630 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20160802 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20170228 |