(57)【要約】【課題】物理サーバ間での仮想マシンの動作環境の移行を支援する。【解決手段】第１及び第２物理サーバから、仮想マシンの動作環境を構築する仮想リソースの要素に関する要素情報を取得し、第１及び第２物理サーバから取得した要素情報が示す要素を構築する要素を示す細分要素に関する情報である細分要素情報を取得し、第１及び第２物理サーバから取得した通信ネットワークの種別及びそのネットワークに属する仮想マシンに関する情報が一致するかを判定し、一致すると判定された場合、第２物理サーバから取得した細分要素情報により示される細分要素の性能が、第１物理サーバから取得した要素情報により示される細分要素の性能以上であると判定された場合、第１物理サーバの仮想マシンの動作環境を第２物理サーバに移行可能であることを示す情報を出力する動作環境移行支援装置により、上記課題の解決を図る。【選択図】図１
2014191472.tif 000002
【特許請求の範囲】
【請求項１】
仮想マシンが動作する第１物理サーバ装置と第２物理サーバ装置とのそれぞれから、該仮想マシンの動作環境を構築する仮想リソースの要素に関する要素情報を取得する第１取得部と、
前記第１物理サーバ装置及び前記第２物理サーバ装置のそれぞれから取得した前記要素情報が示す前記要素を構築する要素を示す細分要素に関する情報である細分要素情報を、前記第１物理サーバ装置及び前記第２物理サーバ装置のそれぞれから取得する第２取得部と、
前記細分要素情報に基づいて、前記第１物理サーバ装置及び第２物理サーバ装置のそれぞれから取得した通信ネットワークの種別及び該通信ネットワークに属する仮想マシンに関する情報がそれぞれ一致するかを判定する第１判定部と、
前記通信ネットワークの種別及び該通信ネットワークに属する仮想マシンに関する情報がそれぞれ一致すると判定された場合、前記第２物理サーバ装置から取得した細分要素情報により示される細分要素の性能が、前記第１物理サーバ装置から取得した要素情報により示される細分要素の性能以上であるかを判定する第２判定部と、
前記第２物理サーバ装置から取得した細分要素情報により示される細分要素の性能が、前記第１物理サーバ装置から取得した要素情報により示される細分要素の性能以上であると判定された場合、前記第１物理サーバ装置の前記仮想マシンの動作環境を前記第２物理サーバ装置に移行可能であることを示す情報を出力する出力部と、
を備えることを特徴とする動作環境移行支援装置。
【請求項２】
前記第１判定部は、前記第１及び第２物理サーバ装置のそれぞれから取得した細分要素情報に含まれる、前記通信ネットワークの属性、該通信ネットワークの経路情報、及び該通信ネットワークに属する仮想マシンのファイルシステムに関する情報が一致する場合、前記第１及び第２物理サーバ装置のそれぞれから取得した通信ネットワークを識別する通信ネットワーク識別情報を関係付ける
ことを特徴とする請求項１に記載の動作環境移行支援装置。
【請求項３】
前記第２判定部は、前記細分要素情報に基づいて、前記関係付けられた通信ネットワーク識別情報のそれぞれに対応する通信ネットワークに属する前記仮想マシンの前記ファイルシステムの種類、該仮想マシンに割り当てられるリソース情報を比較し、該比較の結果、前記第２物理サーバ装置から取得した細分要素情報により示される細分要素の性能が、前記第１物理サーバ装置から取得した細分要素情報により示される細分要素の性能以上であるか否かを判定する
ことを特徴とする請求項２に記載の動作環境移行支援装置。
【請求項４】
コンピュータに、
仮想マシンが動作する第１物理サーバ装置と第２物理サーバ装置とのそれぞれから、該仮想マシンの動作環境を構築する仮想リソースの要素に関する要素情報を取得し、
前記第１物理サーバ装置及び前記第２物理サーバ装置のそれぞれから取得した前記要素情報が示す前記要素を構築する要素を示す細分要素に関する情報である細分要素情報を、前記第１物理サーバ装置及び前記第２物理サーバ装置のそれぞれから取得し、
前記細分要素情報に基づいて、前記第１物理サーバ装置及び前記第２物理サーバ装置のそれぞれから取得した通信ネットワークの種別及び該通信ネットワークに属する仮想マシンに関する情報がそれぞれ一致するかを判定し、
前記通信ネットワークの種別及び該通信ネットワークに属する仮想マシンに関する情報がそれぞれ一致すると判定された場合、前記第２物理サーバ装置から取得した細分要素情報により示される細分要素の性能が、前記第１物理サーバ装置から取得した要素情報により示される細分要素の性能以上であるかを判定し、
前記第２物理サーバ装置から取得した細分要素情報により示される細分要素の性能が、前記第１物理サーバ装置から取得した要素情報により示される細分要素の性能以上であると判定された場合、前記第１物理サーバ装置の前記仮想マシンの動作環境を前記第２物理サーバ装置に移行可能であることを示す情報を出力する
処理を実行させることを特徴とする動作環境移行支援プログラム。
【請求項５】
前記通信ネットワークの種別及び該通信ネットワークに属する仮想マシンに関する情報がそれぞれ一致するかの判定において、前記第１及び第２物理サーバ装置のそれぞれから取得した細分要素情報に含まれる、前記通信ネットワークの属性、該通信ネットワークの経路情報、及び該通信ネットワークに属する仮想マシンのファイルシステムに関する情報が一致する場合、前記第１及び第２物理サーバ装置のそれぞれから取得した通信ネットワークを識別する通信ネットワーク識別情報を関係付ける
ことを特徴とする請求項４に記載の動作環境移行支援プログラム。
【請求項６】
前記第２物理サーバ装置から取得した細分要素情報により示される細分要素の性能が、前記第１物理サーバ装置から取得した要素情報により示される細分要素の性能以上であるかの判定において、前記細分要素情報に基づいて、前記関係付けられた通信ネットワーク識別情報のそれぞれに対応する通信ネットワークに属する前記仮想マシンの前記ファイルシステムの種類、該仮想マシンに割り当てられるリソース情報を比較し、該比較の結果、前記第２物理サーバ装置から取得した細分要素情報により示される細分要素の性能が、前記第１物理サーバ装置から取得した細分要素情報により示される細分要素の性能以上であるか否かを判定する
ことを特徴とする請求項５に記載の動作環境移行支援プログラム。
【請求項７】
コンピュータが、
仮想マシンが動作する第１物理サーバ装置と第２物理サーバ装置とのそれぞれから、該仮想マシンの動作環境を構築する仮想リソースの要素に関する要素情報を取得し、
前記第１物理サーバ装置及び前記第２物理サーバ装置のそれぞれから取得した前記要素情報が示す前記要素を構築する要素を示す細分要素に関する情報である細分要素情報を、前記第１物理サーバ装置及び前記第２物理サーバ装置のそれぞれから取得し、
前記細分要素情報に基づいて、前記第１物理サーバ装置及び前記第２物理サーバ装置のそれぞれから取得した通信ネットワークの種別及び該通信ネットワークに属する仮想マシンに関する情報がそれぞれ一致するかを判定し、
前記通信ネットワークの種別及び該通信ネットワークに属する仮想マシンに関する情報がそれぞれ一致すると判定された場合、前記第２物理サーバ装置から取得した細分要素情報により示される細分要素の性能が、前記第１物理サーバ装置から取得した要素情報により示される細分要素の性能以上であるかを判定し、
前記第２物理サーバ装置から取得した細分要素情報により示される細分要素の性能が、前記第１物理サーバ装置から取得した要素情報により示される細分要素の性能以上であると判定された場合、前記第１物理サーバ装置の前記仮想マシンの動作環境を前記第２物理サーバ装置に移行可能であることを示す情報を出力する
ことを特徴とする動作環境移行支援方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、仮想マシンの動作環境の移行を支援する技術に関する。
【背景技術】
【０００２】
ＩＣＴ（Information and Communication Technology）システム構築の新しい利用形態として、ハードウェア、ソフトウェア、データなどをデータセンタなどで一括管理するクラウドコンピューティングが注目を集めている。クラウドコンピューティングのサービス形態として、ＩａａＳ（Infrastructure as a Service）がある。ＩａａＳは、ネットワーク、ハードウェア（ＣＰＵ・メモリー・ハードディスク）、ストレージ等を提供するサービスである。
【０００３】
クラウドコンピューティングは、その管理性に関して、インフラストラクチャ・モデルをさらに複雑化しうる。そのため、ＩａａＳの提供者（プロバイダ）が異なると、ＩａａＳ間でのシステムの移行をすることが容易でない。
【０００４】
そこで、次に示すように、データセンタ・コンポーネントなどのコンピューティング・コンポーネントをクラウドコンピューティング・インフラストラクチャに移行させるべきか否かを評価し、移行させる戦略プランを特定する評価技術がある。この評価技術によれば、システムは、メモリ、インターフェースとプロセッサとを含む。プロセッサは、ユーザからデータセンタ構成を受信する（データセンタ構成は計算容量と記憶容量を含む）。プロセッサは、データセンタ構成と等価のクラウドコンピューティング構成を判定する。プロセッサは、データセンタからクラウドコンピューティングへの移行期間を特定する。プロセッサは、期間全体にわたる計算容量および記憶容量の変化を表す複数の傾向値を特定する。プロセッサは、期間全体にわたるデータセンタからクラウドコンピューティングへの移行戦略（戦略は、計算容量および記憶容量の変化を説明できる）を生成する。これにより、プロセッサは、ユーザに戦略の図表出力および数値出力を提供する。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１１−１５０５６３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ＩａａＳにおいて、プロバイダ間で共通しているコンポーネントと、各プロバイダが他のプロバイダとの差異化のために提供しているコンポーネントとがある。
【０００７】
共通化されたコンポーネントの利点として、ＩａａＳ管理がプロバイダ間で相互接続可能になる点がある。すなわち、同じインターフェースを用いて、クラウド利用者が複数のプロバイダの資源を管理することができる。
【０００８】
一方、クラウド利用者がプロバイダを変更する場合、その差異部分のコンポーネントをプロバイダ間で移行することが考えられる。しかしながら、プロバイダ間において、差異部分のコンポーネントには互換性がなく、プロバイダが異なると、そのコンポーネントを移行できるか否かを判別することができない。
【０００９】
そこで、上記の評価技術を用いることが考えられる。しかしながら、上記評価技術は、プロバイダ間の移行に関して、予めユーザが分かっている同じ構成同士のコストの比較を行うものであり、異なるプロバイダ間で、予めユーザが分かっていない構成を比較することはできない。
【００１０】
このように、プロバイダが異なると、プロバイダ間でＩａａＳを構築するコンポーネントを移行できるか否かを判別することができないため、プロバイダ間でのＩａａＳを構築するコンポーネントの移行が容易ではない。
【００１１】
本発明は、一側面として、物理サーバ間での仮想マシンの動作環境の移行を支援する技術を提供する。
【課題を解決するための手段】
【００１２】
本実施形態に係る動作環境移行支援装置は、第１取得部、第２取得部、第１判定部、第２判定部、出力部を含む。第１取得部は、仮想マシンが動作する第１物理サーバ装置と第２物理サーバ装置とのそれぞれから、仮想マシンの動作環境を構築する仮想リソースの要素に関する要素情報を取得する。第２取得部は、第１物理サーバ装置及び第２物理サーバ装置のそれぞれから取得した要素情報が示す要素を構築する要素を示す細分要素に関する情報である細分要素情報を、第１物理サーバ装置及び第２物理サーバ装置のそれぞれから取得する。第１判定部は、細分要素情報に基づいて、第１物理サーバ装置及び第２物理サーバ装置のそれぞれから取得した通信ネットワークの種別及び該通信ネットワークに属する仮想マシンに関する情報がそれぞれ一致するかを判定する。第２判定部は、前記通信ネットワークの種別及び該通信ネットワークに属する仮想マシンに関する情報がそれぞれ一致すると判定された場合、次の処理を行う。すなわち、第２判定部は、第２物理サーバ装置から取得した細分要素情報により示される細分要素の性能が、第１物理サーバ装置から取得した要素情報により示される細分要素の性能以上であるかを判定する。出力部は、第２物理サーバ装置から取得した細分要素情報により示される細分要素の性能が、第１物理サーバ装置から取得した要素情報により示される細分要素の性能以上であると判定された場合、次の処理を行う。すなわち、出力部は、第１物理サーバ装置の仮想マシンの動作環境を第２物理サーバ装置に移行可能であることを出力する。
【発明の効果】
【００１３】
本発明の一側面によれば、物理サーバ間での仮想マシンの動作環境の移行を支援することができる。
【図面の簡単な説明】
【００１４】
【図１】本実施形態に係る移行支援装置の一例を示す。
【図２】本実施形態に係る移行判定処理を説明するための図である。
【図３】本実施形態に係る移行支援装置のブロック図を示す。
【図４】本実施形態におけるＡＰＩ対応表の一例を示す。
【図５】本実施形態における構成情報表の一例を示す。
【図６】本実施形態におけるネットワーク対応関係表の一例を示す。
【図７】本実施形態における拡張ＩａａＳ管理単位のテンプレートの一例を示す。
【図８】本実施形態における移行判定処理の全体フローの一例を示す。
【図９】図８のフローのＳ７の詳細フローの一例を示す。
【図１０】図１０は、図８のフローのＳ９の詳細フローの一例を示す。
【図１１】図１０のフローのＳ９−３の詳細フローの一例を示す。
【図１２】本実施形態における、プロバイダＡへのリクエストとそれに対応するレスポンスの一例（その１）を示す。
【図１３】本実施形態における、プロバイダＡについての作成途中の構成情報表の一例（その１）を示す。
【図１４】本実施形態における、プロバイダＡへのリクエストとそれに対応するレスポンスの一例（その２）を示す。
【図１５】本実施形態における、プロバイダＡについての作成途中の構成情報表の一例（その２）を示す。
【図１６】本実施形態における、プロバイダＡへのリクエストとそれに対応するレスポンスの一例（その３）を示す。
【図１７】本実施形態における、プロバイダＡについての作成途中の構成情報表の一例（その３）を示す。
【図１８】本実施形態における、プロバイダＡへのリクエストとそれに対応するレスポンスの一例（その４）を示す。
【図１９】本実施形態における、プロバイダＡについての作成途中の構成情報表の一例（その４）を示す。
【図２０】本実施形態における、プロバイダＡについての作成途中の構成情報表の一例（その５）を示す。
【図２１】本実施形態における、プロバイダＡについての作成途中の構成情報表の一例（その６）を示す。
【図２２】本実施形態における、プロバイダＢへのリクエストとそれに対応するレスポンスの一例（その１）を示す。
【図２３】本実施形態における、プロバイダＢについての作成途中の構成情報表の一例（その１）を示す。
【図２４】本実施形態における、プロバイダＢへのリクエストとそれに対応するレスポンスの一例（その２）を示す。
【図２５】本実施形態における、プロバイダＢについての作成途中の構成情報表の一例（その２）を示す。
【図２６】本実施形態における、プロバイダＢについての作成途中の構成情報表の一例（その３）を示す。
【図２７】本実施形態における、プロバイダＢについての作成途中の構成情報表の一例（その４）を示す。
【図２８】本実施形態における、プロバイダＢについての作成途中の構成情報表の一例（その５）を示す。
【図２９】本実施形態における、プロバイダＢについての作成途中の構成情報表の一例（その６）を示す。
【図３０】本実施形態における、「ネットワーク属性」、「ＶＭの個数」、「イメージの説明」が一致するネットワークがあるかの判定を説明するための図である。
【図３１】本実施形態における、ネットワーク関係表の一例を示す。
【図３２】本実施形態における、出力結果の一例を示す。
【図３３】本実施形態における移行判定処理を実行するコンピュータのハードウェアブロック図を示す。
【発明を実施するための形態】
【００１５】
仮想マシン（ＶＭ）、その仮想マシンイメージ、その仮想マシンに対応するボリューム、その仮想マシンが接続するネットワーク等のコンポーネント毎に管理する単位であって、プロバイダ間において共通する管理単位を、「基本ＩａａＳ管理単位」と称する。仮想マシンとは、物理的なコンピュータ上で稼働する仮想的なコンピュータをいう。仮想マシンイメージとは、仮想マシンを起動するのに用いるファイルシステムをいう。ファイルシステムとは、記憶装置に記録されているデータを管理するための仕組みである。ボリュームは、記憶領域のことを示す。
【００１６】
基本ＩａａＳ管理単位では、ＩａａＳ相互で、共通のインターフェースを利用することができるため、プロバイダ間で基本ＩａａＳ管理単位に相互に接続でき、ＩａａＳ管理を行うことができる。すなわち、同じインターフェースで、クラウド利用者がプロバイダＡの資源もプロバイダＢの資源も管理できる。また、プロバイダ毎に管理を行うプログラムを書き分けなくて済む。クラウド利用者が特定のプロバイダに依存することを防げることができる。
【００１７】
一方、プロバイダＡが他のプロバイダＢとの差異化を図るために提供する便利なコンポーネントであって、基本ＩａａＳ管理単位の組み合わせにより構成される管理単位を「拡張ＩａａＳ管理単位」と称する。異なるプロバイダ同士の拡張ＩａａＳ管理単位を使って、同じ構成（例えば３階層アーキテクチャ）をソースコードに記述しても、拡張ＩａａＳ管理単位に互換性がないため、クラウド利用者はプロバイダＡの資源をプロバイダＢの資源で管理することはできない。また、プロバイダ間で拡張ＩａａＳ管理単位には互換性がないために、プロバイダが違うと、ＩａａＳ管理単位が同じかどうかの判別もすることができない。
【００１８】
そこで、本実施形態では、プロバイダ間で拡張ＩａａＳ管理単位を移行が可能かの判別技術について説明する。それぞれの拡張ＩａａＳ管理単位を構成する基本ＩａａＳ管理単位に関しては、共通のアプリケーションプログラムインターフェース（ＡＰＩ）を用いて情報を取得することができる。しかし、拡張ＩａａＳ管理単位において、拡張ＩａａＳ管理単位を構成する構成情報の管理方法が異なるため、プロバイダＡの拡張ＩａａＳ管理単位の構成情報がプロバイダＢのいずれの拡張ＩａａＳ管理単位の構成情報と対応するのか判定することができない。そのため、拡張ＩａａＳ管理単位の構成情報に対応する基本ＩａａＳ管理単位同士の比較をすることができない。そこで、本実施形態では、後述するように、拡張ＩａａＳ管理単位の各構成情報に対応する基本ＩａａＳ管理単位の状況を確認して、仮想のネットワークの構築に関して利用されている仮想リソース群を比較する。
【００１９】
以下では、本実施形態について詳述する。
図１は、本実施形態に係る移行支援装置の一例を示す。移行支援装置１は、第１取得部２、第２取得部３、第１判定部４、第２判定部５、出力部６を含む。
【００２０】
第１取得部２は、仮想マシンが動作する第１物理サーバ装置７と第２物理サーバ装置８とのそれぞれから、仮想マシンの動作環境を構築する仮想リソースの要素に関する要素情報を取得する。第１取得部２の一例として、後述する取得部２４が挙げられる。要素情報の一例として、拡張ＩａａＳ管理単位の構成情報が挙げられる。
【００２１】
第２取得部３は、第１物理サーバ装置７及び第２物理サーバ装置８のそれぞれから取得した要素情報が示す要素を構築する要素を示す細分要素に関する情報である細分要素情報を、第１物理サーバ装置７及び第２物理サーバ装置８のそれぞれから取得する。第１取得部２の一例として、後述する取得部２４が挙げられる。細分要素情報の一例として、基本ＩａａＳ管理単位の構成情報が挙げられる。
【００２２】
第１判定部４は、細分要素情報に基づいて、第１物理サーバ装置７及び第２物理サーバ装置８のそれぞれから取得した通信ネットワークの種別及び通信ネットワークに属する仮想マシンに関する情報がそれぞれ一致するかを判定する。第１判定部４の一例として、後述する作成部２５が挙げられる。
【００２３】
第２判定部５は、通信ネットワークの種別及び通信ネットワークに属する仮想マシンに関する情報がそれぞれ一致すると判定された場合、次の処理を行う。すなわち、第２判定部５は、第２物理サーバ装置８から取得した細分要素情報により示される細分要素の性能が、第１物理サーバ装置７から取得した要素情報により示される細分要素の性能以上であるかを判定する。第２判定部５の一例として、後述するＶＭ比較部２６が挙げられる。
【００２４】
出力部６は、第２物理サーバ装置８から取得した細分要素情報により示される細分要素の性能が、第１物理サーバ装置７から取得した要素情報により示される細分要素の性能以上であると判定された場合、次の処理を行う。すなわち、出力部６は、第１物理サーバ装置７の仮想マシンの動作環境を第２物理サーバ装置８に移行可能であることを示す情報を出力する。出力部６の一例として、後述する出力部２７が挙げられる。
【００２５】
第１及び第２物理サーバ装置７，８のそれぞれから取得した細分要素情報は、通信ネットワークの属性、該通信ネットワークの経路情報、及び通信ネットワークに属する仮想マシンのファイルシステムに関する情報を含む。
【００２６】
第１判定部４は、これらの通信ネットワークの属性、該通信ネットワークの経路情報、及び通信ネットワークに属する仮想マシンのファイルシステムに関する情報が一致する場合、次の処理を行う。すなわち、第１判定部４は、第１及び第２物理サーバ装置のそれぞれから取得した通信ネットワークを識別する通信ネットワーク識別情報を関係付ける。
【００２７】
第２判定部５は、細分要素情報に基づいて、関係付けられた通信ネットワーク識別情報のそれぞれに対応する通信ネットワークに属する仮想マシンのファイルシステムの種類、仮想マシンに割り当てられるリソース情報を比較する。第２判定部５は、比較の結果、第２物理サーバ装置から取得した細分要素情報により示される細分要素の性能が、第１物理サーバ装置から取得した細分要素情報により示される細分要素の性能以上であるか否かを判定する。
【００２８】
このように構成することにより、拡張ＩａａＳ管理単位の各構成情報に対応する基本ＩａａＳ管理単位の状況を確認して、仮想のネットワークの構築に関して利用されている仮想リソース群を比較することができる。比較の結果、リソース群が一致した場合において、移行先のリソースの性能の方が移行元のリソースの性能以上である場合、移行が可能と判定される。その結果、物理サーバ間で、仮想マシンの動作環境を構築する基盤であるインフラストラクチャの移行を支援することができる。
【００２９】
図２は、本実施形態に係る移行判定処理を説明するための図である。ユーザは、入力装置を用いて、後述する移行支援装置に、拡張ＩａａＳ管理単位のテンプレート１１ａ，１１ｂを入力する。移行支援装置は、入力されたテンプレート１１ａ，１１ｂに基づいて、各プロバイダにおいてＩａａＳを実現する情報処理装置（物理サーバ）に、拡張ＩａａＳ管理単位を配備する。ここで、拡張ＩａａＳ管理単位の配備とは、拡張ＩａａＳ管理単位を構築するコンポーネントを物理サーバに設定して、物理サーバに仮想マシンが動作可能なように仮想リソースを割り当てることをいう。
【００３０】
次に、移行支援装置は、各プロバイダの物理サーバから、拡張ＩａａＳ管理単位の構成情報を取得し、その拡張ＩａａＳ管理単位の構成情報から基本ＩａａＳ管理単位の構成情報１２ａ，１２ｂを取得する。プロバイダの物理サーバを、以下では、「プロバイダ」と称する。各プロバイダは、標準ＡＰＩを用いて、テンプレート１１ａ，１１ｂに基づいて配備された拡張ＩａａＳ管理単位を構成する基本ＩａａＳ管理単位の構成情報１２ａ，１２ｂを取得する。各プロバイダは、取得した基本ＩａａＳ管理単位の構成情報１２ａ，１２ｂを移行支援装置へ送信する。
【００３１】
基本ＩａａＳ管理単位の構成情報１２ａ，１２ｂは、一例として、ネットワーク（ネットワーク属性：public／private）、アプリケーションプログラム（ＡＰ）用マシン、データベース（ＤＢ）用マシン、ボリューム等を含む。ネットワーク属性は、ネットワークの公開範囲を示す。ネットワーク属性（private）は、特定の者に公開されたネットワークを示し、ネットワーク属性（public）は、特定の者以外にも公開されたネットワークを示す。
【００３２】
移行支援装置は、後述するように、各プロバイダから取得した拡張ＩａａＳ管理単位に含まれる基本ＩａａＳ管理単位を対応づけ、その構成情報を比較する。ここでは、移行支援装置は、ネットワーク同士を対応づけ、対応するネットワークにつながる仮想マシンを比較する。
【００３３】
これにより、現在使用しているプロバイダの拡張ＩａａＳ管理単位のテンプレートから、移行を予定しているプロバイダの拡張ＩａａＳ管理単位のテンプレートへ、移行できるかどうかを判別することができる。例えば、ユーザＸがプロバイダＡ向け拡張ＩａａＳ管理単位のテンプレート１１ａを利用して、拡張ＩａａＳ管理単位の配備を行っていたとする。ユーザＸがプロバイダＡからプロバイダＢへ拡張ＩａａＳ管理単位を移行する場合、プロバイダＡの拡張ＩａａＳ管理単位のテンプレートから、プロバイダＢの拡張ＩａａＳ管理単位のテンプレートへ移行できるか否かを判別できる。
【００３４】
ここで、各プロバイダは、基本ＩａａＳ管理単位を操作するための、独自ＡＰＩとともに、標準ＡＰＩを備えているとする。標準ＡＰＩの一例としては、ＤＭＴＦ（Distributed Management Task Force）策定のＣＩＭＩ（Cloud Infrastructure Management Interface） V1.0が挙げられる。また、各プロバイダは、独自ＡＰＩと標準APIの比較表を有する。
【００３５】
各プロバイダは、各々の基本ＩａａＳ管理単位を、独自ＡＰＩと標準ＡＰＩの両方で操作できる。例えば、プロバイダは、独自ＡＰＩまたは標準ＡＰＩを用いることにより、仮想マシンイメージ、仮想マシンが接続するネットワーク、仮想マシンが接続するディスク等の情報を得ることができる。仮想マシンイメージの情報は、後述するように、イメージの説明文（例えば、ＯＳの種類やインストールされているソフトウェア等）等から得ることができる。仮想マシンが接続するネットワーク、仮想マシンに接続するボリューム等の基本ＩａａＳ管理単位同士の関係も標準ＡＰＩにより取得することができる。
【００３６】
図３は、本実施形態に係る移行支援装置のブロック図を示す。移行支援装置２１は、制御部２２、及び記憶部３１を含む。制御部２２は、プロセッサ等の演算処理装置である。制御部２２は、本実施形態におけるプログラムを記憶装置から読み出して実行することにより、配備部２３、取得部２４、作成部２５、ＶＭ比較部２６、出力部２７として機能する。
【００３７】
配備部２３は、ユーザから入力された拡張ＩａａＳ管理単位のテンプレート１１を用いて、移行元のプロバイダ及び移行先候補のプロバイダに、拡張ＩａａＳ管理単位の構成を配備する。
【００３８】
取得部２４は、拡張ＩａａＳ管理単位の構成が配備された移行元のプロバイダ及び移行先候補のプロバイダから、拡張ＩａａＳ管理単位の構成情報を取得する。取得部２４は、移行元のプロバイダ及び移行先候補のプロバイダから、拡張ＩａａＳ管理単位の構成情報のそれぞれに対応する基本ＩａａＳ管理単位を取得する。
【００３９】
作成部２５は、移行元のプロバイダ及び移行先候補のプロバイダから取得した基本ＩａａＳ管理単位の構成情報から、ネットワーク属性、仮想マシンの個数、仮想マシンイメージが一致するネットワーク同士を対応付けて、ネットワーク対応関係表３０を作成する。これにより、移行元のプロバイダ及び移行先候補のプロバイダから取得した基本ＩａａＳ管理単位の構成情報同士を比較して、移行元の基本ＩａａＳ管理単位がどの移行先候補のプロバイダの基本ＩａａＳ管理単位と対応するかを解析することができる。
【００４０】
ＶＭ比較部２６は、対応付けしたネットワークに接続される仮想マシンの性能を比較する。比較の結果、移行先候補のネットワークに接続される仮想マシンの性能以上である場合、ＶＭ比較部２６は、移行元の拡張ＩａａＳ管理単位を、移行先候補の物理サーバへ移行可能であると判定する。
【００４１】
出力部２７は、ＶＭ比較部２６により判定された結果を出力する。
記憶装置３１は、ＡＰＩ対応表２８、構成情報表２９、ネットワーク対応関係表３０を格納する。ＡＰＩ対応表２８は、各プロバイダに設定された標準ＡＰＩを読み出すための情報と、その標準ＡＰＩに用いるパラメータとの対応表である。構成情報テーブル２９は、各プロバイダの物理サーバに構築された仮想マシンを動作させるための仮想リソースの構成情報を格納するテーブルである。ネットワーク対応関係表３０は、移行元のＩａａＳ管理単位のネットワーク情報と移行先候補のＩａａＳ管理単位のネットワーク情報とを対応付けるテーブルである。
【００４２】
図４は、本実施形態におけるＡＰＩ対応表の一例を示す。図４のＡＰＩ対応表は、プロバイダで稼働している標準ＡＰＩを利用するためのテーブルである。パラメータ“$USERID”は、ユーザIDを示す。パラメータ“$VSYSID”は、プロバイダの拡張ＩａａＳ管理単位のIDを示す。
【００４３】
取得部２４は、プロバイダ内の仮想マシンの情報を取得する場合、“http://api.providera.com/cimi/$USERID/systems/$VSYSID/machines/$VSERVERID”にリクエストを送ればよい。ここで、“$VSYSID”は、仮想マシンＩＤを示す。
【００４４】
取得部２４は、プロバイダ内のボリュームの情報を取得する場合、“http://api.providera.com/cimi/$USERID/systems/$VSYSID/volumes/$VOLUMEID”にリクエストを送ればよい。ここで、“$VOLUMEID”は、ボリュームＩＤを示す。
【００４５】
取得部２４は、プロバイダのネットワークの情報を取得する場合、“http://api.providera.com/cimi/$USERID/systems/$VSYSID/networks/$NETID”にリクエストを送ればよい。ここで、“$NETID”は、ネットワークＩＤを示す。
【００４６】
図５は、本実施形態における構成情報表の一例を示す。構成情報表２９は、仮想マシン情報４１、ネットワーク情報５１、ボリューム情報６１を含む。仮想マシン情報４１は、「マシンＩＤ」４２、「イメージＩＤ」４３、「イメージの説明」４４、「マシンタイプ」４５、「接続先ＮＷ」４６、「ボリューム」４７のデータ項目を含む。
【００４７】
「マシンＩＤ」４２には、仮想マシンを識別する識別情報が格納される。「イメージＩＤ」４３には、仮想マシンイメージを識別する識別情報が格納される。「イメージの説明」４４には、そのイメージを説明する情報が格納される。「マシンタイプ」４５には、その仮想マシンで用いるリソースに関する情報が格納される。「接続先ＮＷ」４６には、接続先のネットワークを識別する識別情報が格納される。「ボリューム」４７には、ボリューム名が格納される。
【００４８】
ネットワーク情報５１は、「ネットワークＩＤ」５２、「ＮＷタイプ」５３、「ルーティング情報」５４のデータ項目を含む。「ネットワークＩＤ」５２には、ネットワークを識別する識別情報が格納される。「ＮＷタイプ」５３には、“public”または“private”のネットワークのタイプが格納される。「ルーティング情報」５４には、通過するネットワークのネットワークＩＤが格納される。
【００４９】
ボリューム情報６１は、「ボリュームＩＤ」６２、「サイズ」６２のデータ項目を含む。「ボリュームＩＤ」６２には、ボリュームを識別する識別情報が格納される。「サイズ」６２には、そのボリュームの容量が格納される。
【００５０】
図６は、本実施形態におけるネットワーク対応関係表の一例を示す。ネットワーク対応関係表３０は、「移行元のプロバイダのネットワーク」７１、「移行先候補のプロバイダのネットワーク」７２のデータ項目を含む。「移行元のプロバイダのネットワーク」７１は、移行元のプロバイダの基本ＩａａＳ管理単位のネットワークを識別する識別情報が格納される。「移行先候補のプロバイダのネットワーク」７２には、移行先候補のプロバイダの基本ＩａａＳ管理単位のネットワークを識別する識別情報が格納される。
【００５１】
図７は、本実施形態における拡張ＩａａＳ管理単位のテンプレートの一例を示す。拡張ＩａａＳ管理単位のテンプレート１１は、テンプレート特定情報８１、ネットワークテンプレート８２、マシンテンプレート８３，８４、ボリュームテンプレート８５等を含む。
【００５２】
テンプレート特定情報８１は、配備しようとする拡張ＩａａＳ管理単位のテンプレートを識別する識別情報、そのテンプレート名を含む。ネットワークテンプレート８２は、配備しようとするネットワーク名、そのネットワークのタイプ（属性）を定義する。マシンテンプレート８３、８４は、配備しようとする仮想マシン名、仮想マシンの構成情報（ＣＰＵの個数，メモリ容量、ディスク容量）、その仮想マシンの属するネットワーク名を定義する。マシンテンプレート８３は、アプリケーションサーバとしての仮想マシンの構成情報を定義する。マシンテンプレート８４は、データベース（ＤＢ）サーバとしての仮想マシンの構成情報を定義する。マシンテンプレート８４は、ボリュームテンプレート８５を含む。ボリュームテンプレート８５は、マシンテンプレート８４で構成される仮想マシンに割り当てられるボリュームの容量を定義する。
【００５３】
次に、図８−図１１を用いて、本実施形態における移行判定処理を説明する。
図８は、本実施形態における移行判定処理の全体フローの一例を示す。移行判定処理は、構成情報取得フェーズ（Ｓ１〜Ｓ５）と構成情報比較フェーズ（Ｓ６〜１２）を含む。図９は、図８のフローのＳ７の詳細フローの一例を示す。図１０は、図８のフローのＳ９の詳細フローの一例を示す。図１１は、図１０のフローのＳ９−３の詳細フローの一例を示す。
【００５４】
ユーザは、入力装置を用いて、移行支援装置２１に、移行元及び移行先候補それぞれの拡張ＩａａＳ管理単位のテンプレート１１を入力する。本実施形態では、プロバイダＡ、Ｂにそれぞれ、拡張ＩａａＳ管理単位のテンプレート１１ａ，１１ｂが入力される。配備部２３は、その入力された拡張ＩａａＳ管理単位のテンプレート１１を取得し、記憶部３１に格納する（Ｓ１）。
【００５５】
配備部２３は、その取得した拡張ＩａａＳ管理単位のテンプレート１１を用いて、移行元及び移行先候補のプロバイダの物理サーバ内に、拡張ＩａａＳ管理単位のコンポーネント（仮想サーバ、ネットワーク、ボリューム等）を配備（構築）する（Ｓ２）。本実施形態では、配備部２３は、プロバイダＡ用の拡張ＩａａＳ管理単位のテンプレート１１ａを用いて、プロバイダＡ（３２ａ）に、拡張ＩａａＳ管理単位を配備する。また、配備部２３は、プロバイダＢ用の拡張ＩａａＳ管理単位のテンプレート１１ｂを用いて、プロバイダＢ（３２ｂ）に、拡張ＩａａＳ管理単位を配備する。
【００５６】
取得部２４は、各プロバイダ３２から、拡張ＩａａＳ管理単位の構成情報を取得し（Ｓ３）、さらに、その拡張ＩａａＳ管理単位の構成情報のそれぞれに対応する基本ＩａａＳ管理単位の構成情報を取得し、構成情報表２９に格納する（Ｓ４）。ここで、取得部２４は、以下に示すように、ＡＰＩ対応表２８を用いて、プロバイダＡ，Ｂから、拡張ＩａａＳ管理単位の構成情報及び基本ＩａａＳ管理単位の構成情報を取得するためのリクエストを生成する。
【００５７】
例えば、取得部２４は、図１２（Ａ）に示すように、ＡＰＩ対応表２８を用いて、プロバイダＡから拡張ＩａａＳ管理単位の構成情報を取得するためのリクエスト９１を作成する。取得部２４は、作成したリクエスト９１を送信する。プロバイダＡは、そのリクエスト９１を受信すると、標準ＡＰＩを用いて、図１２（Ｂ）に示すように、基本ＩａａＳ管理単位の構成情報を含むレスポンス９２を生成する。プロバイダＡは、移行支援装置２１にそのレスポンス９２を返信する。取得部２４は、プロバイダＡから送信されたレスポンス９２を取得する。図１２（Ｂ）の場合、拡張ＩａａＳ管理単位は、太字で示した部分であり、”NET00001”と”NET00002”で示す２つのネットワーク、”VSERVER00001”と”VSERVER00002”で示す２つの仮想マシン、１つの”VDISK00001”で示すボリュームのコンポーネントを含む。この場合、拡張ＩａａＳ管理単位の構成情報は、NET00001とNET00002で示す２つのネットワーク、VSERVER00001とVSERVER00002で示す２つの仮想マシン、VDISK00001で示すボリュームの各コンポーネントを示す情報に該当する。
【００５８】
取得部２４は、取得した拡張ＩａａＳ管理単位の構成情報を、図１３に示すように、構成情報表２９ａに格納する。図１３の例では、マシンＩＤ（”VSERVER00001”、”VSERVER00002”）、ネットワークＩＤ（”NET00001”、”NET00002”）、ボリュームＩＤ（”VDISK00001”）が格納される。
【００５９】
次に、取得部２４は、図１４（Ａ）に示すように、ＡＰＩ対応表２８を用いて、マシンＩＤ（”VSERVER00001”）で示す仮想マシンの構成情報を基本ＩａａＳ管理単位として取得するためのリクエスト９３を作成する。取得部２４は、作成したリクエスト９３を送信する。プロバイダＡは、そのリクエスト９３を受信すると、標準ＡＰＩを用いて、図１４（Ｂ）に示すように、マシンＩＤ（”VSERVER00001”）についての基本ＩａａＳ管理単位の構成情報を含むレスポンス９４を生成する。プロバイダＡは、移行支援装置２１にそのレスポンス９４を返信する。取得部２４は、プロバイダＡから送信されたレスポンス９４を取得する。図１４（Ｂ）の場合、マシンＩＤ（”VSERVER00001”）で示す基本ＩａａＳ管理単位（ここでは、仮想マシン）の構成情報は、太字で記載した部分（ＣＰＵの個数、メモリ容量、ディスク容量、仮想マシンイメージ、接続先ネットワーク）である。取得部２４は、取得したマシンＩＤ（”VSERVER00001”）で示す仮想マシンの構成情報を、図１５に示すように、構成情報表２９ａに格納する。図１５の例では、マシンＩＤ（”VSERVER00001”）のエントリに、イメージＩＤ（”IMG00001”）、マシンタイプ、接続先ネットワーク（ＮＷ）＝”NET00001”が格納されている。マシンタイプには、ＣＰＵ＝１［個］、メモリ容量＝５メガバイト［ＭＢ］、ディスク容量＝５ギガバイト［ＧＢ］が格納される。
【００６０】
次に、取得部２４は、図１６（Ａ）に示すように、ＡＰＩ対応表２８を用いて、マシンＩＤ（”VSERVER00002”）で示す仮想マシンの構成情報を基本ＩａａＳ管理単位として取得するためのリクエスト９５を作成する。取得部２４は、作成したリクエスト９５を送信する。プロバイダＡは、そのリクエスト９５を受信すると、標準ＡＰＩを用いて、図１６（Ｂ）に示すように、マシンＩＤ（”VSERVER00002”）の構成情報を含むレスポンス９６を生成する。プロバイダＡは、移行支援装置２１にそのレスポンス９６を返信する。取得部２４は、プロバイダＡから送信されたレスポンス９６を取得する。図１６（Ｂ）の場合、マシンＩＤ（”VSERVER00002”）で示す基本ＩａａＳ管理単位（ここでは、仮想マシン）の構成情報は、太字で記載した部分（ＣＰＵの個数、メモリ容量、ディスク容量、仮想マシンイメージ、接続先ネットワーク、ボリューム）である。取得部２４は、取得したマシンＩＤ（”VSERVER00002”）で示す仮想マシンの構成情報を、図１７に示すように、構成情報表２９ａに格納する。図１７の例では、マシンＩＤ（”VSERVER00002”）のエントリに、イメージＩＤ（”IMG00002”）、マシンタイプ、接続先ＮＷ＝” NET00002”、ボリューム＝”VDISK00001”が格納されている。マシンタイプには、ＣＰＵ＝１［個］、メモリ容量＝５［ＭＢ］、ディスク容量＝５［ＧＢ］が格納される。
【００６１】
次に、取得部２４は、図１８（Ａ）に示すように、ＡＰＩ対応表２８を用いて、プロバイダＡで用いられている仮想マシンイメージの内容を示す情報（「イメージの説明」）を基本ＩａａＳ管理単位として取得するためのリクエスト９７を作成する。取得部２４は、作成したリクエスト９７を送信する。プロバイダＡは、そのリクエスト９７を受信すると、標準ＡＰＩを用いて、図１８（Ｂ）に示すように、プロバイダＡで用いられている仮想マシンイメージの「イメージの説明」を含むレスポンス９８を生成する。プロバイダＡは、移行支援装置２１にそのレスポンス９８を返信する。取得部２４は、プロバイダＡから送信されたレスポンス９８を取得する。図１８（Ｂ）の場合、イメージID（"IMG00001"）で示す仮想マシンイメージの説明文は、“CentOS 5.6 Tomcat 6.0”である。また、イメージID（"IMG00002"）で示す仮想マシンイメージの説明文は、“CentOS 5.6 MySQL 5.5”である。取得部２４は、プロバイダＡで用いられている仮想マシンイメージの「イメージの説明」を、図１９に示すように、構成情報表２９ａに格納する。図１９の例では、マシンＩＤ（”VSERVER00001”）のエントリに、イメージの説明（“CentOS 5.6 Tomcat 6.0”）が格納される。マシンＩＤ（”VSERVER00002”）のエントリに、イメージの説明（“CentOS 5.6 MySQL 5.5”）が格納される。
【００６２】
次に、取得部２４は、ＡＰＩ対応表２８を用いて、プロバイダＡで用いられているネットワークに関する情報を基本ＩａａＳ管理単位として取得するためのリクエストを作成する。取得部２４は、作成したリクエストを送信する。プロバイダＡは、そのリクエストを受信すると、標準ＡＰＩを用いて、プロバイダＡで用いられているネットワークに関する情報を含むレスポンスを生成する。プロバイダＡは、移行支援装置２１にそのレスポンスを返信する。取得部２４は、プロバイダＡから送信されたレスポンスを取得し、構成情報表２９ａに格納する。図２０の例では、ネットワーク情報について、ネットワークＩＤ（”NET00001”）のエントリに、ネットワーク（ＮＷ）タイプ＝”public”、ルーティング情報＝” NET00002”が格納される。また、ネットワークＩＤ（”NET00002”）のエントリに、ＮＷタイプ＝”private”、ルーティング情報＝” NET00001”が格納される。
【００６３】
次に、取得部２４は、ＡＰＩ対応表２８を用いて、プロバイダＡで用いられているボリュームに関する情報を基本ＩａａＳ管理単位として取得するためのリクエストを作成する。取得部２４は、作成したリクエストを送信する。プロバイダＡは、そのリクエストを受信すると、標準ＡＰＩを用いて、プロバイダＡで用いられているボリュームに関する情報を含むレスポンスを生成する。プロバイダＡは、移行支援装置２１にそのレスポンスを返信する。取得部２４は、プロバイダＡから送信されたレスポンスを取得し、構成情報表２９ａに格納する。図２１の例では、ネットワーク情報について、ボリュームＩＤ（”VDISK00001”）のエントリに、サイズ＝100［GB］が格納される。
【００６４】
次に、取得部２４は、図２２（Ａ）に示すように、ＡＰＩ対応表２８を用いて、プロバイダＢから拡張ＩａａＳ管理単位の構成情報を取得するためのリクエスト１０１を作成する。取得部２４は、作成したリクエスト１０１を送信する。プロバイダＢは、そのリクエスト１０１を受信すると、標準ＡＰＩを用いて、図２２（Ｂ）に示すように、拡張ＩａａＳ管理単位の構成情報を含むレスポンス１０２を生成する。プロバイダＢは、移行支援装置２１にそのレスポンス１０２を返信する。取得部２４は、プロバイダＢから送信されたレスポンス１０２を取得する。図２２（Ｂ）の場合、拡張ＩａａＳ管理単位は、太字で示した部分であり、”n5071”と”n5072”で示す２つのネットワーク、”i2746”と”i2747”で示す２つの仮想サーバ、”v5272”で示すボリュームのコンポーネントを含む。この場合、拡張ＩａａＳ管理単位の構成情報は、”n5071”と”n5072”で示す２つのネットワーク、”i2746”と”i2747”で示す２つの仮想サーバ、”v5272”で示すボリュームの各コンポーネントを示す情報に該当する。
【００６５】
取得部２４は、取得した拡張ＩａａＳ管理単位の構成情報を、図２３に示すように、構成情報表２９ｂに格納する。図２３の例では、マシンＩＤ（”i2746”、”i2747”）、ネットワークＩＤ（”n5071”、”n5072”）、ボリュームＩＤ（”v5272”）が格納される。
【００６６】
次に、取得部２４は、図２４（Ａ）に示すように、ＡＰＩ対応表２８を用いて、マシンＩＤ（”i2746”）で示す仮想マシンの構成情報を基本ＩａａＳ管理単位として取得するためのリクエスト１０３を作成する。取得部２４は、作成したリクエスト１０３を送信する。プロバイダＢは、そのリクエスト１０３を受信すると、標準APIを用いて、図２４（Ｂ）に示すように、マシンＩＤ（”i2746”）の構成情報を含むレスポンス１０４を生成する。プロバイダＢは、移行支援装置２１にそのレスポンス１０４を返信する。取得部２４は、プロバイダＢから送信されたレスポンス１０４を取得する。図２４（Ｂ）の場合、マシンＩＤ（”i2746”）で示す基本ＩａａＳ管理単位（ここでは、仮想マシン）の構成情報は、太字で記載した部分（ＣＰＵの個数、メモリ容量、ディスク容量、仮想マシンイメージ、接続先ネットワーク）である。取得部２４は、取得したマシンＩＤ（”i2746”）で示す仮想マシンの構成情報を、図２５に示すように、構成情報表２９ｂに格納する。図２５の例では、マシンＩＤ（”i2746”）のエントリに、イメージＩＤ（”ami3627”）、マシンタイプ、接続先ＮＷ＝”n5071”が格納されている。マシンタイプには、ＣＰＵ＝１［個］、メモリ容量＝６［ＭＢ］、ディスク容量＝６［ＧＢ］が格納される。
【００６７】
次に、取得部２４は、同様に、ＡＰＩ対応表２８を用いて、マシンＩＤ（”i2747”）で示す仮想マシンの構成情報を基本ＩａａＳ管理単位として取得するためのリクエストを作成する。取得部２４は、作成したリクエストを送信する。プロバイダＢは、そのリクエストを受信すると、標準ＡＰＩを用いて、マシンＩＤ（”i2747”）の構成情報を含むレスポンスを生成する。プロバイダＢは、移行支援装置２１にそのレスポンスを返信する。取得部２４は、プロバイダＢから送信されたレスポンスを取得する。取得部２４は、取得したマシンＩＤ（”i2747”）で示す仮想マシンの構成情報を、図２６に示すように、構成情報表２９ｂに格納する。図２６の例では、マシンＩＤ（”i2747”）のエントリに、イメージＩＤ（”ami3628”）、マシンタイプ、接続先ＮＷ＝” n5072”、ボリューム＝”v5272”が格納されている。マシンタイプには、ＣＰＵ＝１［個］、メモリ容量＝６［ＭＢ］、ディスク容量＝６［ＧＢ］が格納される。
【００６８】
次に、取得部２４は、ＡＰＩ対応表２８を用いて、プロバイダＢで用いられている仮想マシンイメージの内容を示す情報（「イメージの説明」）を基本ＩａａＳ管理単位として取得するためのリクエストを作成する。取得部２４は、作成したリクエストを送信する。プロバイダＢは、そのリクエストを受信すると、標準ＡＰＩを用いて、プロバイダＢで用いられている仮想マシンイメージの「イメージの説明」を含むレスポンスを生成する。プロバイダＡは、移行支援装置２１にそのレスポンスを返信する。取得部２４は、プロバイダＢから送信されたレスポンスを取得する。取得部２４は、プロバイダＢで用いられている仮想マシンイメージの「イメージの説明」を、図２７に示すように、構成情報表２９ｂに格納する。図２７の例では、マシンＩＤ（”i2746”）のエントリに、イメージの説明（“CentOS 5.6 Tomcat 6.0”）が格納される。マシンＩＤ（”i2747”）のエントリに、イメージの説明（“CentOS 5.6 MySQL 5.5”）が格納される。
【００６９】
次に、取得部２４は、ＡＰＩ対応表２８を用いて、プロバイダＢで用いられているネットワークに関する情報を基本ＩａａＳ管理単位として取得するためのリクエストを作成する。取得部２４は、作成したリクエストを送信する。プロバイダＢは、そのリクエストを受信すると、標準ＡＰＩを用いて、プロバイダＢで用いられているネットワークに関する情報を含むレスポンスを生成する。プロバイダＢは、移行支援装置２１にそのレスポンスを返信する。取得部２４は、プロバイダＢから送信されたレスポンスを取得し、構成情報表２９ｂに格納する。図２８の例では、ネットワーク情報について、ネットワークＩＤ（”n5071”）のエントリに、ＮＷタイプ＝”private”、ルーティング情報＝”n5072”が格納される。また、ネットワークＩＤ（”n5072”）のエントリに、ＮＷタイプ＝” public”、ルーティング情報＝”n5071”が格納される。
【００７０】
次に、取得部２４は、ＡＰＩ対応表２８を用いて、プロバイダＢで用いられているボリュームに関する情報を基本ＩａａＳ管理単位として取得するためのリクエストを作成する。取得部２４は、作成したリクエストを送信する。プロバイダＢは、そのリクエストを受信すると、標準ＡＰＩを用いて、プロバイダＢで用いられているボリュームに関する情報を含むレスポンスを生成する。プロバイダＢは、移行支援装置２１にそのレスポンスを返信する。取得部２４は、プロバイダＢから送信されたレスポンスを取得し、構成情報表２９ｂに格納する。図２９の例では、ネットワーク情報について、ボリュームＩＤ（”v5272”）のエントリに、サイズ＝100［GB］が格納される。
【００７１】
取得部２４は、拡張ＩａａＳ管理単位のテンプレート１１の個数分、Ｓ２〜Ｓ４の処理を繰り返す（Ｓ５）。
【００７２】
次に、作成部２５は、移行元の構成情報表と、その比較対象（移行先候補）の構成情報からいずれかの構成情報表２９を選択する（Ｓ６）。本実施形態では、作成部２５は、プロバイダＡの構成情報表２９ａとプロバイダＢの構成情報表２０ｂとを選択するものとする。
【００７３】
作成部２５は、プロバイダＡの構成情報表２９ａとプロバイダＢの構成情報表２０ｂとを用いて、ネットワーク対応関係表３０を作成する（Ｓ７）。Ｓ７の処理については、図９を用いて詳述する。
【００７４】
作成部２５は、各構成情報表２９から、ネットワーク毎に接続する仮想マシンのリスト１１１（図３０）を作成する（Ｓ７−１）。具体的には、作成部２５は、プロバイダＡについて、構成情報表２９ａのネットワーク情報から、「ネットワークＩＤ」、「ＮＷタイプ」を取得する。作成部２５は、構成情報表２９ａの仮想マシン情報の「接続先ＮＷ」について、その取得した「ネットワークＩＤ」と一致するネットワークＩＤを含むエントリを抽出する。作成部２５は、抽出されたエントリから、「マシンＩＤ」、「イメージの説明」を取得する。また、作成部２５は、抽出されたエントリ数を計測する。作成部２５は、取得した「ネットワークＩＤ」、「ＮＷタイプ」、「マシンＩＤ」、「イメージの説明」、「エントリ数」を、リスト１１０ａの「ネットワークＩＤ」、「ネットワーク属性」、「マシンＩＤ」、「ＶＭイメージの説明」、「ＶＭの個数」に格納する。すると、構成情報表２９ａからリスト１１１ａが作成される。
【００７５】
作成部２５は、同様にして、構成情報表２９ｂからリスト１１１ｂを作成する。
次に、作成部２５は、図３０の（Ａ）及び（Ｂ）に示すように、リスト１１１ａ，１１１ｂにおいて、属性が同じネットワークにおいて「ＶＭの個数」と「イメージの説明」を比較し（Ｓ７−２）、「ＶＭの個数」と「イメージの説明」が一致するネットワークがあるか否かを判定する（Ｓ７−３）。
【００７６】
具体的には、作成部２５は、リスト１１１ａのネットワークＩＤ＝”VNET00001”で示すエントリの「ネットワーク属性」と一致するネットワーク属性を有するエントリを、リスト１１１ｂから検索し、ネットワークＩＤ＝”n5071”で示すエントリがヒットする。ネットワークＩＤ＝”VNET00001”で示すエントリとネットワークＩＤ＝”n5071”で示すエントリとの「ＶＭの個数」と「イメージの説明」は一致するので、作成部２５は、一致するネットワークがあると判定する。
【００７７】
作成部２５は、一致するネットワークがあると判定した場合（Ｓ７−３で「Ｙｅｓ」）、図３１に示すように、判定結果を、ネットワーク対応関係表３０に格納する（Ｓ７−４）。移行元のプロバイダのネットワークに"VNET00001"が格納され、それに対応する移行先候補のプロバイダのネットワークに"n5071"が格納される。
【００７８】
Ｓ７−２での比較の結果、属性が同じネットワークがない場合または同じネットワークにおいて「ＶＭの個数」と「イメージの説明」が一致しない場合（Ｓ７−３で「Ｎｏ」）、作成部２５はネットワーク対応関係表３０の作成ができないと判定する（Ｓ７−９）。
【００７９】
次に、作成部２５は、一致したネットワークが経由するネットワークを選択する（Ｓ７−６）。具体的には、作成部２５は、構成情報表２９ａのネットワーク情報において、ネットワークＩＤ＝”VNET00001”のエントリに含まれるルーティング情報＝”VNET00002”を取得する。また、作成部２５は、構成情報表２９ｂのネットワーク情報において、ネットワークＩＤ＝”n5071”のエントリに含まれるルーティング情報＝” n5072”を取得する。この場合、一致したネットワークが経由するネットワークがあるので（Ｓ７−６で「Ｙｅｓ」、Ｓ７−７で「Ｙｅｓ」）、作成部２５は、次の処理を行う。すなわち、作成部２５は、ネットワークＩＤ＝”VNET00001”で示すエントリと、ネットワークＩＤ＝” n5072”で示すエントリについて、Ｓ７−２の処理を行う。
【００８０】
一致したネットワークにルーティングするネットワークがない場合（Ｓ７−６で「Ｎｏ」）、作成部２５は、ネットワーク対応関係表３０の作成ができないと判定する（Ｓ７−９）。
【００８１】
作成部２５は、ネットワークの個数分、Ｓ７−２〜Ｓ７−６の処理を繰り返し（Ｓ７−７）、ネットワーク対応関係表３０を作成する。
【００８２】
図８のＳ７において、ネットワーク対応関係表３０が作成できなかった場合（Ｓ８で「Ｎｏ」）、作成部２５は、基本ＩａａＳ管理単位を移行できないと判定する（Ｓ１２）。
【００８３】
図８のＳ７において、ネットワーク対応関係表３０が作成された場合、ＶＭ比較部２６は、ネットワーク対応関係表３０において、対応するネットワークに接続される仮想マシン同士を比較する（Ｓ９）。Ｓ９の処理については、図１０、図１１を用いて詳述する。
【００８４】
まず、ＶＭ比較部２６は、ネットワーク対応表３０から、対応するネットワークの対を取得する（Ｓ９−１）。ＶＭ比較部２６は、各構成情報表２９から、取得した対について「移行元のプロバイダのネットワーク」に対応する仮想マシン（移行元ＶＭ）と、「移行先候補のプロバイダのネットワーク」に対応する仮想マシン（移行先候補ＶＭ）を取得する（Ｓ９−２）。
【００８５】
ＶＭ比較部２６は、各構成情報表２９を用いて、１つの移行元ＶＭと、１つの移行先候補ＶＭとを比較する（Ｓ９−３）。Ｓ９−３の処理については、図１１を用いて説明する。
【００８６】
ＶＭ比較部２６は、構成情報表２９ａの移行元ＶＭの「イメージの説明」と、構成情報表２９ｂの移行先候補ＶＭの「イメージの説明」とが同じか否かを判定する（Ｓ９−３−１）。
【００８７】
移行元ＶＭの「イメージの説明」と、移行先候補ＶＭの「イメージの説明」とが異なる場合（Ｓ９−３−１で「Ｎｏ」）、ＶＭ比較部２６は、移行元ＶＭと移行先候補ＶＭとは対応しないと判定する（Ｓ９−３−５）。
【００８８】
移行元ＶＭの「イメージの説明」と、移行先候補ＶＭの「イメージの説明」とが同じ場合（Ｓ９−３−１で「Ｙｅｓ」）、ＶＭ比較部２６は、次の処理を行う。すなわち、ＶＭ比較部２６は、構成情報表２９ａ，２９ｂを用いて、移行元ＶＭと移行先候補ＶＭのマシンタイプが同じか、または移行元ＶＭより移行先候補ＶＭの方が性能が良いかを判定する（Ｓ９−３−２）。ここで、移行元ＶＭより移行先候補ＶＭの方がＣＰＵの個数、メモリサイズ、及びディスクサイズ等が多い場合、ＶＭ比較部２６は、移行元ＶＭより移行先候補ＶＭの方が性能が良いと判定する。
【００８９】
移行元ＶＭと移行先候補ＶＭのマシンタイプが異なる場合、または移行元ＶＭより移行先候補ＶＭの方が性能が低い場合（Ｓ９−３−２で「Ｎｏ」）、ＶＭ比較部２６は、移行元ＶＭと移行先候補ＶＭとは対応しないと判定する（Ｓ９−３−５）。
【００９０】
移行元ＶＭと移行先候補ＶＭのマシンタイプが同じ場合、または移行元ＶＭより移行先候補ＶＭの方が性能が良い場合（Ｓ９−３−２で「Ｙｅｓ」）、ＶＭ比較部２６は、次の処理を行う。すなわち、ＶＭ比較部２６は、移行先候補ＶＭのボリュームの数が移行元ＶＭのボリュームの数以上で、かつ移行先候補ＶＭのボリュームの容量が移行元ＶＭのボリュームの容量以上であるか否かを判定する（Ｓ９−３−３）。移行先候補ＶＭのボリュームの数が移行元ＶＭのボリュームより少ないか、または移行先候補ＶＭのボリュームの容量が移行元ＶＭのボリュームの容量より小さい場合（Ｓ９−３−３で「Ｎｏ」）、ＶＭ比較部２６は、移行元ＶＭと移行先候補ＶＭとは対応しないと判定する（Ｓ９−３−５）。
【００９１】
移行先候補ＶＭのボリュームの数が移行元ＶＭのボリュームの数以上で、かつ移行先候補ＶＭのボリュームの容量が移行元ＶＭのボリュームの容量以上である場合（Ｓ９−３−３で「Ｙｅｓ」）、ＶＭ比較部２６は、移行元ＶＭと移行先候補ＶＭとは対応すると判定する（Ｓ９−３−４）。
【００９２】
ＶＭ比較部２６は、Ｓ９−２で取得した移行元ＶＭ、移行先候補ＶＭの全ての組み合わせについて、Ｓ９−３の比較処理を行う（Ｓ９−４）。ＶＭ比較部２６は、ネットワーク対応関係表３０に格納されている全てのネットワークの組について、Ｓ９−１〜Ｓ９−４の処理を行う（Ｓ９−５）。
【００９３】
ＶＭ比較部２６は、Ｓ９の処理の結果、比較するプロバイダ同士の全てのネットワークについて仮想マシンが一致するか否かを判定する（Ｓ１０）。Ｓ９の処理の結果、比較するプロバイダ同士の全てのネットワークについて仮想マシンが一致する場合（Ｓ１０で「Ｙｅｓ」）、ＶＭ比較部２６は、移行元のプロバイダから移行先候補のプロバイダへ拡張ＩａａＳ管理単位の移行はできると判定する（Ｓ１１）。移行元のプロバイダから移行先候補のプロバイダへ拡張ＩａａＳ管理単位の移行はできると判定された場合、出力部２７は、図３２に示すように、その判定結果を表示画面に出力する（Ｓ１３）。
【００９４】
Ｓ９の処理の結果、比較するプロバイダ同士の全てのネットワークについて仮想マシンが一致しない場合（Ｓ１０で「Ｎｏ」）、ＶＭ比較部２６は、移行元のプロバイダから移行先候補のプロバイダへ拡張ＩａａＳ管理単位の移行はできないと判定する（Ｓ１２）。移行元のプロバイダから移行先候補のプロバイダへ拡張ＩａａＳ管理単位の移行はできないと判定された場合、出力部２７は、その旨を表示画面に出力する（Ｓ１３）。
【００９５】
図１２（Ｂ）に示すプロバイダＡの拡張ＩａａＳ管理単位の構成情報と、図２２に示すプロバイダＢの拡張ＩａａＳ管理単位の構成情報を比較すると、その表記方法が異なっているので、それぞれの構成要件を対応付けることができない。しかしながら、本実施形態を用いることにより、各プロバイダの拡張ＩａａＳ管理単位の構成情報のそれぞれに対応する基本ＩａａＳ管理単位を比較することにより、各プロバイダの拡張ＩａａＳ管理単位の構成情報を対応づけることができる。
【００９６】
図３２は、本実施形態における移行元のプロバイダから移行先候補のプロバイダへ基本ＩａａＳ管理単位の移行はできる場合に表示される画面表示例を示す。出力内容には、移行可能なテンプレートとして、移行元のプロバイダで用いているテンプレートの内容と、移行先候補のプロバイダで用いているテンプレートの内容が含まれる。
【００９７】
図３３は、本実施形態における移行判定処理を実行するコンピュータのハードウェアブロック図を示す。コンピュータ１２０は、実施形態の処理を行うプログラムを読み込むことにより、移行支援装置２１として機能する。
【００９８】
コンピュータ１２０は、出力Ｉ／Ｆ１２１、ＣＰＵ１２２、ＲＯＭ１２３、通信Ｉ／Ｆ１２４、入力Ｉ／Ｆ１２５、ＲＡＭ１２６、記憶装置１２７、読み取り装置１２８、バス１２９を含む。コンピュータ１２０は、出力機器１３１、及び入力機器１３２と接続可能である。
【００９９】
ここで、ＣＰＵは、中央演算装置を示す。ＲＯＭは、リードオンリメモリを示す。ＲＡＭは、ランダムアクセスメモリを示す。Ｉ／Ｆは、インターフェースを示す。バス１２９には、出力Ｉ／Ｆ１２１、ＣＰＵ１２２、ＲＯＭ１２３、通信Ｉ／Ｆ１２４、入力Ｉ／Ｆ１２５、ＲＡＭ１２６、記憶装置１２７、読み取り装置１２８が接続されている。読み取り装置１２８は、可搬型記録媒体を読み出す装置である。出力機器１３１は、出力Ｉ／Ｆ１２１に接続されている。入力機器１３２は、入力Ｉ／Ｆ１２５に接続されている。
【０１００】
記憶装置１２７としては、ハードディスクドライブ、フラッシュメモリ装置、磁気ディスク装置など様々な形式の記憶装置を使用することができる。
【０１０１】
記憶装置１２７またはＲＯＭ１２３には、本実施形態における移行判定プログラム、ＡＰＩ対応表２８、構成情報表２９、ネットワーク対応関係表３０、リスト１１１等が格納されている。
【０１０２】
ＣＰＵ１２２は、プロセッサの一例であり、記憶装置１２７等に格納した実施形態に係る移行判定プログラムを読み出し、当該プログラムを実行し、配備部２３、取得部２４、作成部２５、ＶＭ比較部２６、出力部２７として機能する。
【０１０３】
実施形態に係る移行判定プログラムは、プログラム提供者側から通信ネットワーク１３０、および通信Ｉ／Ｆ１２４を介して、例えば記憶装置１２７に格納してもよい。また、本実施形態で説明した処理を実現するプログラムは、市販され、流通している可搬型記憶媒体に格納されていてもよい。この場合、この可搬型記憶媒体は読み取り装置１２８にセットされて、ＣＰＵ１２２によってそのプログラムが読み出されて、実行されてもよい。可搬型記憶媒体としてはＣＤ−ＲＯＭ、フレキシブルディスク、光ディスク、光磁気ディスク、ＩＣ（integrated circuit）カード、ＵＳＢ（Universal Serial Bus）メモリ装置など様々な形式の記憶媒体を使用することができる。このような記憶媒体に格納されたプログラムが読み取り装置１２８によって読み取られる。
【０１０４】
また、入力機器１３２には、キーボード、マウス、電子カメラ、ウェブカメラ、マイク、スキャナ、センサ、タブレット、タッチパネルなどを用いることが可能である。また、出力機器１３１には、ディスプレイ、プリンタ、スピーカなどを用いることが可能である。また、ネットワーク１３０は、インターネット、ＬＡＮ、ＷＡＮ、専用線、有線、無線等の通信網であってよい。
【０１０５】
なお、本実施形態は、以上に述べた実施の形態に限定されるものではなく、本実施形態の要旨を逸脱しない範囲内で種々の構成または実施形態を取ることができる。
【符号の説明】
【０１０６】
１      動作環境移行支援装置
２      第１取得部
３      第２取得部
４      第１判定部
５      第２判定部
６      出力部
７      第１物理サーバ装置
８      第２物理サーバ装置
２１    移行支援装置
２２    制御部
２３    配備部
２４    取得部
２５    作成部
２６    ＶＭ比較部
２７    出力部
２８    ＡＰＩ対応表
２９    構成情報表
３０    ネットワーク対応関係表
３１    記憶部
【図１】
2014191472.tif 000003
【図２】
2014191472.tif 000004
【図３】
2014191472.tif 000005
【図４】
2014191472.tif 000006
【図５】
2014191472.tif 000007
【図６】
2014191472.tif 000008
【図７】
2014191472.tif 000009
【図８】
2014191472.tif 000010
【図９】
2014191472.tif 000011
【図１０】
2014191472.tif 000012
【図１１】
2014191472.tif 000013
【図１２】
2014191472.tif 000014
【図１３】
2014191472.tif 000015
【図１４】
2014191472.tif 000016
【図１５】
2014191472.tif 000017
【図１６】
2014191472.tif 000018
【図１７】
2014191472.tif 000019
【図１８】
2014191472.tif 000020
【図１９】
2014191472.tif 000021
【図２０】
2014191472.tif 000022
【図２１】
2014191472.tif 000023
【図２２】
2014191472.tif 000024
【図２３】
2014191472.tif 000025
【図２４】
2014191472.tif 000026
【図２５】
2014191472.tif 000027
【図２６】
2014191472.tif 000028
【図２７】
2014191472.tif 000029
【図２８】
2014191472.tif 000030
【図２９】
2014191472.tif 000031
【図３０】
2014191472.tif 000032
【図３１】
2014191472.tif 000033
【図３２】
2014191472.tif 000034
【図３３】
2014191472.tif 000035