説明

仮想マシンのデプロイ高速化システム、その方法及びそのプログラム

【課題】テンプレート1つから複数のVMをデプロイする際に、高速なデプロイ処理を可能にする。
【解決手段】仮想マシン132を有するサーバ100と、仮想マシン132の実体を仮想ディスク302として格納するストレージ300〜360と、サーバ100及びストレージ300〜360を制御する管理サーバ200と、を備え、ストレージ300は、仮想ディスクに使用するOS(Operating System)及びアプリケーションを集約したテンプレート301を有し、テンプレート301の複製を複数個作成し、該複製されたテンプレートを他のストレージに分散させ、他のストレージは、複製されたテンプレートに、IPアドレス及びコンピュータの名称を含む前記仮想マシンの個別情報をインストールするVM(Virtual Machine)デプロイを行い、管理サーバ200は、VMデプロイの全ての回数とテンプレートの全ての複製回数とが最小になるように各ストレージを制御する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、同一テンプレートからの複数のVM(1台のサーバ装置上で稼動するソフトウェアで、その管理下で動作する「仮想化されたマシン」)を作成しようとする場合、そのデプロイ処理にかかる時間を短縮することができる仮想マシンのデプロイ高速化システム、その方法及びそのプログラムに関する。
【背景技術】
【0002】
近年仮想化技術の発達により、オフィスのシンクライアント化や評価環境をVM上で行う事例も多い。
【0003】
シンクライアント環境及び評価環境等を、VMを用いて構築する場合を想定する。まず初めにVMを1台作成し、物理マシンと同様の手順でOSをインストール後、必要なアプリケーションのインストール、各種設定などを行う。
【0004】
このVMをテンプレートとすることによりVMのデプロイを開始する場合もある。この場合、まず作成したVMのテンプレート化を行う。ここでテンプレートとは、VMに使用するOS(Operating System)及びアプリケーションを集約したものである。
【0005】
このテンプレートを複製したものにSysprepを用いてIPアドレス及びコンピュータの名称を含む仮想マシンの個別情報をインストールするVMデプロイを行い、仮想マシンの個性反映を行って、デプロイを完了させる。すなわち、デプロイとは、1つのVMからSysprep(マスタコンピュータシステムのディスク複製を可能にするツール)等を用いて、新たなVMを作り上げる処理のことである。
【0006】
仮想化で気になるのは導入による工数と初期コストである。上述のデプロイに必要な時間は、構築する環境の規模(=VM数)によって決まる。言い替えればVM数とデプロイ処理にかかる総時間は単純比例の関係にある。特に工数においては、大規模な職場のシンクライアント化を考えた場合、膨大な時間がかかることは想像に難しくない。従来のパラレルによるテンプレートからのデプロイ方法は、小規模な環境には対応できても大規模な環境には不向きであった。
【0007】
このデプロイ時間を短縮する解決策として、シーケンシャルに行っていたデプロイ処理をパラレルに実行するという手法がある。パラレル処理化による効果として、処理と処理との間の空き時間の短縮、及びディスクの帯域を限界まで使用することによる速度の向上が考えられるからである。
【0008】
例えばシーケンシャルに実行していた処理をT、多重度をnとした場合、ディスクIO(read)の性能の限界を考慮しなかった場合は、理論上処理時間はT/nとなる。
【0009】
このような原理に基づいて、VMに特化せずOSのデプロイを高速化する手法がいくつか考えられている。
【特許文献1】特開2005−292922号公報
【特許文献2】特開2002−007255号公報
【特許文献3】特開2007−272848号公報
【発明の開示】
【発明が解決しようとする課題】
【0010】
しかしながら、実際に同一のテンプレートからデプロイ処理をパラレルに行ったとしても、十分な速度改善は得られない。これは、第一にディスクIOが限界に達するためであり、第二にストレージ間のネットワーク帯域に限界が来るからである。
【0011】
また、特許文献1では、手法そのものとしてミラーリングされたストレージに対しデプロイを行った後、ミラーリングを解除することによる高速化を行っているが、管理サーバに高速なネットワーク装置が必要であって、しかもテンプレート−ターゲット間はネットワークで接続されているため、テンプレート−ターゲット間のネットワークの帯域を考慮する必要があるという問題点がある。
【0012】
更に、上記の特許文献1、特許文献2、特許文献3のいずれも、パラレルにデプロイ処理を行う際の複製作成のためのIO回数が最小となるような措置が全く講じられていないという問題点がある。
【0013】
本発明は上記に鑑みてなされたもので、VMを管理するサーバ(VMM)に複数のストレージデバイスが接続されている環境において、VMのデプロイ時に使う、元となるVMのテンプレート1つから複数のVMをデプロイする際に、高速なデプロイ処理を可能にする仮想マシンのデプロイ高速化システム、その方法及びそのプログラムを得ることを目的とする。
【課題を解決するための手段】
【0014】
上述の課題を解決するため、本発明に係る仮想マシンのデプロイ高速化システムは、仮想マシンを有するサーバと、前記仮想マシンの実体を仮想ディスクとして格納する複数のストレージと、前記サーバ及び前記ストレージを制御する管理サーバと、を備え、前記複数のストレージに前記仮想ディスクを設定するデプロイを行う場合の仮想マシンのデプロイ高速化システムであって、前記ストレージのうち第1のストレージは、前記仮想ディスクに使用するOS(Operating System)及びアプリケーションを集約したテンプレートを有し、前記テンプレートの複製を複数個作成し、該複製されたテンプレートを他の複数のストレージに分散させ、前記ストレージは、該複製されたテンプレートに、IPアドレス及びコンピュータの名称を含む前記仮想マシンの個別情報をインストールするVM(Virtual Machine)デプロイを行うことで前記仮想ディスクを設定するデプロイを行い、前記管理サーバは、前記VMデプロイの全ての回数と前記テンプレートの全ての複製回数とが最小になるように前記ストレージを制御することを特徴とする。
【0015】
上述の課題を解決するため、本発明に係る仮想マシンのデプロイ高速化の方法は、仮想マシンを有するサーバと、前記仮想マシンの実体を仮想ディスクとして格納する複数のストレージと、前記サーバ及び前記ストレージを制御する管理サーバと、を備えるシステムにおいて、前記複数のストレージに前記仮想ディスクを設定するデプロイを行う場合の仮想マシンのデプロイ高速化の方法であって、前記ストレージのうち第1のストレージが有する、前記仮想ディスクに使用するOS(Operating System)及びアプリケーションを集約したテンプレートについて、前記テンプレートの複製を複数個作成するテンプレート複製手順と、該複製されたテンプレートを他の複数のストレージに分散させるテンプレート分散手順と、該複製されたテンプレートに、IPアドレス及びコンピュータの名称を含む前記仮想マシンの個別情報をインストールするVM(Virtual Machine)デプロイを行って前記仮想ディスクを設定するVMデプロイ手順と、を有し、前記テンプレート複製手順及び前記VMデプロイ手順は、前記VMデプロイの全ての回数と前記テンプレートの全ての複製回数とが最小になるようにすることを特徴とする。
【0016】
上述の課題を解決するため、本発明に係る仮想マシンのデプロイ高速化プログラムは、仮想マシンを有するサーバと、前記仮想マシンの実体を仮想ディスクとして格納する複数のストレージと、前記サーバ及び前記ストレージを制御する管理サーバと、を備えるシステムにおいて、前記複数のストレージに前記仮想ディスクを設定するデプロイを行う場合の仮想マシンのデプロイ高速化プログラムであって、前記ストレージのうち第1のストレージが有する、前記仮想ディスクに使用するOS(Operating System)及びアプリケーションを集約したテンプレートについて、前記テンプレートの複製を複数個作成するテンプレート複製処理と、該複製されたテンプレートを他の複数のストレージに分散させるテンプレート分散処理と、該複製されたテンプレートに、IPアドレス及びコンピュータの名称を含む前記仮想マシンの個別情報をインストールするVM(Virtual Machine)デプロイを行って前記仮想ディスクを設定するVMデプロイ処理と、をコンピュータに実行させ、前記テンプレート複製処理及び前記VMデプロイ処理は、前記VMデプロイの全ての回数と前記テンプレートの全ての複製回数とが最小になるようにすることを特徴とする。
【発明の効果】
【0017】
VMを管理するサーバ(VMM)に複数のストレージデバイスが接続されている環境において、複数のストレージのうち第1のストレージに、仮想ディスクに使用するOS(Operating System)及びアプリケーションを集約したテンプレートを有し、このテンプレートの複製を第1のストレージ内で複数個作成し、該複製されたテンプレートを他の複数のストレージに分散させ、該複製されたテンプレートにIPアドレス及びコンピュータの名称を含む仮想マシンの個別情報をインストールするVM(Virtual Machine)デプロイを行うことで高速なデプロイ処理を可能にする仮想マシンのデプロイ高速化システム、その方法及びそのプログラムを得ることができる。
【発明を実施するための最良の形態】
【0018】
[第1の実施の形態]
次に、本発明の第1の実施の形態の構成について図面を参照して詳細に説明する。ここで、図1は、本発明の第1の実施の形態に係るシステムの構成を示す図である。
【0019】
図1において、本発明の第1の実施の形態は、サーバ100、管理サーバ200、ストレージ300、ストレージ310、ストレージ320、ストレージ330、ストレージ340、ストレージ350、ストレージ360、LANスイッチ400、及びFC(Fibre Channel)スイッチ500から構成されている。
【0020】
サーバ100は、プログラム制御により動作するコンピュータであり、LANモジュール110、SAN(Storage Area Network)501に接続するためのHBA(Host Bus Adapter)120を持ち、VMM130が動作している。
【0021】
VMM130内には、ストレージ情報収集部131が動作している。VM132はVMM130上で動作している論理マシンであり、物理マシンをエミュレーションしたものとなっている。つまり、OSが動作し、その上でアプリケーションが動作するという環境が構成されている。
【0022】
VMM130は、VMを動かすために必要なソフト(ハイパーバイザー)であり、サーバ100が持っているCPUやメモリといったハードウェア資源を各VMへ割り当てる機能を有する。又、ストレージ情報収集部131は、サーバ100の命令を受けてHBA120に接続されているストレージ情報を収集する。
【0023】
管理サーバ200は、プログラム制御により動作するコンピュータであり、LANモジュール250を持ち、OS210が動作している。OS210上にはストレージ情報取得部220、テンプレート制御部230、及びVMデプロイ処理部240が動作している。
【0024】
ストレージ情報取得部220は、LANモジュール250を介し、サーバ100にストレージ情報を送るように命令する。命令を受けたサーバ100は、ストレージ情報収集部131に命令を送り、収集したストレージ情報を、LANモジュール110を介し管理サーバ200に送信する。
【0025】
テンプレート制御部230は、管理サーバ200からVMデプロイの命令が来た場合、管理サーバ200から作成するVM数が渡され、同時にストレージ情報取得部220からストレージ情報が渡される。この情報から最適なテンプレート数を計算し、VMデプロイ処理部240へ情報を送信する。
【0026】
VMデプロイ処理部240は、LANモジュール250を介し、VMデプロイ命令をサーバ100へ送信する。
【0027】
ストレージ300は、コントローラ、FC及びLANモジュールを持ち、サーバ100、管理サーバ200、及びストレージ310〜360と同じネットワークに所属している。
【0028】
ストレージ300の中には、VMデプロイに使うテンプレート301及びサーバ100の実体である仮想ディスク302が入っている。コントローラ303の中には、テンプレート複製部304及び仮想ディスクデプロイ部305がある。
【0029】
ストレージ310〜360は、コピーされたテンプレート及びデプロイされた仮想ディスクを格納するために使うストレージであり、テンプレート301及び仮想ディスク302が入っていない点を除いてストレージ300と同様の構成である。
【0030】
次に、図1及び図2〜図4を用いて本発明の第1の実施の形態の動作について説明する。
【0031】
まず、図2を用いて、全体の流れについて説明する。ここで、図2は、本発明の第1の実施の形態に係る仮想マシンデプロイ高速化の方法の全体のフローチャートである。
【0032】
まず、管理サーバ200がVMデプロイ命令を出すことにより図2のフローチャートは開始される。このときにストレージ情報取得部220は、LANスイッチ400を介し、管理サーバ200にストレージ情報を送るように指示する。
【0033】
管理サーバ200は、ストレージ情報収集部131に、利用可能なストレージ数を収集するように命令し、ストレージ情報収集部131はストレージ情報を集めた後、その情報を管理サーバ200に送信する(ステップS201)。
【0034】
管理サーバ200は、デプロイするVM数及びストレージ情報取得部220から受信したストレージ情報を、テンプレート制御部230へ送る(ステップS202)。
【0035】
テンプレート制御部230は、受信したストレージ情報を元にサーバ100がVMデプロイ可能な環境であるかの判断を行う(ステップS203)。まず、ストレージの空き容量を確認し、ストレージの空き容量がVMデプロイに必要な容量を満たしていない場合(NO)、処理を終了させる。
【0036】
一方、ストレージの空き容量がVMデプロイに必要な容量を満たしている場合(YES)、手順はステップS204へ移行する。
【0037】
次に、デプロイ数、デプロイ容量が高速化を行う条件を満たしているか否かの判断を行う(ステップS204)。条件を満たしていない場合(NO)、通常デプロイを行って(ステップS208)、処理は終了する。
【0038】
一方、デプロイ容量が高速化を行う条件を満たしている場合(YES)、手順はステップS205へ移行する。
【0039】
テンプレート制御部230はデプロイに最適なテンプレート数を計算し(ステップS205)、必要な情報をVMデプロイ処理部240へ送信する。
【0040】
VMデプロイ処理部240はテンプレートの複製処理(ステップS206)及びVMデプロイを行って(ステップS207)、処理は終了する。
【0041】
次に、図3及び図4を用いてテンプレートの複製処理及びVMデプロイの詳細説明を行う。ここで、図3はVMデプロイの処理を示すフローチャートであり、図4は各ストレージでのテンプレートのコピーの状況を示す模式図である。
【0042】
以下に説明する例では、仮想マシン作成台数を100、ストレージ台数を6とし、図4に示すストレージ601、602、603、604、605、606の6台とも十分な空き容量があるとする。
【0043】
まず、最適テンプレート数の計算を行う(ステップS301)。ここでは最適なテンプレート数は6となる(詳細は後述)。
【0044】
最適なテンプレート数の算出後、テンプレートの複製を行う。まず、ステップS302において、「最適テンプレート数が現在のテンプレート数*2」であるか否かが判断され、「最適テンプレート数が現在のテンプレート数*2」を満たしている限り(YES)、テンプレートの複製を行う(ステップS303)。この例では、テンプレート数が1から始まり、1→2(図4のS611)→4(図4のS612)と増加していく。
【0045】
テンプレート数が4になった時点で上記「最適テンプレート数が現在のテンプレート数*2」を満たさなくなるため(NO)、手順はステップS304へ移行する。
【0046】
ステップS304では、「現在のテンプレート数*2−最適テンプレート数」の数だけVMを作成する処理と、「最適テンプレート数−現在のテンプレート数」の数だけテンプレートをコピーする処理との、これら2つの処理を同時に行う(図4のS613)。
【0047】
まず、「現在のテンプレート数*2−最適テンプレート数」の数だけVMを作成する処理では、現在のテンプレート数が4であり、最適テンプレート数が6であることから、4*2−6=2により、2台のVMを作成する。又、「最適テンプレート数−現在のテンプレート数」の数だけテンプレートをコピーする処理では、6−4=2により、2個のテンプレートを作成する。
【0048】
このステップS304の処理が行われた時点で、合計で6個のテンプレートと2台のVMが存在することになり、デプロイが必要なVM数は残り98となる。
【0049】
続くステップS305では、6個のテンプレートに対するVMデプロイをパラレルに実行することにより、1回の処理で6台のVMを作成することが可能である。
【0050】
次にステップS306では、残り98台のVMができたか否かを判定し、全てのVMが作成されていない場合(NO)、ステップS305を繰り返す。
【0051】
一方で、ステップS306で、全てのVMが作成されたと判定された場合(YES)、一連の処理は終了する。なお、この例ではステップS305を17回の施行することによりVMデプロイが完了する。
【0052】
次に、図3のステップS301において、高速デプロイを行う際の最適テンプレート数の算出方法の詳細方法について説明する。この場合、N及びZを自然数として、初期値には以下を与える。ここで、作成するVM数は、作成する仮想ディスクの数に相当する。
【0053】
作成するVM数: V(V∈N)
ストレージ数: S(S∈N)
最適テンプレート数: T(S≧T,T∈Z)
テンプレートコピー回数:n(n∈Z)
VMデプロイ数: m(m∈N)
とおくと、n,mは以下の式を満たす必要がある。
【0054】
【数1】

最適テンプレート数を求めるには、n+mが最小となる値を求めればよい。つまり、以下の式を満たし、かつn+mが最小となるTを求めることにより算出される。
【0055】
【数2】

【0056】
次に、図5を用いてストレージ内部の動きに関しての詳細な説明を行う。ここで、図5は、ストレージ内部の処理と管理サーバとの関係を示す模式図である。
【0057】
管理サーバ700と、最初のテンプレートが格納されているストレージ710と、テンプレートが格納されていないストレージ720と、があるとする。
【0058】
この場合において、まず管理サーバ700からテンプレート複製命令が、テンプレート制御部703へ送られる。この時にストレージ情報取得部702から、接続されているストレージの数、空き容量といった情報もテンプレート制御部703へ送られる。
【0059】
テンプレート制御部703は、受信したストレージ情報から、テンプレートが格納されているストレージ710を探し、コントローラ711へテンプレートの複製を行う命令を送る。この時にテンプレート複製先720の情報も送信される。
【0060】
テンプレート複製命令を受けたコントローラ711は、テンプレート複製部712及びコントローラ721へ、ストレージ720への複製命令を送り、その結果、テンプレート722が作成される。
【0061】
次に、仮想ディスクのデプロイについての説明を行う。まず管理サーバ700からVMデプロイ命令がVMデプロイ処理部701へ送られる。この時にストレージ情報取得部702から、接続されているストレージの数、テンプレート数といった情報もVMデプロイ処理部701へ送られる。
【0062】
VMデプロイ処理部701は受信したストレージ情報から、テンプレートが格納されているストレージの各コントローラへVMデプロイ命令を送信する。ここではストレージ710を例に説明を行う。コントローラ711は仮想ディスクデプロイ部714へVMデプロイ命令を送信する。
【0063】
命令を受けた仮想ディスクデプロイ部714は、テンプレート713から仮想ディスク715をVMデプロイする。なお、VMデプロイに要する各仮想マシンのIPアドレス及びコンピュータの名称を含む個別情報は、管理サーバが保持しており、コントローラ711は、VMデプロイ処理部701からこれらの個別情報を取得する。
【0064】
以上のように、本実施の形態によれば、デプロイ処理を始める前にテンプレートの複製を行い、パラレル処理によるディスクIOの限界を考慮する必要がないことから、大量のVMをデプロイする際に高速に処理を行うことができる。
【0065】
又、ストレージ内でVMデプロイを行うので、VMデプロイを行う管理サーバに高速なネットワーク装置が必要なく、またサーバ間の高速なネットワーク帯域を浪費せずにVMデプロイを行える。
[第2の実施の形態]
本発明の第1の実施の形態では、仮想マシンのデプロイの高速化について説明を行ったが、本発明の第2の実施の形態では仮想マシンに限定せず、テンプレートからOSイメージをデプロイするシステムに適用する。
【0066】
なお、本発明は、ハードウェア、ソフトウェア又はこれらの組合せにより実現することができる。
【産業上の利用可能性】
【0067】
本発明は、大規模なVMを用いた仮想環境を構築する際に、構築時間を大幅に短縮するといった用途に適用できる。また、仮想環境に限定せず、テンプレートを用いたOSイメージを配信させるシステムにも利用できる。
【図面の簡単な説明】
【0068】
【図1】本発明の第1の実施の形態に係るシステムの構成を示す図である。
【図2】本発明の第1の実施の形態に係る仮想マシンデプロイ高速化の方法の全体のフローチャートである。
【図3】VMデプロイの処理を示すフローチャートである。
【図4】各ストレージでのテンプレートのコピーの状況を示す模式図である。
【図5】ストレージ内部の処理と管理サーバとの関係を示す模式図である。
【符号の説明】
【0069】
100 サーバ
110 LANモジュール
120 HBA(Host Bus Adapter)
130 VMM
131 ストレージ情報収集部
132 VM
200 管理サーバ
210 OS
220 ストレージ情報取得部
230 テンプレート制御部
240 VMデプロイ処理部
250 LANモジュール
300 ストレージ
301 テンプレート
302 仮想ディスク
303 コントローラ
304 テンプレート複製部
305 仮想ディスクデプロイ部
310、320、330、340、350、360 ストレージ
400 LANスイッチ
500 FC(Fibre Channel)スイッチ
501 SAN(Storage Area Network)
601、602、603、604、605、606 ストレージ
700 管理サーバ
701 VMデプロイ処理部
702 ストレージ情報取得部
703 テンプレート制御部
710 ストレージ
711 コントローラ
712 テンプレート複製部
713 テンプレート
714 仮想ディスクデプロイ部
715 仮想ディスク
720 ストレージ
721 コントローラ
722 テンプレート

【特許請求の範囲】
【請求項1】
仮想マシンを有するサーバと、前記仮想マシンの実体を仮想ディスクとして格納する複数のストレージと、前記サーバ及び前記ストレージを制御する管理サーバと、を備え、前記複数のストレージに前記仮想ディスクを設定するデプロイを行う場合の仮想マシンのデプロイ高速化システムであって、
前記ストレージのうち第1のストレージは、前記仮想ディスクに使用するOS(Operating System)及びアプリケーションを集約したテンプレートを有し、前記テンプレートの複製を複数個作成し、該複製されたテンプレートを他の複数のストレージに分散させ、
前記ストレージは、該複製されたテンプレートに、IPアドレス及びコンピュータの名称を含む前記仮想マシンの個別情報をインストールするVM(Virtual Machine)デプロイを行うことで前記仮想ディスクを設定するデプロイを行い、
前記管理サーバは、前記VMデプロイの全ての回数と前記テンプレートの全ての複製回数とが最小になるように前記ストレージを制御することを特徴とする仮想マシンのデプロイ高速化システム。
【請求項2】
前記管理サーバは、前記ストレージの数であるS、前記仮想ディスクを作成する数であるV、前記テンプレートの複製の回数であるn及び前記VMデプロイの回数であるmから、前記テンプレートの複製の回数であるnと前記VMデプロイの回数であるmとの和が最小になる条件下で最適テンプレート数であるTを算出し、
該最適テンプレート数であるTと、現在のテンプレート数とから、前記ストレージが一処理において実行するテンプレートの複製の回数及びVMデプロイの回数を決定することを特徴とする請求項1に記載の仮想マシンのデプロイ高速化システム。
【請求項3】
前記最適テンプレート数であるT、前記テンプレートの複製の回数であるn及び前記VMデプロイの回数であるmは、以下の2式を満たすことを特徴とする請求項1又は2に記載の仮想マシンのデプロイ高速化システム。
【数1】

【数2】

【請求項4】
前記ストレージは、前記現在のテンプレート数を2倍にした値が、前記最適テンプレート数未満である場合にテンプレートの複製を行うことを特徴とする請求項2又は3に記載の仮想マシンのデプロイ高速化システム。
【請求項5】
前記一処理において実行されるテンプレートの複製の回数は、前記最適テンプレート数と前記現在のテンプレート数との差であり、前記一処理において実行されるVMデプロイの回数は、前記現在のテンプレート数を2倍した値と前記最適テンプレート数との差であることを特徴とする請求項2乃至4のいずれか1項に記載の仮想マシンのデプロイ高速化システム。
【請求項6】
前記ストレージは、前記一処理において、前記テンプレートの複製と、前記VMデプロイと、を同時に行うことを特徴とする請求項2乃至5のいずれか1項に記載の仮想マシンのデプロイ高速化システム。
【請求項7】
前記サーバは、
前記仮想マシンと、前記ストレージ空き容量を含むストレージ情報を収集するストレージ情報収集部と、を格納し、前記サーバが有するCPU及びメモリを含むハードウェア資源を、前記仮想マシンに割り当てるVMM(Virtual Machine Monitor)と、
前記管理サーバ及び前記ストレージと通信を行うためのLANモジュールと、
前記ストレージとFC(Fibre Channel)で接続するためのHBA(Host Bus Adapter)と、
を備えることを特徴とする請求項1乃至6のいずれか1項に記載の仮想マシンのデプロイ高速化システム。
【請求項8】
前記管理サーバは、
前記管理サーバ及び前記ストレージと通信を行うためのLANモジュールと、OSと、を備え、
該OSは、
前記ストレージ情報を前記サーバから取得するストレージ情報取得部と、
前記ストレージ情報を基に、前記最適テンプレート数であるT、前記テンプレートの複製の回数であるn及び前記VMデプロイの回数であるmを算出するテンプレート制御部と、
前記最適テンプレート数であるT、前記テンプレートの複製の回数であるn及び前記VMデプロイの回数であるmに従って、前記ストレージにテンプレートを複製させ、かつ管理サーバが格納している前記仮想マシンの個別情報を、前記ストレージが該複製したテンプレートにインストールするようにするVMデプロイ処理部と、
を有することを特徴とする請求項1乃至7のいずれか1項に記載の仮想マシンのデプロイ高速化システム。
【請求項9】
仮想マシンを有するサーバと、前記仮想マシンの実体を仮想ディスクとして格納する複数のストレージと、前記サーバ及び前記ストレージを制御する管理サーバと、を備えるシステムにおいて、前記複数のストレージに前記仮想ディスクを設定するデプロイを行う場合の仮想マシンのデプロイ高速化の方法であって、
前記ストレージのうち第1のストレージが有する、前記仮想ディスクに使用するOS(Operating System)及びアプリケーションを集約したテンプレートについて、前記テンプレートの複製を複数個作成するテンプレート複製手順と、
該複製されたテンプレートを他の複数のストレージに分散させるテンプレート分散手順と、
該複製されたテンプレートに、IPアドレス及びコンピュータの名称を含む前記仮想マシンの個別情報をインストールするVM(Virtual Machine)デプロイを行って前記仮想ディスクを設定するVMデプロイ手順と、
を有し、
前記テンプレート複製手順及び前記VMデプロイ手順は、前記VMデプロイの全ての回数と前記テンプレートの全ての複製回数とが最小になるようにすることを特徴とする仮想マシンのデプロイ高速化の方法。
【請求項10】
前記テンプレート複製手順及び前記VMデプロイ手順は、
前記ストレージの数であるS、前記仮想ディスクを作成する数であるV、前記テンプレートの複製の回数であるn及び前記VMデプロイの回数であるmから、前記テンプレートの複製の回数であるnと前記VMデプロイの回数であるmとの和が最小になる条件下で最適テンプレート数であるTを算出し、
該最適テンプレート数であるTと、現在のテンプレート数とから、一処理において実行されるテンプレートの複製の回数及びVMデプロイの回数を決定することを特徴とする請求項9に記載の仮想マシンのデプロイ高速化の方法。
【請求項11】
前記最適テンプレート数であるT、前記テンプレートの複製の回数であるn及び前記VMデプロイの回数であるmは、以下の2式を満たすことを特徴とする請求項9又は10に記載の仮想マシンのデプロイ高速化の方法。
【数1】

【数2】

【請求項12】
前記テンプレート複製手順は、前記現在のテンプレート数を2倍にした値が、前記最適テンプレート数未満である場合にテンプレートの複製を行うことを特徴とする請求項10又は11に記載の仮想マシンのデプロイ高速化の方法。
【請求項13】
前記一処理において実行されるテンプレートの複製の回数は、前記最適テンプレート数と前記現在のテンプレート数との差であり、前記一処理において実行されるVMデプロイの回数は、前記現在のテンプレート数を2倍した値と前記最適テンプレート数との差であることを特徴とする請求項10乃至12のいずれか1項に記載の仮想マシンのデプロイ高速化の方法。
【請求項14】
前記テンプレート複製手順と、前記VMデプロイ手順とは、同時に行なわれることを特徴とする請求項10乃至13のいずれか1項に記載の仮想マシンのデプロイ高速化の方法。
【請求項15】
仮想マシンを有するサーバと、前記仮想マシンの実体を仮想ディスクとして格納する複数のストレージと、前記サーバ及び前記ストレージを制御する管理サーバと、を備えるシステムにおいて、前記複数のストレージに前記仮想ディスクを設定するデプロイを行う場合の仮想マシンのデプロイ高速化プログラムであって、
前記ストレージのうち第1のストレージが有する、前記仮想ディスクに使用するOS(Operating System)及びアプリケーションを集約したテンプレートについて、前記テンプレートの複製を複数個作成するテンプレート複製処理と、
該複製されたテンプレートを他の複数のストレージに分散させるテンプレート分散処理と、
該複製されたテンプレートに、IPアドレス及びコンピュータの名称を含む前記仮想マシンの個別情報をインストールするVM(Virtual Machine)デプロイを行って前記仮想ディスクを設定するVMデプロイ処理と、
をコンピュータに実行させ、
前記テンプレート複製処理及び前記VMデプロイ処理は、前記VMデプロイの全ての回数と前記テンプレートの全ての複製回数とが最小になるようにすることを特徴とする仮想マシンのデプロイ高速化プログラム。
【請求項16】
前記テンプレート複製処理及び前記VMデプロイ処理は、
前記ストレージの数であるS、前記仮想ディスクを作成する数であるV、前記テンプレートの複製の回数であるn及び前記VMデプロイの回数であるmから、前記テンプレートの複製の回数であるnと前記VMデプロイの回数であるmとの和が最小になる条件下で最適テンプレート数であるTを算出し、
該最適テンプレート数であるTと、現在のテンプレート数とから、一処理において実行されるテンプレートの複製の回数及びVMデプロイの回数を決定することを特徴とする請求項15に記載の仮想マシンのデプロイ高速化プログラム。
【請求項17】
前記最適テンプレート数であるT、前記テンプレートの複製の回数であるn及び前記VMデプロイの回数であるmは、以下の2式を満たすことを特徴とする請求項15又は16に記載の仮想マシンのデプロイ高速化プログラム。
【数1】

【数2】

【請求項18】
前記テンプレート複製処理は、前記現在のテンプレート数を2倍にした値が、前記最適テンプレート数未満である場合にテンプレートの複製を行うことを特徴とする請求項16又は17に記載の仮想マシンのデプロイ高速化プログラム。
【請求項19】
前記一処理において実行されるテンプレートの複製の回数は、前記最適テンプレート数と前記現在のテンプレート数との差であり、前記一処理において実行されるVMデプロイの回数は、前記現在のテンプレート数を2倍した値と前記最適テンプレート数との差であることを特徴とする請求項16乃至18のいずれか1項に記載の仮想マシンのデプロイ高速化プログラム。
【請求項20】
前記テンプレート複製手順と、前記VMデプロイ手順とは、同時に行なわれることを特徴とする請求項16乃至19のいずれか1項に記載の仮想マシンのデプロイ高速化プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate


【公開番号】特開2009−230655(P2009−230655A)
【公開日】平成21年10月8日(2009.10.8)
【国際特許分類】
【出願番号】特願2008−78003(P2008−78003)
【出願日】平成20年3月25日(2008.3.25)
【出願人】(000004237)日本電気株式会社 (19,353)
【Fターム(参考)】