(57)【特許請求の範囲】
【請求項１】
仮想マシンが動作する複数の仮想化サーバと、
前記仮想マシンのマイグレーションを管理するマイグレーション管理サーバとを備え、
前記マイグレーション管理サーバが、
前記仮想マシンのそれぞれの、マイグレーション先となる前記仮想化サーバの物理マシン上の何れでも使用可能なＣＰＵ命令群を管理する仮想マシン命令群マネージャ管理手段を含む統合管理マネージャを備え、
前記仮想マシン命令群マネージャ管理手段は、前記仮想マシンのマイグレーション先の変更がある場合に、当該仮想マシンのマイグレーション先となる仮想化サーバが何れであるかを示す情報と、各仮想化サーバの物理マシンの使用可能なＣＰＵ命令群を示す情報とに基づいて、当該仮想マシンのマイグレーション先となる前記仮想化サーバの物理マシン上の何れでも使用可能なＣＰＵ命令群を求める、
ことを特徴とする仮想化システム。
【請求項２】
前記統合管理マネージャが、
前記仮想マシンのマイグレーション先を管理するマイグレーション先マネージャ管理手段を含み、
前記仮想マシンのマイグレーション先として任意の前記仮想化サーバを追加する場合、
前記仮想マシン命令群マネージャ管理手段が、
前記任意の仮想化サーバを追加した場合において各仮想化サーバの物理マシン上の何れでも使用可能なＣＰＵ命令群を特定し、前記仮想マシン上で使用可能なＣＰＵ命令群が減少すると判断した場合、当該仮想マシンが稼働停止してから、当該仮想マシン上で使用可能なＣＰＵ命令群を更新する
ことを特徴とする請求項１に記載の仮想化システム。
【請求項３】
前記統合管理マネージャが、
前記仮想マシンのマイグレーション先を管理するマイグレーション先マネージャ管理手段を含み、
前記仮想マシンのマイグレーション先として任意の前記仮想化サーバを追加する場合、
前記仮想マシン命令群マネージャ管理手段が、
前記任意の仮想化サーバを追加した場合において各仮想化サーバの物理マシン上の何れでも使用可能なＣＰＵ命令群を特定し、
前記マイグレーション先マネージャ管理手段が、
前記仮想マシン命令群マネージャ管理手段が特定した情報に基づき、前記仮想マシン上で使用可能なＣＰＵ命令群が無くなると判断した場合、当該マイグレーション先の追加を中止する
ことを特徴とする請求項１又は請求項２に記載の仮想化システム。
【請求項４】
前記統合管理マネージャが、
前記仮想マシンのマイグレーション先を管理するマイグレーション先マネージャ管理手段を含み、
前記仮想マシンのマイグレーション先として任意の前記仮想化サーバを削除する場合、
前記仮想マシン命令群マネージャ管理手段が、
前記任意の仮想化サーバを削除した場合において各仮想化サーバの物理マシン上の何れでも使用可能なＣＰＵ命令群を特定し、前記仮想マシン上で使用可能なＣＰＵ命令群が増えると判断した場合、即時に当該仮想マシン上で使用可能なＣＰＵ命令群を更新する
ことを特徴とする請求項１から請求項３の何れか１項に記載の仮想化システム。
【請求項５】
前記仮想マシン上で使用可能なＣＰＵ命令群は、当該仮想マシンのマイグレーション先の各前記仮想化サーバの何れでも使用可能なＣＰＵ命令群であることを特徴とする請求項２から請求項４の何れか１項に記載の仮想化システム。
【請求項６】
各前記仮想化サーバは、
自身の仮想化サーバ上で使用可能なＣＰＵ命令群を格納する仮想マシン命令群エージェント管理テーブルと、
前記仮想マシン命令群エージェント管理テーブルの情報を更新する仮想マシン命令群エージェント管理手段とを備え、
前記仮想マシン命令群マネージャ管理手段は、前記仮想マシン命令群エージェント管理手段に、前記仮想マシン命令群エージェント管理テーブルの更新を指示することで、前記仮想マシン上で使用可能なＣＰＵ命令群を更新する
ことを特徴とする請求項２から請求項５の何れか１項に記載の仮想化システム。
【請求項７】
前記統合管理マネージャが、
各仮想化サーバの物理マシン上で使用可能な前記ＣＰＵ命令群の情報を格納する物理マシン命令群マネージャ管理テーブルを備える
ことを特徴とする請求項１から請求項６の何れか１項に記載の仮想化システム。
【請求項８】
仮想化サーバ上の仮想マシンのマイグレーションを管理するマイグレーション管理サーバであって、
前記仮想マシンのそれぞれの、マイグレーション先となる前記仮想化サーバの物理マシン上の何れでも使用可能なＣＰＵ命令群を管理する仮想マシン命令群マネージャ管理手段を含む統合管理マネージャを備え、
前記仮想マシン命令群マネージャ管理手段は、前記仮想マシンのマイグレーション先の変更がある場合に、当該仮想マシンのマイグレーション先となる仮想化サーバが何れであるかを示す情報と、各仮想化サーバの物理マシンの使用可能なＣＰＵ命令群を示す情報とに基づいて、当該仮想マシンのマイグレーション先となる前記仮想化サーバの物理マシン上の何れでも使用可能なＣＰＵ命令群を求める、
ことを特徴とするマイグレーション管理サーバ。
【請求項９】
仮想化サーバ上の仮想マシンのマイグレーションを管理するマイグレーション管理サーバによるマイグレーション管理方法であって、
前記仮想マシンのそれぞれの、マイグレーション先となる前記仮想化サーバの物理マシン上の何れでも使用可能なＣＰＵ命令群を管理する仮想マシン命令群マネージャ管理ステップを有し、
前記仮想マシン命令群マネージャ管理ステップは、前記仮想マシンのマイグレーション先の変更がある場合に、当該仮想マシンのマイグレーション先となる仮想化サーバが何れであるかを示す情報と、各仮想化サーバの物理マシンの使用可能なＣＰＵ命令群を示す情報とに基づいて、当該仮想マシンのマイグレーション先となる前記仮想化サーバの物理マシン上の何れでも使用可能なＣＰＵ命令群を求める、
ことを特徴とするマイグレーション管理方法。
【請求項１０】
仮想化サーバ上の仮想マシンのマイグレーションを管理するマイグレーション管理サーバを構成するコンピュータ上で動作するマイグレーション管理プログラムであって、
前記仮想マシンのそれぞれの、マイグレーション先となる前記仮想化サーバの物理マシン上の何れでも使用可能なＣＰＵ命令群を管理する仮想マシン命令群マネージャ管理処理を実行させ、
前記仮想マシン命令群マネージャ管理処理は、前記仮想マシンのマイグレーション先の変更がある場合に、当該仮想マシンのマイグレーション先となる仮想化サーバが何れであるかを示す情報と、各仮想化サーバの物理マシンの使用可能なＣＰＵ命令群を示す情報とに基づいて、当該仮想マシンのマイグレーション先となる前記仮想化サーバの物理マシン上の何れでも使用可能なＣＰＵ命令群を求める、
ことを特徴とするマイグレーション管理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、仮想マシンのマイグレーション技術に関し、特に、物理マシンのＣＰＵが異なる複数の仮想化サーバ間で仮想マシンのマイグレーションを行う際、物理マシンのＣＰＵ命令群を有効に活用できるようにするマイグレーション技術に関する。
【背景技術】
【０００２】
仮想化サーバでは、物理マシンのＣＰＵが異なる仮想化サーバ間で仮想マシンのマイグレーションを行う際、物理マシン上で使用可能なＣＰＵ命令群の差異によって仮想マシン及びゲストＯＳ上でのプログラムが動作不可となる場合がある。これを防ぐため、背景技術においては、マイグレーション後の仮想化サーバで使用不可となるＣＰＵ命令群をエミュレーションして補う方法が提案されている。
【０００３】
また、マイグレーション前後の仮想化サーバの何れでも使用できる（マイグレーション前後の仮想化サーバで共通的に使用できる）ＣＰＵ命令群を仮想マシン及びゲストＯＳ上で使用できるように、予めＣＰＵ命令群のマスクを設定する方法も提案されている。
【０００４】
ここで、本発明の関連技術が、特許文献２及び特許文献３に開示されている。特許文献２では、管理サーバが、サーバのハードウェア、ＶＭ、負荷に関する情報、及び移行するＶＭの構成情報を取得する旨が記載されている。また、特許文献３では、実計算機上で同時に動作可能なゲストＯＳの種類にかかわらず、仮想計算機上で同時に動作可能なゲストＯＳの種類を特定する旨が記載されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１０−２７２０５５号公報
【特許文献２】特開２００８−２１７３０２号公報
【特許文献３】特開平０７−１２９４１９号公報
【非特許文献】
【０００６】
【非特許文献１】小川大地、飯島  徹、”［ＶＭｏｔｉｏｎ］プロセッサの制約に注意”、［ｏｎｌｉｎｅ］、２０１０年６月１５日、日経ＩＴＰｒｏ、［平成２３年１２月８日検索］、インターネット＜ＵＲＬ：ｈｔｔｐ：／／ｉｔｐｒｏ．ｎｉｋｋｅｉｂｐ．ｃｏ．ｊｐ／ａｒｔｉｃｌｅ／ＣＯＬＵＭＮ／２０１００６０４／３４８８７３／＞
【非特許文献２】Ｒａｊｅｓｈ  Ｄａｖｅ、”ＷｉｎｄｏｗｓＳｅｒｖｅｒ２００８Ｒ２  仮想マシンのプロセッサ互換性モード”、［ｏｎｌｉｎｅ］、Ｍｉｃｒｏｓｏｆｔ  Ｃｏｒｐｏｒａｔｉｏｎ、［平成２３年１２月８日検索］、インターネット＜ＵＲＬ：ｈｔｔｐ：／／ｄｏｗｎｌｏａｄ．ｍｉｃｒｏｓｏｆｔ．ｃｏｍ／ｄｏｗｎｌｏａｄ／８／４／２／８４２３５ＤＤ４−ＦＣ１７−４５６５−８ＢＥ２−Ｆ６９ＢＢＦＡ８９６３６／ＶＭ＿ｐｒｏｃｅｓｓｏｒ＿ｃｏｍｐａｔｉｂｉｌｉｔｙ＿ｍｏｄｅ．ｄｏｃ＞
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかし、背景技術においては、以下のような問題点を有していた。
【０００８】
第１の問題点は、マイグレーション後の仮想化サーバで使用不可となるＣＰＵ命令群をエミュレーションすると、仮想マシン及びゲストＯＳ上でのプログラム実行速度が低下し、処理時間増加による消費電力増加も発生することである。
【０００９】
その理由は、エミュレーションによる実行は、ＣＰＵ命令のネイティブ実行に比べてオーバーヘッドが大きくなるためである。また、使用可能なＣＰＵ命令群の異なる複数のＣＰＵ上での動作に対応したプログラムを作成する際、コンパイラはそれぞれのＣＰＵでネイティブ実行可能な命令に最適化して実行ファイルを生成するため、エミュレーションするよりも実行効率が高くなるためである。
【００１０】
第２の問題点は、マイグレーション前後の仮想化サーバの何れでも使用可能なＣＰＵ命令群を仮想マシン及びゲストＯＳ上で使用できるようにする場合、ネイティブ実行可能なＣＰＵ命令群が少ない仮想化サーバをマイグレーション先として追加し、該仮想化サーバに仮想マシンをマイグレーションすると、仮想マシン及びゲストＯＳ上でのプログラム実行でエラーが発生する場合があることである。
【００１１】
その理由は、ネイティブ実行可能なＣＰＵ命令群が少ない仮想化サーバをマイグレーション先として追加したことにより、各マイグレーション先の何れでも使用可能なＣＰＵ命令群が少なくなるためである。
【００１２】
第３の問題点は、マイグレーション前後の仮想化サーバの何れでも使用可能なＣＰＵ命令群を仮想マシン及びゲストＯＳ上で使用できるようにする場合、ネイティブ実行可能なＣＰＵ命令群が少ない仮想化サーバをマイグレーション先から削除し、マイグレーション先として残っている別の仮想化サーバにマイグレーションすると、仮想マシン及びゲストＯＳ上でのプログラム実行効率が最適化されていない場合があることである。
【００１３】
その理由は、ネイティブ実行可能なＣＰＵ命令群が少ない仮想化サーバをマイグレーション先から削除したことにより、各マイグレーション先の何れでも使用可能なＣＰＵ命令群が多くなる場合があるが、使用可能となったＣＰＵ命令群を仮想マシンが有効活用できていない場合があるためである。
【００１４】
第４の問題点は、マイグレーション先となる複数の仮想化サーバの何れでも使用可能なＣＰＵ命令群をある時点で手動設定するシステムでは、マイグレーション先の追加及び削除を行う際に共通的に使用可能なＣＰＵ命令群を手動で再設定する必要があることである。
【００１５】
その理由は、マイグレーション先の追加及び削除に伴い、各マイグレーション先の何れでも使用可能なＣＰＵ命令群が増減するが、それを自動的に反映しないためである。
【００１６】
特許文献２は、異なる仮想化基盤の間でマイグレーションを行う際のＶＭのコンバートによるダウンタイムを短くする方法を開示しているものであり、上述の問題点を解決することはできない。また、特許文献３は、仮想化基盤の上で異なるＨＷアーキテクチャのＶＭを同時実行する方法を開示するものであり、上述の問題点を解決することはできない。
【００１７】
（発明の目的）
本発明の目的は、上述の課題を解決し、使用可能なＣＰＵ命令群の異なる複数の仮想化サーバ間で仮想マシンのマイグレーションを行う際、物理マシンがネイティブ実行可能なＣＰＵ命令群を有効活用できる仮想化システム、マイグレーション管理サーバ、マイグレーション管理方法、及びマイグレーション管理プログラムを提供することである。
【００１８】
本発明の他の目的は、仮想マシンのマイグレーション先となる仮想化サーバの増減があっても、各仮想化サーバの何れでも使用可能なＣＰＵ命令群を自動的に更新できる仮想化システム、マイグレーション管理サーバ、マイグレーション管理方法、及びマイグレーション管理プログラムを提供することである。
【００１９】
本発明のさらに他の目的は、仮想マシン及びゲストＯＳ上でのプログラム実行の高速化とプログラム実行効率の向上を実現し、処理時間短縮による低消費電力化を図ることである。
【課題を解決するための手段】
【００２０】
本発明の第１の仮想化システムは、仮想マシンが動作する複数の仮想化サーバと、仮想マシンのマイグレーションを管理するマイグレーション管理サーバとを備え、マイグレーション管理サーバが、仮想マシンのマイグレーション先となる複数の仮想化サーバの物理マシン上の何れでも使用可能なＣＰＵ命令群を求める物理マシン命令群マネージャ管理手段を含む統合管理マネージャを備える。
【００２１】
本発明の第１のマイグレーション管理サーバは、仮想化サーバ上の仮想マシンのマイグレーションを管理するマイグレーション管理サーバであって、仮想マシンのマイグレーション先となる複数の仮想化サーバの物理マシン上の何れでも使用可能なＣＰＵ命令群を求める物理マシン命令群マネージャ管理手段を含む統合管理マネージャを備える。
【００２２】
本発明の第１のマイグレーション管理方法は、仮想化サーバ上の仮想マシンのマイグレーションを管理するマイグレーション管理サーバによるマイグレーション管理方法であって、統合管理マネージャが備える物理マシン命令群マネージャ管理手段が、仮想マシンのマイグレーション先となる複数の仮想化サーバの物理マシン上の何れでも使用可能なＣＰＵ命令群を求める物理マシン命令群マネージャ管理ステップを有する。
【００２３】
本発明の第１のマイグレーション管理プログラムは、仮想化サーバ上の仮想マシンのマイグレーションを管理するマイグレーション管理サーバを構成するコンピュータ上で動作するマイグレーション管理プログラムであって、統合管理マネージャが備える物理マシン命令群マネージャ管理手段に、仮想マシンのマイグレーション先となる複数の仮想化サーバの物理マシン上の何れでも使用可能なＣＰＵ命令群を求める物理マシン命令群マネージャ管理処理を実行させる。
【発明の効果】
【００２４】
本発明によれば使用可能なＣＰＵ命令群の異なる複数の仮想化サーバ間で仮想マシンのマイグレーションを行う際、物理マシンがネイティブ実行可能なＣＰＵ命令群を有効活用することができる。
【００２５】
また、本発明によれば、仮想マシンのマイグレーション先となる仮想化サーバの増減があっても、各仮想化サーバの何れでも使用可能なＣＰＵ命令群を自動的に更新できる。
【００２６】
さらに、本発明によれば、、仮想マシン及びゲストＯＳ上でのプログラム実行の高速化とプログラム実行効率の向上を実現し、処理時間短縮による低消費電力化を図ることができる。
【図面の簡単な説明】
【００２７】
【図１】本発明の第１の実施の形態に係る仮想化システムの構成を示すブロック図である。
【図２】本発明の第１の実施の形態に係る仮想化サーバの構成を示すブロック図である。
【図３】本発明の第１の実施の形態に係るマイグレーション管理サーバの構成を示すブロック図である。
【図４】本発明の第１の実施の形態に係る物理マシン命令群マネージャ管理テーブルの構成例を示す図である。
【図５】本発明の第１の実施の形態に係るマイグレーション先マネージャ管理テーブルの構成例を示す図である。
【図６】本発明の第１の実施の形態に係る仮想化サーバＡのマイグレーション先エージェント管理テーブルの構成例を示す図である。
【図７】本発明の第１の実施の形態に係る仮想化サーバＣのマイグレーション先エージェント管理テーブルの構成例を示す図である。
【図８】本発明の第１の実施の形態に係る仮想化サーバＤのマイグレーション先エージェント管理テーブルの構成例を示す図である。
【図９】本発明の第１の実施の形態に係る仮想マシン命令群マネージャ管理テーブルの構成例を示す図である。
【図１０】本発明の第１の実施の形態に係る仮想化サーバＡの仮想マシン命令群エージェント管理テーブルの構成例を示す図である。
【図１１】本発明の第１の実施の形態に係る仮想化サーバＣの仮想マシン命令群エージェント管理テーブルの構成例を示す図である。
【図１２】本発明の第１の実施の形態に係る仮想化サーバＤの仮想マシン命令群エージェント管理テーブルの構成例を示す図である。
【図１３】本発明の第１の実施の形態に係る統合管理マネージャの動作を示すフローチャートである。
【図１４】本発明の第１の実施の形態に係る統合管理エージェントの動作を示すフローチャートである。
【図１５】本発明の第１の実施の形態に係る統合管理マネージャの動作を示すフローチャートである。
【図１６】本発明の第１の実施の形態に係る統合管理マネージャの動作を示すフローチャートである。
【図１７】本発明の第１の実施の形態に係る統合管理エージェントの動作を示すフローチャートである。
【図１８】本発明の第１の実施の形態に係る統合管理マネージャの動作を示すフローチャートである。
【図１９】本発明の第１の実施の形態に係る統合管理エージェントの動作を示すフローチャートである。
【図２０】本発明の第１の実施の形態に係る統合管理マネージャの動作を示すフローチャートである。
【図２１】本発明の第１の実施の形態に係る統合管理マネージャの動作を示すフローチャートである。
【図２２】本発明の第１の実施の形態に係る統合管理エージェントの動作を示すフローチャートである。
【図２３】本発明の第１の実施の形態に係る統合管理エージェントの動作を示すフローチャートである。
【図２４】本発明の第１の実施の形態に係る統合管理エージェントの動作を示すフローチャートである。
【図２５】本発明の第１の実施の形態に係る統合管理マネージャの動作を示すフローチャートである。
【図２６】本発明の第１の実施の形態に係る統合管理マネージャの動作を示すフローチャートである。
【図２７】本発明の実施例１に係るマイグレーション先マネージャ管理テーブルの構成例を示す図である。
【図２８】本発明の実施例１に係る仮想化サーバＡのマイグレーション先エージェント管理テーブルの構成例を示す図である。
【図２９】本発明の実施例１に係る仮想化サーバＢのマイグレーション先エージェント管理テーブルの構成例を示す図である。
【図３０】本発明の実施例１に係る仮想マシン命令群マネージャ管理テーブル１１７の構成例を示す図である。
【図３１】本発明の実施例１に係る仮想化サーバＡの仮想マシン命令群エージェント管理テーブルの構成例を示す図である。
【図３２】本発明の実施例１に係る仮想化サーバＢの仮想マシン命令群エージェント管理テーブルの構成例を示す図である。
【図３３】本発明の実施例１に係るマイグレーション先マネージャ管理テーブルの構成例を示す図出る。
【図３４】本発明の実施例１に係る仮想化サーバＣのマイグレーション先エージェント管理テーブルの構成例を示す図である。
【図３５】本発明の実施例１に係る仮想化サーバのマイグレーション先エージェント管理テーブルの構成例を示す図である。
【図３６】本発明の実施例１に係る仮想マシン命令群マネージャ管理テーブルの構成例を示す図である。
【図３７】本発明の実施例１に係る仮想化サーバＣの仮想マシン命令群エージェント管理テーブルの構成例を示す図である。
【図３８】本発明の実施例１に係る仮想化サーバＤの仮想マシン命令群エージェント管理テーブルの構成例を示す図である。
【図３９】本発明の実施例１に係るマイグレーション先マネージャ管理テーブルの構成例を示す図である。
【図４０】本発明の実施例１に係る仮想化サーバＤのマイグレーション先エージェント管理テーブルの構成例を示す図である。
【図４１】本発明の実施例１に係る仮想化サーバＥのマイグレーション先エージェント管理テーブルの構成例を示す図である。
【図４２】本発明の実施例１に係る仮想マシン命令群マネージャ管理テーブルの構成例を示す図である。
【図４３】本発明の実施例１に係る仮想化サーバＤ上の仮想マシン命令群エージェント管理テーブルの構成例を示す図である。
【図４４】本発明の実施例１に係る仮想化サーバＥの仮想マシン命令群エージェント管理テーブルの構成例を示す図である。
【図４５】本発明の実施例１に係るマイグレーション先マネージャ管理テーブルの構成例を示す図である。
【図４６】本発明の実施例１に係る仮想化サーバＣのマイグレーション先エージェント管理テーブルの構成例を示す図である。
【図４７】本発明の実施例１に係る仮想化サーバＤのマイグレーション先エージェント管理テーブルの構成例を示す図である。
【図４８】本発明の実施例１に係る仮想マシン命令群マネージャ管理テーブルの構成例を示す図である。
【図４９】本発明の実施例１に係る仮想化サーバＣの仮想マシン命令群エージェント管理テーブルの構成例を示す図である。
【図５０】本発明の実施例１に係る仮想化サーバＤの仮想マシン命令群エージェント管理テーブルの構成例を示す図である。
【図５１】本発明の第３及び第４の実施の形態に係る仮想化サーバの構成を示すブロック図である。
【図５２】本発明の第５の実施の形態に係る仮想化サーバの構成を示すブロック図である。
【図５３】本発明の第６の実施の形態に係る仮想化サーバの構成を示すブロック図である。
【図５４】本発明の第７の実施の形態に係る仮想化サーバの構成を示すブロック図である。
【図５５】本発明のマイグレーション管理サーバの最小限の構成を示すブロック図である。
【図５６】本発明のマイグレーション管理サーバのハードウェア構成例を示すブロック図である。
【発明を実施するための形態】
【００２８】
本発明の上記及び他の目的、特徴及び利点を明確にすべく、添付した図面を参照しながら、本発明の実施の形態を以下に詳述する。なお、上述の本願発明の目的のほか、他の技術的課題、その技術的課題を解決する手段及びその作用効果についても、以下の実施の形態による開示によって明らかとなるものである。
【００２９】
なお、すべての図面において、同様な構成要素には同様の符号を付し、適宜説明を省略する。
【００３０】
（第１の実施の形態）
本発明の第１の実施の形態について図面を参照して詳細に説明する。
【００３１】
図１は、本発明の第１の実施の形態による仮想化システム１０の構成を示すブロック図である。図１を参照すると、本実施の形態による仮想化システム１０は、マイグレーション管理サーバ１００と、複数の仮想化サーバ２００（２００−１〜２００−５）とを備える。仮想化サーバ２００−１〜２００−５は、説明上、仮想化サーバＡ〜Ｅとも称する。
【００３２】
マイグレーション管理サーバ１００と各仮想化サーバ２００はネットワークで接続されている。マイグレーション管理サーバ１００は、配下にある各仮想化サーバ２００を管理する。本実施の形態ではマイグレーション管理サーバ１００配下の仮想化サーバ２００が５つの場合を示しているが、仮想化サーバ２００の数はこれに限定はされない。
【００３３】
図３は、本実施の形態によるマイグレーション管理サーバ１００の構成を示すブロック図である。図３を参照すると、マイグレーション管理サーバ１００は、物理マシン１３０の上に物理ＯＳ１２０を実装し、物理ＯＳ１２０の上に統合管理マネージャ１１０を実装する。
【００３４】
統合管理マネージャ１１０は、各仮想化サーバ２００上で稼働する各仮想マシン２６０で使用可能なＣＰＵ命令群の管理を行う。また、統合管理マネージャ１１０は、各仮想化サーバ２００上で稼働する各仮想マシン２６０のマイグレーション先の管理を行う機能を有する。
【００３５】
統合管理マネージャ１１０は、物理マシン命令群マネージャ管理手段１１１と、仮想マシンマネージャ管理手段１１２と、仮想マシン命令群マネージャ管理手段１１３と、マイグレーション先マネージャ管理手段１１４と、物理マシン命令群マネージャ管理テーブル１１５と、マイグレーション先マネージャ管理テーブル１１６と、仮想マシン命令群マネージャ管理テーブル１１７とを含む。
【００３６】
物理マシン命令群マネージャ管理手段１１１は、物理マシン命令群マネージャ管理テーブル１１５の管理を行うことで、仮想化サーバ２００の物理マシン２８０で使用可能なＣＰＵ命令群を管理する機能を有する。
【００３７】
物理マシン命令群マネージャ管理テーブル１１５は、仮想化サーバ２００の物理マシン２８０で使用可能なＣＰＵ命令群を登録するテーブルである。
【００３８】
ここで、図４を参照すると、図４は、物理マシン命令群マネージャ管理テーブル１１５の構成例を示す図である。
【００３９】
図４に示す”☆”は、該ＣＰＵ命令群が”使用可能”であることを示す。一方、”★”は、該ＣＰＵ命令群が”使用不可”であることを示す。例えば、図４の例では、仮想化サーバＡの物理マシン２８０で使用可能なＣＰＵ命令群はＣＰＵ命令群１及びＣＰＵ命令群２となっている。
【００４０】
各仮想化サーバ２００が実装するＣＰＵが異なる場合、それぞれの仮想化サーバ２００の物理マシン２８０で使用可能なＣＰＵ命令群も異なるが、各仮想化サーバ２００では、特別な理由が無い限り、物理マシン２８０上で使用可能なＣＰＵ命令群と仮想マシン２６０上で使用可能なＣＰＵ命令群は同一であるものとする。
【００４１】
仮想マシンマネージャ管理手段１１２は、各仮想化サーバ２００上での仮想マシン２６０の作成及び削除を管理する機能を有する。
【００４２】
マイグレーション先マネージャ管理手段１１４は、マイグレーション先マネージャ管理テーブル１１６の管理を行なうことで、各仮想マシン２６０のマイグレーション先を管理する機能を有する。
【００４３】
マイグレーション先マネージャ管理テーブル１１６は、各仮想マシン２６０のマイグレーション先を登録する。マイグレーション先マネージャ管理テーブル１１６の構成例を、図５に示す。
【００４４】
マイグレーション先マネージャ管理テーブル１１６は、各仮想マシン２６０のマイグレーション先について、”●”、”▲”、”▼”、”■”で管理する。”●”は、仮想化サーバ２００が仮想マシン２６０のマイグレーション先として”登録済み”であることを示す。また、”▲”、”▼”、”■”は、それぞれ”登録中”、”削除中”、”削除済み”であることを示す。
【００４５】
仮想化サーバ２００に仮想マシン２６０が作成されると、マイグレーション先マネージャ管理テーブル１１６には、該作成された仮想マシン２６０のマイグレーション先として、該仮想化サーバ２００が登録される。この登録処理は、マイグレーション先マネージャ管理手段１１４が行う。
【００４６】
仮想マシン命令群マネージャ管理手段１１３は、仮想マシン命令群マネージャ管理テーブル１１７の管理を行なうことで、各仮想マシン２６０で使用可能なＣＰＵ命令群を管理する機能を有する。
【００４７】
仮想マシン命令群マネージャ管理テーブル１１７は、各仮想マシン２６０について、各ＣＰＵ命令群の使用可否を登録するテーブルである。
【００４８】
ここで、仮想マシン命令群マネージャ管理テーブル１１７の構成例を図９に示す。
【００４９】
図９に示す”○”は、仮想マシン２６０でＣＰＵ命令群が”使用可能”であることを示す。また、”△”、”▽”、”□”は、それぞれ”使用可能保留中”、”使用不可保留中”、”使用不可”であることを示す。
【００５０】
仮想マシン命令群マネージャ管理テーブル１１７は、マイグレーション先マネージャ管理テーブル１１６及び物理マシン命令群マネージャ管理テーブル１１５の情報に基づいて設定される。
【００５１】
図５に示すマイグレーション先マネージャ管理テーブル１１６を参照すると、仮想マシンａは仮想化サーバＡ（仮想化サーバ２００−１）で稼働していることがわかる。また、図４に示す物理マシン命令群マネージャ管理テーブル１１５を参照すると、仮想化サーバＡ（仮想化サーバ２００−１）の物理マシン２８０で使用可能なＣＰＵ命令群は、ＣＰＵ命令群１及びＣＰＵ命令群２であることがわかる。
【００５２】
仮想化サーバＡで稼働する仮想マシンａは、仮想化サーバＡ（仮想化サーバ２００−１）の物理マシン２８０で使用可能なＣＰＵ命令群を使用可能であるから、両テーブルに基づき、仮想マシンａは、ＣＰＵ命令群１及びＣＰＵ命令群２を使用可能であることがわかる。
【００５３】
従って、図９に示す仮想マシン命令群マネージャ管理テーブル１１７において、仮想マシンａで使用可能なＣＰＵ命令群として、ＣＰＵ命令群１及びＣＰＵ命令群２が登録されている。
【００５４】
同様に、両テーブルから、仮想マシンｂ及び仮想マシンｃで使用可能なＣＰＵ命令群はＣＰＵ命令群１及びＣＰＵ命令群２であることがわかる。従って、仮想マシン命令群マネージャ管理テーブル１１７において、仮想マシンｂ及び仮想マシンｃ上で使用可能なＣＰＵ命令群として、ＣＰＵ命令群１及びＣＰＵ命令群２が登録されている。
【００５５】
また、仮想マシンｄについても、両テーブルから、ＣＰＵ命令群２及びＣＰＵ命令群３が使用可能であることがわかる。従って、仮想マシン命令群マネージャ管理テーブル１１７において、仮想マシンｄで使用可能なＣＰＵ命令群としてＣＰＵ命令群２及びＣＰＵ命令群３が登録されている。
【００５６】
統合管理マネージャ１１０は、後述する統合管理エージェント２１０との間で、各仮想マシン２６０のマイグレーション先、各仮想化サーバ２００の物理マシン２８０で使用可能なＣＰＵ命令群、及び各仮想マシン２６０で使用可能なＣＰＵ命令群に関する情報を交換する。
【００５７】
図２は、本実施の形態による仮想化サーバ２００の構成を示すブロック図である。図２を参照すると、仮想化サーバ２００は、物理マシン２８０の上にＨｙｐｅｒｖｉｓｏｒ２７０を実装し、Ｈｙｐｅｒｖｉｓｏｒ２７０の上にペアレントＯＳ用仮想マシン２３０及び複数の仮想マシン２６０を実装する。また、ペアレントＯＳ用仮想マシン２３０の上にＨｙｐｅｒｖｉｓｏｒが提供する機能を管理するペアレントＯＳ２２０を実装し、ペアレントＯＳ２２０の上に統合管理エージェント２１０を実装する。
【００５８】
仮想マシン２６０上ではゲストＯＳ２５０が動作し、ゲストＯＳ２５０上では複数のプログラム２４０が実行される。
【００５９】
統合管理エージェント２１０は、物理マシン２８０上で使用可能なＣＰＵ命令群の取得、仮想マシン２６０のマイグレーション先の管理、及び仮想マシン２６０上で使用できるＣＰＵ命令群の管理を行う。
【００６０】
統合管理エージェント２１０は、物理マシン命令群エージェント管理手段２１１と、仮想マシンエージェント管理手段２１２と、仮想マシン命令群設エージェント管理手段２１３と、マイグレーション先エージェント管理手段２１４と、マイグレーション先エージェント管理テーブル２１５と、仮想マシン命令群エージェント管理テーブル２１６とを含む。
【００６１】
物理マシン命令群エージェント管理手段２１１は、物理マシン２８０上で使用可能なＣＰＵ命令群を取得する機能を有する。
【００６２】
仮想マシンエージェント管理手段２１２は、仮想マシン２６０の作成及び削除を管理する機能を有する。
【００６３】
仮想マシン命令群設エージェント管理手段２１３は、仮想マシン命令群エージェント管理テーブル２１６の管理を行うことで、仮想マシン２６０で使用可能なＣＰＵ命令群を管理する機能を有する。
【００６４】
マイグレーション先エージェント管理手段２１４は、マイグレーション先エージェント管理テーブル２１５の管理を行うことで、仮想マシン２６０のマイグレーション先を管理する機能を有する。
【００６５】
マイグレーション先エージェント管理テーブル２１５は、仮想化サーバ２００にマイグレーション可能な仮想マシン２６０を登録する機能を有する。
【００６６】
マイグレーション先エージェント管理テーブル２１５は、マイグレーション管理サーバ１００から通知される“マイグレーション先変更通知”に基づいて更新される。該更新作業はマイグレーション先エージェント管理手段２１４が行う。なお、“マイグレーション先変更通知”は、仮想マシン２６０のマイグレーション先の変更情報を通知するものである。
【００６７】
図６は、仮想化サーバＡ（仮想化サーバ２００−１）のマイグレーション先エージェント管理テーブル２１５の構成例を示す図である。図６に示す記号の意味は図５と同様であるため説明を省略する。仮想化サーバＡ（仮想化サーバ２００−１）のマイグレーション先エージェント管理テーブル２１５には、仮想化サーバＡ（仮想化サーバ２００−１）にマイグレーション可能な仮想マシン２６０が登録される。このため、図６の例では、仮想マシンａが登録されている。
【００６８】
図７は、仮想化サーバＣ（仮想化サーバ２００−３）のマイグレーション先エージェント管理テーブル２１５の構成例を示す図である。図７に示す記号の意味は図５と同様であるため、説明を省略する。仮想化サーバＣ（仮想化サーバ２００−３）のマイグレーション先エージェント管理テーブル２１５には、仮想化サーバＣ（仮想化サーバ２００−３）にマイグレーション可能な仮想マシン２６０が登録されるされる。このため、図７の例では、仮想マシンｂ及び仮想マシンｃが登録されている。
【００６９】
図８は、仮想化サーバＤ（仮想化サーバ２００−４）のマイグレーション先エージェント管理テーブル２１５の構成例を示す図である。図８に示す記号の意味は図５と同様であるため、説明を省略する。仮想化サーバＤ（仮想化サーバ２００−４）のマイグレーション先エージェント管理テーブル２１５には、仮想化サーバＤ（仮想化サーバ２００−４）にマイグレーション可能な仮想マシン２６０が登録される。このため、図８の例では、仮想マシンｄが登録されている。
【００７０】
仮想マシン命令群エージェント管理テーブル２１６は、仮想マシン２６０で使用可能なＣＰＵ命令群を登録する機能を有する。仮想マシン命令群エージェント管理テーブル２１６は、仮想マシン命令群エージェント管理手段２１３により管理される。
【００７１】
仮想マシン命令群エージェント管理テーブル２１６は、マイグレーション管理サーバ１００から通知される“ＣＰＵ命令群変更通知”に基づいて更新される。該更新作業は仮想マシン命令群エージェント管理手段２１３が行う。なお、”ＣＰＵ命令群変更通知”は、仮想マシン２６０で使用可能なＣＰＵ命令群の変更情報を通知するものである。
【００７２】
図１０は、仮想化サーバＡ（仮想化サーバ２００−１）の仮想マシン命令群エージェント管理テーブル２１６の構成例を示す図である。図１０に示す記号の意味は図９と同様であるため、詳細については省略する。仮想化サーバＡ（仮想化サーバ２００−１）の仮想マシン命令群エージェント管理テーブル２１６には、仮想化サーバＡ（仮想化サーバ２００−１）にマイグレーション可能な仮想マシン２６０が登録される。このため、図１０の例では、仮想マシンａが登録されている。
【００７３】
図１１は、仮想化サーバＣ（仮想化サーバ２００−３）の仮想マシン命令群エージェント管理テーブル２１６の構成例を示す図である。図１１に示す記号の意味は図９と同様であるため、詳細については省略する。仮想化サーバＣ（仮想化サーバ２００−３）の仮想マシン命令群エージェント管理テーブル２１６には、仮想化サーバＣ（仮想化サーバ２００−３）にマイグレーション可能な仮想マシン２６０が登録される。このため、図１１の例では、仮想マシンｂ及び仮想マシンｃが登録されている。
【００７４】
図１２は、仮想化サーバＤ（仮想化サーバ２００−４）の仮想マシン命令群エージェント管理テーブル２１６の構成例を示す図である。図１２に示す記号の意味は図９と同様であるため、詳細については省略する。仮想化サーバＤ（仮想化サーバ２００−４）の仮想マシン命令群エージェント管理テーブル２１６には、仮想化サーバＤ（仮想化サーバ２００−４）にマイグレーション可能な仮想マシン２６０が登録される。このため、図１２の例では、仮想マシンｄが登録されている。
【００７５】
（第１の実施の形態の動作の説明）
次に、本実施の形態による仮想化システム１０の動作について、図面を参照して詳細に説明する。
【００７６】
（仮想化サーバ２００の追加又は削除時の動作の説明）
図１３及び図１４は、マイグレーション管理サーバ１００において管理対象とする仮想化サーバ２００を追加したときにおける、マイグレーション管理サーバ１００の統合管理マネージャ１１０及び該仮想化サーバ２００の統合管理マネージャ２１０の動作を示すフローチャートである。
【００７７】
以下、図１３、図１４を参照しながら詳細な動作を説明する。
【００７８】
まず、マイグレーション管理サーバ１００において管理対象とする仮想化サーバ２００を追加すると、物理マシン命令群マネージャ管理手段１１１が、該仮想化サーバ２００に対し、使用可能なＣＰＵ命令群を問い合わせる（ステップＡ１０１）。以下、この問い合わせを“物理マシン命令群問合せ”と称する。
【００７９】
仮想化サーバ２００は、“物理マシン命令群問合せ”を受けると、物理マシン命令群エージェント管理手段２１１が、ペアレントＯＳ２２０、ペアレントＯＳ用仮想マシン２３０、及びＨｙｐｅｒｖｉｓｏｒ２７０を経由して、物理マシン２８０で使用可能なＣＰＵ命令群を取得する（ステップＢ１０１）。
【００８０】
次いで、物理マシン命令群エージェント管理手段２１１は、取得した該ＣＰＵ命令群をマイグレーション管理サーバ１００に回答する（ステップＢ１０２）。以下、この回答を”物理マシン命令群回答”と称する。
【００８１】
次いで、マイグレーション管理サーバ１００は、“物理マシン命令群回答”を受け取ると、物理マシン命令群マネージャ管理手段１１１が、“物理マシン命令群回答”に基づいて、該仮想化サーバ２００の物理マシン２８０で使用可能なＣＰＵ命令群を物理マシン命令群マネージャ管理テーブル１１５に登録する（ステップＡ１０２）。
【００８２】
図１５は、マイグレーション管理サーバ１００において、管理対象としている仮想化サーバ２００を管理対象から削除した時の動作を示すフローチャートである。
【００８３】
マイグレーション管理サーバ１００において、管理対象としている仮想化サーバ２００を削除すると、物理マシン命令群マネージャ管理手段１１１が、削除対象の仮想化サーバ２００に関する情報を物理マシン命令群マネージャ管理テーブル１１５から削除する（ステップＣ１０１）。
【００８４】
以上の動作を各仮想化サーバ２００に対して繰り返すことにより、図４に示す物理マシン命令群マネージャ管理テーブル１１５が作成される。
【００８５】
（仮想化マシン２６０の作成及び削除時の動作の説明）
図１６は、仮想化サーバ２００に仮想マシン２６０を作成する時のマイグレーション管理サーバ１００の統合管理マネージャ１１０の動作を示すフローチャートである。また、図１７は“仮想マシン作成通知”を受信した時の仮想化サーバ２００の統合管理マネージャ２１０動作を示すフローチャートである。
【００８６】
以下、図１６、図１７を参照しながら、仮想化サーバ２００に仮想マシン２６０を作成する時の詳細な動作を説明する。
【００８７】
まず、仮想マシン２６０の作成処理は、仮想マシンマネージャ管理手段１１２が開始する。
【００８８】
仮想マシンマネージャ管理手段１１２が仮想マシン２６０の作成処理を実行すると、マイグレーション先マネージャ管理手段１１４が、仮想マシン２６０が作成される仮想化サーバ２００を、マイグレーション先マネージャ管理テーブル１１６に登録する（ステップＤ１０１）。この結果、該仮想マシン２６０に対して、作成先の仮想化サーバ２００が、マイグレーション先として”登録済み”となる。
【００８９】
次いで、仮想マシン命令群マネージャ管理手段１１３が、作成する仮想マシン２６０の情報を仮想マシン命令群マネージャ管理テーブル１１７に登録する（ステップＤ１０２）。
【００９０】
具体的には、物理マシン命令群マネージャ管理手段１１１はまず、物理マシン命令群マネージャ管理テーブル１１５を参照して、仮想マシン２６０を作成する仮想化サーバ２００の物理マシン２８０で使用可能なＣＰＵ命令群を特定する。次に、仮想マシン命令群マネージャ管理手段１１３は、特定した該ＣＰＵ命令群を、作成する仮想マシン２６０で使用可能なＣＰＵ命令群として仮想マシン命令群マネージャ管理テーブル１１７に登録する。
【００９１】
次いで、マイグレーション先マネージャ管理手段１１４が、仮想マシン２６０を作成する仮想化サーバ２００に対し、“仮想マシン作成通知”を行う（ステップＤ１０３）。
【００９２】
仮想化サーバ２００は、“仮想マシン作成通知”を受信すると、仮想マシンエージェント管理手段２１２が仮想マシン２６０を作成する（ステップＥ１０１）。
【００９３】
次いで、マイグレーション先エージェント管理手段２１４が、自サーバを、仮想マシン２６０のマイグレーション先としてマイグレーション先エージェント管理テーブル２１５に登録する（ステップＥ１０２）。
【００９４】
次いで、仮想マシン命令群エージェント管理手段２１３が、自サーバの物理マシン２８０で使用可能なＣＰＵ命令群を、作成した該仮想マシン２６０で使用可能なＣＰＵ命令群として仮想マシン命令群エージェント管理テーブル２１６に登録する（ステップＥ１０３）。
【００９５】
図１８は、仮想化サーバ２００から仮想マシン２６０を削除するときのマイグレーション管理サーバ１００の動作を示すフローチャートである。また、図１９は、“仮想マシン削除通知”を受信した時の仮想化サーバ２００の動作を示すフローチャートである。
【００９６】
以下、図１８、図１９を参照しながら、仮想化サーバ２００から仮想マシン２６０を削除するときの詳細な動作を説明する。
【００９７】
まず、仮想マシン２６０の削除処理は、仮想マシンマネージャ管理手段１１２が開始する。
【００９８】
仮想マシンマネージャ管理手段１１２が仮想化サーバ２００上の仮想マシン２６０の削除処理を実行すると、マイグレーション先マネージャ管理手段１１４が、マイグレーション先マネージャ管理テーブル１１６から、削除対象の仮想マシン２６０の情報を削除する（ステップＦ１０１）。
【００９９】
次いで、仮想マシン命令群マネージャ管理手段１１３が、仮想マシン命令群マネージャ管理テーブル１１７から、削除対象の仮想マシン２６０に関する情報を削除する（ステップＦ１０２）。
【０１００】
次いで、マイグレーション先マネージャ管理手段１１４が、削除対象の仮想マシン２６０が稼働している仮想化サーバ２００に対し、“仮想マシン削除通知”を行う（ステップＦ１０３）。
【０１０１】
仮想化サーバ２００は、“仮想マシン削除通知”を受信すると、仮想マシンエージェント管理手段２１２が対象の仮想マシン２６０を削除する（ステップＧ１０１）。
【０１０２】
次いで、マイグレーション先エージェント管理手段２１４が、マイグレーション先エージェント管理テーブル２１５から、削除した仮想マシン２６０に関する情報を削除する（ステップＧ１０２）。
【０１０３】
次いで、仮想マシン命令群エージェント管理手段２１３が、仮想マシン命令群エージェント管理テーブル２１６から、削除した仮想マシン２６０に関する情報を削除する（ステップＧ１０３）。
【０１０４】
以上の動作を各仮想化サーバ２００及び各仮想マシン２６０に対して繰り返すことにより、図５のマイグレーション先マネージャ管理テーブル１１６、図６、図７及び図８のマイグレーション先エージェント管理テーブル２１５、図９の仮想マシン命令群マネージャ管理テーブル１１７、図１０、図１１及び図１２の仮想マシン命令群エージェント管理テーブル２１６が作成される。
【０１０５】
（仮想化マシン２６０のマイグレーション先の追加及び削除時の動作の説明）
図２０は、仮想マシン２６０のマイグレーション先を追加する時の、マイグレーション管理サーバ１００の統合管理マネージャ１１０の動作を示すフローチャートである。
【０１０６】
図２０を参照すると、まず、物理マシン命令群マネージャ管理手段１１１と仮想マシン命令群マネージャ管理手段１１３が、それぞれ、物理マシン命令群マネージャ管理テーブル１１５と仮想マシン命令群マネージャ管理テーブル１１７を参照して、仮想マシン２６０のマイグレーション先を追加した場合に、マイグレーション先となる各仮想化サーバ２００の何れでも使用可能なＣＰＵ命令群を求める（ステップＨ１０１）。
【０１０７】
次いで、仮想マシン命令群マネージャ管理手段１１３が、マイグレーション先となる各仮想化サーバ２００の何れでも使用可能なＣＰＵ命令群が存在するか否かを確認する（ステップＨ１０２）。マイグレーション先となる各仮想化サーバ２００の何れでも使用可能なＣＰＵ命令群が無い場合（ステップＨ１０２”ＮＯ”）、統合管理マネージャ１１０は、マイグレーション先の追加はせずに処理を終了する（ステップＨ１０３）。
【０１０８】
マイグレーション先となる各仮想化サーバ２００の何れでも使用可能なＣＰＵ命令群がある場合（ステップＨ１０２”ＹＥＳ”）、マイグレーション先マネージャ管理手段１１４が、該仮想マシン２６０のマイグレーション先となる仮想化サーバ２００に“マイグレーション先変更通知”を通知する（ステップＨ１０４）。
【０１０９】
また、仮想マシン命令群マネージャ管理手段１１３が、該ＣＰＵ命令群を、マイグレーション先となる仮想化サーバに“ＣＰＵ命令群変更通知”で通知する（ステップＨ１０５）。
【０１１０】
次いで、仮想マシン命令群マネージャ管理手段１１３は、マイグレーション先を追加した場合、該仮想マシン２６０が使用可能なＣＰＵ命令群が減少するかチェックする（ステップＨ１０６）。
【０１１１】
使用可能なＣＰＵ命令群が減少しない場合（ステップＨ１０６”ＮＯ”）、マイグレーション先マネージャ管理手段１１４が、マイグレーション先マネージャ管理テーブル１１６において、該仮想マシン２６０に対する該仮想化サーバ２００（マイグレーション先として追加する仮想化サーバ２００）を、”登録済”に設定する（ステップＨ１０７）。
【０１１２】
使用可能なＣＰＵ命令群が減少する場合（ステップＨ１０６”ＹＥＳ”）、統合管理マネージャ１１０は、仮想マシン２６０のマイグレーション先となるすべての仮想化サーバ２００に対し“マイグレーション先変更通知”及び“ＣＰＵ命令群変更通知”を通知したか否かをチェックする（ステップＨ１０８）。
【０１１３】
全てに通知済みの場合（ステップＨ１０８”ＹＥＳ”）、マイグレーション先マネージャ管理手段１１４が、マイグレーション先マネージャ管理テーブル１１６において、マイグレーション先となる各仮想化サーバ２００を、“登録済”に設定する（ステップＨ１０９）。
【０１１４】
また、仮想マシン命令群マネージャ管理手段１１３が、仮想マシン命令群マネージャ管理テーブル１１７において、マイグレーション先を追加することによって該仮想マシンで使用不可となるＣＰＵ命令群を、“使用不可”に設定する（ステップＨ１１０）。
【０１１５】
各仮想化サーバ２００の全てに通知済みでない場合（ステップＨ１０８”ＮＯ”）、マイグレーション先マネージャ管理手段１１４が、マイグレーション先マネージャ管理テーブル１１６において、通知済みでない仮想化サーバ２００を”登録中”に設定する（ステップＨ１１１）。なお、通知済みの仮想化サーバ２００については、ステップＨ１０９同様”登録済”に設定する。
【０１１６】
また、仮想マシン命令群マネージャ管理手段１１３が、仮想マシン命令群マネージャ管理テーブル１１７において、マイグレーション先を追加することによって該仮想マシン２６０で使用不可となるＣＰＵ命令群を、“使用不可保留中”に設定する（ステップＨ１１２）。
【０１１７】
図２１は、仮想マシン２６０の任意のマイグレーション先を削除する時の、マイグレーション管理サーバ１００の統合管理マネージャ１１０の動作を示すフローチャートである。
【０１１８】
図２１を参照すると、まず、物理マシン命令群マネージャ管理手段１１１と仮想マシン命令群マネージャ管理手段１１３が、それぞれ、物理マシン命令群マネージャ管理テーブル１１５と仮想マシン命令群マネージャ管理テーブル１１７を参照して、仮想マシン２６０の任意のマイグレーション先を削除した場合に、削除後に残った該仮想マシン２６０のマイグレーション先の何れでも使用可能なＣＰＵ命令群を求める（ステップＩ１０１）。
【０１１９】
次いで、マイグレーション先マネージャ管理手段１１４が、削除後の該仮想マシン２６０のマイグレーション先である仮想化サーバ２００に“マイグレーション先変更通知”を通知する（ステップＩ１０２）。
【０１２０】
次いで、仮想マシン命令群マネージャ管理手段１１３が、任意のマイグレーション先を削除した場合、該仮想マシン２６０が使用可能なＣＰＵ命令群が増加するかチェックする（ステップＩ１０３）。
【０１２１】
使用可能なＣＰＵ命令群が増加しない場合（ステップＩ１０３”ＮＯ”）、マイグレーション先マネージャ管理手段１１４が、マイグレーション先マネージャ管理テーブル１１６において、該仮想マシン２６０に対する該仮想化サーバ２００（マイグレーション先から削除する仮想化サーバ２００）を、“削除済”に設定する（ステップＩ１０４）。
【０１２２】
使用可能なＣＰＵ命令群が増加する場合（ステップＩ１０３”ＹＥＳ”）、仮想マシン命令群マネージャ管理手段１１３が、マイグレーション先の各仮想化サーバ２００に“ＣＰＵ命令群変更通知”を通知する（ステップＩ１０５）。
【０１２３】
次いで、統合管理マネージャ１１０は、マイグレーション先の全ての仮想化サーバ２００に対し“マイグレーション先変更通知”及び“ＣＰＵ命令群変更通知”を通知しかた否かをチェックする（ステップＩ１０６）。
【０１２４】
全てに通知済みの場合（ステップＩ１０６”ＹＥＳ”）、マイグレーション先マネージャ管理手段１１４が、マイグレーション先マネージャ管理テーブル１１６において、該仮想マシン２６０に対する該仮想化サーバ２００（マイグレーション先から削除する仮想化サーバ２００）を、“削除済”に設定する（ステップＩ１０７）。
【０１２５】
また、仮想マシン命令群マネージャ管理手段１１３が、仮想マシン命令群マネージャ管理テーブル１１７において、削除後において該仮想マシンで使用可能となるＣＰＵ命令群を、“使用可能”に設定する（ステップＩ１０８）。
【０１２６】
マイグレーション先の全ての仮想化サーバ２００に通知済みでない場合（ステップＩ１０６”ＮＯ”）、マイグレーション先マネージャ管理手段１１４が、マイグレーション先マネージャ管理テーブル１１６において、該仮想マシン２６０に対する該仮想化サーバ２００（マイグレーション先から削除する仮想化サーバ２００）を、“削除中”に設定する（ステップＩ１０９）。
【０１２７】
また、仮想マシン命令群マネージャ管理手段１１３が、仮想マシン命令群マネージャ管理テーブル１１７において、削除後において該仮想マシンで使用可能となるＣＰＵ命令群を、“使用可能保留中”に設定する（ステップＩ１１０）。
【０１２８】
図２２は、“マイグレーション先変更通知”を受信した時の、仮想化サーバ２００の統合管理エージェント２１０の動作を示すフローチャートである。
【０１２９】
“マイグレーション先変更通知”が任意の仮想マシン２６０のマイグレーション先の追加の通知を含む場合、マイグレーション先エージェント管理手段２１４が、マイグレーション先エージェント管理テーブル２１５において、該仮想マシン２６０に対する追加のマイグレーション先を、“登録済”に設定する（ステップＪ１０１）。
【０１３０】
次いで、“マイグレーション先変更通知”が任意の仮想マシン２６０のマイグレーション先の削除の通知を含む場合、仮想マシンエージェント管理手段２１２が、マイグレーション先を追加する仮想マシン２６０が稼働中であるかチェックする（ステップＪ１０２）。
【０１３１】
該仮想マシン２６０が稼働中でない場合（ステップＪ１０２”ＮＯ”）、マイグレーション先エージェント管理手段２１４が、マイグレーション先マネージャ管理テーブル１１６において、該仮想マシン２６０に対する該仮想化サーバ２００（マイグレーション先から削除する仮想化サーバ２００）を、““削除済”に設定し（ステップＪ１０３）、マイグレーション管理サーバ１００に“マイグレーション先更完了通知”を通知する（ステップＪ１０４）。
【０１３２】
該仮想マシン２６０が稼働中の場合（ステップＪ１０２”ＹＥＳ”）、マイグレーション先エージェント管理手段２１４が、マイグレーション先マネージャ管理テーブル１１６において、該仮想マシン２６０に対する該仮想化サーバ２００（マイグレーション先から削除する仮想化サーバ２００）を、“削除中”に設定する（ステップＪ１０５）。
【０１３３】
図２３は、“ＣＰＵ命令群変更通知”を受信した時の、仮想化サーバ２００の統合管理エージェント２１０の動作を示すフローチャートである。
【０１３４】
“ＣＰＵ命令群変更通知”が任意の仮想マシン２６０において使用可能となるＣＰＵ命令群の通知を含む場合、仮想マシン命令群エージェント管理手段２１３が、仮想マシン命令群エージェント管理テーブル２１６において、該仮想マシン２６０に対する該ＣＰＵ命令群（該仮想マシン２６０使用可能となるＣＰＵ命令群）を“使用可能”に設定する（ステップＫ１０１）。
【０１３５】
次いで、“ＣＰＵ命令群変更通知”が任意の仮想マシン２６０において使用不可となるＣＰＵ命令群の通知を含む場合、仮想マシンエージェント管理手段２１２が、該仮想マシン２６０が稼働中であるかチェックする（ステップＫ１０２）。
【０１３６】
該仮想マシン２６０が稼働中でない場合（ステップＫ１０２”ＮＯ”）、仮想マシン命令群エージェント管理手段２１３が、仮想マシン命令群エージェント管理テーブル２１６において、該仮想マシン２６０に対する該ＣＰＵ命令群（該仮想マシン２６０使用可能となるＣＰＵ命令群）を“使用不可”に更新し（ステップＫ１０３）、マイグレーション管理サーバ１００に“ＣＰＵ命令群変更完了通知”を通知する（ステップＫ１０４）。
【０１３７】
該仮想マシン２６０が稼働中の場合（ステップＫ１０２”ＹＥＳ”）、仮想マシン命令群エージェント管理手段２１３が、仮想マシン命令群エージェント管理テーブル２１６において、該仮想マシン２６０に対する該ＣＰＵ命令群（該仮想マシン２６０で使用不可となるＣＰＵ命令群）を“使用不可保留中”に設定する（ステップＫ１０５）。
【０１３８】
図２４は、仮想マシン２６０終了時の仮想化サーバ２００の統合管理エージェント２１０の動作を示すフローチャートである。
【０１３９】
図２４を参照すると、まず、仮想マシンエージェント管理手段２１２が、仮想マシン２６０の終了を検出し、次いで、仮想マシン命令群エージェント管理手段２１３が、仮想マシン命令群エージェント管理テーブル２１６を参照して、終了した仮想マシン２６０について“使用不可保留中”となっているＣＰＵ命令群があるか否かをチェックする（ステップＬ１０１）。
【０１４０】
“使用不可保留中”のＣＰＵ命令群がある場合（ステップＬ１０１”ＹＥＳ”）、仮想マシン命令群エージェント管理手段２１３は、仮想マシン命令群エージェント管理テーブル２１６において、終了した該仮想マシン２６０に対する該ＣＰＵ命令群（“使用不可保留中”のＣＰＵ命令群）を“使用不可”に設定し（ステップＫ１０１）、次いで、マイグレーション管理サーバ１００に“ＣＰＵ命令群完了通知”を通知する（ステップＬ１０３）。
【０１４１】
“使用不可保留中”のＣＰＵ命令群が無い場合は、ステップＬ１０４に進む（ステップＬ１０１”ＮＯ”）。
【０１４２】
次に、マイグレーション先エージェント管理手段２１４が、マイグレーション先エージェント管理テーブル２１５を参照して、終了した仮想マシン２６０について“削除中”となっているマイグレーション先があるか否かをチェックする（ステップＬ１０４）。
【０１４３】
“削除中”のマイグレーション先がある場合（ステップＬ１０４”ＹＥＳ”）、マイグレーション先エージェント管理手段２１４は、マイグレーション先エージェント管理テーブル２１５において、終了した該仮想マシン２６０に対する該仮想化サーバ２００（終了した仮想マシン２６０について”削除中”となっている仮想化サーバ２００）を“削除済”に設定し（ステップＬ１０５）、次いで、マイグレーション管理サーバ１００に“マイグレーション先変更完了通知”をする（ステップＬ１０５）。
【０１４４】
“削除中”のマイグレーション先が無い場合は、処理を終了する（ステップＬ１０４”ＮＯ”）。
【０１４５】
図２５は、仮想化サーバ２００から“ＣＰＵ命令群変更完了通知”を受信した時のマイグレーション管理サーバ１００の統合管理マネージャ１１０の動作を示すフローチャートである。
【０１４６】
統合管理マネージャ１１０が仮想化サーバ２００の統合管理エージェント２１０から“ＣＰＵ命令群変更完了通知”を受信すると、仮想マシン命令群マネージャ管理手段１１３が、“ＣＰＵ命令群変更通知”を通知した全ての仮想化サーバ２００から“ＣＰＵ命令群変更完了通知”を受信したか否かをチェックする（ステップＭ１０１）。
【０１４７】
全ての仮想化サーバ２００から“ＣＰＵ命令群変更完了通知”を受信している場合（ステップＭ１０１”ＹＥＳ”）、仮想マシン命令群マネージャ管理手段１１３は、仮想マシン命令群マネージャ管理テーブル１１７において、“ＣＰＵ命令群変更完了通知”に係る仮想マシン２６０に対し“使用不可保留中”となっているＣＰＵ命令群を、“使用不可”に設定する。
【０１４８】
全ての仮想化サーバ２００から“ＣＰＵ命令群変更完了通知”を受信していない場合は、処理を終了する（ステップＭ１０１”ＮＯ”）。
【０１４９】
図２６は、仮想化サーバ２００から“マイグレーション先変更完了通知”を受信した時のマイグレーション管理サーバ１００の統合管理マネージャ１１０の動作を示すフローチャートである。
【０１５０】
統合管理マネージャ１１０が仮想化サーバ２００の統合管理エージェント２１０から“マイグレーション先変更完了通知”を受信すると、マイグレーション先マネージャ管理手段１１４が、“マイグレーション先変更通知”を通知した全ての統合管理エージェント２１０から“マイグレーション先変更完了通知”を受信したか否かをチェックする（ステップＮ１０１）。
【０１５１】
全ての仮想化サーバ２００から“マイグレーション先変更完了通知”を受信している場合（ステップＮ１０１”ＹＥＳ”）、マイグレーション先マネージャ管理手段１１４は、マイグレーション先マネージャ管理テーブル１１６において、“マイグレーション先変更完了通知”に係る仮想マシン２６０に対し“登録中”となっている仮想化サーバ２００を、“登録済”に設定する。
【０１５２】
全ての仮想化サーバ２００から“マイグレーション先変更完了通知”を受信していない場合は、処理を終了する（ステップＮ１０１”ＮＯ”）。
【実施例１】
【０１５３】
次に、具体的な実施例を用いて本実施の形態の動作を説明する。
【０１５４】
本実施例では、以下の順序による動作を行い、この時におけるマイグレーション先マネージャ管理テーブル１１６、マイグレーション先エージェント管理テーブル２１５、仮想マシン命令群マネージャ管理テーブル１１７、仮想マシン命令群エージェント管理テーブル２１６の変化を示しながら、本発明の動作について具体的に説明する。
【０１５５】
（１）ステップＳ１１：仮想マシンａのマイグレーション先に仮想化サーバＢ（仮想化サーバ２００−２）を追加する。
【０１５６】
（２）ステップＳ１２：仮想マシンｂのマイグレーション先に仮想化サーバＤ（仮想化サーバ２００−４）を追加する。
【０１５７】
（３）ステップＳ１３：仮想マシンｄのマイグレーション先に仮想化サーバＥ（仮想化サーバ２００−５）を追加する。
【０１５８】
（４）ステップＳ１４：仮想マシンｂのマイグレーション先から仮想化サーバＣ（仮想化サーバ２００−３）を削除する。
【０１５９】
なお、マイグレーション管理サーバ１００のマイグレーション先マネージャ管理テーブル１１６及び仮想マシン命令群マネージャ管理テーブル１１７は、それぞれ図５、図９の状態であるものとする。
【０１６０】
また、仮想化サーバＡ（仮想化サーバ２００−１）、仮想化サーバＣ（仮想化サーバ２００−３）、仮想化サーバＤ（仮想化サーバ２００−４）の各マイグレーション先エージェント管理テーブル２１５は、それぞれ図６、図７、及び図８の状態であるものとする。
【０１６１】
また、仮想化サーバＡ（仮想化サーバ２００−１）、仮想化サーバＣ（仮想化サーバ２００−３）、仮想化サーバＤ（仮想化サーバ２００−４）の各仮想マシン命令群エージェント管理テーブル２１６は、それぞれ図１０、図１１、及び図１２状態であるものとする。
【０１６２】
まず、ステップＳ１１の動作について説明する。
【０１６３】
図２７は、仮想マシンａのマイグレーション先に仮想化サーバＢ（仮想化サーバ２００−２）を追加する際のマイグレーション先マネージャ管理テーブル１１６の変化を示している。
【０１６４】
また、図２８は、仮想マシンａのマイグレーション先に仮想化サーバＢ（仮想化サーバ２００−２）を追加する際の、仮想化サーバＡ（仮想化サーバ２００−１）のマイグレーション先エージェント管理テーブル２１５の変化を示している。
【０１６５】
また、図２９は、仮想マシンａのマイグレーション先に仮想化サーバＢ（仮想化サーバ２００−２）を追加する際の、仮想化サーバＢ（仮想化サーバ２００−２）のマイグレーション先エージェント管理テーブル２１５の変化を示している。
【０１６６】
また、図３０は、仮想マシンａのマイグレーション先に仮想化サーバＢ（仮想化サーバ２００−２）を追加する際の、仮想マシン命令群マネージャ管理テーブル１１７の変化を示している。
【０１６７】
また、図３１は、仮想マシンａのマイグレーション先に仮想化サーバＢ（仮想化サーバ２００−２）を追加する際の、仮想化サーバＡ（仮想化サーバ２００−１）の仮想マシン命令群エージェント管理テーブル２１６の変化を示している。
【０１６８】
また、図３２は、仮想マシンａのマイグレーション先に仮想化サーバＢ（仮想化サーバ２００−２）を追加する際の、仮想化サーバＢ（仮想化サーバ２００−２）の仮想マシン命令群エージェント管理テーブル２１６の変化を示している。
【０１６９】
図２７、図２８、図２９、図３０、図３１及び図３２において、仮想化サーバＡ（仮想化サーバ２００−１）に仮想マシンａが作成された時点では、仮想マシンａのマイグレーション先は仮想化サーバＡ（仮想化サーバ２００−１）だけとなる。
【０１７０】
従って、図２７、図２８では、仮想マシンａに係る各仮想化サーバ２００のうち、仮想化サーバＡ（仮想化サーバ２００−１）だけが登録済み（”●”）となっており、他の仮想化サーバ２００は削除済み（”■”）となっている。
【０１７１】
また、仮想化サーバＡ（仮想化サーバ２００−１）に仮想マシンａが作成された時点では、仮想マシンａで使用可能なＣＰＵ命令群は、仮想化サーバＡ（仮想化サーバ２００−１）の物理マシン２８０上で使用可能なＣＰＵ命令群と同じである。図４に示す物理マシン命令群マネージャ管理テーブル１１５を参照すると、仮想化サーバＡ（仮想化サーバ２００−１）の物理マシン２８０上で使用可能なＣＰＵ命令群はＣＰＵ命令群１及びＣＰＵ命令群２であるため、図３０では、仮想マシンａに係る各ＣＰＵ命令群のうち、ＣＰＵ命令群１及びＣＰＵ命令群２が使用可能（”☆”）となっている。
【０１７２】
仮想マシンａのマイグレーション先に仮想化サーバＢ（仮想化サーバ２００−２）が追加されると、仮想マシンａで使用可能なＣＰＵ命令群は、仮想化サーバＡ（仮想化サーバ２００−１）及び仮想化サーバＢ（仮想化サーバ２００−２）の何れの物理マシン２８０でも使用可能なＣＰＵ命令群となる。仮想マシンａは、仮想化サーバＡ（仮想化サーバ２００−１）、仮想化サーバＢ（仮想化サーバ２００−２）の何れにもマイグレーションされる可能性があるからである。
【０１７３】
図４に示す物理マシン命令群マネージャ管理テーブル１１５を参照すると、仮想化サーバＡ（仮想化サーバ２００−１）の物理マシン２８０上で使用可能なＣＰＵ命令群は、ＣＰＵ命令群１及びＣＰＵ命令群２である。また、仮想化サーバＢ（仮想化サーバ２００−２）の物理マシン２８０上で使用可能なＣＰＵ命令群は、ＣＰＵ命令群１、ＣＰＵ命令群２及びＣＰＵ命令群３である。
【０１７４】
従って、仮想化サーバＡ（仮想化サーバ２００−１）及び仮想化サーバＢ（仮想化サーバ２００−２）の何れの物理マシン２８０上でも使用可能なＣＰＵ命令群は、ＣＰＵ命令群はＣＰＵ命令群１及びＣＰＵ命令群２となる。このため、仮想マシンａのマイグレーション先に仮想化サーバＢ（仮想化サーバ２００−２）を追加したしても、仮想マシンａ上で使用可能なＣＰＵ命令群に変化は無いため、仮想マシン命令群マネージャ管理テーブル１１７も変化が無い（図３０）。
【０１７５】
仮想マシンａのマイグレーション先に仮想化サーバＢ（仮想化サーバ２００−２）が追加されると、マイグレーション管理サーバ１００の統合管理マネージャ１１０では、仮想マシン命令群マネージャ管理手段１１３が、仮想マシンａのマイグレーション先である仮想化サーバＡ（仮想化サーバ２００−１）及び仮想化サーバＢ（仮想化サーバ２００−２）の各統合管理エージェント２１０に対して、“ＣＰＵ命令群変更通知”を通知する。ＣＰＵ命令群変更通知”は、仮想マシン２６０で使用可能なＣＰＵ命令群の変更情報を通知するものである。
【０１７６】
該通知を受け取った各統合管理エージェント２１０では、仮想マシン命令群エージェント管理手段２１３が、該通知に基づいて仮想マシン命令群エージェント管理テーブル２１６の情報を更新する。この点、仮想化サーバＡ（仮想化サーバ２００−１）の仮想マシン命令群エージェント管理テーブル２１６には変化は無い（図３１）。
【０１７７】
一方、仮想化サーバＢ（仮想化サーバ２００−２）の仮想マシン命令群エージェント管理テーブル２１６では、仮想マシンａで使用可能なＣＰＵ命令群が新規に登録される（図３２）。具体的には、ＣＰＵ命令群１及びＣＰＵ命令群２の使用可否が使用可能（”○”）で登録され、それ以外のＣＰＵ命令群の使用可否は使用不可（”□”）で登録される。
【０１７８】
また、仮想マシンａのマイグレーション先に仮想化サーバＢ（仮想化サーバ２００−２）が追加されても、仮想マシンａで使用可能なＣＰＵ命令群に変化が無いため、仮想化サーバＢ（仮想化サーバ２００−２）をマイグレーション先として登録することに問題はない。このため、マイグレーション先マネージャ管理手段１１４は、マイグレーション先マネージャ管理テーブル１１６において、仮想マシンａに対する仮想化サーバＢ（仮想化サーバ２００−２）を”削除済み”（”■”）から”登録済み”（”●”）に更新する（図２７）。
【０１７９】
一方で、仮想マシンａのマイグレーション先に仮想化サーバＢ（仮想化サーバ２００−２）が追加されると、統合管理マネージャ１１０のマイグレーション先エージェント管理手段２１４が、“マイグレーション先変更通知”を、マイグレーション先である仮想化サーバＡ（仮想化サーバ２００−１）及び仮想化サーバＢ（仮想化サーバ２００−２）の各統合管理エージェント２１０に通知する。“マイグレーション先変更通知”は、仮想マシン２６０のマイグレーション先の変更情報を通知するものである。
【０１８０】
該通知を受け取った各仮想化サーバ２００の統合管理エージェント２１０では、マイグレーション先エージェント管理手段２１４が、該通知に基づいて、マイグレーション先エージェント管理テーブル２１５の情報を更新する。
【０１８１】
この点、仮想化サーバＡ（仮想化サーバ２００−１）のマイグレーション先エージェント管理テーブル２１５では、仮想マシンａに対する仮想化サーバＢ（仮想化サーバ２００−２）が”削除済み”（”■”）から”登録済み”（”●”）に更新される（図２８）。
【０１８２】
一方、仮想化サーバＢ（仮想化サーバ２００−２）のマイグレーション先エージェント管理テーブル２１５では、仮想マシンａのマイグレーション先が追加される（図２９）。具体的には、仮想マシンａに対して、仮想化サーバＡ（仮想化サーバ２００−１）及び仮想化サーバＢ（仮想化サーバ２００−２）は”登録済み”（”●”）に設定され、仮想化サーバＣ（仮想化サーバ２００−３）、仮想化サーバＤ（仮想化サーバ２００−４）、仮想化サーバＥ（仮想化サーバ２００−５）は”削除済み”（”■”）に設定される。
【０１８３】
次に、ステップＳ１２の動作について説明する。このステップでは、仮想マシンｂのマイグレーション先に仮想化サーバＤ（仮想化サーバ２００−４）を追加する。
【０１８４】
図３３は、ステップＳ１２における、マイグレーション管理サーバ１００のマイグレーション先マネージャ管理テーブル１１６の変化を示す図である。
【０１８５】
図３４は、ステップＳ１２における、仮想化サーバＣ（仮想化サーバ２００−３）のマイグレーション先エージェント管理テーブル２１５の変化を示す図である。
【０１８６】
図３５は、ステップＳ１２における、仮想化サーバＤ（仮想化サーバ２００−４）のマイグレーション先エージェント管理テーブル２１５の変化を示す図である。
【０１８７】
図３６は、ステップＳ１２における、マイグレーション管理サーバ１００の仮想マシン命令群マネージャ管理テーブル１１７の変化を示す図である。
【０１８８】
図３７は、ステップＳ１２における、仮想化サーバＣ（仮想化サーバ２００−３）の仮想マシン命令群エージェント管理テーブル２１６の変化を示す図である。
【０１８９】
図３８は、ステップＳ１２における、仮想化サーバＤ（仮想化サーバ２００−４）の仮想マシン命令群エージェント管理テーブル２１６の変化を示す図である。
【０１９０】
図３３、図３４、図３５、図３６、図３７及び図３８において、仮想化サーバＣ（仮想化サーバ２００−３）に仮想マシンｂが作成された時点では、仮想マシンｂのマイグレーション先は仮想化サーバＣ（仮想化サーバ２００−３）だけとなる。このため、この時点では、マイグレーション先マネージャ管理テーブル１１６は、仮想マシンｂのマイグレーション先の登録状態は、仮想化サーバＣ（仮想化サーバ２００−３）だけが”登録済み”（”●”）となっており、他の仮想化サーバ２００は”削除済み”（”■”）となっている（図３３）。
【０１９１】
また、仮想化サーバＣ（仮想化サーバ２００−３）に仮想マシンｂが作成された時点では、仮想マシンｂで使用可能なＣＰＵ命令群は、仮想化サーバＣ（仮想化サーバ２００−３）の物理マシン２８０で使用可能なＣＰＵ命令群となる。
【０１９２】
図４に示す物理マシン命令群マネージャ管理テーブル１１５を参照すると、仮想化サーバＣ（仮想化サーバ２００−３）の物理マシン２８０で使用可能なＣＰＵ命令群は、ＣＰＵ命令群１及びＣＰＵ命令群２である。従って、ＣＰＵ命令群１及びＣＰＵ命令群２が”使用可能”（”☆”）、ＣＰＵ命令群３及びＣＰＵ命令群４が“使用不可”（”★“）となっているため、図３６では、仮想マシンｂに係る各ＣＰＵ命令群のうち、ＣＰＵ命令群１及びＣＰＵ命令群２が”使用可能”（”○“）となっている。
【０１９３】
仮想マシンｂのマイグレーション先に仮想化サーバＤ（仮想化サーバ２００−４）を追加すると、仮想マシンｂで使用可能なＣＰＵ命令群は、仮想化サーバＣ（仮想化サーバ２００−３）及び仮想化サーバＤ（仮想化サーバ２００−４）の何れの物理マシン２８０上でも使用可能なＣＰＵ命令群となる。仮想マシンｂは仮想化サーバＣ（仮想化サーバ２００−３）、仮想化サーバＤ（仮想化サーバ２００−４）の何れにもマイグレーションされる可能性があるからである。
【０１９４】
図４に示す物理マシン命令群マネージャ管理テーブル１１５を参照すると、仮想化サーバＣ（仮想化サーバ２００−３）の物理マシン２８０で使用可能なＣＰＵ命令群は、ＣＰＵ命令群１及びＣＰＵ命令群２である。また、仮想化サーバＤ（仮想化サーバ２００−４）の物理マシン２８０で使用可能なＣＰＵ命令群は、ＣＰＵ命令群２及びＣＰＵ命令群３である。
【０１９５】
従って、仮想化サーバＣ（仮想化サーバ２００−３）及び仮想化サーバＤ（仮想化サーバ２００−４）の何れの物理マシン２８０でも使用可能なＣＰＵ命令群は、ＣＰＵ命令群２となる。このため、ＣＰＵ命令群１は”使用不可”となり、仮想マシン命令群マネージャ管理テーブル１１７では、仮想マシンｂに対するＣＰＵ命令群１の使用可否が、”使用可能”（”○”）から”使用不可保留中”（”▽”）に更新される（図３６）。
【０１９６】
仮想マシンｂのマイグレーション先に仮想化サーバＤ（仮想化サーバ２００−４）が追加されると、統合管理マネージャ１１０の仮想マシン命令群マネージャ管理手段１１３が、仮想化サーバＣ（仮想化サーバ２００−３）及び仮想化サーバＤ（仮想化サーバ２００−４）の各統合管理エージェント２１０に対して、“ＣＰＵ命令群変更通知”を通知する。ＣＰＵ命令群変更通知”は、仮想マシン２６０上で使用可能なＣＰＵ命令群の変更情報を通知するものである。
【０１９７】
該通知を受け取った各統合管理エージェント２１０では、仮想マシン命令群エージェント管理手段２１３が、仮想マシン命令群エージェント管理手段２１３が、該通知に基づいて仮想マシン命令群エージェント管理テーブル２１６の情報を更新する。
【０１９８】
この点、仮想化サーバＣ（仮想化サーバ２００−３）の仮想マシン命令群エージェント管理テーブル２１６では、仮想マシンｂに対するＣＰＵ命令群１の使用可否が”使用可能”（”○”）から”使用不可保留中”（”▽“）に更新される（図３７）。
【０１９９】
一方、仮想化サーバＤ（仮想化サーバ２００−４）の仮想マシン命令群エージェント管理テーブル２１６では、仮想マシンｂ上で使用可能なＣＰＵ命令群が新規に登録される（図３８）。具体的には、ＣＰＵ命令群１の使用可否が”使用可能”（”○”）で登録され、それ以外のＣＰＵ命令群の使用可否は”使用不可”（”□”）で登録される。
【０２００】
また、仮想マシンｂのマイグレーション先に仮想化サーバＤ（仮想化サーバ２００−４）が追加されると、統合管理エージェント２１０から統合管理マネージャ１１０に“ＣＰＵ命令群変更完了通知”が通知される。
【０２０１】
また、仮想マシンｂのマイグレーション先に仮想化サーバＤ（仮想化サーバ２００−４）が追加されると、仮想マシンｂ上で使用可能なＣＰＵ命令群が減少する。
【０２０２】
このため、統合管理マネージャ１１０上のマイグレーション先マネージャ管理テーブル１１６上では、仮想マシンｂに対する仮想化サーバＤ（仮想化サーバ２００−４）のマイグレーション先の登録が、即時に”削除済み”（”■“）から”登録済み”（”●“）には更新されず、”削除済み”（”■“）から登録中（”▲“）に更新される（図３３）。
【０２０３】
一方で、仮想マシンｂのマイグレーション先に仮想化サーバＤ（仮想化サーバ２００−４）が追加されると、統合管理マネージャ１１０のマイグレーション先エージェント管理手段２１４が、“マイグレーション先変更通知”を、マイグレーション先である仮想化サーバＣ（仮想化サーバ２００−３）及び仮想化サーバＤ（仮想化サーバ２００−４）上の統合管理エージェント２１０に通知する。
【０２０４】
該通知を受け取った各統合管理エージェント２１０では、該通知に基づいて、マイグレーション先エージェント管理テーブル２１５の情報を更新する。
【０２０５】
この点、仮想化サーバＣ（仮想化サーバ２００−３）のマイグレーション先エージェント管理テーブル２１５では、仮想マシンｂに対する仮想化サーバＣ（仮想化サーバ２００−３）のマイグレーション先の登録が”削除済み”（”■”）から”登録中”（”▲”）に更新される（図３４）。この登録中の状態は、仮想マシンｂが稼働停止するまで継続される。
【０２０６】
一方、仮想化サーバＤ（仮想化サーバ２００−４）のマイグレーション先エージェント管理テーブル２１５では、仮想マシンｂのマイグレーション先が追加される（図３５）。具体的には、仮想マシンａに対して、仮想化サーバＣ（仮想化サーバ２００−３）、仮想化サーバＤ（仮想化サーバ２００−４）は”登録済み”（”●”）で登録され、仮想化サーバＡ（仮想化サーバ２００−１）、仮想化サーバＢ（仮想化サーバ２００−２）、仮想化サーバＥ（仮想化サーバ２００−５）は”削除済み”（”■”）で登録される。
【０２０７】
マイグレーション先エージェント管理テーブル２１５の更新のあと、各統合管理エージェント２１０から統合管理マネージャ１１０に“マイグレーション先変更完了通知”が行われる。
【０２０８】
仮想マシンｂが稼働停止すると、仮想化サーバＣ（仮想化サーバ２００−３）のマイグレーション先エージェント管理テーブル２１５で、仮想マシンｂに対する仮想化サーバＤ（仮想化サーバ２００−４）のマイグレーション先の登録が、”登録中”（”▲“）から”登録済み”（”●“）に更新され（図３４）、仮想化サーバＣ（仮想化サーバ２００−３）の統合管理エージェント２１０から統合管理マネージャ１１０に“マイグレーション先変更完了通知”が行われる。
【０２０９】
また、仮想化サーバＣ（仮想化サーバ２００−３）のマイグレーション先エージェント管理テーブル２１５で、仮想マシンｂに対するＣＰＵ命令群１の使用可否が”使用不可保留中”（”▽”）から”使用不可”（”□“）に更新され（図３７）、仮想化サーバＣ（仮想化サーバ２００−３）の統合管理エージェント２１０から統合管理マネージャ１１０に“ＣＰＵ命令群変更完了通知”が通知される。
【０２１０】
統合管理マネージャ１１０は、仮想化サーバＣ（仮想化サーバ２００−３）及び仮想化サーバＤ（仮想化サーバ２００−４）の統合管理エージェント２１０から“マイグレーション先変更完了通知”を受信すると、マイグレーション先マネージャ管理テーブル１１６上で、仮想マシンｂに対する仮想化サーバＤ（仮想化サーバ２００−４）のマイグレーション先の登録が”登録中”（”▲“）から”登録済み”（”●“）に更新される（図３３）。
【０２１１】
また、統合管理マネージャ１１０が“ＣＰＵ命令群変更完了通知”を受信すると、仮想マシン命令群マネージャ管理テーブル１１７で、仮想マシンｂに対するＣＰＵ命令群１の使用可否が”使用不可保留中”（”▽”）から”使用不可”（”□“）に更新される（図３６）。
【０２１２】
次に、ステップＳ１３の動作について説明する。このステップでは、仮想マシンｄのマイグレーション先に仮想化サーバＥ（仮想化サーバ２００−５）を追加する。
【０２１３】
図３９は、ステップＳ１３における、マイグレーション管理サーバ１００のマイグレーション先マネージャ管理テーブル１１６の変化を示す図である。
【０２１４】
図４０は、ステップＳ１３における、仮想化サーバＤ（仮想化サーバ２００−４）のマイグレーション先エージェント管理テーブル２１５の変化を示す図である。
【０２１５】
図４１は、ステップＳ１３における、仮想化サーバＥ（仮想化サーバ２００−５）のマイグレーション先エージェント管理テーブル２１５の変化を示す図である。
【０２１６】
図４２は、ステップＳ１３における、マイグレーション管理サーバ１００の仮想マシン命令群マネージャ管理テーブル１１７の変化を示す図である。
【０２１７】
図４３は、ステップＳ１３における、仮想化サーバＤ（仮想化サーバ２００−４）の仮想マシン命令群エージェント管理テーブル２１６の変化を示す図である。
【０２１８】
図４４は、ステップＳ１３における、仮想化サーバＥ（仮想化サーバ２００−５）の仮想マシン命令群エージェント管理テーブル２１６の変化を示す図である。
【０２１９】
図５を参照すると、初期状態では、仮想マシンｄに対して、仮想化サーバＤ（仮想化サーバ２００−４）だけが”登録済み”（”●”）となっている。すなわち、仮想マシンｄは、まず初めに仮想化サーバＤ（仮想化サーバ２００−４）上に作成された事が分かる。
【０２２０】
図３９、図４０、図４１、図４２、図４３及び図４４において、仮想化サーバＤ（仮想化サーバ２００−４）上に仮想マシンｄが作成された時点では、仮想マシンｄのマイグレーション先は仮想化サーバＤ（仮想化サーバ２００−４）だけとなる。このため、マイグレーション先マネージャ管理テーブル１１６において、仮想マシンｄに対する各仮想化サーバ２００のマイグレーション先としての登録状況は、この時点では仮想化サーバＤ（仮想化サーバ２００−４）のみが”登録済み”（”●“）となっており、他の仮想化サーバ２００は”削除済み”（”■”）となっている（図３９）。
【０２２１】
また、仮想化サーバＤ（仮想化サーバ２００−４）上に仮想マシンｄが作成された時点では、仮想マシンｄ上で使用可能なＣＰＵ命令群は、仮想化サーバＤ（仮想化サーバ２００−４）の物理マシン２８０上で使用可能なＣＰＵ命令群となる。
【０２２２】
図４に示す物理マシン命令群マネージャ管理テーブル１１５を参照すると、仮想化サーバＤ（仮想化サーバ２００−４）の物理マシン２８０上で使用可能なＣＰＵ命令群は、ＣＰＵ命令群２及びＣＰＵ命令群３である。
【０２２３】
このため、仮想マシンｄ上で使用可能なＣＰＵ命令群は、ＣＰＵ命令群２及びＣＰＵ命令群３となる（図４２）。
【０２２４】
仮想マシンｄのマイグレーション先に仮想化サーバＥ（仮想化サーバ２００−５）が追加されると、仮想マシンｄ上で使用可能なＣＰＵ命令群は、仮想化サーバＤ（仮想化サーバ２００−４）及び仮想化サーバＥ（仮想化サーバ２００−５）の何れの物理マシン２８０上でも使用可能なＣＰＵ命令群となる。仮想マシンｄは、仮想化サーバＤ（仮想化サーバ２００−４）、仮想化サーバＥ（仮想化サーバ２００−５）の何れにもマイグレーションされる可能性があるからである。
【０２２５】
図４に示す、マイグレーション管理サーバ１００の物理マシン命令群マネージャ管理テーブル１１５を参照すると、仮想化サーバＥ（仮想化サーバ２００−５）の物理マシン２８０上で使用可能なＣＰＵ命令群は、ＣＰＵ命令群４である。とすれば、仮想化サーバＤ（仮想化サーバ２００−４）の物理マシン２８０上で使用可能なＣＰＵ命令群は、ＣＰＵ命令群２及びＣＰＵ命令群３であるから、仮想化サーバＤ（仮想化サーバ２００−４）及び仮想化サーバＥ（仮想化サーバ２００−５）の何れの物理マシン２８０上でも使用可能なＣＰＵ命令群は、存在しない。
【０２２６】
従って、仮想マシンｄのマイグレーション先に仮想化サーバＥ（仮想化サーバ２００−５）を追加できないこととなる。この結果、マイグレーション管理サーバ１００のマイグレーション先マネージャ管理テーブル１１６に更新は無い（図３９）。また、マイグレーション管理サーバ１００の仮想マシン命令群マネージャ管理テーブル１１７にも更新は無い（図４２）。
【０２２７】
また、仮想化サーバＤ（仮想化サーバ２００−４）及び仮想化サーバＥ（仮想化サーバ２００−５）の統合管理エージェント２１０に対する“マイグレーション先変更通知”も無いため、仮想化サーバＤ（仮想化サーバ２００−４）のマイグレーション先エージェント管理テーブル２１５の更新も無く（図４０）、仮想化サーバＥ（仮想化サーバ２００−５）のマイグレーション先エージェント管理テーブル２１５への、仮想マシンｄのマイグレーション先の登録もされない（図４１）。
【０２２８】
さらに、仮想化サーバＤ（仮想化サーバ２００−４）及び仮想化サーバＥ（仮想化サーバ２００−５）上の統合管理エージェント２１０に対する“ＣＰＵ命令群変更通知”も無いため、仮想化サーバＤ（仮想化サーバ２００−４）の仮想マシン命令群エージェント管理テーブル２１６の更新も無く（図４３）、仮想化サーバＥ（仮想化サーバ２００−５）の仮想マシン命令群エージェント管理テーブル２１６への、仮想マシンｄ上で使用可能なＣＰＵ命令群の登録されない（図４４）。
【０２２９】
次に、ステップＳ１４の動作について説明するこのステップでは、仮想マシンｂのマイグレーション先から仮想化サーバＣ（仮想化サーバ２００−３）を削除する。
【０２３０】
図４５は、ステップＳ１４における、マイグレーション管理サーバ１００のマイグレーション先マネージャ管理テーブル１１６の変化を示す図である。
【０２３１】
図４６は、ステップＳ１４における、仮想化サーバＣ（仮想化サーバ２００−３）のマイグレーション先エージェント管理テーブル２１５の変化を示している。
【０２３２】
図４７は、ステップＳ１４における、仮想化サーバＤ（仮想化サーバ２００−４）のマイグレーション先エージェント管理テーブル２１５の変化を示す図である。
【０２３３】
図４８は、ステップＳ１４における、マイグレーション管理サーバ１００の仮想マシン命令群マネージャ管理テーブル１１７の変化を示す図である。
【０２３４】
図４９は、ステップＳ１４における、仮想化サーバＣ（仮想化サーバ２００−３）の仮想マシン命令群エージェント管理テーブル２１６の変化を示す図である。
【０２３５】
図５０は、ステップＳ１４における、仮想化サーバＤ（仮想化サーバ２００−４）の仮想マシン命令群エージェント管理テーブル２１６の変化を示す図である。
【０２３６】
図４５を参照すると、仮想マシンｂのマイグレーション先から仮想化サーバＣ（仮想化サーバ２００−３）を削除する前の状態では、仮想マシンｂに対する各仮想化サーバ２００のマイグレーション先としての登録状況は、仮想化サーバＣ（仮想化サーバ２００−３）及び仮想化サーバＤ（仮想化サーバ２００−４）が”登録済み”（”●“）となっており、仮想化サーバＡ（仮想化サーバ２００−１）、仮想化サーバＢ（仮想化サーバ２００−２）及び仮想化サーバＥ（仮想化サーバ２００−５）が”削除済み”（”■“）となっている。
【０２３７】
また、図４８を参照すると、仮想マシンｂのマイグレーション先から仮想化サーバＣ（仮想化サーバ２００−３）を削除する前の状態では、仮想マシンｂ上で使用可能なＣＰＵ命令群は、ＣＰＵ命令群２だけが”使用可能”（”○“）となっている。
【０２３８】
図４５から分かるように、仮想マシンｂのマイグレーション先から仮想化サーバＣ（仮想化サーバ２００−３）を削除すると、仮想マシンｂのマイグレーション先は仮想化サーバＤ（仮想化サーバ２００−４）だけとなる。
【０２３９】
従って、仮想マシンｂのマイグレーション先から仮想化サーバＣ（仮想化サーバ２００−３）が削除されると、仮想マシンｂ上で使用可能なＣＰＵ命令群は、仮想化サーバＤ（仮想化サーバ２００−４）の物理マシン２８０上で使用可能なＣＰＵ命令群となる。
【０２４０】
ここで、図４に示す、マイグレーション管理サーバ１００の物理マシン命令群マネージャ管理テーブル１１５を参照すると、仮想化サーバＤ（仮想化サーバ２００−４）の物理マシン２８０上で使用可能なＣＰＵ命令群は、ＣＰＵ命令群２及びＣＰＵ命令群３である。
【０２４１】
従って、仮想マシンｂのマイグレーション先から仮想化サーバＣ（仮想化サーバ２００−３）が削除された後は、ＣＰＵ命令群３が使用可能となるため、仮想マシン命令群マネージャ管理テーブル１１７において、仮想マシンｂに対するＣＰＵ命令群３の使用可否が”使用不可”（”□“）から”使用可能”（”○“）に更新される（図４８）。
【０２４２】
また、仮想マシン管理サーバ１００で仮想マシンｂのマイグレーション先から仮想化サーバＣ（仮想化サーバ２００−３）の削除処理が実行されると、該仮想マシン管理サーバ１００の統合管理マネージャ１１０内にある仮想マシン命令群マネージャ管理手段１１３が  、仮想マシンｂのマイグレーション先である仮想化サーバＣ（仮想化サーバ２００−３）及び仮想化サーバＤ（仮想化サーバ２００−４）の統合管理エージェント２１０に対して、“ＣＰＵ命令群変更通知”を通知する。
【０２４３】
そして、該通知に基づいて、仮想化サーバＣ（仮想化サーバ２００−３）及び仮想化サーバＤ（仮想化サーバ２００−４）の各仮想マシン命令群エージェント管理テーブル２１６が更新される。すなわち、各仮想マシン命令群エージェント管理テーブル２１６では、仮想マシンｂに対するＣＰＵ命令群３の使用可否が”使用不可”（”□“）から”使用可能”（”○“）に更新される（図４９、図５０）。
【０２４４】
仮想マシン管理サーバ１００で仮想マシンｂのマイグレーション先から仮想化サーバＣ（仮想化サーバ２００−３）の削除処理が実行されても、仮想マシンｂが仮想化サーバＣ（仮想化サーバ２００−３）上で稼働している場合は、即時に仮想マシンｂを削除することはできない。
【０２４５】
このため、仮想マシン管理サーバ１００マイグレーション先マネージャ管理テーブル１１６上では、仮想マシンｂに対する仮想化サーバＣ（仮想化サーバ２００−３）の登録状態は即時に”登録済み”（”●”）から”削除済み”（”■“）には更新されず、まず、”登録済み”（”●“）から”削除中”（”▼“）に更新される（図４５）。
【０２４６】
また、仮想マシン管理サーバ１００で仮想マシンｂのマイグレーション先から仮想化サーバＣ（仮想化サーバ２００−３）の削除処理が実行されると、該仮想マシン管理サーバ１００の統合管理マネージャ１１０内にある  マイグレーション先マネージャ管理手段１１４が、仮想マシンｂのマイグレーション先である仮想化サーバＣ（仮想化サーバ２００−３）及び仮想化サーバＤ（仮想化サーバ２００−４）の統合管理エージェント２１０に対して、“マイグレーション先変更通知”を通知する。
【０２４７】
そして、該通知に基づいて、仮想化サーバＣ（仮想化サーバ２００−３）及び仮想化サーバＤ（仮想化サーバ２００−４）のマイグレーション先エージェント管理テーブル２１５が更新される。
【０２４８】
この点、仮想マシンｂが稼働している仮想化サーバＣ（仮想化サーバ２００−３）のマイグレーション先エージェント管理テーブル２１５では、まず、仮想マシンｂに対する仮想化サーバＣ（仮想化サーバ２００−３）登録状態が”登録済み”（”●“）から”削除中”（”▼“）に更新され（図４６）、仮想マシンｂが稼働停止するまでこの状態が維持される。
【０２４９】
そして、仮想マシンｂが稼働停止すると、仮想マシンｂに対する仮想化サーバＣ（仮想化サーバ２００−３）の登録状態が、”削除中”（”▼“）から”削除済み”（”■“）に更新され（図４６）、統合管理エージェント２１０から統合管理マネージャ１１０に“マイグレーション先変更完了通知”が行われる。
【０２５０】
一方、仮想マシンｂが稼働していない仮想化サーバＤ（仮想化サーバ２００−４）のマイグレーション先エージェント管理テーブル２１５では、仮想マシンｂに対する仮想化サーバＣ（仮想化サーバ２００−３）の登録状態が”登録済み”（”●“）から”削除済み”（”■“）に更新され（図４７）、統合管理エージェント２１０から統合管理マネージャ１１０に“マイグレーション先変更完了通知”が通知される。
【０２５１】
次いで、仮想マシン管理サーバ１００の統合管理マネージャ１１０が仮想化サーバＣ（仮想化サーバ２００−３）及び仮想化サーバＤ（仮想化サーバ２００−４）の統合管理エージェント２１０から“マイグレーション先変更完了通知”を受信すると、マイグレーション先マネージャ管理テーブル１１６において、仮想マシンｂに対する仮想化サーバＣ（仮想化サーバ２００−３）の登録状態が”削除中”（”▼“）から”削除済み”（”■“）に更新される（図４５）。
【０２５２】
（第１の実施の形態による効果）
第１の効果は、マイグレーション後でも仮想マシン及びゲストＯＳ上でのプログラム実行速度が低下せず、処理時間増加による消費電力増加も発生しないことにある。
【０２５３】
その理由は、処理性能低下の原因となるＣＰＵ命令のエミュレーションを行わず、ネイティブ実行可能なＣＰＵ命令群のみでプログラムを実行するためである。
【０２５４】
第２の効果は、物理マシン上でネイティブ実行可能なＣＰＵ命令群が少ない仮想化サーバをマイグレーション先として追加し、該仮想化サーバにマイグレーションする場合でも、仮想マシン及びゲストＯＳ上でのプログラム実行でエラーが発生しないことにある。
【０２５５】
その理由は、物理マシン上でネイティブ実行可能なＣＰＵ命令群が少ない仮想化サーバをマイグレーション先として追加しても、即時にマイグレーション可能な仮想化サーバとして登録せず、マイグレーション前の仮想化サーバ上で動作している仮想マシン及びゲストＯＳ上が使用しているＣＰＵ命令群がマイグレーション先として追加された仮想化サーバ上で使用可能なＣＰＵ命令群に包含される状態になってから該仮想化サーバをマイグレーション可能な仮想化サーバとして登録するためである。
【０２５６】
第３の効果は、マイグレーション先となる複数の仮想化サーバの各物理マシンの何れでも使用可能なＣＰＵ命令群が増加した場合、それらのＣＰＵ命令群を有効活用できることにある。
【０２５７】
その理由は、マイグレーション先となる複数の仮想化サーバの各物理マシンの何れでも使用可能なＣＰＵ命令群を随時更新することで、仮想マシン及びゲストＯＳ上でそれらのＣＰＵ命令群を使用可能とするためである。また、マイグレーション先となる複数の仮想化サーバの各物理マシンの何れでも使用可能なＣＰＵ命令群を手動で再設定するのではなく、システムが自動的に再設定するためである。
【０２５８】
第４の効果は、マイグレーション先の追加及び削除に伴ってマイグレーション先となる複数の仮想化サーバの各物理マシンの何れでも使用可能なＣＰＵ命令群が増減した場合でも、仮想マシン及びゲストＯＳ上で使用可能なＣＰＵ命令群を手動で再設定する必要が無いことにある。
【０２５９】
その理由は、マイグレーション先となる複数の仮想化サーバの物理マシン上の何れでも使用可能なＣＰＵ命令群の増減に伴い、仮想マシン及びゲストＯＳ上で使用可能なＣＰＵ命令群をシステムが自動的に再設定するためである。
【０２６０】
ここで、本発明の課題を解決できる最小限の構成を図５５に示す。仮想化システム１０が、仮想マシン２６０が動作し、統合管理マネージャ１１０と連携して動作する統合管理エージェント２１０を備える複数の仮想化サーバ２００と、仮想マシン２６０のマイグレーションを管理するマイグレーション管理サーバ１００とを備え、マイグレーション管理サーバ１００が、仮想マシン２６０のマイグレーション先となる複数の仮想化サーバ２００の物理マシン２８０上の何れでも使用可能なＣＰＵ命令群を求める物理マシン命令群マネージャ管理手段１１１を含む統合管理マネージャ１１０を備えることで、本発明の課題を解決することができる。
【０２６１】
（第２の実施の形態）
次に、本発明の第２の実施の形態について説明する。
【０２６２】
第１の実施の形態では、各仮想化サーバ２００上で動作する統合管理エージェント２１０には、該統合管理エージェント２１０が稼働している仮想化サーバ２００に関する情報のみを管理させていた。このため、マイグレーション先エージェント管理テーブル２１５及び仮想マシン命令群エージェント管理テーブル２１６には該仮想化サーバ２００に関連する仮想マシン２６０についての情報のみ管理するようにしていた。
【０２６３】
これに対し、マイグレーション先マネージャ管理テーブル１１６とマイグレーション先エージェント管理テーブル２１５の内容を同一にし、仮想マシン命令群マネージャ管理テーブル１１７と仮想マシン命令群エージェント管理テーブル２１６の内容も同一にすることにより、統合管理エージェント２１０も統合管理マネージャ１１０と同様に全ての仮想化サーバ２００についての情報を管理するようにする実施の形態もある。
【０２６４】
このような実施の形態では、統合管理エージェント２１０で保持する管理情報が増加するが、統合管理マネージャ１１０から統合管理エージェント２１０にマイグレーション先や仮想マシン２６０上で使用可能な命令群についての情報を伝達する際のフィルタリングが不要となり、万一、統合管理マネージャ１１０上での管理情報が消失した場合でも統合管理エージェント２１０上で保持している管理情報によって復旧できるという利点がある。
【０２６５】
（第３の実施の形態）
次に、本発明の第３の実施の形態について説明する。
【０２６６】
第１の実施の形態では、統合管理マネージャ１１０を物理ＯＳ１２０上で稼働させる形態としているが、図５１に示すように統合管理エージェント２１０と同様に統合管理マネージャ１１０をペアレントＯＳ２２０上で稼働させる形態もある。
【０２６７】
このような実施の形態では、図５１に示すようにいずれかの仮想化サーバ２００上で統合管理マネージャ１１０を統合管理エージェント２１０と同居させて、マイグレーション管理サーバ１００を不要とすることができるメリットがある。
【０２６８】
（第４の実施の形態）
次に、本発明の第４の実施の形態について説明する。
【０２６９】
第１の実施の形態では、統合管理マネージャ１１０をマイグレーション管理サーバ１００上で稼働させる形態としているが、図５１に示すように統合管理マネージャ１１０を全ての仮想化サーバ２００上で統合管理エージェント２１０と同居させる形態もある。
【０２７０】
このような実施の形態では、マイグレーション管理サーバ１００を不要とすることができるとともに、いずれかの仮想化サーバ２００に障害が発生しても他の仮想化サーバ２００上で統合管理マネージャ１１０が稼働しているため、障害の影響をシステム全体に波及させず局所化できるというメリットがある。
【０２７１】
（第５の実施の形態）
次に、本発明の第５の実施の形態について説明する。
【０２７２】
第１の実施の形態では、統合管理エージェント２１０をペアレントＯＳ上で稼働する１つのモジュールとして実装する形態としているが、図５２に示すように統合管理エージェント２１０をＨｙｐｅｒｖｉｓｏｒ  ２７０の１つの機能として包含して実装する形態もある。
【０２７３】
（第６の実施の形態）
次に、本発明の第６の実施の形態について説明する。
【０２７４】
第１の実施の形態では、統合管理マネージャ１１０を物理ＯＳ上で稼働する１つのモジュールとして実装する形態としているが、図５３に示すように統合管理エージェント２１０と同様に統合管理マネージャ１１０をＨｙｐｅｒｖｉｓｏｒ２７０の１つの機能として包含して実装する形態もある。
【０２７５】
（第７の実施の形態）
次に、本発明の第７の実施の形態について説明する。
【０２７６】
第１の実施の形態では、統合管理エージェント２１０をペアレントＯＳ上で稼働する１つのモジュールとして、統合管理マネージャ１１０を物理ＯＳ上で稼働する１つのモジュールとして実装する形態としているが、図５４に示すように統合管理エージェント２１０及び統合管理マネージャ１１０をＨｙｐｅｒｖｉｓｏｒ２７０の１つの機能として包含して実装する形態もある。
【０２７７】
（第８の実施の形態）
次に、本発明の第８の実施の形態について説明する。
【０２７８】
第１の実施の形態では、仮想マシン２６０の作成及び削除をマイグレーション管理サーバ１００上で一元的に行い、統合管理マネージャ１１０から統合管理エージェント２１０に該仮想マシン２６０のマイグレーション先に関する情報及び該仮想マシン２６０上で使用可能なＣＰＵ命令群についての情報を通知する形態としているが、仮想マシン２６０の作成及び削除を各仮想化サーバ２００上で行い、統合管理エージェント２１０から統合管理マネージャ１１０に該仮想マシン２６０のマイグレーション先に関する情報及び該仮想マシン２６０上で使用可能なＣＰＵ命令群についての情報を通知する形態もある。
【０２７９】
このような実施の形態では、仮想マシン２６０の作成及び削除をマイグレーション管理サーバ１００の稼働状況に関係なく各仮想化サーバ２００側のみで行うことができるというメリットがある。
【０２８０】
（第９の実施の形態）
次に、本発明の第９の実施の形態について説明する。
【０２８１】
第１の実施の形態では、マイグレーション先の追加及び削除をマイグレーション管理サーバ１００上で一元的に行い、統合管理マネージャ１１０から統合管理エージェント２１０にマイグレーション先に関する情報及び仮想マシン２６０上で使用可能なＣＰＵ命令群についての情報を通知する形態としているが、マイグレーション先の追加及び削除を各仮想化サーバ２００上で行い、統合管理エージェント２１０から統合管理マネージャ１１０にマイグレーション先に関する情報及び仮想マシン２６０上で使用可能なＣＰＵ命令群についての情報を通知する形態もある。
【０２８２】
（第１０の実施の形態）
次に、本発明の第１０の実施の形態について説明する。
【０２８３】
第１の実施の形態では、マイグレーション先の増減に伴う仮想マシン２６０上で使用可能なＣＰＵ命令群の増減を管理対象としているが、物理マシンに実装されているＧＰＵが異なる場合、マイグレーション先の増減に伴う仮想マシン２６０上で使用可能なＧＰＵ命令の増減も管理対象とする形態もある。
【０２８４】
（第１１の実施の形態）
次に、本発明の第１１の実施の形態について説明する。
【０２８５】
第１の実施の形態では、マイグレーション先の増減に伴う仮想マシン２６０上で使用可能なＣＰＵ命令群の増減を管理対象としているが、物理マシンに実装されているＩ／Ｏ機器やアクセラレータ等が異なる場合、マイグレーション先の増減に伴う仮想マシン２６０上で使用可能なＩ／Ｏ命令やアクセラレータ機能の増減も管理対象とする形態もある。
【０２８６】
（第１２の実施の形態）
次に、本発明の第１２の実施の形態について説明する。
【０２８７】
第１１の実施の形態では、マイグレーション先の増減に伴う仮想マシン２６０上で使用可能なＩ／Ｏ命令、アクセラレータ機能の増減を管理対象としているが、更にＩ／Ｏ及びアクセラレータの負荷状態やメモリアクセス速度も管理対象とし、負荷の低い仮想化サーバ２００を優先してマイグレーション先とする形態もある。
【０２８８】
（第１３の実施の形態）
次に、本発明の第１３の実施の形態について説明する。
【０２８９】
第１、第１０、第１１及び第１２の実施の形態では、マイグレーション先の増減に伴う仮想マシン２６０上で使用可能なＣＰＵ命令群の増減、ＧＰＵ命令の増減、Ｉ／Ｏ命令やアクセラレータ機能の増減、Ｉ／Ｏ及びアクセラレータの負荷状態やメモリアクセス速度を管理対象とするため、これらの管理対象を統合管理マネージャ１１０上でシステム管理者に提示し、マイグレーション先で使用できるリソースの増減を確認しながら、適切なマイグレーション先を決定する形態もある。
【０２９０】
次に、本発明のマイグレーション管理サーバ１００のハードウェア構成例について、図５６を参照して説明する。図５６は、本発明のマイグレーション管理サーバ１００のハードウェア構成例を示すブロック図である。
【０２９１】
図５６を参照すると、本発明のマイグレーション管理サーバ１００は、一般的なコンピュータ装置と同様のハードウェア構成であり、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１０１、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）等のメモリからなる、データの作業領域やデータの一時退避領域に用いられる主記憶部１０２、ネットワークを介してデータの送受信を行う通信部１０３、入力装置１０５や出力装置１０６及び記憶装置１０７と接続してデータの送受信を行う入出力インタフェース部１０４、上記各構成要素を相互に接続するシステムバス１０８を備えている。記憶装置１０７は、例えば、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、磁気ディスク、半導体メモリ等の不揮発性メモリから構成されるハードディスク装置等で実現される。
【０２９２】
本発明のマイグレーション管理サーバ１００の各機能は、プログラムを組み込んだ、ＬＳＩ（Ｌａｒｇｅ  Ｓｃａｌｅ  Ｉｎｔｅｇｒａｔｉｏｎ）等のハードウェア部品である回路部品を実装することにより、その動作をハードウェア的に実現することは勿論として、その機能を提供するプログラムを、記憶装置１０７に格納し、そのプログラムを主記憶部１０２にロードしてＣＰＵ１０１で実行することにより、ソフトウェア的に実現することも可能である。
【０２９３】
以上、好ましい実施の形態をあげて本発明を説明したが、本発明は必ずしも、上記実施の形態に限定されるものでなく、その技術的思想の範囲内において様々に変形して実施することができる。
【０２９４】
なお、以上の構成要素の任意の組み合わせ、本発明の表現を方法、装置、システム、記録媒体、コンピュータプログラムなどの間で変換したものもまた、本発明の態様として有効である。
【０２９５】
また、本発明の各種の構成要素は、必ずしも個々に独立した存在である必要はなく、複数の構成要素が一個の部材として形成されていること、一つの構成要素が複数の部材で形成されていること、ある構成要素が他の構成要素の一部であること、ある構成要素の一部と他の構成要素の一部とが重複していること、等でもよい。
【０２９６】
また、本発明の方法及びコンピュータプログラムには複数の手順を順番に記載してあるが、その記載の順番は複数の手順を実行する順番を限定するものではない。このため、本発明の方法及びコンピュータプログラムを実施する時には、その複数の手順の順番は内容的に支障しない範囲で変更することができる。
【０２９７】
また、本発明の方法及びコンピュータプログラムの複数の手順は個々に相違するタイミングで実行されることに限定されない。このため、ある手順の実行中に他の手順が発生すること、ある手順の実行タイミングと他の手順の実行タイミングとの一部ないし全部が重複していること、等でもよい。
【０２９８】
さらに、上記実施の形態の一部又は全部は、以下の付記のようにも記載されうるが、これに限定されない。
【０２９９】
（付記１）
仮想マシンが動作する複数の仮想化サーバと、
前記仮想マシンのマイグレーションを管理するマイグレーション管理サーバとを備え、
前記マイグレーション管理サーバが、
前記仮想マシンのマイグレーション先となる複数の仮想化サーバの物理マシン上の何れでも使用可能なＣＰＵ命令群を求める物理マシン命令群マネージャ管理手段を含む統合管理マネージャを備える
ことを特徴とする仮想化システム。
【０３００】
（付記２）
前記統合管理マネージャが、
前記仮想マシンのマイグレーション先を管理するマイグレーション先マネージャ管理手段を含み、
前記仮想マシンのマイグレーション先として任意の前記仮想化サーバを追加する場合、
前記物理マシン命令群マネージャ管理手段が、
前記任意の仮想化サーバを追加した場合において各仮想サーバの物理マシン上の何れでも使用可能なＣＰＵ命令群を特定し、
前記マイグレーション先マネージャ管理手段が、
前記物理マシン命令群マネージャ管理手段が特定した情報に基づき、前記仮想マシン上で使用可能なＣＰＵ命令群が減少すると判断した場合、当該仮想マシンが稼働停止してから、当該仮想マシン上で使用可能なＣＰＵ命令群を更新する
ことを特徴とする付記１に記載の仮想化システム。
【０３０１】
（付記３）
前記統合管理マネージャが、
前記仮想マシンのマイグレーション先を管理するマイグレーション先マネージャ管理手段を含み、
前記仮想マシンのマイグレーション先として任意の前記仮想化サーバを追加する場合、
前記物理マシン命令群マネージャ管理手段が、
前記任意の仮想化サーバを追加した場合において各仮想サーバの物理マシン上の何れでも使用可能なＣＰＵ命令群を特定し、
前記マイグレーション先マネージャ管理手段が、
前記物理マシン命令群マネージャ管理手段が特定した情報に基づき、前記仮想マシン上で使用可能なＣＰＵ命令群が無くなると判断した場合、当該マイグレーション先の追加を中止する
ことを特徴とする付記１又は付記２に記載の仮想化システム。
【０３０２】
（付記４）
前記統合管理マネージャが、
前記仮想マシンのマイグレーション先を管理するマイグレーション先マネージャ管理手段を含み、
前記仮想マシンのマイグレーション先として任意の前記仮想化サーバを追加する場合、
前記物理マシン命令群マネージャ管理手段が、
前記任意の仮想化サーバを追加した場合において各仮想サーバの物理マシン上の何れでも使用可能なＣＰＵ命令群を特定し、
前記マイグレーション先マネージャ管理手段が、
前記物理マシン命令群マネージャ管理手段が特定した情報に基づき、前記仮想マシン上で使用可能なＣＰＵ命令群が増えると判断した場合、即時に仮想マシン上で使用可能なＣＰＵ命令群を更新する
ことを特徴とする付記１から付記３の何れか１項に記載の仮想化システム。
【０３０３】
（付記５）
前記仮想マシン上で使用可能なＣＰＵ命令群は、当該仮想マシンのマイグレーション先の各前記仮想化サーバの何れでも使用可能なＣＰＵ命令群であることを特徴とする付記２から付記４の何れか１項に記載の仮想化システム。
【０３０４】
（付記６）
前記統合管理マネージャが、
各仮想マシン上で使用可能なＣＰＵ命令群を格納する仮想マシン命令群マネージャ管理テーブルと、
前記マイグレーション先マネージャ管理テーブルの情報を更新する仮想マシン命令群マネージャ管理手段とを備え、
前記マイグレーション先マネージャ管理手段は、
前記仮想マシン命令群マネージャ管理手段に、前記仮想マシン命令群マネージャ管理テーブルの更新を指示することで、前記仮想マシン上で使用可能なＣＰＵ命令群を更新する
ことを特徴とする付記２から付記５の何れか１項に記載の仮想化システム。
【０３０５】
（付記７）
前記統合管理マネージャが、
各仮想化サーバの物理マシン上で使用可能な前記ＣＰＵ命令群の情報を格納する物理マシン命令群マネージャ管理テーブルを備える
ことを特徴とする付記１から付記６の何れか１項に記載の仮想化システム。
【０３０６】
（付記８）
前記統合管理マネージャが、
各仮想マシンのマイグレーション先の情報を格納するマイグレーション先マネージャ管理テーブルを備える
ことを特徴とする付記１から付記７の何れか１項に記載の仮想化システム。
【０３０７】
（付記９）
前記仮想化サーバが、
前記統合管理マネージャが備える前記仮想マシン命令群マネージャ管理テーブル、前記物理マシン命令群マネージャ管理テーブル、及び前記マイグレーション先マネージャ管理テーブルと同一のテーブルを保持する
ことを特徴とする付記６から付記８の何れか１項に記載の仮想化システム。
【０３０８】
（付記１０）
前記仮想化サーバが、
物理マシン上で使用可能なＣＰＵ命令群を取得する物理マシン命令群エージェント管理手段と、
仮想マシンの作成および削除を管理する仮想マシンエージェント管理手段と、
仮想マシン上で使用可能なＣＰＵ命令群を管理する仮想マシン命令群エージェント管理手段と、
仮想マシンのマイグレーション先を管理するマイグレーション先エージェント管理手段を有する統合管理エージェントを備える
ことを特徴とする付記１から付記９の何れか１項に記載の仮想化システム。
【０３０９】
（付記１１）
前記統合管理マネージャと前記統合管理エージェントを同一の仮想化サーバ上に同居させ、前記マイグレーション管理サーバを不要とすることを特徴とする付記１０に記載の仮想化システム。
【０３１０】
（付記１２）
前記統合管理マネージャと前記統合管理エージェントをすべての仮想化サーバ上に実装することを特徴とする付記１０に記載の仮想化システム。
【０３１１】
（付記１３）
前記統合管理エージェントをＨｙｐｅｒｖｉｓｏｒの１つの機能として実装することを特徴とする付記１０から付記１２の何れか１項に記載の仮想化サーバ。
【０３１２】
（付記１４）
前記統合管理エージェント及び前記統合管理マネージャをＨｙｐｅｒｖｉｓｏｒの１つの機能として実装することを特徴とする付記１０から付記１２の何れか１項に記載の仮想化システム。
【０３１３】
（付記１５）
前記統合管理マネージャをＨｙｐｅｒｖｉｓｏｒの１つの機能として実装することを特徴とする付記１から付記１２の何れか１項に記載の仮想化システム。
【０３１４】
（付記１６）
前記統合管理マネージャを、前記仮想化サーバの物理ＯＳ上で稼働させることを特徴とする付記１から付記１５の何れか１項に記載の仮想化システム。
【０３１５】
（付記１７）
前記統合管理マネージャを、前記仮想化サーバのペアレントＯＳ上で稼働させることを特徴とする付記１から付記１５の何れか１項に記載の仮想化システム。
【０３１６】
（付記１８）
前記仮想マシン上で共通的に使用可能なＧＰＵ命令の増減を管理対象とすることを特徴とする付記１から付記１７の何れか１項に記載の仮想化システム。
【０３１７】
（付記１９）
仮想マシン上で共通的に使用可能なＩ／Ｏ命令、アクセラレータ機能の増減を管理対象とすることを特徴とする付記１から付記１８の何れか１項に記載の仮想化システム。
【０３１８】
（付記２０）
仮想マシン上で共通的に使用可能なＩ／Ｏおよびアクセラレータの負荷状態やメモリアクセス速度も管理対象とすることを特徴とする付記１から付記１９の何れか１項に記載の仮想化システム。
【０３１９】
（付記２１）
仮想化サーバ上の仮想マシンのマイグレーションを管理するマイグレーション管理サーバであって、
仮想マシンのマイグレーション先となる複数の仮想化サーバの物理マシン上の何れでも使用可能なＣＰＵ命令群を求める物理マシン命令群マネージャ管理手段を含む統合管理マネージャを備える
ことを特徴とするマイグレーション管理サーバ。
【０３２０】
（付記２２）
前記統合管理マネージャが、
前記仮想マシンのマイグレーション先を管理するマイグレーション先マネージャ管理手段を含み、
前記仮想マシンのマイグレーション先として任意の前記仮想化サーバを追加する場合、
前記物理マシン命令群マネージャ管理手段が、
前記任意の仮想化サーバを追加した場合において各仮想サーバの物理マシン上の何れでも使用可能なＣＰＵ命令群を特定し、
前記マイグレーション先マネージャ管理手段が、
前記物理マシン命令群マネージャ管理手段が特定した情報に基づき、前記仮想マシン上で使用可能なＣＰＵ命令群が減少すると判断した場合、当該仮想マシンが稼働停止してから、当該仮想マシン上で使用可能なＣＰＵ命令群を更新する
ことを特徴とする付記２１に記載のマイグレーション管理サーバ。
【０３２１】
（付記２３）
前記統合管理マネージャが、
前記仮想マシンのマイグレーション先を管理するマイグレーション先マネージャ管理手段を含み、
前記仮想マシンのマイグレーション先として任意の前記仮想化サーバを追加する場合、
前記物理マシン命令群マネージャ管理手段が、
前記任意の仮想化サーバを追加した場合において各仮想サーバの物理マシン上の何れでも使用可能なＣＰＵ命令群を特定し、
前記マイグレーション先マネージャ管理手段が、
前記物理マシン命令群マネージャ管理手段が特定した情報に基づき、前記仮想マシン上で使用可能なＣＰＵ命令群が無くなると判断した場合、当該マイグレーション先の追加を中止する
ことを特徴とする付記２１又は付記２２に記載のマイグレーション管理サーバ。
【０３２２】
（付記２４）
前記統合管理マネージャが、
前記仮想マシンのマイグレーション先を管理するマイグレーション先マネージャ管理手段を含み、
前記仮想マシンのマイグレーション先として任意の前記仮想化サーバを追加する場合、
前記物理マシン命令群マネージャ管理手段が、
前記任意の仮想化サーバを追加した場合において各仮想サーバの物理マシン上の何れでも使用可能なＣＰＵ命令群を特定し、
前記マイグレーション先マネージャ管理手段が、
前記物理マシン命令群マネージャ管理手段が特定した情報に基づき、前記仮想マシン上で使用可能なＣＰＵ命令群が増えると判断した場合、即時に仮想マシン上で使用可能なＣＰＵ命令群を更新する
ことを特徴とする付記２１から付記２３の何れか１項に記載のマイグレーション管理サーバ。
【０３２３】
（付記２５）
前記仮想マシン上で使用可能なＣＰＵ命令群は、当該仮想マシンのマイグレーション先の各前記仮想化サーバの何れでも使用可能なＣＰＵ命令群であることを特徴とする付記２２から付記２４の何れか１項に記載のマイグレーション管理サーバ。
【０３２４】
（付記２６）
前記統合管理マネージャが、
各仮想マシン上で使用可能なＣＰＵ命令群を格納する仮想マシン命令群マネージャ管理テーブルと、
前記マイグレーション先マネージャ管理テーブルの情報を更新する仮想マシン命令群マネージャ管理手段とを備え、
前記マイグレーション先マネージャ管理手段は、
前記仮想マシン命令群マネージャ管理手段に、前記仮想マシン命令群マネージャ管理テーブルの更新を指示することで、前記仮想マシン上で使用可能なＣＰＵ命令群を更新する
ことを特徴とする付記２２から付記２５の何れか１項に記載のマイグレーション管理サーバ。
【０３２５】
（付記２７）
前記統合管理マネージャが、
各仮想化サーバの物理マシン上で使用可能な前記ＣＰＵ命令群の情報を格納する物理マシン命令群マネージャ管理テーブルを備える
ことを特徴とする付記２１から付記２６の何れか１項に記載のマイグレーション管理サーバ。
【０３２６】
（付記２８）
前記統合管理マネージャが、
各仮想マシンのマイグレーション先の情報を格納するマイグレーション先マネージャ管理テーブルを備える
ことを特徴とする付記２１から付記２７の何れか１項に記載のマイグレーション管理サーバ。
【０３２７】
（付記２９）
前記仮想マシン上で共通的に使用可能なＧＰＵ命令の増減を管理対象とすることを特徴とする付記２１から付記２８の何れか１項に記載のマイグレーション管理サーバ。
【０３２８】
（付記３０）
仮想マシン上で共通的に使用可能なＩ／Ｏ命令、アクセラレータ機能の増減を管理対象とすることを特徴とする付記２１から付記２９の何れか１項に記載のマイグレーション管理サーバ。
【０３２９】
（付記３１）
仮想マシン上で共通的に使用可能なＩ／Ｏおよびアクセラレータの負荷状態やメモリアクセス速度も管理対象とすることを特徴とする付記２１から付記３０の何れか１項に記載のマイグレーション管理サーバ。
【０３３０】
（付記３２）
仮想化サーバ上の仮想マシンのマイグレーションを管理するマイグレーション管理サーバによるマイグレーション管理方法であって、
統合管理マネージャが備える物理マシン命令群マネージャ管理手段が、仮想マシンのマイグレーション先となる複数の仮想化サーバの物理マシン上の何れでも使用可能なＣＰＵ命令群を求める物理マシン命令群マネージャ管理ステップを有する
ことを特徴とするマイグレーション管理方法。
【０３３１】
（付記３３）
前記統合管理マネージャが備えるマイグレーション先マネージャ管理手段が、前記仮想マシンのマイグレーション先を管理するマイグレーション先マネージャ管理ステップを有し、
前記仮想マシンのマイグレーション先として任意の前記仮想化サーバを追加する場合、
前記物理マシン命令群マネージャ管理ステップで、
前記任意の仮想化サーバを追加した場合において各仮想サーバの物理マシン上の何れでも使用可能なＣＰＵ命令群を特定し、
前記マイグレーション先マネージャ管理ステップで、
前記物理マシン命令群マネージャ管理ステップで特定した情報に基づき、前記仮想マシン上で使用可能なＣＰＵ命令群が減少すると判断した場合、当該仮想マシンが稼働停止してから、当該仮想マシン上で使用可能なＣＰＵ命令群を更新する
ことを特徴とする付記３２に記載のマイグレーション管理方法。
【０３３２】
（付記３４）
前記統合管理マネージャが備えるマイグレーション先マネージャ管理手段が、前記仮想マシンのマイグレーション先を管理するマイグレーション先マネージャ管理ステップを有し、
前記仮想マシンのマイグレーション先として任意の前記仮想化サーバを追加する場合、
前記物理マシン命令群マネージャ管理ステップで、
前記任意の仮想化サーバを追加した場合において各仮想サーバの物理マシン上の何れでも使用可能なＣＰＵ命令群を特定し、
前記マイグレーション先マネージャ管理ステップで、
前記物理マシン命令群マネージャ管理ステップで特定した情報に基づき、前記仮想マシン上で使用可能なＣＰＵ命令群が無くなると判断した場合、当該マイグレーション先の追加を中止する
ことを特徴とする付記３２又は付記３３に記載のマイグレーション管理方法。
【０３３３】
（付記３５）
前記統合管理マネージャが備えるマイグレーション先マネージャ管理手段が、前記仮想マシンのマイグレーション先を管理するマイグレーション先マネージャ管理ステップを有し、
前記仮想マシンのマイグレーション先として任意の前記仮想化サーバを追加する場合、
前記物理マシン命令群マネージャ管理ステップで、
前記任意の仮想化サーバを追加した場合において各仮想サーバの物理マシン上の何れでも使用可能なＣＰＵ命令群を特定し、
前記マイグレーション先マネージャ管理ステップで、
前記物理マシン命令群マネージャ管理ステップで特定した情報に基づき、前記仮想マシン上で使用可能なＣＰＵ命令群が増えると判断した場合、即時に仮想マシン上で使用可能なＣＰＵ命令群を更新する
ことを特徴とする付記３２から付記３４の何れか１項に記載のマイグレーション管理方法。
【０３３４】
（付記３６）
前記仮想マシン上で使用可能なＣＰＵ命令群は、当該仮想マシンのマイグレーション先の各前記仮想化サーバの何れでも使用可能なＣＰＵ命令群であることを特徴とする付記３３から付記３５の何れか１項に記載のマイグレーション管理方法。
【０３３５】
（付記３７）
前記統合管理マネージャが備える仮想マシン命令群マネージャ管理テーブルが、各仮想マシン上で使用可能なＣＰＵ命令群を格納する仮想マシン命令群マネージャ管理情報格納ステップと、
前記統合管理マネージャが備える仮想マシン命令群マネージャ管理手段が、前記マイグレーション先マネージャ管理テーブルの情報を更新する仮想マシン命令群マネージャ管理ステップとを有し、
前記マイグレーション先マネージャ管理ステップで、
前記仮想マシン命令群マネージャ管理手段に、前記仮想マシン命令群マネージャ管理テーブルの更新を指示することで、前記仮想マシン上で使用可能なＣＰＵ命令群を更新する
ことを特徴とする付記３３から付記３６の何れか１項に記載のマイグレーション管理方法。
【０３３６】
（付記３８）
前記統合管理マネージャが備える物理マシン命令群マネージャ管理テーブルが、各仮想化サーバの物理マシン上で使用可能な前記ＣＰＵ命令群の情報を格納する物理マシン命令群マネージャ管理情報格納ステップを有する
ことを特徴とする付記３２から付記３７の何れか１項に記載のマイグレーション管理方法。
【０３３７】
（付記３９）
前記統合管理マネージャが備えるマイグレーション先マネージャ管理テーブルが、各仮想マシンのマイグレーション先の情報を格納するマイグレーション先マネージャ管理情報格納ステップを有する
ことを特徴とする付記３２から付記３８の何れか１項に記載のマイグレーション管理方法。
【０３３８】
（付記４０）
前記仮想マシン上で共通的に使用可能なＧＰＵ命令の増減を管理対象とすることを特徴とする付記３２から付記３９の何れか１項に記載のマイグレーション管理方法。
【０３３９】
（付記４１）
仮想マシン上で共通的に使用可能なＩ／Ｏ命令、アクセラレータ機能の増減を管理対象とすることを特徴とする付記３２から付記４０の何れか１項に記載のマイグレーション管理方法。
【０３４０】
（付記４２）
仮想マシン上で共通的に使用可能なＩ／Ｏおよびアクセラレータの負荷状態やメモリアクセス速度も管理対象とすることを特徴とする付記３２から付記４１の何れか１項に記載のマイグレーション管理方法。
【０３４１】
（付記４３）
仮想化サーバ上の仮想マシンのマイグレーションを管理するマイグレーション管理サーバを構成するコンピュータ上で動作するマイグレーション管理プログラムであって、
統合管理マネージャが備える物理マシン命令群マネージャ管理手段に、仮想マシンのマイグレーション先となる複数の仮想化サーバの物理マシン上の何れでも使用可能なＣＰＵ命令群を求める物理マシン命令群マネージャ管理処理を実行させる
ことを特徴とするマイグレーション管理プログラム。
【０３４２】
（付記４４）
前記統合管理マネージャが備えるマイグレーション先マネージャ管理手段に、前記仮想マシンのマイグレーション先を管理するマイグレーション先マネージャ管理処理を実行させ、
前記仮想マシンのマイグレーション先として任意の前記仮想化サーバを追加する場合、
前記物理マシン命令群マネージャ管理処理で、
前記任意の仮想化サーバを追加した場合において各仮想サーバの物理マシン上の何れでも使用可能なＣＰＵ命令群を特定し、
前記マイグレーション先マネージャ管理処理で、
前記物理マシン命令群マネージャ管理処理で特定した情報に基づき、前記仮想マシン上で使用可能なＣＰＵ命令群が減少すると判断した場合、当該仮想マシンが稼働停止してから、当該仮想マシン上で使用可能なＣＰＵ命令群を更新する
ことを特徴とする付記４３に記載のマイグレーション管理プログラム。
【０３４３】
（付記４５）
前記統合管理マネージャが備えるマイグレーション先マネージャ管理手段に、前記仮想マシンのマイグレーション先を管理するマイグレーション先マネージャ管理処理を実行させ、
前記仮想マシンのマイグレーション先として任意の前記仮想化サーバを追加する場合、
前記物理マシン命令群マネージャ管理処理で、
前記任意の仮想化サーバを追加した場合において各仮想サーバの物理マシン上の何れでも使用可能なＣＰＵ命令群を特定し、
前記マイグレーション先マネージャ管理処理で、
前記物理マシン命令群マネージャ管理処理で特定した情報に基づき、前記仮想マシン上で使用可能なＣＰＵ命令群が無くなると判断した場合、当該マイグレーション先の追加を中止する
ことを特徴とする付記４３又は付記４４に記載のマイグレーション管理プログラム。
【０３４４】
（付記４６）
前記統合管理マネージャが備えるマイグレーション先マネージャ管理手段に、前記仮想マシンのマイグレーション先を管理するマイグレーション先マネージャ管理処理を実行させ、
前記仮想マシンのマイグレーション先として任意の前記仮想化サーバを追加する場合、
前記物理マシン命令群マネージャ管理処理で、
前記任意の仮想化サーバを追加した場合において各仮想サーバの物理マシン上の何れでも使用可能なＣＰＵ命令群を特定し、
前記マイグレーション先マネージャ管理処理で、
前記物理マシン命令群マネージャ管理処理で特定した情報に基づき、前記仮想マシン上で使用可能なＣＰＵ命令群が増えると判断した場合、即時に仮想マシン上で使用可能なＣＰＵ命令群を更新する
ことを特徴とする付記４３から付記４５の何れか１項に記載のマイグレーション管理プログラム。
【０３４５】
（付記４７）
前記仮想マシン上で使用可能なＣＰＵ命令群は、当該仮想マシンのマイグレーション先の各前記仮想化サーバの何れでも使用可能なＣＰＵ命令群であることを特徴とする付記４４から付記４６の何れか１項に記載のマイグレーション管理プログラム。
【０３４６】
（付記４８）
前記統合管理マネージャが備える仮想マシン命令群マネージャ管理テーブルに、各仮想マシン上で使用可能なＣＰＵ命令群を格納する仮想マシン命令群マネージャ管理情報格納処理を実行させ、
前記統合管理マネージャが備える仮想マシン命令群マネージャ管理手段に、前記マイグレーション先マネージャ管理テーブルの情報を更新する仮想マシン命令群マネージャ管理処理を実行させ、
前記マイグレーション先マネージャ管理処理で、
前記仮想マシン命令群マネージャ管理手段に、前記仮想マシン命令群マネージャ管理テーブルの更新を指示することで、前記仮想マシン上で使用可能なＣＰＵ命令群を更新する
ことを特徴とする付記４４から付記４７の何れか１項に記載のマイグレーション管理プログラム。
【０３４７】
（付記４９）
前記統合管理マネージャが備える物理マシン命令群マネージャ管理テーブルに、各仮想化サーバの物理マシン上で使用可能な前記ＣＰＵ命令群の情報を格納する物理マシン命令群マネージャ管理情報格納処理を実行させる
ことを特徴とする付記４３から付記４８の何れか１項に記載のマイグレーション管理プログラム。
【０３４８】
（付記５０）
前記統合管理マネージャが備えるマイグレーション先マネージャ管理テーブルに、各仮想マシンのマイグレーション先の情報を格納するマイグレーション先マネージャ管理情報格納処理を実行させる
ことを特徴とする付記４３から付記４９の何れか１項に記載のマイグレーション管理プログラム。
【０３４９】
（付記５１）
前記仮想マシン上で共通的に使用可能なＧＰＵ命令の増減を管理対象とすることを特徴とする付記４３から付記５０の何れか１項に記載のマイグレーション管理プログラム。
【０３５０】
（付記５２）
仮想マシン上で共通的に使用可能なＩ／Ｏ命令、アクセラレータ機能の増減を管理対象とすることを特徴とする付記４３から付記５１の何れか１項に記載のマイグレーション管理プログラム。
【０３５１】
（付記５３）
仮想マシン上で共通的に使用可能なＩ／Ｏおよびアクセラレータの負荷状態やメモリアクセス速度も管理対象とすることを特徴とする付記４３から付記５２の何れか１項に記載のマイグレーション管理プログラム。
【符号の説明】
【０３５２】
１０：仮想化システム
１００：マイグレーション管理サーバ
１０１：ＣＰＵ
１０２：主記憶部
１０３：通信部
１０４：入出力インタフェース部
１０５：入力装置
１０６：出力装置
１０７：記憶装置
１０８：システムバス
１１０：統合管理マネージャ
１１１：物理マシン命令群マネージャ管理手段
１１２：仮想マシンマネージャ管理手段
１１３：仮想マシン命令群マネージャ管理手段
１１４：マイグレーション先マネージャ管理手段
１１５：物理マシン命令群マネージャ管理テーブル
１１６：マイグレーション先マネージャ管理テーブル
１１７：仮想マシン命令群マネージャ管理テーブル
１２０：物理ＯＳ
１３０：物理マシン
２００（２００−１〜２００５）：仮想化サーバ（仮想化サーバＡ〜仮想化サーバＥ）
２１０：統合管理エージェント
２１１：物理マシン命令群エージェント管理手段
２１２：仮想マシンエージェント管理手段
２１３：仮想マシン命令群エージェント管理手段
２１４：マイグレーション先エージェント管理手段
２１５：マイグレーション先エージェント管理テーブル
２１６：仮想マシン命令群エージェント管理テーブル
２２０：ペアレントＯＳ
２３０：ペアレントＯＳ用仮想マシン
２４０：プログラム
２５０：ゲストＯＳ
２６０：仮想マシン
２７０：Ｈｙｐｅｒｖｉｓｏｒ
２８０：物理マシン
【図１】
0005953880.tif 000002
【図２】
0005953880.tif 000003
【図３】
0005953880.tif 000004
【図４】
0005953880.tif 000005
【図５】
0005953880.tif 000006
【図６】
0005953880.tif 000007
【図７】
0005953880.tif 000008
【図８】
0005953880.tif 000009
【図９】
0005953880.tif 000010
【図１０】
0005953880.tif 000011
【図１１】
0005953880.tif 000012
【図１２】
0005953880.tif 000013
【図１３】
0005953880.tif 000014
【図１４】
0005953880.tif 000015
【図１５】
0005953880.tif 000016
【図１６】
0005953880.tif 000017
【図１７】
0005953880.tif 000018
【図１８】
0005953880.tif 000019
【図１９】
0005953880.tif 000020
【図２０】
0005953880.tif 000021
【図２１】
0005953880.tif 000022
【図２２】
0005953880.tif 000023
【図２３】
0005953880.tif 000024
【図２４】
0005953880.tif 000025
【図２５】
0005953880.tif 000026
【図２６】
0005953880.tif 000027
【図２７】
0005953880.tif 000028
【図２８】
0005953880.tif 000029
【図２９】
0005953880.tif 000030
【図３０】
0005953880.tif 000031
【図３１】
0005953880.tif 000032
【図３２】
0005953880.tif 000033
【図３３】
0005953880.tif 000034
【図３４】
0005953880.tif 000035
【図３５】
0005953880.tif 000036
【図３６】
0005953880.tif 000037
【図３７】
0005953880.tif 000038
【図３８】
0005953880.tif 000039
【図３９】
0005953880.tif 000040
【図４０】
0005953880.tif 000041
【図４１】
0005953880.tif 000042
【図４２】
0005953880.tif 000043
【図４３】
0005953880.tif 000044
【図４４】
0005953880.tif 000045
【図４５】
0005953880.tif 000046
【図４６】
0005953880.tif 000047
【図４７】
0005953880.tif 000048
【図４８】
0005953880.tif 000049
【図４９】
0005953880.tif 000050
【図５０】
0005953880.tif 000051
【図５１】
0005953880.tif 000052
【図５２】
0005953880.tif 000053
【図５３】
0005953880.tif 000054
【図５４】
0005953880.tif 000055
【図５５】
0005953880.tif 000056
【図５６】
0005953880.tif 000057