(57)【要約】  Ｈｉｇｈ  Ａｖａｉｌａｂｉｌｉｔｙ（ＨＡ）構成を維持しながら、ＨＡペアの一方または両方の論理デバイスを他のストレージ装置に移行可能な計算機システムを提供する。第１のストレージ装置が有する第１の論理デバイスと、第２のストレージ装置が有する第２の論理デバイスで第１のＨＡペアを構成している場合、第３のストレージ装置で第１の論理デバイスを仮想化して第３のストレージ装置が有する第３の論理デバイスに対応づける。第４のストレージ装置は、第２の論理デバイスを仮想化して、第４のストレージ装置が有する第４の論理デバイスに対応づける。第３の論理デバイスと第４の論理デバイスで第２のＨＡペアを構成した後、第１の論理デバイスのデータを第３のストレージ装置に移行して、第３の論理デバイスのデータとして管理する。第２の論理デバイスのデータを第４のストレージ装置に移行して、第４の論理デバイスのデータとして管理する。
2016117040.tif 000002
【特許請求の範囲】
【請求項１】
論理デバイスに対応づけられた仮想デバイスを構成する記憶装置と、前記論理デバイスを管理するコントローラと、を有するストレージ装置を複数備える計算機システムにおけるデータの移行方法であって、
第１のストレージ装置が有する第１の論理デバイスと、第２のストレージ装置が有する第２の論理デバイスで第１のＨＡ（Ｈｉｇｈ  Ａｖａｉｌａｂｉｌｉｔｙ）ペアを構成している場合、
前記第１の論理デバイスを、第３のストレージ装置が有する第１の仮想デバイスとして仮想化し、前記第３のストレージ装置が有する第３の論理デバイスに前記第１の仮想デバイスを対応づけ、
前記第２の論理デバイスを、第４のストレージ装置が有する第２の仮想デバイスとして仮想化し、前記第４のストレージ装置が有する第４の論理デバイスに前記第２の仮想デバイスを対応づけるステップと、
前記第３のストレージ装置が有する前記第３の論理デバイスと、前記第４のストレージ装置が有する前記第４の論理デバイスで第２のＨＡペアを構成するステップと、
前記第２のＨＡペアを構成した後、前記第１のストレージ装置が有する前記第１の論理デバイスのデータを前記第３のストレージ装置に移行して、前記第３の論理デバイスのデータとして管理し、
前記第２のストレージ装置が有する前記第２の論理デバイスのデータを前記第４のストレージ装置に移行して、前記第４の論理デバイスのデータとして管理するステップと、
を有することを特徴とする
データの移行方法。
【請求項２】
前記ホスト計算機の入出力要求の発行先を、前記第１のストレージ装置が有する前記第１の論理デバイスから前記第３のストレージ装置が有する第３の論理デバイスに変更し、
前記ホスト計算機の入出力要求の発行先を、前記第２のストレージ装置が有する前記第２の論理デバイスから前記第４のストレージ装置が有する第４の論理デバイスに変更するステップを、
さらに有することを特徴とする請求項１のデータ移行方法。
【請求項３】
前記第３のストレージ装置が前記ホスト計算機から前記第３の論理デバイスに対するライト要求を受信すると、前記第３のストレージ装置が有するキャッシュメモリに前記ライト要求のライトデータを格納し、前記第１のストレージ装置の前記第１の論理デバイスに対してライトデータをデステージングするステップと、
前記第３のストレージ装置により、前記ライトデータを含む更新コピー要求を前記第４のストレージ装置に送信するステップと、
前記第４のストレージ装置により、受信した前記更新コピー要求のライトデータを、前記第２のストレージ装置の前記第２の論理デバイスに対してデステージングしないデータとして管理するステップと、
をさらに有することを特徴とする請求項２のデータ移行方法。
【請求項４】
前記第１のストレージ装置の前記第１の論理デバイスに対して前記ライトデータをデステージングするとき、
前記第１のストレージ装置により、前記第１のストレージ装置が有するキャッシュメモリに前記ライトデータを格納するステップと、
前記第１のストレージ装置により、前記ライトデータを含む更新コピー要求を前記第２のストレージ装置に送信するステップと、
前記第２のストレージ装置により、前記第２のストレージ装置が有するキャッシュメモリに前記ライトデータを格納するステップと、を実行し、
前記第１のストレージ装置により、前記第１のストレージ装置が有するキャッシュメモリに格納されたライトデータを、前記第１の論理デバイスに対応づけられた仮想デバイスを構成する記憶装置へデステージングする処理を非同期に実行し、
前記第２のストレージ装置により、前記第２のストレージ装置が有するキャッシュメモリに格納されたライトデータを、前記第２の論理デバイスに対応づけられた仮想デバイスを構成する記憶装置へデステージングする処理を非同期に実行する
ことを特徴とする請求項３のデータ移行方法。
【請求項５】
前記第４のストレージ装置が前記ホスト計算機から前記第４の論理デバイスに対するライト要求を受信すると、前記ライトデータを含む更新コピー要求を前記第３のストレージ装置に送信するステップと、
前記第３のストレージ装置により、受信した前記更新コピー要求のライトデータを、前記第１のストレージ装置の前記第１の論理デバイスに対してデステージングしないデータとして管理するステップと、
前記第４のストレージ装置により、前記第４のストレージ装置が有するキャッシュメモリに前記ライトデータを格納し、前記第２のストレージ装置の前記第２の論理デバイスに対して前記ライト要求のライトデータをデステージングするステップと、
をさらに有することを特徴とする請求項４のデータ移行方法。
【請求項６】
前記第２のストレージ装置の前記第２の論理デバイスに対して前記ライトデータをデステージングするとき、
前記第２のストレージ装置により、前記ライトデータを含む更新コピー要求を前記第１のストレージ装置に送信するステップと、
前記第１のストレージ装置により、前記第１のストレージ装置が有するキャッシュメモリに前記ライトデータを格納するステップと、
前記第２のストレージ装置により、前記第２のストレージ装置が有するキャッシュメモリに前記ライトデータを格納するステップと、を実行し、
前記第１のストレージ装置により、前記第１のストレージ装置が有するキャッシュメモリに格納されたライトデータを、前記第１の論理デバイスに対応づけられた仮想デバイスを構成する記憶装置へデステージングする処理を非同期に実行し、
前記第２のストレージ装置により、前記第２のストレージ装置が有するキャッシュメモリに格納されたライトデータを、前記第２の論理デバイスに対応づけられた仮想デバイスを構成する記憶装置へデステージングする処理を非同期に実行する
ことを特徴とする請求項５のデータ移行方法。
【請求項７】
前記第３のストレージ装置は、前記ホスト計算機から問合せ要求を受信すると、前記第２のＨＡペアの一方の前記第３の論理デバイスに関する応答を前記ホスト計算機に送信するステップと、
前記第４のストレージ装置は、前記ホスト計算機から問合せ要求を受信すると、前記第２のＨＡペアの他方の前記第４の論理デバイスに関する応答を前記ホスト計算機に送信ステップと、をさらに有し、
前記第３の論理デバイスに関する応答と前記第４の論理デバイスに関する応答は同一であることを特徴とする
請求項６のデータ移行方法。
【請求項８】
前記第１のストレージ装置は、前記ホスト計算機から問合せ要求を受信すると、前記第１のＨＡペアの一方の前記第１の論理デバイスに関する応答を前記ホスト計算機に送信するステップと、
前記第２のストレージ装置は、前記ホスト計算機から問合せ要求を受信すると、前記第１のＨＡペアの他方の前記第２の論理デバイスに関する応答を前記ホスト計算機に送信ステップと、をさらに有し、
前記第１の論理デバイスに関する応答と、前記第２の論理デバイスに関する応答と、前記第３の論理デバイスに関する応答と、前記第４の論理デバイスに関する応答は、同一であることを特徴とする
請求項７のデータ移行方法。
【請求項９】
前記第２のＨＡペアを構成した後、前記第３のストレージ装置により、前記第１のストレージ装置が有する前記第１の論理デバイスのデータを前記第３のストレージ装置に移行して、前記第３の論理デバイスのデータとして管理し、
前記第４のストレージ装置により、前記第２のストレージ装置が有する前記第２の論理デバイスのデータを前記第４のストレージ装置に移行して、前記第４の論理デバイスのデータとして管理することで、
前記第１のストレージ装置と前記第２のストレージ装置の前記第１のＨＡペアから、前記第３のストレージ装置と前記第４のストレージ装置の前記第２のＨＡペアへ、ＨＡペアの移行を行うことを特徴とする
請求項１のデータ移行方法。
【請求項１０】
論理デバイスに対応づけられた仮想デバイスを構成する記憶装置と、前記論理デバイスを管理するコントローラと、を有するストレージ装置を複数備える計算機システムにおけるデータの移行方法であって、
第１のストレージ装置が有する第１の論理デバイスと、第２のストレージ装置が有する第２の論理デバイスで第１のＨＡ（Ｈｉｇｈ  Ａｖａｉｌａｂｉｌｉｔｙ）ペアを構成している場合、
前記第１の論理デバイスを、第３のストレージ装置が有する第１の仮想デバイスとして仮想化し、前記第３のストレージ装置が有する第３の論理デバイスに前記第１の仮想デバイスを対応づけ、
前記第２の論理デバイスを、前記第２のストレージ装置が有する第２の仮想デバイスとして仮想化し、前記第２のストレージ装置が有する第４の論理デバイスに前記第２の仮想デバイスを対応づけるステップと、
前記第３のストレージ装置が有する前記第３の論理デバイスと、前記第２のストレージ装置が有する前記第４の論理デバイスで第２のＨＡペアを構成するステップと、
前記第２のＨＡペアを構成した後、前記第１のストレージ装置が有する前記第１の論理デバイスのデータを前記第３のストレージ装置に移行して、前記第３の論理デバイスのデータとして管理し、
前記第２のストレージ装置が有する前記第２の論理デバイスのデータを、前記第４の論理デバイスのデータとして管理するステップと、
を有することを特徴とするデータの移行方法。
【請求項１１】
前記ホスト計算機の入出力要求の発行先を、前記第１のストレージ装置が有する前記第１の論理デバイスから前記第３のストレージ装置が有する第３の論理デバイスに変更し、
前記ホスト計算機の入出力要求の発行先を、前記第２のストレージ装置が有する前記第２の論理デバイスから第４の論理デバイスに変更するステップを、
さらに有することを特徴とする請求項１０のデータ移行方法。
【請求項１２】
前記第３のストレージ装置が前記ホスト計算機から前記第３の論理デバイスに対するライト要求を受信すると、前記第３のストレージ装置が有するキャッシュメモリに前記ライト要求のライトデータを格納し、前記第１のストレージ装置の前記第１の論理デバイスに対してライトデータをデステージングするステップと、
前記第３のストレージ装置により、前記ライトデータを含む更新コピー要求を前記第２のストレージ装置に送信するステップと、
前記第２のストレージ装置により、受信した前記更新コピー要求のライトデータを、前記第２のストレージ装置の前記第２の論理デバイスに対してデステージングしないデータとして管理するステップと、
をさらに有することを特徴とする請求項１１のデータ移行方法。
【請求項１３】
論理デバイスに対応づけられた仮想デバイスを構成する記憶装置と、前記論理デバイスを管理するコントローラと、を有するストレージ装置を複数備える計算機システムであって、
第１の論理デバイスを有する第１のストレージ装置と、
前記第１の論理デバイスと第１のＨＡ（Ｈｉｇｈ  Ａｖａｉｌａｂｉｌｉｔｙ）ペアを構成する第２の論理デバイスを有する第２のストレージ装置と、
前記第１の論理デバイスを仮想化した第１の仮想デバイスと、前記第１の仮想デバイスに対応づけられた第３の論理デバイスと、を有する第３のストレージ装置と、
前記第２の論理デバイスを仮想化した第２の仮想デバイスと、前記第２の仮想デバイスに対応づけられた第４の論理デバイスと、を有する第４のストレージ装置と、を備え、
前記第３のストレージ装置と前記第４のストレージ装置は、前記第３のストレージ装置が有する前記第３の論理デバイスと、前記第４のストレージ装置が有する前記第４の論理デバイスで第２のＨＡペアを構成し、
前記第２のＨＡペアを構成した後、前記第３のストレージ装置は、前記第１のストレージ装置が有する前記第１の論理デバイスのデータを前記第３のストレージ装置に移行して、前記第３の論理デバイスのデータとして管理し、
前記第２のＨＡペアを構成した後、前記第４のストレージ装置は、前記第２のストレージ装置が有する前記第２の論理デバイスのデータを前記第４のストレージ装置に移行して、前記第４の論理デバイスのデータとして管理する
ことを特徴とする計算機システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、計算機システム及び計算機システムにおけるデータの移行方法に関する。
【背景技術】
【０００２】
企業等がビジネスを遂行するための業務を処理するための計算機システムでは、システムの移行中も業務を継続できることが望まれる。【０００３】
本技術分野の背景技術として、国際公開第２０１２／０１７４９３号（特許文献１）に記載の技術がある。特許文献１には、「ホスト計算機及びストレージ装置間のデータ授受の停止を回避しながらストレージ装置の入れ替え作業を行い得る計算機システム及びデータ移行方法」について記載されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】国際公開第２０１２／０１７４９３号
【発明の概要】
【発明が解決しようとする課題】
【０００５】
計算機システムにおいて、正ストレージ装置と副ストレージ装置をＨｉｇｈ  Ａｖａｉｌａｂｉｌｉｔｙ（ＨＡ）構成とし、正ストレージ装置と副ストレージ装置それぞれの論理デバイスでデータを二重化するＨＡペアを構成することで、計算機システムの可用性を向上させることができる。このＨＡペアの一方または両方の論理デバイスを、他のストレージ装置に移行する場合においても、ＨＡ構成を維持したいという新たな要求がある。【０００６】
特許文献１の技術により、ＨＡペアの一方または両方の論理デバイスを、他のストレージ装置に移行しただけでは、移行後の論理デバイスはＨＡペアを構成しておらず、ＨＡ構成を維持できない。
【課題を解決するための手段】
【０００７】
上記課題を解決するために、本発明は、計算機システムにおいて、第１のストレージ装置が有する第１の論理デバイスと、第２のストレージ装置が有する第２の論理デバイスで第１のＨＡペアを構成している場合、第３のストレージ装置で第１の論理デバイスを仮想化して第３のストレージ装置が有する第３の論理デバイスに対応づける。また、第４のストレージ装置は、第２の論理デバイスを仮想化して、第４のストレージ装置が有する第４の論理デバイスに対応づける。第３の論理デバイスと第４の論理デバイスで第２のＨＡペアを構成した後、第１の論理デバイスのデータを第３のストレージ装置に移行して、第３の論理デバイスのデータとして管理する。また、第２の論理デバイスのデータを第４のストレージ装置に移行して、第４の論理デバイスのデータとして管理する。
【発明の効果】
【０００８】
本発明の計算機システムは、ＨＡ構成を維持しながら、ＨＡペアの一方または両方の論理デバイスを他のストレージ装置に移行可能であり、計算機システムの可用性を向上できる。上記した以外の課題、構成及び効果は、以下の発明を実施するための形態の説明により明らかにされる。
【図面の簡単な説明】
【０００９】
【図１】実施例１の計算機システムの構成を示す図である。
【図２】ホスト計算機の構成を示す図である。
【図３】ストレージ装置の構成を示す図である。
【図４】ストレージ装置が管理する記憶領域の構成を示す図である。
【図５】仮想デバイス管理テーブルの構成を示す図である。
【図６】論理デバイス管理テーブルの構成を示す図である。
【図７】ペア管理テーブルの構成を示す図である。
【図８】キャッシュ管理テーブルの構成を示す図である。
【図９】ストレージ移行処理のフローチャートである。
【図１０】実施例１においてストレージ移行処理を開始する前の計算機システムの状態を示す図である。
【図１１】実施例１のストレージ移行処理においてホスト計算機の入出力要求の発行先を変更する前の計算機システムの状態を示す図である。
【図１２】実施例１のストレージ移行処理においてホスト計算機の入出力要求の発行先を変更した後の計算機システムの状態を示す図である。
【図１３】実施例１のストレージ移行処理において移行先正ストレージ装置と移行先副ストレージ装置でＨＡペアを作成した後の計算機システムの状態を示す図である。
【図１４】実施例１においてストレージ移行処理を終了した後の計算機システムの状態を示す図である。
【図１５】ストレージリード処理のフローチャートである。
【図１６】ストレージライト処理のフローチャートである。
【図１７】論理デバイス更新処理のフローチャートである。
【図１８】実施例２の計算機システムの構成を示す図である。
【発明を実施するための形態】
【００１０】
以下、図面を用いて実施例について説明する。
【実施例１】
【００１１】
図１は、計算機システムの構成を示す図である。計算機システム（ストレージシステム）は、１又は複数の管理装置１と、複数のストレージ装置３と、１又は複数のホスト計算機２と、ネットワーク４とを有する。ストレージ装置３とホスト計算機２との間、複数のストレージ装置３間は、ネットワーク４で接続される。ネットワーク４は、例えばＳＡＮ（Ｓｔｏｒａｇｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）である。【００１２】
１又は複数の管理装置１は、ホスト計算機２とストレージ装置３とネットワーク５を介して接続され、ホスト計算機２とストレージ装置３を管理する管理計算機である。管理装置１は、ネットワーク５と接続されたポートと、ＣＰＵと、メモリとを有する。管理装置１は、ホスト計算機２を管理する管理者またはストレージ装置３を管理する管理者によって操作される。【００１３】
以下、ストレージ装置３として、移行先正ストレージ装置３Ａ、移行先副ストレージ装置３Ｂ、移行元正ストレージ装置３Ｃ、移行元副ストレージ装置３Ｄについて説明する。移行元正ストレージ装置３Ｃは移行元正論理デバイス３３Ｃを有し、移行元副ストレージ装置３Ｄは移行元副論理デバイス３３Ｄを有する。【００１４】
移行元正ストレージ装置３Ｃと移行元副ストレージ装置３Ｄは、ホスト計算機２からＩｎｑｕｉｒｙ要求（問合せ要求）をそれぞれ受信したとき、移行元正論理デバイス３３Ｃと移行元副論理デバイス３３Ｄについて同じボリュームＩＤ３０１２６を応答する。移行元正論理デバイス３３Ｃと移行元副論理デバイス３３Ｄのようなペアを、Ｈｉｇｈ  Ａｖａｉｌａｂｉｌｉｔｙ（ＨＡ）ペアをと呼ぶ。また、移行元正ストレージ装置３Ｃと移行元副ストレージ装置３Ｄのように、ＨＡペアを含む複数のストレージ装置３の構成をＨＡ構成と呼ぶ。【００１５】
ホスト計算機２は、Ｉｎｑｕｉｒｙ要求に対する応答に基づき、移行元正ストレージ装置３Ｃの移行元正論理デバイス３３Ｃと移行元副ストレージ装置３Ｄの移行元副論理デバイス３３Ｄとを、一つのストレージ装置（以下、仮想ストレージ装置という）内の一つの論理デバイス（以下、仮想論理デバイスという）として認識する。ホスト計算機２は、仮想論理デバイスに対する入出力要求（リード要求及びライト要求）を送信すると、ＨＡペアである移行元正論理デバイス３３Ｃまたは移行元副論理デバイス３３Ｄに入出力要求が送信される。【００１６】
ホスト計算機２からのライト要求に対し、移行元正ストレージ装置３Ｃが有するＨＡペアの一方（移行元正論理デバイス３３Ｃ）に書き込まれたデータは、移行元副ストレージ装置３Ｄが有するＨＡペアの他方（移行元副論理デバイス３３Ｄ）にも格納され、移行元正ストレージ装置３Ｃと移行元副ストレージ装置３ＤのＨＡペアは同じデータを保持する。そのため、例えば移行元正ストレージ装置３Ｃと移行元副ストレージ装置３Ｄの一方が故障しても、他方のストレージ装置３が有するＨＡペアの論理デバイス３３を用いて、ホスト計算機２はデータの入出力を継続することができる。【００１７】
また、移行元正ストレージ装置３Ｃと移行元副ストレージ装置３ＤのＨＡペアは、同じデータを保持しているため、ホスト計算機２からの仮想論理デバイスに対する入出力要求を、ＨＡペアのいずれでも受け付けることができる。そのため、パスの帯域・コントローラ３０の処理能力・記憶装置３１の処理性能などのリソースを有効活用することができる。
このような特徴を有する移行元正論理デバイス３３Ｃと移行元副論理デバイス３３ＤのようなＨＡペアを、Ａｃｔｉｖｅ−Ａｃｔｉｖｅ型のＨＡペアと呼ぶ。【００１８】
本実施例の計算機システムでは、ＨＡ構成を維持しながら、移行元正ストレージ装置３Ｃと移行元副ストレージ装置３ＤのＡｃｔｉｖｅ−Ａｃｔｉｖｅ型のＨＡペアを、移行先正ストレージ装置３Ａと移行先副ストレージ装置３Ｂに移行することができる。ここで、ＨＡペアの移行とは、移行元正ストレージ装置３Ｃの移行元正論理デバイス３３Ｃのデータを移行先正ストレージ装置３Ａに移行し、また移行元副ストレージ装置３Ｄの移行元副論理デバイス３３Ｄのデータを移行先副ストレージ装置３Ｂに移行して、移行先正ストレージ装置３Ａと移行先副ストレージ装置３Ｂでホスト計算機２にＨＡペアを提供することである。【００１９】
ＨＡペアを移行した後の移行先正ストレージ装置３Ａと移行先副ストレージ装置３Ｂは、移行前の移行元正ストレージ装置３Ｃと移行元副ストレージ装置３Ｄと同様に、ＨＡ構成が組まれている。そのため、ＨＡペアの移行後に例えば移行先正ストレージ装置３Ａと移行先副ストレージ装置３Ｂの一方が故障しても、他方のストレージ装置３が有する移行後のＨＡペアの論理デバイス３３を用いて、ホスト計算機２はデータの入出力を継続することができる。【００２０】
本実施例によると、ＨＡ構成を組んでいるストレージ装置３において、ＨＡペアを移行している間、また移行した後も、ＨＡ構成を維持することができる。したがって、例えば、移行先正ストレージ装置３Ａ、移行先副ストレージ装置３Ｂ、移行元正ストレージ装置３Ｃ、移行元副ストレージ装置３Ｄのどの１台が故障しても、ホスト計算機２はデータアクセスを継続することができ、計算機システムは高い可用性を維持することができる。【００２１】
本実施例の計算機システムにおけるＨＡペアの移行方法は、ＨＡペアを有する移行元正ストレージ装置３Ｃと移行元副ストレージ装置３Ｄを、それぞれ移行先正ストレージ装置３Ａと移行先副ストレージ装置３Ｂに、ＨＡ構成を維持しながらリプレースする場合に適用可能である。【００２２】
図２は、ホスト計算機２の構成を示す図である。ホスト計算機２は、ＣＰＵ２０、メモリ２１、ポート２２を備える。ＣＰＵ２０は、ホスト計算機２の動作を制御するプロセッサであり、メモリ２１に格納された各種プログラムを実行し、ストレージ装置３に対してリード要求又はライト要求を含む入出力要求を発行する。以下、メモリ２１に格納されたプログラムを実行するＣＰＵ２０による制御を、そのプログラムを主体として説明する場合がある。【００２３】
メモリ２１は、ＣＰＵ２０により実行されるプログラムとして、例えば、ユーザプログラム２１０と交替パス制御プログラム２１１を格納する。また、ＣＰＵ２０のワークメモリとしても用いられる。ユーザプログラム２１０は、ユーザがホスト計算機２の用途に応じてホスト計算機２にインストールするプログラムである。【００２４】
交替パス制御プログラム２１１は、ストレージ装置３が提供する論理デバイス３３へのアクセス経路を制御するプログラムであり、ホスト計算機２から一つの論理デバイス３３への複数のアクセス経路の中から、どのアクセス経路を用いて入出力要求を発行するかを決定する。交替パス制御プログラム２１１は、一部のアクセス経路が障害等で利用不能になった場合、他のアクセス経路を用いて入出力要求を発行する。また、交替パス制御プログラム２１１は、複数のアクセス経路が利用可能な場合、それらのアクセス経路を交互に使用することによって負荷分散を行う。【００２５】
図３は、ストレージ装置３の構成を示す図である。ストレージ装置３は、１又は複数の記憶装置３１と、記憶装置３１に対するデータの入出力を制御するコントローラ３０を備える。記憶装置３１は、例えば、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）又はＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）である。【００２６】
コントローラ３０は、ＣＰＵ３００、メモリ３０１、ポート３０２、キャッシュメモリ３０３を備える。ＣＰＵ３００は、コントローラ３０の動作を制御するプロセッサであり、メモリ３０１に格納された各種プログラムを実行する。以下、メモリ３０１に格納されたプログラムを実行するＣＰＵ３００による制御を、そのプログラムを主体として説明する場合がある。【００２７】
メモリ３０１は、ＣＰＵ３００により実行される各種プログラムを格納するために用いられるほか、ＣＰＵ３００のワークメモリとしても用いられる。メモリ３０１には、例えば、入出力制御プログラム３０１０、仮想デバイス管理テーブル３０１１、論理デバイス管理テーブル３０１２、ペア管理テーブル３０１３、キャッシュ管理テーブル３０１４が格納される。【００２８】
入出力制御プログラム３０１０は、ホスト計算機２から受信した入出力要求に応じて、記憶装置３１に対してデータの入出力を行う。後述の図１５〜図１７のストレージリード処理・ストレージライト処理・論理デバイス更新処理は、ＣＰＵ３００が、入出力制御プログラム３０１０を実行することにより実現される。【００２９】
ポート３０２は、ストレージ装置３をネットワーク４と接続するためのアダプタである。キャッシュメモリ３０３は、主としてホスト計算機２と記憶装置３１の間で授受されるデータを一時的に格納するために用いられる。【００３０】
図４は、ストレージ装置３が管理する記憶領域の構成を示す図である。ストレージ装置３は、仮想デバイス管理テーブル３０１１を用いて、１又は複数の記憶装置３１の記憶領域からＲＡＩＤ（Ｒｅｄｕｎｄａｎｔ  Ａｒｒａｙ  ｏｆ  Ｉｎｅｘｐｅｎｓｉｖｅ  Ｄｉｓｋｓ）グループを構成し、１又は複数の仮想デバイス３２として管理する。ストレージ装置３は、記憶装置３１の記憶領域から構成したＲＡＩＤグループの代わりに、外部のストレージ装置３の論理デバイス３３を、仮想デバイス管理テーブル３０１１を用いて、仮想デバイス３２として管理することもできる。【００３１】
ストレージ装置３のコントローラ３０は、論理デバイス管理テーブル３０１２を用いて、１又は複数の仮想デバイス３２の記憶領域を、１又は複数の論理デバイス３３として管理する。また、ストレージ装置３は、論理デバイス管理テーブル３０１２を用いて、１つの論理デバイス３３を、１又は複数のポート３０２と関連づけてホスト計算機２からアクセス可能にする。ストレージ装置３は、１又は複数の論理デバイスの記憶領域を、論理ユニット（Ｌｏｇｉｃａｌ  Ｕｎｉｔ）としてホスト計算機２に提供する。【００３２】
図５は、ストレージ装置３が有する仮想デバイス管理テーブル３０１１の構成を示す図である。仮想デバイス管理テーブル３０１１には、各仮想デバイス３２について、仮想デバイス番号３０１１０、デバイス種別３０１１１、ＲＡＩＤレベル３０１１２、記憶装置番号３０１１３、外部ボリュームＷＷＮ３０１１４、外部ボリュームＬＵＮ３０１１５が記録される。【００３３】
仮想デバイス番号３０１１０は、ストレージ装置３内で仮想デバイス３２を一意に特定する識別子である。デバイス種別３０１１１は、仮想デバイス３２が提供するデータが、自ストレージ装置３内の記憶装置３１の記憶領域から構成したＲＡＩＤグループに存在するか、それとも外部のストレージ装置３の論理デバイス３３に存在するか、を識別するために利用される値である。デバイス種別３０１１１が「Ｉｎｔｅｒｎａｌ」である場合、仮想デバイス３２が提供するデータは、自ストレージ装置３内の記憶装置３１の記憶領域から構成したＲＡＩＤグループに存在する。一方、デバイス種別３０１１１が「Ｅｘｔｅｒｎａｌ」である場合、仮想デバイス３２が提供するデータは、外部のストレージ装置３の論理デバイス３３に存在する。【００３４】
ＲＡＩＤレベル３０１１２は、デバイス種別３０１１１が「Ｉｎｔｅｒｎａｌ」の場合に設定される値であり、ＲＡＩＤ処理による冗長データの付加方法を識別するために利用される。ＲＡＩＤレベル３０１１２には、例えば、ＲＡＩＤ−１を示す「１」や、ＲＡＩＤ−５を示す「５」などが格納される。ＲＡＩＤレベル３０１１２がＲＡＩＤ−１を示す「１」の場合、ストレージ装置３は、ＲＡＩＤグループへ格納されたデータを２つの記憶装置３１へミラーリングする。また、ＲＡＩＤレベル３０１１２がＲＡＩＤ−５を示す「５」の場合、ストレージ装置３は、ＲＡＩＤグループへ格納された複数のデータに対して１つのパリティを計算し、各データとそれらに関連するパリティをそれぞれ異なる記憶装置３１へ格納する。【００３５】
記憶装置番号３０１１３は、デバイス種別３０１１１が「Ｉｎｔｅｒｎａｌ」の場合に設定される値であり、ストレージ装置３内で仮想デバイス３２が提供するデータを記録する記憶装置３１を一意に特定するために利用される。【００３６】
外部ボリュームＷＷＮ３０１１４は、デバイス種別３０１１１が「Ｅｘｔｅｒｎａｌ」の場合に設定される値であり、外部のストレージ装置３の論理デバイス３３が関連づけられているポート３０２のＷＷＮ（Ｗｏｒｌｄ  Ｗｉｄｅ  Ｎａｍｅ）である。【００３７】
外部ボリュームＬＵＮ（Ｌｏｇｉｃａｌ  Ｕｎｉｔ  Ｎｕｍｂｅｒ）３０１１５は、デバイス種別３０１１１が「Ｅｘｔｅｒｎａｌ」の場合に設定される値であり、外部ボリュームＷＷＮ３０１１４によって識別されるポート３０２のＷＷＮを通してアクセスできる論理デバイス３３を一意に識別するために利用される。【００３８】
図６は、ストレージ装置３が有する論理デバイス管理テーブル３０１２の構成を示す図である。論理デバイス管理テーブル３０１２には、各論理デバイス３３について、ポート番号３０１２０、ＬＵＮ３０１２１、論理デバイス番号３０１２２、仮想デバイス番号３０１２３、リードキャッシュモード３０１２４、ライトキャッシュモード３０１２５、ボリュームＩＤ３０１２６が記録される。【００３９】
ポート番号３０１２０は、ストレージ装置３内で論理デバイス３３が関連づけられたポート３０２を一意に特定する番号である。ＬＵＮ３０１２１は、ホスト計算機２がポート３０２を通してアクセスできる論理デバイス３３を一意に識別する値である。論理デバイス番号３０１２２は、ストレージ装置３内で論理デバイス３３を一意に特定する識別子である。仮想デバイス番号３０１２３は、論理デバイス３３に対応づけられた仮想デバイス３２を、ストレージ装置３内で一意に特定する識別子である。【００４０】
リードキャッシュモード３０１２４は、ストレージ装置３がホスト計算機２からリード要求を受信したときの動作を決定するために利用される値であり、「ＯＮ」または「ＯＦＦ」である。【００４１】
リードキャッシュモード３０１２４が「ＯＮ」の場合、ストレージ装置３は、リード要求に対するリードデータをキャッシュメモリ３０３にキャッシュする。ストレージ装置３は、リード要求を受信した際、リードデータがキャッシュメモリ３０３に存在する場合、リードデータをキャッシュメモリ３０３からホスト計算機２へ転送する。【００４２】
一方、ストレージ装置３は、リードデータがキャッシュメモリ３０３に存在しない場合、リードデータを記憶装置３１または外部のストレージ装置３からキャッシュメモリ３０３へ読み込んだ後、キャッシュメモリ３０３からホスト計算機２へ転送する。リードキャッシュモード３０１２４が「ＯＮ」の場合、リードデータをできるだけキャッシュメモリ３０３からホスト計算機２へ転送することにより、リード要求の応答時間を短縮できる。【００４３】
一方、リードキャッシュモード３０１２４が「ＯＦＦ」の場合、ストレージ装置３は、リードデータをキャッシュメモリ３０３にキャッシュしない。ストレージ装置３は、リード要求を受信した際、リードデータを必ず記憶装置３１または外部のストレージ装置３から読み込み、ホスト計算機２へ転送する。このとき、キャッシュメモリ３０３をリードデータを一時的に格納するバッファメモリとして用いてもよいが、一時的に格納したリードデータを後続のリード要求の応答に用いない。このようにリードデータを必ず記憶装置３１または外部のストレージ装置３から読み込んでホスト計算機２へ転送することにより、キャッシュメモリ３０３に最新データが存在することが保証されていない場合にも、ホスト計算機２へ最新データを転送できる。【００４４】
ライトキャッシュモード３０１２５は、ストレージ装置３がホスト計算機２からライト要求を受信したときの動作を決定するために利用される値であり、「ＢＡＣＫ」、「ＴＨＲＯＵＧＨ」、「ＯＦＦ」のいずれかである。【００４５】
ライトキャッシュモード３０１２５が「ＢＡＣＫ」の場合、ストレージ装置３は、ライト要求のライトデータをキャッシュメモリ３０３へ書き込んだ後、自ストレージ装置３の記憶装置３１または外部のストレージ装置３へのライトデータの書き込み（デステージング）を行う前に、ホスト計算機２へ完了応答を送信する。ストレージ装置３は、デステージングをホスト計算機２からのライト要求とは非同期に行う。デステージングをライト要求と非同期に行うことにより、ライト要求の応答時間を短縮できる。【００４６】
ライトキャッシュモード３０１２５が「ＴＨＲＯＵＧＨ」の場合、ストレージ装置３は、ライトデータのキャッシュメモリ３０３への書き込みとデステージングとをいずれも完了させた後に、ホスト計算機２へ完了応答を送信する。デステージングをライト要求と同期して行うことにより、キャッシュメモリ３０３のデータと記憶装置３１または外部のストレージ装置３のデータがともに最新であることを保証できる。【００４７】
ライトキャッシュモード３０１２５が「ＯＦＦ」の場合、ストレージ装置３は、ライトデータをキャッシュメモリ３０３にキャッシュしない。ストレージ装置３は、ライト要求を受信した際、ライトデータを記憶装置３１または外部のストレージ装置３へ書き込んだ後、ホスト計算機２へ完了応答を送信する。このとき、キャッシュメモリ３０３を、ライトデータを一時的に格納するためのバッファメモリとして用いてもよいが、一時的に格納したライトデータを後続のリード要求の応答には用いない。このようにライトデータを記憶装置３１または外部のストレージ装置３へ書き込んだ後にホスト計算機２へ完了応答を送信することにより、記憶装置３１または外部のストレージ装置３に最新データが存在することを保証できる。【００４８】
ボリュームＩＤ３０１２６は、ストレージ装置３がホスト計算機２からＩｎｑｕｉｒｙ要求（問合せ要求）を受信したときにホスト計算機２へ応答する情報である。ボリュームＩＤ３０１２６は、例えば、ストレージ装置３の製番と論理デバイス３３の論理デバイス番号３０１２２を含む。ホスト計算機２上で動作する交替パス制御プログラム２１１は、異なるアクセス経路を用いて発行したＩｎｑｕｉｒｙ要求に対する応答が同一である場合、それらのアクセス経路を同一の論理デバイス３３へのアクセス経路（交替パス）であると判断する。【００４９】
図７は、ストレージ装置３が、論理デバイス３３のＨＡペアを管理するために保持するペア管理テーブル３０１３の構成を示す図である。ペア管理テーブル３０１３には、各ＨＡペアについて、ペア番号３０１３０、論理デバイス番号３０１３１、ボリューム属性３０１３２、相手装置製番３０１３３、相手論理デバイス番号３０１３４が記録される。【００５０】
ペア番号３０１３０は、ストレージ装置３内でＨＡペアを一意に特定する番号である。論理デバイス番号３０１３１は、ペア番号３０１３０によって特定されるＨＡペアを構成する自ストレージ装置３内の論理デバイス３３を、自ストレージ装置３内で一意に特定する番号である。【００５１】
ボリューム属性３０１３２は、ストレージ装置３がホスト計算機２からライト要求を受信したときの動作を決定するために利用される値であり、「Ｐｒｉｍａｒｙ」または「Ｓｅｃｏｎｄａｒｙ」である。ＨＡペアの一方の論理デバイス３３のボリューム属性３０１３２は「Ｐｒｉｍａｒｙ」であり、他方の論理デバイス３３のボリューム属性３０１３２は「Ｓｅｃｏｎｄａｒｙ」である。【００５２】
ボリューム属性３０１３２が「Ｐｒｉｍａｒｙ」である場合、ストレージ装置３は、ライト要求を受信した際、論理デバイス番号３０１３１によって特定される自ストレージ装置３内の論理デバイス３３を更新する。その後、更新した論理デバイス３３とＨＡペアになっている相手のストレージ装置３内の論理デバイス３３を更新する。このＨＡペアになっている相手のストレージ装置３内の論理デバイス３３は、後述するように、相手装置製番３０１３３と相手論理デバイス番号３０１３４によって特定される。【００５３】
ボリューム属性３０１３２が「Ｓｅｃｏｎｄａｒｙ」である場合、ストレージ装置３は、ライト要求を受信した際、自ストレージ装置３内の論理デバイス３３とＨＡペアになっている相手のストレージ装置３内の論理デバイス３３を更新する。その後、論理デバイス番号３０１３１によって特定される自ストレージ装置３内の論理デバイス３３を更新する。【００５４】
相手装置製番３０１３３は、論理デバイス番号３０１３１によって特定される論理デバイス３３とＨＡペアになっている、論理デバイス３３が存在する相手のストレージ装置３を一意に特定する値である。【００５５】
相手論理デバイス番号３０１３４は、論理デバイス番号３０１３１によって特定される論理デバイス３３とＨＡペアになっている論理デバイス３３を、相手装置製番３０１３３によって特定されるストレージ装置３内で一意に特定する値である。【００５６】
図８は、ストレージ装置３が、キャッシュメモリ３０３に格納されているデータを管理するために保持するキャッシュ管理テーブル３０１４の構成を示す図である。キャッシュ管理テーブル３０１４には、キャッシュメモリ３０３の各アドレスについて、キャッシュアドレス３０１４０、論理デバイス番号３０１４１、ＬＢＡ（Ｌｏｇｉｃａｌ  Ｂｌｏｃｋ  Ａｄｄｒｅｓｓ）３０１４２、データ属性３０１４３が記録される。【００５７】
キャッシュアドレス３０１４０は、キャッシュメモリ３０３内の領域を一意に特定する情報である。論理デバイス番号３０１４１は、キャッシュアドレス３０１４０によって特定される領域に格納されているデータが、どの論理デバイス３３のデータであるかを特定する番号である。【００５８】
ＬＢＡ３０１４２は、キャッシュアドレス３０１４０によって特定される領域に格納されているデータが、論理デバイス番号３０１４１によって特定される論理デバイス３３のどの領域のデータであるかを特定する値である。【００５９】
データ属性３０１４３は、キャッシュアドレス３０１４０によって特定される領域に格納されているデータが、記憶装置３１または外部のストレージ装置３に反映済みであるか否かを示す値であり、「Ｃｌｅａｎ」または「Ｄｉｒｔｙ」である。【００６０】
データ属性３０１４３が「Ｃｌｅａｎ」の場合、キャッシュアドレス３０１４０によって特定される領域に格納されているデータは記憶装置３１または外部のストレージ装置３に反映済みであり、記憶装置３１または外部のストレージ装置３への書き込み（デステージング）を行うことなく、キャッシュメモリ３０３から消去できる。【００６１】
一方、データ属性３０１４３が「Ｄｉｒｔｙ」の場合、キャッシュアドレス３０１４０によって特定される領域に格納されているデータは記憶装置３１または外部のストレージ装置３に未反映であり、キャッシュメモリ３０３から消去する場合は先にデステージングを行う必要がある。【００６２】
図９は、移行元正ストレージ装置３Ｃと移行元副ストレージ装置３ＤのＨＡペアを、移行先正ストレージ装置３Ａと移行先副ストレージ装置３Ｂへ移行する際に行う処理（以下、ストレージ移行処理）のフローチャートである。図１０〜図１４は、ストレージ移行処理の処理前・処理中・処理後における計算機システムの状態を示す図である。【００６３】
図９のＳ１０００において、移行先正ストレージ装置３Ａは、管理装置１からの指示を受けて、移行元正ストレージ装置３Ｃ内の移行元正論理デバイス３３Ｃを、マッピング先正仮想デバイス３２Ａとして仮想化する。移行先正ストレージ装置３Ａは、移行先正ストレージ装置３Ａが有する仮想デバイス管理テーブル３０１１を用いて、移行元正論理デバイス３３Ｃを外部ボリュームとしてマッピング先正仮想デバイス３２Ａにマッピングする。【００６４】
このとき、移行先正ストレージ装置３Ａは、仮想デバイス管理テーブル３０１１において、仮想デバイス番号３０１１０がマッピング先正仮想デバイス３２Ａを特定する番号であるエントリとして、デバイス種別３０１１１を「Ｅｘｔｅｒｎａｌ」に、ＲＡＩＤレベル３０１１２を「Ｕｎｄｅｆｉｎｅｄ」に、記憶装置番号３０１１３を「Ｕｎｄｅｆｉｎｅｄ」に設定する。また、移行先正ストレージ装置３Ａは、外部ボリュームＷＷＮ３０１１４として、移行元正論理デバイス３３Ｃを提供する移行元正ストレージ装置３Ｃのポート３０２のＷＷＮに設定する。また、移行先正ストレージ装置３Ａは、外部ボリュームＬＵＮ３０１１５として、移行元正論理デバイス３３Ｃを一意に識別するＬＵＮに設定する。【００６５】
移行先正ストレージ装置３Ａは、マッピング先正論理デバイス３３Ａを作成し、マッピング先正論理デバイス３３Ａにマッピング先正仮想デバイス３２Ａを対応づける。具体的には、移行先正ストレージ装置３Ａは、移行先正ストレージ装置３Ａが有する論理デバイス管理テーブル３０１２において、論理デバイス番号３０１２２がマッピング先正論理デバイス３３Ａを特定する番号であるエントリとして、仮想デバイス番号３０１２３をマッピング先正仮想デバイス３２Ａを特定する番号に、リードキャッシュモード３０１２４を「ＯＦＦ」に、ライトキャッシュモード３０１２５を「ＯＦＦ」に設定する。【００６６】
また、移行先正ストレージ装置３Ａは、移行元正ストレージ装置３Ｃに対してＩｎｑｕｉｒｙ要求を発行することにより、Ｉｎｑｕｉｒｙ要求の応答として移行元正論理デバイス３３ＣのボリュームＩＤ３０１２６を取得する。移行先正ストレージ装置３Ａは、移行元正論理デバイス３３Ｃと同じボリュームＩＤ３０１２６を、マッピング先正論理デバイス３３ＡのボリュームＩＤ３０１２６として設定する。そのため、移行元正論理デバイス３３Ｃとマッピング先正論理デバイス３３Ａは、ホスト計算機２からのＩｎｑｕｉｒｙ要求に対して同一の応答をする。以上の仮想化処理により、ホスト計算機２は、移行元正論理デバイス３３Ｃとマッピング先正論理デバイス３３Ａを、一つの仮想論理デバイスとして認識するようになる。【００６７】
次に、移行先副ストレージ装置３Ｂは、管理装置１からの指示を受けて、移行元副ストレージ装置３Ｄ内の移行元副論理デバイス３３Ｄを、マッピング先副仮想デバイス３２Ｂとして仮想化する（Ｓ１００１）。移行先副ストレージ装置３Ｂは、移行先副ストレージ装置３Ｂが有する仮想デバイス管理テーブル３０１１を用いて、移行元副論理デバイス３３Ｄを外部ボリュームとしてマッピング先副仮想デバイス３２Ｂにマッピングする。【００６８】
移行先副ストレージ装置３Ｂは、マッピング先副論理デバイス３３Ｂを作成し、マッピング先副論理デバイス３３Ｂにマッピング先副仮想デバイス３２Ｂを対応づける。具体的には、移行先副ストレージ装置３Ｂは、仮想デバイス管理テーブル３０１１において、マッピング先副仮想デバイス３２Ｂに関する情報を更新する。また、移行先副ストレージ装置３Ｂは、論理デバイス管理テーブル３０１２において、マッピング先副論理デバイス３３Ｂに関する情報を更新する。仮想デバイス管理テーブル３０１１と論理デバイス管理テーブル３０１２の更新方法は、ステップＳ１０００と同様である。【００６９】
移行元副論理デバイス３３Ｄとマッピング先副論理デバイス３３Ｂは、ホスト計算機２からのＩｎｑｕｉｒｙ要求に対して同一の応答をする。以上の仮想化処理により、ホスト計算機２は、移行元副論理デバイス３３Ｄとマッピング先副論理デバイス３３Ｂを、一つの仮想論理デバイスとして認識するようになる。【００７０】
次に、移行先正ストレージ装置３Ａは、管理装置１からの指示を受けて、移行先正仮想デバイス３２Ａ’と移行先正論理デバイス３３Ａ’を作成する（Ｓ１００２）。【００７１】
移行先正ストレージ装置３Ａは、１又は複数の移行先正記憶装置３１Ａ’の記憶領域からＲＡＩＤグループを構成し、移行先正仮想デバイス３２Ａ’として管理する。移行先正ストレージ装置３Ａは、移行先正ストレージ装置３Ａが有する仮想デバイス管理テーブル３０１１において、仮想デバイス番号３０１１０が移行先正仮想デバイス３２Ａ’を特定する番号であるエントリとして、デバイス種別３０１１１を「Ｉｎｔｅｒｎａｌ」に、ＲＡＩＤレベル３０１１２を移行先正仮想デバイス３２Ａ’が利用するＲＡＩＤレベルに、記憶装置番号３０１１３を移行先正仮想デバイス３２Ａ’のＲＡＩＤグループを構成する移行先正記憶装置３１Ａ’を特定する番号に設定する。移行先正ストレージ装置３Ａは、外部ボリュームＷＷＮ３０１１４と外部ボリュームＬＵＮ３０１１５をそれぞれ「Ｕｎｄｅｆｉｎｅｄ」に設定する。【００７２】
また、移行先正ストレージ装置３Ａは、移行先正仮想デバイス３２Ａ’と移行先正論理デバイス３３Ａ’とを対応づける。具体的には、移行先正ストレージ装置３Ａは、移行先正ストレージ装置３Ａが有する論理デバイス管理テーブル３０１２において、論理デバイス番号３０１２２が移行先正論理デバイス３３Ａ’を特定する番号であるエントリとして、仮想デバイス番号３０１２３を、移行先正仮想デバイス３２Ａ’を特定する番号に設定する。【００７３】
次に、移行先副ストレージ装置３Ｂは、管理装置１からの指示を受けて、移行先副仮想デバイス３２Ｂ’と移行先副論理デバイス３３Ｂ’を作成する（Ｓ１００３）。移行先副ストレージ装置３Ｂは、１又は複数の移行先副記憶装置３１Ｂ’の記憶領域からＲＡＩＤグループを構成し、移行先副仮想デバイス３２Ｂ’として管理する。また、移行先副ストレージ装置３Ｂは、移行先副仮想デバイス３２Ｂ’と移行先副論理デバイス３３Ｂ’とを対応づける。ステップＳ１００２と同様に、移行先副ストレージ装置３Ｂは、移行先副ストレージ装置３Ｂが有する仮想デバイス管理テーブル３０１１及び論理デバイス管理テーブル３０１２において、移行先副記憶装置３１Ｂ’・移行先副仮想デバイス３２Ｂ’・移行先副論理デバイス３３Ｂ’に関する情報を更新する。【００７４】
次に、ホスト計算機２は、管理装置１からの指示を受けて、入出力要求の発行先を移行元正論理デバイス３３Ｃからマッピング先正論理デバイス３３Ａへ変更するとともに、移行元副論理デバイス３３Ｄからマッピング先副論理デバイス３３Ｂへ変更する（Ｓ１００４）。上述のように、ホスト計算機２は、移行元正論理デバイス３３Ｃとマッピング先正論理デバイス３３Ａを同一の仮想論理デバイスとして認識し、移行元副論理デバイス３３Ｄとマッピング先副論理デバイス３３Ｂを同一の仮想論理デバイスとして認識しているので、ホスト計算機２を無停止で入出力要求の発行先を変更でき、かつ移行元正論理デバイス３３Ｃと移行元副論理デバイス３３ＤのＨＡペアの構成を維持できる。【００７５】
具体的には、ホスト計算機２の交替パス制御プログラム２１１は、管理装置１からの指示を受けて、ホスト計算機２で管理している移行元正論理デバイス３３Ｃへのアクセス経路のリストに、マッピング先正論理デバイス３３Ａへのアクセス経路を追加するとともに、移行元正論理デバイス３３Ｃへのアクセス経路を削除する。これにより、ユーザプログラム２１０が移行元正論理デバイス３３Ｃへ入出力を行う際、交替パス制御プログラム２１１のアクセス経路制御により、マッピング先正論理デバイス３３Ａへ入出力要求が発行されるようになる。【００７６】
ホスト計算機２の交替パス制御プログラム２１１は、管理装置１からの指示として、入出力要求発行先を変更する指示を単一の指示で受信してもよいし、またマッピング先正論理デバイス３３Ａへのアクセス経路を追加する指示と移行元正論理デバイス３３Ｃへのアクセス経路を削除する指示を別々に受信してもよい。【００７７】
ホスト計算機２の交替パス制御プログラム２１１は、管理装置１からの指示を受けてステップＳ１００４を行う代わりに、移行元正ストレージ装置３Ｃと移行先正ストレージ装置３Ａとの通信結果を基に、ステップＳ１００４を行ってもよい。例えば、交替パス制御プログラム２１１は、移行元正論理デバイス３３Ｃとマッピング先正論理デバイス３３ＡへそれぞれＩｎｑｕｉｒｙ要求を発行し、二つのＩｎｑｕｉｒｙ要求に対する応答が一致した場合に、管理している移行元正論理デバイス３３Ｃへのアクセス経路のリストに、マッピング先正論理デバイスＡへのアクセス経路を追加してもよい。【００７８】
また、交替パス制御プログラム２１１は、移行元正ストレージ装置３ＣへＲｅｐｏｒｔ  ＬＵＮｓ要求を発行し、その応答に移行元正論理デバイス３３Ｃに対応するＬＵＮが含まれていない場合に、管理している移行元正論理デバイス３３Ｃへのアクセス経路のリストから、移行元正論理デバイス３３Ｃへのアクセス経路を削除してもよい。【００７９】
また、ホスト計算機２の交替パス制御プログラム２１１は、移行元正論理デバイス３３Ｃからマッピング先正論理デバイス３３Ａへ入出力要求の発行先を変更する方法と同様に、移行元副論理デバイス３３Ｄからマッピング先副論理デバイス３３Ｂへの入出力要求の発行先の変更を行う。【００８０】
次に、移行先正ストレージ装置３Ａと移行先副ストレージ装置３Ｂは、マッピング先正論理デバイス３３Ａとマッピング先副論理デバイス３３ＢでＨＡペアを構成（作成）する（Ｓ１００５）。具体的には、移行先正ストレージ装置３Ａと移行先副ストレージ装置３Ｂは、それぞれが保持しているペア管理テーブル３０１３にＨＡペアに関する情報を登録する。【００８１】
移行先正ストレージ装置３Ａは、移行先正ストレージ装置３Ａが有するペア管理テーブル３０１３へＨＡペアに対応するエントリを追加し、そのエントリにおいて論理デバイス番号３０１３１をマッピング先正論理デバイス３３Ａを特定する番号に、ボリューム属性３０１３２を「Ｐｒｉｍａｒｙ」に、相手装置製番３０１３３を移行先副ストレージ装置３Ｂの製番に、相手論理デバイス番号３０１３４をマッピング先副論理デバイス３３Ｂを特定する番号に設定する。【００８２】
一方、移行先副ストレージ装置３Ｂは、移行先副ストレージ装置３Ｂが有するペア管理テーブル３０１３へＨＡペアに対応するエントリを追加し、そのエントリにおいて論理デバイス番号３０１３１をマッピング先副論理デバイス３３Ｂを特定する番号に、ボリューム属性３０１３２を「Ｓｅｃｏｎｄａｒｙ」に、相手装置製番３０１３３を移行先正ストレージ装置３Ａの製番に、相手論理デバイス番号３０１３４をマッピング先正論理デバイス３３Ａを特定する番号に設定する。【００８３】
ペア管理テーブル３０１３の更新により、ホスト計算機２からのライト要求に対し、移行先正ストレージ装置３Ａが有するＨＡペアの一方（マッピング先正論理デバイス３３Ａ）に書き込まれたデータは、移行先副ストレージ装置３Ｂが有するＨＡペアの他方（マッピング先副論理デバイス３３Ｂ）にも格納され、移行先正ストレージ装置３Ａと移行先副ストレージ装置３ＢのＨＡペアは同じデータを保持する。【００８４】
また、移行先正ストレージ装置３Ａは、ペア管理テーブル３０１３を更新するとともに、移行先正ストレージ装置３Ａが有する論理デバイス管理テーブル３０１２のマッピング先正論理デバイス３３Ａに対応するエントリのリードキャッシュモード３０１２４を「ＯＮ」に、ライトキャッシュモード３０１２５を「ＴＨＲＯＵＧＨ」に変更する。【００８５】
同様に、移行先副ストレージ装置３Ｂは、ペア管理テーブル３０１３を更新するとともに、移行先副ストレージ装置３Ｂが有する論理デバイス管理テーブル３０１２のマッピング先副論理デバイス３３Ｂに対応するエントリのリードキャッシュモード３０１２４を「ＯＮ」に、ライトキャッシュモード３０１２５を「ＴＨＲＯＵＧＨ」に変更する。【００８６】
次に、移行先正ストレージ装置３Ａは、管理装置１からの指示を受けて、マッピング先正論理デバイス３３Ａの全領域のデータを、移行先正論理デバイス３３Ａ’へコピーする（Ｓ１００６）。マッピング先正論理デバイス３３Ａにマッピングされた移行元正論理デバイス３３Ｃのデータが、移行元正ストレージ装置３Ｃから移行先正ストレージ装置３Ａへ転送され、移行先正論理デバイス３３Ａ’に対応づけられた移行先正仮想デバイス３２Ａ’に格納される。【００８７】
また、移行先正ストレージ装置３Ａは、コピーの完了後、マッピング先正論理デバイス３３Ａと移行先正論理デバイス３３Ａ’に関連づけられている仮想デバイス３２を交換する。具体的には、移行先正ストレージ装置３Ａは、論理デバイス管理テーブル３０１２のマッピング先正論理デバイス３３Ａに対応するエントリの仮想デバイス番号３０１２３を移行先正仮想デバイス３２Ａ’に変更する。また、移行先正ストレージ装置３Ａは、論理デバイス管理テーブル３０１２の移行先正論理デバイス３３Ａ’に対応するエントリの仮想デバイス番号３０１２３をマッピング先正仮想デバイス３２Ａに変更する。【００８８】
以上の処理により、移行元正論理デバイス３３Ｃのデータがコピー（移行）された移行先正仮想デバイス３２Ａ’に、マッピング先正論理デバイス３３Ａが対応づけられる。移行元正論理デバイス３３Ｃがホスト計算機２へ提供していたデータを、マッピング先正論理デバイス３３Ａがホスト計算機２へ提供できるようになる。【００８９】
また、移行先正ストレージ装置３Ａは、仮想デバイス３２を交換すると同時に、論理デバイス管理テーブル３０１２のマッピング先正論理デバイス３３Ａに対応するエントリのライトキャッシュモード３０１２５を「ＢＡＣＫ」に変更する。【００９０】
次に、移行先副ストレージ装置３Ｂは、管理装置１からの指示を受けて、マッピング先副論理デバイス３３Ｂの全領域のデータを、移行先副論理デバイス３３Ｂ’へコピーする（Ｓ１００７）。マッピング先副論理デバイス３３Ｂにマッピングされた移行元副論理デバイス３３Ｄのデータが、移行元副ストレージ装置３Ｄから移行先副ストレージ装置３Ｂへ転送され、移行先副論理デバイス３３Ｂ’に対応づけられた移行先副仮想デバイス３２Ｂ’に格納される。【００９１】
また、移行先副ストレージ装置３Ｂは、コピーの完了後、マッピング先副論理デバイス３３Ｂと移行先副論理デバイス３３Ｂ’に関連づけられている仮想デバイス３２を交換する。仮想デバイス３２の交換方法はステップＳ１００６と同様である。以上の処理により、移行元副論理デバイス３３Ｄのデータがコピーされた移行先副仮想デバイス３２Ｂ’に、マッピング先副論理デバイス３３Ｂが対応づけられる。これにより、移行元副論理デバイス３３Ｄがホスト計算機２へ提供していたデータを、マッピング先副論理デバイス３３Ｂがホスト計算機２へ提供できるようになる。【００９２】
また、移行先副ストレージ装置３Ｂは、仮想デバイス３２を交換すると同時に、論理デバイス管理テーブル３０１２のマッピング先副論理デバイス３３Ｂに対応するエントリのライトキャッシュモード３０１２５を「ＢＡＣＫ」に変更する。【００９３】
ステップＳ１００５で、移行先正ストレージ装置３Ａと移行先副ストレージ装置３Ｂが、マッピング先正論理デバイス３３Ａとマッピング先副論理デバイス３３ＢでＨＡペア（第２のＨＡペア）を構成した後、移行先正ストレージ装置３Ａは、移行元正ストレージ装置３Ｃから移行元正論理デバイス３３Ｃのデータを移行先正仮想デバイス３２Ａ’に移行して、マッピング先正論理デバイス３３Ａのデータとして管理する（Ｓ１００６）。また、移行先副ストレージ装置３Ｂは、移行元副ストレージ装置３Ｄから移行元副論理デバイス３３Ｄのデータを移行先副仮想デバイス３２Ｂ’に移行して、マッピング先副論理デバイス３３Ｂのデータとして管理する（Ｓ１００７）。上述の処理により、移行元正ストレージ装置３Ｃと移行元副ストレージ装置３ＤのＨＡペア（第１のＨＡペア）から、移行先正ストレージ装置３Ａと移行先副ストレージ装置３ＢのＨＡペア（第２のＨＡペア）へ、ＨＡペアの移行を行う。なお、ステップＳ１００６とステップＳ１００７の順番は逆でもよい。また、ステップＳ１００６とステップＳ１００７を同時に実行してもよい。【００９４】
本実施例によると、ステップＳ１００５で移行先正ストレージ装置３Ａと移行先副ストレージ装置３ＢがＨＡペア（第２のＨＡペア）を構成した後も、少なくともステップＳ１００６・Ｓ１００７を実行してＨＡペアの移行が完了するまで、移行元正ストレージ装置３Ｃと移行元副ストレージ装置３ＤはＨＡペア（第１のＨＡペア）を維持している。そのため、例えばＨＡペアの移行に失敗したとしても、移行元正ストレージ装置３Ｃと移行元副ストレージ装置３ＤのＨＡペア（第１のＨＡペア）の構成を維持可能となり、計算機システムは高い可用性を維持することができる。【００９５】
本実施例によると、ステップＳ１００６・Ｓ１００７を実行した後ではなく、実行する前に、ステップＳ１００５で移行先正ストレージ装置３Ａと移行先副ストレージ装置３ＢがＨＡペア（第２のＨＡペア）を構成している。後述のとおり、例えば、ステップＳ１００６・Ｓ１００７のデータ移行中などに、移行先正ストレージ装置３Ａまたは移行先副ストレージ装置３Ｂが、ホスト計算機２から第２のＨＡペアの一方の論理デバイスに対するリード要求を受信した場合、キャッシュメモリ３０３のリードデータをホスト計算機２へ転送可能となり、リード要求に対して高速に応答できる。【００９６】
図１０は、ストレージ移行処理を開始する前（図９のフローチャートにおいてステップＳ１０００を実行する前）の計算機システムの状態を示す図である。移行元正ストレージ装置３Ｃの移行元正論理デバイス３３Ｃと、移行元副ストレージ装置３Ｄの移行元副論理デバイス３ＤでＨＡペアを構成している。移行先正ストレージ装置３Ａと移行先副ストレージ装置３Ｂは未使用である。移行元正ストレージ装置３Ｃと移行元副ストレージ装置３Ｄのそれぞれの論理デバイス管理テーブル３０１２において、移行元正論理デバイス３３Ｃと移行元副論理デバイス３３Ｄそれぞれのリードキャッシュモード３０１２４は「ＯＮ」、ライトキャッシュモード３０１２５は「ＢＡＣＫ」である。【００９７】
ホスト計算機２は、ユーザプログラム２１０が仮想論理デバイスに対してライトまたはリードする場合、交替パス制御プログラム２１１のアクセス制御により、移行元正論理デバイス３３Ｃまたは移行元副論理デバイス３３Ｄに対して入出力要求（ライト要求またはリード要求）を発行する。【００９８】
移行元正ストレージ装置３Ｃは、ホスト計算機２から移行元正論理デバイス３３Ｃに対するライト要求を受信すると、移行元正論理デバイス３３Ｃを更新し、その後、移行元副ストレージ装置３Ｄへライトデータを含む更新コピー要求を発行する。移行元副ストレージ装置３Ｄは、受信した更新コピー要求に基づき、ＨＡペアの移行元副論理デバイス３３Ｄを更新する。【００９９】
移行元正ストレージ装置３Ｃは、ホスト計算機２から移行元正論理デバイス３３Ｃに対するリード要求を受信すると、自装置内のキャッシュメモリ３０３からリードデータをホスト計算機２へ応答する。【０１００】
移行元副ストレージ装置３Ｄは、ホスト計算機２から移行元副論理デバイス３３Ｄに対するライト要求を受信すると、移行元正ストレージ装置３Ｃへライトデータを含む更新コピー要求を発行する。移行元正ストレージ装置３Ｃは、受信した更新コピー要求に基づき、ＨＡペアの移行元正論理デバイス３３Ｃを更新する。その後、移行元副ストレージ装置３Ｄは、ライト要求に基づき、移行元副論理デバイス３３Ｄを更新する。【０１０１】
移行元副ストレージ装置３Ｄは、ホスト計算機２から移行元副論理デバイス３３Ｄに対するリード要求を受信すると、自装置内のキャッシュメモリ３０３からリードデータをホスト計算機２へ応答する。【０１０２】
図１１は、図９のフローチャートにおいてステップＳ１００３を実行した後の計算機システムの状態を示す図である。移行先正ストレージ装置３Ａと移行先副ストレージ装置３Ｂが、それぞれ移行元正論理デバイス３３Ｃと移行元副論理デバイス３３Ｄを仮想化している。また、移行先正ストレージ装置３Ａと移行先副ストレージ装置３Ｂにはそれぞれ移行先正論理デバイス３３Ａ’と移行先副論理デバイス３３Ｂ’が存在するが、未使用である。【０１０３】
ホスト計算機２のユーザプログラム２１０が、移行元正論理デバイス３３Ｃまたは移行元副論理デバイス３３Ｄに対して、ライトする場合またはリードする場合の処理は、上述した図１０の状態と同じである。【０１０４】
図１２は、図９のフローチャートにおいてステップＳ１００４を実行した後の計算機システムの状態を示す図である。ホスト計算機２は、ユーザプログラム２１０が仮想論理デバイスに対してライトまたはリードする場合、交替パス制御プログラム２１１のアクセス制御により、マッピング先正論理デバイス３３Ａまたはマッピング先副論理デバイス３３Ｂに対して入出力要求（ライト要求またはリード要求）を発行する。【０１０５】
移行先正ストレージ装置３Ａは、ホスト計算機２からマッピング先正論理デバイス３３Ａに対するライト要求を受信した場合、論理デバイス管理テーブル３０１２を参照し、マッピング先正論理デバイス３３Ａのライトキャッシュモード３０１２５が「ＯＦＦ」と判定して、移行先正ストレージ装置３Ａはライト要求を移行元正ストレージ装置３Ｃへ送信する。移行元正ストレージ装置３Ｃでは、移行元正論理デバイス３３Ｃのボリューム属性３０１３２が「Ｐｒｉｍａｒｙ」であるため、ライト要求に基づいて移行元正論理デバイス３３Ｃを更新する。その後、移行元副ストレージ装置３Ｄへライトデータを含む更新コピー要求を発行する。移行元副ストレージ装置３Ｄは、受信した更新コピー要求に基づき、ＨＡペアの移行元副論理デバイス３３Ｄを更新する。その後、移行先正ストレージ装置３Ａは、ホスト計算機２へ完了応答を送信する。【０１０６】
移行先正ストレージ装置３Ａは、ホスト計算機２からマッピング先正論理デバイス３３Ａに対するリード要求を受信した場合、マッピング先正論理デバイス３３Ａのリードキャッシュモード３０１２４が「ＯＦＦ」であるため、リードデータを移行元正論理デバイス３３Ｃから読み込み、ホスト計算機２へ転送する。【０１０７】
移行先副ストレージ装置３Ｂは、ホスト計算機２からマッピング先副論理デバイス３３Ｂに対するライト要求を受信した場合、論理デバイス管理テーブル３０１２を参照して、マッピング先副論理デバイス３３Ｂのライトキャッシュモード３０１２５が「ＯＦＦ」と判定して、移行先副ストレージ装置３Ｂはライト要求を移行元副ストレージ装置３Ｄへ送信する。移行元副ストレージ装置３Ｄは、ライト要求に基づき、移行元正ストレージ装置３Ｃへライトデータを含む更新コピー要求を発行する。移行元正ストレージ装置３Ｃは、受信した更新コピー要求に基づき、ＨＡペアの移行元正論理デバイス３３Ｃを更新する。その後、移行元副ストレージ装置３Ｄは、ライト要求に基づき、移行元副論理デバイス３３Ｄを更新する。その後、移行先副ストレージ装置３Ｂは、ホスト計算機２へ完了応答を送信する。【０１０８】
移行先副ストレージ装置３Ｂは、ホスト計算機２からマッピング先副論理デバイス３３Ｂに対するリード要求を受信した場合、マッピング先副論理デバイス３３Ｂのリードキャッシュモード３０１２４が「ＯＦＦ」であるため、リードデータを移行元副論理デバイス３３Ｄから読み込み、ホスト計算機２へ転送する。【０１０９】
図１３は、図９のフローチャートにおいてステップＳ１００５を実行した後の計算機システムの状態を示す図である。移行元正ストレージ装置３Ｃの移行元正論理デバイス３３Ｃと、移行元副ストレージ装置３Ｄの移行元副論理デバイス３３Ｄの間でＨＡペア（第１のＨＡペア）が組まれている。さらに、移行先正ストレージ装置３Ａのマッピング先正論理デバイス３３Ａと、移行先副ストレージ装置３Ｂのマッピング先副論理デバイス３３Ｂの間でＨＡペア（第２のＨＡペア）が組まれている。【０１１０】
移行先正ストレージ装置３Ａは、ホスト計算機２からＩｎｑｕｉｒｙ要求（問合せ要求）を受信すると、マッピング先正論理デバイス３３Ａに関する応答をホスト計算機２に送信する。同様に、移行先副ストレージ装置３Ｂは、ホスト計算機２から問合せ要求を受信すると、マッピング先副論理デバイス３３Ｂに関する応答を前記ホスト計算機に送信する。ここで、マッピング先正論理デバイス３３Ａに関する応答とマッピング先副論理デバイス３３Ｂに関する応答は同一である。すなわち、移行先正ストレージ装置３Ａと移行先副ストレージ装置３Ｂは、ホスト計算機２からＩｎｑｕｉｒｙ要求（問合せ要求）を受信したとき、マッピング先正論理デバイス３３Ａとマッピング先副論理デバイス３３Ｂについて同じボリュームＩＤ３０１２６を応答する。さらに、そのボリュームＩＤ３０１２６は、図１０に示すストレージ移行処理を開始する前の計算機システムの状態において、移行元正ストレージ装置３Ｃと移行元副ストレージ装置３Ｄが、ホスト計算機２からＩｎｑｕｉｒｙ要求（問合せ要求）を受信したときに、それぞれ移行元正論理デバイス３３Ｃと移行元副論理デバイス３３Ｄについて応答するボリュームＩＤ３０１２６と同じである。【０１１１】
したがって、ホスト計算機２は、図１０の状態における移行元正論理デバイス３３Ｃと移行元副論理デバイス３３Ｄ、また図１３の状態におけるマッピング先正論理デバイス３３Ａとマッピング先副論理デバイス３３Ｂについて、同一の仮想論理デバイスとして認識する。そのため、ホスト計算機２を無停止で、移行元正ストレージ装置３Ｃと移行元副ストレージ装置３ＤのＨＡペアを、移行先正ストレージ装置３Ａと移行先副ストレージ装置３ＢのＨＡペアへ移行することができる。【０１１２】
ホスト計算機２は、ユーザプログラム２１０が仮想論理デバイスに対してライトまたはリードする場合、交替パス制御プログラム２１１のアクセス制御により、マッピング先正論理デバイス３３Ａまたはマッピング先副論理デバイス３３Ｂに対して入出力要求（ライト要求またはリード要求）を発行する。【０１１３】
移行先正ストレージ装置３Ａは、ホスト計算機２からマッピング先正論理デバイス３３Ａに対するライト要求を受信した場合、論理デバイス管理テーブル３０１２を参照して、マッピング先正論理デバイス３３Ａのライトキャッシュモード３０１２５を「ＴＨＲＯＵＧＨ」と判定し、自装置のキャッシュメモリ３０３におけるマッピング先正論理デバイス３３Ａに対応づけられた領域に、ライトデータを格納する。さらに、移行先正ストレージ装置３Ａは、移行元正ストレージ装置３Ｃへ移行元正論理デバイス３３Ｃに対するライト要求を発行することにより、ライトデータを移行元正論理デバイス３３Ｃへデステージングする。【０１１４】
移行元正ストレージ装置３Ｃは、移行先正ストレージ装置３Ａからライト要求を受信すると、移行元正論理デバイス３３Ｃのボリューム属性３０１３２が「Ｐｒｉｍａｒｙ」であるため、自装置のキャッシュメモリ３０３における移行元正論理デバイス３３Ｃに対応づけられた領域に、ライトデータを格納する。その後、移行元正ストレージ装置３Ｃは、移行元副ストレージ装置３Ｄの移行元副論理デバイス３３Ｄに対し、ライトデータを含む更新コピー要求を発行する。【０１１５】
移行元副ストレージ装置３Ｄでは、受信した更新コピー要求に基づき、自装置のキャッシュメモリ３０３における移行元副論理デバイス３３Ｄに対応づけられた領域に、ライトデータを格納する。その後、移行元副ストレージ装置３Ｄは、移行元正ストレージ装置３Ｃへ更新コピー要求に対する完了応答を送信する。移行元正ストレージ装置３Ｃは、移行先正ストレージ装置３Ａへライト要求に対する完了応答を送信する。【０１１６】
移行元正ストレージ装置３Ｃは、自装置のキャッシュメモリ３０３に格納されたライトデータを、移行元正論理デバイス３３Ｃに対応づけられた仮想デバイス３２を構成する記憶装置３１へデステージングする処理を、ライト要求に対する完了応答とは非同期に実行する。同様に、移行元副ストレージ装置３Ｄは、自装置が有するキャッシュメモリ３０３に格納されたライトデータを、移行元副論理デバイス３３Ｄに対応づけられた仮想デバイス３２を構成する記憶装置３１へデステージングする処理を、更新コピー要求に対する完了応答とは非同期に実行する。移行元正ストレージ装置３Ｃは、移行元正ストレージ装置３Ｃと移行元副ストレージ装置３Ｄそれぞれにおけるデステージング処理の完了を待たずに、移行先正ストレージ装置３Ａへ完了応答するので、結果として計算機システムのＨＡ構成を維持しつつ、ホスト計算機２のライト要求に対する計算機システムとしての応答を高速化できる。【０１１７】
移行先正ストレージ装置３Ａは、マッピング先正論理デバイス３３Ａのボリューム属性３０１３２が「Ｐｒｉｍａｒｙ」であるため、移行先副ストレージ装置３Ｂのマッピング先副論理デバイス３３Ｂに対し、ライトデータを含む更新コピー要求を発行（送信）する。移行先副ストレージ装置３Ｂは、移行先正ストレージ装置３Ａから更新コピー要求を受信すると、自装置のキャッシュメモリ３０３におけるマッピング先副論理デバイス３３Ｂに対応づけられた領域に、ライトデータを格納する。移行先副ストレージ装置３Ｂは、移行先正ストレージ装置３Ａへ更新コピー要求に対する完了応答を送信する。【０１１８】
ここで、上述したように、移行元副論理デバイス３３Ｄは、移行元正ストレージ装置３Ｃからの更新コピー要求に基づき、ライトデータの更新が行われている。仮に移行先副ストレージ装置３Ｂが移行元副ストレージ装置３Ｄへライトデータをデステージングしたとすると、移行元副論理デバイス３３Ｄが二重に更新されることになり、ライト要求に対する処理コストが増大する。【０１１９】
そこで、本実施例では、移行先副ストレージ装置３Ｂは、移行元副論理デバイス３３Ｄが二重に更新されることを防ぐために、マッピング先副論理デバイス３３Ｂのライトキャッシュモード３０１２５が「ＴＨＲＯＵＧＨ」であるにも関わらず、ライトデータの移行元副論理デバイス３３Ｄへのデステージングを行わないように制御する。すなわち、移行先副ストレージ装置３Ｂは、更新コピー要求のライトデータを、移行元副ストレージ装置３Ｄの移行元副論理デバイス３３Ｄに対してデステージングしないデータとして管理する。【０１２０】
具体的には、移行先副ストレージ装置３Ｂは、キャッシュ管理テーブル３０１３にライトデータについて登録する際、ライトデータを格納するキャッシュメモリ３０３のキャッシュアドレス３０１４０のデータ属性３０１４３を「Ｃｌｅａｎ」とする。移行先副ストレージ装置３Ｂで、ライト要求と非同期に行われるデステージング処理において、データ属性３０１４３が「Ｃｌｅａｎ」であるキャッシュアドレス３０１４０の領域についてはデステージングされない。したがって、移行元副論理デバイス３３Ｄが二重に更新されず、ライト要求に対する処理コストを削減できる。【０１２１】
移行先正ストレージ装置３Ａは、移行先副ストレージ装置３Ｂから更新コピー要求に対する完了応答を受信した後、ホスト計算機２へライト要求に対する完了応答を送信する。【０１２２】
次に、移行先正ストレージ装置３Ａは、ホスト計算機２からマッピング先正論理デバイス３３Ａに対するリード要求を受信した場合、マッピング先正論理デバイス３３Ａのリードキャッシュモード３０１２４が「ＯＮ」であるため、リード要求の対象となるデータ（リードデータ）が自装置のキャッシュメモリ３０３に存在するときは、リードデータをキャッシュメモリ３０３からホスト計算機２へ転送する。図１２のマッピング先正論理デバイス３３Ａのリードキャッシュモード３０１２４が「ＯＦＦ」の場合と比較して、リード要求に対して高速に応答可能となる。一方、移行先正ストレージ装置３Ａは、リードデータが自装置のキャッシュメモリ３０３に存在しないときは、リードデータを移行元正論理デバイス３３Ｃから読み込んだ後、キャッシュメモリ３０３からホスト計算機２へ転送する。【０１２３】
移行先副ストレージ装置３Ｂは、ホスト計算機２からマッピング先副論理デバイス３３Ｂに対するライト要求を受信した場合、マッピング先副論理デバイス３３Ｂのボリューム属性３０１３２が「Ｓｅｃｏｎｄａｒｙ」であるため、移行先正ストレージ装置３Ａのマッピング先正論理デバイス３３Ａに対し、ライトデータを含む更新コピー要求を発行（送信）する。移行先正ストレージ装置３Ａは、移行先副ストレージ装置３Ｂから更新コピー要求を受信すると、自装置のキャッシュメモリ３０３におけるマッピング先正論理デバイス３３Ａに対応づけられた領域に、ライトデータを格納する。移行先正ストレージ装置３Ａは、移行先副ストレージ装置３Ｂへ更新コピー要求に対する完了応答を送信する。【０１２４】
ここで、後述するように、移行元正論理デバイス３３Ｃは、移行元副ストレージ装置３Ｄからの更新コピー要求に基づき、ライトデータの更新が行われる。仮に移行先正ストレージ装置３Ａが移行元正ストレージ装置３Ｃへライトデータをデステージングしたとすると、移行元正論理デバイス３３Ｃが二重に更新されることになり、ライト要求に対する処理コストが増大する。【０１２５】
そこで、本実施例では、移行先正ストレージ装置３Ａは、移行元正論理デバイス３３Ｃが二重に更新されることを防ぐために、マッピング先正論理デバイス３３Ａのライトキャッシュモード３０１２５が「ＴＨＲＯＵＧＨ」であるにも関わらず、ライトデータの移行元正論理デバイス３３Ｃへのデステージングを行わないように制御する。すなわち、移行先正ストレージ装置３Ａは、更新コピー要求のライトデータを、移行元正ストレージ装置３Ｃの移行元副論理デバイス３３Ｃに対してデステージングしないデータとして管理する。【０１２６】
具体的には、移行先正ストレージ装置３Ａは、キャッシュ管理テーブル３０１３にライトデータについて登録する際、ライトデータを格納するキャッシュメモリ３０３のキャッシュアドレス３０１４０のデータ属性３０１４３を「Ｃｌｅａｎ」とする。移行先正ストレージ装置３Ａで、ライト要求と非同期に行われるデステージング処理において、データ属性３０１４３が「Ｃｌｅａｎ」であるキャッシュアドレス３０１４０の領域についてはデステージングされない。したがって、移行元正論理デバイス３３Ｃが二重に更新されず、ライト要求に対する処理コストを削減できる。【０１２７】
移行先副ストレージ装置３Ｂは、更新コピー要求に対する完了応答を受信した後、論理デバイス管理テーブル３０１２を参照して、マッピング先副論理デバイス３３Ｂのライトキャッシュモード３０１２５を「ＴＨＲＯＵＧＨ」と判定し、自装置のキャッシュメモリ３０３におけるマッピング先副論理デバイス３３Ｂに対応づけられた領域に、ライトデータを格納する。さらに、移行先副ストレージ装置３Ｂは、移行元副ストレージ装置３Ｄへ移行元副論理デバイス３３Ｄに対するライト要求を発行することにより、ライトデータを移行元副論理デバイス３３Ｄへデステージングする。【０１２８】
移行元副ストレージ装置３Ｄは、移行先副ストレージ装置３Ｂからライト要求を受信すると、移行元副論理デバイス３３Ｄのボリューム属性３０１３２が「Ｓｅｃｏｎｄａｒｙ」であるため、移行元正ストレージ装置３Ｃの移行元正論理デバイス３３Ｃに対し、ライトデータを含む更新コピー要求を発行する。【０１２９】
移行元正ストレージ装置３Ｃでは、受信した更新コピー要求に基づき、自装置のキャッシュメモリ３０３における移行元正論理デバイス３３Ｃに対応づけられた領域に、ライトデータを格納する。その後、移行元正ストレージ装置３Ｃは、移行元副ストレージ装置３Ｄへ更新コピー要求に対する完了応答を送信する。【０１３０】
その後、移行元副ストレージ装置３Ｄは、自装置のキャッシュメモリ３０３における移行元副論理デバイス３３Ｄに対応づけられた領域に、ライトデータを格納する。移行元副ストレージ装置３Ｄは、移行先副ストレージ装置３Ｂへライト要求に対する完了応答を送信する。移行先副ストレージ装置３Ｂは、ホスト計算機２へライト要求に対する完了応答を送信する。【０１３１】
移行元正ストレージ装置３Ｃは、自装置のキャッシュメモリ３０３に格納されたライトデータを、移行元正論理デバイス３３Ｃに対応づけられた仮想デバイス３２を構成する記憶装置３１へデステージングする処理を、更新コピー要求に対する完了応答とは非同期に実行する。同様に、移行元副ストレージ装置３Ｄは、自装置が有するキャッシュメモリ３０３に格納されたライトデータを、移行元副論理デバイス３３Ｄに対応づけられた仮想デバイス３２を構成する記憶装置３１へデステージングする処理を、ライト要求に対する完了応答とは非同期に実行する。移行元副ストレージ装置３Ｄは、移行元正ストレージ装置３Ｃと移行元副ストレージ装置３Ｄそれぞれにおけるデステージング処理の完了を待たずに、移行先副ストレージ装置３Ｂへ完了応答するので、結果として計算機システムのＨＡ構成を維持しつつ、ホスト計算機２のライト要求に対する計算機システムとしての応答を高速化できる。【０１３２】
移行先副ストレージ装置３Ｂは、ホスト計算機２からマッピング先副論理デバイス３３Ｂに対するリード要求を受信した場合、マッピング先副論理デバイス３３Ｂのリードキャッシュモード３０１２４が「ＯＮ」であるため、リードデータが自装置のキャッシュメモリ３０３に存在するときは、リードデータをキャッシュメモリ３０３からホスト計算機２へ転送する。図１２のマッピング先副論理デバイス３３Ｂのリードキャッシュモード３０１２４が「ＯＦＦ」の場合と比較して、リード要求に対して高速に応答可能となる。【０１３３】
一方、移行先副ストレージ装置３Ｂは、リードデータが自装置のキャッシュメモリ３０３に存在しないときは、リードデータを移行元副論理デバイス３３Ｄから読み込んだ後、キャッシュメモリ３０３からホスト計算機２へ転送する。【０１３４】
図１３を用いて、図９のフローチャートにおいてステップＳ１００６、Ｓ１００７を実行中の状態について説明する。ホスト計算機２がマッピング先正論理デバイス３３Ａまたはマッピング先副論理デバイス３３Ｂに対してリードする場合の処理は、図１３で上述した処理と同様である。【０１３５】
ホスト計算機２がマッピング先正論理デバイス３３Ａまたはマッピング先副論理デバイス３３Ｂへライトする場合、図１３で上述した処理に加えて、以下の処理を実行する。【０１３６】
ステップＳ１００６において、移行先正ストレージ装置３Ａで、マッピング先正論理デバイス３３Ａのデータを、移行先正論理デバイス３３Ａ’へコピーしている場合、移行先正ストレージ装置３Ａは、ホスト計算機２からマッピング先正論理デバイス３３Ａに対するライト要求を受信すると、キャッシュメモリ３０３と移行元正論理デバイス３３Ｃとマッピング先副論理デバイス３３Ｂに加えて、移行先正論理デバイス３３Ａ’も更新した後、ホスト計算機２へライト要求に対する完了応答を送信する。【０１３７】
また、移行先正ストレージ装置３Ａは、移行先副ストレージ装置３Ｂからマッピング先正論理デバイス３３Ａに対する更新コピー要求を受信すると、キャッシュメモリ３０３に加えて、移行先正論理デバイス３３Ａ’も更新した後、移行先副ストレージ装置３Ｂへ更新コピー要求に対する完了応答を送信する。【０１３８】
このようにライト要求または更新コピー要求を受信したときに、移行先正論理デバイス３３Ａ’を更新することにより、マッピング先正論理デバイス３３Ａから移行先正論理デバイス３３Ａ’への全領域コピーの完了後に、マッピング先正論理デバイス３３Ａと移行先正論理デバイス３３Ａ’が不一致となることを防ぐ。【０１３９】
また、ステップＳ１００７において、移行先副ストレージ装置３Ｂで、マッピング先副論理デバイス３３Ｂのデータを、移行先副論理デバイス３３Ｂ’へコピーしている場合は、上述した処理と同様の処理を行い、マッピング先副論理デバイス３３Ｂに対するライト要求または更新コピー要求を受信したときに、移行先副論理デバイス３３Ｂ’を更新する。移行先副ストレージ装置３Ｂは、移行先副論理デバイス３３Ｂ’を更新した後、ライト要求または更新コピー要求に対する完了応答を送信する。【０１４０】
図１４は、ストレージ移行処理を終了した後（図９のフローチャートにおいてステップＳ１００７を実行した後）の計算機システムの状態を示す図である。移行先正ストレージ装置３Ａのマッピング先正論理デバイス３３Ａと、移行先副ストレージ装置３Ｂのマッピング先副論理デバイス３３Ｂの間でＨＡペアが組まれている。【０１４１】
ホスト計算機２は、ユーザプログラム２１０が仮想論理デバイスに対してライトまたはリードする場合、交替パス制御プログラム２１１のアクセス制御により、マッピング先正論理デバイス３３Ａまたはマッピング先副論理デバイス３３Ｂに対して入出力要求（ライト要求またはリード要求）を発行する。このとき、移行元正ストレージ装置３Ｃと移行元副ストレージ装置３Ｄは使用されない。【０１４２】
移行先正ストレージ装置３Ａで、移行先正論理デバイス３３Ａ’及びマッピング先正仮想デバイス３２Ａを削除しても良く、仮想デバイス管理テーブル３０１１と論理デバイス管理テーブル３０１２において、移行先正論理デバイス３３Ａ’及びマッピング先正仮想デバイス３２Ａに関する情報を更新（削除）しても良い。同様に、移行先副ストレージ装置３Ｂで、移行先副論理デバイス３３Ｂ’及びマッピング先副仮想デバイス３２Ｂを削除しても良く、仮想デバイス管理テーブル３０１１と論理デバイス管理テーブル３０１２において、移行先副論理デバイス３３Ｂ’及びマッピング先副仮想デバイス３２Ｂに関する情報を更新（削除）しても良い。【０１４３】
上述のとおり、移行元正ストレージ装置３Ｃと移行元副ストレージ装置３Ｄは使用されないため、移行元正ストレージ装置３Ｃと移行元副ストレージ装置３Ｄは撤去可能である。すなわち、本実施例の計算機システムは、ＨＡペアを有する移行元正ストレージ装置３Ｃと移行元副ストレージ装置３Ｄを、それぞれ移行先正ストレージ装置３Ａと移行先副ストレージ装置３Ｂに、ＨＡ構成を維持しながらリプレースできる。【０１４４】
移行先正ストレージ装置３Ａは、ホスト計算機２からマッピング先正論理デバイス３３Ａに対するライト要求を受信すると、マッピング先正論理デバイス３３Ａのライトキャッシュモード３０１２５が「ＢＡＣＫ」であるため、自装置のキャッシュメモリ３０３におけるマッピング先正論理デバイス３３Ａに対応づけられた領域に、ライトデータを格納する。移行先正ストレージ装置３Ａは、移行先副ストレージ装置３Ｂのマッピング先副論理デバイス３３Ｂに対し、ライトデータを含む更新コピー要求を発行する。移行先副ストレージ装置３Ｂは、受信した更新コピー要求に基づき、自装置のキャッシュメモリ３０３におけるマッピング先副論理デバイス３３Ｂに対応づけられた領域に、ライトデータを格納する。移行先正ストレージ装置３Ａは、ライトデータの移行先正記憶装置３１Ａ’へのデステージングを行う前に、ホスト計算機２へ完了応答を送信する。【０１４５】
移行先正ストレージ装置３Ａは、ホスト計算機２からマッピング先正論理デバイス３３Ａに対するリード要求を受信すると、マッピング先正論理デバイス３３Ａのリードキャッシュモード３０１２４が「ＯＮ」であるため、リードデータが自装置のキャッシュメモリ３０３に存在する場合、リードデータをキャッシュメモリ３０３からホスト計算機２へ転送する。一方、移行先正ストレージ装置３Ａは、リードデータが自装置のキャッシュメモリ３０３に存在しない場合、リードデータを移行先正記憶装置３１Ａ’から読み込んだ後、キャッシュメモリ３０３からホスト計算機２へ転送する。【０１４６】
移行先副ストレージ装置３Ｂは、ホスト計算機２からマッピング先副論理デバイス３３Ｂに対するライト要求を受信すると、ライト要求に基づき、移行先正ストレージ装置３Ａのマッピング先正論理デバイス３３Ａに対し、ライトデータを含む更新コピー要求を発行する。移行先正ストレージ装置３Ａは、受信した更新コピー要求に基づき、自装置のキャッシュメモリ３０３におけるマッピング先正論理デバイス３３Ａに対応づけられた領域に、ライトデータを格納する。その後、移行先副ストレージ装置３Ｂは、マッピング先副論理デバイス３３Ｂのライトキャッシュモード３０１２５が「ＢＡＣＫ」であるため、自装置のキャッシュメモリ３０３におけるマッピング先副論理デバイス３３Ｂに対応づけられた領域に、ライトデータを格納する。移行先副ストレージ装置３Ｂは、ライトデータの移行先副記憶装置３１Ｂ’へのデステージングを行う前に、ホスト計算機２へ完了応答を送信する。【０１４７】
移行先副ストレージ装置３Ｂは、ホスト計算機２からマッピング先副論理デバイス３３Ｂに対するリード要求を受信すると、マッピング先副論理デバイス３３Ｂのリードキャッシュモード３０１２４が「ＯＮ」であるため、リードデータが自装置のキャッシュメモリ３０３に存在する場合、リードデータをキャッシュメモリ３０３からホスト計算機２へ転送する。一方、移行先副ストレージ装置３Ｂは、リードデータが自装置のキャッシュメモリ３０３に存在しない場合、リードデータを移行先副記憶装置３１Ｂ’から読み込んだ後、キャッシュメモリ３０３からホスト計算機２へ転送する。【０１４８】
図１５は、ストレージ装置３がホスト計算機２からリード要求を受信した際に行う処理（以下、ストレージリード処理）のフローチャートである。ストレージ装置３は、ホスト計算機２からリード要求を受信する（Ｓ１０１０）。次に、ストレージ装置３は、リード先の論理デバイス３３のリードキャッシュモード３０１２４が「ＯＮ」であるか否かを判定する（Ｓ１０１１）。【０１４９】
ストレージ装置３は、この判定において肯定結果を得ると（Ｓ１０１１：ＹＥＳ）、ステップＳ１０１４に進む。このとき、ストレージ装置３は、キャッシュのヒット／ミスを判定する。具体的には、ストレージ装置３は、キャッシュ管理テーブル３０１４を参照し、リード先の論理デバイス３０１４１及びＬＢＡ３０１４２を持つエントリが存在するか否かを判定する。【０１５０】
ストレージ装置３は、この判定において肯定結果を得ると（Ｓ１０１４：ＹＥＳ）、ステップＳ１０１５に進む。このとき、ストレージ装置３は、リードデータをキャッシュメモリ３０３から取得し、ホスト計算機２へ送信する（Ｓ１０１５）。【０１５１】
次に、ストレージ装置３は、ホスト計算機２へリード要求に対する完了報告を送信し（Ｓ１０１８）、ストレージリード処理を終了する。【０１５２】
一方、ストレージ装置３は、ステップＳ１０１１の判定において否定結果を得ると（Ｓ１０１１：ＮＯ）、ステップＳ１０１２に進む。このとき、ストレージ装置３は、リードデータを、リード先の論理デバイス３３と関連づけられている仮想デバイス３２からバッファメモリへ転送する。バッファメモリは、例えば、ストレージ装置３のキャッシュメモリ３０３において、キャッシュに使用しない領域である。【０１５３】
Ｓ１０１２またはＳ１０１６で、仮想デバイスからバッファメモリまたはキャッシュメモリ３０３へリードデータを転送する方法に関し、仮想デバイス管理テーブル３０１１において当該仮想デバイス３２に対応するエントリのデバイス種別３０１１１が「Ｉｎｔｅｒｎａｌ」の場合、リードデータをストレージ装置３内の記憶装置３１から取得して転送する。一方、仮想デバイス管理テーブル３０１１において当該仮想デバイス３２に対応するエントリのデバイス種別３０１１１が「Ｅｘｔｅｒｎａｌ」の場合、リードデータを外部のストレージ装置３から取得して転送する。【０１５４】
次に、ストレージ装置３は、リードデータをバッファメモリからホスト計算機２へ転送する（Ｓ１０１３）。ストレージ装置３は、ステップＳ１０１８の処理を行う。【０１５５】
一方、ストレージ装置３は、ステップＳ１０１４の判定において否定結果を得ると（Ｓ１０１４：ＮＯ）、ステップＳ１０１６に進む。このとき、ストレージ装置３は、リードデータを、リード先の論理デバイス３３と関連づけられている仮想デバイス３２からキャッシュメモリ３０３へ転送する。【０１５６】
次に、ストレージ装置３は、後続のリード要求でキャッシュメモリ３０３からリードデータをホスト計算機２へ転送できるように、リードデータについてキャッシュ管理テーブル３０１４へ登録する（Ｓ１０１７）。この際、データ属性３０１４３を「Ｃｌｅａｎ」として登録する。次に、ストレージ装置３は、上述したステップＳ１０１５に進む。【０１５７】
図１６は、ストレージ装置３がホスト計算機２からライト要求を受信した際に行う処理（以下、ストレージライト処理）のフローチャートである。ストレージ装置３は、ホスト計算機２からライト要求を受信する（Ｓ１０２０）。次に、ストレージ装置３は、ライト先の論理デバイス３３のボリューム属性３０１３２が「Ｓｅｃｏｎｄａｒｙ」であるか否かを判定する（Ｓ１０２１）。【０１５８】
ストレージ装置３は、この判定において肯定結果を得ると（Ｓ１０２１：ＹＥＳ）、ステップＳ１０２２へ進む。ストレージ装置３は、ＨＡペアの相手の論理デバイス３３へ更新コピー要求を送信する（Ｓ１０２２）。Ｓ１０２２及びＳ１０２５の具体的処理として、ストレージ装置３は、ペア管理テーブル３０１３を参照し、ライト先の論理デバイス３３に対応するエントリの相手装置製番３０１３３によって特定されるストレージ装置３の相手論理デバイス番号３０１３４によって特定される論理デバイス３３宛に、更新コピー要求を送信する。【０１５９】
次に、ストレージ装置３は、自論理デバイス３３を更新する（Ｓ１０２３）。自論理デバイス３３の更新の詳細については、図１７のフローチャートを用いて説明する。【０１６０】
次に、ストレージ装置３は、ライト先の論理デバイス３３のボリューム属性３０１３２が「Ｐｒｉｍａｒｙ」であるか否かを判定する（Ｓ１０２４）。【０１６１】
ストレージ装置３は、この判定において肯定結果を得ると（Ｓ１０２４：ＹＥＳ）、ステップＳ１０２５に進む。ストレージ装置３は、ＨＡペアの相手の論理デバイス３３へ更新コピー要求を送信する（Ｓ１０２５）。【０１６２】
次に、ストレージ装置３は、ホスト計算機２へライト要求に対する完了報告を送信し（Ｓ１０２６）、ストレージライト処理を終了する。【０１６３】
一方、ストレージ装置３は、ステップＳ１０２１の判定において否定結果を得ると（Ｓ１０２１：ＮＯ）、ステップＳ１０２３に進む。【０１６４】
一方、ストレージ装置３は、ステップＳ１０２４の判定において否定結果を得ると（Ｓ１０２４：ＮＯ）、ステップＳ１０２６に進む。【０１６５】
図１７は、ストレージ装置３が自装置内の論理デバイス３３を更新する際に行う処理（以下、論理デバイス更新処理）のフローチャートである。ストレージ装置３は、ライト先の論理デバイス３３のライトキャッシュモード３０１２５が「ＯＦＦ」であるか否かを判定する（Ｓ１０３０）。【０１６６】
ストレージ装置３は、この判定において肯定結果を得ると（Ｓ１０３０：ＹＥＳ）、ステップＳ１０３１に進む。ストレージ装置３は、ライトデータを、ライト要求送信元からバッファメモリへ転送する（Ｓ１０３１）。ライト要求送信元は、ホスト計算機２または他のストレージ装置３である。【０１６７】
次に、ストレージ装置３は、ライトデータをバッファメモリからライトデータに対応する論理デバイス３３と関連づけられている仮想デバイス３２へ転送する（Ｓ１０３２）。Ｓ１０３２またはＳ１０３７の具体的な処理として、仮想デバイス管理テーブル３０１１において当該仮想デバイス３２に対応するエントリのデバイス種別３０１１１が「Ｉｎｔｅｒｎａｌ」の場合、ストレージ装置３は、ライトデータをストレージ装置３内の記憶装置３１に格納する。一方、仮想デバイス管理テーブル３０１１において当該仮想デバイス３２に対応するエントリのデバイス種別３０１１１が「Ｅｘｔｅｒｎａｌ」の場合、ストレージ装置３は、ライトデータを外部のストレージ装置３へ転送する。【０１６８】
ストレージ装置３は、ステップＳ１０３２を終了すると、論理デバイス更新処理を終了する。【０１６９】
一方、ストレージ装置３は、ステップＳ１０３０の判定において否定結果を得ると（Ｓ１０３０：ＮＯ）、ステップＳ１０３３に進む。このとき、ストレージ装置３は、キャッシュのヒット／ミスを判定する（Ｓ１０３３）。具体的には、ストレージ装置３は、キャッシュ管理テーブル３０１４を参照し、ライトデータに対応する論理デバイス３０１４１とＬＢＡ３０１４２を持つエントリが存在するか否かを判定する。【０１７０】
ストレージ装置３は、この判定において肯定結果を得ると（Ｓ１０３３：ＹＥＳ）、ステップＳ１０３４に進む。ストレージ装置３は、ライトデータを、ライト要求送信元からキャッシュメモリ３０３へ転送する（Ｓ１０３４）。ライト要求送信元は、ホスト計算機２または他のストレージ装置３である。【０１７１】
次に、ストレージ装置３は、ライト先の論理デバイス３３のライトキャッシュモード３０１２５が「ＴＨＲＯＵＧＨ」であるか否かを判定する（Ｓ１０３５）。ストレージ装置３は、この判定において肯定結果を得ると（Ｓ１０３５：ＹＥＳ）、ステップＳ１０３６に進む。このとき、ストレージ装置３は、ライト要求の送信元がホスト計算機２であるか否かを判定する。【０１７２】
ストレージ装置３は、この判定において肯定結果を得ると（Ｓ１０３６：ＹＥＳ）、ステップＳ１０３７に進む。ストレージ装置３は、ライトデータをキャッシュメモリ３０３からライトデータに対応する論理デバイス３３と関連づけられている仮想デバイス３２へ転送（デステージング）する（Ｓ１０３７）。【０１７３】
次に、ストレージ装置３は、ライトデータについて、キャッシュ管理テーブル３０１４へ登録する。この際、データ属性３０１４３を「Ｃｌｅａｎ」として登録する。【０１７４】
ストレージ装置３は、ステップＳ１０３８を終了すると、論理デバイス更新処理を終了する。【０１７５】
一方、ストレージ装置３は、ステップＳ１０３３の判定において否定結果を得ると（Ｓ１０３３：ＮＯ）、ステップＳ１０３９に進む。ストレージ装置３は、ライトデータを格納するための領域をキャッシュメモリ３０３上に確保する（Ｓ１０３９）。具体的には、ストレージ装置３は、キャッシュ管理テーブル３０１４に新たにエントリを追加する。ストレージ装置３は、追加するエントリにおいて、キャッシュアドレス３０１４０を、他のエントリで使われておらず、キャッシュメモリ３０３内の領域を特定するための値に設定する。また、ストレージ装置３は、追加するエントリにおいて、論理デバイス番号３０１４１をライト先の論理デバイス３３を特定する番号に、ＬＢＡ３０１４２をライト先のＬＢＡに、設定する。次に、ストレージ装置３は、ステップＳ１０３４に進む。【０１７６】
一方、ストレージ装置３は、ステップＳ１０３５の判定において否定結果を得ると（Ｓ１０３５：ＮＯ）、ステップＳ１０４０に進む。否定結果を得たということは、ライトキャッシュモード３０１２５は「ＢＡＣＫ」である。このとき、ストレージ装置３は、ライトデータについて、データ属性３０１４３を「Ｄｉｒｔｙ」として、キャッシュ管理テーブル３０１４へ登録する。【０１７７】
ストレージ装置３は、ステップＳ１０４０を終了すると、論理デバイス更新処理を終了する。ストレージ装置３は、ステップＳ１０３６の判定において否定結果を得ると（Ｓ１０３６：ＮＯ）、ステップＳ１０３８に進む。
【実施例２】
【０１７８】
実施例１と同様の構成要素には同じ符号をつけて、説明を省略する。以下、実施例１と異なる点について説明し、その他の構成要素は実施例１と同様である。例えば、図２〜図８で示される実施例１の計算機システムの構成、またストレージ装置３で実行される図１５のストレージリード処理、図１６のストレージライト処理、図１７の論理デバイス更新処理は、本実施例の計算機システムでも適用可能である。【０１７９】
実施例１では、ＨＡ構成を組んでいる２台のストレージ装置３におけるＨＡペアを、異なる２台のストレージ装置３に移行する場合について説明した。本実施例では、ＨＡ構成を組んでいる２台のストレージ装置３におけるＨＡペアについて、ＨＡペアの一方の論理デバイス３３を異なるストレージ装置３に移行し、ＨＡペアの他方の論理デバイス３３は同じストレージ装置内で移行する場合について説明する。【０１８０】
図１８は、本実施例の計算機システムの構成を示す図である。複数のストレージ装置３が、ネットワーク４を介して１又は複数のホスト計算機２と接続されている。【０１８１】
以下、ストレージ装置３として、ストレージ装置３Ｅ、移行先ストレージ装置３Ｆ、移行元ストレージ装置３Ｇについて説明する。ストレージ装置３Ｅと移行元ストレージ装置３Ｇは、ストレージの可用性を向上させるためのＨＡ構成を組んでいる。【０１８２】
本実施例の計算機システムでは、ＨＡ構成を維持しながら、ストレージ装置３Ｅと移行元ストレージ装置３ＧのＡｃｔｉｖｅ−Ａｃｔｉｖｅ型のＨＡペアを、ストレージ装置３Ｅと移行先ストレージ装置３Ｆに移行することができる。ここで、ＨＡペアの移行とは、移行元ストレージ装置３Ｇが有するＨＡペアの一方の論理デバイス３３のデータを移行先ストレージ装置３Ｆに移行して、ストレージ装置３Ｅが有するＨＡペアの他方の論理デバイス３３のデータを同じストレージ装置３Ｅ内の異なる論理デバイスに移行することで、ストレージ装置３Ｅと移行先ストレージ装置３Ｆでホスト計算機２にＨＡペアを提供することである。ＨＡペアの移行後、ストレージ装置３Ｅと移行先ストレージ装置３Ｆが、ＨＡ構成を組んでいる。【０１８３】
本実施例の計算機システムにおけるＨＡペアの移行方法は、ＨＡペアを有するストレージ装置３Ｅと移行元ストレージ装置３Ｇについて、ＨＡ構成を維持しながら、一方の移行元ストレージ装置３Ｇを移行先ストレージ装置３Ｆにリプレースする場合に適用可能である。【０１８４】
本実施例におけるストレージ移行処理は、基本的に図９を用いて説明した処理と同じであり、以下異なる点について説明する。【０１８５】
ストレージ装置３Ｅが有するＨＡペアの論理デバイス３３のボリューム属性３０１３２が「Ｐｒｉｍａｒｙ」であり、移行元ストレージ装置３Ｇが有するＨＡペアの論理デバイス３３のボリューム属性３０１３２が「Ｓｅｃｏｎｄａｒｙ」である場合、移行先ストレージ装置３Ｆは実施例１のストレージ移行処理の移行先副ストレージ装置３Ｂと同様の処理を行う。また、移行元ストレージ装置３Ｇは、実施例１のストレージ移行処理の移行元副ストレージ装置３Ｄと同様の処理を行う。【０１８６】
一方、ストレージ装置３Ｅは、実施例１の移行先正ストレージ装置３Ａと移行元正ストレージ装置３Ｃの両方の処理を行う。以下、ストレージ移行処理におけるストレージ装置３Ｅに関する動作について説明する。【０１８７】
ステップＳ１０００では、ストレージ装置３Ｅは、管理装置１からの指示を受けて、ストレージ装置３Ｅが有する移行元正論理デバイス３３Ｃを、ストレージ装置３Ｅ内でマッピング先正仮想デバイス３２Ａとして仮想化する。このとき、ストレージ装置３Ｅは、ストレージ装置３Ｅが有する論理デバイス管理テーブル３０１２のマッピング先論理デバイス３３Ａに対応するエントリのリードキャッシュモード３０１２４を「ＯＦＦ」に、ライトキャッシュモード３０１２５を「ＯＦＦ」に設定する。【０１８８】
ステップＳ１００２では、ストレージ装置３Ｅは、管理装置１からの指示を受けて、ストレージ装置３Ｅ内に移行先正仮想デバイス３２Ａ’と移行先正論理デバイス３３Ａ’を作成する。【０１８９】
ステップＳ１００４では、ホスト計算機２は、管理装置１からの指示を受けて、入出力要求の発行先をストレージ装置３Ｅ内で移行元正論理デバイス３３Ｃからマッピング先正論理デバイス３３Ａへ変更する。【０１９０】
ステップＳ１００５では、ストレージ装置３Ｅと移行先ストレージ装置３Ｆは、マッピング先正論理デバイス３３Ａとマッピング先副論理デバイス３３ＢのＨＡペアを作成する。また、ストレージ装置３Ｅは、ストレージ装置３Ｅが有する論理デバイス管理テーブル３０１２のマッピング先正論理デバイス３３Ａに対応するエントリのリードキャッシュモード３０１２４を「ＯＮ」に、ライトキャッシュモード３０１２５を「ＴＨＲＯＵＧＨ」に変更する。【０１９１】
ステップＳ１００６では、ストレージ装置３Ｅは、管理装置１からの指示を受けて、マッピング先正論理デバイス３３Ａの全領域のデータを、移行先正論理デバイス３３Ａ’へコピーする。また、ストレージ装置３Ｅは、コピーの完了後、マッピング先正論理デバイス３３Ａと移行先正論理デバイス３３Ａ’に関連づけられている仮想デバイス３２を交換する。また、ストレージ装置３Ｅは、ストレージ装置３Ｅが有する論理デバイス管理テーブル３０１２のマッピング先正論理デバイス３３Ａに対応するエントリのライトキャッシュモード３０１２５を「ＢＡＣＫ」に変更する。【０１９２】
また、ストレージ装置３Ｅが有するＨＡペアの論理デバイス３３のボリューム属性３０１３２が「Ｓｅｃｏｎｄａｒｙ」であり、移行元ストレージ装置３Ｇが有するＨＡペアの論理デバイス３３のボリューム属性３０１３２が「Ｐｒｉｍａｒｙ」である場合についても、同様にストレージ移行処理を実行する。この場合、移行先ストレージ装置３Ｆは、実施例１のストレージ移行処理の移行先正ストレージ装置３Ａと同様の処理を行う。また、移行元ストレージ装置３Ｇは、実施例１のストレージ移行処理の移行元正ストレージ装置３Ｃと同様の処理を行う。一方、ストレージ装置３Ｅは、実施例１の移行先副ストレージ装置３Ｂと移行元副ストレージ装置３Ｄの両方の処理を行う。
【符号の説明】
【０１９３】
１  管理装置、２  ホスト計算機、３  ストレージ装置、４  ネットワーク、５  ネットワーク、３０  コントローラ、３１  記憶装置、３２  仮想デバイス、３３  論理デバイス、３００  ＣＰＵ、３０１  メモリ、３０２  ポート、３０３  キャッシュメモリ、３０１０  入出力制御プログラム、３０１１  仮想デバイス管理テーブル、３０１２  論理デバイス管理テーブル、３０１３  ペア管理テーブル、３０１４  キャッシュ管理テーブル
【図１】
2016117040.tif 000003
【図２】
2016117040.tif 000004
【図３】
2016117040.tif 000005
【図４】
2016117040.tif 000006
【図５】
2016117040.tif 000007
【図６】
2016117040.tif 000008
【図７】
2016117040.tif 000009
【図８】
2016117040.tif 000010
【図９】
2016117040.tif 000011
【図１０】
2016117040.tif 000012
【図１１】
2016117040.tif 000013
【図１２】
2016117040.tif 000014
【図１３】
2016117040.tif 000015
【図１４】
2016117040.tif 000016
【図１５】
2016117040.tif 000017
【図１６】
2016117040.tif 000018
【図１７】
2016117040.tif 000019
【図１８】
2016117040.tif 000020
【国際調査報告】
2016117040.tif 000021
2016117040.tif 000022