(57)【特許請求の範囲】
【請求項１】
複数の仮想サーバを構築可能なサーバ仮想化機構部を有する第１及び第２のサーバと、
前記第１及び第２のサーバ間を接続し、前記第１及び第２のサーバの何れかに接続される複数のポートを有するネットワークスイッチ装置と、
前記ネットワークスイッチ装置に接続し、前記第２のサーバに構築される移送先仮想サーバを移送元の前記第１のサーバとして使用するためのサーバ移送処理を管理する管理サーバとを備え、
前記管理サーバは、前記サーバ移送処理のときに、前記複数のポートに指定する設定情報を前記ネットワークスイッチ装置に送信する移送機構部を有し、
前記ネットワークスイッチ装置は、送信された前記複数のポートの設定情報に基づいて、前記複数のポートの設定を変更する一括設定変更部を有し、
前記第２のサーバのサーバ仮想化機構部は、前記複数の仮想サーバ間を接続可能な仮想ネットワークスイッチを有し、
前記仮想ネットワークスイッチは、前記第２のサーバ又は前記移送先仮想サーバの何れか一方に接続される複数の仮想ポートを有し、
前記移送機構部は、前記サーバ移送処理のときに、前記複数の仮想ポートに指定する設定情報を前記仮想ネットワークスイッチに送信し、
前記仮想ネットワークスイッチは、送信された前記複数の仮想ポートの設定情報に基づいて、前記複数のポートの設定を変更し、
前記管理サーバは、前記移送先仮想サーバの構築に必要な資源に対する要件として、それぞれの資源の資源種別および設定記述を記述する予約表を有し、
前記移送機構部は、前記予約表を指定して前記移送先仮想サーバの構築を前記第２のサーバのサーバ仮想化機構部に要求し、
前記第２のサーバのサーバ仮想化機構部は、指定された予約表に基づいて、前記サーバ移送処理中に前記移送先仮想サーバを構築するために必要な前記第２のサーバが有する資源を予約する予約機構部を有し、
前記予約機構部は、前記予約表に示されたそれぞれの資源の資源種別および設定記述に基づいて前記資源の予約可否を判定し、前記予約可否に従って前記予約表で示されたそれぞれの資源を予約する
ことを特徴とするサーバシステム。
【請求項２】
前記移送機構部は、前記サーバ仮想化機構部と通信して前記第２のサーバに前記移送先仮想サーバ以外の仮想サーバが構築されているか否かを判定し、
前記予約機構部は、前記移送先仮想サーバ以外に仮想サーバが構築されていないときに、前記サーバ移送処理中に前記移送先仮想サーバを構築するために必要な前記第２のサーバが有する資源を占有して予約する
ことを特徴とする請求項１に記載のサーバシステム。
【請求項３】
前記第２のサーバのサーバ仮想化機構部は、前記移送先仮想サーバが有する仮想ネットワークインタフェースを介して物理ネットワークインタフェースに直接アクセス可能なアクセス機能を有し、
前記予約機構部は、前記移送先仮想サーバに割り当て可能な物理ネットワークインタフェースの資源があるか否かを判定し、前記割り当て可能な物理ネットワークインタフェースの資源があるときに、前記アクセス機能により前記割り当て可能な物理ネットワークインタフェースを占有して予約する
ことを特徴とする請求項１に記載のサーバシステム。
【請求項４】
前記予約機構部は、前記割り当て可能な物理ネットワークインタフェースの資源がないときに、仮想ネットワークインタフェースを予約する
ことを特徴とする請求項３に記載のサーバシステム。
【請求項５】
複数の仮想サーバを構築可能なサーバ仮想化機構部を有する第１及び第２のサーバと、
前記第１及び第２のサーバ間を接続し、前記第１及び第２のサーバの何れかに接続される複数のポートを有するネットワークスイッチ装置と、
前記ネットワークスイッチ装置に接続し、前記第２のサーバに構築される移送先仮想サーバを移送元の前記第１のサーバとして使用するためのサーバ移送処理を管理する管理サーバとを備えるサーバシステムにおけるサーバ移送方法であって、
前記管理サーバは、前記サーバ移送処理のときに、前記複数のポートに指定する設定情報を前記ネットワークスイッチ装置に送信する移送機構部を有し、
前記ネットワークスイッチ装置は、送信された前記複数のポートの設定情報に基づいて、前記複数のポートの設定を変更する一括設定変更部を有し、
前記第２のサーバのサーバ仮想化機構部は、前記複数の仮想サーバ間を接続可能な仮想ネットワークスイッチを有し、
前記仮想ネットワークスイッチは、前記第２のサーバ又は前記移送先仮想サーバの何れか一方に接続される複数の仮想ポートを有し、
前記移送機構部は、前記サーバ移送処理のときに、前記複数の仮想ポートに指定する設定情報を前記仮想ネットワークスイッチに送信するステップを含み、
前記仮想ネットワークスイッチは、送信された前記複数の仮想ポートの設定情報に基づいて、前記複数のポートの設定を変更するステップを含み、
前記管理サーバは、前記移送先仮想サーバの構築に必要な資源に対する要件として、それぞれの資源の資源種別および設定記述を記述する予約表を有し、
前記移送機構部は、前記予約表を指定して前記移送先仮想サーバの構築を前記第２のサーバのサーバ仮想化機構部に要求するステップを含み、
前記第２のサーバのサーバ仮想化機構部は、指定された予約表に基づいて、前記サーバ移送処理中に前記移送先仮想サーバを構築するために必要な前記第２のサーバが有する資源を予約する予約機構部を有し、
前記予約機構部は、前記予約表に示されたそれぞれの資源の資源種別および設定記述に基づいて前記資源の予約可否を判定し、前記予約可否に従って前記予約表で示されたそれぞれの資源を予約するステップを含む
ことを特徴とするサーバシステムにおけるサーバ移送方法。
【請求項６】
前記移送機構部は、前記サーバ仮想化機構部と通信して前記第２のサーバに前記移送先仮想サーバ以外の仮想サーバが構築されているか否かを判定するステップを含み、
前記予約機構部は、前記移送先仮想サーバ以外に仮想サーバが構築されていないときに、前記サーバ移送処理中に前記移送先仮想サーバを構築するために必要な前記第２のサーバが有する資源を占有して予約するステップを含む
ことを特徴とする請求項５に記載のサーバシステムにおけるサーバ移送方法。
【請求項７】
前記第２のサーバのサーバ仮想化機構部は、前記移送先仮想サーバが有する仮想ネットワークインタフェースを介して物理ネットワークインタフェースに直接アクセス可能なアクセス機能を有し、
前記予約機構部は、前記移送先仮想サーバに割り当て可能な物理ネットワークインタフェースの資源があるか否かを判定するステップと、前記割り当て可能な物理ネットワークインタフェースの資源があるときに、前記アクセス機能により前記割り当て可能な物理ネットワークインタフェースを占有して予約するステップとを含む
ことを特徴とする請求項５に記載のサーバシステムにおけるサーバ移送方法。
【請求項８】
前記予約機構部は、前記割り当て可能な物理ネットワークインタフェースの資源がないときに、仮想ネットワークインタフェースを予約するステップを含む
ことを特徴とする請求項７に記載のサーバシステムにおけるサーバ移送方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は一のサーバから他のサーバへ実行環境を移動するネットワークスイッチ装置及びこのネットワークスイッチ装置に接続する複数のサーバと管理サーバを備えるサーバシステムに関する。
【背景技術】
【０００２】
企業情報システムを支えるサーバ、ネットワークなどの機器数の増加や、アウトソーシングの進展に伴うデータセンタへの企業情報システム集約の結果、増大するＩＴシステムの運用管理コストを含むＴＣＯ削減が望まれている。さらに、新たなサービスの迅速な立ち上げ、負荷変動への対応、保守によるサービス停止時間の短縮などの要求を満たすために、ＩＴシステム基盤の柔軟性を高めることが必要である。
【０００３】
前記のような要求を受け、サーバ仮想化技術を利用した運用管理の簡素化が注目を集めている。サーバ仮想化は、ＯＳを含むアプリケーションの実行環境を、マシン命令レベルで仮想化する技術であり、物理サーバ上に複数ＯＳを独立した実行環境として構築可能である。ＯＳに提示する仮想マシンアーキテクチャを均質化することにより、サーバを正規化することが可能となり、複数ベンダの物理サーバを管理することに比べ、サーバの運用管理コスト削減が期待できる。
【０００４】
また、サーバ仮想化技術を用いることにより、柔軟なＩＴ基盤を提供することが可能となっている。従来ならば、あるサービスを実現するＩＴ基盤は、運用管理まで含めると物理サーバへの依存性が高かったが、サーバ仮想化技術を用いて、ＩＴ基盤との結びつきを弱めることにより、ある物理サーバ上で動作していたサービスを別の物理サーバ上へ移行することが容易となってきた。このような技術をサーバ移送技術と呼ぶ。
【０００５】
最近では、主要なサーバ仮想化ベンダが、見かけ上サービスを停止することなく、あるサーバから別のサーバへサーバ移送を行うライブ移送技術を開発してきている(非特許文献1参照)。同時に、これを用いた、負荷変動への対応、保守による停止時間の最小化などの提案がなされている。
【０００６】
サーバ移送は、サービスを提供する複数のサーバ、ネットワーク、ストレージの設定を引き継ぐ必要がある。設定の引継ぎには、複数の装置や複数の設定変更が関与するため、これら複数装置の複数の設定を、一貫性をもって行う必要がある。特に、企業情報システムを支えるサービスの場合は高い信頼性が要求されるため、設定中の障害に対する耐性を高めると共に、移送の適用先を広げるために、移送の柔軟性を高めることが重要である。
【特許文献１】特開２００７−２８６７０９号公報
【非特許文献１】Christopher Clark, Keir Fraser,その他著「Live Migration of Virtual Machines」、Symposium on Networked Systems Design and Implementation、２００５年５月
【発明の開示】
【発明が解決しようとする課題】
【０００７】
一般に、サーバ移送に関与する各機器の設定を確実に行うためには、各機器への設定操作発行に際して、要求された設定を行って正常終了するか、障害発生し要求された設定が実行できない場合には設定前の状態で異常終了するか、のどちらかになることが望ましい。このような性質を設定操作の原始性という。
【０００８】
しかしながら、複数の装置が関与する移送について、障害の状況によっては簡単に設定前の状態には戻らない場合がある。
【０００９】
すなわち、サーバ移送に関しては、単一の装置においても、移送元サーバ用と移送先サーバ用という複数の設定が必要である。特に、両サーバを接続するネットワークスイッチにおいては、複数の設定が必須となる。この場合、複数の設定項目に関して設定コマンドを発行する必要があり、コマンドごとにコマンド実行の成否確認と、コマンド実行が失敗した場合の処理などを記述する必要があるから、サーバ移送処理に伴うネットワークの設定処理の記述が煩雑になる。また、ネットワークスイッチへの設定を行う主体は１つとは限らないため、ある主体が複数設定を行っている最中に、別の主体が同じ項目に対する設定を行わないように排他制御する必要がある。このため、排他制御を実現するためにさらに設定処理が複雑化する。以上のようなサーバ移送処理フローの複雑化により、運用管理自体も複雑化する。さらに、新たな障害への対応などの、移送処理の機能強化が困難となるとともに、移送処理のメンテナンスも機能強化のたびに困難になるという問題点があった。
【００１０】
また、従来のサーバ移送では、ネットワークやストレージの設定を予め行っておくことが前提となっており、設定の柔軟性に欠けている。例えば、移送先の仮想サーバをホストする物理サーバの状況によって、構成や設定を変えることが出来ない。また、サーバ仮想化技術により将来動的に移送先を決定するような環境においては、予め仮想サーバの構築、ネットワークやストレージなどの設定を行うことができない。特に、移送先のサーバすら構築されていない状況では、現状の構成から設定に必要な資源などを判断することすらできなくなるという問題点があった。
【００１１】
さらに、従来のライブ移送技術では、ストレージをＳＡＮで共有することが前提であり、サーバに内蔵のハードディスクにシステムやデータを持つような環境の移送には対応していない。一方、実行環境の配布を行うデプロイという技術を用いて、サーバ移送を行う方法がある。しかし、デプロイ技術は、サーバ移送に対応した技術ではないため、サーバの管理をネットワークの物理アドレスにおいて行うので、サーバ移送にそのまま適用すると、ネットワークの物理アドレスが変わってしまう。また、ネットワークの設定は、ネットワークスイッチだけではなくサーバ側のネットワークインタフェースの設定とも関連するため、物理アドレスが変わると不都合が生じる場合もあるという問題点があった。
【００１２】
本発明は前記問題点に鑑みてなされたものであり、その目的とするところは、容易にサーバ移送を行うことのできるネットワークスイッチ装置、サーバシステム、及びサーバシステムにおけるサーバ移送方法を提供することにある。
【課題を解決するための手段】
【００１３】
本発明は前記目的を達成するために、第１及び第２のサーバ間を接続するネットワークスイッチ装置であって、前記第１又は第２のサーバの何れか一方に接続される複数のポートと、前記第２のサーバに構築される移送先仮想サーバを移送元の前記第１のサーバとして使用するためのサーバ移送処理のときに、前記複数のポートに指定される設定情報に基づいて、前記複数のポートの設定を変更する一括設定変更部とを備えるネットワークスイッチ装置を提案する。
【００１４】
また、本発明は前記目的を達成するために、複数の仮想サーバを構築可能なサーバ仮想化機構部を有する第１及び第２のサーバと、前記第１及び第２のサーバ間を接続し、前記第１及び第２のサーバの何れかに接続される複数のポートを有するネットワークスイッチ装置と、前記ネットーワークスイッチ装置に接続し、前記第２のサーバに構築される移送先仮想サーバを移送元の前記第１のサーバとして使用するためのサーバ移送処理を管理する管理サーバとを備え、前記管理サーバは、前記サーバ移送処理のときに、前記複数のポートに指定する設定情報を前記ネットワークスイッチ装置に送信する移送機構部を有し、前記ネットワークスイッチ装置は、送信された前記複数のポートの設定情報に基づいて、前記複数のポートの設定を変更する一括設定変更部を有するサーバシステムを提案する。
【００１５】
また、本発明は前記目的を達成するために、複数の仮想サーバを構築可能なサーバ仮想化機構部を有する第１及び第２のサーバと、前記第１及び第２のサーバ間を接続し、前記第１及び第２のサーバの何れか一方に接続される複数のポートを有するネットワークスイッチ装置と、前記ネットーワークスイッチ装置に接続し、前記第２のサーバに構築される移送先仮想サーバを移送元の前記第１のサーバとして使用するためのサーバ移送処理を管理する管理サーバとを備えるサーバシステムにおけるサーバ移送方法であって、前記管理サーバは、前記サーバ移送処理のときに、前記複数のポートに指定する設定情報を前記ネットワークスイッチ装置に送信するステップと、送信された前記複数のポートの設定情報に基づいて、前記複数のポートの設定を変更するステップとを備えるサーバシステムにおけるサーバ移送方法を提案する。
【００１６】
かかる構成によれば、前記サーバ移送処理のときに、管理サーバによって複数のポートに指定する設定情報がネットワークスイッチ装置に送信され、ネットワークスイッチ装置によって送信された複数のポートの設定情報に基づいて、複数のポートの設定が変更されるので、例えば、管理サーバがネットワークスイッチ装置の全てのポートに対してサーバ移送後の設定情報を指定することにより、移送元サーバ及び移送先サーバを接続するネットワークスイッチ装置に関する設定を一括して行うことが可能となる。
【発明の効果】
【００１７】
本発明によれば、例えば、管理サーバがネットワークスイッチ装置の全てのポートに対してサーバ移送後の設定情報を指定することにより、移送元サーバ及び移送先サーバを接続するネットワークスイッチ装置に関する設定を一括して変更することが可能となる。これにより、従来のように、移送元サーバ用と移送先サーバ用という複数の設定が不要となり、サーバ移送において複数の設定が必須となる両サーバを接続するネットワークスイッチ装置の設定が一度の処理で完了することができ、容易にサーバ移送を行うことができる。
【発明を実施するための最良の形態】
【００１８】
最初に、図１乃至図９を参照して本発明の第１実施形態について説明する。まず、図１乃至図６を参照して第１実施形態における構成について説明する。
【００１９】
図１は第１実施形態におけるサーバシステムの構成を説明する概略構成図である。サーバシステム１は移送対象の物理サーバ１００、１０１、１０７と、管理サーバ１３０と、これらを接続するネットワークスイッチ装置１２０とを備えている。図１に示すネットワークは、サーバにより提供されるサービスをクライアントが利用するときのトラフィックが流れるパスとなる業務ネットワークである。これ以外に、サーバ、ネットワーク、ストレージを含めた各機器の監視や設定をするための管理ネットワーク（図示せず）が存在している。
【００２０】
物理サーバ１００、１０１、１０７は、ネットワークインタフェースカード(以下、ＮＩＣという)をそれぞれ複数枚有している。図１において、物理サーバ１００、１０１、１０７は、それぞれ、ＮＩＣ１１０とＮＩＣ１１１、ＮＩＣ１１２とＮＩＣ１１３、ＮＩＣ１１４〜１１６を有する。物理サーバ１００、１０１、１０７上のＮＩＣ１１０〜１１６は、それぞれ後述のネットワークスイッチ装置１２０に接続されている。
【００２１】
また、物理サーバ１００、１０１、１０７は、それぞれサーバ制御のためのサービスプロセッサ(以下、ＳＶＰという)を有しており、物理サーバ１００、１０１、１０７に対して、それぞれＳＶＰ１０４、１０５、１０８が対応する。ＳＶＰ１０４、１０５、１０８は、物理サーバ１００、１０１、１０７の主電源がＯＦＦの状態でも物理サーバ１００、１０１、１０７を管理するための機能を提供し、通常は管理ネットワークに接続されている。
【００２２】
物理サーバ１０７はサーバ仮想化機構１０６を有し、サーバ仮想化機構１０６上で仮想サーバ１０２、１０３が構築されている。サーバ仮想化機構１０６は、仮想サーバ１０２、１０３に対する各種情報収集や設定を行っている。また、サーバ仮想化機構１０６は、仮想サーバ１０２、１０３を提供するために、サーバを構成するＩ／ＯインタフェースやＣＰＵなどを仮想化している。さらに、サーバ仮想化機構１０６は、Ｉ／Ｏインタフェースを仮想化せずに物理Ｉ／Ｏインタフェースにダイレクトにマップする機構（以下、ダイレクトマップ機構という）を有している。
【００２３】
ネットワークスイッチ装置１２０は、物理アドレスの仮想化に必要な仮想化経路制御機構１２１と、障害に対応するための障害検出機構１２４と、状態管理部１２６と、機器内のネットワークポートなどの資源に対する設定を管理する設定管理機構１２３とを備えている。また、ネットワークスイッチ装置１２０は複数のポート（図示せず）を備え、ポートを介して物理サーバ１００、１０１、１０７と、後述する管理サーバ１３０と接続している。設定管理機構１２３は、複数のポートに対する一括状態設定を実現する状態設定処理１５３を有する。状態管理部１２６は、ネットワークスイッチ装置１２０が管理するポートなどの資源に対する状態を保持する状態テーブル１２７と、一括設定をするために設定情報を保持する設定状態１２８とを有する。
【００２４】
管理サーバ１３０は、移送機構１３１とサーバ管理部１３４とを備えている。管理サーバ１３０は、物理サーバ１００、１０１、１０７上のＳＶＰ１０４、１０５、１０８に対し、管理ネットワークを経由して物理サーバ１００、１０１、１０７や仮想サーバ１０２、１０３の電源ＯＮ／ＯＦＦや各種情報の取得、又は各種設定を行っている。移送機構１３１は、機器状態表１３５と移送後機器状態１３６とを有している。サーバ管理部１３４は、サーバ管理テーブル１３７を有している。
【００２５】
図２は、図１に示した状態テーブル１２７の構成を説明する図である。状態テーブル１２７はネットワークスイッチ装置１２０の状態を表すものであり、ネットワークスイッチ装置１２０のポートなどの各資源の状態が記録されている。図２はサーバ移送前の状態を示している。状態テーブル１２７は、ネットワークスイッチ装置１２０の状態が変更したときに、設定管理機構１２３によって最新の状態に更新されている。状態はポートごとに管理されており、ポートの有効性を示す有効性フラグ２０１と属性とを有している。ポートはポート番号２００により識別され、状態テーブル１２７の最初の項目に記録されている。有効性フラグ２０１は有効、無効、障害の各状態を記録するものである。「有」は有効を意味し、正常にポートがリンクアップしている状態を表している。「無」は無効を意味し、設定により機能を停止した状態を表している。「障害」は障害により機能を停止し、有効にすることが不可能な状態を表している。障害としては、例えば、受信したパケットのエラーであるフレームチェックエラーや、許されないＶＬＡＮ（Ｖｉｒｔｕａｌ  ＬＡＮ）のＩＤが指定された場合の無効なＶＬＡＮ−ＩＤエラー、属性が異なるポートを集約したときの集約エラーなどがある。属性として、ＶＬＡＮ−ＩＤ２０２、フレーム長２０３、通信速度２０４、集約設定の情報の有無を示す集約２０５、セキュリティ設定の有無を示すセキュリティ２０６、及びＱｏＳ２０７を有している。例えば、図２の最初のレコードでは、ポート番号２００が「Ｐ１」のポートの状態が記録されており、「ポート番号Ｐ１は有効であり、ＶＬＡＮ−ＩＤとして１００が設定されており、フレーム長は通常の長さで、通信速度は１Ｇb/s、リンクの集約はしておらず、セキュリティの設定もしていない」ということを表している。
【００２６】
図３は、図１に示した設定状態の構成を説明する図である。設定状態１２８は、移送後のネットワークスイッチ装置１２０の状態がポートごとに記録されている。また、設定状態１２８は、管理サーバ１３０によって、サーバ移送時に管理ネットワークを経由して記録される。設定状態１２８の項目には各ポートの状態が記録され、最初の項目であるポート番号３００に続く各項目３０１〜３０９は、状態テーブル１２７と同じ項目である。
【００２７】
図４は、図１に示したサーバ管理テーブルの構成を説明する図である。サーバ管理テーブル１３７は、各物理サーバ１００、１０１、１０７の構成情報が記録されている。各物理サーバ１００、１０１、１０７は一意の識別子によって特定されており、各物理サーバ１００、１０１、１０７の構成を特徴付ける項目として、物理サーバか仮想サーバかを示すサーバ種別４０１、管理ＩＰアドレス４０２、プロセッサ情報４０３、及びメモリ情報４０４と、Ｉ／Ｏ情報として仮想化フラグ４０５、Ｉ／Ｏ識別子４０６、及びＩ／Ｏインタフェースの接続ポートのポートアドレス４０７と、接続先情報として、装置識別子４０８及びポート番号４０９と、から構成されている。Ｉ／Ｏ情報は、各物理サーバ１００、１０１、１０７及び各仮想サーバ１０２、１０３が有するＩ／Ｏインタフェースの情報が記録され、仮想化フラグ４０５、Ｉ／Ｏ識別子４０６、ポートアドレス４０７の各項目を有してる。Ｉ／Ｏ識別子４０６はＩ／Ｏインタフェースを特定する識別子で、Ｉ／Ｏ識別子４０６からＩ／Ｏの種別（ネットワークインタフェースか、ファイバチャネルのホストバスアダプタかなど）や提供ベンダや型番が特定できる。仮想サーバ１０２、１０３の場合は、仮想サーバ１０２、１０３に接続するＩ／Ｏインタフェースとして仮想インタフェースか物理インタフェースのいずれかを接続できるので、その違いが仮想化フラグ４０５に記録されている。接続先情報は、各物理サーバ１００、１０１、１０７及び各仮想サーバ１０２、１０３のＩ／Ｏインタフェースが接続するネットワークスイッチの情報が記録されている。接続するネットワークスイッチは装置識別子４０８により特定され、装置識別子４０８から装置の種別（ネットワークスイッチかファイバチャネルスイッチかなど）や提供ベンダや型番が特定可能である。ポート番号４０９には、Ｉ／Ｏインタフェースに接続するスイッチ側のポート番号が記録されている。例えば、図４の最初のレコードでは、「物理サーバ１００は２つのＮＩＣを有し、それぞれの識別子はＮＩＣ０-０、ＮＩＣ１-０で、各ポートの物理アドレスはＲＡ１、ＲＡ２であり、物理サーバ１００が接続しているネットワークスイッチ装置１２０のポート番号はそれぞれＰ１、Ｐ２である」ということを表している。なお、サーバ管理テーブル１３７は、物理的な構成や仮想的な構成が変化した場合に、システム管理者によって手動で更新されるか、又は、構成の変更を自動的に取得して更新する。
【００２８】
図５は、図１に示した機器状態表の構成を説明する図である。機器状態表１３５は、ネットワークスイッチごとに作成されるものである。本実施形態では、ネットワークスイッチがネットワークスイッチ装置１２０（ＳＷ０）だけなので、ネットワークスイッチ装置１２０（ＳＷ０）の情報のみが記録されている。なお、最初の項目である機器識別子５００に続く各項目５０１〜５０８は、図２に示した状態テーブル１２７と同じ項目である。
【００２９】
図６は、図１に示した移送後機器状態の構成を説明する図である。移送後機器状態１３６は、サーバ移送後の機器内の各資源の設定状態が記録されている。本実施形態では、サーバ移送に先立ち、システム管理者がサーバシステム全体の運用方針に合わせて移送元サーバの状態についてのみ記録し、移送先のサーバの状態に関しては記録しない。例えば、ポート（Ｐ１、Ｐ２）に接続する物理サーバ１００からポート（Ｐ３、Ｐ４）に接続する物理サーバ１０７上の仮想サーバにサーバ移送を行う際の運用方針として、移送元の物理サーバ１００が接続するポート（Ｐ１、Ｐ２）のみを無効化する。このため、ポート番号６０１が「Ｐ１」及び「Ｐ２」のレコードの有効性フラグ６０２をそれぞれ「無」にし、ポート番号６０１が「Ｐ３」及び「Ｐ４」のレコードは空欄のままとする。図６は、移送機構１３１によって最終的に決定されたポート（Ｐ３、Ｐ４）の状態が記録されている。すなわち、ポート番号６０１が「Ｐ３」及び「Ｐ４」のレコードはポート（Ｐ３、Ｐ４）にポート（Ｐ１、Ｐ２）のもともとの設定である図２に示した状態テーブル１２７の情報を引き継いだものとなっている。例えば、ポート番号６０１が「Ｐ３」及び「Ｐ４」のレコードは、有効性フラグ６０２が有効を示す「有」で、ＶＬＡＮ属性のＶＬＡＮ−ＩＤ６０３が「１００」、フレーム長６０４は「通常」、速度６０５は「１ＧＢ／ｓ」、集約６０６は「なし」、セキュリティ６０７は「なし」、ＱｏＳ６０８の値は「１０」になっている。図３と比較すると、有効性フラグ６０２とＶＬＡＮ属性が変わっており、これらの項目が変更されることを意味する。なお、移送後機器状態１３６の各項目６００〜６０８は、機器状態表１３５と同じ項目である。
【００３０】
次に、図７乃至図１６を参照して、物理サーバから仮想サーバに実行環境を移送するサーバ移送の動作について説明する。
【００３１】
図７は、第１実施形態におけるサーバ移送に係るサーバシステムの構成を説明する概略構成図である。本実施形態では、図７に示すように物理サーバ１００の実行基盤を物理サーバ１０７上の仮想サーバ１０２に移送する。物理サーバ１００が有するＮＩＣ１１０は、ネットワークスイッチ装置１２０のポート１４０（Ｐ１）、ＮＩＣ１１１はポート１４１（Ｐ２）に接続されている。物理サーバ１０７のＮＩＣ１１４〜１１６はそれぞれネットワークスイッチ装置１２０のポート１４２〜１４４（Ｐ３〜Ｐ５）に接続されている。
【００３２】
サーバ移送処理は、管理サーバ１３０につながれたコンソールや、管理ネットワークを経由してネットワーク接続した管理サーバ１３０から、システム管理者によって指示されることで開始する。サーバ移送処理は、管理サーバ１３０上のプログラムが管理ネットワークを介してネットワークスイッチ装置１２０、移送元の物理サーバ１００、及び移送先の物理サーバ１０７が備えるサーバ仮想化機構１０６と通信しながら実行される。移送先の仮想サーバ１０２の構成に対する設定は、移送元の物理サーバ１００と移送先の仮想サーバ１０２の各資源、すなわち、ＣＰＵ数、搭載メモリ量、Ｉ／Ｏインタフェースの種類などが適合するように、サーバ移送処理に先立ち、システム管理者によって行われている。本実施形態では、移送先の仮想サーバ１０２を構築するために、システム管理者は、管理ネットワーク経由でサーバ仮想化機構１０６の制御画面からサーバ仮想化機構１０６が各物理資源から作り出した仮想資源を移送先の仮想サーバ１０２に対して割り付ける。具体的には、システム管理者は、ＮＩＣに関して移送元の物理サーバ１００が有するＮＩＣ１１０、１１０の数以上に空きＮＩＣがあることを確認し、サーバ仮想化機構１０６が有するダイレクトマップ機能を利用して物理ＮＩＣ１１４、１１５（ＮＩＣ０、ＮＩＣ１）をそのまま割り付ける。ＣＰＵやメモリなどのそのほかの資源に関しても、移送元の物理サーバ１００と同様な構成をとるようにする。次に、システム管理者は、移送元の物理サーバ１００と移送先の仮想サーバ１０２とを指定して、移送機構１３１にサーバ移送処理の開始を指示する。
【００３３】
図８は、第１実施形態におけるサーバ移送処理を説明するフローチャートである。移送機構１３１は、サーバ移送処理を開始すると、サーバ管理テーブル１３７を検索して設定が必要な機器のリストを取得し、ネットワークスイッチを特定する（Ｓ８０１）。具体的には、指定された移送元の物理サーバ１００をキーとして、管理サーバ１３０のサーバ管理部１３４が有するサーバ管理テーブル１３７を検索する。サーバ管理テーブル１３７のサーバ識別子４００の項目を検索して物理サーバ１００の情報が記録されるレコードを見つけ出し、当該レコードにおける接続先情報の装置識別子４０８「ＳＷ０」を取得する。これにより、移送元の物理サーバ１００に関与するネットワークスイッチがネットワークスイッチ装置１２０であることが特定される。移送先の仮想サーバ１０２についても同様の処理を行い、関与する装置がネットワークスイッチ装置１２０であることを特定する。
【００３４】
次に、移送機構１３１は、Ｓ８０１で特定したネットワークスイッチ装置１２０に管理ネットワークを介して問い合わせを送信し、移送元の物理サーバ１００が接続するポート１４１、１４２（Ｐ１、Ｐ２）と、移送先の仮想サーバ１０２が接続するポート１４２、１４３（Ｐ３、Ｐ４）とに関する現在の内部状態を取得して機器状態表１３５に記録する（Ｓ８０２）。
【００３５】
次に、移送機構１３１は、機器状態表１３５に基づいて移送先の仮想サーバ１０２に移送可能かどうかを判定する（Ｓ８０３）。移送可能かどうかは有効性フラグ５０２に基づいて判定する。例えば、移送先の仮想サーバ１０２が接続するポート１４２である、ポート番号５０１が「Ｐ３」の有効性フラグ５０２の状態が障害となっている場合は、ポート１４２（Ｐ３）が障害なので移送不能と判定する。移送不能な場合は移送処理を終了する。
【００３６】
Ｓ８０１〜Ｓ８０３の処理で、サーバ移送の設定に必要な資源が特定されたので、移送機構１３１は、移送先の仮想サーバ１０２に関連する資源について移送後の状態を抽出し、移送後機器状態１３６に記録する(Ｓ８０４)。例えば、Ｓ８０２で記録した機器状態表１３５から、移送元の物理サーバ１００が接続するポート１４０、１４１である、ポート番号５０１が「Ｐ１」及び「Ｐ２」の属性をコピーし、これを移送後機器状態１３６のポート番号６０１が「Ｐ３」及び「Ｐ４」の属性に関する状態として記録する。
【００３７】
次に、移送機構１３１は、管理ネットワークを介して移送元の物理サーバ１００が有する情報を取得し、取得完了後、移送元の物理サーバ１００を停止する。（Ｓ８０５）。例えば、移送元の物理サーバ１００の起動用ディスクイメージやデータ用ディスクイメージなど、移送後に必要なディスクイメージが移送元の物理サーバが有する内蔵ディスクに格納されている場合、前記ディスクイメージを移送元サーバの情報として管理サーバ１３０にコピーする。コピー完了後、移送元の物理サーバ１００を停止する。
【００３８】
次に、移送機構１３１は、Ｓ８０５の処理において障害が発生したかどうかを判定し（Ｓ８０６）、障害が発生した場合はエラーを記録し（Ｓ８１１）、Ｓ８１２の処理に移る。移送元の物理サーバ１００の状態は、移送元の物理サーバ１００上で動作するエージェント（図示せず）から取得しており、移送元の物理サーバ１００が有する内蔵ディスクの情報は、新たなエージェントをネットワークブートによって起動して取得している。このとき、エージェントの障害により情報が取得できない、新たなエージェントのネットワークブートに失敗した、ネットワークブートに必要な物理サーバ１００の再起動に失敗した、エージェントが内蔵ディスクのマウントに失敗したなどの理由で障害が発生することがある。
【００３９】
Ｓ８０６の判定の結果、障害が発生しなかった場合、移送機構１３１は、ネットワークスイッチについて、関連するネットワークスイッチ装置１２０内の資源に対し、移送後の状態を一括設定する（Ｓ８０８）。具体的には、移送機構１３１が移送後機器状態１３６を指定し、管理ネットワークを経由してネットワークスイッチ装置１２０の設定管理機構１２３が有する後述の状態設定処理１５３を呼び出す。
【００４０】
次に、移送機構１３１は、Ｓ８０８の処理において障害が発生したかどうかを判定し（Ｓ８０９）、障害が発生した場合はエラーを記録し（Ｓ８１１）、Ｓ８１２の処理に移る。Ｓ８１１の処理で記録するエラーとしては、設定するポートの通信パケットのチェックサム検査で異常が発生したことによるエラー、設定するポートの結線がなされていないことに起因するエラー、設定するための管理ネットワークの障害に起因するエラーなどがある。
【００４１】
Ｓ８０８の判定の結果、障害が発生しなかった場合、移送機構１３１は、移送先の仮想サーバ１０２の起動準備を行う（Ｓ８１０）。起動準備としては、例えば移送元の物理サーバ１００の内蔵ディスクに起動イメージやデータがあった場合に、起動イメージやデータを業務ネットワーク経由で移送先の仮想サーバ１０２にコピーする。
【００４２】
次に、移送機構１３１は、エラーの記録に基づいてエラーが有るかどうかを判定する（Ｓ８１２）。機器設定が正常に終了してエラーがなかった場合、移送機構１３１は、管理ネットワーク経由でサーバ仮想化機構１０６に対してサーバ起動のコマンドを送って移送先の仮想サーバ１０２を起動し（Ｓ８１４）、移送処理を終了する。
【００４３】
Ｓ８１２の判定の結果、機器設定が正常に終了せずエラーがあった場合、移送機構１３１は回復処理を行う（Ｓ８１３）。回復処理は、管理サーバ１３０に接続した管理コンソールから管理ネットワークを経由して関連する各機器と通信しながら、システム管理者によって状況に応じてしかるべき処理が行われる。エラーの状態にかかわらず一般的に行われる処理として、次のような項目がある。
【００４４】
（１）エラー状態の取得
エラーの状態と各機器の状態を取得する。移送機構１３１が行う移送処理の途中でエラーを検出して停止した場合は、停止した処理に応じたエラー番号が記録されている。これにより、どの処理にてエラーが発生したかを把握できる。
【００４５】
（２）機器状態の取得
サーバ管理テーブル１３７を参照し、関連する機器、移送元の物理サーバ１００、移送先の仮想サーバ１０２、ネットワークスイッチ装置１２０を特定し、さらに、各機器に管理ネットワーク経由で所定のコマンドを発行して状態を取得し、各機器で利用している資源の状態を得る。
【００４６】
（３）障害の原因の特定
（１）、（２）で得られた情報より、障害の原因を特定する。各機器のハードウェアの障害なのか、サーバ移送処理を実行する処理の誤りなのか、各機器に対する設定の誤りであるのか、サーバ移送処理を行う際に与えるべきパラメータの誤りであるかなど、ハードウェア、ソフトウェア、設定情報、操作の観点から、原因を特定する。
【００４７】
（４）回復後の状態の抽出
特定した原因により、移送前の運用状態に回復可能かどうかを見極め、可能であれば、移送前の状態で再度運用を開始する。そうでない場合は、状況に応じて判断する。
【００４８】
図９は、図７に示した状態設定処理を説明するフローチャートである。設定管理機構１２３は、状態設定処理１５３を開始すると、他の状態設定要求がある場合、当該要求が完了するまで処理を待つ(Ｓ９０１)。
【００４９】
次に、設定管理機構１２３は、移送機構１３１が指定した移送後機器状態１３６を取得して設定状態１２８を作成する（Ｓ９０２）。設定管理機構１２３は、作成した設定状態１２８と状態テーブル１２７とを比較し、設定が異なっている項目を抽出し、抽出した項目に関して状態テーブル１２７の設定を設定状態１２８の設定に変更する（Ｓ９０３）。このように、状態設定処理のときに、管理サーバ１３０によって移送後機器状態１３６が指定され、移送後機器状態１３６に基づく設定情報１２８と状態テーブル１２７とを比較して設定が異なっている項目が設定状態１２８の設定に変更されるので、移送元の物理サーバ１００及び移送先の仮想サーバ１０２を接続するネットワークスイッチ装置１２０に関する設定を一括して変更することができる。
本実施形態では、図３に示した設定状態１２８と、図２に示した状態テーブル１２７とを比較し、ポート番号が「Ｐ１」及び「Ｐ２」に関して有効性フラグが異なっているので、ポート番号２００が「Ｐ１」及び「Ｐ２」の有効性フラグ２０１の「有」を、ポート番号３００が「Ｐ１」及び「Ｐ２」の有効性フラグ３０１の設定である「無」にする。ポート番号が「Ｐ３」及び「Ｐ４」に関しては、有効性フラグの他に、属性のＶＬＡＮ−ＩＤが異なっているので、ポート番号２００が「Ｐ３」及び「Ｐ４」の有効性フラグ２０１の「無」を、ポート番号３００が「Ｐ３」及び「Ｐ４」の有効性フラグ３０１の「有」にし、ポート番号２００が「Ｐ３」及び「Ｐ４」のＶＬＡＮ−ＩＤ２０２の「Ｄｅｆ」を、ポート番号３００が「Ｐ３」及び「Ｐ４」のＶＬＡＮ−ＩＤ３０２の「１００」にする。ここで、「Ｄｅｆ」はデフォルトＶＬＡＮを意味する。
【００５０】
次に、設定管理機構１２３は、Ｓ９０３の処理においてエラーが発生したかどうかを判定し（Ｓ９０４）、エラーが発生していない場合はそのまま状態設定処理１５３を終了し、エラーが発生した場合はエラーを報告して状態設定処理１５３を終了する。
【００５１】
このように、本実施形態によれば、状態設定処理のときに、管理サーバ１３０によって移送後機器状態１３６が指定され、移送後機器状態１３６に基づく設定情報１２８と状態テーブル１２７とを比較して設定が異なっている項目が設定状態１２８の設定に変更されるので、移送元の物理サーバ１００及び移送先の仮想サーバ１０２を接続するネットワークスイッチ装置１２０に関する設定を一括して変更することができる。これにより、従来のように、移送元サーバ用と移送先サーバ用という複数の設定が不要となり、サーバ移送において複数の設定が必須となる、移送元の物理サーバ１００及び移送先の仮想サーバ１０２を接続するネットワークスイッチ装置１２０の設定が一度の処理で完了することができ、容易にサーバ移送を行うことができる。
【００５２】
次に、図１０乃至図１６を参照して本発明の第２実施形態について説明する。まず、図１０乃至図１３を参照して第２実施形態の構成について説明する。なお、前述した第１実施形態と同一構成部分及び同一動作部分は同一符号をもって表し、その詳細な説明を省略する。
【００５３】
第２実施形態と第１実施形態との相違点は２つある。ひとつは、仮想サーバのネットワークインタフェースが結果的に直接物理ＮＩＣにマップされない点である。もうひとつは、仮想サーバ構築のタイミングである。第１実施形態においては、移送先の仮想サーバ１０２は、移送機構１３１が実行するサーバ移送処理に先立って、システム管理者などによって予め構築されていた。これに対し、本実施形態においては移送先サーバに要求する仕様のみを指定し、移送機構１３１が実行するサーバ移送処理の中で移送先の仮想サーバを構築する。サーバ移送処理における仮想サーバの構築は２段階に分けられる。第１段階は仮想サーバ構築に必要な資源を予約する段階であり、このとき仮想サーバの構築可能性が判定される。第２段階は物理資源から仮想資源を作成し、仮想資源を割り当てて仮想サーバを構築する。従って、移送先サーバに関連する移送後機器状態１３６も、第１実施形態と異なり、予め設定されていない。サーバ移送処理中に移送先の仮想サーバを構築するために、移送元サーバの構成を基にして、管理者が移送先サーバの構成に対する要求を管理サーバ１３０が有する後述の予約表１００４に予め記述しておく。
【００５４】
図１０は、第２実施形態におけるサーバ移送に係るサーバシステムの構成を説明する概略構成図である。本実施形態では、図１０に示すように、物理サーバ１０１の実行基盤を物理サーバ１０７上の仮想サーバ１０３に移送する。同図は第２段階が完了して実際に物理資源が割り付けられた後の構成を示している。
【００５５】
サーバ仮想化機構１０６は、予約機構１００３と、資源管理表１００２と、仮想ネットワークスイッチ１６０とを有している。予約機構１００３は、管理サーバ１３０からの要求により、仮想サーバ構築の第１段階を実行する予約処理と、第２段階として実際に資源を割り付ける資源割り付け処理と、予約を取り消す予約解除処理を実行する。資源管理表１００２は、仮想ネットワークスイッチ１６０の資源を含むサーバ仮想化機構１０６が管理する全ての資源の状態が記録されている表である。仮想ネットワークスイッチ１６０は、ネットワークスイッチ装置１２０と同様の設定を行っており、ネットワークスイッチ装置１２０と接続する仮想ポート１６５（ＶＰ３）と、仮想サーバ１０３に接続するための仮想ポート１６３、１６４（ＶＰ１、ＶＰ２）を有している。仮想ネットワークインタフェース（以下、ＶＮＩＣという）１６１、１６２は、サーバ仮想化機構１０６が実現する仮想ネットワークスイッチ１６０と、サーバ仮想化機構１０６が存在する物理サーバ１０７の物理ＮＩＣ１１６（ＮＩＣ２）を介してネットワークスイッチ装置１２０とに接続している。
【００５６】
具体的には、仮想サーバ１０３は２つのＶＮＩＣ１６１、１６２を有し、仮想ネットワークスイッチ１６０（ＶＳＷ）の仮想ポート１６３、１６４（ＶＰ１、ＶＰ２）とそれぞれ接続されている。ネットワークスイッチ装置１２０との接続は物理サーバ１０７の物理ＮＩＣ１１６（ＮＩＣ２）を介して接続されている。物理ＮＩＣ１１６は仮想化され、仮想ネットワークスイッチ１６０の仮想ポート１６５（ＶＰ３）にマップされている。
【００５７】
仮想ポート１６５（ＶＰ３）と物理ポート１４４（Ｐ５）はネットワークスイッチ間の接続であるため、各ネットワークスイッチで複数のＶＬＡＮが設定される可能性がある。そこで、両ポートのリンクは１つのポートに複数のＶＬＡＮを割り付ける構成、すなわち、タグＶＬＡＮ構成をとる。サーバ仮想化機構１０６は、このような構成の仮想ポート１６５（ＶＰ３）を物理サーバ１０７のＮＩＣ１１６（ＮＩＣ２）を用いて実現する。
【００５８】
管理サーバ１３０が有する予約表１００４は、管理サーバ１３０の移送機構１３１が実行するサーバ移送処理において、移送先の仮想サーバを構築するために、当該仮想サーバの構築に必要な資源が記録される表である。
【００５９】
スイッチ間設定ルール１３３は、移送元の物理サーバと移送先の仮想サーバとの間に複数のネットワークスイッチが介在する場合、両サーバが接続するポートでの設定が正しく機能するために必要なネットワークスイッチ間の設定が記録されている。例えば、ポートでＶＬＡＮ（ポートＶＬＡＮ）の設定を行った場合、ネットワークスイッチ間ではＶＬＡＮの設定をタグＶＬＡＮにて実現する必要がある。これを実現するためにＶＬＡＮの設定に関しては、ネットワークスイッチ間はタグＶＬＡＮを用いることをルール化して記録している。これにより、ネットワークスイッチ間の設定を個別に設定する必要がない。
【００６０】
図１１は、図１０に示した予約表の構成を説明する図である。予約表１００４は、割り付ける仮想サーバごとに図１１に示した表を有している。各レコードは、仮想サーバを構成する資源の仕様を記録している。予約表１００４は、資源ＩＤ１１０１、資源種別１１０２、型番１１０３、仕様１１０４、設定記述１１０５、選択優先度１１０６、及び可否２２０７から構成されている。
【００６１】
予約表１００４は、管理者によって予め用意される表であり、必要な資源に対して各項目１１０１〜１１０６が記録されている。ある資源種別１１０２に複数の候補がある場合は、選択優先度１１０６が同じ値を持つ複数の候補には、同じ型番、仕様、設定記述が入っていることが期待される。例えば、図１１に示すように、資源種別１１０２が「ＣＰＵ」に関しては、選択優先度が「５」の各レコード１１１１、１１１２の、型番１１０３、仕様１１０４、設定記述１１０５の内容は同じになっている。優先度が「３」、「１」の各レコード１１１３〜１１１６についても同様である。
【００６２】
資源ＩＤ１１０１は各資源の個別の識別子である。資源種別１１０２は指定する資源の種別が記録されている。例えば、図１１に示すように、ＣＰＵ、ＮＩＣ、ＳＣＳＩ(ＳＣＳＩアダプタ)、ＦＣ−ＨＢＡ（ファイバチャネルホストバスアダプタ）など、サーバを構成する機器の種類が記録されている。同じ機器の種類であっても、資源割り付け時の選択の都合上、異なる種別として分けたい場合は、本来の種別に「−番号」を付加して、別の種別を与える。例えば、図１１のハードディスク（ＨＤＤ）は、資源ＩＤ１１０１が「ＬＶ０」と「ＬＶ１」の各資源に別々の資源種別１１０２を割り付ける必要があるため、資源種別１１０２をそれぞれ「ＨＤＤ−１」、「ＨＤＤ−２」と別々の種類を記録している。
【００６３】
型番１１０３は、各機器の種別に対して、仕様が一意に決まるような型番が記録されている。例えばＮＩＣの場合、ベンダが異なれば提供するＮＩＣの型番が異なり、また、同じベンダが提供するＮＩＣであっても、ネットワークバンド幅などの仕様が異なれば型番が異なる。仕様１１０４は、型番１１０３に対応する仕様が記録されている。これは、型番１１０３だけで検索できない場合、この項目が要求する資源を検索する対象となる。例えば、資源ＩＤ１１０１が「ＣＰＵ０」の資源の場合、該当レコードが複数ある。すなわち、型番１１０３が「ＸＡ０００１」の仕様と、型番１１０３が「ＸＡ０００１Ｂ」の仕様と、型番指定はなく（この場合、図１１では型番１１０３の項目に「＊」が記録されている）仕様１１０４に「Ａ社製, ２ＧＨｚ＞」とのみ記録されている仕様が該当する。この中で、最後の仕様に関しては、仕様１１０４の内容は、必要な仕様が「Ａ社製のＣＰＵでスピードが２ＧＨｚ以上」であることを表している。型番１１０３が指定されている場合は、型番１１０３から仕様は明らかなので、仕様１１０４は型番１１０３を補う情報としての意味しかない。
【００６４】
設定記述１１０５は、個々の機器に対して行う設定が記録されている。個々の設定と設定に対する優先度とをセパレータで区切って並べている。図１１では、優先度を括弧内に表し、セパレータを「：」で表している。複数の設定に同一の優先度を与えたい場合は、複数設定を「，」で区切り、最後に優先度を付加する。優先度は３段階あり、「高」は設定記述１１０５に記録した設定に必ず従わなければならないことを意味する。「中」は設定記述１１０５に記録した設定に従うことが好ましいことを意味し、「低」は必ずしも設定記述１１０５に記録した設定に従う必要はないことを意味する。実際には、設定ごとに意味が厳密に定まっている。例えば、図１１における最初のレコードの資源ＩＤ１１０１が「ＣＰＵ０」の場合、設定記述１１０５は、「ＣＰＵは占有割り付けをし、ハイパースレッド機能(ＨＴ)はＯｆｆの設定とし、それぞれの優先度は『高』である」ことを表している。
【００６５】
選択優先度１１０６は、要求する資源の候補が複数ある場合の優先度が記録されている。優先度は適当な正数を割り当てて、数の大きい方が優先度が高いことを意味する。可否１１０７は、サーバ仮想化機構１０６が仮想サーバ構築の予約処理中に資源が割り付け可能であるかどうか判定した結果が記録されている。判定結果としては、「Ｅ」（割り付け可能）、「Ｄ」（割り付け不可能、又は「Ｍ」（修正して割り付け可能）が記録される。
【００６６】
図１２は、図１０に示した資源管理表の構成を説明する図である。資源管理表１００２は、資源種別１２０１、設定可能項目１２０２、資源ＩＤ１２０３、仮実フラグ１２０４、型番１２０５、仕様１２０６、及び割り付け状況１２０７から構成されている。この中で、資源種別１２０１、型番１２０５、仕様１２０６に関しては、図１１に示した予約表１００４の項目と同じ項目である。
【００６７】
設定可能項目１２０２は、資源種別１２０１が示す資源に対して、設定可能な項目が記録されている。図１２では、例えば資源種別１２０１が「ＣＰＵ」について「占有／共有、ハイパースレッド機構（ＨＴ）のＯＮ／ＯＦＦなどが指定可能である」ことを意味し、資源種別１２０１が「ＮＩＣ」について「占有／共有、タグＶＬＡＮの設定が可能である」ことを表している。
【００６８】
資源ＩＤ１２０３は、資源管理表１００２で管理する各資源の識別子が記録されている。仮実フラグ１２０４は、各資源が仮想資源であるか物理資源であるかが記録されている。割り付け状況１２０７は、各レコードの資源の割り付け状況を示し、割り付け状態を示すフラグと、割り付けの詳細とを有している。割り付け状態フラグは３つの状態が記録され、それぞれ割り付け済、未割り付け、割り付け予約の状態に対応する。図１２では、「済」が割り付け済を、「未」が未割り付けを、「予」が割り付け予約の状態を意味している。割り付けの詳細は、実際に割り付けられている資源、すなわち、割り付け状態フラグが「済」の資源について、設定項目と、資源が仮想資源である場合は必要な物理資源とが記録されている。例えば、図１２の最初のレコードである資源ＩＤ１２０３が「ＶＣＰＵ０」については、「占有割り当ての設定がしてあり、必要な物理資源として、物理ＣＰＵ＝ＣＰＵ０が指定されている」ことを表している。
【００６９】
資源ＩＤ１２０３が「＊」となっているレコードは、まだ割り当てられていない仮想資源を意味し、割り付け状況の詳細には割り付け可能な資源の量が記録されている。例えば、図１２の資源種別１２０１が「ＣＰＵ」について、資源ＩＤ１２０３が「＊」に関する割り付けの詳細は、「割り付け可能な仮想ＣＰＵ数が１４である」ことを表している。カッコ内の数字は、予約されている資源の量を意味し、この場合は「１」である。実際に、資源ＩＤ１２０３が「ＶＣＰＵ４」は、資源種別１２０１が「ＣＰＵ」の中で唯一予約されている仮想資源である。
【００７０】
物理資源については、サーバ仮想化機構１０６が管理する全ての物理資源に関するレコードが存在する。例えば、資源種別１２０１が「ＣＰＵ」について、資源ＩＤ１２０３が「ＣＰＵ０」から「ＣＰＵ３」までが、仮実フラグ１２０４が「物理」である物理ＣＰＵを記録するレコードであり、サーバ仮想化機構１０６が利用可能な物理ＣＰＵの全てである。
【００７１】
次に、図１３乃至図１６を参照して、物理サーバから仮想サーバに実行環境を移送するサーバ移送の動作について説明する。
【００７２】
本実施形態において、移送機構１３１が実行するサーバ移送処理は、第１実施形態において図８に示したサーバ移送処理と基本的に同じである。主な違いは、仮想サーバ構築の第1段階にて、移送先サーバ１０３の構成を予約し移送中に仮想サーバを構築するため、移送開始時にはサーバ管理テーブル１３７に移送先サーバの構成が登録されていない点と、移送元サーバと移送先のサーバ間を複数のネットワークスイッチが関与する点である。また、移送先サーバの構成を設定するために、移送機構１３１を呼び出すときに、予約表１００４を指定する点も、実施例１と異なる。以下、この違いを中心に説明する。
【００７３】
図１３は、第２実施形態におけるサーバ移送処理を説明するフローチャートである。予め作成してある予約表１００４が指定されて、移送機構１３１は移送処理を実行する。Ｓ８０１で、移送に関連する機器の情報を取得する際にサーバ管理テーブル１３７を検索してネットワークスイッチを特定する。本実施形態では、移送先の仮想サーバ１０３に関しては、サーバ構成を行っていないため、エントリが存在しない。従って、ここではネットワークスイッチ装置１２０（ＳＷ０）のみ機器のリストに加える。図４に示したサーバ管理テーブル１３７の詳細には、最終的に資源割り付けが完了した時点での内容が記録されている。
【００７４】
Ｓ８０２で接続ポートの現在の状態を取得して機器状態表１３５に記録する。本実施形態では、ネットワークスイッチ装置１２０（ＳＷ０）に関して、移送元の物理サーバ１０１が接続するポート１４５、１４７（Ｐ６、Ｐ７）の情報と、移送先の仮想サーバ１０３が動作する物理サーバ１０７が接続するポート１４２、１４３、１４４（Ｐ３、Ｐ４、Ｐ５）の情報を記録する。記録した情報は図５に示したとおりである。現時点で、移送元の物理サーバ１０１が接続するネットワークスイッチ装置１２０（ＳＷ０）のポート１４５、１４６（Ｐ６、Ｐ７）は有効であり、ＶＬＡＮ−ＩＤ＝１１０のＶＬＡＮが設定されていて、フレーム長はジャンボフレーム対応、速度は１ＧＢ／ｓなどとなっている。移送先の物理サーバ１０７が接続するポート１４４（Ｐ５）は無効となっている。
【００７５】
Ｓ８０３でポートなどの状態を判定し、移送可能であると判断すると、Ｓ８０４で機器状態表１３５から、移送先の仮想サーバ１０３に関連する資源について移送後の状態を抽出して移送後機器状態１３６に記録する。本実施形態では、移送元の物理サーバ１０１が接続するネットワークスイッチ装置１２０（ＳＷ０）のポート１４５、１４６（Ｐ６、Ｐ７）の設定そのものを抽出すればよい。すなわち、ポートＰ６、Ｐ７は有効であり、ＶＬＡＮ−ＩＤ＝１１０のＶＬＡＮが設定されていて、フレーム長はジャンボフレーム対応、速度は１ＧＢ／ｓなどとなる。次に、Ｓ８０５で移送元の物理サーバ１０１が有する情報 (サーバ内蔵ディスクの内容など)を取得後、移送元の物理サーバ１０１を停止する。
【００７６】
次に、移送機構１３１は、第１実施形態の移送処理におけるＳ８０５及びＳ８１１に代えて、Ｓ１３０１〜Ｓ１３０７の処理を行う。
【００７７】
すなわち、移送機構１３１は、移送先のサーバ仮想化機構１０６に対して、移送先となる仮想サーバを構築するために、移送機構１３１は予約表１００４を用いて予約機構１００３中の後述する予約処理を呼び出す（Ｓ１３０１）。予約処理は、予約表１００４に指定された構成のサーバを割り付け、結果を返す。結果には、割り付けた仮想サーバを示すＩＤとともに、予約表１００４に指定された資源ごとに、予約の失敗、成功、変更とその理由が含まれる。仮想サーバのＩＤは、各資源に関して割り付け失敗が含まれていないときだけ意味のある値が返る。例えば、図１１に示した予約表１００４に対して、物理ＣＰＵが不足していたため、仮想ＣＰＵ（共有ＣＰＵ）が割り付けられた場合、資源種別１１０２が「ＣＰＵ」の可否１１０７のフラグは、レコード１１１１、１１１２、１１１４，１１１６は「Ｄ」（割り付け不可能）、レコード１１１３、１１１５は「Ｅ」（割り付け可能）となる。資源種別１１０２が「ＮＩＣ」に関しては、物理ＮＩＣの数が不十分であるため、資源ＩＤ１１０１が「ＮＩＣ０」、「ＮＩＣ１」ともに可否１１０７のフラグは「Ｍ」（変更して割り付け可能）で、設定記述１１０５の「占有」から「共有」に書き換えられる。
【００７８】
次に、移送機構１３１は、Ｓ１３０１での予約処理呼び出しの結果に基づいて予約が成功したかどうかを判定し（Ｓ１３０２）、予約が失敗した場合は移送処理を終了する。予約処理が成功した場合、移送機構１３１は、サーバ仮想化機構１０６に問い合わせを発行し、仮想ネットワークスイッチ１６０（ＶＳＷ）や物理サーバ１０７の物理ネットワークインタフェースカードなど関連する資源の情報を取得する（Ｓ１３０３）。得られる資源の情報は、サーバ仮想化機構１０６が管理する図１２に示した資源管理表１００２と同一の内容である。図１２で示す具体的な資源の情報は、仮想ネットワークスイッチ１６０（ＶＳＷ）に関しては、割り付け可能な空きポートの情報と、同ポートの状態、物理ネットワークインタフェースカードに関しては、故障中かどうかや設定状態、他の仮想サーバの状態などである。
【００７９】
Ｓ１３０３において取得した物理サーバ１０７の資源の状態に応じて、移送先サーバ用の設定の抽出を行う（Ｓ１３０４）。これはＳ１３０１での予約結果と資源の状態、サーバ管理テーブル１３７の状況から、移送後機器状態１３６を最終的に決定する。予約結果は、例えば、図１１の可否フラグ１１０７に示すように、ＳＣＳＩ、ＨＤＤに関しては要求どおりの資源の予約が完了している。ＣＰＵに関しては候補のうちのひとつが選択され、仮想ＣＰＵが予約されている。ＮＩＣに関しては、占有割り当て不可能で、仮想ＮＩＣが予約されている。
【００８０】
資源の情報は図１２に示した資源管理表１００２の情報がＳ１３０３において取得できる。ＣＰＵに関しては、ＶＣＰＵ４が予約されている。ＮＩＣに関してはＶＮＩＣ２、ＶＮＩＣ３が共有ＮＩＣとして予約されている。仮想ネットワークスイッチのポートに関しては、何も割り付けられておらず、最大６４ポートが割り付け可能であることを示している（図１２資源管理表の資源種別「ＰＴ」のレコードを参照）。
【００８１】
以上の情報を基に以下の手続きに従って、移送先サーバ用の構築用設定を抽出する。
（１）Ｓ１３０１で得た予約結果のＮＩＣに関する情報を参照し、割り付けたＮＩＣが仮想ＮＩＣであるか、物理ＮＩＣであるかを確認する。
（２）物理ＮＩＣである場合は、（１０）に進む。
（３）仮想ＮＩＣである場合は、仮想ネットワークスイッチ１６０との接続が必要となる。従って、資源の情報を参照し、割り付け可能な仮想ネットワークスイッチ１６０のポートを選ぶ。適当なポートがない場合は、結果を移送先サーバ構築不可能として終了する。
（４）仮想ネットワークスイッチ１６０とＳ８０１で取得したネットワークスイッチ装置１２０とを接続するために、サーバ管理テーブル１３７と資源の情報を参照し、ネットワークスイッチ装置１２０に接続する、利用可能な物理ＮＩＣを取得する。上記のような物理ＮＩＣが存在しない場合は、結果を移送先サーバ構築不可能として終了する。
（５）（４）で選んだ物理ＮＩＣを仮想化した仮想ポートを割り付けるため、仮想ネットワークスイッチ１６０のポートを選ぶ。適当なポートがない場合は、結果を移送先サーバ構築不可能として終了する。
（６）サーバ管理テーブル１３７を参照し、（４）で選んだ物理ＮＩＣが接続するネットワークスイッチ装置１２０の複数のポートを特定する。
（７）Ｓ８０４で抽出した移送後の状態を基にスイッチ間設定ルール１３３を参照し、（５）で選んだ仮想ネットワークスイッチ１６０のポートと、（６）で特定したネットワークスイッチ装置１２０のポートの設定を決める。
（８）以上まで決定した設定のうち、新たに必要な資源に関しては、予約機構１００３を呼び出し、予約を行う。予約が失敗した場合は、結果を移送先サーバ構築不能として終了する。
（９）以上までで決定した設定を移動後機器状態１３６に反映し、結果を移送先サーバ構築可能として終了する。
（１０）サーバ管理テーブル１３７を参照し、物理ＮＩＣに接続するネットワークスイッチ装置１２０のポートを決定する。
（１１）Ｓ８０４で抽出した移送後の状態を、（９）で決定したポートに対する設定内容とする。
（１２）以上までで決定した設定を移動後機器状態１３６に反映し、結果を移送先サーバ構築可能として終了する。
【００８２】
上記手続きは、本実施形態の具体例では以下のようになる。
【００８３】
（１）Ｓ１３０１で得た予約結果が図１１に示した予約表１００４の通りの場合、予約表１００４の可否１１０７へ割付可能性の記録と、修正があった場合は、型番１１０３、仕様１１０４、設定記述１１０５への修正として予約結果が返る。図１１の可否１１０７に予約結果として割り付け可能性を記録し、設定記述１１０５への修正は、設定記述１１０５の項目の矢印「→」の後に修正内容を記録する。資源種別１１０２が「ＮＩＣ」のレコード（資源ＩＤ１１０１が「ＮＩＣ０」、「ＮＩＣ１」のレコード）の可否１１０７は、「Ｍ」（修正して割り付け可能）となっており、この場合はもともとの予約表１００４と比較し、設定記述１１０５が「占有」から「共有」になっていることを確認する。これは、資源ＩＤ１１０１が「ＮＩＣ０」、「ＮＩＣ１」は仮想ＮＩＣであることを意味する。
（２）物理ＮＩＣでないため（３）に進む。
（３）資源の情報である図１２に示した資源管理表１００２の資源種別１２０１が「ＰＴ」、資源ＩＤ１２０３が「＊」のレコードを参照し、割り付け可能な仮想ネットワークスイッチ１６０の仮想ポート数が６４であることを確認し、この中から、２つの仮想ポートを割り付けることを決める。名称を「ＶＰ１」、「ＶＰ２」とする。
（４）図４に示したサーバ管理テーブル１３７を参照し、ネットワークスイッチ装置１２０（ＳＷ０）に接続する物理サーバ１０７上の物理ＮＩＣが、ＮＩＣ０、ＮＩＣ１、ＮＩＣ２であることが分かる。次に、資源の情報である図１２に示した資源管理表１００２を参照し、資源ＩＤ１２０３が「ＮＩＣ２」について、割り付け状況１２０７から未使用で割り付け可能であると判断する。
（５）（４）で選んだＮＩＣ２を仮想化した仮想ポートとして、仮想ネットワークスイッチ１６０のポートを選ぶため、資源の状態である図１２に示した資源管理表１００２の資源種別１２０１が「ＰＴ」のレコードを参照する。（３）で割り付けた以外に６２個の仮想ポートが未使用であることが分かるので、１つ割り付けることを決める。名称を「ＶＰ３」とする。
（６）図４に示したサーバ管理テーブル１３７を参照し、（４）で選んだＮＩＣ２が接続するネットワークスイッチ装置１２０（ＳＷ０）のポート番号４０９が「Ｐ５」であることを特定する。この時点で、仮想ネットワークスイッチ１６０（ＶＳＷ）と物理ネットワークスイッチ（ＳＷ０）を結合するリンクのポートが「ＶＰ３」「Ｐ５」であることが分かる。
（７）Ｓ８０４で図５に示した機器状態表１３５から抽出した移送後の設定は、「ポートＶＰ１、ＶＰ２は有効、ＶＬＡＮ−ＩＤ＝１１０のＶＬＡＮ設定、フレーム長はジャンボフレーム対応、速度は１ＧＢ／ｓ、集約なし、セキュリティなし、ＱｏＳ設定なし」となっている。スイッチ間設定ルール１３３を参照し、ＶＬＡＮ設定に関して、ＶＰ３とＰ５の間をＶＬＡＮ−ＩＤ＝１１０のタグＶＬＡＮ設定にすることにする。
（８）新たに追加する資源として、仮想ポート「ＶＰ１」「ＶＰ２」「ＶＰ３」を、予約機構１００３を呼び出して予約する。
（９）予約が成功した場合は、移送後機器状態１３６に、以下の内容を設定する。仮想ネットワークスイッチ１６０（ＶＳＷ）に関しては、仮想ポート「ＶＰ１」「ＶＰ２」の設定内容を、「ポートＶＰ１、ＶＰ２は有効、ＶＬＡＮ  ＩＤ＝１１０のＶＬＡＮ設定、フレーム長はジャンボフレーム対応、速度は１ＧＢ／ｓ、集約なし、セキュリティなし、ＱｏＳ設定なし」とする。「ＶＰ３」に関しては、設定内容を「ポートＶＰ３は有効、ＶＬＡＮ  ＩＤ＝１１０のタグＶＬＡＮ設定、フレーム長はジャンボフレーム対応、速度は１ＧＢ／ｓ、集約なし、セキュリティなし、ＱｏＳ設定なし」とする。「Ｐ５」についても「ＶＰ３」と同様の設定とする。設定が終了したら、結果を移送先サーバ設定可能として終了する。
【００８４】
図１４は図１０に示した移送後機器状態の構成を説明する図である。上記により定めた構成に基づき作成した移送後機器状態１３６は、上段が仮想ネットワークスイッチ１６０（ＶＳＷ）についての設定であり、下段がネットワークスイッチ装置１２０（ＳＷ０）に関しての設定である。移送元サーバが接続するネットワークスイッチ装置１２０（ＳＷ０）のポート１４５、１４６（Ｐ６、Ｐ７）は無効化され、移送先サーバがつながる仮想ネットワークスイッチ１６０（ＶＳＷ）の仮想ポート１６３、１６４（ＶＰ１、ＶＰ２）は、ポート１４５、１４６（Ｐ６、Ｐ７）の設定を引き継ぎ、ＶＬＡＮ−ＩＤの設定やジャンボフレームの設定がなされる。さらに、両ネットワークスイッチ間を結ぶリンクのポートである仮想ポート１６５（ＶＰ３）とポート（Ｐ５）に関しては、タグＶＬＡＮの設定とジャンボフレームの設定がなされる。図１４上段のポート番号１４０１が「ＶＰ３」のＶＬＡＮ−ＩＤ１４０３と、下段のポート番号５０１が「Ｐ５」のＶＬＡＮ−ＩＤ５０３に、「Ｔ１１０」とあるのはタグＶＬＡＮであり、ＶＬＡＮ−ＩＤが１１０であることを表す。
【００８５】
次に、移送機構１３１は、Ｓ１３０４での結果に基づいて移送先の仮想サーバが構築可能かどうかを判定し（Ｓ１３０５）、移送先サーバが構築可能でない場合は、予約機構１００３の予約解除処理を呼び出して予約を解除し（Ｓ１３０６）、回復処理Ｓ８１３を経てサーバ移送処理を終了する。
【００８６】
移送先の仮想サーバが構築可能である場合は、移送機構１３１は、予約を確定するために予約機構１００３の予約確定処理を呼び出す（Ｓ１３０７）。本実施形態の例では、予約されていた仮想資源（ＶＣＰＵ４、ＶＮＩＣ２、ＶＮＩＣ３、ＶＰ１、ＶＰ２、ＶＰ３）の予約が確定し、割り付け済状態となる。
【００８７】
次に、移送機構１３１は、Ｓ８０８において移送後機器状態１３６を指定して設定管理機構１２３が有する状態設定処理１５３を呼び出し、割り付けた資源を含む各資源に対して一括設定する。以上までで、サーバ移送に必要な仮想サーバの割り付けと、必要な資源の設定は完了したので、移送機構１３１は、実施例１と同様に、Ｓ８１０において移送先サーバの起動準備を行った後、Ｓ８１２においてエラーが有るかどうか判定し、Ｓ８１４において移送先の仮想サーバ１０３を起動して移送処理を終了する。
【００８８】
次に、物理サーバ１０７上の予約機構１００３が提供する予約処理について説明する。予約処理は、図１１に示した予約表１００４が指定されて移送機構１３１から呼び出される処理で、予約表１００４に記載された資源を有する仮想サーバが構築可能であるかどうかを判断するとともに、これから構築する仮想サーバの仮想資源を予約する。ただし、仮想資源が実際に機能するために必要な物理資源の割り付けは行わない。例えば、図１１の予約表１００４の資源種別１１０２が「ＮＩＣ」は、設定記述１１０５が「占有」となっているため、物理的なＮＩＣを必要とするが、本時点では実際に物理ＮＩＣを割り付けることはしない。設定記述１１０５が「共有」となっている場合(占有指定がない場合)のように、物理資源を必要としない場合もある。
【００８９】
図１５は図１０に示した予約機構の動作を説明するフローチャートである。予約機構１００３は、はじめに管理サーバ１３０上で動作する移送機構１３１から予約表１００４を受信する（Ｓ１５０１）。次に、予約機構１００３は、予約表１００４の各レコードを順番に調べ、各レコードが示す資源が割り付け可能であるかどうかを判定する（Ｓ１５０２）。判定した結果、割り付け可能であれば可否１１０７の項目に「Ｅ」を記録し（Ｓ１５０３）、割り付け可能でなければ各レコードが示す資源に対する要求を修正して割り付け可能であるかどうかを判定する（Ｓ１５０４）。判定した結果、修正して割り付け可能であれば可否１１０７の項目に「Ｍ」を記録し（Ｓ１５０５）、修正して割り付け可能ではない、すなわち割り付け不能であればチェック可否１１０７の項目に「Ｄ」を記録する（Ｓ１５０６）。このように、予約機構１００３は、指定された予約表１００４に基づいて、サーバ移送処理中に移送先の仮想サーバ１０３を構築するために必要な物理サーバ１０７が有する資源が予約されるので、サーバ移送処理前に移送先の仮想サーバ１０３が構築されていない場合であってもサーバ移送を行うことができる。
【００９０】
Ｓ１５０２〜Ｓ１５０６の処理を詳細に説明すると、資源種別１１０２が同じレコードごとに以下の手順で行う。「−番号」によって本来同じ種別のものを異なる種別として分けた場合は、分けた種別も異なるものとして、別々に判定する。ただし、資源管理表１００２を検索する場合は、「−番号」を除いた、本来の種別よって検索する。
（Ｃ１）選択優先度１１０６に関して各レコードを並べ替え、割り付け判定の対象とする。
（Ｃ２）割り付け判定の対象から選択優先度１１０６が最も高い候補を選ぶ。ここで、同じ選択優先度をもつ複数のレコードが抽出される。それぞれのレコードの資源ＩＤ１１０１は異なっている。
（Ｃ３）（Ｃ２）にて選んだ候補に対して、サーバ仮想化機構１０６が管理する資源管理表１００２を参照し、同候補に合う資源が存在するかどうか判定する。
（Ｃ４）候補に合う資源が存在すれば、同候補に対して結果を「割り付け可能」とし、他に対象が残っていれば、この残っている対象に関しては結果を「割り付け不可能」として判定を終了する。候補に合う資源が存在しなければ、次に進む。
（Ｃ５）判定した候補を対象からはずす。
（Ｃ６）対象が残っていれば、（Ｃ２）に戻り割り付け判定を行う。
（Ｃ７）対象が残っていなければ、判定を終了する。
【００９１】
（Ｃ３）において、資源管理表１００２を用いて資源を検索する場合、図１１に示した予約表１００４に型番１１０３が記録されていれば、これを基に検索を行い、判定する。型番１１０３が「＊」、すなわち、どんな型番でも良い場合は、仕様１１０４を参照し、仕様１１０４にて指定されている項目をキーとして、資源管理表１００２を検索する。適当な資源が見つかった場合は、型番１１０３に見つけた資源の型番を入れ、結果を「修正して割り付け可能」とする。また、設定記述１１０５の各設定の優先度が「中」「低」の場合は、同設定を修正して資源割り付けが可能であれば、修正内容を設定記述１１０５に反映し、結果を「修正して割り付け可能」とする。
【００９２】
具体的に説明すると、図１１に示した予約表１００４で、資源種別１１０２が「ＣＰＵ」であるのは、レコード１１１１〜１１１６であり、資源種別１１０２が「ＣＰＵ」に関しては以下のようになる。
（Ｃ１）各レコード１１１１〜１１１６を選択優先度１１０６別に並び替え、レコード１１１１、レコード１１１２、レコード１１１３、レコード１１１５、レコード１１１４、レコード１１１６の順番に割り付け対象とする。
（Ｃ２）上記割り付け対象から最も高い選択優先度１１０６が「５」のものとして、レコード１１１１、レコード１１１２を選ぶ。
（Ｃ３）資源管理表１００２を参照し、レコード１１１１とレコード１１１２に対応する資源を検索する。
（Ｃ４）ここでは、物理ＣＰＵがひとつしか余っていないため、占有で割り付けることはできないため、レコード１１１１とレコード１１１２に対する可否１１０７を「Ｄ」（割り付け不可能）とする。
（Ｃ５）割り付け対象からレコード１１１１とレコード１１１２をはずす。
（Ｃ６）残りの割り付け対象はレコード１１１３、レコード１１１５、レコード１１１４、１１１６なので、（Ｃ２）へ戻る。
（Ｃ２）次に優先度の高いものとして、レコード１１１３とレコード１１１５を選ぶ。
（Ｃ３）資源管理表１００２を参照し、レコード１１１３とレコード１１１５に対応する資源を検索する。
（Ｃ４）レコード１１１３とレコード１１１５は設定記述に占有が指定されていないため、仮想ＣＰＵを割り付けられるので、レコード１１１３とレコード１１１５に対する可否１１０７を「Ｅ」（割り付け可能）とする。残りの割り付け対象であるレコード２２１４、レコード２２１６に対する可否１１０７を「Ｄ」（割り付け不可能）として終了する。
【００９３】
資源種別１１０２が「ＮＩＣ」の場合は、設定記述１１０５の設定が「占有」であるので、ＮＩＣの占有資源を資源ＩＤ１１０１が「ＮＩＣ０」と「ＮＩＣ１」とに割り付けようとするが、資源管理表１００２を見ると占有可能な空きの物理ＮＩＣが１つしかないため、いったん可否１１０７を「Ｄ」（割り付け不可能）とする。次に、設定記述１１０５の優先度は「中」となっているので、「占有」を「共有」に変えて仮想ＮＩＣを割り付けようとした場合は、割り付け可能であるため、可否１１０７を「Ｍ」（修正して割り付け可能）とし、設定記述１１０５を「占有」から「共有」へと変更する。
【００９４】
次に、予約機構１００３は、全ての資源種別１１０２について判定が終了したかどうかを判定し（Ｓ１５０７）、終了していなければＳ１５０２に戻る。終了していた場合は、予約機構１００３は、全ての資源種別１１０２が割付可能かどうか判定する（Ｓ１５０８）。判定の結果、要求された全ての資源種別１１０２に対して、可否１１０７に「Ｅ」（割り付け可能）または「Ｍ」（修正して割り付け可能）が記録されている場合、予約機構１００３は、各資源の予約を行い（Ｓ１５０９）、結果を反映した予約表１００４を移送機構１３１に返送し（Ｓ１５１０）、予約処理を終了する。可否１１０７に１つでも「Ｄ」（割り付け不可能）が記録されている場合は、予約はせずに予約表１００４を移送機構１３１に返送し（Ｓ１５１０）、予約処理を終了する。
【００９５】
図１６は移送後のネットワーク構成を説明する図である。図１６（ａ）に示すように、移送先の仮想サーバを構築するときに、物理サーバに既に仮想サーバが存在する場合、新規割り付けの仮想サーバと既存の仮想サーバが別々のＶＬＡＮを使用する可能性があるため、仮想ネットワークスイッチと物理ネットワークスイッチを結ぶリンクのＮＩＣとポートを、タグＶＬＡＮ設定とする。図１６（ｂ）に示すように、移送先の仮想サーバを構築するときに、物理サーバに他の仮想サーバが存在しない場合、仮想ネットワークスイッチと物理ネットワークスイッチを結ぶリンクのＮＩＣとポートを通常のＶＬＡＮ設定とすることが可能となる。図１６（ｃ）に示すように、移送先の仮想サーバを構築するときに、他の仮想サーバが存在せず、かつ、要求した数以上の利用可能な物理ＮＩＣがある場合は、移送先サーバのＮＩＣを占有モードとし、仮想ネットワークスイッチは不可視にすることが可能となる。
【００９６】
予約処理において、図１１に示した予約表１００４に従ってＮＩＣを予約するとき、利用可能な物理ＮＩＣが２つ存在した場合、図１６（ｃ）の割り付けが可能である。さらに、各ＮＩＣの状態を調べて、少なくともどちらかのＮＩＣに障害が発生していた場合は、設定を変え、他に仮想サーバが存在しない場合は、ネットワークを図１６（ｂ）の構成にすることが可能である。他に仮想サーバが存在する場合は図１６（ａ）の構成となる。
【００９７】
以上のように、予約処理時に、他の仮想サーバや各資源の障害状態を考慮して、上記のような判断を行って、より柔軟な構成を提示することが可能である。
【００９８】
このように、本実施形態によれば、移送元の物理サーバ１０１と移送先の仮想サーバ１０３との間にネットワークスイッチ装置１２０及び仮想ネットワークスイッチ１６０がある場合であっても、第１実施形態と同様の効果を得ることができる。
また、予約機構１００３によって、指定された予約表１００４に基づいて、サーバ移送処理中に移送先の仮想サーバ１０３を構築するために必要な物理サーバ１０７が有する資源が予約されるので、サーバ移送処理前に移送先の仮想サーバ１０３が構築されていない場合であってもサーバ移送を実行できる。これにより、サーバ移送前に移送先サーバを構築する必要がないから、例えば必要な資源が予約不能なときにはサーバ移行中に資源を解放したり、サーバ移行中に他の仮想サーバが存在しないときは必要な資源を占有したり、割り当て可能な物理インタフェースがあれば物理インタフェースを占有したり、逆に物理インタフェースがなければ仮想インタフェースを予約する等、サーバ移行中の資源の状態に応じて構成や設定を変えて仮想サーバを構築することができ、柔軟な環境でサーバ移送を行うことができる。
さらに、ネットワークスイッチ装置１２０と仮想ネットワークスイッチ１６０との間の設定情報が記録されたスイッチ間設定ルール１３３に基づいて、ネットワークスイッチ間の設定が正しく設定されるので、ネットワークスイッチ間の設定を個別に設定する必要がない。これにより、従来、設定が複雑で困難であったネットワークスイッチ間の設定を容易に行うことができ、移送元サーバと移送先サーバとの間に複数のネットワークスイッチがある場合でも、容易にサーバ移送を行うことができる。
【００９９】
次に、図１７乃至図２５を参照して本発明の第３実施形態について説明する。まず、図１７乃至図２０を参照して、第３実施形態の構成について説明する。なお、前述した第１実施形態と同一構成部分及び同一動作部分は同一符号をもって表し、その説明を省略する。
【０１００】
本実施形態では、移送元サーバの情報取得と移送先サーバへの情報設定にネットワークの仮想アドレスを用いた方法について説明する。移送元サーバの情報取得において取得する情報とは、移送元サーバ上のエージェントから、ネットワークインタフェースカードやファイバチャネルアダプタなどＩ／Ｏインタフェースの設定に関する情報と、サーバが内蔵ハードディスクを利用している場合、内蔵ディスク内のシステムパーティションとデータパーティションの内容をいう。移送先サーバへの情報設定とは、取得した設定情報や内蔵ディスクの内容に関して、設定情報については移送先サーバに対して再設定を、内蔵ディスクの内容については移送先サーバの持つ内蔵ハードディスク内にコピーをすることをいう。
【０１０１】
図１７は、第３実施形態におけるサーバ移送に係るサーバシステムの構成を説明する概略構成図である。本実施形態では、図１７に示すように、物理サーバ１００の実行基盤を物理サーバ１０１に移送する。物理サーバ１００は内蔵ディスク１７０１を備え、内蔵ディスク１７０１はオペレーティングシステムが起動するためのシステムパーティションとデータ等が入るデータパーティションとを有する。物理サーバ１００が複数の内蔵ディスクを備え、システムパーティションとデータパーティションとを異なる内蔵ディスクに有していてもよい。管理サーバ１３０の移送機構１３１からの指示によって、内蔵ディスク１７０１の情報を移送するために、移送中に、物理サーバ１００にはバックアップエージェント１７１１が、物理サーバ１０１にはリストアエージェント１７１２が動作する。ネットワークスイッチ装置１２０は、仮想化経路制御機構１２１と、仮想化経路制御機構１２１が利用する宛先テーブル１２２とを備え、仮想化経路制御機構１２１及び宛先テーブル１２２はネットワークアドレスを仮想化する。ブートサーバ１３９は、ブート機構１３２とブート管理テーブル１３８とを備え、ブート管理テーブル１３８とバックアップエージェント１７１１とリストアエージェント１７１２とを用いて、バックアップ処理及びリストア処理を行う。
【０１０２】
ブートサーバ１３９は、業務ネットワーク上に接続したサーバが保持する内蔵ディスクの内容を、バックアップ又はリストアする機能を有する。ブートサーバ１３９は、サーバが有するネットワークブート機能を利用して、バックアップ処理又はリストア処理用のエージェントを対象のサーバに送り込む。その後、送り込んだエージェントと連携して、業務ネットワーク経由で内蔵ディスクの内容を吸い上げてバックアップしたり、バックアップした内容を送り込んで内蔵ディスクをリストアしたりする。
【０１０３】
サーバが有するネットワークブート機能は、サーバの立ち上げ時に、ＮＩＣが接続するネットワーク上のブートサーバに予め指定したＮＩＣからブート要求を送る。このとき、ブート要求を送るサーバがブートサーバ１３９のＩＰアドレスを予め知らなくてもよいように、ブート要求はブロードキャストパケットとしてネットワークに送出される。ブート要求を受け取ったブートサーバ１３９は、要求を送ったサーバへＩＰアドレスなどＩＰネットワークとして機能するために必要な情報を送る。サーバは当該情報によりＩＰアドレスが割り当てられ、同ＩＰアドレスを用いてブートサーバ１３９と通信可能となる。その後、ＩＰアドレスを用いてブートサーバ１３９からブートイメージを受信し、受信完了後に当該ブートイメージを立ち上げる。これにより、ブートサーバ１３９が指定したブートイメージが規定するサービスを立ち上げることが可能となる。
【０１０４】
ブートサーバ１３９を利用したネットワークブートでのブートイメージや、バックアップ・リストアに伴うデータの移動は、業務ネットワークを介して行う。ブートサーバ１３９が管理対象のサーバに対して行うサーバの起動も業務ネットワークを経由して行う。これに対し、管理サーバ１３９がブートサーバ１３９を制御するための通信は管理ネットワークを介して行う。
【０１０５】
ブートサーバ１３９は、管理ネットワークを介した管理インタフェースを通してブート管理テーブル１３８のブート状態２００２を変更する。管理対象のサーバからのブート要求を受け、ブート機構１３２はブート状態に応じた処理を実行する。
【０１０６】
図１８は、図１７に示した宛先テーブルの構成を説明する図である。宛先テーブル１２２は、ポート番号１８０１、有効フラグ１８０２、仮想アドレス１８０３、物理アドレス１８０４、第１書き換えルール１８０５、第２書き換えルール１８０６、第３書き換えルール１８０７、及び第４書き換えルール１８０８から構成されている。なお、図１４には書き換えルールが４つのみ記載されているが、これに限定されず、４つ以上であってもよい。ポート番号１８０１は、仮想化されたネットワークアドレスを含むパケットが入力されるポートが記録される。すなわち、このポートに接続するネットワーク上に、同ネットワークアドレスを有する機器が接続している。有効フラグ１８０２は、アドレスの仮想化機能が有効であるか無効であるかが記録される。仮想アドレス１８０３は、仮想化したアドレスが記録される。物理アドレス１８０４は、仮想化する前の物理アドレスが記録される。第１書き換えルール１８０５〜第４書き換えルール１８０８には適用条件が記録される。パケットに適用可能な書き換えルールが複数ある場合は、すべてのルールを適用するわけではなく、第１書き換えルール１８０５から順番に適用可能なルールをパケットに適用する。仮想アドレス１８０３が異なっていれば、同じポート番号１８０１のレコードが存在してもよい。ただし、同じ物理アドレス１８０４を持つ複数のレコードに対して、異なる仮想アドレス１８０３を記録することはできない。
【０１０７】
図１９は、書き換えルールの構成を説明する図である。書き換えルールは、ルール番号１９０１、ルール適用条件１９０２、フラグ１９０３、書き換え位置１９０４、及び値１９０５を有する。各書き換えルールはルール番号１９０１によって識別する。ルール適用条件１９０２は、パケットの種類が記録される。例えば、「Ａｌｌ」はすべてのパケットに適用することを示し、「ＤＨＣＰ」はＰＸＥ（Ｐｒｅｂｏｏｔ  Ｅｘｅｃｕｔｉｏｎ  Ｅｎｖｉｒｏｎｍｅｎｔ）で規定されたネットワークブート用のパケットであることを表している。フラグ１９０３が「入力」のときは、パケットがポートに到着したときにルールを適用することを表している。フラグ１９０３が「出力」のときは、パケットをポートから送信するときにルールを適用することを表している。図１９に示すルール番号１９０１が「Ｒ１」については、ｅｔｈｅｒパケットの送信元アドレスを値１９０５の「ＲＡ１」に書き換えることを示す。ルール番号１９０１が「Ｒ２」は、ＤＨＣＰヘッダのクライアントアドレス（ブート要求を開始したサーバの物理アドレス）を値１９０５の「ＲＡ１」に書き換えることを表している。
【０１０８】
図２０は、図１７に示したブート管理テーブルの構成を説明する図である。ブート管理テーブル１３８は、物理アドレス２００１、ブート状態２００２、バックアップ場所２００３、及びＩＰアドレス２００４から構成されている。物理アドレス２００１は、管理対象であるサーバのＮＩＣの物理アドレスが記録され、ブートサーバ１３９は物理アドレス２００１によって管理対象のサーバを識別する。ブート状態２００２は、ブートサーバ１３９がブート要求を受理したときの動作が記録され、管理インタフェースを通して変更可能である。ブート要求を受理したときの動作として、例えばローカル起動、バックアップ、リストアがある。ＩＰアドレス２００４は、ブート時にブート要求を発行したサーバに与えるべきＩＰアドレスが記録される。
【０１０９】
ブート管理テーブル１３８は、サーバ移送に先立ち、システム管理者によって管理ネットワーク経由で予め記録されている。システム管理者は、管理対象の移送元サーバと移送先サーバの物理アドレスを調べ、それぞれのサーバに対してバックアップ場所とＩＰアドレスを定め、ブート管理テーブル１３８の物理アドレス２００１、バックアップ場所２００３、及びＩＰアドレス２００４に記録する。その際、ブート状態２００２には「ローカル起動」を記録する。
【０１１０】
次に、図２１乃至図２５を参照して、物理サーバから物理サーバに仮想アドレスを用いて実行環境を移送する移送処理の動作について説明する。
【０１１１】
図２１は、第３実施形態における移送処理を説明するフローチャートである。移送機構１３１は、第１実施形態の移送処理におけるＳ８０５とＳ８１０との処理に代えて、移送先サーバ情報収集と停止処理Ｓ２１０１と、移送先サーバ起動準備処理Ｓ２１０２との処理を行う。
【０１１２】
図２２は、図２１に示した移送先サーバ情報収集と停止処理を説明するフローチャートである。移送元サーバの情報収集と停止処理Ｓ２１０１は、移送機構１３１が管理ネットワークを介してブートサーバ１３９を制御することにより実行する。なお、移送元サーバ上には情報収集用のエージェントが動作しているものとする。
【０１１３】
はじめに、移送機構１３１は、管理ネットワークを介して移送元の物理サーバ１００上のエージェントから移送元の物理サーバ１００のＮＩＣなどのＩ／Ｏ装置の設定情報を受信する（Ｓ２２０１）。次に、移送機構１３１は、管理ネットワークを介してブートサーバ１３９に移送元の物理サーバ１００のバックアップ取得を指示する（Ｓ２２０２）。移送元の物理サーバ１００の指定は、物理サーバ１００がネットワークブートするＮＩＣ１１０の物理アドレス（ＲＡ１）により行う。バックアップ終了確認後、移送機構１３１は移送元の物理サーバ１００を停止し（Ｓ２２０３）、移送先サーバ情報収集と停止処理Ｓ２１０１を終了する。
【０１１４】
図２３は、図１７に示した仮想化経路制御機構の動作を説明するフローチャートである。仮想化経路制御機構１２１は、各ポートからのパケットが到着すると（Ｓ２３０１）、宛先テーブル１２２を検索して、パケットが到着したポートのポート番号１８０１を有し、有効フラグ１８０２が有効であるレコードがあるかどうか判定する（Ｓ２３０２）。検索した結果、レコードが見つからなかった場合はＳ２３０４へ進み、レコードが見つかった場合は第１書き換えルール１８０５〜第４書き換えルール１８０８の中から入力用書き換えルールを適用する(Ｓ２３０３)。次に、到着したパケットの送信先アドレスと仮想アドレス１８０３が同じレコードを宛先テーブル１２２から検索し（Ｓ２３０４）、該当レコードがあるかどうかを判定する（Ｓ２３０５）。判定の結果、該当レコードがなければ、到着したパケットの送信先アドレスは仮想化されていないとみなし、通常の経路制御を行って到着したパケットを出力して（Ｓ２３０８）、終了する。該当レコードがある場合、到着したパケットの出力先のポート番号として、該当レコードのポート番号１８０１が得られる。該当レコードに出力用の書き換えルールが存在していた場合、該当レコードの出力用書き換えルールを適用する（Ｓ２３０６）。最後に、該当レコードのポート番号１８０１のポートにパケットを出力し(Ｓ２３０７)、終了する。このように、仮想アドレスに基づいてパケットの経路が制御されるので、物理アドレス変更することなくパケットの宛先、送付元を変更することができる。
【０１１５】
仮想化経路制御機構１２１の動作において、宛先テーブル１２２は２つのテーブルを兼ねている。ひとつは、パケットが入力されたポートに対する書き換えルールを記録したパケットの入力用のテーブルである。もうひとつは、宛先制御のために、パケットが有する宛先アドレスを基に、宛先アドレスが示すサーバが接続しているポートを検索するためのアドレスと、ネットワークスイッチ装置１２０からパケットを出力するときに適用する書き換えルールとを有する、パケットの出力用のテーブルである。本実施形態では宛先テーブル１２２は２つのテーブルを兼ねているが、これに限定されず、両テーブルを分離して有していてもよい。
【０１１６】
図２４は、図１７に示したブート機構の動作を説明するフローチャートである。ブート機構１３２は、業務ネットワーク経由でブート要求のパケットを受信すると(Ｓ２４０１)、要求パケットから送信元の物理アドレスを取得し（Ｓ２４０２）、これをキーとしてブート管理テーブル１３８を検索してブート状態２００２を取得する（Ｓ２４０３）。ブート機構１３２は、検索されたレコードのブート状態２００２が「ローカル起動」かどうか判定し (Ｓ２４０４)、ブート状態２００２が「ローカル起動」であるならば、ブート要求を無視する(Ｓ２４０５)。この場合、ブート要求を行ったサーバでは、応答が返らないためタイムアウトが発生し、ローカルディスクからの起動（ブート）を試みる。ブート状態２００２が「ローカル起動」でない場合、ブート機構１３２は、検索されたレコードのブート状態２００２が「バックアップ状態」かどうか判定し（Ｓ２４０６）、ブート状態２００２が「バックアップ状態」であるならば、業務ネットワークを経由してバックアップエージェント１７１１をネットワークブートする（Ｓ２４０７）。起動されたバックアップエージェント１７１１は、起動先サーバ上の内蔵ハードディスクの内容を、ネットワークを介してブートサーバ１３９にバックアップする。ブート状態２００２が「バックアップ」でない場合、ブート機構１３２は、検索されたレコードのブート状態２００２が「リストア」かどうか判定し (Ｓ２４０８)、ブート状態２００２が「リストア」であるならば、業務ネットワークを介してリストアエージェント１７１２をネットワークブートし（Ｓ２４０９）、処理を終了する。この場合、以前バックアップをとっていたバックアップデータをブートサーバ１３９より読み出してブート要求先のサーバのローカルディスクに書き込み、リストア処理を行う。また、ブート状態２００２が「バックアップ」でない場合、ブート機構１３２は何もせず終了する。
【０１１７】
図２２に示したＳ２２０２の処理により、移送機構１３１からバックアップ取得の指示を受けると、ブートサーバ１３９は、図２０に示したブート管理テーブル１３８において、移送元の物理サーバ１００の物理アドレスに対応するブート状態２００２を「バックアップ状態」にする。次に、管理ネットワークを介して移送元の物理サーバ１００に対して再起動を指示し、業務ネットワークを介して当該移送元の物理サーバ１００からブート要求が送られるのを待つ。
【０１１８】
移送元の物理サーバ１００からのブート要求は、ブート機構により処理され、図２４に示した手順に従ってバックアップエージェント１７１１が移送元の物理サーバ１００で起動される。バックアップエージェント１７１１は、指定された内蔵ディスク１７０１の内容を、業務ネットワークを介してブートサーバ１３９に転送する。転送されたデータを受信したブートサーバ１３９は、予め設定されたバックアップ場所２００３に格納する。すべての指定したローカルディスクの内容に関するバックアップが終了したら、ブートサーバ１３９は、管理ネットワークを経由してバックアップ処理の完了通知を管理サーバ１３０上の移送機構１３１に通知する。
【０１１９】
図２５は、図２１に示した移送先サーバ起動準備処理を説明するフローチャートである。移送先サーバ起動準備処理Ｓ２１０２は、ブートサーバ１３９に対して、移送先の物理サーバ１０１からのブート要求をあたかも移送元の物理サーバ１００から来たかのように見せる必要がある。このため、移送機構１３１は、移送元の物理サーバ１００のＮＩＣ１１０、１１１の物理アドレスＲＡ１、ＲＡ２に、移送先の物理サーバ１０１のＮＩＣ１１２、１１３の物理アドレスＲＡ３、ＲＡ４を書き換えるように、管理ネットワークを介してネットワークスイッチ装置１２０の宛先テーブル１２２に書き換えルールを記録する（Ｓ２５０１）。結果は図１８に示したようになる。移送元の物理サーバ１００が接続するネットワークスイッチ装置１２０のポート１４０、１４１（Ｐ１、Ｐ２）の仮想化機構は無効化する。移送先の物理サーバ１０１が接続するポート１４５、１４６（Ｐ６、Ｐ７）の仮想化機構は有効化し、仮想アドレス１８０３には物理サーバ１００から引き継いだ物理アドレスＲＡ１、ＲＡ２を設定する。物理アドレス１８０４には、ポート１４５、１４６（Ｐ６、Ｐ７）を介して接続する本来のＮＩＣ１１２、１１３の物理アドレスＲＡ３、ＲＡ４が入る。
【０１２０】
第１書き換えルール１８０５〜第４書き換えルール１８０８の記録状態は、以下のとおりである。物理サーバ１０１があたかも物理サーバ１００であるかのように振舞うために、物理サーバ１０１に接続するポート１４５、１４６（Ｐ６、Ｐ７）から入力するパケットの送信元アドレスを、本来のＮＩＣ１１２、１１３の物理アドレスＲＡ３、ＲＡ４からＮＩＣ１１０、１１１の物理アドレスＲＡ１、ＲＡ２に書き換えるルール番号１９０１が「Ｒ１」、「Ｒ４」を、ポート番号１８０１が「Ｐ６」、「Ｐ７」の第１書き換えルール１８０５にそれぞれ記録する。また、送信先にＮＩＣ１１０、１１１の物理アドレスＲＡ１、ＲＡ２を指定したパケットは、出力としてポート１４５、１４６（Ｐ６、Ｐ７）に誘導されるので、物理サーバ１０１に接続するポート１４５、１４６（Ｐ６、Ｐ７）から出力するパケットの送信先アドレスを、ＮＩＣ１１０、１１１の物理アドレスＲＡ１、ＲＡ２からポート１４５、１４６（Ｐ６、Ｐ７）に接続するＮＩＣ１１２、１１３の物理アドレスＲＡ３、ＲＡ４に書き換えるルール番号１９０１が「Ｒ３」、「Ｒ５」を、ポート番号１８０１が「Ｐ６」、「Ｐ７」の第２書き換えルール１８０６にそれぞれ記録する。
【０１２１】
移送先サーバ１０１からのブート要求が正しく処理されるように、移送機構１３１は、管理ネットワークを介して宛先テーブル１２２に追加の書き換えルールを記録する（Ｓ２５０２）。移送元サーバ１００に見せかける要求元の物理サーバ１０１のＮＩＣの物理アドレスをクライアントアドレスとして、物理サーバが業務ネットワークを介して送出するブート要求のパケット中に記録するため、追加の書き換えルールを指定する。クライアントアドレスは、ネットワークパケット中にある送信元アドレスや送信先アドレスが入るフィールドとは異なるフィールドに埋め込まれる。物理サーバ１０１からのブート要求の場合、クライアントアドレスにＮＩＣ１１２の物理アドレスＲＡ３が入ってしまうため、物理サーバ１００から立ち上がったかのように見えなくなる。従って、これを物理サーバ１００のＮＩＣ１１０の物理アドレスＲＡ１に書き換えるための書き換えルールを、ポート１４５（Ｐ６）用の第３書き換えルール１８０７に「Ｒ２」として追加する。逆に、ブート要求に対する返答に対しては逆の書き換えを施し、パケット中に指定されたクライアントアドレスをＮＩＣ１１２の物理アドレスに書き戻すための書き換えルール「Ｒ６」を第４書き換えルール１８０８に追加し、物理サーバ１０１が受け取ったパケットに矛盾が生じないようにする。
【０１２２】
最後に、移送機構１３１は、ネットワークスイッチ装置１２０に対する書き換えルール設定を記録した後、管理ネットワークを介して、ブートサーバ１３９にリストアを指示し（Ｓ２５０３）、移送先サーバ起動準備処理Ｓ２１０２を終了する。リストア時の物理サーバの指定も、バックアップと同様に、移送元の物理サーバ１００がブートするＮＩＣ１１０の物理アドレス（ＲＡ１）によって指定する。
【０１２３】
ブートサーバ１３９は、管理ネットワークを介したリストアの指示を受けると、図２０に示したブート管理テーブル１３８において、移送元の物理サーバ１００（物理アドレスＲＡ１）に対応するブート状態２００２に「リストア状態」を記録する。次に、もともとは移送元の物理サーバ１００を示していた物理アドレスＲＡ１を指定して業務ネットワークを介した再起動を指示し、業務ネットワークからのブート要求を待つ。再起動指示は、ネットワークスイッチ装置１２０を介して伝達されるが、ネットワークスイッチ装置１２０の書き換え機能により移送先の物理サーバ１０１へと転送される。再起動指示を受信して、移送先の物理サーバ１０１が再起動する。再起動した移送先の物理サーバ１０１は、業務ネットワークを介してブートサーバ１３９にブート要求を送る。ブート要求はブートサーバ１３９のブート機構１３２により処理され、図２３に示した手順に従って、リストアエージェント１７１２が物理アドレスＲＡ１で示される物理サーバ１０１で起動される。本来、ＲＡ１は物理サーバ１００を示していたが、仮想化経路制御機構１２１により物理サーバ１０１を示す。ブートサーバ１３９は、移送元の物理サーバ１００に対してリストアエージェント１７１２を起動しているつもりであるが、ネットワークスイッチ装置１２０の書き換え機構の設定により、図１７に示したように、実際には移送先の物理サーバ１０１で起動される。リストアエージェント１７１２は、バックアップした内容を指定されたローカルディスク１７０２へと書き込む。すべての書き込みが終了したら、ブートサーバ１３９に業務ネットワークを介して処理完了を通知する。これを受けて、ブートサーバ１３９はリストア処理完了の通知を管理サーバ１３０上の移送機構１３１に通知する。
【０１２４】
ここで、移送先の物理サーバ１０１のブート要求がネットワークスイッチ装置１２０を介してブートサーバ１３９と通信する処理について、書き換えルールの適用を具体的に説明する。ネットワークスイッチ装置１２０には図１８に示した宛先テーブル１２２が設定されている。起動した移送先の物理サーバ１０１は、ＮＩＣ１１２からブート要求(ＰＸＥオプションのついたＤＨＣＰパケット)を送信する。このとき、パケットの送信元アドレスにはＮＩＣ１１２の物理アドレスＲＡ３が入る。さらに、ネットワークブートを実現するプロトコルが規定するヘッダ中のブート要求発行元のハードウェアアドレス欄(クライアントアドレス)にも、ＲＡ３が入る。ブート要求がネットワークスイッチ装置１２０のポート１４５（Ｐ６）に到達すると、仮想化経路制御機構１２１は、ポート１４５（Ｐ６）に設定されている書き換えルールを調べ、適用条件が合う入力用の書き換えルールを選び出す。対象となる書き換えルールは図１９に示したルール番号１９０１が「Ｒ１」と「Ｒ２」で、「Ｒ１」のルール適用条件１９０２は「Ａｌｌ」なので適用対象となる。「Ｒ２」のルール適用条件１９０２は、「ＤＨＣＰ」パケットを対象としているが、ブート要求はＤＨＣＰパケットであるので「Ｒ２」も適用対象となる。結果的に、書き換えルールＲ１とＲ２を適用する。書き換えルールＲ１の適用により、パケットの送信元アドレスがＲＡ３からＲＡ１へと書き換わり、ルールＲ２の適用により、クライアントアドレスもＲＡ３からＲＡ１へと書き換わる。その後、ポート１４７（Ｐ８）からブート要求をブートサーバ１３９へと送り出す。
【０１２５】
ブートサーバ１３９からの返信パケットは、ネットワークスイッチ装置１２０のポート１４７（Ｐ８）で受信する。返信パケットは送信先アドレスにＲＡ１(移送元の物理サーバ１００)が指定されている。ポート番号１８０１が「Ｐ８」に対するレコードは宛先テーブル１２２にないので、送信先アドレスで宛先テーブル１２２を検索する（Ｓ２３０４）。検索は、宛先テーブル１２２の仮想アドレス１８０３を検索し、有効なレコードであるポート番号１８０１が「Ｐ６」のレコードを選ぶ。次に、第１書き換えルール１８０５〜第４書き換えルール１８０８を調べ、第２書き換えルール１８０６及び第４書き換えルール１８０８から出力用の書き換えルールであるＲ３、Ｒ６を適用する。これにより、パケットの送信先アドレスはＲＡ３に、クライアントアドレスもＲＡ３に書き換え、ポート１４６（Ｐ６）から移送先の物理サーバ１０１へと送出する。
【０１２６】
本実施形態において、移送先サーバが仮想サーバであった場合は、図１０に示した仮想ネットワークスイッチ１６０に仮想化経路制御機構１２１と宛先テーブル１２２を備えることにより、同様のサーバ移送を行うことが可能である。
【０１２７】
このように、本実施形態によれば、仮想アドレスを用いてサーバ移送する場合であっても第１実施形態と同様の効果を得ることができる。また、仮想アドレスに基づいてパケットの経路が制御されるので、物理アドレス変更することなくパケットの宛先、送付元を変更することができる。これにより、例えば宛先テーブル１００に基づいて、ネットワークスイッチ装置１２０に入力されたパケットを読み替えルールを適用して仮想アドレス１８０３が示すポート１８０１に出力することができ、移送元サーバの物理アドレスを移送先サーバに引き継ぐことなくサーバ移送をすることができ、物理アドレスの重複による問題を容易に解決することができる。さらに、ネットワークスイッチ装置１２０に入力され、出力するパケットの送信元アドレス、送信先アドレスを書き換えることにより、外部からサーバ移送を意識することがなく、移送先サーバを使用することができる。
【０１２８】
なお、本発明の構成は、前記実施形態にのみ限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々変更を加えてもよい。
【図面の簡単な説明】
【０１２９】
【図１】第１実施形態におけるサーバシステムの構成を説明する概略構成図である。
【図２】図１に示した状態テーブルの構成を説明する図である。
【図３】図１に示した設定状態の構成を説明する図である。
【図４】図１に示したサーバ管理テーブルの構成を説明する図である。
【図５】図１に示した機器状態表の構成を説明する図である。
【図６】図１に示した移送後機器状態の構成を説明する図である。
【図７】第１実施形態におけるサーバ移送に係るサーバシステムの構成を説明する概略構成図である。
【図８】第１実施形態におけるサーバ移送処理を説明するフローチャートである。
【図９】図７に示した状態設定処理を説明するフローチャートである。
【図１０】第２実施形態におけるサーバ移送に係るサーバシステムの構成を説明する概略構成図である。
【図１１】図１０に示した予約表の構成を説明する図である。
【図１２】図１０に示した資源管理表の構成を説明する図である。
【図１３】第２実施形態におけるサーバ移送処理を説明するフローチャートである。
【図１４】図１０に示した移送後機器状態の構成を説明する図である。
【図１５】図１０に示した予約機構の動作を説明するフローチャートである。
【図１６】移送後のネットワーク構成を説明する図である。
【図１７】第３実施形態におけるサーバ移送に係るサーバシステムの構成を説明する概略構成図である。
【図１８】図１７に示した宛先テーブルの構成を説明する図である。
【図１９】書き換えルールの構成を説明する図である。
【図２０】図１７に示したブート管理テーブルの構成を説明する図である。
【図２１】第３実施形態におけるサーバ移送処理を説明するフローチャートである。
【図２２】図２１に示した移送元サーバ情報収集と停止処理を説明するフローチャートである。
【図２３】図１７に示した仮想化経路制御機構の動作を説明するフローチャートである。
【図２４】図１７に示したブート機構の動作を説明するフローチャートである。
【図２５】図２１に示した移送先サーバ起動準備処理を説明するフローチャートである。
【符号の説明】
【０１３０】
１００、１０１、１０７…物理サーバ、１０２、１０３…仮想サーバ、１０６…サーバ仮想化機構、１２０…ネットワークスイッチ装置、１２１…仮想化経路機構、１２２…宛先テーブル、１３０…管理サーバ、１３１…移送機構、１３３…スイッチ間設定ルール、１００３…予約機構、１００４…予約表、１６０…仮想ネットワークスイッチ。
【図１】
0005164628.tif 000002
【図２】
0005164628.tif 000003
【図３】
0005164628.tif 000004
【図４】
0005164628.tif 000005
【図５】
0005164628.tif 000006
【図６】
0005164628.tif 000007
【図７】
0005164628.tif 000008
【図８】
0005164628.tif 000009
【図９】
0005164628.tif 000010
【図１０】
0005164628.tif 000011
【図１１】
0005164628.tif 000012
【図１２】
0005164628.tif 000013
【図１３】
0005164628.tif 000014
【図１４】
0005164628.tif 000015
【図１５】
0005164628.tif 000016
【図１６】
0005164628.tif 000017
【図１７】
0005164628.tif 000018
【図１８】
0005164628.tif 000019
【図１９】
0005164628.tif 000020
【図２０】
0005164628.tif 000021
【図２１】
0005164628.tif 000022
【図２２】
0005164628.tif 000023
【図２３】
0005164628.tif 000024
【図２４】
0005164628.tif 000025
【図２５】
0005164628.tif 000026