JP2015094975A - 仮想マシン管理システムおよび仮想マシン管理方法 - Google Patents

仮想マシン管理システムおよび仮想マシン管理方法 Download PDF

Info

Publication number
JP2015094975A
JP2015094975A JP2013232210A JP2013232210A JP2015094975A JP 2015094975 A JP2015094975 A JP 2015094975A JP 2013232210 A JP2013232210 A JP 2013232210A JP 2013232210 A JP2013232210 A JP 2013232210A JP 2015094975 A JP2015094975 A JP 2015094975A
Authority
JP
Japan
Prior art keywords
virtual
physical
resource
value
virtual machine
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2013232210A
Other languages
English (en)
Inventor
晃治 岡本
Koji Okamoto
晃治 岡本
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP2013232210A priority Critical patent/JP2015094975A/ja
Publication of JP2015094975A publication Critical patent/JP2015094975A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

【課題】複数の物理マシン上で複数のユーザの仮想マシンが動作している環境において、他の物理マシンの保有している物理リソースの状況や、他のユーザの仮想マシンに割り当てられている物理リソースの状況も考慮する必要のないシステムおよび管理方法を提供する。
【解決手段】仮想VI(VI:Virtualization Infrastructure)構成手段102が、各ユーザ対応に生成された複数の仮想マシン201と、それらが動作する1つの仮想VI204と、該仮想VI対応の仮想リソース管理テーブル104とで構成された仮想の環境を各ユーザの管理者に提示する。
【選択図】図6

Description

本発明は、仮想マシン管理システムおよび仮想マシン管理方法に関し、特に、複数の仮想マシンが動作する仮想の仮想化ソフトウェアを設けるよう構成された仮想マシン管理システムおよび仮想マシン管理方法に関する。
物理コンピュータ(以下、「物理マシン」と言う。)上で少なくとも一つの仮想的なコンピュータ(以下、「仮想マシン(VM:Virtual Machine)」とも言う。)を動作させる仮想化技術が一般的に知られている。
仮想化技術では、物理マシン上で実行される仮想化ソフトウェア(以下、「VI:Virtualization Infrastructure」とも言う。)が、仮想マシンの動作を制御し、物理マシンが備える物理リソース(例えば、メモリやCPU(「Central Processing Unit」の略称)など。)を各仮想マシンに割り当てる。
仮想化技術を利用して複数のユーザが共同で複数の物理マシンを利用するデータセンタやクラウドシステム等においては、一般的に、ある1つの物理マシン上で実行されている仮想化プログラムの上で、複数のユーザの仮想マシンが動作している。
特許文献1には、ユーザ毎に複数の仮想計算機を設定し、各仮想計算機にて使用可能な処理演算能力の上限を設定し、前記処理演算能力の上限の範囲内で、各前記仮想計算機に対して物理計算機の処理演算能力を配分し、有効利用する技術について記載されている。
また、特許文献2には、複数の仮想マシンを複数のサーバ上で稼働させ、各該仮想マシンの所定時間毎のパフォーマンスを示す実測データを取得し、当該データに基づいて求めた仮想マシンの最適配置に従い当該仮想マシンの再配置を行い、複数の仮想マシンを複数のサーバ上で効率良く稼働させることができる技術について記載されている。
特開2012−198698号広報 特開2005−115653号広報
しかしながら、複数の物理マシン上で複数のユーザの仮想マシンが動作している環境において、ユーザ毎に仮想マシンの管理をするためには、当該ユーザの管理者が、自ユーザの仮想マシンが動作している各物理マシンの保有している物理リソースの使用状況を認識していなくてはならない。また、自ユーザの仮想マシンを追加しようとする場合、他のユーザへの影響を考慮して、追加する仮想マシンの物理マシンへの配置や、該仮想マシンへ割り当てる物理リソース量を決定しなければならないという問題点がある。
特許文献1および特許文献2には、複数の物理マシン上で動作する仮想計算機をグループ化し、当該グループ毎に仮想リソース管理テーブルを設け、該仮想リソース管理テーブルで使用可能な物理リソース量を管理する技術について何ら記載されていない。
本発明の目的は、上述した問題点を解決できる仮想マシン管理システムおよび仮想マシン管理方法を提供することにある。
本発明の仮想マシン管理システムは、
ユーザ対応に生成された仮想マシンと、前記仮想マシンが動作する仮想化手段とを含む物理マシンと、
前記仮想マシンをユーザ毎にグループ化し、グループ化した各該仮想マシンが動作する仮想の仮想化手段を構成する仮想VI構成手段と、前記仮想の仮想化手段対応で設けられ、グループ化した各前記仮想マシンに割り当てられた第1の物理リソースの値および前記仮想の仮想化手段で使用可能な第2の物理リソースの値を記憶する仮想リソース記憶手段とを含む仮想マシン管理装置と
から構成され、
前記仮想VI構成手段は、グループ化した各前記仮想マシンと、それらが動作する前記仮想の仮想化手段と、前記仮想リソース記憶手段とを、グループ化した各前記仮想マシンを管理するユーザに提示する手段
を備える。
また、本発明の仮想マシン管理方法は、
ユーザ対応に生成された仮想マシンが動作する少なくとも1つの物理マシンで、前記物理マシンに設けられたリソース記憶手段に記憶された、仮想マシンに割り当て可能な第1の物理リソースの値のうちの最小の値を選択する第1の選択ステップと、
前記第1の選択ステップで選択した値を、前記ユーザ毎にグループ化した前記仮想マシンが動作する仮想の仮想化手段対応で設けられた仮想リソース記憶手段に第2の物理リソースの値として記憶する第1の記憶ステップと
を含む。
本発明には、あるユーザの管理者が、各物理マシンが保有する物理リソース量の状況や他のユーザ対応で生成された仮想マシンが使用している物理リソース量の状況等を考慮する必要はなく、自ユーザ対応の仮想マシンのみを管理すればよいという効果がある。
図1は、本発明の実施形態を示すブロック図である。 図2は、本発明の実施形態におけるリソース管理テーブル203の構成を示す図である。 図3は、本発明の実施形態における仮想リソース管理テーブル104の構成を示す図である。 図4は、本発明の実施形態における仮想リソース管理テーブル104に設定する使用可能なリソース量の値の算出処理の動作を示すフローチャートである。 図5は、本発明の実施形態における仮想リソース管理テーブル104に設定する使用可能なリソース量の値の算出方法を示す模式図である。 図6は、本発明の実施形態における仮想VI204と仮想リソース管理テーブル104との構成を示すブロック図である。 図7は、本発明の実施形態における仮想マシンの追加処理の動作を示すフローチャートである。 図8は、本発明の実施形態における、仮想マシンを物理マシン#1に追加した場合の仮想リソース管理テーブル104に設定する値の算出処理の動作を示す模式図である。 図9は、本発明の実施形態における、仮想マシンを物理マシン#2に追加した場合の仮想リソース管理テーブル104に設定する値の算出処理の動作を示す模式図である。 図10は、本発明の実施形態における、仮想マシンを物理マシン#3に追加した場合の仮想リソース管理テーブル104に設定する値の算出処理の動作を示す模式図である。 図11は、本発明の実施形態における、仮想マシンを物理マシン#2に追加した場合のブロック図である。 図12は、本発明の実施形態における、仮想マシンを物理マシン#2に追加した場合の仮想VI204と仮想リソース管理テーブル104との構成を示すブロック図である。
次に、本発明の実施形態について図面を参照して詳細に説明する。
図1は本発明の実施形態を示すブロック図である。
図1を参照すると、本実施形態は、仮想マシン管理装置100と、少なくとも1つの物理マシン200と、少なくとも一つの端末300とから構成される。
物理マシン200は、仮想化ソフトウェア202と、該仮想化ソフトウェア202上で動作する複数の仮想マシン201と、各仮想マシン201に割り当てられた各種物理リソースの量と示す値と使用可能な物理リソースの量を示す値とを登録したリソース管理テーブル203とを含む。
ここで、物理マシン200にはそれぞれ識別番号が付与されており、本実施形態では、1番の識別番号が付与された物理マシンの名称を「物理マシン#1」とし、2番の識別番号が付与された物理マシンの名称を「物理マシン#2」・・・とする。
また、仮想マシン201にはそれぞれを識別する名称が付与されており、本実施形態では、該名称を「VM1」、「VM2」・・・とする。さらに、仮想マシン201はそれぞれ1つのユーザ対応に生成されており、本実施形態では、該ユーザを識別する名称を、「ユーザA」、「ユーザB」・・・とする。
仮想マシン管理装置100は、仮想マシン201をどの物理マシン200上に配置するべきかを判断して配置するVM配置手段101と、各仮想マシン201をユーザ毎にグループ化し、グループ化した各該仮想マシンが動作する仮想の仮想化ソフトウェア(以下、「仮想VI」と言う。)を構成する仮想VI構成手段102と、仮想化ソフトウェア202に対して行われる操作と上記仮想VIに対して行われる操作とを変換する仮想VIマッピング手段103と、仮想マシン201に割り当てられた各種物理リソースの量を示す値と上記仮想VIで使用可能なリソースの量を示す値とを登録した仮想リソース管理テーブル104とを含む。
端末300は、ユーザが情報を入力するためのキーボード等の入力手段と、各種の情報を表示するためのディスプレイ等の出力手段とを備える。ここで、端末300としては、例えば、パーソナルコンピュータ、タブレット型端末またはPDA(Personal Digital Assistant)端末が考えられるが、これらに限定されるものではない。
図2は、各物理マシン200対応のリソース管理テーブル203の構成を示す図である。
図2に示すテーブルにおいて、1行目は項目名を示し、2行目以降が1行目の各項目名で示される項目の内容の一例である。
図2を参照すると、テーブル203は、登録内容欄と、物理マシンのCPUリソースの量を示す値が登録されるCPU欄と、メモリリソースの量を示す値が登録されるメモリ欄と、ディスクリソースの量を示す値が登録されるディスク欄と、該物理マシン上で動作している仮想マシンを識別する名称が登録されるVM名欄と、該仮想マシンがどのユーザ対応のものかを示すためのユーザを識別する名称が登録されるユーザ欄とから構成される。
例えば、物理マシン#1対応のリソース管理テーブル203の2行目を見ると、登録内容欄には、当該行は1つ目の仮想マシンへ割り当てられたリソース量の情報であることを示す「割り当て1」が登録され、CPUリソースの量が「2」コア、メモリリソースの量が「4」GB、ディスクリソースの量が「100」GBであり、該仮想マシンの識別名は「VM1」、そして、該仮想マシンは「ユーザA」対応で生成されたものであることが判る。
該テーブル203の3行目を見ると、登録内容欄には、当該行は物理マシン#1が保有する物理リソースの総量が登録されていることを示す「全体」が登録され、CPUリソースの量が「12」コア、メモリリソースの量が「20」GB、ディスクリソースの量が「500」GBであることが判る。
そして、該テーブル203の4行目を見ると、登録内容欄には、当該行は仮想マシンに現在割り当て可能な物理リソースの量(すなわち、物理マシン#1が保有する物理リソースの総量から該物理マシン上で動作している仮想マシンに割り当てられている物理リソースの合計を差し引いた量)が登録されていることを示す「使用可」が登録され、CPUリソースの量が「10」コア、メモリリソースの量が「16」GB、ディスクリソースの量が「400」GBであることが判る。
なお、登録内容欄が「割り当て1」である行は、当該行に対応する仮想マシンが生成される際に仮想化ソフトウェア202によって登録される。複数の仮想マシンが生成されている場合は複数の行が登録され、当該行の登録内容欄にはそれぞれ「割り当て1」、「割り当て2」・・・が登録される。
登録内容欄が「全体」である行は、当該物理マシンの管理者により初期値として設定される。
登録内容欄が「使用可」である行は、仮想マシンが生成されるたびに仮想化ソフトウェア202により値が算出され、設定される。
図3は、上述の仮想VI対応に設けられた仮想リソース管理テーブル104の構成を示す図である。
仮想リソース管理テーブル104は、各物理マシン200上に配置されている少なくとも1つの仮想マシン201をユーザ毎にグループ化し、グループ化した各該仮想マシンが動作する仮想VI対応に仮想マシン管理装置100に設けられ、グループ化した各該仮想マシンに割り当てられた物理リソース各種の量を示す値と該仮想VIで使用可能なリソース量を示す値とが格納される。
図3に示すテーブルにおいて、1行目は項目名を示し、2行目以降が1行目の各項目名で示される項目の内容の一例である。
図3を参照すると、テーブル104は、登録内容欄と、CPUリソースの量を示す値が登録されるCPU欄と、メモリリソースの量を示す値が登録されるメモリ欄と、ディスクリソースの量を示す値が登録されるディスク欄と、仮想マシンを識別する名称が登録されるVM名欄と、該仮想マシンがどの物理マシン200上で動作しているかを示す物理マシンの名称が登録される物理マシン欄とから構成される。
例えば、ユーザAの仮想VI(すなわち、ユーザA対応の仮想マシンのグループに含まれる仮想マシンが動作する仮想VI)に対応する仮想リソース管理テーブル104の2行目を見ると、登録内容欄には、当該行は1つ目の仮想マシンへ割り当てられた物理リソース量の情報であることを示す「割り当て1」が登録され、CPUリソースの量が「2」コア、メモリリソースの量が「4」GB、ディスクリソースの量が「100」GBであり、該仮想マシンの識別名は「VM1」、そして、該仮想マシンは「物理マシン#1」上で動作していることが判る。
該テーブル104の5行目を見ると、登録内容欄には、当該仮想VIで現在割り当て可能なリソースの量が登録されていることを示す「使用可」が登録され、CPUリソースの量が「10」コア、メモリリソースの量が「10」GB、ディスクリソースの量が「400」GBであることが判る。
なお、テーブル104には、当該仮想マシングループに含まれる仮想マシンの数と同じ数の「割り当て」行が登録され、それぞれ登録内容欄には「割り当て1」、「割り当て2」・・・が登録される。
なお、登録内容欄が「割り当て1」、「割り当て2」・・・である行は、当該行に対応する仮想マシンが生成される際に仮想VI構成手段102によって登録される。
登録内容欄が「使用可」である行は、仮想マシンが生成されるたびに仮想VI構成手段102により後述する算出方法に従い値が算出され、設定される。
次に、本実施形態の動作について詳細に説明する。
まず、図4に示すフローチャートを参照して、仮想リソース管理テーブル104の登録内容欄が「使用可」である行のCPU欄、メモリ欄およびディスク欄に設定する値の算出処理の動作について説明する。
図4を参照すると、まず、仮想VI構成手段102は、あるユーザの仮想マシンが動作する複数の物理マシンのリソース管理テーブル203を参照し、各該テーブル203の登録内容欄が「使用可」である行のCPU欄に登録されている使用可能なCPUリソース量を示す値のうち、最小の値を、当該ユーザの仮想マシンのグループに対応した仮想VIの使用可能なCPUリソース量を示す値とする(ステップS100)。
次に、メモリ欄およびディスク欄についても上述のステップS100と同様の処理を行う(ステップS101、102)。
そして、全てのユーザについて上述のステップS100乃至ステップS102の処理を繰り返す(ステップS103)。
次に、上述の図4のフローチャートを参照して説明した、仮想リソース管理テーブル104の登録内容欄が「使用可」である行の各欄の値の設定方法を、図2に示すリソース管理テーブルの構成図と図5に示す模式図とを参照して、具体的に説明する。
図2を参照すると、ユーザAに対応した仮想マシンの名称(すなわち、ユーザ欄に「ユーザA」が登録されている行のVM名欄に登録されている値)は、物理マシン#1上で動作している「VM1」と、物理マシン#2上で動作している「VM2」および「VM3」との3つである。
そして、図2から仮想マシン「VM1」が動作している物理マシン#1の使用可能なリソース量は、CPUリソースが「10」コアであり、メモリリソースが「16」GBであり、ディスクリソースが「400」GBであることが判る。
同様に、「VM2」および「VM3」が動作している物理マシン#2の使用可能なリソース量は、CPUリソースが「20」コアであり、メモリリソースが「10」GBであり、ディスクリソースが「600」GBであることが判る。
従って、図5の模式図を参照すると、仮想マシン「VM1」が動作している物理マシン#1の使用可能なCPUリソース量の「10」コアと、「VM2」および「VM3」が動作している物理マシン#2の使用可能なリソース量の「20」コアとを比較し、小さい方は物理マシン#1の「10」コアであるので、ユーザAでグループ化した仮想マシンが動作する仮想VI対応の仮想リソース管理テーブル104(仮想リソース管理テーブル#1)の登録内容欄が「使用可」である行のCPU欄に設定するCPUリソース量を示す値は「10」コアとなる。
同様に、メモリ欄に設定するメモリリソース量を示す値は「10」GBとなり、ディスク欄に設定するディスクリソース量を示す値は「400」GBとなる。
さらに、ユーザBについても上述と同様に、ユーザBでグループ化した仮想マシンが動作する仮想VI対応の仮想リソース管理テーブル104(仮想リソース管理テーブル#2)の登録内容欄が「使用可」である行のCPU欄に設定するCPUリソース量を示す値は「35」コアとなり、メモリ欄に設定するメモリリソース量を示す値は「24」GB、ディスク欄に設定するディスクリソース量を示す値は「500」GBとなる。
図6は、仮想VI構成手段102を通して各ユーザの管理者に示される、仮想VI204と仮想リソース管理テーブル104との構成を示すブロック図である。
図6を参照すると、各ユーザの管理者が端末300から仮想マシン管理装置100にアクセスすると、仮想VI構成手段102は、各該管理者が担当するユーザ対応に生成された複数の仮想マシン201と、それらが動作する1つの仮想VI204と、該仮想VI対応の仮想リソース管理テーブル104とで構成された仮想の環境を当該管理者に提示する。
例えば、ユーザAの管理者が仮想マシン管理装置100にアクセスすると、当該管理者には、ユーザA対応で生成された仮想マシン(すなわち、「VM1」、「VM2」および「VM3」)と、それらが動作する1つの仮想VI(すなわち仮想VI#1)と、仮想VI#1対応の仮想リソース管理テーブル#1とで構成された環境が提示される。
従って、ユーザAの管理者は、物理マシンが保有する物理リソース量の状況や他のユーザ対応で生成された仮想マシンが使用している物理リソース量の状況等を考慮する必要はなく、仮想リソース管理テーブル#1を参照して、ユーザA対応の仮想マシンのみを管理すればよい。
次に、図7のフローチャートを参照して、仮想マシン追加処理の動作について説明する。
図7を参照すると、まず、ユーザの管理者は、仮想マシン管理装置100にアクセスし、自ユーザの仮想リソース管理テーブル104の登録内容欄が「使用可」である行のCPU欄、メモリ欄およびディスク欄を参照し、追加する仮想マシンに割り当てる物理リソースの量を決定する。
このとき、該管理者は上述のCPU欄、メモリ欄およびディスク欄に格納されている値以下で当該仮想マシンに割り当てる量を自由に設定することができる。その場合、該管理者は、各物理マシンが保有する使用可能な物理リソースの量や他のユーザ対応で生成された仮想マシンが使用している物理リソースの量を考慮する必要はない。
そして、管理者は端末300から仮想マシンの追加要求と上述の割り当てリソース量の情報とを入力する(ステップS200)。
次に、仮想VIマッピング手段103は、入力された仮想マシンの追加要求とリソース情報とを受け取り、該仮想マシンの最適な物理マシンへの追加をVM配置手段101に要求する。
要求を受けたVM配置手段101は、各物理マシン200のリソース管理テーブル203の登録内容欄が「使用可」である行のCPU欄、メモリ欄およびディスク欄を参照し、追加する仮想マシンに割り当てるリソース量が確保可能な物理マシン(すなわち、「使用可」である行のCPU欄、メモリ欄およびディスク欄に格納されている値が、追加する仮想マシンに割り当てる各リソース量を示す値以上である物理マシン)を1つ選択する。そして、選択した物理マシンに該仮想マシンを追加した場合の、仮想リソース管理テーブル104の登録内容欄が「使用可」である行の各欄に設定する値の算出を仮想VI構成手段102に要求する。
該要求を受けた仮想VI構成手段102は、前述の図4のフローチャートで示した処理により、全てのユーザの仮想リソース管理テーブル104の登録内容欄が「使用可」である行のCPU欄、メモリ欄およびディスク欄に設定する値を算出する(ステップS201)。
VM配置手段101は、追加する仮想マシンに割り当てるリソース量が確保可能な物理マシンに該仮想マシンを追加する全ての配置について、上述のステップS201の算出処理を実施したか否かを判断し(ステップS202)、まだ実施していない配置がある場合は(ステップS202で「NO」の場合)、該物理マシンについて上述のステップS201の算出処理を実施する。
追加する仮想マシンに割り当てるリソース量が確保可能な物理マシンに該仮想マシンを追加する全ての配置について、上述のステップS201の算出処理を実施した場合(ステップS202で「YES」の場合)、VM配置手段101は、それぞれの配置において、全てのユーザの仮想リソース管理テーブル104の登録内容欄が「使用可」である行のCPU欄の合計と、メモリ欄の合計と、ディスク欄の合計とを算出する(ステップS203)。
次に、VM配置手段101は、上述のステップS203で算出した全てのユーザの仮想リソース管理テーブル104の登録内容欄が「使用可」である行のCPU欄の合計が、最も大きい値である配置が複数あるか否かを判断する(ステップS204)。
CPU欄の合計が最も大きい値である配置が1つの場合(ステップS204で「NO」の場合)、VM配置手段101はその配置を選択し(ステップS205)、ステップS211に処理を移す。
CPU欄の合計が最も大きい値である配置が複数ある場合(ステップS204で「YES」の場合)、VM配置手段101は、それらの複数の配置のうち、メモリ欄の合計が最も大きい値である配置が複数あるか否かを判断する(ステップS206)。
メモリ欄の合計が最も大きい値である配置が1つの場合(ステップS206で「NO」の場合)、VM配置手段101はその配置を選択し(ステップS207)、ステップS211に処理を移す。
メモリ欄の合計が最も大きい値である配置が複数ある場合(ステップS206で「YES」の場合)、VM配置手段101は、それらの複数の配置のうち、ディスク欄の合計が最も大きい値である配置が複数あるか否かを判断する(ステップS208)。
ディスク欄の合計が最も大きい値である配置が1つの場合(ステップS208で「NO」の場合)、VM配置手段101はその配置を選択する(ステップS209)。
ディスク欄の合計が最も大きい値である配置が複数ある場合(ステップS208で「YES」の場合)、VM配置手段101は、それらの複数の配置のうち、一番若い番号の物理マシンに仮想マシンを追加する配置を選択する(ステップS210)。
そして、VM配置手段101は選択された配置に従って、仮想マシンを追加する物理マシンの仮想化ソフトウェア202に対し、該仮想マシンの追加を要求する。
仮想化ソフトウェア202は、該要求に従い仮想マシンを追加するとともに、リソース管理テーブル203の登録内容欄が「割り当てn」である行を新しく追加する。このとき、「n」は数字であり、既に存在する番号の次の番号を使用する。そして、該仮想マシンに割り当てられたリソース量の値を、上記「割り当てn」の行のそれぞれのリソースの欄に登録し、VM名欄には該仮想マシンの名称を登録し、ユーザ欄には該仮想マシンの対応ユーザを識別する名称を登録する。
さらに、仮想化ソフトウェア202は、仮想マシンに割り当て可能な物理リソースの量を示す値(すなわち、登録内容欄が「全体」である行に格納されている値から、「割り当てn」である各行に格納されている値を差し引いた値)を算出し、登録内容欄が「使用可」である行のCPU欄、メモリ欄およびディスク欄を、算出した各値で更新する(ステップS211)。
なお、仮想化ソフトウェア202による仮想マシンの追加処理については、一般的な仮想化技術による処理なので詳細な説明は省略する。
次に、仮想VI構成手段102は、追加した仮想マシンのユーザの仮想リソース管理テーブル104に、登録内容欄が「割り当てn」である行を新しく追加する。このとき、「n」は数字であり、既に存在する番号の次の番号を使用する。
そして、該仮想マシンに割り当てられたリソース量の値を、上記「割り当てn」の行のそれぞれのリソースの欄に登録し、VM名欄には該仮想マシンの名称を登録し、物理マシン欄には該仮想マシンを追加した物理マシンの名称を登録する。
さらに、上述のステップS201で算出したリソース量の値で、登録内容欄が「使用可」である行のCPU欄、メモリ欄およびディスク欄を更新する(ステップS212)。
ここで、上述の図7のフローチャートを参照して説明した仮想マシンの追加処理を、図1のブロック図と、図2のリソース管理テーブル203の構成図と、図3の仮想リソース管理テーブル104の構成図と、図8乃至図10の模式図とを参照して具体的に説明する。
図1のブロック図に示す状態のときに、名称が「VM6」であるユーザAの仮想マシンを追加する場合を考える。該仮想マシンに割り当てる物理リソース量は、図3のユーザAに対応した仮想リソース管理テーブル#1の、登録内容欄が「使用可」である行のCPU欄、メモリ欄およびディスク欄に格納されている値以下である、CPUリソース「10」コア、メモリリソース「10」GBおよびディスクリソース「400」GBとする。
図2を参照すると、ユーザAに対応した仮想マシンの名称(すなわち、ユーザ欄に「ユーザA」が登録されている行のVM名欄に登録されている値)は、物理マシン#1上で動作している「VM1」と、物理マシン#2上で動作している「VM2」および「VM3」との3つである。
図2から、仮想マシン「VM1」が動作している物理マシン#1の使用可能なリソース量を示す値は、CPUリソースが「10」コアであり、メモリリソースが「16」GBであり、ディスクリソースが「400」GBであることが判る。
同様に、「VM2」および「VM3」が動作している物理マシン#2の使用可能なリソース量を示す値は、CPUリソースが「20」コアであり、メモリリソースが「10」GBであり、ディスクリソースが「600」GBであることが判る。
また、ユーザBに対応した仮想マシンの名称は「VM4」および「VM5」であり、当該仮想マシンが動作している物理マシン#3の使用可能なリソース量を示す値は、CPUリソースが「35」コアであり、メモリリソースが「24」GBであり、ディスクリソースが「500」GBであることが判る。
この状態のときに、上記のユーザAの仮想マシン「VM6」を物理マシン#1に追加した場合の各仮想リソース管理テーブルに設定する値およびそれらの合計値の算出方法を図8に示す。
「VM6」を物理マシン#1に追加した後の該物理マシンの使用可能な物理リソース量は、上述の、図2に示される物理マシン#1の使用可能なリソース量を示す値から、「VM6」に割り当てられた各リソースの量を示す値を差し引いた値になる。すなわち、CPUリソースが「0」コアになり、メモリリソースが「6」GBになり、ディスクリソースが「0」GBになる。
また、物理マシン#2の使用可能なリソース量を示す値は、前述の通りCPUリソースが「20」コアであり、メモリリソースが「10」GBであり、ディスクリソースが「600」GBである。
図8の模式図を参照すると、ユーザAの仮想マシンが動作する仮想VI対応の仮想リソース管理テーブル104(仮想リソース管理テーブル#1)の登録内容欄が「使用可」である行のCPU欄に設定するCPUリソース量を示す値は、図4のフローチャートを参照して説明したように、ユーザAの仮想マシン「VM1」および「VM6」が動作する物理マシン#1の使用可能なCPUリソース量を示す値の「0」コアと、「VM2」および「VM3」が動作する物理マシン#2の使用可能なリソース量を示す値の「20」コアと比較し、小さい方の「0」コアとなる。
同様に、メモリ欄に設定する値は「6」GBとなり、ディスク欄に設定する値は「0」GBとなる。
さらに、ユーザBについては、仮想リソース管理テーブル#2の登録内容欄が「使用可」である行の各欄に設定する値は、物理マシン#3の使用可能なリソース量を示す値と同じである。すなわち、CPU欄に設定する値は「35」コアであり、メモリ欄に設定する値は「24」GB、ディスク欄に設定する値は「500」GBである。
そして、ユーザAの仮想リソース管理テーブル#1とユーザBの仮想リソース管理テーブル#2との、登録内容欄が「使用可」である行のCPU欄、メモリ欄およびディスク欄に設定された値の合計は、それぞれ「35」コア、「30」GBおよび「500」GBとなり、これらの合計の値を他の配置の合計の値と比較することになる。
次に、図1乃至図3の状態のときに、上記のユーザAの仮想マシン「VM6」を物理マシン#2に追加した場合の各仮想リソース管理テーブルに設定する値およびそれらの合計値の算出方法を図9に示す。
「VM6」を物理マシン#2に追加した後の該物理マシンの使用可能な物理リソース量は、前述の、図2に示される物理マシン#2の使用可能なリソース量を示す値から、「VM6」に割り当てられた各リソースの量を示す値を差し引いた値になる。すなわち、CPUリソースが「10」コアになり、メモリリソースが「0」GBになり、ディスクリソースが「200」GBになる。
また、物理マシン#1の使用可能なリソース量を示す値は、前述のようにCPUリソースが「10」コアであり、メモリリソースが「16」GBであり、ディスクリソースが「400」GBである。
図9の模式図を参照すると、ユーザAの仮想マシンが動作する仮想VI対応の仮想リソース管理テーブル104(仮想リソース管理テーブル#1)の登録内容欄が「使用可」である行のCPU欄に設定するCPUリソース量を示す値は、図4のフローチャートを参照して説明したように、ユーザAの仮想マシン「VM1」が動作する物理マシン#1の使用可能なCPUリソース量の「10」コアと、「VM2」、「VM3」および「VM6」が動作する物理マシン#2の使用可能なリソース量の「10」コアと比較し、どちらも同じ値であるので、「10」コアとなる。
メモリ欄に設定する値は、同様に比較すると、小さい方である物理マシン#2の「0」GBとなり、同様に、ディスク欄に設定する値も物理マシン#2の「200」GBとなる。
さらに、ユーザBについては、仮想リソース管理テーブル#2の登録内容欄が「使用可」である行の各欄に設定する値は、物理マシン#3の使用可能なリソース量を示す値と同じである。すなわち、CPU欄に設定する値は「35」コアであり、メモリ欄に設定する値は「24」GB、ディスク欄に設定する値は「500」GBである。
そして、ユーザAの仮想リソース管理テーブル#1とユーザBの仮想リソース管理テーブル#2との、登録内容欄が「使用可」である行のCPU欄、メモリ欄およびディスク欄に設定された値の合計は、それぞれ「45」コア、「24」GBおよび「700」GBとなり、これらの合計の値を他の配置の合計の値と比較することになる。
次に、図1乃至図3の状態のときに、上記の仮想マシン「VM6」を物理マシン#3に追加した場合の各仮想リソース管理テーブルに設定する値およびそれらの合計値の算出方法を図10に示す。
「VM6」を物理マシン#3に追加した後の該物理マシンの使用可能な物理リソース量は、前述の、図2に示される物理マシン#3の使用可能なリソース量を示す値から、「VM6」に割り当てられた各リソースの量を示す値を差し引いた値になる。すなわち、CPUリソースが「25」コアになり、メモリリソースが「14」GBになり、ディスクリソースが「100」GBになる。
また、物理マシン#1の使用可能なリソース量を示す値は、前述のようにCPUリソースが「10」コアであり、メモリリソースが「16」GBであり、ディスクリソースが「400」GBであり、同様に、物理マシン#2の使用可能なリソース量を示す値は、CPUリソースが「20」コアであり、メモリリソースが「10」GBであり、ディスクリソースが「600」GBである
図10の模式図を参照すると、ユーザAの仮想マシンが動作する仮想VI対応の仮想リソース管理テーブル104(仮想リソース管理テーブル#1)の登録内容欄が「使用可」である行のCPU欄に設定するCPUリソース量を示す値は、図4のフローチャートを参照して説明したように、ユーザAの仮想マシン「VM1」が動作する物理マシン#1の使用可能なCPUリソース量の「10」コアと、「VM2」および「VM3」が動作する物理マシン#2の使用可能なリソース量の「20」コアと、「VM6」が動作する物理マシン#3の使用可能なリソース量の「25」コアとを比較し、最も小さい値である物理マシン#1の「10」コアとなる。
同様に、メモリ欄に設定する値は「10」GBとなり、ディスク欄に設定する値は「100」GBとなる。
さらに、ユーザBについては、仮想リソース管理テーブル#2の登録内容欄が「使用可」である行の各欄に設定する値は、物理マシン#3の使用可能なリソース量を示す値と同じである。すなわち、CPU欄に設定する値は「25」コアであり、メモリ欄に設定する値は「14」GB、ディスク欄に設定する値は「100」GBである。
そして、ユーザAの仮想リソース管理テーブル#1とユーザBの仮想リソース管理テーブル#2との、登録内容欄が「使用可」である行のCPU欄、メモリ欄およびディスク欄に設定された値の合計は、それぞれ「35」コア、「24」GBおよび「200」GBとなり、これらの合計の値を他の配置の合計の値と比較することになる。
次に、ここまで図8乃至図10の模式図を参照して説明した、ユーザAの仮想マシンである「VM6」を各物理マシンに追加するそれぞれの配置の、ユーザAの仮想リソース管理テーブル#1とユーザBの仮想リソース管理テーブル#2との、登録内容欄が「使用可」である行のCPU欄に設定された値の合計を比較すると、図9を参照して説明した、物理マシン#2に該仮想マシンを追加する場合が最も大きくなるので、仮想VI構成手段102は、追加する仮想マシン「VM6」を物理マシン#2に追加する配置を選択することになる。
図11は、ユーザA対応で生成された仮想マシンである「VM6」を物理マシン#2に追加した後の、物理マシン200と、仮想マシン管理装置100と、端末300との構成を示すブロック図である。
図11を参照すると、仮想マシン「VM6」を物理マシン#2に追加する前のブロック図である図1との違いは、物理マシン#2の仮想化ソフトウェア202の上で動作する仮想マシンが、「VM2」および「VM3」に加え、「VM6」が追加されている点と、物理マシン#2の使用可能なリソース量を示す値(すなわち、物理マシン#2のリソース管理テーブル203の登録内容欄が「使用可」である行の各欄に格納されている値)が、CPUリソースが「10」コアであり、メモリリソースが「0」GBであり、ディスクリソースが「200」GBである点である。
そして、図12は、ユーザA対応で生成された仮想マシンである「VM6」を物理マシン#2に追加した後の、仮想VI204と仮想リソース管理テーブル104との構成を示すブロック図である。
図12を参照すると、仮想マシン「VM6」を物理マシン#2に追加する前のブロック図である図6との違いは、ユーザA対応の仮想VI#1の上で動作する仮想マシンが、「VM1」、「VM2」および「VM3」に加え、「VM6」が追加されている点と、仮想VI#1の使用可能なリソース量を示す値(すなわち、仮想リソース管理テーブル205の登録内容欄が「使用可」である行の各欄に格納されている値)が、CPUリソースが「10」コアであり、メモリリソースが「0」GBであり、ディスクリソースが「200」GBである点である。
なお、本実施形態では、新しい仮想マシンを追加するときに、追加後の各仮想リソース管理テーブル104の使用可能なCPUリソース量の値の合計が最大になるかという判断と、メモリリソース量の値の合計が最大になるかという判断と、ディスクリソース量の値の合計が最大になるかという判断とを順番に行い、当該仮想マシンの配置先の物理マシンを選択している(すなわち、図7のフローチャートのステップS204乃至S208)が、これらの判断の条件を、さまざまに変更可能な「VM配置ポリシ」として別途設定し、VM配置手段101が該「VM配置ポリシ」を参照して、仮想マシンを追加する物理マシンを選択するようにしてもよい。
以上、説明したように、本実施形態では、あるユーザの管理者が、各物理マシン200が保有する物理リソース量の状況や他のユーザ対応で生成された仮想マシン201が使用している物理リソース量の状況等を考慮する必要はなく、自ユーザ対応に設けられた仮想リソース管理テーブル104を参照して、自ユーザ対応の仮想マシン201のみを管理すればよいという効果がある。
その理由は、仮想VI構成手段102が、各ユーザ対応に生成された複数の仮想マシン201と、それらが動作する1つの仮想VI204と、該仮想VI対応の仮想リソース管理テーブル104とで構成された仮想の環境を各ユーザの管理者に提示するからである。
100 仮想マシン管理装置
101 VM配置手段
102 仮想VI構成手段
103 仮想VIマッピング手段
104 仮想リソース管理テーブル
200 物理マシン
201 仮想マシン
202 仮想化ソフトウェア
203 リソース管理テーブル
300 端末

Claims (8)

  1. ユーザ対応に生成された仮想マシンと、前記仮想マシンが動作する仮想化手段とを含む物理マシンと、
    前記仮想マシンをユーザ毎にグループ化し、グループ化した各該仮想マシンが動作する仮想の仮想化手段を構成する仮想VI構成手段と、前記仮想の仮想化手段対応で設けられ、グループ化した各前記仮想マシンに割り当てられた第1の物理リソースの値および前記仮想の仮想化手段で使用可能な第2の物理リソースの値を記憶する仮想リソース記憶手段とを含む仮想マシン管理装置と
    から構成され、
    前記仮想VI構成手段は、グループ化した各前記仮想マシンと、それらが動作する前記仮想の仮想化手段と、前記仮想リソース記憶手段とを、グループ化した各前記仮想マシンを管理するユーザに提示する手段を備える
    ことを特徴とする仮想マシン管理システム。
  2. 前記物理マシンは、
    各前記仮想マシンに割り当てられた第1の物理リソースの値と、該物理マシンが保有する物理リソースの値と、仮想マシンに割り当て可能な第3の物理リソースの値とを記憶するリソース記憶手段を含み、
    前記仮想VI構成手段は、
    グループ化した各前記仮想マシンが動作する複数の前記物理マシンの前記リソース記憶手段に記憶された、前記第3の物理リソースの値のうちの最小の値を、該グループに対応した仮想の仮想化手段が使用可能な前記第2の物理リソースの値として前記仮想リソース記憶手段に記憶する手段を備える
    ことを特徴とする請求項1記載の仮想マシン管理システム。
  3. 前記仮想マシン管理装置は、
    仮想マシンの追加要求と、該仮想マシンに割り当てるリソース量情報とを入力する処理と、
    前記各物理マシンのリソース記憶手段の前記第3の物理リソースの値が、前記追加する仮想マシンに割り当てるリソース量情報で示される物理リソースの値以上である全ての物理マシンを選択する処理と、
    選択した前記物理マシンに前記追加する仮想マシンを追加した場合の各々で、全てのユーザの仮想リソース記憶手段の、前記第2の物理リソースの値の合計を算出する処理と、
    前記算出した前記第2の物理リソースの値の合計が最も大きい場合の、該仮想マシンを追加する物理マシンに、該仮想マシンの追加を要求する処理と
    を備え、
    前記物理マシンは、
    前記仮想マシン管理装置の前記追加要求に従い仮想マシンを追加する処理を備える
    ことを特徴とする、請求項1乃至2に記載の仮想マシン管理システム。
  4. 前記仮想マシン管理装置が、前記追加する仮想マシンに割り当てるリソース量は、前記仮想リソース記憶手段に記憶された、前記第2の物理リソースの値以下である
    ことを特徴とする請求項1乃至3記載の仮想マシン管理システム。
  5. 前記物理マシンは、
    前記リソース記憶手段に、追加した仮想マシンに割り当てられた物理リソースの値を記憶する処理と、
    該物理マシンが保有する物理リソースの値から前記第1の物理リソースの値を差し引いた値を、新たに前記第3の物理リソースの値として記憶する処理と
    を備え、
    前記仮想マシン管理装置は、
    追加した仮想マシンのユーザ対応に設けられた前記仮想リソース記憶手段に、該仮想マシンに割り当てられた物理リソースの値を記憶する処理と、
    該ユーザ毎にグループ化した各前記仮想マシンが動作する複数の前記物理マシンの前記リソース記憶手段に記憶された、前記第3の物理リソースの値のうちの最小の値を、新たに前記第2の物理リソースの値として記憶する処理と
    を備える
    ことを特徴とする請求項1乃至3記載の仮想マシン管理システム。
  6. ユーザ対応に生成された仮想マシンが動作する少なくとも1つの物理マシンで、前記物理マシンに設けられたリソース記憶手段に記憶された、仮想マシンに割り当て可能な第1の物理リソースの値のうちの最小の値を選択する第1の選択ステップと、
    前記第1の選択ステップで選択した値を、前記ユーザ毎にグループ化した前記仮想マシンが動作する仮想の仮想化手段対応で設けられた仮想リソース記憶手段に第2の物理リソースの値として記憶する第1の記憶ステップと
    を含むことを特徴とする仮想マシン管理方法。
  7. 前記各物理マシンの前記第1の物理リソースの値が、追加する仮想マシンに割り当てる物理リソースの値以上である全ての物理マシンを選択する第2の選択ステップと、
    前記第2の選択ステップで選択した各物理マシンに、前記追加する仮想マシンを追加した場合の各々で、全てのユーザの前記仮想リソース記憶手段の前記第2の物理リソースの値の合計を算出する算出ステップと、
    前記算出ステップで算出した合計が最も大きい場合を選択する第3の選択ステップと
    を含むことを特徴とする請求項6記載の仮想マシン管理方法。
  8. 前記追加する仮想マシンに割り当てる物理リソースの値を前記リソース記憶手段に記憶する第2の記憶ステップと、
    該物理マシンが保有する物理リソースの値から該物理マシン上で動作している仮想マシンに割り当てられている物理リソースの合計の値を差し引いた値を、新たに前記第1の物理リソースの値として記憶する第3の記憶ステップと、
    前記追加する仮想マシンのユーザ対応に設けられた前記仮想リソース記憶手段に、該仮想マシンに割り当てられた物理リソースの値を記憶する第4の記憶ステップと、
    該ユーザ毎にグループ化した各前記仮想マシンが動作する複数の前記物理マシンのリソース記憶手段に記憶された、前記第1の物理リソースの値のうちの最小の値を、新たに前記第2の物理リソースの値として前記仮想リソース記憶手段に記憶する第5の記憶ステップと
    を含むことを特徴とする請求項6乃至7記載の仮想マシン管理方法。
JP2013232210A 2013-11-08 2013-11-08 仮想マシン管理システムおよび仮想マシン管理方法 Pending JP2015094975A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013232210A JP2015094975A (ja) 2013-11-08 2013-11-08 仮想マシン管理システムおよび仮想マシン管理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013232210A JP2015094975A (ja) 2013-11-08 2013-11-08 仮想マシン管理システムおよび仮想マシン管理方法

Publications (1)

Publication Number Publication Date
JP2015094975A true JP2015094975A (ja) 2015-05-18

Family

ID=53197362

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013232210A Pending JP2015094975A (ja) 2013-11-08 2013-11-08 仮想マシン管理システムおよび仮想マシン管理方法

Country Status (1)

Country Link
JP (1) JP2015094975A (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010282420A (ja) * 2009-06-04 2010-12-16 Hitachi Ltd 管理計算機、リソース管理方法、リソース管理プログラム、記録媒体および情報処理システム
JP2011198332A (ja) * 2010-03-24 2011-10-06 Fujitsu Ltd 仮想マシン管理プログラム及び仮想マシン管理装置
JP2013518330A (ja) * 2010-01-26 2013-05-20 インターナショナル・ビジネス・マシーンズ・コーポレーション 非機能要件に基づく仮想マシンの配置の抽象化方法およびシステム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010282420A (ja) * 2009-06-04 2010-12-16 Hitachi Ltd 管理計算機、リソース管理方法、リソース管理プログラム、記録媒体および情報処理システム
JP2013518330A (ja) * 2010-01-26 2013-05-20 インターナショナル・ビジネス・マシーンズ・コーポレーション 非機能要件に基づく仮想マシンの配置の抽象化方法およびシステム
JP2011198332A (ja) * 2010-03-24 2011-10-06 Fujitsu Ltd 仮想マシン管理プログラム及び仮想マシン管理装置

Similar Documents

Publication Publication Date Title
JP7127010B2 (ja) リソースの割り当て方法、装置、電子設備、コンピュータ可読媒体およびコンピュータプログラム
JP6542909B2 (ja) ファイル操作方法及び装置
US10235047B2 (en) Memory management method, apparatus, and system
JP5459935B2 (ja) マルチクラスタ・アプリケーション特有の経路指定を行うための方法、システム及びプログラム
CN109408590B (zh) 分布式数据库的扩容方法、装置、设备及存储介质
US20130060834A1 (en) Distributed messaging system connectivity and resource management
JP5121936B2 (ja) リソース割り当て装置及びリソース割り当てプログラム及び記録媒体及びリソース割り当て方法
JP6293683B2 (ja) 計算機システム及び計算機システムの性能障害の対処方法
Lee et al. Hybrid job-driven scheduling for virtual MapReduce clusters
Li et al. An effective scheduling strategy based on hypergraph partition in geographically distributed datacenters
WO2017000645A1 (zh) 一种分配宿主机资源的方法和装置
CN105302536A (zh) MapReduce应用的相关参数的配置方法和装置
JP6116102B2 (ja) クラスタシステム、および、負荷分散方法
Horváth et al. Mean field analysis of join-below-threshold load balancing for resource sharing servers
CN104699538A (zh) 用于多处理系统中的工作负载请求分派的方法和系统
JP2015022385A (ja) 仮想システムおよび仮想システム制御方法
US9311146B2 (en) Strategic placement of jobs for spatial elasticity in a high-performance computing environment
JP5988505B2 (ja) 仮想リソース管理装置、選択方法及び選択プログラム
JP2014167713A (ja) 情報処理装置、情報処理システム、情報処理装置管理プログラム及び情報処理装置管理方法
JP2015094975A (ja) 仮想マシン管理システムおよび仮想マシン管理方法
JP6374059B2 (ja) コンピュータ資源配分決定方法、コンピュータ資源配分決定方法プログラムおよび制御用コンピュータ
WO2017133421A1 (zh) 一种多租户资源共享的方法及装置
WO2017054499A1 (zh) 加速资源的处理、管理方法及装置
JP2014206805A (ja) 制御装置
Kaur et al. A load balancing algorithm based on processing capacities of VMs in cloud computing

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20161014

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170829

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170831

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20180306