説明

仮想化システム、および仮想化方法

【課題】ネットワークを介して同時刻に複数の仮想マシンを起動する場合の負荷を軽減する。
【解決手段】仮想化管理装置が、複数の仮想マシン毎に、起動時刻と終了時刻とを対応付けたシステム構成情報に基づいて、複数の仮想マシン毎に、仮想マシンに対応する仮想マシンイメージがストレージ装置から仮想化装置に送信される送信時刻が重複せずに対応付けられたスケジュール情報を生成し、仮想化装置が、スケジュール情報に含まれる、自身のハードウェアリソース上に起動させる仮想マシンに対応付けられた送信時刻に応じて、ストレージ装置に記憶されている仮想マシンイメージを取得し、スケジュール情報に含まれる起動時刻に、仮想マシンイメージに基づいて仮想マシンを起動する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、仮想マシンの起動要求に応じて、予め用意した仮想化装置に仮想マシンを起動させてユーザに利用させる技術に関する。
【背景技術】
【0002】
ネットワークを介して接続されたユーザ端末からの仮想マシンの起動要求に応じて、予め用意した仮想化装置に仮想マシンを起動させ、起動した仮想マシンをネットワーク越しにユーザ端末に利用させる仮想化システムが提供されている(例えば、特許文献1)。
図9は、このような仮想化システムの例を示す図である。ユーザ端末110は、ユーザからの入力に応じて、仮想化管理装置120に対して仮想マシンの起動要求を送信する。仮想化管理装置120は、ユーザ端末110から送信される起動要求に応じて、ストレージ装置130に記憶されている仮想マシンイメージを読み出し、仮想化装置140に送信する。仮想化装置140は、仮想化管理装置120から送信された仮想マシンイメージに基づいて仮想マシンを起動する。ユーザ端末110は、仮想化装置140において起動した仮想マシンに、ネットワークを介して接続し、仮想マシンを利用する。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】国際公開第2008/146677号
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、このような仮想システムでは、仮想化管理装置120が同時刻に多数のユーザ端末110から起動要求を受信したような場合、仮想化管理装置120はストレージ装置130から多数の仮想マシンイメージを同時に読み出して仮想化管理装置120に送信することになる。このため、ストレージ装置130からの仮想マシンイメージの読み出しにかかるディスクI/O(Input/Output)や、仮想化管理装置120と仮想化装置140との間の送信が一時に集中し、負荷が上がって処理が遅延したり、ネットワークが輻輳状態となったりすることが考えられる。そこで、このような負荷の上昇を軽減することが望ましい。
【0005】
本発明は、このような状況に鑑みてなされたもので、ネットワークを介して同時刻に複数の仮想マシンを起動する場合の負荷を軽減する仮想化システム、および仮想化方法を提供する。
【課題を解決するための手段】
【0006】
上述した課題を解決するために、本発明は、ネットワークを介して接続されたストレージ装置から送信される複数の仮想マシンイメージに基づいて、自身のハードウェアリソース上に複数の仮想マシンを起動させる仮想化装置と、仮想化装置に接続された仮想化管理装置とを備えた仮想化システムであって、仮想化管理装置は、複数の仮想マシン毎に、仮想マシンが仮想化装置において起動する起動時刻と、起動した仮想マシンを停止させる終了時刻とを対応付けたシステム構成情報が記憶されているシステム構成情報記憶部と、複数の仮想マシン毎に、仮想マシンに対応する仮想マシンイメージがストレージ装置から仮想化装置に送信される送信時刻が重複せずに対応付けられたスケジュール情報が記憶されるスケジュール記憶部と、システム構成情報記憶部から読み出したシステム構成情報に基づいて、スケジュール情報を生成してスケジュール記憶部に記憶させるスケジュール生成部と、を備え、仮想化装置は、仮想マシンイメージが記憶される仮想マシンイメージ記憶部と、仮想化管理装置のスケジュール記憶部に記憶されているスケジュール情報を読み出し、スケジュール情報に含まれる、自身のハードウェアリソース上に起動させる仮想マシンに対応付けられた送信時刻に応じて、ストレージ装置に記憶されている仮想マシンイメージを取得し、仮想マシンイメージ記憶部に記憶させる仮想マシンイメージ受信部と、スケジュール記憶部に記憶されているスケジュール情報に含まれる起動時刻に、仮想マシンイメージ記憶部に記憶されている仮想マシンイメージを読み出して仮想マシンを起動する仮想マシン起動部と、を備えることを特徴とする。
【0007】
また、本発明は、仮想化装置は、複数のストレージ装置に接続され、スケジュール記憶部から読み出したスケジュール情報に基づいて、同一の送信時刻が対応付けられた仮想マシンに対応する仮想マシンイメージを、異なるストレージ装置に記憶させておく仮想マシンイメージ格納部を備えることを特徴とする。
【0008】
また、本発明は、仮想化管理装置のスケジュール記憶部に記憶されるスケジュール情報には、複数の仮想マシン毎に、仮想マシンが停止した際に、停止した仮想マシンの仮想マシンイメージをストレージ装置が仮想化装置から受信する受信時刻が重複せずに対応付けられた情報が含まれ、仮想化装置の仮想マシン起動部は、スケジュール情報に含まれる終了時刻に応じて仮想マシンを停止させ、停止させた仮想マシンの仮想マシンイメージを仮想マシンイメージ記憶部に記憶させ、仮想化管理装置は、仮想マシンイメージ記憶部に記憶された仮想マシンを、スケジュール情報に含まれる受信時刻に応じて、ストレージ装置に送信する仮想マシンイメージ送信部を備えることを特徴とする。
【0009】
また、本発明は、ネットワークを介して接続されたストレージ装置から送信される複数の仮想マシンイメージが記憶される仮想マシンイメージ記憶部を有し、仮想マシンイメージに基づいて、自身のハードウェアリソース上に複数の仮想マシンを起動させる仮想化装置と、複数の仮想マシン毎に、仮想マシンが仮想化装置において起動する起動時刻と、起動した仮想マシンを停止させる終了時刻とを対応付けたシステム構成情報が記憶されているシステム構成情報記憶部と、複数の仮想マシン毎に、仮想マシンに対応する仮想マシンイメージがストレージ装置から仮想化装置に送信される送信時刻が重複せずに対応付けられたスケジュール情報が記憶されるスケジュール記憶部と、を有する仮想化管理装置とを備えた仮想化システムの、仮想化管理装置が、システム構成情報記憶部から読み出したシステム構成情報に基づいて、スケジュール情報を生成してスケジュール記憶部に記憶させるステップと、仮想化装置が、仮想化管理装置のスケジュール記憶部に記憶されているスケジュール情報を読み出し、スケジュール情報に含まれる、自身のハードウェアリソース上に起動させる仮想マシンに対応付けられた送信時刻に応じて、ストレージ装置に記憶されている仮想マシンイメージを取得し、仮想マシンイメージ記憶部に記憶させるステップと、スケジュール記憶部に記憶されているスケジュール情報に含まれる起動時刻に、仮想マシンイメージ記憶部に記憶されている仮想マシンイメージを読み出して仮想マシンを起動するステップと、を備えることを特徴とする仮想化方法である。
【発明の効果】
【0010】
以上説明したように、本発明によれば、仮想化管理装置が、複数の仮想マシン毎に、起動時刻と終了時刻とを対応付けたシステム構成情報に基づいて、複数の仮想マシン毎に、仮想マシンに対応する仮想マシンイメージがストレージ装置から仮想化装置に送信される送信時刻が重複せずに対応付けられたスケジュール情報を生成し、仮想化装置が、スケジュール情報に含まれる、自身のハードウェアリソース上に起動させる仮想マシンに対応付けられた送信時刻に応じて、ストレージ装置に記憶されている仮想マシンイメージを取得し、スケジュール情報に含まれる起動時刻に、仮想マシンイメージに基づいて仮想マシンを起動するようにしたので、ネットワークを介して同時刻に複数の仮想マシンを起動する場合の負荷を軽減することができる。
【図面の簡単な説明】
【0011】
【図1】本発明の一実施形態による仮想化システムの構成例を示すブロック図である。
【図2】本発明の一実施形態によるシステム構成情報のデータ例を示す図である。
【図3】本発明の一実施形態による送信スケジュール情報のデータ例を示す図である。
【図4】本発明の一実施形態による送信スケジュール情報のデータ例を示す図である。
【図5】本発明の一実施形態による起動スケジュール情報のデータ例を示す図である。
【図6】本発明の一実施形態による起動スケジュール情報のデータ例を示す図である。
【図7】本発明の一実施形態による仮想化システムのスケジュール情報生成処理の動作例を示すフローチャートである。
【図8】本発明の一実施形態による仮想化システムの起動処理の動作例を示すフローチャートである。
【図9】従来技術による仮想化システムの構成例を示すブロック図である。
【発明を実施するための形態】
【0012】
以下、本発明の一実施形態について、図面を参照して説明する。
図1は、本実施形態による仮想化システム1の構成を示すブロック図である。仮想化システム1は、複数のユーザ端末10(ユーザ端末10−1、ユーザ端末10−2、・・・)と、仮想化管理装置20と、複数のストレージ装置30(ストレージ装置30−1、ストレージ装置30−2、・・・)と、複数の仮想化装置40(仮想化装置40−1、仮想化装置40−2、・・・)とのコンピュータ装置を備えている。ここで、複数のユーザ端末10は同様の構成であるので、特に区別しない場合には「−1」、「−2」等を省略してユーザ端末10として説明する。
【0013】
同様に、複数のストレージ装置30は同様の構成であるので、特に区別しない場合には「−1」、「−2」等を省略してストレージ装置30として説明する。同様に、複数の仮想化装置40は同様の構成であるので、特に区別しない場合には「−1」、「−2」等を省略して仮想化装置40として説明する。ユーザ端末10、ストレージ装置30、仮想化装置40はそれぞれ2台を示しているが、ユーザ数、ネットワーク環境、利用用途等に応じて任意の台数として良い。本実施形態では、例えば企業や学校等の施設における従業員や生徒等であるユーザが、ユーザ端末10を利用する、いわゆるプライベートクラウドやシンクライアントシステムと呼ばれるような場面を想定して説明する。ただし、本実施形態をパブリッククラウド等に適用することもできる。このような仮想化システム1によれば、ユーザがコンピュータリソースを利用したい場合、自身でアプリケーションや高性能の物理マシン等を用意しなくとも、ネットワーク接続が可能なユーザ端末10から仮想化装置40の仮想マシンに接続することで、多様なコンピュータリソースを利用できる。
【0014】
ユーザ端末10は、ユーザからの入力に応じて仮想化管理装置20に仮想マシンの起動要求を送信し、送信した起動要求に応じて起動される仮想マシンを利用するコンピュータ端末である。ユーザ端末10は、例えばインターネットブラウザの機能を備えており、予め定められたURL(Uniform Resource Locator)に基づいて、仮想化管理装置20によって提供されるウェブサイトに接続する。ユーザ端末10は、仮想化管理装置20から、自身に対応する仮想マシン(インスタンス)のIP(Internet Protocol)アドレスを仮想化管理装置20から受信する。ユーザ端末10は、受信したIPアドレスに基づいて仮想化管理装置20の仮想マシンに接続し、仮想マシンを利用する。
【0015】
仮想化管理装置20は、ユーザ端末10とストレージ装置30と仮想化装置40とに接続され、ユーザ端末10から仮想化システム1へのインタフェースであるウェブサイトを提供するコンピュータ装置である。例えば、仮想化管理装置20は、仮想マシンを利用するユーザ端末10に対応するユーザアカウントを自身の記憶領域に予め記憶しておく。また、ユーザアカウント毎に利用させる仮想マシンを対応付けて記憶しておく。仮想化管理装置20は、システム構成情報記憶部21と、スケジュール記憶部22と、仮想マシンイメージテンプレート記憶部23と、システム構成情報入力部24と、スケジュール生成部25と、仮想マシンイメージ格納部26とを備えている。
【0016】
システム構成情報記憶部21には、複数のユーザに対応する複数の仮想マシンを識別する仮想マシン識別情報毎に、その仮想マシンが仮想化装置40において起動する起動時刻と、起動した仮想マシンを停止させる終了時刻とを対応付けたシステム構成情報が記憶されている。図2は、システム構成情報記憶部21に記憶されているシステム構成情報のデータ例を示す図である。ここでは、例えばユーザAに対応する仮想マシンを仮想マシンAとする。仮想マシンAは、7:00に起動し、19:00に利用が終了して停止することを示している。
【0017】
スケジュール記憶部22には、ストレージ装置30に記憶されている仮想マシンイメージを仮想化装置40との間で送受信する時刻を示す送信スケジュール情報と、仮想化装置40において仮想マシンが起動する起動スケジュール情報とが記憶される。
図3は、スケジュール記憶部22に記憶される送信スケジュール情報のデータ例を示す図である。送信スケジュール情報は、複数のユーザに対応する複数の仮想マシンを識別する仮想マシン識別情報毎に、その仮想マシンの仮想マシンイメージを記憶させるストレージ装置30を識別する識別情報と、その仮想マシンに対応する仮想マシンイメージがストレージ装置30から仮想化装置40に送信される送信時刻が重複せずに対応付けられた情報である。また、スケジュール情報には、複数の仮想マシンを識別する仮想マシン識別情報毎に、その仮想マシンが停止した際に、停止した仮想マシンの仮想マシンイメージをストレージ装置30が仮想化装置40から受信する受信時刻が重複せずに対応付けられた情報が含まれる。
【0018】
送信スケジュール情報は、例えば図4のようなデータ構成としても良く、示されるデータ内容は図3と同様である。図4では、複数のストレージ装置30を識別する識別情報毎、時間帯毎に、ストレージ装置30が送信または受信する仮想マシンイメージの識別情報が対応付けられた例を示す。ここでは、「ストレージ装置30−1」に対応する時間帯である「7:00」には、「A送信」が対応付けられており、この時間帯に仮想マシンAの仮想マシンイメージが仮想化装置40に送信されることを示す。このように、ストレージ装置30−1に、仮想マシンAと、仮想マシンCと、仮想マシンEとが記憶されることが示されており、ストレージ装置30−2に、仮想マシンBと、仮想マシンDとが記憶されることが示されている。ここでは、複数のストレージ装置30毎に、仮想マシンイメージの送信時刻と受信時刻とを対応付ける例を示したが、ストレージ装置30が1台であれば、仮想マシン毎に、送信時刻と受信時刻との時間帯を対応付けて記憶させておくようにすることができる。ここでは、簡単のため1時間毎の時間帯を示して説明したが、仮想マシンイメージを送受信するために必要な時間に応じて、任意の単位の時間帯を定めることができる。
【0019】
図5は、スケジュール記憶部22に記憶される起動スケジュール情報のデータ例を示す図である。起動スケジュール情報は、複数のユーザに対応する複数の仮想マシンを識別する仮想マシン識別情報毎に、その仮想マシンを起動させる仮想化装置40を識別する識別情報と、その仮想マシンが起動する起動時刻が重複せずに対応付けられた情報である。また、スケジュール情報には、複数の仮想マシンを識別する仮想マシン識別情報毎に、その仮想マシンが停止する終了時刻が重複せずに対応付けられた情報が含まれる。
【0020】
起動スケジュール情報は、例えば図6のようなデータ構成としても良く、示されるデータ内容は図5と同様である。図6では、複数の仮想化装置40を識別する識別情報毎、時間帯毎に、その仮想化装置40において起動する仮想マシンの識別情報が対応付けられた例を示す。ここでは、「仮想化装置40−1」に対応する時間帯である「7:00」には、「A起動」が対応付けられており、この時間帯に仮想マシンAの仮想マシンイメージが40仮想化装置40−1において起動されることを示す。
【0021】
仮想マシンイメージテンプレート記憶部23には、仮想化装置40において起動される仮想マシンのテンプレートが予め記憶されている。仮想マシンイメージのテンプレートは、OS(Operating System)やそのOSにおけるGUI(Graphical User Interface)のデスクトップ環境を提供するデスクトッププログラム、各種アプリケーションプログラムなどが含まれるイメージファイルである。
【0022】
システム構成情報入力部24は、システム構成情報入力部24は、マウスやキーボード等の入力デバイスを有しており、仮想化システム1においてユーザに利用させる仮想マシンの起動時刻、終了時刻等のシステム構成の入力を受け付け、入力されたシステム構成情報をシステム構成情報記憶部21に記憶させる。
【0023】
スケジュール生成部25は、システム構成情報記憶部21から読み出したシステム構成情報に基づいて、送信スケジュール情報と起動スケジュール情報とを生成してスケジュール記憶部22に記憶させる。
仮想マシンイメージ格納部26は、スケジュール記憶部22から読み出した送信スケジュール情報に基づいて、同一の送信時刻が対応付けられた仮想マシンに対応する仮想マシンイメージを、異なるストレージ装置30に記憶させておく。
【0024】
ストレージ装置30は、仮想化装置40に起動される仮想マシンイメージが記憶されるコンピュータ装置である。ストレージ装置30は、仮想マシンイメージ記憶部31を備えている。仮想マシンイメージ記憶部31には、図3に示した送信スケジュール情報に応じた仮想マシンイメージが記憶される。
【0025】
仮想化装置40は、ネットワークを介して接続されたストレージ装置30から送信される複数の仮想マシンイメージに基づいて、自身のハードウェアリソース上に複数の仮想マシンを起動させるコンピュータ装置である。仮想化装置40は、仮想マシンイメージ記憶部41と、仮想マシンイメージ送受信部42と、仮想マシン起動部43とを備えている。
仮想マシンイメージ記憶部41には、自身のコンピュータリソース上に起動させる仮想マシンイメージが一時的に記憶される。
【0026】
仮想マシンイメージ送受信部42は、仮想化管理装置20のスケジュール記憶部22に記憶されているスケジュール情報を読み出し、読み出したスケジュール情報に含まれる、自身のハードウェアリソース上に起動させる仮想マシンに対応付けられた送信時刻に応じて、ストレージ装置30に記憶されている仮想マシンイメージを受信し、仮想マシンイメージ記憶部41に記憶させる。また、仮想マシンイメージ送受信部42は、仮想マシンイメージ記憶部41に記憶された仮想マシンを、スケジュール情報に含まれる受信時刻に応じて、ストレージ装置30に送信する。このように、本実施形態では、仮想化装置40が、仮想化管理装置20を介さずにストレージ装置30と仮想マシンイメージを送受信するようにしたので、従来のように、仮想マシンイメージの送受信の際に仮想化管理装置20を経由する場合と比べ、仮想化管理装置20の処理負荷を軽減し、ネットワークの負荷を分散させることができる。
【0027】
仮想マシン起動部43は、仮想化管理装置20のスケジュール記憶部22に記憶されている起動スケジュール情報に含まれる起動時刻に、仮想マシンイメージ記憶部41に記憶されている仮想マシンイメージを読み出して仮想マシンを起動する。また、仮想マシン起動部43は、起動スケジュール情報に含まれる終了時刻に応じて仮想マシンを停止させ、停止させた仮想マシンの仮想マシンイメージを仮想マシンイメージ記憶部41に記憶させる。
【0028】
次に、本実施形態による仮想化システム1の動作例を説明する。図7は、仮想化管理装置20がスケジュール情報を生成する動作例を示すフローチャートである。
仮想化管理装置20のシステム構成情報入力部24は、仮想化システム1の管理者から、仮想マシンのシステム構成情報の入力を受け付ける(ステップS1)。システム構成情報入力部24は、入力されたシステム構成情報をシステム構成情報記憶部21に記憶させる。例えば、図2に示したような、仮想マシンAから仮想マシンEのシステム構成情報が入力され、システム構成情報記憶部21に記憶される。
【0029】
スケジュール生成部25は、システム構成情報記憶部21に記憶されているシステム構成情報を、1件ずつ読み出す。そして、スケジュール記憶部22に記憶されている送信スケジュール情報を読み出し、読み出したシステム構成情報の起動時刻と終了時刻とに対応する時間帯に、仮想マシンが対応付けられていないストレージ装置30が存在するか否かを判定する(ステップS2)。ここで、読み出したシステム構成情報の起動時刻と終了時刻とに対応する時間帯に、仮想マシンが対応付けられていないストレージ装置30が存在すると判定すると(ステップS2:YES)、そのストレージ装置30に対応する起動時刻と終了時刻とに応じた時間帯に、送信時刻と受信時刻とを対応付けて記憶させる(ステップS3)。例えば、図2における仮想マシンAであれば、図4に示すように、ストレージ装置30−1の7:00に「A送信」を、ストレージ装置30−1の19:00に「A受信」を対応付けて記憶させる。また、仮想マシンBについては、仮想マシンAと起動時刻と終了時刻とが同一であるから、ストレージ装置30−1には対応付けず、ストレージ装置30−2に対応付けて記憶させる。
【0030】
一方、ステップS2において、読み出したシステム構成情報の起動時刻と終了時刻とに対応する時間帯に、仮想マシンが対応付けられていないストレージ装置30が存在しないと判定すると(ステップS2:YES)、仮想マシンが対応付けられておらず、最も空いているストレージ装置30の、起動時刻よりも早い時刻に送信時刻を対応付け、終了時刻よりも遅い時刻に受信時刻を対応付けて記憶させる(ステップS4)。最も空いているストレージ装置30とは、例えば、そのストレージ装置30に対応付けられた仮想マシンの数が最も少ないことをいう。例えば、仮想マシンCは、仮想マシンAと仮想マシンBとの双方と起動時刻と終了時刻とが同一であり、起動時刻と終了時刻とに対応する時間帯が空いているストレージ装置30は存在しない。このため、仮想マシンAと仮想マシンBとの仮想マシンイメージが送信される時間帯を避けて、送信時刻の時間帯を7:00よりも早い6:00に対応付け、受信時刻の時間帯を19:00よりも遅い20:00に対応付けて記憶させる。このように、ステップS3またはステップS4において、仮想マシンイメージを記憶させるストレージ装置30が対応付けられると、仮想マシンイメージ格納部26は、仮想マシンイメージテンプレート記憶部23に記憶されている仮想マシンテンプレートイメージを読み出し、対応するストレージ装置30の仮想マシンイメージ記憶部31に記憶させる(ステップS5)。
【0031】
次に、スケジュール生成部25は、スケジュール記憶部22に記憶されている起動スケジュール情報を読み出し、ステップS2において読み出したシステム構成情報の起動時刻と終了時刻とに対応する時間帯に、仮想マシンが対応付けられていない仮想化装置40が存在するか否かを判定する(ステップS6)。ここで、読み出したシステム構成情報の起動時刻と終了時刻とに対応する時間帯に、仮想マシンが対応付けられていない仮想化装置40が存在すると判定すると(ステップS6:YES)、その仮想化装置40に対応する起動時刻と終了時刻とに応じた時間帯に、その仮想マシンを対応付けて記憶させる(ステップS7)。例えば、図2における仮想マシンAであれば、図6に示すように、仮想化装置40−1の7:00に「A起動」を、仮想化装置40−1の19:00に「A終了」を対応付けて記憶させる。また、仮想マシンBについては、仮想マシンAと起動時刻と終了時刻とが同一であるから、仮想化装置40−1には対応付けず、仮想化装置40−2に対応付けて記憶させる。
【0032】
一方、ステップS6において、読み出したシステム構成情報の起動時刻と終了時刻とに対応する時間帯に、仮想マシンが対応付けられていない仮想化装置40が存在しないと判定すると(ステップS6:NO)、仮想マシンが対応付けられておらず、最も空いている仮想化装置40の、起動時刻よりも早い時刻に送信時刻を対応付け、終了時刻よりも遅い時刻に受信時刻を対応付けて記憶させる(ステップS8)。例えば、仮想マシンCは、仮想マシンAと仮想マシンBとの双方と起動時刻と終了時刻とが同一であり、起動時刻と終了時刻とに対応する時間帯が空いている仮想化装置40は存在しない。このため、仮想マシンAと仮想マシンBとの仮想マシンが起動される時間帯を避けて、起動時刻の時間帯を7:00よりも早い6:00に対応付け、終了時刻の時間帯を19:00よりも遅い20:00に対応付けて記憶させる。
【0033】
スケジュール生成部25は、システム構成情報入力部24から入力されてシステム構成情報記憶部21に記憶されたシステム構成情報のうち、スケジュール情報の生成処理を行っていないシステム構成情報があれば(ステップS9:YES)、ステップS2に戻り、スケジュール情報の生成処理を繰り返す。全てのシステム構成情報についてスケジュール情報の生成処理を行うと(ステップS9:NO)、処理を終了する。
【0034】
図8は、仮想化装置40による仮想マシンの起動処理の動作例を示すフローチャートである。仮想化装置40の仮想マシンイメージ送受信部42は、仮想化管理装置20によって生成されたスケジュール情報のうち、自身のコンピュータに起動させる仮想マシンの情報を、仮想化管理装置20から受信し、自身の記憶領域に記憶させる(ステップS11)。そして、仮想マシンイメージ送受信部42は、自身が備える計時機能から取得した現在時刻と、送信スケジュール情報に含まれる仮想マシンの送信時刻とを比較し、現在時刻が送信時刻を越えたか否かを判定する(ステップS12)。越えていないと判定すれば(ステップS12:NO)、判定処理を続ける。越えたと判定すれば(ステップS12:YES)、対応するストレージ装置30から、仮想マシンイメージを読み出し、仮想マシンイメージ記憶部41に記憶させる(ステップS13)。
【0035】
仮想マシン起動部43は、自身が備える計時機能から取得した現在時刻と、起動スケジュール情報に含まれる仮想マシンの起動時刻とを比較し、現在時刻が起動時刻を越えたか否かを判定する(ステップS14)。越えていないと判定すれば(ステップS14:NO)、判定処理を続ける。越えたと判定すれば(ステップS14:YES)、仮想マシンイメージ記憶部41から、仮想マシンイメージを読み出して起動する(ステップS15)。
【0036】
そして、仮想マシン起動部43は、自身が備える計時機能から取得した現在時刻と、起動スケジュール情報に含まれる仮想マシンの終了時刻とを比較し、現在時刻が終了時刻を越えたか否かを判定する(ステップS16)。越えていないと判定すれば(ステップS16:NO)、判定処理を続ける。越えたと判定すれば(ステップS16:YES)、仮想マシンを停止させ、その時点での仮想マシンの仮想マシンイメージを生成して、仮想マシンイメージ記憶部41に記憶させる(ステップS17)。
【0037】
そして、仮想マシンイメージ送受信部42は、自身が備える計時機能から取得した現在時刻と、送信スケジュール情報に含まれる仮想マシンの受信時刻とを比較し、現在時刻が受信時刻を越えたか否かを判定する(ステップS18)。越えていないと判定すれば(ステップS18:NO)、判定処理を続ける。越えたと判定すれば(ステップS18:YES)、仮想マシンイメージ記憶部41から、仮想マシンイメージを読み出し、対応するストレージ装置30に送信して、仮想マシンイメージ記憶部31に記憶させる(ステップS19)。
【0038】
なお、本実施形態の例では、複数のユーザ端末10の利用を開始する仮想マシンの起動時間と終了時間とが含まれるシステム構成情報が、システム管理者により入力されることとしたが、例えばどのようなユーザが、いつ仮想マシンを起動していつ終了するかわからないような状況では、仮想マシン毎に起動時間と終了時間とを推定するようにしても良い。例えば、過去の履歴情報から、仮想マシンの起動時間と終了時間との実績の多い時間を判定し、システム構成情報として記憶させておくようにしても良い。
【0039】
また、このように、仮想マシンイメージを送受信する時間帯や仮想マシンを起動する時間帯を分散させるだけでなく、ストレージ装置30と仮想化装置40との間のネットワーク経路を分散させるようにして、より処理負荷を低減させることもできる。
また、本実施形態では、スケジュール情報として、1日のうちで時間帯を分散させる例を説明したが、送信時刻、受信時刻、起動時刻、終了時刻は、曜日や月、季節等により異なる値が設定されるようにしても良い。
【0040】
以上説明したように、本実施形態によれば、複数のユーザ端末10が同時に仮想マシンを利用するような場合にも、仮想マシンイメージがストレージ装置30と仮想化装置40との間で送受信される時間帯を分散させるようにしたので、ネットワークの負荷を軽減できる。さらに、仮想化装置40において仮想マシンが起動する時間帯も同様に分散させるようにしたので、仮想化装置40における仮想マシンの起動に伴う処理負荷も軽減することができる。
【0041】
これにより、例えば、学校内において生徒である複数のユーザが、授業の開始時に複数の仮想マシンを一斉に利用するような場合でも、予め仮想マシンイメージの転送と起動とを行っておくことで、処理負荷が集中することを防ぐことができる。
【0042】
なお、本発明における処理部の機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより仮想化システムの管理を行ってもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。また、「コンピュータシステム」は、ホームページ提供環境(あるいは表示環境)を備えたWWWシステムも含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ(RAM)のように、一定時間プログラムを保持しているものも含むものとする。
【0043】
また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク(通信網)や電話回線等の通信回線(通信線)のように情報を伝送する機能を有する媒体のことをいう。また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であっても良い。
【符号の説明】
【0044】
1 仮想化システム
10 ユーザ端末
20 仮想化管理装置
21 システム構成情報記憶部
22 スケジュール記憶部
23 仮想マシンイメージテンプレート記憶部
24 システム構成情報入力部
25 スケジュール生成部
26 仮想マシンイメージ格納部
30 ストレージ装置
31 仮想マシンイメージ記憶部
40 仮想化装置
41 仮想マシンイメージ記憶部
42 仮想マシンイメージ送受信部
43 仮想マシン起動部

【特許請求の範囲】
【請求項1】
ネットワークを介して接続されたストレージ装置から送信される複数の仮想マシンイメージに基づいて、自身のハードウェアリソース上に複数の仮想マシンを起動させる仮想化装置と、前記仮想化装置に接続された仮想化管理装置とを備えた仮想化システムであって、
前記仮想化管理装置は、
前記複数の仮想マシン毎に、当該仮想マシンが前記仮想化装置において起動する起動時刻と、起動した当該仮想マシンを停止させる終了時刻とを対応付けたシステム構成情報が記憶されているシステム構成情報記憶部と、
前記複数の仮想マシン毎に、当該仮想マシンに対応する前記仮想マシンイメージが前記ストレージ装置から前記仮想化装置に送信される送信時刻が重複せずに対応付けられたスケジュール情報が記憶されるスケジュール記憶部と、
前記システム構成情報記憶部から読み出した前記システム構成情報に基づいて、前記スケジュール情報を生成して前記スケジュール記憶部に記憶させるスケジュール生成部と、
を備え、
前記仮想化装置は、
前記仮想マシンイメージが記憶される仮想マシンイメージ記憶部と、
前記仮想化管理装置の前記スケジュール記憶部に記憶されている前記スケジュール情報を読み出し、当該スケジュール情報に含まれる、自身のハードウェアリソース上に起動させる前記仮想マシンに対応付けられた前記送信時刻に応じて、前記ストレージ装置に記憶されている前記仮想マシンイメージを取得し、前記仮想マシンイメージ記憶部に記憶させる仮想マシンイメージ受信部と、
前記スケジュール記憶部に記憶されている前記スケジュール情報に含まれる前記起動時刻に、前記仮想マシンイメージ記憶部に記憶されている前記仮想マシンイメージを読み出して前記仮想マシンを起動する仮想マシン起動部と、
を備えることを特徴とする仮想化システム。
【請求項2】
前記仮想化装置は、複数の前記ストレージ装置に接続され、
前記スケジュール記憶部から読み出した前記スケジュール情報に基づいて、同一の送信時刻が対応付けられた前記仮想マシンに対応する仮想マシンイメージを、異なるストレージ装置に記憶させておく仮想マシンイメージ格納部
を備えることを特徴とする請求項1に記載の仮想化システム。
【請求項3】
前記仮想化管理装置の前記スケジュール記憶部に記憶される前記スケジュール情報には、前記複数の仮想マシン毎に、当該仮想マシンが停止した際に、停止した当該仮想マシンの仮想マシンイメージを前記ストレージ装置が前記仮想化装置から受信する受信時刻が重複せずに対応付けられた情報が含まれ、
前記仮想化装置の前記仮想マシン起動部は、前記スケジュール情報に含まれる前記終了時刻に応じて前記仮想マシンを停止させ、停止させた当該仮想マシンの仮想マシンイメージを前記仮想マシンイメージ記憶部に記憶させ、
前記仮想化管理装置は、
前記仮想マシンイメージ記憶部に記憶された前記仮想マシンを、前記スケジュール情報に含まれる前記受信時刻に応じて、前記ストレージ装置に送信する仮想マシンイメージ送信部を備える
ことを特徴とする請求項1または請求項2に記載の仮想化システム。
【請求項4】
ネットワークを介して接続されたストレージ装置から送信される複数の仮想マシンイメージが記憶される仮想マシンイメージ記憶部を有し、当該仮想マシンイメージに基づいて、自身のハードウェアリソース上に複数の仮想マシンを起動させる仮想化装置と、前記複数の仮想マシン毎に、当該仮想マシンが前記仮想化装置において起動する起動時刻と、起動した当該仮想マシンを停止させる終了時刻とを対応付けたシステム構成情報が記憶されているシステム構成情報記憶部と、前記複数の仮想マシン毎に、当該仮想マシンに対応する前記仮想マシンイメージが前記ストレージ装置から前記仮想化装置に送信される送信時刻が重複せずに対応付けられたスケジュール情報が記憶されるスケジュール記憶部と、を有する仮想化管理装置とを備えた仮想化システムの、
前記仮想化管理装置が、
前記システム構成情報記憶部から読み出した前記システム構成情報に基づいて、前記スケジュール情報を生成して前記スケジュール記憶部に記憶させるステップと、
前記仮想化装置が、
前記仮想化管理装置の前記スケジュール記憶部に記憶されている前記スケジュール情報を読み出し、当該スケジュール情報に含まれる、自身のハードウェアリソース上に起動させる前記仮想マシンに対応付けられた前記送信時刻に応じて、前記ストレージ装置に記憶されている前記仮想マシンイメージを取得し、前記仮想マシンイメージ記憶部に記憶させるステップと、
前記スケジュール記憶部に記憶されている前記スケジュール情報に含まれる前記起動時刻に、前記仮想マシンイメージ記憶部に記憶されている前記仮想マシンイメージを読み出して前記仮想マシンを起動するステップと、
を備えることを特徴とする仮想化方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate


【公開番号】特開2013−8322(P2013−8322A)
【公開日】平成25年1月10日(2013.1.10)
【国際特許分類】
【出願番号】特願2011−142223(P2011−142223)
【出願日】平成23年6月27日(2011.6.27)
【出願人】(000102728)株式会社エヌ・ティ・ティ・データ (438)
【Fターム(参考)】