JP5446157B2 - 情報処理装置、情報処理方法および情報処理プログラム - Google Patents

情報処理装置、情報処理方法および情報処理プログラム Download PDF

Info

Publication number
JP5446157B2
JP5446157B2 JP2008193956A JP2008193956A JP5446157B2 JP 5446157 B2 JP5446157 B2 JP 5446157B2 JP 2008193956 A JP2008193956 A JP 2008193956A JP 2008193956 A JP2008193956 A JP 2008193956A JP 5446157 B2 JP5446157 B2 JP 5446157B2
Authority
JP
Japan
Prior art keywords
virtual machine
identification information
storage unit
generated
flag
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
Application number
JP2008193956A
Other languages
English (en)
Other versions
JP2010033280A (ja
Inventor
知宏 高橋
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2008193956A priority Critical patent/JP5446157B2/ja
Priority to US12/457,440 priority patent/US8843922B2/en
Publication of JP2010033280A publication Critical patent/JP2010033280A/ja
Application granted granted Critical
Publication of JP5446157B2 publication Critical patent/JP5446157B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45537Provision of facilities of other operating environments, e.g. WINE

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Description

本発明は、仮想マシン生成装置、仮想マシン生成方法および仮想マシン生成プログラムに関する。
従来より、サーバ装置やPC(Personal Computer)などの物理的な計算機を論理的に分割して論理的な計算機(以下、「仮想マシン」と言う)を複数生成し、生成された仮想マシンそれぞれがOSを独立して動作させる仮想化技術がある。仮想化技術は、1台の計算機において複数のOSを動作させることができる。
そして、このようにして生成された仮想マシンに対してホストとなる計算機の資源を再び割り当てるための様々な技術が開示されている(例えば、特許文献1参照)。
ところで、上述した仮想マシンの生成に係るOSのインストールにおいては、例えば、図7−1に示すように、仮想マシンが作成された後に、ゲストOS(仮想マシンにインストールされるOS)をインストールする作業を必要台数分繰り返し人手により実施される。なお、図7−1は、従来技術に係る仮想マシンのOSを1台ずつインストールする手法を説明するための図である。
また、例えば、図7−2に示すように、仮想マシンが作成された後にゲストOSをインストールし、当該ゲストOSの構成情報が同一であるものについて、インストールされたゲストOSをコピーするという作業を必要台数分人手により実施される。なお、図7−2は、従来技術に係る仮想マシンのOSをコピーすることによりインストールする手法を説明するための図である。
また、例えば、図7−3に示すように、テンプレートとなる仮想マシンを作成し、当該仮想マシンに基づいて必要台数分の仮想マシンを作成して、作成された仮想マシン毎にゲストOSをインストールするのを人手により実施される。なお、図7−3は、従来技術に係る仮想マシンのテンプレートから仮想マシン毎にOSをインストールする手法を説明するための図である。
特開2002−7149号公報
しかしながら、上述した仮想マシンのOSをインストールする手法は、仮想マシンを生成する時間がかかってしまうとともに、生成された仮想マシンの信頼性が低いという課題があった。
具体的には、図7−1〜図7〜3に示した手法は、導入される台数分同じ操作が人手により行われたり、ゲストOSのインストール時に必要となる設定ファイルの変更やコピー、スペックが異なるかどうかの判断などが人手により行われたりする。このように、上述した仮想マシンのOSをインストールするいずれの手法であっても、仮想マシンを生成する時間がかかってしまうとともに、生成された仮想マシンの信頼性が低い。
そこで、本仮想マシン生成装置、仮想マシン生成方法および仮想マシン生成プログラムは、上述した従来技術の課題を解決するためのなされたものであり、高速に信頼性の高い仮想マシンを生成することが可能である仮想マシン生成装置、仮想マシン生成方法および仮想マシン生成プログラムを提供することを目的とする。
上述した課題を解決し、目的を達成するため、本願の開示する仮想マシン生成装置は、仮想マシンの固有情報に対応付けて、前記仮想マシンの資源情報を示すリソースと、前記仮想マシンを構成する情報を示す構成情報とを記憶する構成情報記憶部と、新たな仮想マシンが導入される場合に、前記新たな仮想マシンの固有情報とリソースとを受け付けて、受け付けたリソースと同一のリソースが前記構成情報記憶部に記憶されているか否かを判定する構成情報確認部と、前記構成情報確認部によって同一のリソースが前記構成情報記憶部に記憶されていると判定された場合に、当該同一のリソースを有する仮想マシンの基本ソフトを複製して、前記新たな仮想マシンの基本ソフトを導入する基本ソフト導入部と、を備えたことを要件とする。
本願の開示する仮想マシン生成装置、仮想マシン生成方法および仮想マシン生成プログラムによれば、高速に信頼性の高い仮想マシンを生成することが可能であるという効果を奏する。
以下に、添付図面を参照して、本仮想マシン生成装置、仮想マシン生成方法および仮想マシン生成プログラムの実施例を詳細に説明する。
[仮想マシン生成装置の概要]
最初に、図1を用いて、実施例1に係る仮想マシン生成装置の概要を説明する。図1は、実施例1に係る仮想マシン生成装置の概要を説明するための図である。
本願の開示する仮想マシン生成装置は、例えば、サーバ装置やPCなどの情報処理装置が有するOS(管理OS)内に配設され、CPU数、メモリ量およびディスク容量などのリソースに基づいて、新たに仮想マシンを生成する。
上述した構成において、仮想マシン生成装置は、仮想マシンの資源情報を示すリソースと、仮想マシンを構成する情報を示す構成情報とを記憶している。そして、仮想マシン生成装置は、新たな仮想マシンが導入される場合に、新たな仮想マシンの固有情報とリソースとを受け付けて、受け付けたリソースと同一のリソースが構成情報記憶部に記憶されているか否かを判定する。続いて、仮想マシン生成装置は、同一のリソースが構成情報記憶部に記憶されていると判定された場合に、当該同一のリソースを有する仮想マシンの基本ソフトを複製して、新たな仮想マシンの基本ソフトを導入する。
具体的には、仮想マシン生成装置は、仮想マシンの固有情報である「仮想マシン名」に対応付けて、「CPU数」、「メモリ量」および「ディスク容量」であるリソースと、当該仮想マシンを構成するリソースとは異なる情報である構成情報とを構成情報記憶部に記憶している。
そして、仮想マシン生成装置は、仮想マシンを新たに導入する台数分の「仮想マシン名」、「CPU数」、「メモリ量」および「ディスク容量」を受け付ける。続いて、仮想マシン生成装置は、受け付けた「CPU数」、「メモリ量」および「ディスク容量」と同一のリソースが構成情報記憶部に記憶されているか否かを判定する(図1の(1)参照)。
その後、仮想マシン生成装置は、同一のリソースが構成情報記憶部に記憶されていると判定された場合に、新たな仮想マシンを作成して、同一のリソースを有する仮想マシンのOSをコピーすることにより、作成された新たな仮想マシンのOSをインストールする。なお、仮想マシン生成装置は、同一のリソースを有する仮想マシンのOSをコピーすることにより新たな仮想マシンのOSをインストールする処理を、同一のリソースを有する台数分実施する(図1の(2)−a参照)。
また、仮想マシン生成装置によって同一のリソースが構成情報記憶部に記憶されていないと判定された場合には、従来と同様にして、新たな仮想マシンを作成して、当該仮想マシンのOSをインストールすることとなる(図1の(2)−b参照)。
上述したように、仮想マシン生成装置は、同一のリソースを有する仮想マシンのOSをコピーすることにより新たに生成する仮想マシンのOSをインストールすることができる結果、高速に信頼性の高い仮想マシンを生成することが可能である。
[仮想マシン生成装置の構成]
次に、図2を用いて、実施例1に係る仮想マシン生成装置の構成を説明する。図2は、実施例1に係る仮想マシン生成装置の構成例を示す図である。図2に示すように、仮想マシン生成装置10は、情報処理装置1が有する管理OS2の内部に配設され、記憶部20と、制御部30とを有し、新たに仮想マシンVM(Virtual Machine)4a〜4nを生成する。なお、HardWare3は、サーバ装置やPCなどの情報処理装置に配設される一般的なハードウェアである。
記憶部20は、制御部30による各種処理に必要なデータや、制御部30による各種処理結果を記憶し、特に、仮想マシン識別子記憶部21と、構成情報記憶部22とを有する。
仮想マシン識別子記憶部21は、仮想マシンを一意に識別する複数の識別子を記憶する。例えば、仮想マシン識別子記憶部21は、仮想マシンを一意に識別するUUID(Universally Unique IDentifier)と、MACアドレス(Media Access Control address)とを対応付けて記憶する。
構成情報記憶部22は、仮想マシンの固有情報に対応付けて、仮想マシンの資源情報を示すリソースと、仮想マシンを構成する情報を示す構成情報とを記憶する。具体的には、構成情報記憶部22は、図3に示すように、仮想マシンの固有情報である「マシン名」に対応付けて、仮想マシンの資源情報を示す「CPU数」、「メモリ量」および「ディスク容量」などのリソースと、当該「マシン名」に対応する仮想マシンの複製による導入の可否を示す「インストールフラグ」と、固有情報、リソースおよび構成情報をコピーしたコピー元の仮想マシンの固有情報を示す「コピー元仮想マシン名」と、仮想マシンのOSを動作させるための様々な情報である構成情報とを記憶する。
例えば、構成情報記憶部22は、図3に示すように、マシン名「VM1」に対応付けて、CPU数「2」、メモリ量「2048」およびディスク容量「40960」などのリソースと、インストールフラグ「TRUE(コピー不可)」(または、「FALSE(コピー可)」)と、コピー元仮想マシン名「NULL」(例えば、コピーしてインストールされる場合にマシン名「VM5」などを記憶する)と、構成情報とを記憶する。なお、図3は、実施例1に係る構成情報記憶部22に記憶される情報の例を示す図である。
制御部30は、制御プログラム、各種の処理手順などを規定したプログラムおよび所要データを格納するための内部メモリを有するとともに、特に、仮想マシン構成情報入力部31と、構成情報確認部32と、仮想マシン作成部33とを有し、これらによって種々の処理を実行する。
仮想マシン構成情報入力部31は、仮想マシンを新たに導入する台数分の固有情報とリソースとを受け付ける。具体的に例を挙げると、仮想マシン構成情報入力部31は、新たな仮想マシンが作成される場合に、作成される仮想マシンの固有情報「VM1」と、CPU数「2」、メモリ量「2048」およびディスク容量「40960」との入力を受け付ける。
また、例えば、仮想マシン構成情報入力部31は、作成される仮想マシンの固有情報「VM2」と、CPU数「2」、メモリ量「1024」およびディスク容量「20480」との入力を受け付ける。また、例えば、仮想マシン構成情報入力部31は、作成される仮想マシンの固有情報「VM3」と、CPU数「2」、メモリ量「1024」およびディスク容量「20480」との入力を受け付ける。また、例えば、仮想マシン構成情報入力部31は、作成される仮想マシンの固有情報「VM4」と、CPU数「2」、メモリ量「1024」およびディスク容量「20480」との入力を受け付ける。
構成情報確認部32は、仮想マシン構成情報入力部31によって受け付けられたリソースと同一のリソースが構成情報記憶部22に記憶されているか否かを判定する。上述した例で具体的に例を挙げると、構成情報確認部32は、仮想マシン構成情報入力部31によって受け付けられたCPU数「2」、メモリ量「1024」およびディスク容量「20480」と同一のリソースが構成情報記憶部22に記憶されているか否かを判定する。
仮想マシン作成部33は、構成情報確認部32によって同一のリソースが構成情報記憶部22に記憶されていると判定された場合に、新たな仮想マシンを作成して、同一のリソースを有する仮想マシンの基本ソフトを複製することにより、作成された新たな仮想マシンの基本ソフトを導入する基本ソフト導入処理を、構成情報記憶部22に同一のリソースが記憶されていると判定された台数分実施する。
上述した例で具体的に例を挙げると、仮想マシン作成部33は、構成情報確認部32によって同一のリソースが構成情報記憶部22に記憶されていると判定された場合に、当該同一のリソースを有する仮想マシンのマシン名「VM2」を取得して構成情報記憶部22のコピー元仮想マシン名に格納する。そして、仮想マシン作成部33は、構成情報記憶部22に記憶されるマシン名「VM3」と「VM4」とのインストールフラグを「FALSE」に設定する。
また、仮想マシン作成部33は、構成情報確認部32によって同一のリソースが構成情報記憶部22に記憶されていないと判定された場合に、構成情報記憶部22に記憶される「VM1」と「VM2」とのインストールフラグを「TRUE」に設定する(図4−1参照)。さらに、「VM1」と「VM2」とは、従来通りにインストールが行われて、インストール後にインストールフラグが「FALSE」に更新される。なお、図4−1は、固有情報とリソースとが入力された後に構成情報記憶部22に記憶される情報の例を示す図である。
続いて、仮想マシン作成部33は、格納されたコピー元仮想マシン名「VM2」に基づいて、同一のリソースを有する仮想マシンの固有情報「VM2」、CPU数「2」、メモリ量「1024」、ディスク容量「20480」および構成情報をコピーする。その後、仮想マシン作成部33は、構成情報記憶部22に記憶される「VM3」および「VM4」の情報を上書きする。
そして、仮想マシン作成部33は、新たな仮想マシンを作成して、「VM2」のOSをコピーすることにより、作成された新たな仮想マシンのOSをインストールする。続いて、仮想マシン作成部33は、コピーによるインストールが完了したとしてインストールフラグを「FALSE」に更新する。なお、仮想マシン作成部33は、上記処理を「VM2」と同一のリソースを有する「VM3」と「VM4」とについて実施する。つまり、仮想マシン作成部33は、構成情報記憶部22に記憶されるインストールフラグとコピー元仮想マシン名が「FALSE」かつ「NULL」になるまで上記処理を実施する。
その後、仮想マシン作成部33は、固有情報、リソースおよび構成情報がコピーされたことによって同一となっている固有情報について、インストールされた仮想マシンの固有情報が重複しないように設定する。また、仮想マシン作成部33は、インストールされた仮想マシンを一意に識別するUUIDとMACアドレスとを仮想マシン識別子記憶部21に記憶される情報と重複しないように設定する(図4−2参照)。なお、図4−2は、全ての仮想マシンについてインストールが完了した後に構成情報記憶部22に記憶される情報の例を示す図である。
[仮想マシン生成装置による処理フロー]
次に、図5−1および図5−2を用いて、実施例1に係る仮想マシン生成装置10による処理の流れを説明する。図5−1および図5−2は、実施例1に係る仮想マシン生成装置10による処理の流れを説明するためのフローチャートである。
図5−1に示すように、仮想マシン生成装置10は、新たに作成される仮想マシン名が入力されると(ステップS101肯定)、入力された仮想マシン名が構成情報記憶部22に未登録であるか否かを判定する(ステップS102)。
そして、仮想マシン生成装置10は、入力されたマシン名が構成情報記憶部22に未登録である場合に(ステップS102肯定)、CPU数、メモリ量およびディスク容量であるリソースの入力を受け付ける(ステップS103)。
続いて、仮想マシン生成装置10は、受け付けられたリソースが同一の仮想マシンが構成情報記憶部22に未登録であるか否かを判定する(ステップS104)。その後、仮想マシン生成装置10は、リソースが同一の仮想マシンが構成情報記憶部22に未登録である場合に(ステップS104肯定)、構成情報記憶部22に記憶されるインストールフラグを「TRUE」に更新する(ステップS105)。
また、仮想マシン生成装置10は、リソースが同一の仮想マシンが構成情報記憶部22に登録されている場合に(ステップS104否定)、構成情報記憶部22に記憶されるインストールフラグを「FALSE」に更新する(ステップS106)。そして、仮想マシン生成装置10は、構成情報記憶部22に記憶されているリソースが同一である仮想マシンのマシン名を取得し、取得された仮想マシン名を「コピー元仮想マシン名」として設定する(ステップS107)。
続いて、仮想マシン生成装置10は、入力された固有情報とリソースとを構成情報記憶部22に格納して(ステップS108)、リソースが同一の仮想マシンが構成情報記憶部22に登録されていない構成情報を作成する(ステップS109)。その後、仮想マシン生成装置10は、新たに導入する台数分の仮想マシンの構成情報が入力されたか否かを判定する(ステップS110)。
そして、仮想マシン生成装置10は、新たに導入する台数分の仮想マシンの構成情報が入力された場合に(ステップS110肯定)、図5−2に示すように、構成情報記憶部22に記憶されるインストールフラグが「TRUE」であるか否かを判定する(ステップS111)。
続いて、仮想マシン生成装置10は、構成情報記憶部22に記憶されるインストールフラグが「TRUE」である場合に(ステップS111肯定)、仮想マシン識別子記憶部21を参照して、MACアドレスとUUIDとを重複しないように設定する(ステップS112)。
その後、構成情報記憶部22に記憶される情報に基づいて仮想マシンの生成(ステップS113)とゲストOSのインストール(ステップS114)とが行われた仮想マシン生成装置10は、構成情報記憶部22に記憶されるインストールフラグを「FALSE」に更新する(ステップS115)。そして、仮想マシン生成装置10は、構成情報記憶部22に記憶されるインストールフラグにおいて「TRUE」が存在しない場合に(ステップS116肯定)、処理を終了する。
また、仮想マシン生成装置10は、ステップS111において、構成情報記憶部22に記憶されるインストールフラグが「FALSE」である場合に(ステップS111否定)、構成情報記憶部22に記憶される「コピー元仮想マシン名」を取得する(ステップS117)。
そして、仮想マシン生成装置10は、取得された「コピー元仮想マシン名」に対応する仮想マシンのOSのインストールが完了している場合に(ステップS118肯定)、取得された仮想マシンの固有情報、リソースおよび構成情報をコピーして上書きする(ステップS119)。
続いて、仮想マシン生成装置10は、構成情報記憶部22に記憶される「マシン名」が重複しないように設定し(ステップS120)、仮想マシン識別子記憶部21を参照して、MACアドレスとUUIDとを重複しないように設定する(ステップS121)。
その後、仮想マシン生成装置10は、構成情報記憶部22に記憶される「コピー元仮想マシン名」の仮想マシンのディスクをコピーすることによりOSをインストールする(ステップS122)。そして、仮想マシン生成装置10は、構成情報記憶部22に記憶されるOSをインストールされた仮想マシンに対応する「コピー元仮想マシン名」を「NULL」に更新する(ステップS123)。
続いて、仮想マシン生成装置10は、構成情報記憶部22に記憶されるインストールフラグが「FALSE」かつコピー元仮想マシン名が取得できない(「NULL」である)か否かの判定を行ない(ステップS124)、全ての導入台数分が「FALSE」および「NULL」である場合に(ステップS124肯定)、処理を終了する。
[実施例1による効果]
上述したように、仮想マシン生成装置10は、新たに仮想マシンを生成する場合に、リソースの入力を受け付けて、受け付けられたリソースと同一のリソースを有する仮想マシンのOSをコピーすることにより、新たに生成する仮想マシンのOSをインストールするので、高速に信頼性の高い仮想マシンを生成することが可能である。
つまり、仮想マシン生成装置10は、同一のリソースを有する仮想マシンのOSをコピーすることにより、新たに生成する仮想マシンのOSをインストールすることができる結果、新たに作成する仮想マシンのインストールに際して人手作業が必要となる従来技術と比較して、高速に信頼性の高い仮想マシンを生成することが可能である。
例えば、仮想マシン生成装置10は、仮想マシンを一意に識別するUUIDとMACアドレスとを対応付けて仮想マシン識別子記憶部21に記憶する。また、仮想マシン生成装置10は、仮想マシンの固有情報である「マシン名」に対応付けて、仮想マシンの資源情報を示す「CPU数」、「メモリ量」および「ディスク容量」などのリソースと、当該「マシン名」に対応する仮想マシンの複製による導入の可否を示す「インストールフラグ」と、固有情報、リソースおよび構成情報をコピーしたコピー元の仮想マシンの固有情報を示す「コピー元仮想マシン名」と、仮想マシンのOSを動作させるための様々な情報である構成情報とを構成情報記憶部22に記憶する。そして、仮想マシン生成装置10は、新たな仮想マシンが作成される場合に、作成される仮想マシンの固有情報「VM3」と、CPU数「2」、メモリ量「1024」およびディスク容量「20480」との入力を受け付ける。続いて、仮想マシン生成装置10は、受け付けられたリソースと同一のリソースが構成情報記憶部22に記憶されているか否かを判定する。その後、仮想マシン生成装置10は、受け付けられたリソースと同一のリソースが構成情報記憶部22に記憶されていると判定された場合に、当該同一のリソースを有する仮想マシンのマシン名を取得して構成情報記憶部22のコピー元仮想マシン名に格納する。そして、仮想マシン生成装置10は、構成情報記憶部22に記憶されるインストールフラグを「FALSE」に設定する。続いて、仮想マシン生成装置10は、格納されたコピー元仮想マシン名に基づいて、同一のリソースを有する仮想マシンの固有情報、リソースおよび構成情報をコピーして上書きする。その後、仮想マシン生成装置10は、新たな仮想マシンを生成して、コピー元仮想マシン名に対応する仮想マシンのOSをコピーすることにより、作成された新たな仮想マシンのOSをインストールする。そして、仮想マシン生成装置10は、コピーによるインストールが完了したとしてインストールフラグを「FALSE」に更新する。続いて、仮想マシン生成装置10は、コピーされたことによって同一となっている固有情報について、インストールされた仮想マシンの固有情報が重複しないように設定する。その後、仮想マシン生成装置10は、インストールされた仮想マシンを一意に識別するUUIDとMACアドレスとを仮想マシン識別子記憶部21に記憶される情報と重複しないように設定する。
また、仮想マシン生成装置10は、新たに複数の仮想マシンのOSをインストールする場合に、コピーを行うべきかテンプレートから作成するべきかの判断を人手により行う必要がないので、人手による操作が簡易化されるとともに、工数を削減することが可能である。
また、仮想マシン生成装置10は、構成情報記憶部22に導入される全ての仮想マシンの様々な情報を記憶するので、各仮想マシンによるOSの動作における運用保守時に、当該構成情報記憶部22を確認して必要となる仮想マシンや不要となる仮想マシンの判別を容易に行うことが可能である。
さて、これまで実施例1について説明したが、開示の仮想マシン生成装置、仮想マシン生成方法および仮想マシン生成プログラムは上述した実施例以外にも、種々の異なる形態にて実施されてよいものである。そこで、(1)構成情報記憶部に記憶される情報、(2)システム構成、(3)プログラム、において異なる実施例を説明する。
(1)構成情報記憶部に記憶される情報
上記実施例1では、導入する全ての仮想マシンの情報を構成情報記憶部22が記憶する場合を説明したが、開示の仮想マシン生成装置、仮想マシン生成方法および仮想マシン生成プログラムはこれに限定されるものではなく、OSのコピーによるインストールのための情報のみを構成情報記憶部22が記憶することとしても良い。
具体的には、仮想マシン生成装置10は、受け付けたリソースと同一のリソースが構成情報記憶部22に記憶されている場合に、当該受け付けたリソースを構成情報記憶部22に格納することなく、同一のリソースを有する仮想マシンのOSをコピーしてインストールする。また、仮想マシン生成装置10は、受け付けたリソースと同一のリソースが構成情報記憶部22に記憶されていない場合に、当該受け付けたリソースを構成情報記憶部22に格納して上記実施例1と同様の処理を行う。
つまり、仮想マシン生成装置10は、構成情報記憶部22に記憶される情報を、同一リソースを有する仮想マシンのOSをコピーするために必要な最低限の情報のみを記憶する記憶部として利用する。この結果、仮想マシン生成装置10は、構成情報記憶部22に記憶されるデータ量を削減することが可能であるとともに、構成情報をコピーするなどの処理を削減することにより、処理負荷を軽減することが可能である。
(2)システム構成
また、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメタを含む情報(例えば、図2に示した構成情報記憶部22に記憶される情報など)については、特記する場合を除いて任意に変更することができる。
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、例えば、仮想マシン識別子記憶部21と構成情報記憶部22とを、UUIDとMACアドレスとに対応付けて、固有情報、リソースおよび構成情報を記憶する「仮想マシン構成情報記憶部」として統合するなど、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。さらに、各装置にて行われる各処理機能は、その全部または任意の一部が、CPUおよび当該CPUにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
(3)プログラム
ところで、上記実施例では、ハードウェアロジックによって各種の処理を実現する場合を説明したが、開示の仮想マシン生成装置、仮想マシン生成方法および仮想マシン生成プログラムはこれに限定されるものではなく、あらかじめ用意されたプログラムをコンピュータで実行することによって実現するようにしてもよい。そこで、以下では、図6を用いて、上記実施例に示した仮想マシン生成装置10と同様の機能を有する仮想マシン生成プログラムを実行するコンピュータの一例を説明する。図6は、仮想マシン生成プログラムを実行するコンピュータを示す図である。
図6に示すように、仮想マシン生成装置としてのコンピュータ110は、バス180で接続されるHDD130、CPU140、ROM150およびRAM160を有する。
ROM150には、上記実施例1に示した仮想マシン生成装置10と同様の機能を発揮する仮想マシン生成プログラム、つまり、図6に示すように構成情報確認プログラム150aと、基本ソフト導入プログラム150bとが、あらかじめ記憶されている。なお、これらのプログラム150a〜プログラム150bについては、図2に示した仮想マシン生成装置10の各構成要素と同様、適宜統合または、分散してもよい。
そして、CPU140がこれらのプログラム150a〜プログラム150bをROM150から読み出して実行することで、図6に示すように、プログラム150a〜プログラム150bは、構成情報確認プロセス140aと、基本ソフト導入プロセス140bとして機能するようになる。なお、プロセス140a〜プロセス140bは、図2に示した、構成情報確認部32と、仮想マシン作成部33とに対応する。
そして、CPU140はRAM160に記録された構成情報データ160aに基づいて仮想マシン生成プログラムを実行する。
なお、上記した各プログラム150a〜プログラム150bについては、必ずしも最初からROM150に記憶させておく必要はなく、例えば、コンピュータ110に挿入されるフレキシブルディスク(FD)、CD−ROM、DVDディスク、光磁気ディスク、ICカードなどの「可搬用の物理媒体」、またはコンピュータ110の内外に備えられるHDDなどの「固定用の物理媒体」、さらには公衆回線、インターネット、LAN、WANなどを介してコンピュータ110に接続される「他のコンピュータ(またはサーバ)」などに各プログラムを記憶させておき、コンピュータ110がこれらから各プログラムを読み出して実行するようにしてもよい。
実施例1に係る仮想マシン生成装置の概要を説明するための図である。 実施例1に係る仮想マシン生成装置の構成例を示す図である。 実施例1に係る構成情報記憶部に記憶される情報の例を示す図である。 固有情報とリソースとが入力された後に構成情報記憶部に記憶される情報の例を示す図である。 全ての仮想マシンについてインストールが完了した後に構成情報記憶部に記憶される情報の例を示す図である。 実施例1に係る仮想マシン生成装置による処理の流れを説明するためのフローチャートである。 実施例1に係る仮想マシン生成装置による処理の流れを説明するためのフローチャートである。 仮想マシン生成プログラムを実行するコンピュータを示す図である。 従来技術に係る仮想マシンのOSを1台ずつインストールする手法を説明するための図である。 従来技術に係る仮想マシンのOSをコピーすることによりインストールする手法を説明するための図である。 従来技術に係る仮想マシンのテンプレートから仮想マシン毎にOSをインストールする手法を説明するための図である。
符号の説明
1 情報処理装置
2 管理OS
3 HardWare
4a〜4n 仮想マシン
10 仮想マシン生成装置
20 記憶部
21 仮想マシン識別子記憶部
22 構成情報記憶部
30 制御部
31 仮想マシン構成情報入力部
32 構成情報確認部
33 仮想マシン作成部

Claims (7)

  1. 要求に応じて生成される仮想マシンを識別する識別情報と、該仮想マシンに割り当てられたリソースを特定する特定情報とを対応付けて記憶する記憶部と、
    仮想マシンの生成要求に応じて、生成が要求された仮想マシンのリソースと一致するリソースを特定する特定情報である対象特定情報が前記記憶部に記憶されている場合に、生成が要求された前記仮想マシンを生成して、前記対象特定情報と対応付けて前記記憶部に記憶された識別情報で識別される仮想マシンのディスクであって、所定のソフトウェアのインストールがなされた仮想マシンのディスクの内容を、生成した前記仮想マシンのディスクに複製する生成処理部と、
    を有することを特徴とする情報処理装置。
  2. 前記記憶部は、前記識別情報と、前記特定情報と、第1のフラグ又は第2のフラグのいずれか一方となるインストールフラグと、前記仮想マシンのディスクの内容の複製元となる仮想マシンを識別するコピー元仮想マシン名とを含むレコードを記憶し、
    前記生成処理部は、
    前記対象特定情報が前記記憶部に記憶されている場合に、前記第2のフラグを前記インストールフラグとして含み、前記対象特定情報と対応付けて前記記憶部に記憶された識別情報を前記コピー元仮想マシン名として含み、生成が要求された仮想マシンについての前記識別情報と前記特定情報とを含むレコードを前記記憶部に格納し、
    前記対象特定情報が前記記憶部に記憶されていないと判定された場合に、前記第1のフラグを前記インストールフラグとして含み、生成が要求された仮想マシンについての前記識別情報と前記特定情報とを含むレコードを前記記憶部に格納し、
    前記インストールフラグとして第1のフラグを含むレコードについて、前記レコードに含まれるリソースを有する仮想マシンを生成し、生成した仮想マシンにOS(Operating System)を設定し、前記レコードの前記インストールフラグを前記第1のフラグから前記第2のフラグに変更する更新を行い、
    前記インストールフラグとして第2のフラグを含んで前記コピー元仮想マシン名に前記識別情報が設定されているレコードについて、前記コピー元仮想マシン名として設定された識別情報により識別される仮想マシンのディスクの内容を、新たに生成した仮想マシンに複製し、前記コピー元仮想マシン名を削除する更新を行うことを特徴とする請求項1に記載の情報処理装置。
  3. 前記生成処理部は、前記インストールフラグとして前記第2のフラグを含んで前記コピー元仮想マシン名に前記識別情報が設定されているレコードが複数ある場合に、複数ある前記レコード各々について、コピー元仮想マシン名として設定された識別情報により識別される仮想マシンのディスクの内容を、生成した仮想マシンのディスク各々に複製することを特徴とする請求項2に記載の情報処理装置。
  4. 前記生成処理部は、前記インストールフラグとして前記第2のフラグを含んで前記コピー元仮想マシン名に前記識別情報が設定されているレコードについて、前記レコードの識別情報とリソースとを、コピー元仮想マシン名として設定された識別情報を含むレコードの識別情報とリソースとに更新し、更新後のレコードの識別情報を重複しない値に更新した上で、前記コピー元仮想マシン名として設定された識別情報により識別される仮想マシンのディスクの内容を、生成した仮想マシンのディスクに複製し、前記コピー元仮想マシン名を削除する更新を行うことを特徴とする請求項3に記載の情報処理装置。
  5. 前記リソースは、CPU数、メモリ量及びディスク容量であることを特徴とする請求項1に記載の情報処理装置。
  6. 仮想マシンの生成要求を受け付ける受付ステップと、
    前記受付ステップにより受け付けられた前記生成要求により生成が要求された仮想マシンのリソースと一致するリソースを特定する特定情報である対象特定情報が、要求に応じて生成される仮想マシンを識別する識別情報と、該仮想マシンに割り当てられたリソースを特定する特定情報とを対応付けて記憶する記憶部に記憶されている場合に、生成が要求された前記仮想マシンを生成して、前記対象特定情報と対応付けて前記記憶部に記憶された識別情報で識別される仮想マシンのディスクであって、所定のソフトウェアのインストールがなされた仮想マシンのディスクの内容を、生成した前記仮想マシンのディスクに複製する生成処理ステップと
    を含んだことを特徴とする情報処理方法。
  7. 仮想マシンの生成要求を受け付ける受付手順と、
    前記受付手順により受け付けられた前記生成要求により生成が要求された仮想マシンのリソースと一致するリソースを特定する特定情報である対象特定情報が、要求に応じて生成される仮想マシンを識別する識別情報と、該仮想マシンに割り当てられたリソースを特定する特定情報とを対応付けて記憶する記憶部に記憶されている場合に、生成が要求された前記仮想マシンを生成して、前記対象特定情報と対応付けて前記記憶部に記憶された識別情報で識別される仮想マシンのディスクであって、所定のソフトウェアのインストールがなされた仮想マシンのディスクの内容を、生成した前記仮想マシンのディスクに複製する生成処理手順と
    をコンピュータに実行させることを特徴とする情報処理プログラム。
JP2008193956A 2008-07-28 2008-07-28 情報処理装置、情報処理方法および情報処理プログラム Active JP5446157B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2008193956A JP5446157B2 (ja) 2008-07-28 2008-07-28 情報処理装置、情報処理方法および情報処理プログラム
US12/457,440 US8843922B2 (en) 2008-07-28 2009-06-10 Cloning virtual machines based on identical hardware configuration

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008193956A JP5446157B2 (ja) 2008-07-28 2008-07-28 情報処理装置、情報処理方法および情報処理プログラム

Publications (2)

Publication Number Publication Date
JP2010033280A JP2010033280A (ja) 2010-02-12
JP5446157B2 true JP5446157B2 (ja) 2014-03-19

Family

ID=41569791

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008193956A Active JP5446157B2 (ja) 2008-07-28 2008-07-28 情報処理装置、情報処理方法および情報処理プログラム

Country Status (2)

Country Link
US (1) US8843922B2 (ja)
JP (1) JP5446157B2 (ja)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8793678B2 (en) * 2008-08-25 2014-07-29 Power-One Italy S.P.A. Hardware virtualization system
US8019861B2 (en) * 2009-01-29 2011-09-13 Vmware, Inc. Speculative virtual machine resource scheduling
WO2012042607A1 (ja) * 2010-09-29 2012-04-05 株式会社トライテック 分散コンピューティングシステム
JP5417303B2 (ja) * 2010-11-11 2014-02-12 株式会社日立製作所 仮想計算機システム及びそのインストール方法
US8584121B2 (en) 2010-11-19 2013-11-12 International Business Machines Corporation Using a score-based template to provide a virtual machine
US10419281B2 (en) * 2010-12-01 2019-09-17 Xieon Networks S.À.R.L. Method and device for service provisioning in a communication network
CN102270153A (zh) * 2011-08-12 2011-12-07 曙光信息产业(北京)有限公司 一种虚拟环境下加密卡共享的方法和装置
JP2014002583A (ja) * 2012-06-19 2014-01-09 Nifty Corp 情報処理装置、情報処理システム、情報処理方法、及び、プログラム
JP2014096675A (ja) * 2012-11-08 2014-05-22 Hitachi Ltd 通信装置、及び、設定方法
CN107077403B (zh) 2014-08-21 2020-10-09 卫盟软件股份公司 用于用户授权的备份服务器、方法及计算机程序产品
CN110209466B (zh) * 2018-05-17 2023-10-13 腾讯科技(深圳)有限公司 资源配置方法、资源配置装置及存储介质
US11625235B2 (en) * 2021-03-26 2023-04-11 Hewlett Packard Enterprise Development Lp Program installation in a virtual environment
EP4148573A1 (en) * 2021-09-14 2023-03-15 TTTech Auto AG Method to execute a mode-transition in a multi-mode computer system

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6802062B1 (en) * 1997-04-01 2004-10-05 Hitachi, Ltd. System with virtual machine movable between virtual machine systems and control method
JP2002007149A (ja) * 2000-06-23 2002-01-11 Nec Corp 仮想計算機のシステム構成情報生成システム及び方法並びに記録媒体
JP2003025688A (ja) * 2001-07-12 2003-01-29 Fujitsu Ltd プリンタのファームウエアインストール方法、プリンタ及びプリンタシステム
US7577722B1 (en) * 2002-04-05 2009-08-18 Vmware, Inc. Provisioning of computer systems using virtual machines
US20090157544A1 (en) * 2002-08-20 2009-06-18 Piccionelli Gregory A Record-keeping system for transmission and production of content
US8209680B1 (en) * 2003-04-11 2012-06-26 Vmware, Inc. System and method for disk imaging on diverse computers
US7302608B1 (en) * 2004-03-31 2007-11-27 Google Inc. Systems and methods for automatic repair and replacement of networked machines
US7506115B2 (en) * 2004-10-28 2009-03-17 Intel Corporation Incremental provisioning of software
JP4704043B2 (ja) * 2005-01-07 2011-06-15 富士通株式会社 移動処理プログラム、情報処理装置、コンピュータシステム及び移動処理プログラムを格納したコンピュータ読み取り可能な記録媒体
JP4702127B2 (ja) * 2006-03-22 2011-06-15 日本電気株式会社 仮想計算機システム及びその物理リソース再構成方法並びにプログラム
US9213542B2 (en) * 2006-03-30 2015-12-15 Microsoft Technology Licensing, Llc Creating templates of offline resources
US8336046B2 (en) * 2006-12-29 2012-12-18 Intel Corporation Dynamic VM cloning on request from application based on mapping of virtual hardware configuration to the identified physical hardware resources
US8108855B2 (en) * 2007-01-02 2012-01-31 International Business Machines Corporation Method and apparatus for deploying a set of virtual software resource templates to a set of nodes
US8677351B2 (en) * 2007-03-29 2014-03-18 Vmware, Inc. System and method for delivering software update to guest software on virtual machines through a backdoor software communication pipe thereof
US8458694B2 (en) * 2007-04-30 2013-06-04 International Business Machines Corporation Hypervisor with cloning-awareness notifications
US20100211944A1 (en) * 2007-09-12 2010-08-19 Mitsubishi Electric Corporation Information processing apparatus
JP4995015B2 (ja) * 2007-09-13 2012-08-08 株式会社日立製作所 仮想計算機の実行可否検査方法
JP5142678B2 (ja) * 2007-11-15 2013-02-13 株式会社日立製作所 デプロイ方法およびシステム
US20090228576A1 (en) * 2008-03-06 2009-09-10 Rosenan Avner System and method for testing software
US8484355B1 (en) * 2008-05-20 2013-07-09 Verizon Patent And Licensing Inc. System and method for customer provisioning in a utility computing platform
US8577845B2 (en) * 2008-06-13 2013-11-05 Symantec Operating Corporation Remote, granular restore from full virtual machine backup
US8387045B2 (en) * 2009-03-12 2013-02-26 International Business Machines Corporation Cloning image creation using virtual machine environment
US8510590B2 (en) * 2010-03-17 2013-08-13 Vmware, Inc. Method and system for cluster resource management in a virtualized computing environment

Also Published As

Publication number Publication date
JP2010033280A (ja) 2010-02-12
US8843922B2 (en) 2014-09-23
US20100023939A1 (en) 2010-01-28

Similar Documents

Publication Publication Date Title
JP5446157B2 (ja) 情報処理装置、情報処理方法および情報処理プログラム
EP2513789B1 (en) A secure virtualization environment bootable from an external media device
KR101928127B1 (ko) 애플리케이션용 선택적 파일 액세스 기법
US8327096B2 (en) Method and system for efficient image customization for mass deployment
JP2004021981A (ja) イメージベースのソフトウェアインストール
WO2009081530A1 (ja) 仮想計算機システム、ポリシ強制システム、ポリシ強制方法及び仮想計算機制御用プログラム
US11762651B2 (en) Software and firmware updates in a combined single pane of glass interface
JP2013012196A (ja) ハードウェア抽象化を用いたソフトウェアアプリケーション実行の方法と装置
JP5248912B2 (ja) サーバ計算機、計算機システムおよびファイル管理方法
US11669325B2 (en) Desired state model for managing lifecycle of virtualization software
JP2016197399A (ja) オペレーティング・システム・リソースに対する機械語のネイティブイメージのアクセス制御のシステム及び方法
US11269609B2 (en) Desired state model for managing lifecycle of virtualization software
WO2013088301A1 (en) Maintenance of offline virtual machines based on maintenance register
WO2018092206A1 (ja) 情報処理装置、デバイス割り当て方法およびデバイス割り当てプログラム
CN113826072B (zh) 系统管理模式中的代码更新
CN113946854B (zh) 一种文件访问控制方法、装置及计算机可读存储介质
US11249780B2 (en) VM creation by installation media probe
US20230342181A1 (en) Validation of combined software/firmware updates
JP6497157B2 (ja) 情報管理装置、情報管理方法、情報管理プログラム、データ構造、及び、ソフトウェア資産管理システム
JP2010287081A (ja) ライセンス管理装置、ライセンス管理方法及びそのプログラム
US11573779B2 (en) Creating and upgrading of solutions for deployment in a virtualized computing environment
US11435997B2 (en) Desired state model for managing lifecycle of virtualization software installed in heterogeneous cluster of hosts
US11435996B2 (en) Managing lifecycle of solutions in virtualization software installed in a cluster of hosts
US11995452B2 (en) Firmware memory map namespace for concurrent containers
US11347497B1 (en) Uniform software and firmware management of clusters of heterogeneous server hardware

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110217

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120523

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120529

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120730

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130305

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130507

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: 20131203

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20131216

R150 Certificate of patent or registration of utility model

Ref document number: 5446157

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150