(57)【要約】  共通な構成要素を有する仮想マシンを用いて、異なる構成のシステム構築を行う場合に、構築する複数のシステムに応じた仮想マシンのバイナリファイルを、効率的に生成する。  システム構築装置１００は、システム情報取得部１２０と、ＶＭイメージ生成部１１０とを含む。システム情報取得部１２０は、仮想マシンと当該仮想マシン上に配備される追加モジュールとを含むシステムの複数の構成情報を取得する。ＶＭイメージ生成部１１０は、取得された構成情報の間で、仮想マシンが一致し、かつ、少なくとも１つの追加モジュールが一致する場合、一致した仮想マシンと追加モジュールとを動作させるためのバイナリファイルを生成する。
2014002421.tif 000002
【特許請求の範囲】
【請求項１】
仮想マシンと当該仮想マシン上に配備される追加モジュールとを含むシステムの複数の構成情報を取得する取得手段と、
前記取得された構成情報の間で、前記仮想マシンが一致し、かつ、少なくとも１つの前記追加モジュールが一致する場合、前記一致した仮想マシンと追加モジュールとを動作させるためのバイナリファイルを生成する生成手段とを備えるシステム構築装置。
【請求項２】
前記複数の構成情報の各々は、構成要素である、前記仮想マシンを構築するための基本ＶＭイメージ、及び、当該仮想マシン上に配備される前記追加モジュールの識別子を示し、
前記生成手段は、前記複数の構成情報の内、基本ＶＭイメージが同一であり、追加モジュールの内の少なくとも一つが同一である組を抽出し、当該抽出した組に係る基本ＶＭイメージ、及び、同一の追加モジュールを構成要素としたＶＭイメージを前記バイナリファイルとして生成し、当該ＶＭイメージの識別子と当該ＶＭイメージの構成情報とを出力する、請求項１に記載のシステム構築装置。
【請求項３】
さらに、追加モジュールの各々に配備順序が付与され、
前記生成手段は、前記複数の構成情報の内、基本ＶＭイメージが同一であり、かつ、配備順序の先頭から連続した少なくとも一つの配備順序において追加モジュールが同一である組を抽出し、当該抽出した組に係る基本ＶＭイメージ、及び、配備順序の先頭から連続した配備順序における同一の追加モジュールを構成要素としたＶＭイメージを生成する請求項２に記載のシステム構築装置。
【請求項４】
前記生成手段は、複数の前記組の内、同一である追加モジュールの数が最も多い組を選択する請求項２または３に記載のシステム構築装置。
【請求項５】
前記生成手段は、複数の前記組の内、当該組をもとに生成されるＶＭイメージの構成情報における、各追加モジュールの配備に要する負荷をもとに算出される、当該ＶＭイメージの処理効率向上度が最も大きい組を選択する請求項２または３に記載のシステム構築装置。
【請求項６】
さらに、
前記生成手段により生成されたＶＭイメージの各々の識別子対応に、当該ＶＭイメージの構成情報を記憶するＶＭイメージ情報記憶手段と、
構築対象システムの構成情報が入力された場合に、前記ＶＭイメージ記憶手段に記憶されたＶＭイメージの内、基本ＶＭイメージが構築対象システムの基本ＶＭイメージと同一であり、全追加モジュールが前記構築対象システムの追加モジュールに含まれるＶＭイメージを抽出し、当該抽出したＶＭイメージ、及び、前記構築対象システムの追加モジュールから当該抽出したＶＭイメージの追加モジュールを除いた追加モジュールの識別子を構成要素として、前記構築対象システムの構成情報を変換し、出力する構成情報変換手段を備えた請求項２乃至５のいずれかに記載のシステム構築装置。
【請求項７】
さらに、追加モジュールの各々に配備順序が付与され、
前記構成情報変換手段は、前記ＶＭイメージ記憶手段に記憶されたＶＭイメージの内、基本ＶＭイメージが前記構築対象システムの基本ＶＭイメージと同一であり、全追加モジュールが前記構築対象システムの追加モジュールが当該ＶＭイメージの全追加モジュールに含まれ、全追加モジュールの配備順序が対応する前記構築対象システムの追加モジュールの配備順序と同一であるＶＭイメージを抽出する請求項６に記載のシステム構築装置。
【請求項８】
前記構成情報変換手段は、前記抽出したＶＭイメージの内、追加モジュールの数が最も多いＶＭイメージを選択する請求項６または７に記載のシステム構築装置。
【請求項９】
前記構成情報変換手段は、前記抽出したＶＭイメージの内、各追加モジュールの配備に要する負荷をもとに算出される、当該ＶＭイメージの処理効率向上度が最も大きいＶＭイメージを選択する請求項６または７に記載のシステム構築装置。
【請求項１０】
前記ＶＭイメージ情報記憶手段は、さらに、前記変換された構成情報に従って構築されたシステムのＶＭイメージの識別子に対応付けて、当該変換された構成情報を記憶する請求項６乃至９のいずれかに記載のシステム構築装置。
【請求項１１】
前記構成情報変換手段は、さらに、前記抽出したＶＭイメージが基本ＶＭイメージに設定されたＶＭイメージであり、前記構築対象システムの追加モジュールがＶＭイメージの全追加モジュールを含むＶＭイメージを抽出する請求項１０に記載のシステム構築装置。
【請求項１２】
前記生成手段は、前記構築対象システムの構成情報が新たに入力された場合に、当該新たな前記構築対象システムの構成情報を含む前記複数の構成情報をもとに、ＶＭイメージを生成する請求項６乃至１１のいずれかに記載のシステム構築装置。
【請求項１３】
さらに、前記ＶＭイメージ記憶手段に記憶されたＶＭイメージの内、システム構築における利用頻度が所定の閾値以下のＶＭイメージを削除するＶＭイメージ削除手段を備えた、請求項６乃至１２のいずれかに記載のシステム構築装置。
【請求項１４】
さらに、前記ＶＭイメージ情報記憶手段に記憶されたＶＭイメージの内、各追加モジュールの配備に要する負荷をもとに算出される、当該ＶＭイメージの処理効率向上度が所定の閾値以下のＶＭイメージを削除するＶＭイメージ削除手段を備えた、請求項６乃至１２のいずれかに記載のシステム構築装置。
【請求項１５】
さらに、前記ＶＭイメージ情報記憶手段に記憶されたＶＭイメージのデータサイズの総和が所定の閾値以上の場合に、前記ＶＭイメージ情報記憶手段に記憶されたＶＭイメージのいずれかを削除するＶＭイメージ削除手段を備えた、請求項６乃至１２のいずれかに記載のシステム構築装置。
【請求項１６】
仮想マシンと当該仮想マシン上に配備される追加モジュールとを含むシステムの複数の構成情報を取得し、
前記取得された構成情報の間で、前記仮想マシンが一致し、かつ、少なくとも１つの前記追加モジュールが一致する場合、前記一致した仮想マシンと追加モジュールとを動作させるためのバイナリファイルを生成する、システム構築方法。
【請求項１７】
コンピュータに、
仮想マシンと当該仮想マシン上に配備される追加モジュールとを含むシステムの複数の構成情報を取得し、
前記取得された構成情報の間で、前記仮想マシンが一致し、かつ、少なくとも１つの前記追加モジュールが一致する場合、前記一致した仮想マシンと追加モジュールとを動作させるためのバイナリファイルを生成する、処理を実行させるプログラムを格納する、コンピュータが読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はシステム構築装置、及び、システム構築方法に関する。
【背景技術】
【０００２】
システム構築とは、システムが稼動するために必要な構成要素である、ＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）、ミドルウェア（以下、ＭＷ）、アプリケーション（以下、ＡＰ）等のプログラムモジュール（以下、モジュール）を、コンピュータ上に配備（インストール、及び、設定）する作業である。【０００３】
近年、システム構築に、仮想マシン（ＶＭ（Ｖｉｒｔｕａｌ  Ｍａｃｈｉｎｅ））の技術が用いられてきている。仮想マシンを用いたシステム構築では、コンピュータ上に、予め生成された、特定の構成のシステムの仮想マシンを構築するためのバイナリファイルであるＶＭイメージを配備することによって、当該特定の構成のシステムが容易に構築される。【０００４】
このような仮想マシンを用いて異なる構成のシステムを効率的に構築する方法が、例えば、非特許文献１に開示されている。非特許文献１に開示された技術では、システム間で共通なＯＳを構成要素とする仮想マシンを、ＶＭイメージを用いて構築し、当該仮想マシン上に、システムごとに異なるＭＷモジュールやＡＰモジュールを配備することによって、各システムを構築する。【０００５】
なお、関連技術として、特許文献１には、クライアント上で用いる仮想イメージの差分データをサーバ上で管理する技術が開示されている。また、特許文献２には、運用系システムとテスト系システムを、それぞれ、仮想マシンによって構築する技術が開示されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１２−０７８８９３号公報
【特許文献２】特開２０１０−１０２４１４号公報
【非特許文献】
【０００７】
【非特許文献１】Cristian Magherusan-Stanciu, et al.、"Grid Site Installation, Management and Monitoring Application"、Proc. of 10th International Symposium on Parallel and Distributed Computing、IEEE Computer Society、2011、p.25-32
【発明の概要】
【発明が解決しようとする課題】
【０００８】
上述の非特許文献１では、管理者等が、構築する複数のシステムの構成に応じて、共通な構成要素を有する仮想マシンのバイナリファイルを生成する必要がある。ここで、データセンタのように、多様な異なる構成のシステムを構築する場合、このようなバイナリファイルを生成するための、管理者等の負担が大きくなるという課題がある。【０００９】
本発明の目的は、上述の課題を解決し、共通な構成要素を有する仮想マシンを用いて、異なる構成のシステム構築を行う場合に、構築する複数のシステムの構成に応じた仮想マシンのバイナリファイルを、効率的に生成できるシステム構築装置、及び、システム構築方法を提供することにある。
【課題を解決するための手段】
【００１０】
本発明の一態様におけるシステム構築装置は、仮想マシンと当該仮想マシン上に配備される追加モジュールとを含むシステムの複数の構成情報を取得する取得手段と、前記取得された構成情報の間で、前記仮想マシンが一致し、かつ、少なくとも１つの前記追加モジュールが一致する場合、前記一致した仮想マシンと追加モジュールとを動作させるためのバイナリファイルを生成する生成手段とを備える。【００１１】
本発明の一態様におけるシステム構築方法は、仮想マシンと当該仮想マシン上に配備される追加モジュールとを含むシステムの複数の構成情報を取得し、前記取得された構成情報の間で、前記仮想マシンが一致し、かつ、少なくとも１つの前記追加モジュールが一致する場合、前記一致した仮想マシンと追加モジュールとを動作させるためのバイナリファイルを生成する。【００１２】
本発明の一態様におけるコンピュータが読み取り可能な記録媒体は、コンピュータに、仮想マシンと当該仮想マシン上に配備される追加モジュールとを含むシステムの複数の構成情報を取得し、前記取得された構成情報の間で、前記仮想マシンが一致し、かつ、少なくとも１つの前記追加モジュールが一致する場合、前記一致した仮想マシンと追加モジュールとを動作させるためのバイナリファイルを生成する、処理を実行させるプログラムを格納する。
【発明の効果】
【００１３】
本発明の効果は、共通な構成要素を有する仮想マシンを用いて、異なる構成のシステム構築を行う場合に、構築する複数のシステムに応じた仮想マシンのバイナリファイルを、効率的に生成できることである。
【図面の簡単な説明】
【００１４】
【図１】本発明の第１の実施の形態の特徴的な構成を示すブロック図である。
【図２】本発明の第１の実施の形態における、システム構築システムの構成を示すブロック図である。
【図３】本発明の第１の実施の形態における、システム構成情報の例を示す図である。
【図４】本発明の第１の実施の形態における、システム情報１６１の例を示す図である。
【図５】本発明の第１の実施の形態における、ＶＭイメージ構成情報の生成例を示す図である。
【図６】本発明の第１の実施の形態における、ＶＭイメージ情報１７１の例を示す図である。
【図７】本発明の第１の実施形態における、システム構成情報の変換例を示す図である。
【図８】本発明の第１の実施の形態における、ＶＭイメージ利用履歴１８１の例を示す図である。
【図９】本発明の第１の実施の形態における、追加構築処理履歴１９１の例を示す図である。
【図１０】本発明の第１の実施の形態における、ＶＭイメージの利用頻度の算出結果の例を示す図である。
【図１１】本発明の第１の実施の形態における、ＶＭイメージの処理効率向上度の算出結果の例を示す図である。
【図１２】本発明の第１の実施の形態における、ＶＭイメージ生成処理を示すフローチャートである。
【図１３】本発明の第１の実施の形態における、システム構築処理を示すフローチャートである。
【図１４】本発明の第１の実施の形態における、ＶＭイメージ削除処理を示すフローチャートである。
【図１５】本発明の第２の実施の形態における、システム構成情報の例を示す図である。
【図１６】本発明の第２の実施の形態における、システム情報１６１の例を示す図である。
【図１７】本発明の第２の実施の形態における、ＶＭイメージ構成情報の生成例を示す図である。
【図１８】本発明の第２の実施の形態における、ＶＭイメージ構成情報に対する、処理効率向上度の算出結果の例を示す図である。
【図１９】本発明の第２の実施の形態における、ＶＭイメージ情報１７１の例を示す図である。
【図２０】本発明の第２の実施形態における、システム構成情報の変換例を示す図である。
【図２１】本発明の第３の実施の形態における、システム構成情報の例を示す図である。
【図２２】本発明の第３の実施の形態における、ＶＭイメージ情報１７１の例を示す図である。
【図２３】本発明の第３の実施形態における、システム構成情報の変換例を示す図である。
【発明を実施するための形態】
【００１５】
（第１の実施の形態）
次に、本発明の第１の実施の形態について説明する。
【００１６】
はじめに、本発明の第１の実施の形態の構成について説明する。図２は、本発明の第１の実施の形態における、構築システムの構成を示すブロック図である。
【００１７】
図２を参照すると、本発明の第１の実施の形態の構築システムは、システム構築装置１００と処理装置２００とを含む。システム構築装置１００と処理装置２００とは、ネットワーク等により通信可能に接続される。
【００１８】
本発明の第１の実施の形態においては、システムの構成は、基本ＶＭイメージ、及び、追加モジュールを構成要素として定義される。システムは、処理装置２００上に基本ＶＭイメージを配備することにより仮想マシンを構築し、さらに、当該仮想マシン上に、追加モジュールを配備することにより構築される。
【００１９】
ここで、配備とは、処理装置２００にＶＭイメージやモジュールの識別子を送信し、処理装置２００に対して、当該ＶＭイメージによる仮想マシンの構築、または、仮想マシン上でのモジュールのインストールを実行させることである。
【００２０】
ＶＭイメージは、処理装置２００上で、特定のモジュールにより構成される仮想マシンを起動させるためのバイナリファイル（イメージファイル）である。ＶＭイメージは、例えば、特定のモジュールを配備することによって構築される仮想マシンの、ある時点の記憶部上のデータをもとに生成される。ＶＭイメージは、配備（インストール）された状態の各モジュール、及び、各モジュールに対する設定（コンフィギュレーション）を統合したバイナリデータを含む。また、ＶＭイメージは、仮想マシンが必要とするリソース（ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）の数、メモリサイズ、ディスクサイズ等）に関する情報（リソース情報）を含んでいてもよい。ＶＭイメージを処理装置２００上に配備することにより、特定のモジュールの各々を個別に配備することなく、処理装置２００上に、特定のモジュールにより構成される仮想マシンを構築できる。
【００２１】
基本ＶＭイメージは、システムを構築するにあたって、最初に構築される、基礎となる仮想マシンのＶＭイメージである。基本ＶＭイメージは、例えば、複数のシステム間で共通なＯＳを構成要素とする仮想マシンのＶＭイメージである。
【００２２】
追加モジュールは、基本ＶＭイメージにより構築された仮想マシン上に配備されるモジュールである。追加モジュールは、例えばＭＷ、ＡＰ等、システムに特有なモジュールである。
【００２３】
システム構築装置１００は、利用者等から入力されたシステム構築要求に含まれるシステムの構成情報（システム構成情報）に従って、処理装置２００上にシステムを構築する。
【００２４】
図３は、本発明の第１の実施の形態における、システム構成情報の例を示す図である。
【００２５】
本発明の第１の実施の形態においては、システムや後述するＶＭイメージの構成情報は、システムやＶＭイメージを構築するための手順（構築手順）として記載される。構成情報は、基本ＶＭイメージの識別子（基本ＶＭイメージＩＤ）と、当該基本ＶＭイメージを用いて構築された仮想マシン上で実行される追加構築処理のリストとを含む。ここで、追加構築処理のリストにおける先頭からの順序が、各追加構築処理を実行する順序を示す。追加構築処理は、仮想マシン上のＯＳ等で動作するインストールプログラムを実行するためのコマンドと、当該インストールプログラムが配備（インストール）すべきモジュールの識別子を含む。
【００２６】
システム構成情報では、基本ＶＭイメージとして、管理者等により予め生成されている、例えば、複数のシステム間で共通なＯＳ、及び、リソース情報を含むＶＭイメージ（初期ＶＭイメージ）が指定される。また、追加構築処理として、例えばＭＷ、ＡＰ等、システムに特有なモジュールを配備するための処理が指定される。
【００２７】
図３に示されるシステム構成情報では、基本ＶＭイメージに、初期ＶＭイメージ「ＶＭ００１」、追加構築処理に「Ｉｎｓｔａｌｌ＿Ａ」、「Ｉｎｓｔａｌｌ＿Ｃ」、「Ｉｎｓｔａｌｌ＿Ｇ」が指定されている。このシステム構成情報は、初期ＶＭイメージ「ＶＭ００１」により構築された仮想マシン上で、コマンド「Ｉｎｓｔａｌｌ」で実行されるインストールプログラムを実行することにより、モジュール「Ａ」、「Ｃ」、「Ｇ」のインストールを順番に実行することを示している。
【００２８】
なお、追加構築処理で指定されるコマンドは、仮想マシン上でモジュールのインストールができるコマンドであれば「Ｉｎｓｔａｌｌ」以外のコマンドでもよい。また、構築部１５０や仮想マシン上の所定のプログラムが、追加構築処理の記述を、仮想マシン上で実行されるコマンドに変換してもよい。
【００２９】
システム構築装置１００は、ＶＭイメージ生成部（または、生成部）１１０、システム情報取得部（または、取得部）１２０、ＶＭイメージ削除部１３０、構成情報変換部１４０、構築部１５０、システム情報記憶部１６０、ＶＭイメージ情報記憶部１７０、ＶＭイメージ利用履歴記憶部１８０、及び、追加構築処理履歴記憶部１９０を含む。
【００３０】
ここで、システム情報記憶部１６０は、システム構築要求を受け付けた各システムに係る情報であるシステム情報１６１（１６１ａ、１６１ｂ、…）を記憶する。
【００３１】
図４は、本発明の第１の実施の形態における、システム情報１６１の例を示す図である。図４に示すように、システム情報１６１は、システム構築要求を受け付けた時刻、及び、当該システム構築要求に含まれるシステム構成情報を含む。
【００３２】
システム情報取得部１２０は、システム情報記憶部１６０からシステム構成情報を取得する。
【００３３】
ＶＭイメージ生成部１１０は、取得された複数のシステム構成情報をもとに、異なるシステム間で共通の基本ＶＭイメージとして利用可能なＶＭイメージを生成する。
【００３４】
ＶＭイメージ情報記憶部１７０は、生成済みの各ＶＭイメージに係る情報であるＶＭイメージ情報１７１（１７１ａ、１７１ｂ、…）を記憶する。
【００３５】
図６は、本発明の第１の実施の形態における、ＶＭイメージ情報１７１の例を示す図である。図６の例では、ＶＭイメージ情報１７１は、生成済みのＶＭイメージの識別子（ＶＭイメージＩＤ）、当該ＶＭイメージの構成情報（ＶＭイメージ構成情報）、及び、当該ＶＭイメージのデータサイズを含む。なお、図６において、ＶＭイメージ「ＶＭ１０１」のように、ＶＭイメージ構成情報が設定されているＶＭイメージは、ＶＭイメージ生成部１１０により生成されたＶＭイメージである。また、ＶＭイメージ「ＶＭ００１」のように、ＶＭイメージ構成情報が設定されていないＶＭイメージは、上述の、管理者等により予め生成された初期ＶＭイメージである。
【００３６】
構成情報変換部１４０は、利用者等から入力されたシステム構成情報を、ＶＭイメージ生成部１１０により生成されたＶＭイメージを基本ＶＭイメージに設定したシステム構成情報に変換する。
【００３７】
構築部１５０は、構成情報変換部１４０によって変換されたシステム構成情報に従って、処理装置２００上にシステムを構築する。
【００３８】
ＶＭイメージ利用履歴記憶部１８０は、ＶＭイメージ利用履歴１８１（１８１ａ、１８１ｂ、…）を記憶する。ＶＭイメージ利用履歴１８１は、ＶＭイメージが、システム構築における基本ＶＭイメージとして利用された履歴を示す。図８は、本発明の第１の実施の形態における、ＶＭイメージ利用履歴１８１の例を示す図である。図８の例では、ＶＭイメージ利用履歴１８１は、ＶＭイメージの識別子と、当該ＶＭイメージが、基本ＶＭイメージとして利用された時刻を含む。
【００３９】
追加構築処理履歴記憶部１９０は、追加構築処理履歴１９１（１９１ａ、１９１ｂ、…）を記憶する。追加構築処理履歴１９１は、追加構築処理が、システム構築において実行された履歴を示す。図９は、本発明の第１の実施の形態における、追加構築処理履歴１９１の例を示す図である。図９の例では、追加構築処理履歴１９１は、追加構築処理と、当該追加構築処理に要した処理時間を含む。なお、処理時間は、各追加構築処理の平均処理時間であってもよい。
【００４０】
ＶＭイメージ削除部１３０は、ＶＭイメージ利用履歴１８１や追加構築処理履歴１９１をもとに、ＶＭイメージを削除する。
【００４１】
ＶＭイメージ生成部１１０、システム情報取得部１２０、ＶＭイメージ削除部１３０、構成情報変換部１４０、及び、構築部１５０は、ＣＰＵとプログラムを記憶した記憶媒体を含み、プログラムに基づく制御によって動作するコンピュータであってもよい。また、システム情報記憶部１６０と、ＶＭイメージ情報記憶部１７０と、ＶＭイメージ利用履歴記憶部１８０と、追加構築処理履歴記憶部１９０とは、それぞれ個別の記憶媒体でも、１つの記憶媒体によって構成されてもよい。
【００４２】
また、システム情報記憶部１６０、ＶＭイメージ情報記憶部１７０、ＶＭイメージ利用履歴記憶部１８０、及び、追加構築処理履歴記憶部１９０の内の少なくとも一つが、システム構築装置１００と通信可能に接続される他の装置に含まれていてもよい。
【００４３】
処理装置２００は、ＣＰＵ、メモリ、ディスク等のリソースを備えたコンピュータであり、ＶＭ管理部２１０、ＶＭイメージ記憶部２３０、及び、モジュール記憶部２４０を含む。
【００４４】
ＶＭ管理部２１０は、例えばハイパーバイザ等、仮想マシン（ＶＭ２２０）を管理するプログラムである。ＶＭ管理部２１０は、システム構築装置１００から指定されたＶＭイメージに含まれるリソース情報に従って、構築する仮想マシンに必要なリソースを確保する。そして、ＶＭ管理部２１０は、ＶＭイメージに含まれるバイナリデータを用いてＶＭ２２０を構築する。また、ＶＭ管理部２１０は、ＶＭ２２０上に構築されたシステムについて、ＶＭイメージを生成する。
【００４５】
ＶＭ２２０上のインストールプログラムは、システム構築装置１００から指定されたモジュールをＶＭ２２０上にインストールする。
【００４６】
ＶＭイメージ記憶部２３０は、ＶＭイメージ、及び、管理者等により予め生成された初期ＶＭイメージの実体（データファイル）を記憶する。
【００４７】
モジュール記憶部２４０は、ＶＭ２２０上に配備される各種モジュールの実体（データファイル）を記憶する。
【００４８】
次に、本発明の第１の実施の形態におけるシステム構築装置１００の動作について説明する。
【００４９】
＜ＶＭイメージ生成処理＞
はじめに、ＶＭイメージを生成する処理（ＶＭイメージ生成処理）について説明する。図１２は、本発明の第１の実施の形態における、ＶＭイメージ生成処理を示すフローチャートである。
【００５０】
ここでは、システム情報記憶部１６０に、図４における、システム情報１６１ａ〜１６１ｃが記憶されており、ＶＭイメージ情報記憶部１７０に、図６における、ＶＭイメージ情報１７１ａ〜１７１ｃが記憶されていると仮定する。
【００５１】
システム構築装置１００は、利用者から、システム構成情報を含む、新たなシステム構築要求の入力を受け付ける（ステップＳ１０１）。
【００５２】
例えば、システム構築装置１００は、図３に示されるシステム構成情報を含む、新たなシステム構築要求の入力を受け付ける。
【００５３】
システム構築装置１００は、システム構築要求に含まれるシステム構成情報を含むシステム情報１６１を、システム情報記憶部１６０に保存する（ステップＳ１０２）。
【００５４】
例えば、システム構築装置１００は、システム情報記憶部１６０に、図４における、システム情報１６１ｄを保存する。
【００５５】
ＶＭイメージ生成部１１０は、システム情報取得部１２０を介して、システム情報記憶部１６０に記憶されているシステム構成情報を取得し、ＶＭイメージの生成条件が成立するかどうかを判定する（ステップＳ１０３）。
【００５６】
ここで、ＶＭイメージ生成部１１０は、生成条件として、基本ＶＭイメージが同一であり、かつ、追加構築処理のリストの先頭からの連続した少なくとも一つの順序において追加構築処理が同一であるシステム構成情報の組が、システム情報記憶部１６０に存在するかどうかを判定する。
【００５７】
ステップＳ１０３において、生成条件が成立する場合（ステップＳ１０３／Ｙ）、ＶＭイメージ生成部１１０は、当該生成条件を満たすシステム構成情報の組について、ＶＭイメージ構成情報を生成する（ステップＳ１０４）。
【００５８】
ここで、ＶＭイメージ生成部１１０は、生成条件を満たすシステム構成情報の組の基本ＶＭイメージの識別子、及び、追加構築処理のリストの先頭からの連続した順序における同一の追加構築処理を、それぞれ、基本ＶＭイメージの識別子、及び、追加構築処理に設定することにより、ＶＭイメージ構成情報を生成する。
【００５９】
生成条件を満たすシステム構成情報の組が複数存在する場合、ＶＭイメージ生成部１１０は、追加構築処理のリストの先頭からの連続した順序における同一の追加構築処理の数が最も多いシステム構成情報の組について、ＶＭイメージ構成情報を生成してもよい。
【００６０】
図５は、本発明の第１の実施の形態における、ＶＭイメージ構成情報の生成例を示す図である。
【００６１】
例えば、図５において、システム情報１６１ｄのシステム構成情報と、１６１ａ〜ｃのシステム構成情報とでは、基本ＶＭイメージ「ＶＭ００１」が同一であり、追加構築処理のリストの先頭から追加構築処理「Ｉｎｓｔａｌｌ＿Ａ」が同一であるため、上述の生成条件を満たす。
【００６２】
また、図５において、システム情報１６１ｄのシステム構成情報と、１６１ｂのシステム構成情報とは、基本ＶＭイメージ「ＶＭ００１」が同一であり、追加構築処理のリストの先頭から追加構築処理「Ｉｎｓｔａｌｌ＿Ａ」、「Ｉｎｓｔａｌｌ＿Ｃ」が同一であるため、上述の生成条件を満たす。
【００６３】
ＶＭイメージ生成部１１０は、図５に示すように、同一である追加構築処理の数が最も多い、システム情報１６１ｄのシステム構成情報と１６１ｂのシステム構成情報との組について、基本ＶＭイメージ「ＶＭ００１」、追加構築処理「Ｉｎｓｔａｌｌ＿Ａ」、「Ｉｎｓｔａｌｌ＿Ｃ」が設定された、ＶＭイメージ構成情報を生成する。
【００６４】
ＶＭイメージ生成部１１０は、生成したＶＭイメージ構成情報を有するＶＭイメージ情報１７１が、ＶＭイメージ情報記憶部１７０に存在するかどうかを判定する（ステップＳ１０５）。
【００６５】
ステップＳ１０５で、生成したＶＭイメージ構成情報を有するＶＭイメージ情報１７１が存在しない場合（ステップＳ１０５／Ｎ）、ＶＭイメージ生成部１１０は、構築部１５０を介して、生成したＶＭイメージ構成情報に従った仮想マシンを構築し、当該仮想マシンのＶＭイメージを生成する（ステップＳ１０６）。
【００６６】
ここで、ＶＭイメージ生成部１１０は、生成したＶＭイメージ構成情報を構築部１５０に送信する。構築部１５０は、後述するシステム構築処理（図１３、ステップＳ２０３）と同様の処理により、処理装置２００上に、当該ＶＭイメージ構成情報に従った仮想マシンを構築する。構築部１５０は、処理装置２００のＶＭ管理部２１０に、構築した仮想マシンのＶＭイメージの生成を指示する。ＶＭ管理部２１０は、構築された仮想マシンのＶＭイメージを生成し、生成したＶＭイメージをＶＭイメージ記憶部２３０に保存する。ＶＭイメージ生成部１１０は、構築部１５０を介して、生成されたＶＭイメージの識別子を取得する。
【００６７】
例えば、ＶＭイメージ生成部１１０は、図５に示されるＶＭイメージ構成情報に従ってＶＭイメージを生成し、生成したＶＭイメージの識別子「ＶＭ１０３」を取得する。
【００６８】
ＶＭイメージ生成部１１０は、生成したＶＭイメージの識別子、ＶＭイメージ構成情報、及びデータサイズを、ＶＭイメージ情報１７１としてＶＭイメージ情報記憶部１７０に保存し（ステップＳ１０７）、処理を終了する。
【００６９】
例えば、ＶＭイメージ生成部１１０は、図６に示すように、ＶＭイメージ「ＶＭ１０３」に係るＶＭイメージ情報１７１ｄをＶＭイメージ情報記憶部１７０に保存する。
【００７０】
一方、ステップＳ１０３において、生成条件が成立しない場合（ステップＳ１０３／Ｎ）や、ステップＳ１０５において、生成したＶＭイメージ構成情報を有するＶＭイメージ情報１７１が既に存在する場合（ステップＳ１０５／Ｙ）、ＶＭイメージ生成部１１０は、処理を終了する。
【００７１】
＜システム構築処理＞
次に、利用者等から入力されたシステム構築要求に従って、システムを構築する処理（システム構築処理）について説明する。図１３は、本発明の第１の実施の形態における、システム構築処理を示すフローチャートである。
【００７２】
システム構築処理は、システム構築装置１００が利用者から新たなシステム構築要求を受け付けた場合に、上述のＶＭイメージ生成処理に引き続いて実行される。
【００７３】
ここでは、図３に示されるシステム構成情報を含む新たなシステム構築要求に対してＶＭイメージ構築処理を実行した結果、ＶＭイメージ情報記憶部１７０に、図６における、ＶＭイメージ情報１７１ａ〜ｄが記憶されていると仮定する。また、ＶＭイメージ利用履歴記憶部１８０に、図８における、ＶＭイメージ利用履歴１８１ａ、１８１ｂが記憶されており、追加構築処理履歴記憶部１９０に、図９における、追加構築処理履歴１９１ａ〜ｆが記憶されていると仮定する。
【００７４】
システム構築装置１００の構成情報変換部１４０は、システム情報取得部１２０を介して、システム情報記憶部１６０から、新たなシステム構築要求に含まれるシステム構成情報を取得し、当該システム構成情報について、変換条件を満たすＶＭイメージが存在するかどうかを判定する（ステップＳ２０１）。
【００７５】
ここで、構成情報変換部１４０は、変換条件として、基本ＶＭイメージがシステム構成情報の基本ＶＭイメージと同一であり、全追加構築処理がシステム構成情報の追加構築処理に含まれ、各追加構築処理の順序がシステム構成情報における同じ追加構築処理の順序と同一であるＶＭイメージ構成情報を有するＶＭイメージが、ＶＭイメージ情報記憶部１７０に存在するかどうかを判定する。
【００７６】
ステップＳ２０１において、変換条件を満たすＶＭイメージが存在する場合（ステップＳ２０１／Ｙ）、構成情報変換部１４０は、当該変換条件を満たすＶＭイメージのＶＭイメージ構成情報を用いて、システム構成情報を変換する（ステップＳ２０２）。
【００７７】
ここで、構成情報変換部１４０は、変換条件を満たすＶＭイメージの識別子、及び、システム構成情報の追加構築処理から当該変換条件を満たすＶＭイメージ構成情報の追加構築処理を除いた差分の追加構築処理を、それぞれ、基本ＶＭイメージの識別子、及び、追加構築処理に設定することにより、システム構成情報を変換する。
【００７８】
変換条件を満たすＶＭイメージが複数存在する場合、構成情報変換部１４０は、追加構築処理の数が最も多いＶＭイメージのＶＭイメージ構成情報（上記差分の追加構築処理の数が最も少なくなるＶＭイメージのＶＭイメージ構成情報）を用いて、システム構成情報を変換してもよい。
【００７９】
図７は、本発明の第１の実施形態における、システム構成情報の変換例を示す図である。
【００８０】
例えば、図７において、ＶＭイメージ情報１７１ｂのＶＭイメージ「ＶＭ１０１」は、ＶＭイメージ構成情報における基本ＶＭイメージ「ＶＭ００１」が、システム構成情報（変換前）の基本ＶＭイメージと同一であり、追加構築処理「Ｉｎｓｔａｌｌ＿Ａ」がシステム構成情報の追加構築処理に含まれ、「Ｉｎｓｔａｌｌ＿Ａ」の順序がシステム構成情報と同一であるため、上述の変換条件を満たす。
【００８１】
また、ＶＭイメージ情報１７１ｄのＶＭイメージ「ＶＭ１０３」は、ＶＭイメージ構成情報における基本ＶＭイメージ「ＶＭ００１」が、システム構成情報（変換前）の基本ＶＭイメージと同一であり、追加構築処理「Ｉｎｓｔａｌｌ＿Ａ」、「Ｉｎｓｔａｌｌ＿Ｃ」がシステム構成情報の追加構築処理に含まれ、「Ｉｎｓｔａｌｌ＿Ａ」、「Ｉｎｓｔａｌｌ＿Ｃ」の順序がシステム構成情報と同一であるため、上述の変換条件を満たす。
【００８２】
構成情報変換部１４０は、追加構築処理の数が最も多いＶＭイメージ「ＶＭ１０３」のＶＭイメージ構成情報を用いて、システム構成情報を変換する。
【００８３】
構成情報変換部１４０は、図７に示すように、システム構成情報（変換前）を、基本ＶＭイメージに「ＶＭ１０３」、追加構築処理に、システム構成情報の追加構築処理からＶＭイメージ「ＶＭ１０３」の追加構築処理を除いた「Ｉｎｓｔａｌｌ＿Ｇ」が設定された、システム構成情報（変換後）に変換する。
【００８４】
一方、ステップＳ２０１において、変換条件を満たすＶＭイメージが存在しない場合（ステップＳ２０１／Ｎ）、構成情報変換部１４０は、システム構成情報を変換せずに、ステップＳ２０３以降の処理に進む。
【００８５】
次に、構築部１５０は、システム構成情報に従って、処理装置２００上にシステムを構築する。（ステップＳ２０３）。
【００８６】
ここで、構築部１５０は、処理装置２００のＶＭ管理部２１０に、システム構成情報で指定された基本ＶＭイメージの識別子を指定して、ＶＭ２２０の構築を指示する。ＶＭ管理部２１０は、ＶＭイメージ記憶部２３０から、指定された基本ＶＭイメージを取得し、ＶＭ２２０を構築する。
【００８７】
さらに、構築部１５０は、システム構成情報の各追加構築処理で指定されたコマンドを、先頭から順番に、ＶＭ２２０上で実行する。ＶＭ２２０上のインストールプログラムは、モジュール記憶部２４０から、コマンドと共に指定されたモジュールを取得し、ＶＭ２２０上に配備する。ここで、構築部１５０は、各追加構築処理に要した処理時間を取得する。
【００８８】
例えば、構築部１５０は、図７のシステム構成情報（変換後）に従って、基本ＶＭイメージ「ＶＭ１０３」を処理装置２００に配備する。そして、構築部１５０は、追加構築処理「Ｉｎｓｔａｌｌ＿Ｇ」を実行することにより、モジュール「Ｇ」を処理装置２００に配備する。
【００８９】
これにより、図７のシステム構成情報（変換前）に従って構築されるシステムと同じ構成のシステムが、図７のシステム構成情報（変換後）に従って構築される。
【００９０】
構築部１５０は、配備したＶＭイメージに係るＶＭイメージ利用履歴１８１をＶＭイメージ利用履歴記憶部１８０に保存する（ステップＳ２０４）。ここで、構築部１５０は、ＶＭイメージ利用履歴１８１に、配備したＶＭイメージの識別子と、配備（利用）した時刻を設定し、保存する。
【００９１】
例えば、構築部１５０は、ＶＭイメージ「ＶＭ１０３」について、図８に示すＶＭイメージ利用履歴１８１ｃをＶＭイメージ利用履歴記憶部１８０に保存する。
【００９２】
構築部１５０は、各追加構築処理に係る追加構築処理履歴１９１を追加構築処理履歴記憶部１９０に保存する（ステップＳ２０５）。ここで、構築部１５０は、追加構築処理履歴１９１に、実行した追加構築処理と、当該追加構築処理に要した処理時間を設定し、保存する。
【００９３】
例えば、構築部１５０は、追加構築処理「Ｉｎｓｔａｌｌ＿Ｇ」について、図９に示す追加構築処理履歴１９１ｇを追加構築処理履歴記憶部１９０に保存する。
【００９４】
＜ＶＭイメージ削除処理＞
次に、ＶＭイメージを削除する処理（ＶＭイメージ削除処理）について説明する。図１４は、本発明の第１の実施の形態における、ＶＭイメージ削除処理を示すフローチャートである。
【００９５】
ＶＭイメージ削除処理は、例えば、定期的に実行される。また、ＶＭイメージ削除処理は、利用者からの要求に応じて実行されてもよい。また、ＶＭイメージ削除処理は、上述のＶＭイメージ生成処理（図１２）における、利用者からのシステム構築要求の受け付け（ステップＳ１０１）後に実行されてもよい。
【００９６】
ＶＭイメージ削除部１３０は、ＶＭイメージの削除条件が成立するかどうかを判定する（ステップＳ３０１）。
【００９７】
ここで、ＶＭイメージ削除部１３０は、削除条件として、利用頻度が所定の閾値以下のＶＭイメージが存在するかどうかを判定する。利用頻度は、ＶＭイメージ利用履歴記憶部１８０のＶＭイメージ利用履歴１８１をもとに、例えば、所定期間の利用回数により算出される。
【００９８】
図１０は、本発明の第１の実施の形態における、ＶＭイメージの利用頻度の算出結果の例を示す図である。
【００９９】
例えば、ＶＭイメージ利用履歴記憶部１８０に、図８における、ＶＭイメージ利用履歴１８１ａ〜１８１ｅが記憶されており、利用頻度が「直近３ヶ月の利用回数」で算出されると仮定する。この場合、各ＶＭイメージの利用頻度は、図１０のように算出される。ここで、削除条件が、「利用頻度が０のＶＭイメージの存在」である場合、ＶＭイメージ「ＶＭ１０１」が削除条件を満たす。
【０１００】
ステップＳ３０１において、削除条件が成立する場合（ステップＳ３０１／Ｙ）ＶＭイメージ削除部１３０は、削除条件を満たすＶＭイメージを削除する（ステップＳ３０２）。
【０１０１】
ここで、ＶＭイメージ削除部１３０は、処理装置２００のＶＭ管理部２１０に、削除条件を満たすＶＭイメージの削除を指示する。ＶＭ管理部２１０は、指示されたＶＭイメージをＶＭイメージ記憶部２３０から削除する。
【０１０２】
例えば、ＶＭイメージ削除部１３０は、ＶＭイメージ「ＶＭ１０１」を削除する。
【０１０３】
ＶＭイメージ削除部１３０は、ＶＭイメージ情報記憶部１７０から、削除したＶＭイメージに係るＶＭイメージ情報１７１を削除する（ステップＳ３０３）。
【０１０４】
例えば、ＶＭイメージ削除部１３０は、図６における、ＶＭイメージ「ＶＭ１０１」に係るＶＭイメージ情報１７１ｂをＶＭイメージ情報記憶部１７０から削除する。
【０１０５】
なお、ステップＳ３０１において、ＶＭイメージ削除部１３０は、削除条件として、処理効率向上度が所定の閾値以下のＶＭイメージが存在するかどうかを判定してもよい。
【０１０６】
ここで、処理効率向上度には、例えば、追加構築処理履歴記憶部１９０の追加構築処理履歴１９１をもとに算出される、ＶＭイメージ構成情報における各追加構築処理の処理時間の合計値を用いることができる。
【０１０７】
本発明の実施の形態においては、ある追加モジュールが配備済みのＶＭイメージと、当該追加モジュールが配備済みでないＶＭイメージとの間の、ＶＭイメージの配備に要する時間の差は、当該追加モジュールの配備（追加構築処理）に要する時間より十分小さいものと仮定する。この場合、ＶＭイメージを用いてシステム構築することによって、ＶＭイメージの各追加構築処理を実行する場合に比べて、処理効率向上度で示される時間、システム構築時間が短縮されると考えられる。
【０１０８】
図１１は、本発明の第１の実施の形態における、ＶＭイメージの処理効率向上度の算出結果の例を示す図である。
【０１０９】
例えば、追加構築処理履歴記憶部１９０に、図９における、追加構築処理履歴１９１ａ〜１９１ｇが記憶されていると仮定する。この場合、各ＶＭイメージの処理効率向上度は、図１１のように算出される。図１１において、例えば、ＶＭイメージ「ＶＭ１０２」を用いてシステム構築することによって、追加構築処理「Ｉｎｓｔａｌｌ＿Ａ」、「Ｉｎｓｔａｌｌ＿Ｂ」を実行する場合に比べて、１２分のシステム構築時間の短縮が期待できる。また、ＶＭイメージ「ＶＭ１０３」を用いてシステム構築することによって、追加構築処理「Ｉｎｓｔａｌｌ＿Ａ」、「Ｉｎｓｔａｌｌ＿Ｃ」を実行する場合に比べて、５分のシステム構築時間の短縮が期待できる。
【０１１０】
ここで、削除条件が、「処理効率向上度が１０分未満のＶＭイメージの存在」である場合、ＶＭイメージ「ＶＭ１０１」、「ＶＭ１０３」が削除条件を満たす。ＶＭイメージ削除部１３０は、ＶＭイメージ「ＶＭ１０１」、「ＶＭ１０３」を削除する。
【０１１１】
なお、処理効率向上度の算出には、各追加構築処理の処理時間以外に、各追加構築処理実行時のＣＰＵ使用率や、メモリ使用率等、各追加構築処理の処理負荷を表す他の値を用いてもよい。
【０１１２】
また、ステップＳ３０１において、ＶＭイメージ削除部１３０は、削除条件として、ＶＭイメージのデータサイズの総和が所定の閾値以上かどうかを判定してもよい。
【０１１３】
この場合、ＶＭイメージのデータサイズの総和は、各ＶＭイメージのＶＭイメージ情報１７１に設定されたデータサイズにより算出される。
【０１１４】
例えば、ＶＭイメージ情報記憶部１７０に、図６における、ＶＭイメージ情報１７１ａ〜１７１ｄが記憶されていると仮定する。この場合、ＶＭイメージのデータサイズの総和は、１３ＧＢである。ここで、削除条件が、「ＶＭイメージのデータサイズの総和が１０ＧＢ以上」である場合、削除条件が成立する。
【０１１５】
そして、ＶＭイメージ削除部１３０は、例えば、データサイズが最も大きいＶＭイメージを削除する。
【０１１６】
例えば、ＶＭイメージ削除部１３０は、ＶＭイメージ「ＶＭ１０３」を削除する。
【０１１７】
なお、ここで、データサイズが最も大きいＶＭイメージを削除する代わりに、ＶＭイメージ削除部１３０は、上述の利用頻度、処理効率向上度、あるいは、利用頻度と処理効率向上度との双方が、所定の閾値以下、または、他のＶＭイメージより小さいＶＭイメージを削除してもよい。
【０１１８】
一方、ステップＳ３０１において、削除条件が成立しない場合（ステップＳ３０１／Ｎ）、ＶＭイメージ削除部１３０は、処理を終了する。
【０１１９】
以上により、本発明の第１の実施の形態の動作が完了する。
【０１２０】
次に、本発明の第１の実施の形態の特徴的な構成を説明する。図１は、本発明の第１の実施の形態の特徴的な構成を示すブロック図である。
【０１２１】
図１を参照すると、システム構築装置１００は、システム情報取得部１２０と、ＶＭイメージ生成部１１０とを含む。
【０１２２】
ここで、システム情報取得部１２０は、仮想マシンと当該仮想マシン上に配備される追加モジュールとを含むシステムの複数の構成情報を取得する。
【０１２３】
ＶＭイメージ生成部１１０は、取得された構成情報の間で、仮想マシンが一致し、かつ、少なくとも１つの追加モジュールが一致する場合、一致した仮想マシンと追加モジュールとを動作させるためのバイナリファイルを生成する。
【０１２４】
本発明の第１の実施の形態によれば、共通な構成要素を有する仮想マシンを用いて、異なる構成のシステム構築を行う場合に、構築する複数のシステムに応じた仮想マシンのバイナリファイルを、効率的に生成できる。
【０１２５】
その理由は、ＶＭイメージ生成部１１０が、複数のシステムの構成情報の間で、仮想マシンが一致し、かつ、少なくとも１つの追加モジュールが一致する場合、一致した仮想マシンと追加モジュールとを動作させるためのバイナリファイル（ＶＭイメージ）を生成するためである。
【０１２６】
また、本発明の第１の実施の形態によれば、共通な構成要素を有する仮想マシンのＶＭイメージを用いて、異なる構成のシステム構築を行う場合に、ＯＳ等の特定のモジュールを構成要素とする仮想マシンのＶＭイメージを用いる場合に比べて、システム構築をより効率的に行うことができる。
【０１２７】
その理由は、ＶＭイメージ生成部１１０が、同一の追加構築処理の数が最も多いシステムの組についてＶＭイメージを生成するためである。これにより、構成情報変換部１４０が当該ＶＭイメージを用いて変換したシステム構成情報において、追加構築処理の数が少なくなり、システム構築に要する時間がより短縮される。
【０１２８】
また、本発明の第１の実施の形態によれば、構築するシステムの構成が事前に明らかでない場合や変化する場合でも、構築するシステムの構成に適合したＶＭイメージを生成できる。
【０１２９】
その理由は、ＶＭイメージ生成部１１０が、新たなシステム構築要求が入力された場合に、当該新たなシステム構築要求のシステム構成情報を含む複数のシステム構成情報をもとに、ＶＭイメージを生成するためである。
【０１３０】
また、本発明の第１の実施の形態によれば、ＶＭイメージの管理を効率的に行うことができる。その理由は、ＶＭイメージ削除部１３０が、ＶＭイメージの利用頻度、処理効率向上度、データサイズの所定の条件をもとに、ＶＭイメージを削除するためである。
【０１３１】
（第２の実施の形態）
次に、本発明の第２の実施の形態について説明する。
【０１３２】
本発明の第２の実施の形態は、ＶＭイメージ生成処理において、生成条件を満たすシステム構成情報の組が複数存在する場合に、処理効率向上度が最も大きいＶＭイメージ構成情報を生成可能な組について、ＶＭイメージを生成する点において、本発明の第１の実施の形態と異なる。
【０１３３】
本発明の第２の実施の形態の構成は、本発明の第１の実施の形態の構成（図２）と同様である。
【０１３４】
次に、本発明の第２の実施の形態におけるシステム構築装置１００の動作について説明する。
【０１３５】
本発明の第２の実施の形態では、追加構築処理によって配備されるモジュールは互いに独立しており、各追加構築処理の順序は変更可能である仮定する。この場合、ＶＭイメージの生成条件の判定や、システム構成情報の変換条件の判定では、追加構築処理の順序を比較しなくてもよい。
【０１３６】
＜ＶＭイメージ生成処理＞
はじめに、ＶＭイメージ生成処理について説明する。
【０１３７】
図１５は、本発明の第２の実施の形態における、システム構成情報の例を示す図である。また、図１６は、本発明の第２の実施の形態における、システム情報１６１の例を示す図である。図１９は、本発明の第２の実施の形態における、ＶＭイメージ情報１７１の例を示す図である。
【０１３８】
ここでは、システム情報記憶部１６０に、図１６における、システム情報１６１ｅ、１６１ｆが記憶されており、ＶＭイメージ情報記憶部１７０に、図１９における、ＶＭイメージ情報１７１ｅ、１７１ｆが記憶されていると仮定する。
【０１３９】
さらに、システム構築装置１００が、図１５に示すシステム構成情報を含むシステム構築要求の入力を受け付け、システム情報記憶部１６０に、図１６における、システム情報１６１ｇを保存したと仮定する。
【０１４０】
ＶＭイメージ生成処理（図１２）における、ステップ１０３において、ＶＭイメージ生成部１１０は、ＶＭイメージの生成条件が成立するかどうかを判定する。ここで、ＶＭイメージ生成部１１０は、生成条件として、基本ＶＭイメージが同一であり、追加構築処理の少なくとも一つが同一であるシステム構成情報の組が存在するかどうかを判定する。
【０１４１】
次に、ステップＳ１０４において、ＶＭイメージ生成部１１０は、処理効率向上度が最も大きいシステム構成情報の組について、ＶＭイメージ構成情報を生成する。
【０１４２】
図１７は、本発明の第２の実施の形態における、ＶＭイメージ構成情報の生成例を示す図である。
【０１４３】
例えば、図１７において、システム情報１６１ｇのシステム構成情報と、１６１ｅのシステム構成情報とでは、基本ＶＭイメージ「ＶＭ００１」が同一であり、追加構築処理「Ｉｎｓｔａｌｌ＿Ａ」、「Ｉｎｓｔａｌｌ＿Ｂ」が同一であるため、上述の生成条件を満たす。
【０１４４】
また、図１７において、システム情報１６１ｇのシステム構成情報と、１６１ｆのシステム構成情報とは、基本ＶＭイメージ「ＶＭ００１」が同一であり、追加構築処理「Ｉｎｓｔａｌｌ＿Ｂ」、「Ｉｎｓｔａｌｌ＿Ｃ」が同一であるため、上述の生成条件を満たす。
【０１４５】
ＶＭイメージ生成部１１０は、図１７に示すように基本ＶＭイメージ「ＶＭ００１」、追加構築処理「Ｉｎｓｔａｌｌ＿Ａ」、「Ｉｎｓｔａｌｌ＿Ｂ」が設定された、構成情報候補（＃１）と、基本ＶＭイメージ「ＶＭ００１」、追加構築処理「Ｉｎｓｔａｌｌ＿Ｂ」、「Ｉｎｓｔａｌｌ＿Ｃ」が設定された、構成情報候補（＃２）とを生成する。
【０１４６】
ＶＭイメージ生成部１１０は、ＶＭイメージ削除処理（図１４）におけるステップＳ３０３と同様の方法により、生成した構成情報候補に対して、処理効率向上度を算出する。
【０１４７】
図１８は、本発明の第２の実施の形態における、ＶＭイメージ構成情報に対する、処理効率向上度の算出結果の例を示す図である。
【０１４８】
例えば、ＶＭイメージ生成部１１０は、図１８に示すように、それぞれの構成情報候補について、処理効率向上度を算出する。
【０１４９】
ＶＭイメージ生成部１１０は、処理効率向上度が最も大きい構成情報候補を、ＶＭイメージ構成情報として選択する。
【０１５０】
例えば、ＶＭイメージ生成部１１０は、処理効率向上度が大きい、図１７の構成情報候補（＃２）を、ＶＭイメージ構成情報として選択する。
【０１５１】
次に、ステップＳ１０６において、ＶＭイメージ生成部１１０は、選択したＶＭイメージ構成情報に従って、ＶＭイメージを生成する。
【０１５２】
例えば、ＶＭイメージ生成部１１０は、図１７の構成情報候補（＃２）従って生成されたＶＭイメージの識別子「ＶＭ２０１」を取得する。ＶＭイメージ生成部１１０は、図１９に示すように、ＶＭイメージ「ＶＭ２０１」に係るＶＭイメージ情報１７１ｇをＶＭイメージ情報記憶部１７０に保存する。
【０１５３】
＜システム構築処理＞
次に、システム構築処理について説明する。
【０１５４】
システム構築処理（図１３）における、ステップ２０１において、構成情報変換部１４０は、システム構成情報の変換条件を満たすＶＭイメージが存在するかどうかを判定する。ここで、構成情報変換部１４０は、変換条件として、基本ＶＭイメージがシステム構成情報の基本ＶＭイメージと同一であり、全追加構築処理がシステム構成情報の追加構築処理に含まれるようなＶＭイメージ構成情報を有するＶＭイメージが存在するかどうかを判定する。
【０１５５】
ステップ２０２において、構成情報変換部１４０は、変換条件を満たすＶＭイメージ構成情報を用いて、システム構成情報を変換する。
【０１５６】
図２０は、本発明の第２の実施形態における、システム構成情報の変換例を示す図である。
【０１５７】
例えば、図２０において、ＶＭイメージ情報１７１ｆのＶＭイメージ「ＶＭ２０１」は、ＶＭイメージ構成情報における基本ＶＭイメージ「ＶＭ００１」が、システム構成情報（変換前）の基本ＶＭイメージと同一であり、追加構築処理「Ｉｎｓｔａｌｌ＿Ｂ」がシステム構成情報の追加構築処理に含まれるため、上述の変換条件を満たす。
【０１５８】
また、ＶＭイメージ情報１７１ｇのＶＭイメージ「ＶＭ２０２」は、ＶＭイメージ構成情報における基本ＶＭイメージ「ＶＭ００１」が、システム構成情報（変換前）の基本ＶＭイメージと同一であり、追加構築処理「Ｉｎｓｔａｌｌ＿Ｂ」、「Ｉｎｓｔａｌｌ＿Ｃ」がシステム構成情報の追加構築処理に含まれるため、上述の変換条件を満たす。
【０１５９】
構成情報変換部１４０は、追加構築処理の数が最も大きいＶＭイメージ「ＶＭ２０２」のＶＭイメージ構成情報を用いて、システム構成情報を変換する。
【０１６０】
構成情報変換部１４０は、図２０に示すように、システム構成情報（変換前）を、基本ＶＭイメージに「ＶＭ２０２」、追加構築処理に、システム構成情報の追加構築処理からＶＭイメージ「ＶＭ２０２」のＶＭイメージ構成情報の追加構築処理を除いた「Ｉｎｓｔａｌｌ＿Ａ」が設定された、システム構成情報（変換後）に変換する。
【０１６１】
次に、ステップ２０３において、構築部１５０は、変換したシステム構成情報に従って、処理装置２００上にシステムを構築する。
【０１６２】
例えば、構築部１５０は、図２０のシステム構成情報（変換後）に従って、基本ＶＭイメージ「ＶＭ２０２」を処理装置２００に配備する。そして、構築部１５０は、追加構築処理「Ｉｎｓｔａｌｌ＿Ａ」を実行することにより、モジュール「Ａ」をＶＭイメージ「ＶＭ２０２」上に配備する。
【０１６３】
以上により、本発明の第２の実施の形態の動作が完了する。
【０１６４】
なお、本発明の第２の実施の形態においては、ＶＭイメージ生成処理において、生成条件を満たすシステム構成情報の組が複数存在する場合に、ＶＭイメージ生成部１１０が、処理効率向上度が最も大きいＶＭイメージ構成情報を生成可能な組を選択し、ＶＭイメージを生成している。同様に、システム構築処理において、変換条件を満たすＶＭイメージが複数存在する場合、構成情報変換部１４０は、処理効率向上度が最も大きいＶＭイメージを選択し、システム構成情報を変換してもよい。
【０１６５】
本発明の第２の実施の形態によれば、共通な構成要素を有する仮想マシンのＶＭイメージを用いて、異なる構成のシステム構築を行う場合に、第１の実施の形態に比べて、システム構築をさらに効率的に行うことができる。
【０１６６】
その理由は、ＶＭイメージ生成部１１０が、処理効率向上度が最も大きいＶＭイメージ構成情報が設定されるシステム構成情報の組について、ＶＭイメージを生成するためである。これにより、処理効率向上度が大きいＶＭイメージを基本ＶＭイメージとして用いて、システム構成情報を変換でき、システム構築に要する時間がさらに短縮される。
【０１６７】
（第３の実施の形態）
次に、本発明の第３の実施の形態について説明する。
【０１６８】
本発明の第３の実施の形態は、システム構築処理において構築済みの他のシステムのＶＭイメージが、システム構成情報の基本ＶＭイメージとして用いられる点において、本発明の第１の実施の形態と異なる。
【０１６９】
本発明の第３の実施の形態の構成は、本発明の第１の実施の形態の構成（図２）と同様である。
【０１７０】
次に、本発明の第３の実施の形態におけるシステム構築装置１００の動作について説明する。
【０１７１】
＜ＶＭイメージ生成処理＞
本発明の第３の実施の形態における、ＶＭイメージ生成処理は、本発明の第１の実施の形態（図１２）と同様である。
【０１７２】
＜システム構築処理＞
次に、システム構築処理について説明する。
【０１７３】
図２１は、本発明の第３の実施の形態における、システム構成情報の例を示す図である。また、図２２は、本発明の第３の実施の形態における、ＶＭイメージ情報１７１の例を示す図である。
【０１７４】
ここでは、ＶＭイメージ情報記憶部１７０に、図２２における、ＶＭイメージ情報１７１ａ〜ｄ、及び、１７１ｈが記憶されていると仮定する。
【０１７５】
ＶＭイメージ情報１７１ｈは、本発明の第１の実施の形態で説明した例のように、基本ＶＭイメージ「ＶＭ１０３」上に、追加構築処理「Ｉｎｓｔａｌｌ＿Ｇ」を実行することによりシステムを構築した後で、当該システムについて生成されたＶＭイメージ「ＶＭ３０１」に係る情報である。
【０１７６】
システム構築処理（図１３）における、ステップ２０１において、構成情報変換部１４０は、変換条件として、第１の実施形態で述べた変換条件（第１の変換条件）を満たすＶＭイメージに加えて、以下の第２の変換条件を満たすＶＭイメージが存在するかどうかを判定する。
【０１７７】
第２の変換条件を満たすＶＭイメージとは、基本ＶＭイメージに、第１の変換条件を満たす他のＶＭイメージが設定されており、全追加構築処理がシステム構成情報の追加構築処理に含まれるＶＭイメージである。構成情報変換部１４０は、第２の変換条件を満たすＶＭイメージが存在するかどうかの判定を、再帰的に繰り返してもよい。
【０１７８】
図２３は、本発明の第３の実施形態における、システム構成情報の変換例を示す図である。
【０１７９】
例えば、図２３において、ＶＭイメージ情報１７１ｄのＶＭイメージ「ＶＭ１０３」は、基本ＶＭイメージ「ＶＭ００１」が、システム構成情報（変換前）の基本ＶＭイメージと同一であり、追加構築処理「Ｉｎｓｔａｌｌ＿Ａ」、「Ｉｎｓｔａｌｌ＿Ｃ」がシステム構成情報の追加構築処理に含まれるため、第１の変換条件を満たす。
【０１８０】
また、ＶＭイメージ情報１７１ｈのＶＭイメージ「ＶＭ３０１」は、基本ＶＭイメージ「ＶＭ１０３」が、変換条件（第１の変換条件）を満たすＶＭイメージであり、追加構築処理「Ｉｎｓｔａｌｌ＿Ｇ」がシステム構成情報の追加構築処理に含まれるため、第２の変換条件を満たす。
【０１８１】
構成情報変換部１４０は、図２３に示すように、システム構成情報（変換前）を、基本ＶＭイメージに「ＶＭ３０１」、追加構築処理に、システム構成情報の追加構築処理からＶＭイメージ「ＶＭ１０３」、「ＶＭ３０１」の追加構築処理を除いた「Ｉｎｓｔａｌｌ＿Ｈ」が設定された、システム構成情報（変換後）に変換する。
【０１８２】
次に、ステップ２０３において、構築部１５０は、システム構成情報（変換後）に従って、処理装置２００上にシステムを構築する。
【０１８３】
例えば、構築部１５０は、図２３のシステム構成情報（変換後）に従って、基本ＶＭイメージ「ＶＭ３０１」を処理装置２００に配備する。そして、構築部１５０は、追加構築処理「Ｉｎｓｔａｌｌ＿Ｈ」を実行することにより、モジュール「Ｈ」をＶＭイメージ「ＶＭ３０１」上に配備する。
【０１８４】
以上により、本発明の第３の実施の形態の動作が完了する。
【０１８５】
本発明の第３の実施の形態によれば、システム構築処理において変換されたシステム構成情報を用いて構築済みのシステムのＶＭイメージを、別のシステム構築処理における基本ＶＭイメージとして有効に用いることができる。
【０１８６】
その理由は、構成情報変換部１４０が、システム構成情報の変換において、基本ＶＭイメージに変換条件を満たす他のＶＭイメージが設定されているＶＭイメージについても、基本ＶＭイメージとして用いられるかどうかを判定するためである。
【０１８７】
以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
【０１８８】
この出願は、２０１２年６月２６日に出願された日本出願特願２０１２−１４２８９９を基礎とする優先権を主張し、その開示の全てをここに取り込む。
【符号の説明】
【０１８９】
１００    システム構築装置
１１０    ＶＭイメージ生成部
１２０    システム情報取得部
１３０    ＶＭイメージ削除部
１４０    構成情報変換部
１５０    構築部
１６０    システム情報記憶部
１６１    システム情報
１７０    ＶＭイメージ情報記憶部
１７１    ＶＭイメージ情報
１８０    ＶＭイメージ利用履歴記憶部
１８１    ＶＭイメージ利用履歴
１９０    追加構築処理履歴記憶部
１９１    追加構築処理履歴
２００    処理装置
２１０    ＶＭ管理部
２２０    ＶＭ
２３０    ＶＭイメージ記憶部
２４０    モジュール記憶部
【図１】
2014002421.tif 000003
【図２】
2014002421.tif 000004
【図３】
2014002421.tif 000005
【図４】
2014002421.tif 000006
【図５】
2014002421.tif 000007
【図６】
2014002421.tif 000008
【図７】
2014002421.tif 000009
【図８】
2014002421.tif 000010
【図９】
2014002421.tif 000011
【図１０】
2014002421.tif 000012
【図１１】
2014002421.tif 000013
【図１２】
2014002421.tif 000014
【図１３】
2014002421.tif 000015
【図１４】
2014002421.tif 000016
【図１５】
2014002421.tif 000017
【図１６】
2014002421.tif 000018
【図１７】
2014002421.tif 000019
【図１８】
2014002421.tif 000020
【図１９】
2014002421.tif 000021
【図２０】
2014002421.tif 000022
【図２１】
2014002421.tif 000023
【図２２】
2014002421.tif 000024
【図２３】
2014002421.tif 000025
【手続補正書】
【提出日】平成25年11月8日(2013.11.8)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
仮想マシンと当該仮想マシン上に配備される追加モジュールとを含むシステムの複数の構成情報を取得する取得手段と、
前記取得された構成情報の間で、前記仮想マシンが一致し、かつ、少なくとも１つの前記追加モジュールが一致する場合、前記一致した仮想マシンと追加モジュールとを動作させるためのファイルを生成する生成手段とを備えるシステム構築装置。
【請求項２】
前記複数の構成情報の各々は、構成要素である、前記仮想マシンを構築するための基本ＶＭイメージ、及び、当該仮想マシン上に配備される前記追加モジュールの識別子を示し、
前記生成手段は、前記複数の構成情報の内、基本ＶＭイメージが同一であり、追加モジュールの内の少なくとも一つが同一である組を抽出し、当該抽出した組に係る基本ＶＭイメージ、及び、同一の追加モジュールを構成要素としたＶＭイメージを前記ファイルとして生成し、当該ＶＭイメージの識別子と当該ＶＭイメージの構成情報とを出力する、請求項１に記載のシステム構築装置。
【請求項３】
さらに、追加モジュールの各々に配備順序が付与され、
前記生成手段は、前記複数の構成情報の内、基本ＶＭイメージが同一であり、かつ、配備順序の先頭から連続した少なくとも一つの配備順序において追加モジュールが同一である組を抽出し、当該抽出した組に係る基本ＶＭイメージ、及び、配備順序の先頭から連続した配備順序における同一の追加モジュールを構成要素としたＶＭイメージを生成する請求項２に記載のシステム構築装置。
【請求項４】
前記生成手段は、複数の前記組の内、同一である追加モジュールの数が最も多い組を選択する請求項２または３に記載のシステム構築装置。
【請求項５】
前記生成手段は、複数の前記組の内、当該組をもとに生成されるＶＭイメージの構成情報における、各追加モジュールの配備に要する負荷をもとに算出される、当該ＶＭイメージの処理効率向上度が最も大きい組を選択する請求項２または３に記載のシステム構築装置。
【請求項６】
さらに、
前記生成手段により生成されたＶＭイメージの各々の識別子対応に、当該ＶＭイメージの構成情報を記憶するＶＭイメージ情報記憶手段と、
構築対象システムの構成情報が入力された場合に、前記ＶＭイメージ情報記憶手段に構成情報が記憶されたＶＭイメージの内、基本ＶＭイメージが構築対象システムの基本ＶＭイメージと同一であり、全追加モジュールが前記構築対象システムの追加モジュールに含まれるＶＭイメージを抽出し、当該抽出したＶＭイメージ、及び、前記構築対象システムの追加モジュールから当該抽出したＶＭイメージの追加モジュールを除いた追加モジュールの識別子を構成要素として、前記構築対象システムの構成情報を変換し、出力する構成情報変換手段を備えた請求項２乃至５のいずれかに記載のシステム構築装置。
【請求項７】
さらに、追加モジュールの各々に配備順序が付与され、
前記構成情報変換手段は、前記ＶＭイメージ情報記憶手段に構成情報が記憶されたＶＭイメージの内、基本ＶＭイメージが前記構築対象システムの基本ＶＭイメージと同一であり、全追加モジュールが前記構築対象システムの追加モジュールが当該ＶＭイメージの全追加モジュールに含まれ、全追加モジュールの配備順序が対応する前記構築対象システムの追加モジュールの配備順序と同一であるＶＭイメージを抽出する請求項６に記載のシステム構築装置。
【請求項８】
前記構成情報変換手段は、前記抽出したＶＭイメージの内、追加モジュールの数が最も多いＶＭイメージを選択する請求項６または７に記載のシステム構築装置。
【請求項９】
前記構成情報変換手段は、前記抽出したＶＭイメージの内、各追加モジュールの配備に要する負荷をもとに算出される、当該ＶＭイメージの処理効率向上度が最も大きいＶＭイメージを選択する請求項６または７に記載のシステム構築装置。
【請求項１０】
前記ＶＭイメージ情報記憶手段は、さらに、前記変換された構成情報に従って構築されたシステムのＶＭイメージの識別子に対応付けて、当該変換された構成情報を記憶する請求項６乃至９のいずれかに記載のシステム構築装置。
【請求項１１】
前記構成情報変換手段は、さらに、前記抽出したＶＭイメージが基本ＶＭイメージに設定されたＶＭイメージであり、前記構築対象システムの追加モジュールがＶＭイメージの全追加モジュールを含むＶＭイメージを抽出する請求項１０に記載のシステム構築装置。
【請求項１２】
前記生成手段は、前記構築対象システムの構成情報が新たに入力された場合に、当該新たな前記構築対象システムの構成情報を含む前記複数の構成情報をもとに、ＶＭイメージを生成する請求項６乃至１１のいずれかに記載のシステム構築装置。
【請求項１３】
さらに、前記ＶＭイメージ情報記憶手段に構成情報が記憶されたＶＭイメージの内、システム構築における利用頻度が所定の閾値以下のＶＭイメージを削除するＶＭイメージ削除手段を備えた、請求項６乃至１２のいずれかに記載のシステム構築装置。
【請求項１４】
さらに、前記ＶＭイメージ情報記憶手段に構成情報が記憶されたＶＭイメージの内、各追加モジュールの配備に要する負荷をもとに算出される、当該ＶＭイメージの処理効率向上度が所定の閾値以下のＶＭイメージを削除するＶＭイメージ削除手段を備えた、請求項６乃至１２のいずれかに記載のシステム構築装置。
【請求項１５】
さらに、前記ＶＭイメージ情報記憶手段に構成情報が記憶されたＶＭイメージのデータサイズの総和が所定の閾値以上の場合に、前記ＶＭイメージ情報記憶手段に構成情報が記憶されたＶＭイメージのいずれかを削除するＶＭイメージ削除手段を備えた、請求項６乃至１２のいずれかに記載のシステム構築装置。
【請求項１６】
仮想マシンと当該仮想マシン上に配備される追加モジュールとを含むシステムの複数の構成情報を取得し、
前記取得された構成情報の間で、前記仮想マシンが一致し、かつ、少なくとも１つの前記追加モジュールが一致する場合、前記一致した仮想マシンと追加モジュールとを動作させるためのファイルを生成する、システム構築方法。
【請求項１７】
コンピュータに、
仮想マシンと当該仮想マシン上に配備される追加モジュールとを含むシステムの複数の構成情報を取得し、
前記取得された構成情報の間で、前記仮想マシンが一致し、かつ、少なくとも１つの前記追加モジュールが一致する場合、前記一致した仮想マシンと追加モジュールとを動作させるためのファイルを生成する、処理を実行させるプログラムを格納する、コンピュータが読み取り可能な記録媒体。
【国際調査報告】
2014002421.tif 000026
2014002421.tif 000027
2014002421.tif 000028
2014002421.tif 000029