(57)【要約】【課題】  容量拡張ボリュームの要件を満たすことができない事象が生じても、ユーザが意図した容量拡張ボリュームの要件を満たすこと。【解決手段】  ストレージサブシステム１０００から管理計算機４０００にイベント情報が送信されたときに、管理計算機４００は、イベントの影響を受ける物理リソースを特定し、特定された物理リソースが容量拡張ボリュームのプール要件を満たすか否かを判定し、プール要件を満たさない場合、物理リソースの中からプール要件を満たす物理リソースを選出し、データの移動をストレージサブシステム１０００に指示し、ストレージサブシステム１０００は、イベントの影響を受ける物理リソースに格納されていたデータを、プール要件を満たす物理リソースに移動し、イベントの影響を受ける物理リソースの物理リソース番号を、プール要件を満たす物理リソースの物理リソース番号へ変更する。【選択図】図１
2010055209.tif 000002
【特許請求の範囲】
【請求項１】
ホスト計算機と通信ネットワークを介して情報の授受を行い、前記ホスト計算機からのアクセスに応じ、前記ホスト計算機に記憶装置の記憶領域を提供するストレージサブシステムと、前記記憶装置の記憶領域を容量拡張ボリュームとして管理する管理計算機を備え、
前記管理計算機は、前記容量拡張ボリュームの一部の領域にプール要件を満たさない事象が生じたときに、前記容量拡張ボリュームのプール要件を満たす論理ボリュームを選出するステップを実行し、
前記ストレージサブシステムは、前記管理計算機からの指示に応答して、前記容量拡張ボリュームの一部の領域を前記選出された論理ボリュームに再配置するステップを実行する、論理ボリュームのデータ移動方法。
【請求項２】
前記管理計算機は、前記ストレージサブシステムから送信されたイベント情報を受信したことを条件に、前記イベント情報と前記論理ボリュームの構成情報を基に前記容量拡張ボリュームのプール要件を満たすか否かを判定するステップと、前記ステップで否定の判定結果を得たときに、前記プール要件を満たすデータ領域を選出するステップと、前記プール要件を満たさなくなったデータ領域から前記プール要件を満たすデータ領域へのデータの移動を前記ストレージサブシステムに指示するステップを実行し、
前記ストレージサブシステムは、イベントを検知したときに、イベント情報を前記管理計算機に送信するステップと、前記管理計算機から前記データの移動に関する指示を受けたときに、前記プール要件を満たさなくなったデータ領域から前記プール要件を満たすデータ領域へデータを移動するステップと、前記論理ボリュームの構成情報を、前記プール要件を満たさなくなったデータ領域から前記プール要件を満たすデータ領域に変更するステップを実行する、請求項１に記載の論理ボリュームのデータ移動方法。
【請求項３】
前記管理計算機は、前記ストレージサブシステムから送信されたイベント情報を受信したことを条件に、前記ホスト計算機のアクセス対象の物理リソースのうち前記イベント情報の影響を受ける物理リソースを特定するステップと、前記特定された物理リソースが前記容量拡張ボリュームのプール要件を満たすか否かを判定するステップと、前記ステップで否定の判定結果を得たときに、前記アクセス対象の物理リソースの中から前記プール要件を満たすことができる物理リソースを選出するステップと、前記イベント情報の影響を受ける物理リソースに格納されていたデータを、前記プール要件を満たす物理リソースへ移動させるデータの移動を前記ストレージサブシステムに指示するステップを実行し、
前記ストレージサブシステムは、イベントを検知したときに、イベント情報を前記管理計算機に送信するステップと、前記管理計算機から前記データの移動に関する指示を受けたときに、前記イベント情報の影響を受ける物理リソースに格納されていたデータを、前記プール要件を満たす物理リソースへ移動させるステップと、前記イベント情報の影響を受ける物理リソースの物理リソース番号を、前記プール要件を満たす物理リソースの物理リソース番号に変更するステップを実行する、請求項１に記載の論理ボリュームのデータ移動方法。
【請求項４】
ホスト計算機と通信ネットワークを介して情報の授受を行い、前記ホスト計算機からのアクセスに応じ、前記ホスト計算機に記憶装置の記憶領域を提供する複数のストレージサブシステムと、前記記憶装置の記憶領域を容量拡張ボリュームとして管理する管理計算機を備え、
前記管理計算機は、前記容量拡張ボリュームの一部の領域にプール要件を満たさない事象が生じたときに、前記容量拡張ボリュームのプール要件を満たす論理ボリュームを選出するステップを実行し、
前記ストレージサブシステムのうち１つは、前記管理計算機からの指示に応答して、前記容量拡張ボリュームの一部の領域を前記選出された論理ボリュームに再配置するステップを実行する、論理ボリュームのデータ移動方法。
【請求項５】
前記管理計算機は、前記ストレージサブシステムのうち外部ストレージサブシステムから送信されたイベント情報を受信したことを条件に、前記イベント情報と前記論理ボリュームの構成情報および前記外部ストレージサブシステムの対応関係を基に前記容量拡張ボリュームのプール要件を満たすか否かを判定するステップと、前記ステップで否定の判定結果を得たときに、前記プール要件を満たすデータ領域を選出するステップと、前記プール要件を満たさなくなったデータ領域から前記プール要件を満たすデータ領域へのデータの移動を前記ストレージサブシステムのうち指定のストレージサブシステムに指示するステップを実行し、
前記外部ストレージサブシステムは、イベントを検知したときに、イベント情報を前記管理計算機に送信するステップを実行し、
前記指定のストレージサブシステムは、前記管理計算機から前記データの移動に関する指示を受けたときに、前記プール要件を満たさなくなったデータ領域から前記プール要件を満たすデータ領域へデータを移動するステップと、前記論理ボリュームの構成情報を、前記プール要件を満たさなくなったデータ領域から前記プール要件を満たすデータ領域に変更するステップを実行する、請求項４に記載の論理ボリュームのデータ移動方法。
【請求項６】
前記管理計算機は、前記ストレージサブシステムのうち外部ストレージサブシステムから送信されたイベント情報を受信したことを条件に、前記ホスト計算機のアクセス対象の物理リソースのうち前記イベント情報の影響を受ける物理リソースを特定するステップと、前記特定された物理リソースが前記容量拡張ボリュームのプール要件を満たすか否かを判定するステップと、前記ステップで否定の判定結果を得たときに、前記アクセス対象の物理リソースの中から前記プール要件を満たすことができる物理リソースを選出するステップと、前記イベント情報の影響を受ける物理リソースに格納されていたデータを、前記プール要件を満たす物理リソースへ移動させるデータの移動を前記ストレージサブシステムのうち指定のストレージサブシステムに指示するステップを実行し、
前記外部ストレージサブシステムは、イベントを検知したときに、イベント情報を前記管理計算機に送信するステップを実行し、
前記指定のストレージサブシステムは、前記管理計算機から前記データの移動に関する指示を受けたときに、前記イベント情報の影響を受ける物理リソースに格納されていたデータを、前記プール要件を満たす物理リソースへ移動させるステップと、前記イベント情報の影響を受ける物理リソースの物理リソース番号を、前記プール要件を満たす物理リソースの物理リソース番号に変更するステップを実行する、請求項４に記載の論理ボリュームのデータ移動方法。
【請求項７】
ホスト計算機と通信ネットワークを介して情報の授受を行い、前記ホスト計算機からのアクセスに応じ、前記ホスト計算機に記憶装置の記憶領域を提供するストレージサブシステムと、前記記憶装置の記憶領域を容量拡張ボリュームとして管理する管理計算機を備え、
前記管理計算機は、前記容量拡張ボリュームの一部の領域にプール要件を満たさない事象が生じたときに、前記容量拡張ボリュームのプール要件を満たす論理ボリュームを選出し、
前記ストレージサブシステムは、前記管理計算機からの指示に応答して、前記容量拡張ボリュームの一部の領域を前記選出された論理ボリュームに再配置してなる、ストレージシステム。
【請求項８】
前記管理計算機は、前記ストレージサブシステムから送信されたイベント情報を受信したことを条件に、前記イベント情報と前記論理ボリュームの構成情報を基に前記容量拡張ボリュームのプール要件を満たすか否かを判定し、前記ステップで否定の判定結果を得たときに、前記プール要件を満たすデータ領域を選出し、前記プール要件を満たさなくなったデータ領域から前記プール要件を満たすデータ領域へのデータの移動を前記ストレージサブシステムに指示し、
前記ストレージサブシステムは、イベントを検知したときに、イベント情報を前記管理計算機に送信し、前記管理計算機から前記データの移動に関する指示を受けたときに、前記プール要件を満たさなくなったデータ領域から前記プール要件を満たすデータ領域へデータを移動し、前記論理ボリュームの構成情報を、前記プール要件を満たさなくなったデータ領域から前記プール要件を満たすデータ領域に変更する、請求項７に記載のストレージシステム。
【請求項９】
前記管理計算機は、前記ストレージサブシステムから送信されたイベント情報を受信したことを条件に、前記ホスト計算機のアクセス対象の物理リソースのうち前記イベント情報の影響を受ける物理リソースを特定し、前記特定された物理リソースが前記容量拡張ボリュームのプール要件を満たすか否かを判定し、前記ステップで否定の判定結果を得たときに、前記アクセス対象の物理リソースの中から前記プール要件を満たすことができる物理リソースを選出し、前記イベント情報の影響を受ける物理リソースに格納されていたデータを、前記プール要件を満たす物理リソースへ移動させるデータの移動を前記ストレージサブシステムに指示し、
前記ストレージサブシステムは、イベントを検知したときに、イベント情報を前記管理計算機に送信し、前記管理計算機から前記データの移動に関する指示を受けたときに、前記イベント情報の影響を受ける物理リソースに格納されていたデータを、前記プール要件を満たす物理リソースへ移動し、前記イベント情報の影響を受ける物理リソースの物理リソース番号を、前記プール要件を満たす物理リソースの物理リソース番号に変更する、請求項７に記載のストレージシステム。
【請求項１０】
ホスト計算機と通信ネットワークを介して情報の授受を行い、前記ホスト計算機からのアクセスに応じ、前記ホスト計算機に記憶装置の記憶領域を提供する複数のストレージサブシステムと、前記記憶装置の記憶領域を容量拡張ボリュームとして管理する管理計算機を備え、
前記管理計算機は、前記容量拡張ボリュームの一部の領域にプール要件を満たさない事象が生じたときに、前記容量拡張ボリュームのプール要件を満たす論理ボリュームを選出し、
前記ストレージサブシステムのうち１つは、前記管理計算機からの指示に応答して、前記容量拡張ボリュームの一部の領域を前記選出された論理ボリュームに再配置する、ストレージシステム。
【請求項１１】
前記管理計算機は、前記ストレージサブシステムのうち外部ストレージサブシステムから送信されたイベント情報を受信したことを条件に、前記イベント情報と前記論理ボリュームの構成情報および前記外部ストレージサブシステムの対応関係を基に前記容量拡張ボリュームのプール要件を満たすか否かを判定し、前記判定で否定の判定結果を得たときに、前記プール要件を満たすデータ領域を選出し、前記プール要件を満たさなくなったデータ領域から前記プール要件を満たすデータ領域へのデータの移動を前記ストレージサブシステムのうち指定のストレージサブシステムに指示し、
前記外部ストレージサブシステムは、イベントを検知したときに、イベント情報を前記管理計算機に送信し、
前記指定のストレージサブシステムは、前記管理計算機から前記データの移動に関する指示を受けたときに、前記プール要件を満たさなくなったデータ領域から前記プール要件を満たすデータ領域へデータを移動し、前記論理ボリュームの構成情報を、前記プール要件を満たさなくなったデータ領域から前記プール要件を満たすデータ領域に変更する、請求項１０に記載のストレージシステム。
【請求項１２】
前記管理計算機は、前記ストレージサブシステムのうち外部ストレージサブシステムから送信されたイベント情報を受信したことを条件に、前記ホスト計算機のアクセス対象の物理リソースのうち前記イベント情報の影響を受ける物理リソースを特定し、前記特定された物理リソースが前記容量拡張ボリュームのプール要件を満たすか否かを判定し、前記判定で否定の判定結果を得たときに、前記アクセス対象の物理リソースの中から前記プール要件を満たすことができる物理リソースを選出し、前記イベント情報の影響を受ける物理リソースに格納されていたデータを、前記プール要件を満たす物理リソースへ移動させるデータの移動を前記ストレージサブシステムのうち指定のストレージサブシステムに指示し、
前記外部ストレージサブシステムは、イベントを検知したときに、イベント情報を前記管理計算機に送信し、
前記指定のストレージサブシステムは、前記管理計算機から前記データの移動に関する指示を受けたときに、前記イベント情報の影響を受ける物理リソースに格納されていたデータを、前記プール要件を満たす物理リソースへ移動し、前記イベント情報の影響を受ける物理リソースの物理リソース番号を、前記プール要件を満たす物理リソースの物理リソース番号に変更する、請求項１０に記載のストレージシステム。
【請求項１３】
ホスト計算機に記憶装置の記憶領域を提供するストレージサブシステムと情報の授受を行うとともに、前記記憶装置の記憶領域を容量拡張ボリュームとして管理する管理部を備え、
前記管理部は、前記容量拡張ボリュームの一部の領域にプール要件を満たさない事象が生じたときに、前記容量拡張ボリュームのプール要件を満たす論理ボリュームを選出し、前記容量拡張ボリュームの一部の領域を前記選出された論理ボリュームに再配置するための指示を前記ストレージサブシステムに送信してなる、管理計算機。
【請求項１４】
前記管理部は、前記ストレージサブシステムから送信されたイベント情報を受信したことを条件に、前記イベント情報と前記論理ボリュームの構成情報を基に前記容量拡張ボリュームのプール要件を満たすか否かを判定し、前記判定で否定の判定結果を得たときに、前記プール要件を満たすデータ領域を選出し、前記プール要件を満たさなくなったデータ領域から前記プール要件を満たすデータ領域へのデータの移動を前記ストレージサブシステムに指示してなる、請求項１３に記載の管理計算機。
【請求項１５】
前記管理部は、前記ストレージサブシステムから送信されたイベント情報を受信したことを条件に、前記ホスト計算機のアクセス対象の物理リソースのうち前記イベント情報の影響を受ける物理リソースを特定し、前記特定された物理リソースが前記容量拡張ボリュームのプール要件を満たすか否かを判定し、前記判定で否定の判定結果を得たときに、前記アクセス対象の物理リソースの中から前記プール要件を満たすことができる物理リソースを選出し、前記イベント情報の影響を受ける物理リソースに格納されていたデータを、前記プール要件を満たす物理リソースへ移動させるデータの移動を前記ストレージサブシステムに指示してなる、請求項１３に記載の管理計算機。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、論理ボリュームのデータ移動方法とストレージシステムに関し、特に、記憶装置の容量自動拡張方法によって生成された論理ボリュームのデータ移行技術に関する。
【背景技術】
【０００２】
近年、計算機システムの保持するデータ量は飛躍的に増大している。増大するデータを格納する計算機システムに大規模な記憶容量を有するストレージシステムが適用されるようになった。
【０００３】
ストレージシステムは、ホスト計算機に対し論理ボリュームという単位で記憶領域を提供している。従来は、論理ボリュームは、管理者が必要な記憶容量を見積もった後、固定容量の論理ボリュームを生成していた。しかし、近年のストレージシステムでは、記憶領域の利用効率をより一層高める論理ボリュームの生成方法が求められるようになった。
【０００４】
そこで、特許文献１に示す、ホスト計算機からのアクセス要求に応じて、物理リソースの一部領域（以下、セグメント）を論理ボリュームに割り当てることによって、論理ボリュームの容量を自動拡張する方法が登場してきた。また、特許文献２に示すように、第１のストレージと第２のストレージを接続し、ホスト計算機から第１のストレージに対してＩ/Ｏ要求があるときには、第２のストレージへＩ/Ｏを転送するようにした技術（外部接続に関する技術）も提案されている。
【０００５】
なお、本明細書では、前記容量を自動拡張する方法により提供される論理ボリュームを、容量拡張ボリュームと用語定義する。容量拡張ボリュームは、一般的にThin Provisioning ボリュームと呼ばれる。また、本明細書では、複数のハードディスクから構成されるＲＡＩＤ（Redundant Array of Independent Disks）上の論理デバイスを、物理リソースとして用語定義する。
【０００６】
また、本明細書では、異なるストレージサブシステムの記憶領域を仮想的に１台のストレージサブシステムとして管理する技術を外部接続、仮想的に１台のストレージサブシステムとして管理されたシステムにおいて、データが記憶されている記憶領域を有するストレージサブシステムを外部ストレージサブシステム、と用語定義する。
【０００７】
【特許文献１】特開２００３−１５９１５号公報
【特許文献２】特開２００３−５３７０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
特許文献１によって提供された容量拡張ボリュームの運用中に、例えば、第１のストレージと第２のストレージの接続に障害などのイベントが発生すると、容量拡張ボリュームの一部領域がアクセス不可能となり、ユーザが意図した容量拡張ボリュームの要件が満たせなくなる、という課題がある。
【０００９】
本発明は、容量拡張ボリュームの利用時に、容量拡張ボリュームの要件を満たすことができない事象が生じても、ユーザが意図した容量拡張ボリュームの要件を満たすことができる、論理ボリュームのデータ移動方法とストレージシステムおよび管理計算機を提供することを目的とするものである。
【課題を解決するための手段】
【００１０】
上記目的を達成するために、本発明は、ホスト計算機と通信ネットワークを介して情報の授受を行い、ホスト計算機からのアクセスに応じ、ホスト計算機に記憶装置の記憶領域を提供するストレージサブシステムと、記憶装置の記憶領域を容量拡張ボリュームとして管理する管理計算機を備えた構成の下で、管理計算機は、容量拡張ボリュームの一部の領域にプール要件を満たさない事象が生じたときに、容量拡張ボリュームのプール要件を満たす論理ボリュームを選出し、ストレージサブシステムは、管理計算機からの指示に応答して、容量拡張ボリュームの一部の領域を、選出された論理ボリュームに再配置することを特徴とする。
【発明の効果】
【００１１】
本発明によれば、容量拡張ボリュームの利用時に、容量拡張ボリュームの一部の領域にプール要件を満たさない事象が生じた場合においても、ユーザが意図した容量拡張ボリュームの要件を満たすことが出来る。
【発明を実施するための最良の形態】
【００１２】
以下、本発明の実施形態について、図面を参照しながら説明する。なお、これにより本発明が限定されるものではない。
【実施例１】
【００１３】
（１）第１実施形態のシステム構成
図１に、本実施形態の計算機システムの構成を示す。本発明の計算機システムでは、ストレージサブシステム１０００とホスト計算機２０００がスイッチ装置３０００で互いに接続される。
【００１４】
本実施例では、スイッチ装置３０００はＳＡＮ（Storage Area Network）を構成する FC(Fiber Channel) スイッチ装置とするが、ＩＰ（Internet Protocol）ネットワークであっても、あるいはこれら以外のデータ通信用のスイッチ装置であっても良い。
【００１５】
ストレージサブシステム１０００はスイッチ装置５０００を介して管理計算機４０００と接続される。本実施例では、スイッチ装置５０００はＩＰスイッチ装置とするが、ＳＡＮであっても、あるいはこれら以外のデータ通信用ネットワークであっても良い。また、スイッチ装置３０００とスイッチ装置５０００が同一スイッチ装置であっても良いし、ホスト計算機２０００と管理計算機４０００が同一計算機であっても良い。
【００１６】
なお、説明の都合上、図１では、ストレージサブシステム１０００を１台、ホスト計算機２０００を１台、スイッチ装置３０００を１台、管理計算機４０００を１台、スイッチ装置５０００を１台としたが、本発明ではこれらの数は問わない。
【００１７】
ストレージサブシステム１０００は、データを格納するディスク装置１１００、ストレージサブシステム内の制御を行うディスクコントローラ１２００で構成されている。ディスク装置１１００は、一つ以上の論理ボリューム１１１０とプール１１２０を備えている。論理ボリューム１１１０は、一つ以上の物理リソース１１２１から生成され、ホスト計算機２０００によって利用されるデータを格納している。なお、説明の都合上、図１ではプール１１２０を一つとしたが、本発明ではこれらの数は問わない。
【００１８】
プール１１２０は、一つ以上の物理リソース１１２１を備えている。プール１１２０は、物理リソース１１２１を管理上の観点から、まとめて管理するための論理的なグループである。管理上の観点には、例えばＲＡＩＤタイプがある。ＲＡＩＤタイプの一例としては、大容量を提供するために、複数ハードディスクを１つにまとめ巨大な記憶領域として提供するＲＡＩＤ０や、ハードディスクの冗長度を高めるために、ハードディスク間でミラーリングを行うＲＡＩＤ１がある。
【００１９】
ディスクコントローラ１２００は、メインメモリ１２１０、制御装置１２２０、Ｉ／Ｆ１  １２３０、Ｉ／Ｆ２  １２４０、ディスクＩ／Ｆ１２５０、を備えている。メインメモリ１２１０には、イベント送信プログラム１２１１、セグメント移動プログラム１２１２、物理論理情報管理プログラム１２１３、物理論理管理テーブル１２１３、セグメント管理テーブル１２１４、物理リソース管理テーブル１２１５が記憶されている。
【００２０】
イベント送信プログラム１２１１は、障害等のイベントを検知すると、ストレージサブシステム１０００を管理する管理計算機４０００へイベント情報を送信するプログラムである。セグメント移動プログラム１２１２は、管理計算機４０００からの指示に従い、容量拡張ボリューム１１１０で利用しているセグメント領域のデータを別セグメント領域へ移動するプログラムである。物理論理情報管理プログラム１２１３は、物理論理管理テーブル１２１４およびセグメント管理テーブル１２１５の情報を参照または更新し、容量拡張ボリューム１１１０の構成情報を管理するプログラムである。物理リソース管理テーブル１２１６は、例えば冗長性の有無といった物理リソース１１２１の特性の情報が格納されたテーブルである。
【００２１】
制御装置１２２０は、メインメモリ１２１０に格納されたイベント送信プログラム１２１１、セグメント移動プログラム１２１２、物理論理情報管理プログラム１２１３を読み出し実行する。
【００２２】
Ｉ／Ｆ１  １２３０は、スイッチ装置３０００とのインタフェースであって、ホスト計算機２０００とデータや制御命令の送受信を行う。Ｉ／Ｆ２  １２４０は、スイッチ装置４０００とのインタフェースであって、管理計算機４０００とデータや制御命令の送受信を行う。ディスクＩ／Ｆ１２５０は、ディスク装置１１００に対するインタフェースであって、データや制御命令の送受信を行う。
【００２３】
ホスト計算機２０００は、メインメモリ２１００、制御装置２２００、Ｉ／Ｆ２３００から構成される。なお、ホスト計算機２０００には、図示を省略する入力装置（キーボード、表示装置等）が備わっていても良い。
【００２４】
メインメモリ２１００には、アプリケーション２１１０が記憶されている。アプリケーション２１２０は、ストレージサブシステム１０００の容量拡張ボリューム１１１０へアクセスするプログラムである。一例としてDBMS（Database Management System） がある。制御装置２２００は、メインメモリ２１００に格納されたアプリケーション２１１０を読み出し実行する。
【００２５】
Ｉ／Ｆ２３００は、スイッチ装置３０００とのインタフェースであって、ストレージサブシステム１０００とデータや制御命令の送受信を行う。スイッチ装置３０００は、Ｉ／Ｆ１  ３１００、Ｉ／Ｆ２  ３２００から構成される。Ｉ／Ｆ１  ３１００は、ストレージサブシステム１０００とのインタフェースであって、ストレージサブシステム１０００とデータや制御命令の送受信を行う。Ｉ／Ｆ２  ３２００は、ホスト計算機２０００とのインタフェースであって、ホスト計算機２０００とデータや制御命令の送受信を行う。なお、説明の都合上Ｉ／Ｆ１、Ｉ／Ｆ２はそれぞれ１つとしているが複数あっても良い。
【００２６】
管理計算機４０００は、メインメモリ４１００、制御装置４２００、Ｉ／Ｆ４３００を含む管理部から構成される。なお、管理計算機４０００には、図示を省略する入力装置（キーボード、表示装置等）が備わっていても良い。
【００２７】
メインメモリ４１００には、容量拡張ボリューム管理プログラム４１１０、イベント受信プログラム４１２０、セグメント移動指示プログラム４１３０、ストレージ構成管理テーブル４１４０、プール要件テーブル４１５０が記憶されている。
【００２８】
容量拡張ボリューム管理プログラム４１１０は、イベント受信プログラム４１２０からイベント情報を受け取ると、ストレージサブシステム１０００からセグメント管理テーブル１２１５と物理リソース管理テーブル１２１６を取得し、プール要件テーブル４１５０に格納されたプール要件を満たすセグメントを検索し、セグメント移動指示プログラム４１３０へセグメントの移動指示を送るプログラムである。
【００２９】
イベント受信プログラム４１２０は、ストレージサブシステム１０００から障害などのイベント情報を受信したのち、プール要件テーブル４１５０から受信したイベント情報の結果、プール要件を満たさなくなるかを判断し、満たさなくなる場合は、容量拡張ボリューム管理プログラム４１１０を呼び出すプログラムである。
【００３０】
セグメント移動指示プログラム４１３０は、容量拡張ボリューム管理プログラム４１１０から移動元の物理リソース番号と移動先の物理リソース番号を受信した後、ストレージサブシステム１０００のセグメント移動プログラム１２１２へ物理リソースの移動指示を送信するプログラムである。
【００３１】
ストレージ構成管理テーブル４１４０は、ストレージサブシステム１０００の容量拡張ボリューム１１１０とホスト計算機２０００までの接続構成を表す情報を格納するテーブルである。
【００３２】
接続構成を表す情報の一例として、容量拡張ボリューム１１１０の識別子であるＬＵＮ（Logical Unit Number）、容量拡張ボリューム１１１０の割当先ホスト計算機２０００の識別名、ホスト計算機２０００との通信に利用するＩ／Ｆの識別名、ストレージサブシステム１０００とホスト計算機２０００の接続に利用するスイッチ装置の識別名、を持つ。プール要件テーブル４１５０は、容量拡張ボリューム１１１０の生成元であるプール１１２０のユーザ要件を格納するテーブルである。一例として、プールの識別であるプール番号、プール要件、を持つ。
【００３３】
制御装置４２００は、メインメモリ４１００に格納された容量拡張ボリューム管理プログラム４１１０、イベント受信プログラム４１２０、セグメント移動指示プログラム４１３０を読み出し実行する。
【００３４】
Ｉ／Ｆ４３００は、スイッチ装置５０００とのインタフェースであって、ストレージサブシステム１０００とデータや制御命令の送受信を行う。スイッチ装置５０００は、Ｉ／Ｆ１  ５１００、Ｉ／Ｆ２  ５２００から構成される。Ｉ／Ｆ１  ５１００は、ストレージサブシステム１０００とのインタフェースであって、ストレージサブシステム１０００とデータや制御命令の送受信を行う。Ｉ／Ｆ２  ５２００は、管理計算機４０００とのインタフェースであって、管理計算機４０００とデータや制御命令の送受信を行う。なお、説明の都合上Ｉ／Ｆ１、Ｉ／Ｆ２はそれぞれ１つとしているが複数あっても良い。
【００３５】
図２に、本実施形態の物理論理管理テーブル１２１４を示す。物理論理管理テーブル１２１４は、容量拡張ボリュームの構成を示す情報として、ＬＵＮ  Ｔ２００、セグメント番号Ｔ２１０、開始アドレスＴ２２０、終了アドレスＴ２３０を有している。
【００３６】
ＬＵＮ  Ｔ２００は、論理ボリューム１１１０を識別するための番号が格納される。セグメント番号Ｔ２１０は、仮想ボリュームに割当済みのセグメントを識別する番号が格納される。開始アドレスＴ２２０、終了アドレスＴ２３０は、ホスト計算機２０００に提供する論理ボリュームのアドレスを表す。論理ボリュームのアドレスとして、一般的に使われるものにＬＢＡ（Logical Block Address）がある。
【００３７】
図３に、本実施形態のセグメント管理テーブル１２１５を示す。セグメント管理テーブル１２１５は、セグメントの管理を行う情報として、プール番号Ｔ３００、物理リソース番号Ｔ３１０、セグメント番号Ｔ３２０、開始アドレスＴ３３０、終了アドレスＴ３４０、使用状況Ｔ３５０を有している。
【００３８】
プール番号Ｔ３００は、物理リソース１１２１をまとめて管理するための論理的なグループであるプールを識別する情報が格納される。物理リソース番号Ｔ３１０は、物理リソース１１２１を識別するための情報が格納される。
【００３９】
セグメント番号Ｔ３２０には、物理リソース１１２１をある任意のサイズで論理分割した単位であるセグメントを、識別する情報が格納される。開始アドレスＴ３３０と終了アドレスＴ３４０は、物理リソース１１２１上のセグメントのアドレスを表す。物理リソースのアドレスとして、一般的に使われるものにＬＢＡがある。
【００４０】
使用状況Ｔ３５０は、セグメントが論理ボリューム１１１０に割当済みかどうかを表す情報が格納される。使用状況としては、セグメントが論理ボリュームへ割当済みの状況を表す「割当済」、セグメントが論理ボリュームへ未割当ての状況を表す「未割当」がある。なお、説明の都合上、図３では使用状況を文字列として表すが、使用状況を識別可能な数字などに置き換え格納して良い。
【００４１】
図４に、本実施形態の論理ボリューム１１１０の具体的構成と、図２について上述した物理論理管理テーブル１２１１及び図３について上述したセグメント管理テーブル１２１４の具体例とを示す。
【００４２】
図４（Ａ）に示すように、論理ボリューム１１１０は、１又は複数の物理リソース１１２１から構成される。この図４（Ａ）の例では、容量可変ボリュームである論理ボリューム１１１０が、第１のプール領域（プール１）１１２０の第１の物理リソース（物理リソース１）１１２１のセグメントと、第２の物理リソース（物理リソース２）１１２１のセグメントとが割り当てられて構成されている。
【００４３】
この場合、物理論理管理テーブル１２１１（図４（Ｂ））のＬＵＮ Ｔ２００には、ホスト計算機２０００が容量拡張ボリューム１１１０を識別するための番号として、この容量拡張ボリューム１１１０のＬＵＮである「０」が格納される。またセグメント番号Ｔ２１０には、当該論理ボリューム１１１０に割り当てられたセグメントの識別番号である「１」及び「３」が格納され、セグメントが未割当の領域に対しては「ＮＵＬＬ」が格納される。なお、説明の都合上、図４（Ｂ）では未割当の領域に「ＮＵＬＬ」を格納しているが、未割当を意味する別の文字列や数字に置き換え格納しても良い。物理論理管理テーブル１２１１の開始アドレスＴ２２０及び終了アドレスＴ２３０には、ホスト計算機２０００から利用される各領域のアドレスがそれぞれ格納される。
【００４４】
図４（Ｃ）に示すように、このときセグメント管理テーブル１２１４のプール番号Ｔ３００には、第１プール領域１１２０の識別番号である「１」が格納される。またこの例の場合、第１のプール領域１１２０は物理リソース番号がそれぞれ「０」と「１」の第１及び第２の物理リソース１１２１から構成されているため、これらの数値が物理リソース番号Ｔ３１０に格納される。
【００４５】
さらに図４（Ａ）に示すように、この例の場合、第１及び第２の物理リソースが共に３つのセグメントから構成されており、これら各セグメントにそれぞれ「０」〜「５」のセグメント番号が付与されているため、セグメント管理テーブル１２１４のセグメント番号Ｔ３２０にはこれらの数値がそれぞれ格納される。
【００４６】
さらに、開始アドレスＴ３３０及び終了アドレスＴ３４０には、これら各セグメントの開始アドレス及び終了アドレスが具体的に格納され、各使用状況Ｔ３５０には、対応するセグメントの使用状況（「未割当」又は「割当済」）が格納されている。この例の場合、論理ボリューム１１１０に対してセグメント番号が「１」及び「３」の各セグメントが割り当てられているため、これらに対応する使用状況Ｔ３５０に「割当済」の情報が格納され、これ以外のセグメントに対応する使用状況Ｔ３５０に「未割当」の情報が格納されている。
【００４７】
図５に、本実施形態の物理リソース管理テーブル１２１６を示す。物理リソース管理テーブル１２１６は、物理リソースの管理情報として、物理リソース番号Ｔ３００、物理リソース１１２１の特性を表す情報として冗長性Ｔ３１０、応答性能Ｔ３２０、コストＴ３３０、内部／外部ディスクＴ３４０、を有している。
【００４８】
なお、説明の都合上、物理リソースの特性を示す情報として前述した、冗長性、応答性能、コスト、内部／外部ディスクとしているが、そのほかの情報として、省電力機能の有無、ＲＡＩＤレベル、キャッシュメモリの利用量、容量、提供ベンダ、サイズなどの情報を持っていても良い。
【００４９】
物理リソース番号Ｔ３００は、物理リソース１１２１の識別番号が格納される。冗長性Ｔ３１０は、物理リソース１１２１が冗長性を持つか否かの情報が格納される。応答性能Ｔ３２０は、物理リソース１１２１の応答性能が早いか遅いかの情報が格納される。コストＴ３３０は、物理リソース１１２１のコストが高いか低いかの情報が格納される。
【００５０】
なお、本明細書では、説明の都合上、物理リソースの特性を示す情報として、前記の情報を用いているが、物理リソースの特性を示す情報であれば、これに変わる情報であっても良い。一例として、応答性能Ｔ３２０は、単位時間あたりの転送速度の情報であっても良い。
【００５１】
図６に、本実施形態のストレージ構成管理テーブル４１４０を示す。ストレージ構成管理テーブル４１４０は、ストレージサブシステム１０００の容量拡張ボリュームとホスト計算機２０００までの接続構成を表す情報として、ＬＵＮ  Ｔ４００、割当ホスト計算機Ｔ４１０、利用Ｉ／Ｆ  Ｔ４２０、接続スイッチ装置Ｔ４３０、を有している。ＬＵＮ  Ｔ４００は、容量拡張ボリュームの識別情報が格納される。なお、本明細書では、容量拡張ボリュームの識別情報としてＬＵＮを用いているが、ＬＵＮに変わる他の識別情報であっても良い。
【００５２】
割当ホスト計算機Ｔ４１０は、容量拡張ボリュームが割り当てられたホスト計算機２０００の識別情報が格納される。利用Ｉ／Ｆ  Ｔ４２０は、容量拡張ボリュームとホスト計算機２０００の通信に利用されるＩ／Ｆ１２３０の識別情報が格納される。接続スイッチ装置Ｔ４３０は、容量拡張ボリュームとホスト計算機２０００の通信に利用されるスイッチ装置３０００の識別情報が格納される。
【００５３】
図７に、本実施形態のプール要件テーブル４１５０を示す。プール要件テーブル４１５０は、プールのユーザ要件を表す情報として、プール番号Ｔ５００、プール要件Ｔ５１０、を有している。プール番号Ｔ５００は、容量拡張ボリュームの生成元であるプール１１２０の識別情報が格納される。プール要件Ｔ５１０は、プール１１２０が満たさなければならない要件情報が格納される。なお、本明細書では、説明の都合上、プールの要件情報を１項目にて表現しているが、複数の項目としてわけ表現しても良い。
【００５４】
（２）第１実施形態の動作
まず、イベント送信プログラム１２１１の処理について、図８を参照しながら説明する。イベント送信プログラム１２１１は、容量拡張ボリューム１１１０の一部の領域にプール要件を満たさない事象が生じたとして、例えば、障害を検知する（Ｓ１０００）。なお、本明細書では、説明の都合上、検知するイベントを障害としているが、その他ユーザからの指示、ストレージサブシステムの高負荷による性能低下、など他のイベントであっても良い。
【００５５】
次に、イベント送信プログラム１２１１は、障害情報をイベント受信プログラム４１２０へ送信する。障害情報とは、障害の発生部位を識別する情報、故障内容、重要度、障害発生時刻などを含んでいる情報である。本明細書では、説明の都合上、障害が物理リソースを構成する一部ハードディスクに発生したと仮定し、さらに、送信される障害の発生部位を識別する情報として、物理リソース番号とする。
【００５６】
イベント受信プログラム４１２０の処理について、図９を参照しながら説明する。イベント受信プログラム４１２０は、ストレージサブシステム１０００のイベント送信プログラム１２１１から、障害が発生した物理リソース番号を含む障害情報を受信する（Ｓ２０００）。
【００５７】
次に、イベント受信プログラム４１２０は、ストレージサブシステム１０００からセグメント管理テーブル１２１５を取得する（Ｓ２１００）。その後、イベント受信プログラム４１２０は、障害の影響を受ける物理リソースの識別番号とセグメント管理テーブル１２１５の物理リソース番号Ｔ３１０が一致するレコードのプール番号Ｔ３００を取得する（Ｓ２２００）。
【００５８】
次に、イベント受信プログラム４１２０は、前記処理（Ｓ２２００）にて取得したプール番号とプール要件テーブル４１５０のプール番号Ｔ５００が一致したレコードのプール要件Ｔ５１０を取得する（Ｓ２３００）。
【００５９】
その後、イベント受信プログラム４１２０は、受信した障害内容によりプール要件Ｔ５１０が満たさなくなるかを判定する（Ｓ２４００）。イベント受信プログラム４１２０は、判定した結果、プール要件を満たす場合、処理を終了する（Ｓ２５００）。
【００６０】
一方、イベント受信プログラム４１２０は、判定した結果、プール要件を満たさなくなる場合、容量拡張ボリューム管理プログラム４１１０へ障害が発生した物理リソース番号、プール番号、満たさなくなったプール要件を送信する（Ｓ２６００）。
【００６１】
容量拡張ボリューム管理プログラム４１１０の処理について図１０を参照しながら説明する。容量拡張ボリューム管理プログラム４１１０は、イベント受信プログラム４１２０から障害情報、障害が発生した物理リソース番号、プール番号、満たさなくなったプール要件を受信する（Ｓ３０００）。
【００６２】
次に、容量拡張ボリューム管理プログラム４１１０は、ストレージサブシステム１０００からセグメント管理テーブル１２１５と物理リソース管理テーブル１２１６を取得する（Ｓ３１００）。
【００６３】
その後、容量拡張ボリューム管理プログラム４１１０は、取得した物理リソース管理テーブル１２１６から、満たさなくなったプール要件を満たし、且つ障害が発生した物理リソース以外の条件を満たす物理リソース番号を取得する（Ｓ３２００）。
【００６４】
次に、容量拡張ボリューム管理プログラム４１１０は、取得した条件を満たす物理リソース番号と障害が発生した物理リソース番号をセグメント移動指示プログラム４１３０へ送信する（Ｓ３３００）。
【００６５】
次に、セグメント移動指示プログラム４１３０の処理について図１１を参照しながら説明する。セグメント移動指示プログラム４１３０は、容量拡張ボリューム管理プログラム４１１０から、条件を満たす物理リソース番号と障害が発生した物理リソース番号を受信する（Ｓ４０００）。
【００６６】
次に、セグメント移動指示プログラム４１３０は、障害が発生した物理リソースに格納されたデータを、条件を満たす物理リソースへ移動するように指示をセグメント移動プログラム１２１１へ送信する（Ｓ４１００）。
【００６７】
次に、セグメント移動プログラム１２１２の処理について図１２を参照しながら説明する。セグメント移動プログラム１２１２は、セグメント移動指示プログラム４１３０から、障害が発生した物理リソースに格納されたデータを、条件を満たす物理リソースへ移動する指示を受信する（Ｓ５０００）。
【００６８】
次に、セグメント移動プログラム１２１２は、障害が発生した物理リソースに格納されたデータを、条件を満たす物理リソースを移動する（Ｓ５１００）。なお、本明細書では、説明の都合上、データを移動するとしたが、データを移動元から削除しないコピー処理でも良い。
【００６９】
その後、セグメント移動プログラム１２１２は、移動元セグメントである障害が発生した物理リソース番号と、移動先セグメントである条件を満たす物理リソース番号を、物理論理情報管理プログラム１２１３へ送信する（Ｓ５２００）。
【００７０】
物理論理情報管理プログラム１２１３の処理について図１３を参照しながら説明する。
物理論理情報管理プログラム１２１３は、セグメント移行プログラム１２１２から移動元物理リソース番号と移動先物理リソース番号を受信する（Ｓ６０００）。
【００７１】
次に、物理論理情報管理プログラム１２１３は、セグメント管理テーブル１２１５の物理リソース番号Ｔ２１０と移動元物理リソース番号と一致するセグメント番号Ｔ２２０を取得する（Ｓ６１００）。
【００７２】
さらに、物理論理情報管理プログラム１２１３は、セグメント管理テーブル１２１５の物理リソース番号Ｔ２１０と移動先物理リソース番号とが一致するセグメント番号Ｔ２２０を取得する（Ｓ６２００）。
【００７３】
その後、物理論理情報管理プログラム１２１３は、セグメント管理テーブル１２１５の物理リソース番号Ｔ２１０と移動先物理リソース番号とが一致するレコードの使用状況Ｔ２５０を"割当済"に変更する（Ｓ６３００）。
【００７４】
続いて、物理論理情報管理プログラム１２１３は、物理論理管理テーブル１２１４のセグメント番号Ｔ１１０と前記Ｓ６１００で取得したセグメント番号と一致するレコードを取得する（Ｓ６４００）。
【００７５】
次に、物理論理情報管理プログラム１２１３は、前記Ｓ６４００で取得したレコードのセグメント番号を、前記Ｓ６２００で取得したセグメント番号に変更する（Ｓ６５００）。
【００７６】
その後、物理論理情報管理プログラム１２１３は、セグメント管理テーブル１２１５の物理リソース番号Ｔ２１０と、移動元物理リソース番号が一致するレコードの使用状況Ｔ２５０を"未割当"に変更する（Ｓ６６００）。
【００７７】
以上、第１実施形態によれば、ストレージサブシステム１０００の障害などのイベントを検知すると、イベントの影響を受ける物理リソースを特定し、その後、プール要件テーブル４１５０を参照し、プール要件を満たさなくなるかを確認し、満たさなくなる場合には、ストレージ構成管理テーブル４１４０、物理論理管理テーブル１２１４、セグメント管理テーブル１２１５、物理リソース１１２１からプール要件を満たすことが出来る物理リソース１１２１を選出し、イベントの影響を受ける物理リソース１１２１に格納されていたデータを、プール要件を満たせる物理リソース１１２１に移動し、物理論理管理テーブル１２１４、セグメント管理テーブル１２１５の物理リソース番号をイベントの影響をうける物理リソース１１２１の物理リソース番号から、プール要件を満たせる物理リソース１１２１の物理リソース番号へ変更することで、障害などのイベントが発生した場合であっても、容量拡張ボリューム１１１０の要件を満たすことが出来る。
【００７８】
＜第２実施形態＞
第２実施形態では、第１実施形態とは異なるシステム構成にて、障害などのイベント発生時における容量拡張ボリュームの要件を満たす処理について示す。前述した第１実施形態では、図１にて示した前記ストレージサブシステム１０００が要する容量拡張ボリューム１１１０の構成要素である物理リソース１１２１は全て同一のストレージサブシステム１０００が所有する物理リソース１１２１として処理を行っていた。しかし、以下に説明する第２実施形態では、前記ストレージサブシステム１０００の一部物理リソース１１２１の実体を、外部ストレージサブシステム６０００に持つシステム構成下で、第１実施形態と同様の効果を得る。
【００７９】
（１）第２実施形態のシステム構成
第２実施形態のシステム構成では、大部分は前述した第１実施形態と同様であるため、異なる構成のみ説明する。図１４に第２実施形態の計算機システムの構成を示す。
【００８０】
図１に示す第１実施形態の計算機システムに加え、第２実施形態の計算機システムでは、前記ストレージサブシステム１０００と外部ストレージサブシステム６０００がスイッチ装置７０００で互いに接続される。
【００８１】
本実施例では、スイッチ装置７０００は前記スイッチ装置３０００と同じＳＡＮを構成する FC スイッチ装置とするが、ＩＰネットワークであっても、あるいはこれら以外のデータ通信用のスイッチ装置であっても良い。
【００８２】
ストレージサブシステム１０００は、第１実施形態の構成要素に加え、スイッチ装置７０００と接続するディスクコントローラ１２００上のＩ／Ｆ３  １２６０、メインメモリ１２１０上に外部ストレージ管理テーブル１２１７が追加され構成されている。
【００８３】
Ｉ／Ｆ３  １２６０は、スイッチ装置７０００とのインタフェースであって、外部ストレージサブシステム６０００とデータや制御命令の送受信を行う。外部ストレージ管理テーブル１２１７は、外部ストレージ６０００が有する論理ボリューム６１１０と前記ストレージサブシステム１０００が有する物理リソース１１２１の対応関係を表す情報を有するテーブルである。ストレージサブシステム６０００は、データを格納するディスク装置６１００、ストレージサブシステム内の制御を行うディスクコントローラ６２００で構成されている。
【００８４】
ディスク装置６１００は、一つ以上の論理ボリューム６１１０を備えている。論理ボリューム６１１０は、ホスト計算機２０００によって利用されるデータを、前記ストレージサブシステム１０００を経由し格納している。なお、説明の都合上、図１４では論理ボリュームを容量拡張ボリュームではなく、固定容量のボリュームとしたが、容量拡張ボリュームでも良い。さらに、説明の都合上、図示を省略する前記ストレージサブシステム１０００と同様の論理ボリューム６１１０の生成元であるプール、物理リソースが備わっていても良い。ディスクコントローラ１２００は、メインメモリ６２１０、制御装置６２２０、Ｉ／Ｆ１  ６２３０、Ｉ／Ｆ２  ６２４０、ディスクＩ／Ｆ６２５０、を備えている。
【００８５】
メインメモリ６２１０には、イベント送信プログラム６２１１が記憶されている。イベント送信プログラムは、障害等のイベントを検知すると、ストレージサブシステム６０００を管理する管理計算機４０００へイベント情報を送信するプログラムである。  制御装置６２２０は、メインメモリ６２１０に格納されたイベント送信プログラム６２１１を読み出し実行する。
【００８６】
Ｉ／Ｆ１  ６２３０は、スイッチ装置７０００とのインタフェースであって、前記ストレージサブシステム１０００とデータや制御命令の送受信を行う。Ｉ／Ｆ２  ６２４０は、スイッチ装置７０００とのインタフェースであって、管理計算機４０００とデータや制御命令の送受信を行う。ディスクＩ／Ｆ６２５０は、ディスク装置６１００に対するインタフェースであって、データや制御命令の送受信を行う。
【００８７】
図１５に、本実施形態の外部ストレージ管理テーブル１２１３を示す。外部ストレージ管理テーブル１２１７は、ストレージサブシステム１０００と外部ストレージサブシステム６０００の接続情報として、物理リソース番号Ｔ６００、外部ボリューム情報Ｔ６１０、接続スイッチ装置Ｔ６２０を有している。
【００８８】
物理リソース番号Ｔ６００は、外部ストレージサブシステム６０００が有する論理ボリューム６１００に対応付けられたストレージサブシステム１０００の物理リソース１１２１を識別するための情報が格納される。外部ボリューム情報Ｔ６１０は、外部ストレージサブシステム６０００が有する論理ボリューム６１００を識別するための情報が格納される。
【００８９】
なお、説明の都合上、当該論理ボリューム６１００を識別するための情報として、外部ストレージサブシステムのモデル名、シリアル番号及び論理ボリュームに割り当てられたＬＵＮ（Logical Unit Number）の組み合わせた情報として表すが、当該論理ボリュームを識別可能な情報であれば、形式を問わない。接続スイッチ装置Ｔ６２０は、ストレージサブシステム１０００と外部ストレージサブシステム６０００の接続に利用するスイッチ装置７０００の識別情報が格納される。
【００９０】
（２）第２実施形態の動作
第２実施形態の動作では、大部分は前述した第１実施形態と同様であるため、異なる構成のみ説明する。次に、第２実施形態におけるイベント送信プログラム６２１１の処理について、図８を参照しながら説明する。
【００９１】
イベント送信プログラム６２１１が、障害を検知する（Ｓ１０００）。なお、本明細書では、説明の都合上、検知するイベントを障害としているが、その他ユーザからの指示、ストレージサブシステムの高負荷による性能低下、など他のイベントであっても良い。
【００９２】
次に、障害情報をイベント受信プログラム４１２０へ送信する。障害情報とは、障害の発生部位を識別する情報、故障内容、重要度、障害発生時刻などを含んでいる情報である。本明細書では、説明の都合上、障害が、外部ストレージサブシステム６０００が有する論理ボリューム６１１０を構成する一部ハードディスクに発生したと仮定し、さらに、送信される障害の発生部位を識別する情報とし、当該論理ボリューム６１００を識別するための情報として、外部ストレージサブシステムのモデル名、シリアル番号及び論理ボリュームに割り当てられたＬＵＮ（Logical Unit Number）の組み合わせた情報とする。
【００９３】
イベント受信プログラム４１２０の処理について、図１６を参照しながら説明する。イベント受信プログラム４１２０は、外部ストレージサブシステム６０００のイベント送信プログラム６２１１から、障害が発生した論理ボリュームの識別情報を含む障害情報を受信する（Ｓ７０００）。
【００９４】
次に、イベント受信プログラム４１２０は、ストレージサブシステム１０００から外部ストレージ管理テーブル１２１７を取得する（Ｓ７１００）。その後、イベント受信プログラム４１２０は、障害が発生した外部ストレージサブシステム６０００の論理ボリューム６１１０の識別情報と、外部ストレージ管理テーブル１２１７の外部ボリューム情報Ｔ６１０が一致するレコードの物理リソース番号Ｔ６００を取得する（Ｓ７２００）。
【００９５】
次に、イベント受信プログラム４１２０は、ストレージサブシステム１０００からセグメント管理テーブル１２１５を取得する（Ｓ７３００）。その後、イベント受信プログラム４１２０は、前記処理（Ｓ７２００）で取得した物理リソースの識別番号とセグメント管理テーブル１２１５の物理リソース番号Ｔ３１０が一致するレコードのプール番号Ｔ３００を取得する（Ｓ７４００）。
【００９６】
次に、イベント受信プログラム４１２０は、前記処理（Ｓ７４００）にて取得したプール番号とプール要件テーブル４１５０のプール番号Ｔ５００が一致したレコードのプール要件Ｔ５１０を取得し（Ｓ７５００）、その後、受信した障害内容によりプール要件Ｔ５１０が満たさなくなるかを判定する（Ｓ７６００）。イベント受信プログラム４１２０は、判定した結果、プール要件を満たす場合、処理を終了する（Ｓ７７００）。
【００９７】
一方、イベント受信プログラム４１２０は、判定した結果、プール要件を満たさなくなる場合、容量拡張ボリューム管理プログラム４１１０へ障害が発生した物理リソース番号、プール番号、満たさなくなったプール要件を送信する（Ｓ７８００）。その他の動作については、第１実施形態と同様の動作を行う。
【００９８】
以上、第２実施形態によれば、ストレージサブシステム１０００が要する容量拡張ボリューム１１１０の構成要素である物理リソース１１２１の一部が、外部ストレージサブシステム６０００の論理ボリューム６１１０で構成されるシステム構成下でも、第１実施形態と同様の効果を得ることが出来る。
【００９９】
＜第３実施形態＞
第３実施形態では、第２実施形態とは異なるシステム構成にて、障害などのイベント発生時における容量拡張ボリューム１１１０の要件を満たす処理について示す。前述した第２実施形態では、前記ストレージサブシステム１０００の一部物理リソース１１２１の実体を、第１の外部ストレージサブシステム（１）６０００に持つシステム構成下で処理を行っていた。しかし、第３実施形態では、前記ストレージサブシステム１０００の一部物理リソース１１２１の実体を、第１の外部ストレージサブシステム６０００と第２の外部ストレージサブシステム６０００に持つシステム構成下において、第２実施形態と同様の効果を得る。
【０１００】
（１）第３実施形態のシステム構成
第３実施形態のシステム構成では、大部分は前述した第２実施形態と同様であるため、異なる構成のみ説明する。図１７に第３実施形態の計算機システムの構成を示す。
【０１０１】
第３実施形態の計算機システムでは、前記ストレージサブシステム１０００と第１の外部ストレージサブシステム６０００、第２の外部ストレージサブシステム６０００が第１のスイッチ装置７０００、第２のスイッチ装置７０００で互いに接続される。本実施例では、各スイッチ装置７０００はＳＡＮを構成する FC スイッチ装置とするが、ＩＰネットワークであっても、あるいはこれら以外のデータ通信用のスイッチ装置であっても良い。さらに第１の外部ストレージサブシステム６０００は、第２の外部ストレージサブシステム６０００と第３のスイッチ装置７０００で互いに接続される。
【０１０２】
第１の外部ストレージサブシステム６０００と第２の外部ストレージサブシステム６０００および管理計算機４０００は、第４のスイッチ装置５０００で互いに接続される。
【０１０３】
第１の外部ストレージサブシステム６０００と第２の外部ストレージサブシステム６０００は、第２実施形態の構成要素に加え、メインメモリ１２１０に指定さえたデータ領域を移動するデータ移動プログラム６２１２が追加されて構成されている。
【０１０４】
なお、説明の都合上、第２実施形態の計算機システムの構成図である図１４に記載していたホスト計算機２０００、ホスト計算機２０００とストレージサブシステム１０００を接続するスイッチ装置３０００、ストレージサブシステム１０００のメインメモリ１２１０のイベント送信プログラム１２１１、セグメント移動プログラム１２１２、物理論理情報管理プログラム１２１３、物理論理管理テーブル１２１４、セグメント管理テーブル１２１５、物理リソース管理プログラム１２１６、外部ストレージ管理テーブル１２１７を、図１７から省略するが存在しているものとする。さらに、説明の都合上、第２の外部ストレージサブシステム６０００の構成は第１の外部ストレージサブシステム６０００と同様の構成であるため、図１７から省略するが存在するものとする。
【０１０５】
（２）第３実施形態の動作
第３実施形態の動作では、大部分は前述した第２実施形態と同様であるため、異なる構成のみ説明する。次に、第３実施形態におけるイベント送信プログラム１２１１の処理について、図８を参照しながら説明する。
【０１０６】
イベント送信プログラム１２１１は、障害を検知する（Ｓ１０００）。なお、本明細書では、説明の都合上、検知するイベントを障害としているが、その他ユーザからの指示、ストレージサブシステムの高負荷による性能低下、など他のイベントであっても良い。
【０１０７】
次に、イベント送信プログラム１２１１は、障害情報をイベント受信プログラム４１２０へ送信する。障害情報とは、障害の発生部位を識別する情報、故障内容、重要度、障害発生時刻などを含んでいる情報である。本明細書では、説明の都合上、障害が、ストレージサブシステム１０００と第１の外部ストレージサブシステム６０００を接続する第１のスイッチ装置７０００に発生したと仮定し、さらに、送信される障害の発生部位を識別する情報とし、第１のスイッチ装置７０００の識別情報とする。イベント受信プログラム４１２０の処理について、図１８を参照しながら説明する。
【０１０８】
イベント受信プログラム４１２０は、外部ストレージサブシステム６０００のイベント送信プログラム６２１１から、障害が発生した第１のスイッチ装置７０００の識別情報を含む障害情報を受信する（Ｓ８０００）。
【０１０９】
次に、イベント受信プログラム４１２０は、ストレージサブシステム１０００から外部ストレージ管理テーブル１２１７を取得する（Ｓ８１００）。その後、イベント受信プログラム４１２０は、障害が発生した第１のスイッチ装置７０００の識別情報と、外部ストレージ管理テーブル１２１７の接続スイッチ装置Ｔ６２０が一致するレコードの物理リソース番号Ｔ６００を取得する（Ｓ８２００）。
【０１１０】
次に、イベント受信プログラム４１２０は、ストレージサブシステム１０００からセグメント管理テーブル１２１５を取得する（Ｓ８３００）。その後、イベント受信プログラム４１２０は、前記処理（Ｓ７２００）で取得した物理リソースの識別番号とセグメント管理テーブル１２１５の物理リソース番号Ｔ３１０が一致するレコードのプール番号Ｔ３００を取得する（Ｓ８４００）。
【０１１１】
次に、イベント受信プログラム４１２０は、前記処理（Ｓ７４００）にて取得したプール番号とプール要件テーブル４１５０のプール番号Ｔ５００が一致したレコードのプール要件Ｔ５１０を取得する（Ｓ８５００）。
【０１１２】
その後、イベント受信プログラム４１２０は、受信した障害内容によりプール要件Ｔ５１０が満たさなくなるかを判定する（Ｓ８６００）。イベント受信プログラム４１２０は、判定した結果、プール要件を満たす場合、処理を終了する（Ｓ８７００）。
【０１１３】
一方、イベント受信プログラム４１２０は、判定した結果、プール要件を満たさなくなる場合、容量拡張ボリューム管理プログラム４１１０へ障害が発生した物理リソース番号、プール番号、満たさなくなったプール要件を送信する（Ｓ８８００）。
【０１１４】
セグメント移動指示プログラム４１３０の処理について、図１９を参照しながら説明する。セグメント移動指示プログラム４１３０は、イベント受信プログラム４１２０から、障害情報、障害が発生した物理リソース番号、プール番号、満たさなくなったプール要件を受信する（Ｓ９０００）。
【０１１５】
次に、セグメント移動指示プログラム４１３０は、ストレージサブシステム１０００から、セグメント管理テーブル１２１５、物理リソース管理テーブル１２１６、外部ストレージ管理テーブル１２１７を取得する（Ｓ９１００）。
【０１１６】
その後、セグメント移動指示プログラム４１３０は、物理リソース管理テーブルから満たさなくなったプール要件を満たす且つ障害が発生した物理リソース以外の条件を満たす物理リソース番号を取得する（Ｓ９２００）。
【０１１７】
続いて、セグメント移動指示プログラム４１３０は、障害が発生した物理リソース番号と、セグメント管理テーブル１２１５の物理リソース番号Ｔ２１０が一致する且つセグメント管理テーブル１２１５の使用状況Ｔ２５０が割当済のレコードの開始アドレスＴ２３０、終了アドレスＴ２４０を取得する（Ｓ９３００）。
【０１１８】
次に、セグメント移動指示プログラム４１３０は、障害が発生した物理リソース番号と外部ストレージ管理テーブル１２１７の物理リソース番号Ｔ６００が一致するレコードの外部ボリューム情報Ｔ６１０から移動元の外部ストレージサブシステムを特定する（Ｓ９４００）。
【０１１９】
更に、セグメント移動指示プログラム４１３０は、条件を満たす物理リソース番号と、外部ストレージ管理テーブル１２１７の物理リソース番号Ｔ６００が一致するレコードの外部ボリューム情報Ｔ６１０から移動先の外部ストレージサブシステムを特定する（Ｓ９５００）。
【０１２０】
セグメント移動指示プログラム４１３０は、移動元の外部ストレージサブシステムのデータ移動プログラム６２１２へ前記処理（Ｓ９３００）で取得した開始アドレスから終了アドレスまでの領域のデータを移動先の外部ストレージサブシステムへ移動するよう指示を送信する（Ｓ９６００）。その後、セグメント移動指示プログラム４１３０は、データ移動プログラムから移動先の開始アドレスと終了アドレスを受信する（Ｓ９７００）。
【０１２１】
最後に、セグメント移動指示プログラム４１３０は、セグメント移動指示プログラム１２１２へ、障害が発生した物理リソース番号を移動元物理リソース番号として、条件を満たす物理リソース番号を移動先物理リソースとして、更に移動先の開始アドレスと終了アドレス、を送信する（Ｓ９８００）。
【０１２２】
データ移動プログラム６２１２の処理について、図２０を参照しながら説明する。データ移動プログラム６２１２は、セグメント移動指示プログラムより開始アドレスから終了アドレスまでの領域のデータを移動先の外部ストレージサブシステムに移動する指示を受信する（Ｓ１００００）。
【０１２３】
次に、データ移動プログラム６２１２は、移動先の外部ストレージサブシステムへ指示を受けた領域のデータを移動する（Ｓ１０１００）。その後、データ移動プログラム６２１２は、セグメント移動指示プログラム４１３０へ移動先の開始アドレスと終了アドレスを送信する（Ｓ１０２００）。
【０１２４】
物理論理情報管理プログラム１２１３の処理について、図２１を参照しながら説明する。物理論理情報管理プログラム１２１３は、セグメント移動指示プログラムから移動元物理リソース番号、移動先物理リソース番号、移動先の開始アドレスと終了アドレスを受信する（Ｓ１１０００）。
【０１２５】
次に、物理論理情報管理プログラム１２１３は、セグメント管理テーブル１２１５の物理リソース番号Ｔ２１０と移動元物理リソース番号が一致するセグメント番号を取得する（Ｓ１１１００）。
【０１２６】
その後、物理論理情報管理プログラム１２１３は、セグメント管理テーブル１２１５の物理リソース番号Ｔ２１０と移動先リソース番号且つ、移動先の開始アドレスと終了アドレスが一致するレコードのセグメント番号を取得する（Ｓ１１２００）。続いて、物理論理情報管理プログラム１２１３は、前記処理（Ｓ１１２００）のセグメント番号の使用状況Ｔ２５０を割当済に変更する（Ｓ１１３００）。
【０１２７】
次に、物理論理情報管理プログラム１２１３は、物理論理管理テーブル１２１４のセグメント番号Ｔ１１０と、前記処理（Ｓ１１１０００）で取得したセグメント番号と一致するレコードを取得する（Ｓ１１４００）。
【０１２８】
その後、物理論理情報管理プログラム１２１３は、前記処理（Ｓ１１４００）で取得したレコードのセグメント番号を前記処理（Ｓ１１２００）で取得したセグメント番号に変更する（Ｓ１１５００）。
【０１２９】
最後に、物理論理情報管理プログラム１２１３は、セグメント管理テーブル１２１５の物理リソース番号Ｔ２１０と移動元物理リソース番号と一致するレコードの使用状況Ｔ２５０を未割当に変更する（Ｓ１１６００）。その他の動作については、第２実施形態と同様の動作を行う。
【０１３０】
以上、第３実施形態によれば、ストレージサブシステム１０００の一部物理リソース１１２１の実体を、第１の外部ストレージサブシステム６０００と第２の外部ストレージサブシステム６０００に持つシステム構成下において、第２実施形態と同様の効果を得ることが出来る。
【図面の簡単な説明】
【０１３１】
【図１】第１実施形態の計算機システムの構成図である。
【図２】第１実施形態の物理論理管理テーブルの構成図である。
【図３】第１実施形態のセグメント管理テーブルの構成図である。
【図４】第１実施形態の容量拡張ボリュームの構成の一例を示す図である。
【図５】第１実施形態の物理リソース管理テーブルの構成図である。
【図６】第１実施形態のストレージ構成管理テーブルの構成図である。
【図７】第１実施形態のプール要件テーブルの構成図である。
【図８】第１実施形態のイベント送信プログラムの処理を表す図である。
【図９】第１実施形態のイベント受信プログラムの処理を表す図である。
【図１０】第１実施形態の容量拡張ボリューム管理プログラムの処理を表す図である。
【図１１】第１実施形態のセグメント移動指示プログラムの処理を表す図である。
【図１２】第１実施形態のセグメント移動プログラムの処理を表す図である。
【図１３】第１実施形態の物理論理情報管理プログラムの処理を表す図である。
【図１４】第２実施形態の計算機システムの構成図である。
【図１５】第２実施形態の外部ストレージ管理テーブルの構成図である。
【図１６】第２実施形態のイベント受信プログラムの処理を表す図である。
【図１７】第３実施形態の計算機システムの構成図である。
【図１８】第３実施形態のイベント受信プログラムの処理を表す図である。
【図１９】第３実施形態のセグメント移動指示プログラムの処理を表す図である。
【図２０】第３実施形態のデータ移動プログラムの処理を表す図である。
【図２１】第３実施形態の物理論理情報管理プログラムの処理を表す図である。
【符号の説明】
【０１３２】
１０００  ストレージサブシステム
２０００  ホスト計算機
３０００  スイッチ装置
４０００  管理計算機
６０００  外部ストレージサブシステム
【図１】
2010055209.tif 000003
【図２】
2010055209.tif 000004
【図３】
2010055209.tif 000005
【図４】
2010055209.tif 000006
【図５】
2010055209.tif 000007
【図６】
2010055209.tif 000008
【図７】
2010055209.tif 000009
【図８】
2010055209.tif 000010
【図９】
2010055209.tif 000011
【図１０】
2010055209.tif 000012
【図１１】
2010055209.tif 000013
【図１２】
2010055209.tif 000014
【図１３】
2010055209.tif 000015
【図１４】
2010055209.tif 000016
【図１５】
2010055209.tif 000017
【図１６】
2010055209.tif 000018
【図１７】
2010055209.tif 000019
【図１８】
2010055209.tif 000020
【図１９】
2010055209.tif 000021
【図２０】
2010055209.tif 000022
【図２１】
2010055209.tif 000023