JP6870390B2 - Resource allocation method, connection management server and connection management program in a system based on a virtual infrastructure - Google Patents
Resource allocation method, connection management server and connection management program in a system based on a virtual infrastructure Download PDFInfo
- Publication number
- JP6870390B2 JP6870390B2 JP2017041973A JP2017041973A JP6870390B2 JP 6870390 B2 JP6870390 B2 JP 6870390B2 JP 2017041973 A JP2017041973 A JP 2017041973A JP 2017041973 A JP2017041973 A JP 2017041973A JP 6870390 B2 JP6870390 B2 JP 6870390B2
- Authority
- JP
- Japan
- Prior art keywords
- performance score
- virtual
- virtual machine
- performance
- connection management
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Landscapes
- Stored Programmes (AREA)
Description
本発明は、仮想基盤に構築された仮想マシンのリソースと端末のリソースとを効率的に使い分ける、仮想基盤にもとづくシステムにおけるリソース割当方法、接続管理サーバおよび接続管理プログラムに関する。 The present invention relates to a resource allocation method, a connection management server, and a connection management program in a system based on a virtual infrastructure, which efficiently uses the resources of a virtual machine built on a virtual infrastructure and the resources of a terminal.
仮想基盤技術は、例えば、1台のサーバ等の計算機上に複数の仮想サーバ(仮想マシン)を構築する技術である。以下、複数の仮想マシンが構築された計算機を、仮想基盤ホストという。 The virtual infrastructure technology is, for example, a technology for constructing a plurality of virtual servers (virtual machines) on a computer such as one server. Hereinafter, a computer in which a plurality of virtual machines are constructed is referred to as a virtual infrastructure host.
図8は、仮想基盤にもとづくシステムの一例を示すブロック図である。仮想基盤ホスト200には、複数の仮想マシン211〜21nが構築されている。
FIG. 8 is a block diagram showing an example of a system based on the virtual infrastructure. A plurality of virtual machines 21 1 to 21 n are constructed on the
ハイパーバイザ30は、仮想基盤ホスト200における物理リソース(ハードウェア)40の制御を担う。ハイパーバイザ30は、仮想マシン211〜21nのいずれかからハードウェア40の使用が要求されると、リソース制御を行う。すなわち、ハイパーバイザ30は、実際のハードウェアリソースの割り当てを行う。ハイパーバイザ30のリソース制御によって、仮想マシン211〜21nのうちの複数の並列稼働も可能である。
The
図8に示すシステムでは、仮想基盤ホスト200にクライアント100が通信可能に接続されている。例えば、クライアント100(一例として、パーソナルコンピュータ)のユーザが、Windows (登録商標)OS(Operating System)等に標準的に搭載されているリモートデスクトップ接続機能を用いて、仮想マシンマシン211〜21nのデスクトップを遠隔から操作することによって、操作結果としての画面や音声等をクライアント100で得ることができる。
In the system shown in FIG. 8, the
また、GPU(Graphics Processing Unit)の仮想化も行われている。図9は、仮想GPUを使用するシステムの一例を示すブロック図である。図9には、複数のクライアント1001〜100mが示されている。また、仮想マシン211にインストールされているOS22、アプリケーションプログラム(ユーザアプリケーション)23およびグラフィックドライバ24も示されている。
In addition, GPU (Graphics Processing Unit) is also virtualized. FIG. 9 is a block diagram showing an example of a system using a virtual GPU. FIG. 9 shows a plurality of
仮想基盤ホスト201には、ハードウェア40として、GPU(GPUコアおよびGPU用メモリ)41が搭載されたGPUボードが実装されている。仮想マシン211で要求される画像処理(グラフィック処理)を、GPU41が担うことによって、仮想マシン211におけるユーザアプリケーション23が要求する高いグラフィック処理性能が実現される。このことは、仮想マシン211以外の仮想マシンについても同様である。
A GPU board on which a GPU (GPU core and GPU memory) 41 is mounted is mounted on the
複数の仮想マシン211〜21nへのハードウェアリソースの割り当ては、例えば、GPU用メモリを複数のメモリ領域に分割し各々のメモリ領域を各々の仮想マシン211〜21nに1対1に対応付けるように固定的に割り当てる方法による。いわゆるGPU仮想化方式が用いられる。GPU仮想化方式として、例えば、NVIDIA社が提供するNVIDIA GRID (登録商標)にもとづくvGPU(仮想GPU)がある。 The allocation of hardware resources to a plurality of virtual machines 21 1 to 21 n is, for example, dividing the GPU memory into a plurality of memory areas and dividing each memory area into one-to-one for each virtual machine 21 1 to 21 n. It depends on the fixed allocation method so that it can be associated. The so-called GPU virtualization method is used. As a GPU virtualization method, for example, there is a vGPU (virtual GPU) based on NVIDIA GRID (registered trademark) provided by NVIDIA.
また、図9に示すように、クライアント1001〜100mと仮想基盤ホスト200との間に接続管理サーバ500を介在させたシステムもある。クライアント1001〜100mは、接続管理サーバ500を介して、空いている仮想マシン211〜21nに自動的にログインできる。
Further, as shown in FIG. 9, there is also a system in which a
ユーザが例えばクライアント1001から仮想マシン211のOS22にログインし、ユーザアプリケーション23を利用して画面描画などのグラフィック処理の実行を望む場合、仮想マシン211は、グラフィックドライバ24を介して、グラフィックドライバ24に割り当てられた仮想GPU411に対する処理要求をハイパーバイザ30に対して行う。
User logs into the virtual machine 21 1 OS22 example from
クライアント1001〜100mとして、デスクトップパーソナルコンピュータ(PC)、ノートPC、タブレット端末、スマートフォンなど種々の端末が使用されうる。それらに実装されているメモリ、CPU数、GPU数等は様々である。また、それらのグラフィック性能も異なる。さらに、1台の仮想基盤ホスト201に実装できるメモリ、CPU数、GPU数には限りがある。従って、仮想基盤ホスト201で稼働できる仮想マシン211〜21nの数には上限がある。一方で、仮想マシン211〜21nの側で3D CAD(Computer Aided Design )などのグラフィックアプリケーションが実行されている場合には、クライアント側の使用リソースには余裕があることが多い。
As the
よって、複数のクライアント1001〜100mが仮想基盤ホスト201を使用する環境では、限られたリソースの下で、ユーザ全員のアプリケーションの実行速度を維持または向上させることが望まれる。また、ユーザの利便性と作業効率を挙げることが要請される。
Therefore, in an environment in which a plurality of
上記の要請は、例えば、仮想基盤ホスト200,201のリソースとクライアントのリソースとを効率的に使用することによって実現可能である。 The above request can be realized, for example, by efficiently using the resources of the virtual infrastructure hosts 200 and 201 and the resources of the client.
特許文献1には、端末装置(具体的には、ディジタルスチルカメラ)と、端末装置と通信可能な外部サーバとのいずれかで画像処理を行うことが可能なシステムにおいて、画像サイズ、双方のメモリサイズおよび双方の画像処理時間にもとづいて、いずれで画像処理を行うべきかを決定することが記載されている。 Patent Document 1 describes the image size and the memory of both in a system capable of performing image processing by either a terminal device (specifically, a digital still camera) or an external server capable of communicating with the terminal device. It is described that the image processing should be performed based on the size and the image processing time of both.
しかし、特許文献1では、1台の物理的な外部サーバと1台の端末装置との関係しか論じられていない。複数の端末装置および外部サーバ間でのリソースの割り当てに関する概念は、特許文献1には存在しない。なお、特許文献1には「仮想マシン」という表現があるが、特許文献1に記載された端末装置と外部サーバとの双方において、「仮想マシン」は1つしか存在しない。 However, Patent Document 1 only discusses the relationship between one physical external server and one terminal device. The concept of allocating resources between a plurality of terminal devices and an external server does not exist in Patent Document 1. Although Patent Document 1 has the expression "virtual machine", there is only one "virtual machine" in both the terminal device and the external server described in Patent Document 1.
本発明は、仮想基盤ホストに複数の端末が通信可能に接続されるシステムにおいて、仮想基盤ホストと端末とのリソースを含む全体的なリソースを効率的に使用できるようにすることを目的とする。 An object of the present invention is to enable efficient use of overall resources including resources of a virtual infrastructure host and terminals in a system in which a plurality of terminals are communicably connected to the virtual infrastructure host.
本発明による仮想基盤にもとづくシステムにおけるリソース割当方法は、複数の仮想マシンが構築された仮想基盤ホストにおける仮想マシンを複数の端末が利用する仮想基盤にもとづくシステムにおけるリソース割当方法であって、端末による仮想マシンの利用要求または利用終了が生じたときに、仮想マシンの稼働マシン数に応じた性能スコアである第1の性能スコアと端末の性能スコアである第2の性能スコアとを比較し、第1の性能スコアよりも第2の性能スコアの方が高い場合には端末のリソースを使用することに決定し、第2の性能スコアよりも第1の性能スコアの方が高い場合には仮想マシンのリソースを使用することに決定することを特徴とする。 The resource allocation method in a system based on a virtual infrastructure according to the present invention is a resource allocation method in a system based on a virtual infrastructure in which a plurality of terminals use virtual machines in a virtual infrastructure host in which a plurality of virtual machines are constructed, and depends on the terminals. When a virtual machine usage request or termination occurs, the first performance score, which is the performance score according to the number of running machines of the virtual machine, is compared with the second performance score, which is the terminal performance score. If the second performance score is higher than the first performance score, it is decided to use the resources of the terminal, and if the first performance score is higher than the second performance score, the virtual machine It is characterized by deciding to use the resources of.
本発明による接続管理サーバは、複数の仮想マシンが構築された仮想基盤ホストと、仮想基盤ホストにおける仮想マシンを利用する複数の端末とに通信可能に接続される接続管理サーバであって、端末による仮想マシンの利用要求または利用終了が生じたときに、仮想マシンの稼働マシン数に応じた性能スコアである第1の性能スコアと端末の性能スコアである第2の性能スコアとを比較する性能比較手段と、性能比較手段が第1の性能スコアよりも第2の性能スコアの方が高いと判定した場合には端末のリソースを使用することに決定し、性能比較手段が第2の性能スコアよりも第1の性能スコアの方が高いと判定した場合には仮想マシンのリソースを使用することに決定する切替決定手段とを備えたことを特徴とする。 The connection management server according to the present invention is a connection management server that is connected so as to be able to communicate with a virtual infrastructure host on which a plurality of virtual machines are constructed and a plurality of terminals that use the virtual machines on the virtual infrastructure host. Performance comparison that compares the first performance score, which is the performance score according to the number of running machines of the virtual machine, with the second performance score, which is the performance score of the terminal, when a virtual machine usage request or termination occurs. When the means and the performance comparison means determine that the second performance score is higher than the first performance score, it is decided to use the resource of the terminal, and the performance comparison means is higher than the second performance score. Also characterized in that it is provided with a switching decision means for deciding to use the resources of the virtual machine when it is determined that the first performance score is higher.
本発明による接続管理プログラムは、複数の仮想マシンが構築された仮想基盤ホストと、仮想基盤ホストにおける仮想マシンを利用する複数の端末とに通信可能に接続される接続管理サーバに、端末による仮想マシンの利用要求または利用終了が生じたときに、仮想マシンの稼働マシン数に応じた性能スコアである第1の性能スコアと端末の性能スコアである第2の性能スコアとを比較する処理と、比較する処理により第1の性能スコアよりも第2の性能スコアの方が高いと判定した場合には端末のリソースを使用することに決定し、比較する処理により第2の性能スコアよりも第1の性能スコアの方が高いと判定した場合には仮想マシンのリソースを使用することに決定する処理とを実行させることを特徴とする。 The connection management program according to the present invention is a virtual machine by a terminal to a connection management server that is connected to a virtual infrastructure host on which a plurality of virtual machines are constructed and a plurality of terminals that use the virtual machine on the virtual infrastructure host so as to be able to communicate with each other. When a usage request or termination of use occurs, the process of comparing the first performance score, which is the performance score according to the number of running machines of the virtual machine, and the second performance score, which is the performance score of the terminal, and comparison. the process of than the first performance score if it is determined that the direction of the second performance score higher decision to use the resources of the terminal, the first than the second performance score by the process of comparison When it is determined that the performance score is higher, the process of deciding to use the resources of the virtual machine is executed.
本発明によれば、仮想基盤ホストと端末とのリソースを含む全体的なリソースを効率的に使用できる。 According to the present invention, the entire resources including the resources of the virtual infrastructure host and the terminal can be efficiently used.
以下、本発明の実施形態を図面を参照して説明する。 Hereinafter, embodiments of the present invention will be described with reference to the drawings.
図1は、仮想基盤にもとづくシステムの一実施形態を示すブロック図である。 FIG. 1 is a block diagram showing an embodiment of a system based on a virtual infrastructure.
図1に示すシステムは、クライアント101〜10m、仮想サーバ等の仮想基盤ホスト20、および接続管理サーバ50を含む。クライアント101〜10mと接続管理サーバ50とは通信ネットワークを介して通信可能に接続される。仮想基盤ホスト20と接続管理サーバ50とは通信ネットワークを介して通信可能に接続される。
The system shown in FIG. 1 includes a client 10 1 to 10 m , a
クライアント101〜10mは、例えば、デスクトップPC、ノートPC、タブレット端末、スマートフォンである。 The clients 10 1 to 10 m are, for example, desktop PCs, notebook PCs, tablet terminals, and smartphones.
図1には、クライアント101〜10mのうちクライアント101の内部構成例が示されている。なお、クライアント101以外のクライアントの構成は、クライアント101の構成と同じでよい。図1に示すように、クライアント101は、OS12、グラフィックドライバ14、物理的なハードウェア15、グラフィック処理切替部16、および通信処理部17を含む。クライアント101には、3D CADや3D CG(Computer Graphics )等のユーザアプリケーション13がインストールされている。
1 shows an internal configuration example of the client 10 one of the client 10 1 to 10 m are shown. Incidentally, the client configuration other than the client 10 1 may be the same as the configuration client 10 1. As shown in FIG. 1, the client 10 1,
図1に示す例では、ハードウェア15は、CPU、RAM(Random Access Memory)等のメモリ、HDD(Hard Disk Drive )およびGPUを含む。
In the example shown in FIG. 1, the
グラフィック処理切替部16は、グラフィック処理の実行環境を切り替えるための処理を実行する。通信処理部17は、接続管理サーバ50とデータの送受信を行う。また、通信処理部17は、接続管理サーバ50から、グラフィック処理の切替通知を受信する。
The graphic
仮想基盤ホスト20には、複数の仮想マシン211〜21nが構築されている。ハイパーバイザ30は、仮想基盤ホスト100におけるハードウェア40の制御を担う。ハイパーバイザ30は、仮想マシン211〜21nのいずれかからハードウェア40の使用が要求されると、リソース制御を行う。すなわち、ハイパーバイザ30は、実際のハードウェアリソースの割り当てを行う。
A plurality of virtual machines 21 1 to 21 n are constructed on the
仮想基盤ホスト20は、OS22、グラフィック処理切替部26、および通信処理部27を含む。グラフィック処理切替部26は、グラフィック処理の実行環境を切り替えるための処理を実行する。通信処理部27は、接続管理サーバ50とデータの送受信を行う。また、通信処理部27は、接続管理サーバ50から、グラフィック処理の切替通知を受信する。
The
図3に示す例では、仮想基盤ホスト20には、ハードウェア40として、GPU(GPUコアおよびGPU用メモリ)41が搭載されている。仮想マシン211で要求される画像処理(グラフィック処理)を、GPU41が担うことによって、仮想マシン211における3D CADや3D CG等のユーザアプリケーション23が要求する高いグラフィック処理性能が実現される。このことは、仮想マシン211以外の仮想マシンについても同様である。
In the example shown in FIG. 3, the
複数の仮想マシン211〜21nへのGPUのリソースは、例えば、GPU用メモリを複数のメモリ領域に分割し各々のメモリ領域を各々の仮想マシン211〜21nに1対1に対応付けるように固定的に割り当てられる。 GPU resources for a plurality of virtual machines 21 1 to 21 n are, for example, divided into a plurality of memory areas for GPU and each memory area is associated with each virtual machine 21 1 to 21 n on a one-to-one basis. Is fixedly assigned to.
例えば、ユーザが仮想マシン211のOS22にログインした後、ユーザアプリケーション23が画面描画などのグラフィック処理を実行する場合には、仮想マシン211は、ハードウェア40を制御するハイパーバイザ30に対して、GPU41を仮想的に分割して自身に割り当てられた仮想GPU421に対する処理要求を行う。
For example, after the user logs into the virtual machine 21 1 of
接続管理サーバ50は、通信処理部51、グラフィック性能データベース52、グラフィック処理切替判定部53、および接続セッション管理部54を含む。
The
通信処理部51は、仮想基盤ホスト20およびクライアント101〜10mとデータの送受信を行う。グラフィック性能データベース52は、クライアント101〜10mのグラフィック性能スコアと仮想マシン211〜21nのグラフィック性能スコアとを記憶する。グラフィック処理切替判定部53は、グラフィック処理を、クライアント101〜10mで実行すべきか仮想マシン211〜21nで実行すべきかを決定する。接続セッション管理部54は、現在の仮想マシンの接続数を示す情報、どの仮想マシンが稼働しているのかを特定するための情報、および、クライアントに接続されている仮想マシンに関していずれの側でグラフィック処理が実行されているのかを示す情報を、記憶部に接続情報として保持する。
The
接続管理サーバ50において、通信処理部51(通信用インタフェースを除く。)、グラフィック処理切替判定部53、および接続セッション管理部54(記憶部を除く。)は、ROM(Read Only Memory)等の記憶部に記憶されたプログラムやRAM等の記憶部にロードされたプログラムに従って処理を実行するCPU(Central Processing Unit )で実現可能である。
In the
次に、グラフィック性能スコアとグラフィック性能スコアとにもとづくリソースの割り当て方法を説明する。 Next, a resource allocation method based on the graphic performance score and the graphic performance score will be described.
例えば、クライアント101から仮想マシンに対する接続要求が行われる場合、クライアント101の通信処理部17は、クライアント101の仕様を示す情報(スペック情報)として、CPUコア数、CPUクロック速度、メモリ速度、メモリ容量、HDDアクセス速度、GPUメモリ速度、GPUメモリ容量、GPUコア数、GPUクロック速度、OSのバージョン等を収集し、それらの情報を接続管理サーバ50に通知する。
For example, if the connection request to the virtual machine from the client 10 1 is performed, the
接続管理サーバ50において、通信処理部51は、クライアント101からの接続要求とクライアント101のスペック情報を受信する。グラフィック処理切替判定部53は、グラフィック性能データベース52に予め保存されているリストから、同一または最も類似するスペックのクライアントグラフィック性能スコアを取得する。
In the
グラフィック性能スコアは、予め、ベンチマークソフトウェアを使用してベンチマークテストを行うことによって得られる。グラフィック性能に関する最も一般的なベンチマークソフトウェアとして、国際的な非営利団体Standard Performance Evaluation Corporation (SPEC)が提供するSPECviewperfがある。Webで一般公開されている実行機器のスペックとSPECviewperfによるベンチマークテストの結果とがある場合には、それらをデータベースに取り込んでもよい。 The graphic performance score is obtained by performing a benchmark test in advance using benchmark software. The most common benchmark software for graphics performance is the SPECviewperf provided by the international non-profit organization Standard Performance Evaluation Corporation (SPEC). If there are specifications of the execution device that are open to the public on the Web and the results of the benchmark test by SPECviewperf, they may be imported into the database.
クライアント101〜10mのグラフィック性能とは別に、仮想マシン211〜21nのグラフィック性能スコアも予め算定される。仮想マシン211〜21nのグラフィック性能スコアは、例えば、クライアント101〜10mのグラフィック性能を取得したときに用いられたベンチマークソフトウェアを仮想マシン211〜21nで実行することによって算定される。ただし、各仮想マシン211〜21nの各々は、全てのリソースを使用可能であるが、仮想基盤ホスト20において複数の仮想マシンが稼働する場合には、GPUコア、およびやGPU/CPU/メモリ/HDD間の各通信バス等が共有される。よって、複数の仮想マシンが稼働するときには、グラフィック性能スコアは、単一の仮想マシンが稼働したときのグラフィック性能スコアよりも劣化する。
Apart from the graphic performance of clients 10 1 to 10 m , the graphic performance score of virtual machines 21 1 to 21 n is also calculated in advance. Graphics performance score of the virtual machine 21 1 through 21 n, for example, it is calculated by executing the benchmark software used when obtaining the graphics performance of the client 10 1 to 10 m in virtual machine 21 1 through 21 n .. However, each of the virtual machines 21 1 to 21 n can use all the resources, but when a plurality of virtual machines are running on the
そして、同時に稼働する仮想マシンの数が増えるほど、グラフィック性能スコアは、単一の仮想マシンが稼働したときのグラフィック性能スコアよりもより劣化する。よって、ベンチマークテストを実行する際に、仮想マシンの同時稼働数を変更し、仮想マシンの同時稼働数に応じたグラフィック性能スコアが予め取得され、それぞれが、グラフィック性能データベース52に格納される。
And as the number of virtual machines running at the same time increases, the graphics performance score deteriorates more than the graphics performance score when a single virtual machine runs. Therefore, when executing the benchmark test, the number of simultaneous operations of the virtual machines is changed, the graphic performance score corresponding to the number of simultaneous operations of the virtual machines is acquired in advance, and each is stored in the
また、接続セッション管理部54は、現在の仮想マシンの接続数(いずれかの仮想マシン211〜21nを利用しているクライアントの数に相当)の情報を保持している。グラフィック処理切替判定部53は、接続している各クライアント(いずれかの仮想マシン211〜21nを利用しているクライアント)および新規に接続要求したクライアントのグラフィック性能スコアと、接続セッション管理部54に保持されている現在の仮想マシンの接続数に応じた仮想マシンのグラフィック性能スコアとを比較する。
Further, the connection
なお、仮想基盤ホスト20において、各仮想マシン211〜21nには固定的に均等にハードウェアリソースが割り振られているとする。従って、各々の仮想マシンの接続数について、各仮想マシン211〜21nのグラフィック性能スコアは同じである。
It is assumed that in the
ただし、各仮想マシン211〜21nに不均等にハードウェアリソースが割り振られていたり、各仮想マシン211〜21nに対して動的にハードウェアリソースが割り振られる場合には、仮想マシン211〜21nごとに、グラフィック性能スコアが算出されるようにしてもよい。 However, if each virtual machine 21 1 through 21 n or not hardware resources are allocated unevenly, dynamically hardware resources to each virtual machine 21 1 through 21 n are allocated, the virtual machine 21 The graphic performance score may be calculated every 1 to 21 n.
現在の仮想マシンの接続数における仮想マシンのグラフィック性能スコアの方が大きい場合には、通信処理部51は、仮想マシン側のリソースを使用してグラフィック処理を行うように、仮想マシンとその仮想マシンに接続されているクライアントに通知する。すなわち、通信処理部51は、仮想マシン側でグラフィック処理を行う(クライアント側でグラフィック処理を行わない。)指示を含む切替通知を行う。クライアントのグラフィック性能スコアの方が大きい場合には、通信処理部51は、クライアント側のリソースを使用してグラフィック処理を行うように、仮想マシンとその仮想マシンに接続されているクライアントに通知する。すなわち、通信処理部51は、クライアント側でグラフィック処理を行う(仮想マシン側でグラフィック処理を行わない。)指示を含む切替通知を行う。なお、以前の比較結果と変わらない場合には、通信処理部51は、通知を行わないようにしてもよい。その場合には、クライアントと仮想マシンとにおけるグラフィック処理の分担の状態は維持される。
When the graphic performance score of the virtual machine in the current number of virtual machine connections is higher, the
なお、通信処理部51の仮想マシンに対する切替通知は、具体的には、切替対象の仮想マシンを特定可能な情報を仮想基盤ホスト20に送信することによって実現される。
The switching notification to the virtual machine of the
一例として、クライアント101〜10mのうちのクライアントA,B,Cが、仮想マシン211〜21nのうちの仮想マシンX,Y,Zに接続されている状態で、クライアントDが新規に接続要求したクライアントとして、仮想マシンWに接続される場合を想定する。そのような状況では、接続セッション管理部54は、クライアントA,B,C,Dのそれぞれのグラフィック性能スコアと、接続数が「4」である場合の仮想マシンのグラフィック性能スコアとを、グラフィック性能データベース52から入手する。
As an example, client D is newly connected while clients A, B, and C of clients 10 1 to 10 m are connected to virtual machines X, Y, and Z of virtual machines 21 1 to 21 n. It is assumed that the client that requested the connection is connected to the virtual machine W. In such a situation, the connection
例えば、クライアントA,C,Dについては、仮想マシンのグラフィック性能スコアよりもグラフィック性能スコアが高い場合には、通信処理部51は、クライアントA,C,Dと仮想マシンX,Z,Wとに対して、クライアントA,C,D側のリソースを使用してグラフィック処理を行うように通知する。ただし、一例として、直近に通知がなされたときにクライアントCのグラフィック性能スコアの方が仮想マシンのグラフィック性能スコアよりも既に高かった場合には、通信処理部51は、通知を行わない。
For example, for clients A, C, and D, when the graphic performance score is higher than the graphic performance score of the virtual machine, the
仮想マシンのグラフィック性能スコアの方がクライアントBのグラフィック性能スコアよりも高かった場合には、通信処理部51は、クライアントBと仮想マシンYとに対して、仮想マシン側のリソースを使用してグラフィック処理を行うように通知する。この場合にも、直近に通知がなされたときに仮想マシンのグラフィック性能スコアの方がクライアントBのグラフィック性能スコアよりも既に高かった場合には、通信処理部51は、通知を行わない。
When the graphic performance score of the virtual machine is higher than the graphic performance score of the client B, the
なお、仮想マシンのグラフィック性能スコアとクライアントのグラフィック性能スコアとが等しい場合には、例えば、クライアントと仮想マシンとにおけるグラフィック処理の分担の状態が維持されるように、通信処理部51は、通知を行わない。
When the graphic performance score of the virtual machine and the graphic performance score of the client are equal, for example, the
図2は、仮想マシンのグラフィック性能スコアとクライアントのグラフィック性能スコアとの一例を示す説明図である。図2に示す例では、接続数が「1」である(稼働数が「1」である)ときの仮想マシンのグラフィック性能スコアが100で、接続数が「6」であるときのグラフィック性能スコアが80、接続数が「8」であるときのグラフィック性能スコアが40である。また、クライアントAのグラフィック性能スコアは80であり、クライアントDのグラフィック性能スコアは40である。 FIG. 2 is an explanatory diagram showing an example of a graphic performance score of a virtual machine and a graphic performance score of a client. In the example shown in FIG. 2, the graphic performance score of the virtual machine is 100 when the number of connections is "1" (the number of operations is "1"), and the graphic performance score is when the number of connections is "6". Is 80, and the graphic performance score is 40 when the number of connections is "8". Further, the graphic performance score of the client A is 80, and the graphic performance score of the client D is 40.
図2に示す例では、接続数が「6」を越えると、クライアントAについては、クライアントA側でリソースを使用してグラフィック処理が行われる状態に切り替えられる。また、接続数が「8」を越えると、クライアントDについては、クライアントD側でリソースを使用してグラフィック処理が行われる状態に切り替えられる。すなわち、グラフィック処理の実行環境の切り替えが行われる。 In the example shown in FIG. 2, when the number of connections exceeds "6", the client A is switched to a state in which graphic processing is performed using resources on the client A side. When the number of connections exceeds "8", the client D is switched to a state in which graphic processing is performed using resources on the client D side. That is, the execution environment of the graphic processing is switched.
切替通知がクライアントでの実行を指示している場合、クライアントにおいて、通信処理部17が切替通知を受信すると、グラフィック処理切替部16は、自クライアントがグラフィック処理を実行する状態に設定する。そのような設定の下のクライアントでは、画面描画などのグラフィック処理が行われる場合に、ユーザアプリケーション13は、グラフィックドライバ14を介して、GPUなどのハードウェアに処理を要求する。また、仮想基盤ホスト20において、通信処理部27が切替通知を受信すると、グラフィック処理切替部26は、そのクライアントに接続されてる仮想マシンがグラフィック処理を実行しない状態に設定する。
When the switching notification instructs the client to execute, when the
切替通知が仮想マシンでの実行を指示している場合、クライアントにおいて、通信処理部17が切替通知を受信すると、グラフィック処理切替部16は、自クライアントがグラフィック処理を実行しない状態に設定する。また、仮想基盤ホスト20において、通信処理部27が切替通知を受信すると、グラフィック処理切替部26は、そのクライアントに接続されてる仮想マシンがグラフィック処理を実行する状態に設定する。そのような設定の下では、仮想マシンが仮想GPUを用いてグラフィック処理を実行する。
When the switching notification indicates execution in the virtual machine, when the
また、あるクライアントにおける動作が終了して接続数が減るときにも、接続セッション管理部54は、上記のグラフィック処理の実行環境を切り替えるか否かの判定を行い、切り替えると決定したときには、通信処理部51は、決定の対象の仮想マシンとその仮想マシンに接続されているクライアントとに対して、グラフィック処理の実行の切り替えに関する通知を行う。
Further, even when the operation of a certain client ends and the number of connections decreases, the connection
次に、図1に示されたシステムの動作を説明する。図3は、あるクライアントが仮想マシンに対する接続要求を行ったときのシステムの動作を示すフローチャートである。クライアント101が接続要求を行ったとする。 Next, the operation of the system shown in FIG. 1 will be described. FIG. 3 is a flowchart showing the operation of the system when a client makes a connection request to a virtual machine. A client 10 1 makes a connection request.
接続管理サーバ50において、通信処理部51は、クライアント101から、クライアント101のスペック情報を受信する(ステップS11)。通信処理部51は、受信したスペック情報をグラフィック処理切替判定部53に出力する。
In the
なお、接続管理サーバ500は、空いている仮想マシンから1つをクライアント101に接続される仮想マシンとして選択し、選択結果を接続セッション管理部54および仮想基盤ホスト20に通知する。
The
グラフィック処理切替判定部53は、グラフィック性能データベース52に予め保存されているリストから、同一または最も類似するスペックのクライアントグラフィック性能スコアを取得する(ステップS12)。
The graphic processing
グラフィック処理切替判定部53は、接続セッション管理部54から、現在の仮想マシン211〜21nの接続数の情報を取得して、現在の仮想マシンの接続数を把握する。そして、グラフィック処理切替判定部53は、接続している各クライアントおよび新規に接続要求したクライアント101のグラフィック性能スコアと、仮想マシンの接続数(クライアント101も含む。)に応じた仮想マシンのグラフィック性能スコアとを比較する(ステップS13)。
The graphic processing switching determination unit 53 acquires information on the number of connections of the current virtual machines 21 1 to 21 n from the connection
接続している各クライアントおよび新規に接続要求したクライアント101のうちで、仮想マシンのグラフィック性能スコアよりも高いグラフィック性能スコアのクライアントが生じた場合には、グラフィック処理切替判定部53は、そのクライアントについては、クライアント側のリソースを使用してグラフィック処理を行うことに決定する。通信処理部51は、グラフィック処理切替判定部53の決定に応じて、そのクライアントと、そのクライアントに接続されている仮想マシンに対して、グラフィック処理の切替通知を行う(ステップS14)。
Among clients 10 1 to which the connection request to the client and the new connected, for clients high graphics performance scores than graphics performance score of the virtual machine occurs, the graphic processing
クライアントの通信処理部17は、グラフィック処理の切替通知を受信すると、グラフィック処理切替部16に対して切り替えの通知を行い、切替完了通知を接続管理サーバ50に送信する。仮想基盤ホスト20の通信処理部27は、グラフィック処理の切替通知を受信すると、グラフィック処理切替部26に対して切り替えの通知を行い、切替完了通知を接続管理サーバ50に送信する。
When the
接続管理サーバ50の通信処理部51が双方から切替完了通知を受信すると、接続セッション管理部54は、接続数を更新するとともに、クライアントに接続されている仮想マシンに関していずれの側でグラフィック処理が実行されているのかを示す情報を更新する(ステップS15)。
When the
図4は、あるクライアントが仮想マシンに対する接続解除要求(接続終了)を行ったときのシステムの動作を示すフローチャートである。クライアント101が接続解除要求を行ったとする。 FIG. 4 is a flowchart showing the operation of the system when a client makes a connection disconnection request (connection termination) to the virtual machine. A client 10 1 makes a connection release request.
接続管理サーバ50において、通信処理部51が、クライアント101から、接続解除要求を受信すると、接続セッション管理部54は、接続情報(現在の仮想マシンの接続数を示す情報、どの仮想マシンが稼働しているのかを特定するための情報、および、クライアントに接続されている仮想マシンに関していずれの側でグラフィック処理が実行されているのかを示す情報)を更新する(ステップS21)。
In the
グラフィック処理切替判定部53は、接続セッション管理部54から、更新後の仮想マシンの接続数の情報を取得する。そして、グラフィック処理切替判定部53は、接続している各クライアント(クライアント101を除く。)のグラフィック性能スコアと、仮想マシンの接続数に応じた仮想マシンのグラフィック性能スコアとを比較する(ステップS22)。
The graphic processing
仮想マシンのグラフィック性能スコアが、接続しているいずれかのクライアントのグラフィック性能スコアよりも高くなっている場合には、グラフィック処理切替判定部53は、そのクライアントについては、仮想マシン側のリソースを使用してグラフィック処理を行うことに決定する。通信処理部51は、グラフィック処理切替判定部53の決定に応じて、そのクライアントと、そのクライアントに接続されている仮想マシンに対して、グラフィック処理の切替通知を行う(ステップS23)。
If the graphic performance score of the virtual machine is higher than the graphic performance score of any of the connected clients, the graphic processing
クライアントの通信処理部17は、グラフィック処理の切替通知を受信すると、グラフィック処理切替部16に対して切り替えの通知を行い、切替完了通知を接続管理サーバ50に送信する。仮想基盤ホスト20の通信処理部27は、グラフィック処理の切替通知を受信すると、グラフィック処理切替部26に対して切り替えの通知を行い、切替完了通知を接続管理サーバ50に送信する。
When the
接続管理サーバ50の通信処理部51が双方から切替完了通知を受信すると、接続セッション管理部54は、クライアントに接続されている仮想マシンに関していずれの側でグラフィック処理が実行されているのかを示す情報を更新する(ステップS24)。
When the
以上に説明したように、本実施形態では、仮想基盤ホストのリソース使用状況に応じて、仮想基盤ホスト側(仮想マシン側)のリソースとクライアント側のリソースとの使用効率を自動的かつ自律的に最適化でき、クライアント全体のアプリケーションの実行速度が向上する。 As described above, in the present embodiment, the usage efficiency between the resources on the virtual infrastructure host side (virtual machine side) and the resources on the client side is automatically and autonomously adjusted according to the resource usage status of the virtual infrastructure host. It can be optimized and speeds up application execution across clients.
なお、本実施形態では、ユーザアプリケーション13,23として、グラフィック処理を実行するアプリケーションプログラムが使用され、グラフィック処理の性能にもとづいてリソースを割り当てる場合を例にしたが、本発明の適用範囲は、そのようなアプリケーションプログラムに限られない。他のアプリケーションが対象とされる場合には、仮想基盤ホスト20およびクライアント101〜10mにおいて、ハードウェア15,40として、当該アプリケーションに対応する物理リソース(ハードウェア)およびドライバが用いられる。また、接続管理サーバ50において、当該アプリケーションに対応する処理スコアが保持される。
In the present embodiment, as the
また、仮想基盤ホスト20として、サーバの他に、ワークステーションを使用することもできる。さらに、クライアント101〜10mは仮想基盤ホスト20をリモートアクセスするが、仮想基盤ホスト20は、組織内運用下にあってもよいし、クラウド環境下にあってもよい。
Further, as the
図5は、接続管理サーバの主要部を示すブロック図である。図5に示す接続管理サーバ1Aは、複数の仮想マシンが構築された仮想基盤ホスト6(実施形態では、仮想基盤ホスト20)と、仮想基盤ホストにおける仮想マシンを利用する複数の端末7,8(2つに限定されない:図1に示されたクライアント101〜10mに相当)とに通信可能に接続され、端末7,8による仮想マシンの利用要求または利用終了が生じたときに、仮想マシンの稼働マシン数に応じた性能スコアである第1の性能スコアと端末の性能スコアである第2の性能スコアとを比較する性能比較手段2(例えば、グラフィック処理切替判定部53で実現される。)と、性能比較手段2が第1の性能スコアよりも第2の性能スコアの方が高いと判定した場合には端末7,8のリソースを使用することに決定し、性能比較手段2が第2の性能スコアよりも第1の性能スコアの方が高いと判定した場合には仮想マシンのリソースを使用することに決定する切替決定手段3(例えば、グラフィック処理切替判定部53で実現される。)とを備えている。
FIG. 5 is a block diagram showing a main part of the connection management server. The
図6は、他の態様の接続管理サーバの主要部を示すブロック図である。図6に示す接続管理サーバ1Bは、第1の性能スコアと複数の端末のそれぞれの第2の性能スコアとが格納された性能データベース4(例えば、グラフィック性能データベース52で実現される。)を備えている。
FIG. 6 is a block diagram showing a main part of the connection management server of another aspect. The
図7は、さらに他の態様の接続管理サーバの主要部を示すブロック図である。図7に示す接続管理サーバ1Cは、稼働している仮想マシンの数を特定可能なデータを記憶し、仮想マシンの利用要求または利用終了が生じたときにデータを更新する接続セッション管理手段5(例えば、接続セッション管理部54で実現される。)を備えている。
FIG. 7 is a block diagram showing a main part of the connection management server of still another aspect. The
1A,1B,1C 接続管理サーバ
2 性能比較手段
3 切替決定手段
4 性能データベース
5 接続セッション管理手段
6 仮想基盤ホスト
7,8 端末
101〜10m クライアント
12 OS
13 ユーザアプリケーション
14 グラフィックドライバ
15 ハードウェア
17 通信処理部
16 グラフィック処理切替部
20 仮想基盤ホスト
211〜21n 仮想マシン
22 OS
23 ユーザアプリケーション
24 グラフィックドライバ
26 グラフィック処理切替部
27 通信処理部
30 ハイパーバイザ
40 ハードウェア
41 GPU
421〜42n 仮想GPU
50 接続管理サーバ
51 通信処理部
52 グラフィック性能データベース
53 グラフィック処理切替判定部
54 接続セッション管理部
1A, 1B, 1C
13
23
42 1 ~42 n virtual GPU
50
Claims (10)
前記端末による前記仮想マシンの利用要求または利用終了が生じたときに、前記仮想マシンの稼働マシン数に応じた性能スコアである第1の性能スコアと前記仮想マシンを使用する端末の性能スコアである第2の性能スコアとを比較し、
前記第1の性能スコアよりも前記第2の性能スコアの方が高い場合には当該端末のリソースを使用することに決定し、前記第2の性能スコアよりも前記第1の性能スコアの方が高い場合には前記仮想マシンのリソースを使用することに決定する
ことを特徴とするリソース割当方法。 A resource allocation method in a system based on a virtual infrastructure in which multiple terminals use virtual machines on a virtual infrastructure host on which multiple virtual machines are built.
When a request for use or termination of use of the virtual machine occurs by the terminal, a first performance score which is a performance score according to the number of operating machines of the virtual machine and a performance score of a terminal using the virtual machine. Compare with the second performance score,
When the second performance score is higher than the first performance score, it is decided to use the resource of the terminal, and the first performance score is higher than the second performance score. A resource allocation method comprising deciding to use the resources of the virtual machine when it is high.
算定した前記第1の性能スコアと前記第2の性能スコアとを性能データベースに格納する
請求項1記載のリソース割当方法。 The first performance score and the second performance score of each of a plurality of terminals are calculated, and the calculated first performance score and the second performance score are stored in a performance database according to claim 1. Resource allocation method.
請求項2記載のリソース割当方法。 The resource allocation method according to claim 2, wherein the graphic performance score is calculated as the first performance score and the second performance score.
請求項2または請求項3記載のリソース割当方法。 The resource allocation method according to claim 2 or 3, wherein the first performance score and the second performance score are calculated using the same benchmark software.
前記端末による前記仮想マシンの利用要求または利用終了が生じたときに、前記仮想マシンの稼働マシン数に応じた性能スコアである第1の性能スコアと前記仮想マシンを使用する端末の性能スコアである第2の性能スコアとを比較する性能比較手段と、
前記性能比較手段が前記第1の性能スコアよりも前記第2の性能スコアの方が高いと判定した場合には当該端末のリソースを使用することに決定し、前記性能比較手段が前記第2の性能スコアよりも前記第1の性能スコアの方が高いと判定した場合には前記仮想マシンのリソースを使用することに決定する切替決定手段と
を備えたことを特徴とする接続管理サーバ。 A connection management server that is connected to a virtual infrastructure host on which multiple virtual machines are built and to multiple terminals that use virtual machines on the virtual infrastructure host so that they can communicate with each other.
When a request for use or termination of use of the virtual machine occurs by the terminal, a first performance score which is a performance score according to the number of operating machines of the virtual machine and a performance score of a terminal using the virtual machine. A performance comparison means for comparing with the second performance score,
When the performance comparison means determines that the second performance score is higher than the first performance score, it is decided to use the resource of the terminal, and the performance comparison means is the second performance comparison means. A connection management server including a switching determination means for determining to use the resources of the virtual machine when it is determined that the first performance score is higher than the performance score.
請求項5記載の接続管理サーバ。 The connection management server according to claim 5, further comprising a performance database in which the first performance score and the second performance score of each of the plurality of terminals are stored.
請求項5または請求項6記載の接続管理サーバ。 The connection management server according to claim 5 or 6, wherein the resource is a GPU.
請求項5から請求項7のうちのいずれか1項に記載の接続管理サーバ。 Claims 5 to 5 include a connection session management means for storing data that can identify the number of operating virtual machines and updating the data when a request for use or termination of use of the virtual machines occurs. The connection management server according to any one of 7.
前記端末による前記仮想マシンの利用要求または利用終了が生じたときに、前記仮想マシンの稼働マシン数に応じた性能スコアである第1の性能スコアと前記仮想マシンを使用する端末の性能スコアである第2の性能スコアとを比較する処理と、
前記比較する処理により前記第1の性能スコアよりも前記第2の性能スコアの方が高いと判定した場合には当該端末のリソースを使用することに決定し、前記比較する処理により前記第2の性能スコアよりも前記第1の性能スコアの方が高いと判定した場合には前記仮想マシンのリソースを使用することに決定する処理とを
実行させるための接続管理プログラム。 To the connection management server that is connected so that it can communicate with the virtual infrastructure host on which multiple virtual machines are built and the multiple terminals that use the virtual machines on the virtual infrastructure host.
When a request for use or termination of use of the virtual machine occurs by the terminal, a first performance score which is a performance score according to the number of operating machines of the virtual machine and a performance score of a terminal using the virtual machine. The process of comparing with the second performance score and
When it is determined by the comparison process that the second performance score is higher than the first performance score, it is decided to use the resource of the terminal, and the second performance score is determined by the comparison process. A connection management program for executing a process of deciding to use the resources of the virtual machine when it is determined that the first performance score is higher than the performance score.
稼働している前記仮想マシンの数を特定可能なデータを、前記仮想マシンの利用要求または利用終了が生じたときに更新する処理を実行させるための請求項9記載の接続管理プログラム。 To the connection management server,
The connection management program according to claim 9, for executing a process of updating data capable of specifying the number of operating virtual machines when a request for use or termination of use of the virtual machine occurs.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017041973A JP6870390B2 (en) | 2017-03-06 | 2017-03-06 | Resource allocation method, connection management server and connection management program in a system based on a virtual infrastructure |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017041973A JP6870390B2 (en) | 2017-03-06 | 2017-03-06 | Resource allocation method, connection management server and connection management program in a system based on a virtual infrastructure |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2018147257A JP2018147257A (en) | 2018-09-20 |
JP6870390B2 true JP6870390B2 (en) | 2021-05-12 |
Family
ID=63588883
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017041973A Active JP6870390B2 (en) | 2017-03-06 | 2017-03-06 | Resource allocation method, connection management server and connection management program in a system based on a virtual infrastructure |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6870390B2 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10901881B1 (en) | 2020-05-12 | 2021-01-26 | Coupang Corp. | Systems and methods for test deployment of computational code on virtual servers |
-
2017
- 2017-03-06 JP JP2017041973A patent/JP6870390B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2018147257A (en) | 2018-09-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11775335B2 (en) | Platform independent GPU profiles for more efficient utilization of GPU resources | |
JP6054522B2 (en) | Integrated storage / VDI provisioning method | |
JP5969743B2 (en) | Method, apparatus and program for optimizing use of virtual graphics processing unit | |
US10768827B2 (en) | Performance throttling of virtual drives | |
CN108667859A (en) | A kind of method and device for realizing scheduling of resource | |
US9766913B2 (en) | Method and system for managing peripheral devices for virtual desktops | |
US10248460B2 (en) | Storage management computer | |
US11068315B2 (en) | Hypervisor attached volume group load balancing | |
KR20140022922A (en) | Native cloud computing via network segmentation | |
EP3000024B1 (en) | Dynamically provisioning storage | |
US20210042045A1 (en) | Storage system and resource allocation control method | |
KR20210095690A (en) | Resource management method and apparatus, electronic device and recording medium | |
JP2022519803A (en) | Computer systems and related methods that provide virtual computing sessions through virtual delivery agent leasing with enhanced power savings and connectivity | |
US9755986B1 (en) | Techniques for tightly-integrating an enterprise storage array into a distributed virtualized computing environment | |
US20200272526A1 (en) | Methods and systems for automated scaling of computing clusters | |
US20140289728A1 (en) | Apparatus, system, method, and storage medium | |
KR20150007698A (en) | Load distribution system for virtual desktop service | |
US20220318057A1 (en) | Resource Management for Preferred Applications | |
JP6870390B2 (en) | Resource allocation method, connection management server and connection management program in a system based on a virtual infrastructure | |
KR101972997B1 (en) | Method of managing profile for drive of virtual desttop in heterogeneous server and apparatus using the same | |
TWI522921B (en) | Systems and methods for creating virtual machine | |
EP4109255A1 (en) | Scheduling in a container orchestration system utilizing hardware topology hints | |
JP2011221634A (en) | Computer system, logic section management method and logic division processing program | |
JP6653786B2 (en) | I / O control method and I / O control system | |
JP2011215812A (en) | Virtual computer management method, computer system, and resource management program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20200204 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20210126 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20210216 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20210301 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20210316 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20210329 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6870390 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |