(57)【特許請求の範囲】
【請求項１】
論理ユニットを有する記憶装置と、複数の物理計算機と、前記物理計算機上でハイパーバイザの制御により動作する複数のＬＰＡＲとを備える仮想計算機システムにおいて、
前記仮想計算機システムは、
第一のハイパーバイザの制御により動作する第一のＬＰＡＲ及び第一のＳｈａｄｏｗ  ＬＰＡＲを有する第一の物理計算機と、
第二のハイパーバイザの制御により動作する第二のＬＰＡＲ及び第二のＳｈａｄｏｗ  ＬＰＡＲを有する第二の物理計算機とを備え、
第一のパス制御部を有する前記第一のＬＰＡＲを、前記第二の物理計算機に移行して、前記第二の物理計算機上で、第二のパス制御部を有する第二のＬＰＡＲとして動作させるに際し、
前記第一のＳｈａｄｏｗ  ＬＰＡＲは、前記第一のＬＰＡＲが有する第一の論理ＨＢＡに識別子として割り当てられた第一のＷＷＮ及び前記第一のＬＰＡＲが有する第二の論理ＨＢＡに識別子として割り当てられた第二のＷＷＮを、前記第二のＳｈａｄｏｗ  ＬＰＡＲに転送し、
前記第二のハイパーバイザは、前記第二のＬＰＡＲが有する第三の論理ＨＢＡに識別子として割り当てられた第三のＷＷＮを前記転送された第一のＷＷＮに変更し、前記第二のＬＰＡＲが有する第四の論理ＨＢＡに識別子として割り当てられた第四のＷＷＮを前記転送された第二のＷＷＮに変更し、
前記第一のハイパーバイザは、前記第二の論理ＨＢＡと前記論理ユニットとの接続をログアウトさせ、前記第二の論理ＨＢＡと前記論理ユニットとの接続状態をオフラインとし、
前記第二のハイパーバイザは、前記第二のＷＷＮを有する前記第四の論理ＨＢＡと前記論理ユニットとの接続をログインさせ、
前記第一のＳｈａｄｏｗ  ＬＰＡＲは、前記第一のＬＰＡＲの論理資源情報を、前記第二のＳｈａｄｏｗ  ＬＰＡＲへ転送し、
前記第二のハイパーバイザは、転送された前記第一のＬＰＡＲの論理資源情報を、前記第二のＬＰＡＲに反映し、
前記第一のハイパーバイザは、前記第二のＷＷＮを有する前記第四の論理ＨＢＡと前記論理ユニットとの接続の完了通知を受けて、前記第二のＷＷＮを転送した前記第二の論理ＨＢＡと前記論理ユニットとの接続状態をオンラインとし、
前記第一のパス制御部は、前記第二の論理ＨＢＡと前記論理ユニットとの接続状態をオンラインと認識し、
前記第一のＳｈａｄｏｗ  ＬＰＡＲは、前記第一のＬＰＡＲの論理資源情報の差分情報を、前記第二のＳｈａｄｏｗ  ＬＰＡＲへ転送し、
前記第二のハイパーバイザは、転送された前記第一のＬＰＡＲの論理資源情報の差分情報を、前記第二のＬＰＡＲに反映し、
前記第一のハイパーバイザは、前記第一の論理ＨＢＡと前記論理ユニットとの接続状態をオフラインとし、
前記第二のハイパーバイザは、前記反映の完了通知を受けると、前記移行した前記第二のＬＰＡＲの動作を開始させ、
前記第二のＬＰＡＲの動作開始により、前記第一のパス制御部は動作を停止し、
前記第二のパス制御部は、前記第二のＷＷＮを有する前記第四の論理ＨＢＡと前記論理ユニットとの接続状態をオンラインと認識し、
前記第一のハイパーバイザは、前記第一の論理ＨＢＡと前記論理ユニットとの接続をログアウトさせることを特徴とする仮想計算機システム。
【請求項２】
前記第一のハイパーバイザが、前記第一の論理ＨＢＡと前記論理ユニットとの接続をログアウトした後に、
前記第二のハイパーバイザは、前記第三の論理ＨＢＡと前記論理ユニットとの接続をログインさせ、
前記第二のパス制御部は、前記第三の論理ＨＢＡと前記論理ユニットとの接続状態をオンラインと認識することを特徴とする請求項１記載の仮想計算機システム。
【請求項３】
ＯＳが稼動した状態の前記第一のＬＰＡＲの構成情報を前記第二の物理計算機に転送することにより、前記第一のＬＰＡＲを前記第二の物理計算機に移行して、前記第二の物理計算機上で第二のＬＰＡＲとして動作させることを特徴とする請求項１記載の仮想計算機システム。
【請求項４】
前記第一のパス制御部は、前記論理ユニットと接続された前記第一の論理ＨＢＡのパス及び前記論理ユニットと接続された前記第二の論理ＨＢＡのパスのうち何れか一方を選択し、
前記第二のパス制御部は、前記論理ユニットと接続された前記第三の論理ＨＢＡのパス及び前記論理ユニットと接続された前記第四の論理ＨＢＡのパスのうち何れか一方を選択し、
前記第一のパス制御部は、論理資源の転送により、前記第二のＬＰＡＲに移行して、移行先ＬＰＡＲの論理ＣＰＵがスタートした後に第二のパス制御部として動作することを特徴とする請求項１記載の仮想計算機システム。
【請求項５】
前記第一のＳｈａｄｏｗ  ＬＰＡＲは、前記第一のＬＰＡＲの移行時に前記第一のＬＰＡＲの固有情報を送信し、
前記第二のＳｈａｄｏｗ  ＬＰＡＲは、前記第一のＬＰＡＲの移行時に前記第一のＬＰＡＲの固有情報を受信することを特徴とする請求項１記載の仮想計算機システム。
【請求項６】
前記第一のＬＰＡＲ及び前記第二のＬＰＡＲは、前記ＨＢＡと論理ユニットとの接続をログインさせるＨＢＡドライバを有することを特徴とする請求項１記載の仮想計算機システム。
【請求項７】
前記第２の物理計算機のＦＣ−ＨＢＡのファームウェアにログイン要求を行う手段として該ファームウェアとドライバ間のインターフェイスを利用し、該ファームウェアとドライバとのメモリ上の通信領域にＷＷＮを設定し、該ファームウェアに対するログインの契機となる書き込みをＭＭＩＯ領域に行い、該ファームウェアとの通信領域を通じて前記ＦＣ−ＨＢＡが接続されるＦＣ−ＳｗｉｔｃｈへのログインおよびＦＣ−Ｓｗｉｔｃｈの先につながったディスクへのログイン処理を行うことを特徴とする請求項１記載の仮想計算機システム。
【請求項８】
前記第一のハイパーバイザは、前記第一のＬＰＡＲの論理資源情報及びその差分情報を、前記第二のハイパーバイザへ転送し、
前記第二のハイパーバイザは、転送された前記第一のＬＰＡＲの論理資源情報及びその差分情報を、前記第二のＬＰＡＲに反映することを特徴とする請求項１記載の仮想計算機システム。
【請求項９】
前記第二のＷＷＮを有する前記第四の論理ＨＢＡと前記論理ユニットとの接続がログインされ、且つ前記第二のＷＷＮを転送した前記第二の論理ＨＢＡと前記論理ユニットとの接続状態がオンラインであって、稼動している前記ＯＳが前記論理ユニットに書き込みをする場合、
前記第一のハイパーバイザは、
前記第一の物理計算機が有するＦＣ−ＨＢＡのファームウエアに対する、前記第一のＬＰＡＲのドライバからの起動要求コマンドをトラップし、
前記第一のＳｈａｄｏｗ  ＬＰＡＲは、
前記ドライバがセットした情報を前記第二のＳＨＡＤＯＷ  ＬＰＡＲに転送し、
前記第二のハイパーバイザは、前記転送された情報に基づいて、前記第二の物理計算機が有するＦＣ−ＨＢＡのファームウエアに対して起動要求コマンドを送信し、
前記第二の物理計算機が有するＦＣ−ＨＢＡのファームウエアは、
前記転送された情報に基づいて、前記論理ユニットに書き込みを行い、
前記書き込み後の情報を前記第二のハイパーバイザに転送し、
前記第二のＳｈａｄｏｗ  ＬＰＡＲは、前記転送された書き込み後の情報を、前記第一のＳｈａｄｏｗ  ＬＰＡＲに転送し、
前記第一のハイパーバイザは、
前記転送された書き込み後の情報に基づき、前記書き込みに対するＦＣ−ＨＢＡファームウェアからの応答を指定されたメモリ上にセットし、
前記セットしたことを前記第一のＬＰＡＲのドライバに送信することを特徴とする請求項３記載の仮想計算機システム。
【請求項１０】
前記第二のＷＷＮを有する前記第四の論理ＨＢＡと前記論理ユニットとの接続がログインされ、且つ前記第二のＷＷＮを転送した前記第二の論理ＨＢＡと前記論理ユニットとの接続状態がオンラインであって、稼動している前記ＯＳが前記論理ユニットから読み出しをする場合、
前記第一のハイパーバイザは、
前記第一の物理計算機が有するＦＣ−ＨＢＡのファームウエアに対する、前記第一のＬＰＡＲのドライバからの起動要求コマンドをトラップし、
前記第一のＳｈａｄｏｗ  ＬＰＡＲは、
前記ドライバがセットした情報を前記第二のハイパーバイザに転送し、
前記第二のハイパーバイザは、前記転送された情報に基づいて、前記第二の物理計算機が有するＦＣ−ＨＢＡのファームウエアに対して起動要求コマンドを送信し、
前記第二の物理計算機が有するＦＣ−ＨＢＡのファームウエアは、
前記転送された情報に基づいて、前記論理ユニットから読み出しを行い、
前記第二のＳｈａｄｏｗ  ＬＰＡＲは、前記読み出された情報を含む読み出し後の情報を、前記第一のＳｈａｄｏｗ  ＬＰＡＲに転送し、
前記第一のハイパーバイザは、
前記転送された読み出し後の情報に基づき、前記読み出し情報及び読み出し対するＦＣ−ＨＢＡファームウェアからの応答を指定されたメモリ上にセットし、
前記セットしたことを前記第一のＬＰＡＲのドライバに送信することを特徴とする請求項３記載の仮想計算機システム。
【請求項１１】
論理ユニットを有する記憶装置と、複数の物理計算機と、前記物理計算機上でハイパーバイザの制御により動作する複数のＬＰＡＲとを備える仮想計算機システムにおける仮想計算機の移行方法であって、
前記仮想計算機システムは、
第一のハイパーバイザの制御により動作する第一のＬＰＡＲ及び第一のＳｈａｄｏｗ  ＬＰＡＲを有する第一の物理計算機と、
第二のハイパーバイザの制御により動作する第二のＬＰＡＲ及び第二のＳｈａｄｏｗ  ＬＰＡＲを有する第二の物理計算機とを備え、
第一のパス制御部を有する前記第一のＬＰＡＲを、前記第二の物理計算機に移行して、前記第二の物理計算機上で、第二のパス制御部を有する第二のＬＰＡＲとして動作させるに際し、
前記第一のＳｈａｄｏｗ  ＬＰＡＲは、前記第一のＬＰＡＲが有する第一の論理ＨＢＡに識別子として割り当てられた第一のＷＷＮ及び前記第一のＬＰＡＲが有する第二の論理ＨＢＡに識別子として割り当てられた第二のＷＷＮを、前記第二のＳｈａｄｏｗ  ＬＰＡＲに転送し、
前記第二のハイパーバイザは、前記第二のＬＰＡＲが有する第三の論理ＨＢＡに識別子として割り当てられた第三のＷＷＮを前記転送された第一のＷＷＮに変更し、前記第二のＬＰＡＲが有する第四の論理ＨＢＡに識別子として割り当てられた第四のＷＷＮを前記転送された第二のＷＷＮに変更し、
前記第一のハイパーバイザは、前記第二の論理ＨＢＡと前記論理ユニットとの接続をログアウトさせ、前記第二の論理ＨＢＡと前記論理ユニットとの接続状態をオフラインとし、
前記第二のハイパーバイザは、前記第二のＷＷＮを有する前記第四の論理ＨＢＡと前記論理ユニットとの接続をログインさせ、
前記第一のＳｈａｄｏｗ  ＬＰＡＲは、前記第一のＬＰＡＲの論理資源情報を、前記第二のＳｈａｄｏｗ  ＬＰＡＲへ転送し、
前記第二のハイパーバイザは、転送された前記第一のＬＰＡＲの論理資源情報を、前記第二のＬＰＡＲに反映し、
前記第一のハイパーバイザは、前記第二のＷＷＮを有する前記第四の論理ＨＢＡと前記論理ユニットとの接続の完了通知を受けて、前記第二のＷＷＮを転送した前記第二の論理ＨＢＡと前記論理ユニットとの接続状態をオンラインとし、
前記第一のパス制御部は、前記第二の論理ＨＢＡと前記論理ユニットとの接続状態をオンラインと認識し、
前記第一のＳｈａｄｏｗ  ＬＰＡＲは、前記第一のＬＰＡＲの論理資源情報の差分情報を、前記第二のＳｈａｄｏｗ  ＬＰＡＲへ転送し、
前記第二のハイパーバイザは、転送された前記第一のＬＰＡＲの論理資源情報の差分情報を、前記第二のＬＰＡＲに反映し、
前記第一のハイパーバイザは、前記第一の論理ＨＢＡと前記論理ユニットとの接続状態をオフラインとし、
前記第二のハイパーバイザは、前記反映の完了通知を受けると、前記移行した前記第二のＬＰＡＲの動作を開始させ、
前記第二のＬＰＡＲの動作開始により、前記第一のパス制御部は動作を停止し、
前記第二のパス制御部は、前記第二のＷＷＮを有する前記第四の論理ＨＢＡと前記論理ユニットとの接続状態をオンラインと認識し、
前記第一のハイパーバイザは、前記第一の論理ＨＢＡと前記論理ユニットとの接続をログアウトさせることを特徴とする仮想計算機の移行方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ある物理計算機上で動作中の論理区画を他の物理計算機上の論理区画に移行する方法およびその仮想計算機システムに関する。
【背景技術】
【０００２】
1台の物理計算機上に、複数の論理計算機又は論理区画（以下、ＬＰＡＲ（Logical Partition）という）を構築し、各論理計算機でそれぞれＯＳ（オペレーティングシステム）を動作させ、これにより複数の論理計算機で複数の固有のＯＳを動作させることが可能な仮想計算機システムが実用化されている。また、最近では、それぞれの論理計算機に論理的なＦＣ（Fibre Channel）拡張ボード又はＦＣポートを持せた仮想計算機システムを、ＲＡＩＤ装置を含むＳＡＮ（ストレージエリアネットワーク）環境で使用する例もある。
【０００３】
ＳＡＮ環境でブートを実現する計算機システムにおいて、ＯＳがインストールされているＲＡＩＤ装置内のロジカルユニットのデータを保護するために、それぞれの計算機からのみアクセスを可能とするセキュリティ機能が、ＲＡＩＤ装置によって有効となっている。このセキュリティ機能としては一般的に、それぞれの計算機に搭載されるＦＣポートに割り当てられた固有のＩＤ（World Wide Name）を利用し、ＯＳがインストールされたロジカルユニットと計算機が持つＦＣポートに割り当てられた固有のＩＤ（World Wide Name）とを関連付け、当該ＩＤ（World Wide Name）を持つＦＣポートからのアクセスのみを許す方法が、用いられている。また、ＯＳを含むソフトウェアには、装置固有のＩＤ(World Wide Name)が、記録されている場合もある。
【０００４】
ＳＡＮからのブートを行う計算機システムでは、現用系計算機と待機系計算機で持つＦＣポートに割り当てられた固有のＩＤ（World Wide Name）が異なるため、現用系計算機から待機系計算機に交代する際、ＯＳを含むソフトウェアイメージをそのまま利用することができず、ＳＡＮ管理ソフトウェアや人手によるＲＡＩＤ装置側のセキュリティ機能の設定変更が必要となる。これは、現用系計算機と待機系計算機という物理計算機においてだけではなく、ＬＰＡＲ間においても同様である。
【０００５】
複数の物理計算機上にそれぞれＬＰＡＲを構築することができる仮想計算機システムにおいて、ある物理計算機上のＬＰＡＲから他の物理計算機へＬＰＡＲに構成情報を移動させて動作を引き継がせる技術に関しては、例えば特許文献１に開示されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１０−３３４０４
【発明の概要】
【発明が解決しようとする課題】
【０００７】
特許文献1の技術は、移行前のＬＰＡＲを一旦停止し、他の物理計算機に移動する。ＦＣでは、データ転送を始める前に、関連するポートの持つ情報を交換する。この情報交換をログイン時に行うため、ログイン時間がかかる。特許文献１のように移行前にＬＰＡＲを停止する場合には、ＯＳ起動処理時にＯＳドライバによりログイン処理が行われるため、この処理が完了するまでＯＳによるディスクアクセスは行われない。
【０００８】
ところが、移行前のＬＰＡＲが稼働した状態で、移行先に動作を引き継がせる場合には、移行先のＯＳは、起動処理が行われることなく、稼動した状態で引き継がれる。このため、ＯＳは、ログイン処理が完了しているものとして、ディスクアクセスしてくるが、実際にはログイン処理が行われてないため、移行後にディスクアクセスできなくなってしまうという問題があった。
【０００９】
本発明は、上記課題に鑑みて、論理区画のＯＳが移行先で動作した直後に移行前と同様のディスクにアクセスが可能な仮想計算機システムおよび仮想計算機の移行方法を提供することを目的とする。
【課題を解決するための手段】
【００１０】
上記課題を解決するために、本発明に係る仮想計算機システムおよび仮想計算機の移行方法は、論理ユニットを有する記憶装置と、複数の物理計算機と、前記物理計算機上でハイパーバイザの制御により動作する複数のＬＰＡＲとを備える前記仮想計算機システムであって、第一のハイパーバイザの制御により動作する第一のＬＰＡＲ及び第一のＳＨＡＤＯＷ  ＬＰＡＲを有する第一の物理計算機（移行元）と、第二のハイパーバイザの制御により動作する第二のＬＰＡＲ及び第二のＳＨＡＤＯＷ  ＬＰＡＲを有する第二の物理計算機（移行先）とを備える。
【００１１】
そして、第一のパス制御部を有する前記第一のＬＰＡＲを、前記第二の物理計算機に移行して、前記第二の物理計算機上で、第二のパス制御部を有する第二のＬＰＡＲとして動作させるに際し、以下の動作を行う。
【００１２】
まず、前記第一のＳＨＡＤＯＷ  ＬＰＡＲは、前記第一のＬＰＡＲが有する第一の論理ＨＢＡに識別子として割り当てられた第一のＷＷＮ及び前記第一のＬＰＡＲが有する第二の論理ＨＢＡに識別子として割り当てられた第二のＷＷＮを、前記第二のＳＨＡＤＯＷ  ＬＰＡＲに転送する。次に、前記第二のハイパーバイザは、前記第二のＬＰＡＲが有する第三の論理ＨＢＡに識別子として割り当てられた第三のＷＷＮを前記転送された第一のＷＷＮに変更し、前記第二のＬＰＡＲが有する第四の論理ＨＢＡに識別子として割り当てられた第四のＷＷＮを前記転送された第二のＷＷＮに変更する。次に、前記第一のハイパーバイザは、前記第二の論理ＨＢＡと前記論理ユニットとの接続をログアウトさせ、前記第二の論理ＨＢＡと前記論理ユニットとの接続状態をオフラインとし、前記第二のハイパーバイザは、前記第二のＷＷＮを有する前記第四の論理ＨＢＡと前記論理ユニットとの接続をログインさせる。次に、前記第一のＳＨＡＤＯＷ  ＬＰＡＲは、前記第一のＬＰＡＲの論理資源情報を、前記第二のＳＨＡＤＯＷ  ＬＰＡＲへ転送する。次に、前記第二のハイパーバイザは、転送された前記第一のＬＰＡＲの論理資源情報を、前記第二のＬＰＡＲに反映する。次に、前記第一のハイパーバイザは、前記第二のＷＷＮを有する前記第四の論理ＨＢＡと前記論理ユニットとの接続の完了通知を受けて、前記第二のＷＷＮを転送した前記第二の論理ＨＢＡと前記論理ユニットとの接続状態をオンラインとする。次に、前記第一のパス制御部は、前記第二の論理ＨＢＡと前記論理ユニットとの接続状態をオンラインと認識する。次に、前記第一のＳＨＡＤＯＷ  ＬＰＡＲは、前記第一のＬＰＡＲの論理資源情報の差分情報を、前記第二のＳＨＤＯＷ  ＬＰＡＲへ転送する。次に、前記第二のハイパーバイザは、転送された前記第一のＬＰＡＲの論理資源情報の差分情報を、前記第二のＬＰＡＲに反映する。次に、前記第一のハイパーバイザは、前記第一の論理ＨＢＡと前記論理ユニットとの接続状態をオフラインとする。次に、前記第二のハイパーバイザは、前記反映の完了通知を受けると、前記移行した前記第二のＬＰＡＲの動作を開始させ、
前記第二のＬＰＡＲの動作開始により、前記第一のパス制御部は動作を停止する。次に、前記第二のパス制御部は、前記第二のＷＷＮを有する前記第四の論理ＨＢＡと前記論理ユニットとの接続状態をオンラインと認識する。次に、前記第一のハイパーバイザは、前記第一の論理ＨＢＡと前記論理ユニットとの接続をログアウトさせる。以上を本発明の特徴とする。
【発明の効果】
【００１３】
本願において開示される発明のうち、代表的なものによって得られる効果を簡単に説明すれば以下の通りである。
【００１４】
すなわち、代表的なものによって得られる効果は、移行前のＬＰＡＲが稼働した状態で移行先に動作を引き継がせる場合に、論理区画のＯＳが移行先で動作した直後に移行前と同様のディスクにアクセスが可能となる。
【図面の簡単な説明】
【００１５】
【図１】本発明の計算機システムの構成を示す図
【図２】ＬＰＡＲ移行処理と移行先でディスクアクセスを実現する方法を示したフローチャートの前半
【図３】ＬＰＡＲ移行処理と移行先でディスクアクセスを実現する方法を示したフローチャートの後半
【図４】移行元、移行先ＬＰＡＲに割り当てられたＦＣ−ＨＢＡとＬＵ１３４の接続状態を示す図
【図５】物理的にはログアウトしているＦＣ−ＨＢＡ１１７とＬＵ１３４のパスを用いて、移行元のＯＳがＬＵ１３４に書き込もうとしてきた際の動き
【図６】物理的にログアウトしているＦＣ−ＨＢＡ１１７とＬＵ１３４のパスを用いて、移行元のＯＳがＬＵ１３４の内容を読もうとしてきた際の動き
【図７】移行元ＬＰＡＲ１１２のドライバ１２１が、ＦＣ−ＨＢＡ１１７とＤｉｓｋ１３４とのデータ転送時にメモリ上に設定する情報
【図８】ＦＣ−ＨＢＡ２１７のファームウェアが移行先ＬＰＡＲ２１２のドライバ２２１に対してデータ転送後に返す応答
【図９】移行先ハイパーバイザ２１４がＦＣ−ＨＢＡ２１７のファームウェアにログイン要求するフローチャート
【図１０】ＦＣ−ＨＢＡファームウェアへの要求領域に書き込む内容
【図１１】ＦＣ−ＨＢＡファームウェアへの応答領域に書き込まれる内容
【図１２】計算機の構成を示す図
【発明を実施するための形態】
【００１６】
以下、本発明を適用した実施形態について図面を参照して説明する。
【実施例１】
【００１７】
図１を用いて、実施例１の仮想計算機システムの構成について説明する。
【００１８】
サーバモジュール１１１及び２１１は、基本的に同じ構成を有し、それぞれ冗長化したＦＣ−ＨＢＡ１１８、１１９（２１８、２１９）及びＮＩＣを持っている。ハイパーバイザ１１４（２１４）は、物理的に1台のサーバを、論理的に複数のサーバに見せる仮想化機構である。サーバモジュール１１１及び２１１には、一つのハイパーバイザ上に、ＬＰＡＲ１１２（２１２）とＳｈａｄｏｗ  ＬＰＡＲ１１３（２１３）が構築され、動作している。Ｓｈａｄｏｗ  ＬＰＡＲは、ユーザに見せないハイパーバイザ専用のＬＰＡＲであり、Ｓｈａｄｏｗ  ＬＰＡＲを通じてハイパーバイザはＳｈａｄｏｗ  ＬＰＡＲが備えている機能を間接的に取り込むことができる。
【００１９】
ＦＣ−ＨＢＡ１１８、１１９（２１８、２１９）は、通信を行うためにそのＨＢＡアドレスとしてＦＣポート一つに対して一つのＷＷＮを持つ。ＬＰＡＲ１１２（２１２）にも、論理的なＨＢＡが二つ（１１６、１１７（２１６、２１７））あり、VfcWWN1、VfcWWN2（VfcWWN3、VfcWWN4）のような固有のＷＷＮが付与される。
【００２０】
ストレージ装置１３３は、論理的に規定されたＬＵ（論理ユニット）と呼ばれるＤｉｓｋユニット１３４を持っている。Ｄｉｓｋユニット１３４がどのサーバに接続されているかを表す接続情報は、ストレージ装置１３３内のコントローラによって管理されている。すなわち、ＬＵ１３４は、VfcWWN1のＷＷＮを持つサーバ１１２に、接続されている。この接続関係を設定する機能を、ＬＵＮセキュリティ設定機能と呼ぶ。
【００２１】
ＬＰＡＲ１１２上では、ＬＵ１３４とＦＣ−ＨＢＡ１１６とのパス（リンク１）、ＬＵ１３４とＦＣ−ＨＢＡ１１７とのパス（リンク２）、これら２本のパスを制御するマルチパス制御部１２０が、動作している。マルチパス制御部１２０の制御により、２本のパスのうち、どちらかのパスが使用され、ＦＣ−ＨＢＡドライバ１２１とＦＣ−ＨＢＡのファームウェアとやり取りを行うことによりディスクアクセスが行われる。なお、マルチパス制御部１２０は、たとえばマルチパス制御ソフトウエアにより実現されるが、これに限定されるものではない。
【００２２】
本実施例のマルチパス制御部１２０は、ＯＳにマルチパス制御ソフトウェアを組み込むことにより実現する。したがって、ＬＰＡＲ１１２がＬＰＡＲ２１２に移行する際に、マルチパス制御部１２０もまた移動する。この移行後のマルチパス制御部をマルチパス制御部２２０とする。同様にＦＣ−ＨＢＡドライバ１２１もまた、ＯＳに組み込まれているため、ＬＰＡＲ１１２がＬＰＡＲ２１２に移行する際に移動する。移行後のＦＣ−ＨＢＡドライバをドライバ２２１とする。
【００２３】
マルチパス制御部１２０は、定期的にパスの状態（接続状態）を監視している。また、マルチパス制御部１２０は、監視間隔を設定できる。また、マルチパス制御部１２０は、パスの状態がＬＵ１３４にアクセスができない使用不可能状態(Offlineと呼ぶことにする)から回復した際に、ユーザの介入なしに、パスの状態が再びＬＵ１３４にアクセスができる使用可能状態(onlineと呼ぶことにする)にする設定を、行うことが可能である。この設定を、自動フェイルバック設定という。実施例１では、このパスの監視間隔を数秒にする設定と、自動フェイルバック設定を必要とする。
【００２４】
次に、本発明を適用した仮想計算機システムでＨＢＡの冗長化構成をとっている理由について説明する。
【００２５】
ＬＰＡＲを移行させる際には、移行元と移行先でＷＷＮの引継ぎを行っているため、移行元の移行前のＷＷＮと移行先の移行後のＷＷＮとは同一となる。
【００２６】
さて、ＬＰＡＲが稼動した状態で移行した場合、移行先のＯＳは、ＬＰＡＲが移行したことに気づいていないため、移行先ＬＰＡＲでＯＳが動作した直後にディスクアクセスする可能性がある。
【００２７】
移行後直ちに、移行先のＯＳがディスクアクセスできるように、移行先では、ＯＳが動作する前に、ＦＣとＬＵ１３４とのパスを物理的に確保するためログインしている必要がある。一方、移行元でも、移行直前までディスクアクセスされる可能性があるため、ログインしている必要がある。ところが、移行元と移行先とで、同じＷＷＮで同一のディスクに対してログインすることは、不可能である。また、ＦＣのログインには時間がかかる。
【００２８】
そこで、本発明を適用した仮想計算機システムでは、ＨＢＡの冗長化構成を取る。まず、移行元は、移行前に冗長化されているＦＣ−ＨＢＡの一方をログアウトしておく。そして、ログアウトにより空いた移行元のＦＣ−ＨＢＡのＷＷＮを用いて、移行先でＯＳが動作するより前に、ログイン処理を行うようにした。これにより、ＬＰＡＲ移行直前まで移行元ＬＰＡＲ１１２上のＯＳがＬＵ１３４にアクセス可能で、かつＬＰＡＲ移行直後に移行先ＬＰＡＲ２１２上のＯＳがＬＵ１３４に可能となるようにした。
【００２９】
次に図１２において、本発明で重要な役割を果たすハイパーバイザ１１４、２１４の構成について説明する。図１２は、ハイパーバイザ１１４（２１４）上にＬＰＡＲ１１２（２１２）とＳｈａｄｏｗ  ＬＰＡＲ１１３（２１３）が構築された状態の構成図を表している。
【００３０】
ハイパーバイザ１１４（２１４）は、論理ＣＰＵやメモリ、論理ＦＣ−ＨＢＡ、論理ＮＩＣなどのＬＰＡＲに割り当てられた論理資源（１２０２）と、ＬＰＡＲに割り当てられたＷＷＮ（VfcWWN）やＬＰＡＲ Ａｃｔｉｖａｔｅ時に起動するＯＳ（１２０６）の順序等のＬＰＡＲに関連した構成情報（１２０３）を管理するＬＰＡＲ管理（１２０１）、論理ＢＩＯＳや論理ＥＦＩなどの論理ファームウェア（１２０４）と論理ＣＰＵのプログラム(プロセス)やハイパーバイザ内の制御プロセスの中から優先度の高いプロセスを選び出し、切り替えを行うスケジューラ（１２０５）を有する。本実施例では、ＬＰＡＲ管理によって制御される論理ＣＰＵやメモリ、論理ＦＣ−ＨＢＡなどの論理資源（１２０２）の状態に関する情報を、デバイス・メモリ情報と呼ぶことにする。
【００３１】
以下図２、図３を参照して、ＬＰＡＲ１１２を稼働した状態で移行先に動作を引き継がせる処理全体において、どのようにしてＦＣのログイン処理を移行先でＯＳが動作する前に予め行っておき、ＯＳ動作後直ちにＬＵ１３４にアクセスを可能とするのかについて、概要を説明する。
【００３２】
（Ｓ２０１）Ｕser Interface１０１を通じて、Ｍｉｇｒａｔｉｏｎ  Ｍａｎａｇｅｍｅｎｔ  Ｓｅｒｖｅｒ（ＭＭＳ）（１０２）から移行元及び移行先のＳｈａｄｏｗ  ＬＰＡＲ（１１３、２１３）にマイグレーション開始要求が来る。
【００３３】
（Ｓ２０２、Ｓ２０３）移行元及び移行先のＳｈａｄｏｗ  ＬＰＡＲ（１１３、２１３）が移行元及び移行先のハイパーバイザ（１１４、２１４）に対し、ＷＷＮの取得要求を出す。
【００３４】
（Ｓ２０４、Ｓ２０５）すると、ハイパーバイザ（１１４、２１４）は、移行元/移行先のＷＷＮを応答として返す。
【００３５】
（Ｓ２０６）移行元Ｓｈａｄｏｗ  ＬＰＡＲは移行元ＬＰＡＲ１１２に割り当てられているＷＷＮ（VfcWWN1、VfcWWN2）を取得する。
【００３６】
（Ｓ２０７）移行先Ｓｈａｄｏｗ  ＬＰＡＲは移行先ＬＰＡＲ２１２に割り当てられているＷＷＮ（VfcWWN3、VfcWWN4）を取得する。
【００３７】
（Ｓ２０８）移行元のＳｈａｄｏｗ  ＬＰＡＲ１１３が、移行先のＳｈａｄｏｗ  ＬＰＡＲ２１３に移行先のＷＷＮ取得要求を出す。
【００３８】
（Ｓ２０９）すると、移行先のＳｈａｄｏｗ  ＬＰＡＲ２１３は、移行元のＳｈａｄｏｗ  ＬＰＡＲ１１３に、移行先のＷＷＮを応答として返す。
【００３９】
（Ｓ２１０）移行元Ｓｈａｄｏｗ  ＬＰＡＲ１１３は、移行先Ｓｈａｄｏｗ  ＬＰＡＲ２１３からＷＷＮ（VfcWWN3、VfcWWN4）を取得する。
【００４０】
（Ｓ２１１）同様にして、移行先のＳｈａｄｏｗ  ＬＰＡＲ２１３が、移行元のＳｈａｄｏｗ  ＬＰＡＲ１１３にＷＷＮ取得要求を出す。
【００４１】
（Ｓ２１２）すると、移行元のＳｈａｄｏｗ  ＬＰＡＲ１１３は、移行先のＳｈａｄｏｗ  ＬＰＡＲ２１３に対し、移行元のＷＷＮを転送する。
【００４２】
（Ｓ２１３）移行元Ｓｈａｄｏｗ  ＬＰＡＲ１１３から移行元のＷＷＮ（VfcWWN1、VfcWWN2）を受け取った移行先Ｓｈａｄｏｗ  ＬＰＡＲ２１３は、移行先のハイパーバイザ２１４に対してＷＷＮの変更要求を行う。
【００４３】
（Ｓ２１４）次に、ＷＷＮの変更要求を受けたハイパーバイザ２１４は、ＬＰＡＲ２１３に割りあてられるＷＷＮを移行先で割り当てられていたＷＷＮ（VfcWWN3、VfcWWN4）から、移行元で割り当てられていたＷＷＮ（VfcWWN1、VfcWWN2）に、変更する。
【００４４】
（Ｓ２１５）移行元Ｓｈａｄｏｗ  ＬＰＡＲ１１３は、移行元のＷＷＮを転送する（Ｓ２１２）と、移行先で仮Ａｃｔｉｖａｔｅを行うまでに取得しておく必要がある構成情報（１２０３）の取得要求を、ハイパーバイザ１１４に出す。
【００４５】
（Ｓ２１６）移行元のハイパーバイザ１１４は、構成情報（１２０３）を取得する。
【００４６】
（Ｓ２１７）次に、構成情報を受け取った移行元Ｓｈａｄｏｗ  ＬＰＡＲ１１３は、移行先Ｓｈａｄｏｗ  ＬＰＡＲ２１３に、構成情報（１２０３）を転送する。
【００４７】
（Ｓ２１８）これを受け取った移行先Ｓｈａｄｏｗ  ＬＰＡＲ２１３は、移行先ハイパーバイザ２１４に、構成情報（１２０３）の反映を要求する。
【００４８】
（Ｓ２１９）要求を受けたハイパーバイザ２１４は、構成情報（１２０３）を、ハイパーバイザ２１４に反映させる。
【００４９】
（Ｓ２２０）移行元Ｓｈａｄｏｗ  ＬＰＡＲ１１３は、構成情報（１２０３）を転送後、移行先Ｓｈａｄｏｗ  ＬＰＡＲ２１３に対し、論理デバイスを生成し、移行先ＬＰＡＲ２１２の論理ＣＰＵのリスタート要求がくるまで論理ＣＰＵをサスペンドさせておく仮Ａｃｔｉｖａｔｅ要求を、転送する。
【００５０】
（Ｓ２２１）仮Ａｃｔｉｖａｔｅ要求を受けたＳｈａｄｏｗ  ＬＰＡＲ２１３は、移行先のハイパーバイザ２１４に対し、仮Ａｃｔｉｖａｔｅ要求を行う。
【００５１】
（Ｓ２２２）仮Ａｃｔｉｖａｔｅ要求を受けたハイパーバイザ２１４は、移行先ＬＰＡＲ２１２の仮Ａｃｔｉｖａｔｅ処理を開始する。
【００５２】
（Ｓ２２３）移行先ハイパーバイザ２１４の仮Ａｃｔｉｖａｔｅ処理が完了すると、移行先ＬＰＡＲ２１２は仮Ａｃｔｉｖａｔｅ状態（論理ＣＰＵがリスタートを待ってサスペンドしている状態）となる。
【００５３】
（Ｓ２２４）仮Ａｃｔｉｖａｔｅ要求を転送した移行元Ｓｈａｄｏｗ  ＬＰＡＲ１１３は、ＦＣ−ＨＢＡ１１７のポートがログアウト（リンク２ログアウト）するように要求を出す。
【００５４】
（Ｓ２２５）ＦＣ−ＨＢＡ１１７のログアウト要求を受けた移行元ハイパーバイザ１１４は、ＦＣ−ＨＢＡ１１７のファームウェアに対し、リンク２ログアウト要求を出す。
【００５５】
（Ｓ２２６）ＦＣ−ＨＢＡ１１７のファームウェアによりリンク２ログアウト処理が実行される。
【００５６】
（Ｓ２２７）ハイパーバイザ１１４からＦＣ−ＨＢＡ１１７のリンク２ログアウト要求の応答が返ってきたら、移行元Ｓｈａｄｏｗ  ＬＰＡＲ１１３は、移行先のＳｈａｄｏｗ  ＬＰＡＲ２１３に、ＦＣ−ＨＢＡ１１７のリンク２ログアウト完了報告を転送する。
【００５７】
（Ｓ２２８）ＦＣ−ＨＢＡ１１７のログアウト完了報告を受けた移行先のＳｈａｄｏｗ  ＬＰＡＲ２１３は、移行先ハイパーバイザ２１４に対して、ＦＣ−ＨＢＡ２１７のリンク２’ログイン要求を出す。
【００５８】
（Ｓ２２９）ＦＣ−ＨＢＡ２１７のＦＣログイン要求を受けた移行先ハイパーバイザ２１４は、ＦＣ−ＨＢＡ２１７のファームウェアに対してリンク２’ログイン処理要求を出す。
【００５９】
（Ｓ３０１）ログイン処理を受けたＦＣ−ＨＢＡ２１７のファームウェアは、ＦＣ−ＨＢＡ２１７のリンク２’ログイン処理を実行する。
【００６０】
（Ｓ３０２）移行先でＦＣ−ＨＢＡ２１７のログイン処理の実行中、移行元Ｓｈａｄｏｗ  ＬＰＡＲ（１１３）は、移行元のハイパーバイザ１１４に対し、ＬＰＡＲ１１２に割り当てられたデバイスの状態やメモリに関するデバイス・メモリ情報（１２０２）を取得するように要求する。
【００６１】
（Ｓ３０３）移行元のハイパーバイザ１１４は、デバイス・メモリ情報（１２０２）を取得する。
【００６２】
（Ｓ３０４）デバイス・メモリ情報（１２０２）を取得した移行元のＳｈａｄｏｗ  ＬＰＡＲ１１３は、移行先のＳｈａｄｏｗ  ＬＰＡＲに２１３に取得したデバイス・メモリ情報（１２０２）を転送する。
【００６３】
（Ｓ３０５）デバイス・メモリ情報（１２０２）を取得した移行先のＳｈａｄｏｗ  ＬＰＡＲ２１３は、ハイパーバイザ２１４にデバイス・メモリ情報（１２０２）の反映要求を行う。
【００６４】
（Ｓ３０６）反映要求を受けた移行先ハイパーバイザ２１４は、デバイス・メモリ情報（１２０２）の反映を行う。
【００６５】
（Ｓ３０７）デバイス・メモリ情報（１２０２）の反映後、ＦＣ−ＨＢＡ２１７のファームウェアの応答が返っていない場合は、応答を待つ。そして、応答が返ってきた後、移行先ハイパーバイザ２１４は、ＦＣ−ＨＢＡ２１７のリンク２’ログイン完了を移行先Ｓｈａｄｏｗ  ＬＰＡＲ２１３に知らせる。
【００６６】
（Ｓ３０８）ＦＣ−ＨＢＡ２１７のログイン完了を知った移行先Ｓｈａｄｏｗ  ＬＰＡＲ２１３は、マルチパス制御部１２０に対して、移行元ＦＣ−ＨＢＡ１１７とＬＵ１３４とのパスをOnlineと認識させるため、移行元Ｓｈａｄｏｗ  ＬＰＡＲ１１３にOnline要求を転送する。ただし、移行元ＦＣ−ＨＢＡ１１７は、Ｓ２２６でリンク２ログアウトしており、物理的にはＦＣ−ＨＢＡ１１７とＬＵ１３４とのパス（リンク２）は接続されていない。
【００６７】
（Ｓ３０９）移行先Ｓｈａｄｏｗ  ＬＰＡＲ２１３から、ＦＣ−ＨＢＡ１１７とＬＵ１３４とのパスに関するOnline要求を受信した移行元Ｓｈａｄｏｗ  ＬＰＡＲ１１３は、移行元ハイパーバイザ１１４に対し、ＦＣ−ＨＢＡ１１７とＬＵ１３４とのパスを、Onlineにするように要求する。これは、移行元のマルチパス制御部１２０が、移行先ＦＣ−ＨＢＡ２１７に対応する移行元ＦＣ−ＨＢＡ１１７とＬＵ１３４とのパスがOnlineであることを認識していないと、マルチパス制御部１２０が移行されてなる移行先のマルチパス制御部２２０は、ＦＣ−ＨＢＡ２１７とＬＵＬ１３４とのパスがOfflineであるとみなし、ＬＵ１３４に対してアクセスしてこないためである。
【００６８】
なお、マルチパス制御部１２０が移行されてなるマルチパス制御部２２０は、ＬＰＡＲ１がＬＰＡＲ２へ移行する際に一緒に移行して、動作を継続する。マルチパス制御ソフトウェアはＯＳに組み込まれてディスクに存在し、メモリ上に展開される。このため、ＬＰＡＲ１のマルチパス制御部１２０は、メモリ転送が行われているＳ３０４や差分情報を転送しているＳ３１４の際に、ＬＰＡＲ２へ移動する。ただし、マルチパス制御部２２０が動き出すのは、移行先ＬＰＡＲ２１２の論理ＣＰＵがリスタートしてからとなる。
【００６９】
（Ｓ３１０）ＦＣ−ＨＢＡ１１７とＬＵ１３４とのパスに関するOnline要求を受けた移行元ハイパーバイザ１１４は、マルチパス制御部１２０がパスの監視を行いにきた際に、Online処理を行う。
【００７０】
（Ｓ３１１）Ｓ３１０のOnline処理後、ＦＣ−ＨＢＡ１１７とＬＵ１３４とのパスがOnlineとなる。（マルチパス制御部１２０は定期的にパスの状態を監視している。したがってOnline処理とは、この状態監視時に適切な応答を返す処理となる。）適切な応答が返った後に、マルチパス制御部１２０のフェイルバック機能により、ＦＣ−ＨＢＡ１１７とＬＵ１３４とのパスがOnlineとなる。ただし、移行元ではＦＣ−ＨＢＡ１１７は物理的にはログアウトしたままの状態である(同じＷＷＮで、移行元と移行先が、両方ログインすることはできない)。
【００７１】
Ｓ３１０のOnline処理後、マルチパス制御部１２０からは、ＦＣ−ＨＢＡ１１７とＬＵ１３４とのパスがOnlineに見えるため、移行元がＤｅａｃｔｉｖａｔｅするまでの間に、ディスクアクセスされる可能性がある。
【００７２】
このように、マルチパス制御部１２０の状態監視時に適切な応答返す処理、ＦＣ−ＨＢＡ１１７とＬＵ１３４とのパスのOnline後に、マルチパス制御部１２０がディスクアクセスしてきた際の処理については、図５、図６にて説明する。
【００７３】
（Ｓ３１２）移行元ハイパーバイザ１１４より、ＦＣ−ＨＢＡ１１７とＬＵ１３４とのパスに関するOnline要求の応答を受け取った移行元Ｓｈａｄｏｗ  ＬＰＡＲ１１３は、移行元ハイパーバイザ１１４に対し、転送元のデバイス・メモリ情報１２０２の転送後に移行元ＬＰＡＲで変更が出てきた差分情報の取得要求を出す。
【００７４】
（Ｓ３１３〜Ｓ３１６）差分情報の取得要求を受けた移行元ハイパーバイザ１１４は、差分情報の量が一定以下になるまで、差分情報を取得する。差分情報を受け取った移行元Ｓｈａｄｏｗ  ＬＰＡＲ１１３は、移行先Ｓｈａｄｏｗ  ＬＰＡＲ２１３に転送する。差分情報を受け取った移行先Ｓｈａｄｏｗ  ＬＰＡＲ２１３は、移行先ハイパーバイザ２１４に対し、差分情報の反映要求を行う。
【００７５】
移行先Ｓｈａｄｏｗ  ＬＰＡＲ２１３から差分情報の反映要求を受けた移行先ハイパーバイザ１１４は、差分情報の反映を行う。移行元ハイパーバイザ１１４は、差分情報量が一定以下になったら移行元ＬＰＡＲ１１２に割り当てられた論理ＣＰＵをストップさせ、残りの差分情報を取得する。残りの差分情報を取得した移行元Ｓｈａｄｏｗ  ＬＰＡＲ１１３は、取得した情報を移行先Ｓｈａｄｏｗ  ＬＰＡＲ２１３に転送する。移行先ハイパーバイザ２１４は、残りの差分情報を反映させる。
【００７６】
なお、移行元ＬＰＡＲ１１２に割り当てられた論理ＣＰＵのストップの直前から、ＬＵ１３４とＦＣ−ＨＢＡ１１６とのパスを使用してきたディスクアクセス及び定期監視に対しては、ＬＵ１３４とＦＣ−ＨＢＡ１１６とのパスがOfflineであるとの応答を返し、マルチパス制御部１２０に対してはofflineと認識させる。
【００７７】
ＬＵ１３４とＦＣ−ＨＢＡ１１６とのパスをOfflineと認識させるには、例えばＭＭＩＯに値をセットし、ドライバに対し、割り込みをあげることにより、ドライバにOfflineであるとの応答を返してもらうことができる。
【００７８】
（Ｓ３１７）移行先ハイパーバイザ２１４から差分情報の反映完了通知を受けた移行先Ｓｈａｄｏｗ  ＬＰＡＲ２１３は、移行先ハイパーバイザ２１４に対し、サスペンドさせておいた論理ＣＰＵをリスタートさせるように、移行先ＬＰＡＲのリスタート要求を出す。
【００７９】
（Ｓ３１８）リスタート要求を受けた移行先のハイパーバイザ２１４は、移行先ＬＰＡＲ２１２をリスタートさせる。
【００８０】
（Ｓ３１９）移行先ＬＰＡＲ２１２は、論理ＣＰＵがリスタートし、ＯＳの動作を再開させる。
【００８１】
（Ｓ３２０）差分情報の転送後、移行元Ｓｈａｄｏｗ  ＬＰＡＲ１１３は、ＦＣ−ＨＢＡ１１６のポートがリンク１ログアウトするように要求を出す。
【００８２】
（Ｓ３２１）ログアウト要求を受けた移行元ハイパーバイザ１１４は、ＦＣ−ＨＢＡ１１６のファームウェアに対し、リンク１ログアウト要求を出す。
【００８３】
（Ｓ３２２）ログアウト要求を受けたＦＣ−ＨＢＡ１１６のファームウェアは、リンク１ログアウト処理を実行する。
【００８４】
（Ｓ３２３）ハイパーバイザ１１４からログアウト要求の応答が返ってきたら、移行元Ｓｈａｄｏｗ  ＬＰＡＲ１１３は、移行先のＳｈａｄｏｗ  ＬＰＡＲ２１３に、ＦＣ−ＨＢＡ１１６のリンク１ログアウト完了報告を転送する。
【００８５】
（Ｓ３２４）ＦＣ−ＨＢＡ１１６のログアウト完了報告を受けた移行先のＳｈａｄｏｗ  ＬＰＡＲ２１３は、移行先ハイパーバイザ２１４に対してＦＣ−ＨＢＡ２１６のリンク１’ログイン要求を出す。
【００８６】
（Ｓ３２５）ＦＣログイン要求を受けた移行先ハイパーバイザ２１４は、ＦＣ−ＨＢＡ２１６のファームウェアに対して、ＦＣ−ＨＢＡ２１６のリンク１’ログイン処理要求を出す。
【００８７】
（Ｓ３２６）ログイン処理要求を受けたＦＣ−ＨＢＡ２１６のファームウェアは、リンク１’ログイン処理を実行する。マルチパス制御部２２０による定期監視とフェイルバックにより、ログイン完了後は、自動的にＬＵ１３４とＦＣ−ＨＢＡ２１６とのパス（リンク１’）が、Online状態となる。
【００８８】
（Ｓ３２７）ログアウト完了報告後、移行元のＳｈａｄｏｗ  ＬＰＡＲ１１３は、移行元のハイパーバイザ１１４に、ＬＰＡＲ１１２のＤｅａｃｔｉｖａｔｅ要求を出す。
【００８９】
（Ｓ３２８）Ｄｅａｃｔｉｖａｔｅ要求を受けたハイパーバイザ１１４は、ＬＰＡＲ１１２をＤｅａｃｔｉｖａｔｅさせる。
【００９０】
（Ｓ３２９）ＬＰＡＲ１１２は、Ｄｅａｃｔｉｖａｔｅされる。
【００９１】
（Ｓ３３０）Ｓ３２５のログイン要求後、移行先Ｓｈａｄｏｗ  ＬＰＡＲ２１３は、構成情報を保存し、保存完了後、転送元Ｓｈａｄｏｗ  ＬＰＡＲ１１３に対して構成情報保存完了報告を行う。
【００９２】
（Ｓ３３１）移行先の構成情報保存完了報告を受けた移行元のＳｈａｄｏｗ  ＬＰＡＲ１１３は、ハイパーバイザ１１４に対して、移行元のＷＷＮの変更要求を出す。
【００９３】
（Ｓ３３２）要求を受けたハイパーバイザ１１４は、移行元ＬＰＡＲ１１３に割り当てられるＷＷＮを、元々移行先で割り当てられていたＷＷＮ（VfcWWN3、VfcWWN4）に変更する。
【００９４】
（Ｓ３３３）ＷＷＮの変更後、移行元のＳｈａｄｏｗ  ＬＰＡＲは、ハイパーバイザ１１４に対して、ＬＰＡＲ１１２のＬＰＡＲ定義取り消し要求を出す。
【００９５】
（Ｓ３３４）要求を受けたハイパーバイザ１１４は、ＬＰＡＲ１１２の定義を取り消す。
【００９６】
（Ｓ３３５）ＬＰＡＲ１１２のＬＰＡＲ定義が取り消されたことを知った移行元Ｓｈａｄｏｗ  ＬＰＡＲ１１３は、移行先のＳｈａｄｏｗ  ＬＰＡＲ２１３に対して、ＬＰＡＲ定義取り消し完了報告を転送する。
【００９７】
（Ｓ３３６）ＬＰＡＲ定義取り完了報告を受けた移行先Ｓｈａｄｏｗ  ＬＰＡＲ２１３は、転送元Ｓｈａｄｏｗ  ＬＰＡＲ１１３に対し、ＬＰＡＲ定義取り消し完了報告を受信したことを知らせる。
【００９８】
（Ｓ３３７）移行先Ｓｈａｄｏｗ  ＬＰＡＲからのＬＰＡＲ定義取り消し完了報告を受信したことを知らされた移行元Ｓｈａｄｏｗ  ＬＰＡＲ１１３は、構成情報を保存し、保存完了後に転送先Ｓｈａｄｏｗ  ＬＰＡＲ２１３に対して、構成情報保存完了報告を転送する。
【００９９】
（Ｓ３３８）移行元Ｓｈａｄｏｗ  ＬＰＡＲ１１３から構成情報保存完了報告を受けた移行先Ｓｈａｄｏｗ  ＬＰＡＲ２１３は、転送元Ｓｈａｄｏｗ  ＬＰＡＲ１１３に対し、構成情報保存完了報告を受信したことを知らせる。
【０１００】
（Ｓ３３９）移行元Ｓｈａｄｏｗ  ＬＰＡＲ１１３に構成情報保存完了報告を受けたこと知らせたＳｈａｄｏｗ  ＬＰＡＲ２１３は、ＭＭＳ１０２に対してＭｉｇｒａｔｉｏｎ完了報告を行う。
【０１０１】
（Ｓ３４０）移行先Ｓｈａｄｏｗ  ＬＰＡＲ２１３が構成情報保存完了報告を受信したことを知った、移行元Ｓｈａｄｏｗ  ＬＰＡＲ１１３は、ＭＭＳ１０２に対してＭｉｇｒａｔｉｏｎ完了報告を行う。
【０１０２】
（Ｓ３４１）移行元および移行先のＳｈｄｏｗ  ＬＰＡＲからＭｉｇｒａｔｉｏｎ完了報告を受けたＭＭＳは、Ｍｉｇｒａｔｉｏｎを完了させる。
【０１０３】
図４において、移行元ＬＰＡＲ１１２に接続されたＦＣ−ＨＢＡ１１６、ＦＣ−ＨＢＡ１１７と、移行先ＬＰＡＲ２１２に接続されたＦＣ−ＨＢＡ２１６、ＦＣ−ＨＢＡ２１７とＬＵ１３４との物理的な接続（図４中の「物理」）及びマルチパス制御部１２０及び２２０から見えるパスの接続状態（図４中の「マルチパス制御部上」）の移り変わりを説明する。
【０１０４】
Ｔ０(Ｓ２０１〜Ｓ２２４)は、初期状態である。初期状態では移行元のＦＣ−ＨＢＡ１１６、１１７にＬＵ１３４が接続された状態である。
【０１０５】
Ｔ１(Ｓ２２５〜Ｓ３０１の処理が終わるまで)は、移行開始後にＦＣ−ＨＢＡ１１７のファームウェアがログアウト処理を行い（Ｓ２２６）、移行先でログイン処理が終わるまでの期間であり、この時は移行元のＦＣ−ＨＢＡ１１６のみがＬＵ１３４に接続された状態となる。
【０１０６】
Ｔ２(Ｓ３０１の処理完了後〜Ｓ３０９）は、移行先でログイン処理が完了した後から、移行元ハイパーバイザ１１４がOnline処理を行う(Ｓ３１０)の前までの期間であり、この時は、移行元のＦＣ−ＨＢＡ１１６と移行先のＦＣ−ＨＢＡ２１７とが、ＬＵ１３４に接続された状態となる。ただし、移行先では論理ＣＰＵが動いていないため、マルチパス制御部１２０は動かないので、マルチパス制御部１２０上は×と記載した。
【０１０７】
Ｔ３（Ｓ３１０〜Ｓ３１２）は、移行元ハイパーバイザ１１４が、ＬＵ１３４とＦＣ−ＨＢＡ１１７とのパスのOnline処理をしてから移行元の論理ＣＰＵをＳＴＯＰさせる直前に、ＬＵ１３４とＦＣ−ＨＢＡ１１６とのパス及びＬＵ１３４とＦＣ−ＨＢＡ１１７とのパスに対して、Offline処理をするまでの期間である。移行後にＬＰＡＲ２１２のマルチパス制御部２２０がＦＣ−ＨＢＡ２１７とＬＵ１３４とのパスを使用してくるように、移行前にＦＣ−ＨＢＡ１１７とＬＵ１３４とのパスがOnlineであるかのように見せる。ただし、物理的にはログアウトした状態である。Ｔ２の状態から、マルチパス制御部１２０上から見えるＦＣ−ＨＢＡ１１７とＬＵ１３４とのパスの状態が、Onlineに変化している。
【０１０８】
Ｔ４(Ｓ３１３〜Ｓ３１８)は、論理ＣＰＵをＳＴＯＰさせる直前に、ＬＵ１３４とＦＣ−ＨＢＡ１１６とのパスに対して、Offline処理をしてから移行先のＬＰＡＲをリスタートとさせるまでの、期間である。Ｔ３の状態から、マルチパス制御部１２０上から見えるＦＣ−ＨＢＡ１１６とＬＵ１３４とのパスの状態が、Offlineに変化している。
【０１０９】
Ｔ５（Ｓ３１９〜Ｓ３２２）は、移行先ＬＰＡＲ２１２のリスタート後から、移行元のＦＣ−ＨＢＡ１１６のファームウェアがログアウト処理を行うまでの期間である。Ｔ４の状態から、移行先のマルチパス制御部２２０上から見えるＦＣ−ＨＢＡ２１７とＬＵ１３４とのパスの状態が、Onlineに変化している。なお、ＬＰＡＲ１のマルチパス制御部１２０は移行されて、ＬＰＡＲ２１２のマルチパス制御部２２０となったので、移行元の「マルチパス制御部上」はＴ５以降×とした。
【０１１０】
Ｔ６（Ｓ３２３〜Ｓ３２６の処理が完了するまで）は、移行元のＦＣ−ＨＢＡ１１６のファームウェアがログアウト処理を行った後、移行先でＦＣ−ＨＢＡ２１６のファームウェアがログイン処理を実行し、ログインを完了するまでの期間である。Ｔ５の状態から、移行元のＦＣ−ＨＢＡ１１６とＬＵ１３４との物理的な接続が、Logoutに変化している。
【０１１１】
Ｔ７（Ｓ３２６処理完了後）は、移行先のマルチパス制御部２２０の、フィエイルバック処理が行われるまでの期間である。Ｔ５の状態から、移行元のＦＣ−ＨＢＡ２１６とＬＵ１３４との物理的な接続が変化し、ＦＣ−ＨＢＡ２１６がログインしている。
【０１１２】
Ｔ８は、移行先のマルチパス制御部２２０の、フィエイルバック処理後の期間である。移行先のＦＣ−ＨＢＡ２１６とＬＵ１３４とのパスに関し、マルチパス制御部２２０の認識が、Ｔ７の状態からOnlineの状態に変化している。
【０１１３】
図５において、図３のＳ３１０のOnline処理完了後に、ＯＳがＬＵ１３４に書き込もうとしてきた際の動きについて説明する。なお、図５、図６の「Ｓｒｃ」は転送元、「Ｄｓｔ」は転送先を意味する。また、ＦＷは、ＦＣ−ＨＢＡのファームウェアを意味する。また、ドライバはＦＣ−ＨＢＡドライバであり、Ｈｙｐｅｒはハイパーバイザであり、ＳｈａｄｏｗはＳｈａｄｏｗ  ＬＰＡＲである。
【０１１４】
（Ｓ５０１）移行元ＬＰＡＲ１１２のドライバ１２１は、ＦＣ−ＨＢＡ１１７がＤｉｓｋ１３３とやりとりする際に必要な情報（アドレスやバイト数など。どのような情報が含まれるのかについては図７を参照。）や、そこへアクセスするためのアドレス、Ｗｒｉｔｅするデータをメモリ上にセットし、ＦＣ−ＨＢＡ１１７のファームウェアに対し、レジスタに値を書き込むことにより起動要求を出す。
【０１１５】
（Ｓ５０２）ＦＣ−ＨＢＡ１１７のファームウェアへの起動要求コマンドをトラップした移行元ハイパーバイザ１１４は、ドライバがメモリ上にセットした情報を、移行元Ｓｈａｄｏｗ  ＬＰＡＲ１１３に渡す。
【０１１６】
（Ｓ５０３）移行元Ｓｈａｄｏｗ  ＬＰＡＲ１１３は、受け取った情報を、移行先Ｓｈａｄｏｗ  ＬＰＡＲ２１３に転送する。
【０１１７】
（Ｓ５０４）転送元Ｓｈａｄｏｗ  ＬＰＡＲから情報を受け取ったＳｈａｄｏｗ  ＬＰＡＲは、移行先ハイパーバイザに対し、ＤＭＡ（Ｄｉｒｅｃｔ  Ｍｅｍｏｒｙ  Ａｃｃｅｓｓ）要求を出す。
【０１１８】
（Ｓ５０５）ＤＭＡ要求を受けた移行先ハイパーバイザ２１４は、Ｓｈａｄｏｗ  ＬＰＡＲ受け取った情報から図７の情報へアクセスするアドレスを調べ、図７の情報から書き込むデータのアドレスや読み込み/書き込みを調べた後、図７の情報やそのアドレス、書き込みデータを調べたメモリの位置にセットし、移行先ＦＣ−ＨＢＡ２１７のファームウェアに対してレジスタに値を書き込むことにより起動要求を出す。
【０１１９】
（Ｓ５０６）起動要求を受けた移行先ＦＣ−ＨＢＡ２１７のファームウェアは、図７の情報を元にＤｉｓｋ１３３に対し、コマンドを投げる。
【０１２０】
（Ｓ５０７）コマンドを受けたＤｉｓｋ１３３は、準備完了したことを伝える応答を、移行先ＦＣ−ＨＢＡ２１７のファームウェアに返す。
【０１２１】
（Ｓ５０８）この応答後移行元から転送されてきたデータが、Ｄｉｓｋ１３３のＬＵ１３４に、書き込まれる。
【０１２２】
（Ｓ５０９）ＬＵ１３４への書き込み完了後、Ｄｉｓｋ１３３から移行先ＦＣ−ＨＢＡ２１７のファームウェアに対して、応答が返ってくる。
【０１２３】
（Ｓ５１０）応答を受け取った移行先ＦＣ−ＨＢＡ２１７のファームウェアは、移行先ＬＰＡＲ２１２のドライバ２２１に対して、応答を返す。
【０１２４】
（Ｓ５１１）応答をトラップした移行先ハイパーバイザ２１４は、この応答及び応答のアドレスを、移行先Ｓｈａｄｏｗ  ＬＰＡＲ２１３に渡す。
【０１２５】
（Ｓ５１２）応答を受け取った移行先Ｓｈａｄｏｗ  ＬＰＡＲ２１３は、応答及び応答のアドレスを、移行元Ｓｈａｄｏｗ  ＬＰＡＲ１１３に転送する。
【０１２６】
（Ｓ５１３）移行先からデータを受け取った移行元Ｓｈｄｏｗ  ＬＰＡＲ１１３は、移行元ハイパーバイザ１１４に対し、応答セット要求を出す。
【０１２７】
（Ｓ５１４）要求を受けた移行元ハイパーバイザ１１４は、応答を指定されたアドレスにセットし、移行元ドライバ１２１に応答を通知する割り込みを上げる。Ｓ３１３で移行元ＦＣ−ＨＢＡ１１７とＬＵ１３４とのパスがonlineになってから、ＦＣ−ＨＢＡ１１７とＬＵ１３４とのパスを用いたディスクアクセスが続く間、書き込み要求の度に図５の処理が繰り返される。
【０１２８】
図６において、図３のＳ３１０のＦＣ−ＨＢＡ１１７とＬＵ１３４とのパスに関するOnline処理完了後に、ＯＳがＬＵ１３４の情報の読み込みを行ってきた際の動きについて説明する。
【０１２９】
（Ｓ６０１）移行元ＬＰＡＲ１１２のドライバ１２１は、ＦＣ−ＨＢＡ１１７がＤｉｓｋ１３３とやりとりする際に必要な情報（アドレスやバイト数など。どのような情報が含まれるのかについては図７を参照。）やそこへアクセスするためのアドレスをメモリ上にセットし、ＦＣ−ＨＢＡ１１７のファームウェアに対し、レジスタに値を書き込むことにより起動要求を出す。
【０１３０】
（Ｓ６０２）起動をトラップした移行元ハイパーバイザ１１４は、ドライバがメモリ上にセットした情報を移行元Ｓｈａｄｏｗ  ＬＰＡＲ１１３に渡す。
【０１３１】
（Ｓ６０３）移行元Ｓｈａｄｏｗ  ＬＰＡＲ１１３は、受け取った情報を移行先Ｓｈａｄｏｗ  ＬＰＡＲ２１３に転送する。
【０１３２】
（Ｓ６０４）転送元Ｓｈａｄｏｗ  ＬＰＡＲから情報を受け取ったＳｈａｄｏｗ  ＬＰＡＲは、移行先ハイパーバイザに対し、ＤＭＡ要求を出す。
【０１３３】
（Ｓ６０５）ＤＭＡ要求を受けた移行先ハイパーバイザ２１４は、Ｓｈａｄｏｗ  ＬＰＡＲ受け取った情報から図７の情報へアクセスするアドレスを調べ、図７の情報から読み込むデータのアドレスや読み込み/書き込みを調べた後、図７の情報やそのアドレスを調べたメモリの位置にセットし、ＦＣ−ＨＢＡ２１７のファームウェアに対してレジスタに値を書き込むことにより起動要求を出す。
【０１３４】
（Ｓ６０６）起動をかけられた移行先ＦＣ−ＨＢＡ２１７のファームウェアは、図７の情報を元にＤｉｓｋ１３３に対し、コマンドを投げる。
【０１３５】
（Ｓ６０７）ＬＵ１３４の情報が、図７で指定されたメモリ上にストアされる。
【０１３６】
（Ｓ６０８）メモリへのストア完了後、Ｄｉｓｋ１３３から移行先ＦＣ−ＨＢＡ２１７のファームウェアに対して、応答が返ってくる。
【０１３７】
（Ｓ６０９）応答を受け取った移行先ＦＣ−ＨＢＡ２１７のファームウェアは、移行先ＬＰＡＲ２１２のドライバ２２１に対して、応答を返す。
【０１３８】
（Ｓ６１０）応答をトラップした移行先ハイパーバイザ２１４は、この応答及び応答のアドレス、読み込みデータを、移行先Ｓｈａｄｏｗ  ＬＰＡＲ２１３に渡す。
【０１３９】
（Ｓ６１１）読み込みデータ、応答そのアドレスを受け取った移行先Ｓｈａｄｏｗ  ＬＰＡＲ２１３は、読み込みデータ、応答及び応答のアドレスを移行元Ｓｈａｄｏｗ  ＬＰＡＲ１１３に、転送する。
【０１４０】
（Ｓ６１２）移行先からデータを受け取った移行元Ｓｈｄｏｗ  ＬＰＡＲ１１３は、移行元ハイパーバイザ１１４に対し、読み込みデータセット要求を出す。
【０１４１】
（Ｓ６１３）要求を受けた移行元ハイパーバイザ１１４は、読み込みデータ及び応答を指定されたアドレスにセットし、移行元のドライバ１２１に応答を通知する割り込みを上げる。Ｓ３１３で移行元ＦＣ−ＨＢＡ１１７とＬＵ１３４とのパスがonlineになってから、ＦＣ−ＨＢＡ１１７とＬＵ１３４とのパスを用いたディスクアクセスが続く間、読み込み要求の度に図６の処理が繰り返される。
【０１４２】
図７において、移行元ＬＰＡＲ１１２のドライバ１１２が、ＦＣ−ＨＢＡ１１７とＤｉｓｋ１３３がやりとりするようにメモリ上に設定する情報の内容を、説明する。
【０１４３】
移行元ＬＰＡＲ１１２のドライバ１１２は、ＬＵ１３４に書き込み又は読み込みする際に、送信先のファイバチャネルのポートアドレス、ＬＵ番号、Ｄｉｓｋへのコマンド、データ転送が行われるメモリアドレス、データ長、データの転送方向(Ｗｒｉｔｅ／Ｒｅａｄ)等の情報を、メモリ上のアドレスで指定した領域に書き込む。
【０１４４】
図８において、ＦＣ−ＨＢＡ２１７のファームウェアが移行先ＬＰＡＲ１１２のＯＳドライバに対して転送後に返す応答の内容について、説明する。
【０１４５】
ＦＣ−ＨＢＡ１１７のファームウェアは、転送後、正常終了や異常検出のような状態情報、障害要因を示すエラー情報、障害要因の詳細を示すエラーコード等を、メモリ上のアドレスで指定した領域に、応答として返す。
【０１４６】
図９において、移行先ハイパーバイザ２１４が、ＦＣ−ＨＢＡ２１７のファームウェアにログイン要求する際の詳細な流れを示す。なお、図９は、図２のＳ２２９、図３のＳ３０１の処理を詳細に説明したものである。
【０１４７】
（Ｓ９０１）移行先ハイパーバイザ２１４は、メモリ上にあるＬＰＡＲ２１２のドライバ２２１とＦＣ−ＨＢＡ２１７のファームウェアとのＷＷＮを通信する領域に、VfcWWN2をセットする。
【０１４８】
（Ｓ９０２）移行先ハイパーバイザ２１４は、ＬＰＡＲ２１２のＯＳドライバからの要求をＦＣ−ＨＢＡ２１７のファームウェアにセットするメモリ上の領域に、ＦＣスイッチ１３２へのログイン要求をセットする。
【０１４９】
（Ｓ９０３）移行先ハイパーバイザ２１４は、定められたＦＣのＭＭＩＯ（Ｍｅｍｏｒｙ  Ｍａｐｐｅｄ  Ｉｎｐｕｔ／Ｏｕｔｐｕｔ）領域に、ハイパーバイザ２１４が値を書き込むことで、ＦＣスイッチ１３２へのログイン要求をＦＣ−ＨＢＡ２１７のファームウェアに知らせる。
【０１５０】
（Ｓ９０４）要求を受けたＦＣ−ＨＢＡ２１７のファームウェアは、スイッチログインを実行する。
【０１５１】
（Ｓ９０５）ＦＣ−ＨＢＡ２１７のファームウェアは、スイッチログイン完了後、応答をメモリ上の応答領域にセットし、（Ｓ９０６）スイッチログインが完了したことを知らせる割り込みを発生させる。
【０１５２】
（Ｓ９０７）割り込みにより完了を知った移行先ハイパーバイザ２１４は、ＦＣ−ＨＢＡ２１７のファームウェアからの応答を調べ、エラー等が起こっていないことを確認する。
【０１５３】
（Ｓ９０８）その後、移行先ハイパーバイザ２１４は、ＦＣスイッチ１３２の先に接続されたＬＵ１３４へのログインを行える状態になるのを待ち、ＦＣスイッチ１３２への問い合わせ要求を前記ＦＣ−ＨＢＡ２１７のファームウェアへの要求領域にセットする。
【０１５４】
（Ｓ９０９）移行先ハイパーバイザ２１４は、ＭＭＩＯ領域の定められた領域に書き込むことで、問い合わせ要求をＦＣ−ＨＢＡ２１７のファームウェアに知らせる。
【０１５５】
（Ｓ９１０）要求を受けたＦＣ−ＨＢＡ２１７のファームウェアは、スイッチ１３２への問い合わせ完了後、（Ｓ９１１）前記応答領域に応答をセットし、（Ｓ９１２）問い合わせが完了したことを知らせる割り込みを、発生させる。
【０１５６】
（Ｓ９１３）割り込みにより完了を知ったハイパーバイザ２１４は、ＦＣ−ＨＢＡ２１７のファームウェアからの応答を調べ、エラー等が起こっていないことを確認する。
【０１５７】
（Ｓ９１４）移行先ハイパーバイザ２１４は、ＦＣスイッチ１３２の先に接続されたＬＵ１３４（ログインするターゲット）へのログインを行うためのターゲットログイン要求を、前記ＦＣ−ＨＢＡ２１７のファームウェアへの要求領域にセットした後、（Ｓ９１５）ＭＭＩＯの定められた領域に書き込むことでターゲットログイン要求をＦＣ−ＨＢＡ２１７に知らせる。
【０１５８】
（Ｓ９１６）要求を受けたＦＣ−ＨＢＡ２１７のファームウェアはターゲットログイン処理完了後、（Ｓ９１７）前記応答領域に応答をセットし、（Ｓ９１８）ターゲットログインが完了したことを知らせる割り込みを発生させる。
【０１５９】
（Ｓ９１９）割り込みにより完了を知ったハイパーバイザ２１４は、ＦＣ−ＨＢＡ２１７のファームウェアからの応答を調べ、エラー等が起こっていないことを確認する。
【０１６０】
図１０において、前記ファームウェアへの要求領域に書き込む内容について説明する。該要求領域は、コマンド・サブコマンドにより、前記スイッチログイン要求及びスイッチ問い合わせ要求、ターゲットログイン要求を判断する。要求領域のその他の箇所は、各要求に必要な情報を、設定する。
【０１６１】
図１１において、前記ファームウェアへの応答領域に書き込む内容について、説明する。該応答領域はエラー情報、エラー番号、リトライ要求回数、前記コマンド、サブコマンドからなり、残りの箇所は前記コマンド、サブコマンド固有の情報が入る。
【符号の説明】
【０１６２】
１０１・・・Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ（ＵＩ）
１０２・・・Ｍｉｇｒａｔｉｏｎ  Ｍａｎｇｅｍｅｎｔ  Ｓｅｒｖｅｒ（ＭＭＳ）
１１１、２１１・・・サーバモジュール
１１４、２１４・・・ハイパーバイザ
１１２、２１２・・・ＬＰＡＲ
１１３、２１３・・・Ｓｈａｄｏｗ  ＬＰＡＲ
１１８、１１９、２１８、２１９・・・ＦＣ−ＨＢＡ
１１６、１１７、２１６、２１７・・・論理ＦＣ−ＨＢＡ
１３１、１３２・・・ＦＣ−Ｓｗｉｔｃｈ
１３３・・・ストレージ装置
１３４・・・ＬＵ
【図１】
0005463267.tif 000002
【図２】
0005463267.tif 000003
【図３】
0005463267.tif 000004
【図４】
0005463267.tif 000005
【図５】
0005463267.tif 000006
【図６】
0005463267.tif 000007
【図７】
0005463267.tif 000008
【図８】
0005463267.tif 000009
【図９】
0005463267.tif 000010
【図１０】
0005463267.tif 000011
【図１１】
0005463267.tif 000012
【図１２】
0005463267.tif 000013