(57)【要約】【課題】書き込み禁止機構を持つ記憶装置と持たない記憶装置が混在する環境において、記憶装置においてデータを安全に保存するためには、記憶装置ごとに異なる書き込み禁止機構を把握し、保存するデータを格納する記憶装置ごとに書き込み禁止設定を行う必要があり、管理者の負担が大きい。【解決手段】複数のストレージサブシステムのボリュームを外部ボリュームとして管理し、これらの外部ボリュームを仮想ボリュームとして計算機からのデータ入出力処理を行い、この入出力処理は、この仮想ボリュームを単位として設定されるアクセス属性によって書き込みが禁止され、仮想ボリュームに対してアクセス属性の設定が行われた場合には、仮想ボリュームに対応する外部ボリュームに対して同様のアクセス属性の設定を行い仮想ボリュームに対応する外部ボリュームに対する書き込みも禁止する記憶制御装置を提供する。【選択図】  図４
2005276158.tif 000002
【特許請求の範囲】
【請求項１】
計算機に接続される第一のインターフェースと、他のストレージシステムに接続される第二のインターフェースと、制御部とを備え、
前記制御部は、前記第一のインターフェースを介して前記計算機で認識される記憶領域の属性の設定指示を受け、前記属性設定の指示で指定される記憶領域と対応するデータを格納する記憶領域が前記他のストレージシステムである場合、前記他のストレージシステムに記憶領域の属性の設定の指示を前記第二のインターフェースを介して送信することを特徴とするストレージシステム。
【請求項２】
前記属性設定の指示で指定される記憶領域と対応するデータを格納する記憶領域の属性を、前記受けた指示に基づく設定が可能であるか判断し、前記判断結果、可能である場合、前記他のストレージシステムに属性設定の前記第二のインターフェースを介して送信することを特徴とする請求項１記載のストレージシステム。
【請求項３】
前記他のストレージシステムへの属性設定の指示は、前記受けた設定指示により属性が設定される前記計算機で認識される記憶領域の属性と対応するデータを格納する記憶領域の属性の設定の指示であることを特徴とする請求項１記載のストレージシステム。
【請求項４】
前記ストレージシステムは、データを格納する記憶領域をさらに備え、前記判断結果、前記受けた指示に基づく設定ができない場合、前記属性設定の指示で指定される記憶領域と対応する記憶領域に格納されているデータを、前記ストレージシステム自身が備える記憶領域に移動することを特徴とする請求項２記載のストレージシステム。
【請求項５】
前記データを記憶領域に格納し、前記記憶領域の属性を前記設定指示に基づいて属性を設定することを特徴とすることを特徴とする請求項４記載のストレージシステム。
【請求項６】
前記制御部は、前記受けた設定指示に基づく属性で、前記属性設定の指示で指定される記憶領域と対応するデータを格納する記憶領域の属性を設定できない場合、前記他のストレージシステムに対し、他の第二のストレージシステムへデータを移動する指示を前記第二のインターフェースを介して送信することを特徴とする請求項１記載のストレージシステム。
【請求項７】
前記制御部は、前記記憶領域の有無を判断し、判断結果、無しの場合に前記データを移動する指示を行うことを特徴とする請求項６記載のストレージシステム。
【請求項８】
前記他の第２のストレージシステムに、前記受けた設定指示に基づく属性設定の指示を前記第二のインターフェースを介して送信することを特徴とする請求項６記載のストレージシステム。
【請求項９】
請求項１記載のストレージシステムであって、前記受ける設定指示に含まれる前記記憶領域の属性は、データの書込みを禁止する記憶領域の指定と、データの書込みの禁止の設定と、前記指定を設定する期間と、を有し、
前記他のストレージシステムに送信される属性の設定の指示は、
前記指定に基づく前記記憶領域と対応するデータを格納する記憶領域の指定と、データの書込みの禁止の設定と、前記指定を設定する期間とを有することを特徴とするストレージシステム。
【請求項１０】
請求項１記載のストレージシステムであって、前記記憶領域の属性は、前記記憶領域に対する要求が許可される外部装置の指定を有することを特徴とするストレージシステム。
【請求項１１】
請求項１０記載のストレージシステムであって、前記外部装置は、計算機あるいは、他のストレージシステムであって、
前記計算機から受ける設定の指示は、前記計算機で認識される記憶領域に対する要求が許可される計算機の指定を有し、
前記他のストレージシステムに送信される属性の設定指示は、前記計算機で認識される記憶領域に対応する記憶領域の指定と、前記ストレージシステム自身からの要求を許可する設定を有することを特徴とするストレージシステム。
【請求項１２】
ネットワークを介して接続する複数の計算機と前記計算機が認識できる記憶領域を備える第一のストレージシステムと、前記計算機が認識できる記憶領域を介して前記計算機から入出力要求されるデータを格納する記憶領域を有する第二のストレージシステムとを有する計算機システムであって、
計算機は、第一のストレージシステムに前記計算機が認識できる記憶領域の属性の設定指示を行い、
第一のストレージシステムは、
前記計算機が認識できる記憶領域の属性の設定指示を前記計算機から受け、前記属性設定の指示で指定される記憶領域と対応する記憶領域にデータを格納するストレージシステムが前記第二のストレージシステムであるか否か判断し、前記判断結果、前記他のストレージシステムである場合、前記他のストレージシステムに属性の設定の指示を送り、
第二のストレージシステムは、前記設定指示を受け、前記データを格納する記憶領域に属性を設定することを特徴とする計算機システム。
【請求項１３】
前記第一のストレージシステムは、前記計算機が認識できる記憶領域を介して前記計算機が利用するデータを格納する記憶領域をさらに備え、さらに、前記第二のストレージシステムが備えるデータを格納する記憶領域に対し、前記受けた指示と同じ内容の属性を設定できない場合は、前記第一のストレージシステム自身が備えるデータを格納する記憶領域に、前記第二のストレージシステムが備える記憶領域に格納されているデータを格納することを特徴とする請求項１２記載の計算機システム。
【請求項１４】
前記計算機システムは、前記第二のストレージシステムを複数有し、
前記第一のストレージシステムは、
前記第二のストレージシステムが備えるデータを格納する記憶領域に対し、前記計算機からの設定指示に応じた属性を設定できない場合、前記第二のストレージシステムに、前記第二のストレージシステムが備える記憶領域に格納されているデータを、前記他の第二のストレージシステムが備える記憶領域へ移動することを特徴とする請求項１２記載の計算機システム。
【請求項１５】
前記計算機システムは、前記計算機及び前記ストレージシステムにネットワークを介して接続する管理計算機をさらに有し、
前記第一のストレージシステムは、
前記計算機が認識する記憶領域と前記計算機から入出力要求されるデータを格納する記憶領域との対応付けと、前記外部で認識される記憶領域の属性とを保持し、
前記第二のストレージシステムは、
前記計算機から入出力要求されるデータを格納する記憶領域の属性を保持し、
前記管理計算機は、前記第一のストレージシステムから前記対応付けと前記外部で認識される記憶領域の第一の属性を、前記第二のストレージシステムから前記計算機から入出力要求されるデータを格納する記憶領域の第二の属性を、それぞれネットワークを介して取得する取得手段と、前記取得した対応付けと第一及び第二の属性とに基づいて前記外部装置で認識される記憶領域の属性と前記計算機から入出力要求されるデータを格納する記憶領域の属性とを比較することを特徴とする請求項１２記載の計算機システム。
【請求項１６】
外部装置にネットワークを介して接続する前記外部装置で認識される記憶領域を備えるストレージシステムで行う前記記憶領域の属性設定方法であって、
前記外部装置から前記外部装置で認識される記憶領域の属性の設定指示を受け、前記属性設定の指示で指定される記憶領域と対応するデータを格納する記憶領域が外部のストレージシステムであるか否か判断し、前記判断結果、外部ストレージシステムである場合、前記外部のストレージシステムに属性の設定の指示をネットワークを介して行うことを特徴とする記憶領域の属性設定方法。
【請求項１７】
請求項１６記載の記憶領域の属性設定方法であって、前記外部ストレージシステムが前記指示に対応する属性の設定を実行できるか否かを判断し、実行できない場合は、前記ストレージシステムの記憶領域にデータを移動し、前記移動したデータが格納される記憶領域に前記指示に対応する属性の設定の指示を行うことを特徴とする記憶領域の属性設定方法。
【請求項１８】
計算機システムであって、データを利用する計算機と、前記計算機とファイバーチャネルネットワークを介して接続されるファイバーチャネルスイッチと、前記ファイバーチャネルスイッチを介して前記計算機に接続される第一のファイバーチャネルインターフェースと、前記他のストレージシステムに接続される第二のファイバーチャネルインターフェースと、第一のプロセッサと、
前記計算機が認識できる仮想ボリュームと、前記仮想ボリュームと対応する、データを格納するボリュームとを、それぞれ少なくとも一つと、を備える第1のストレージシステムと、
前記ファイバーチャネルスイッチと前記第1のストレージシステムと接続される第三のファイバーチャネルインターフェースと、前記第二のプロセッサと、前記仮想ボリュームと対応する、データを格納するボリュームとを備える第2のストレージシステムと、前記ファイバーチャネルスイッチと前記第1のストレージシステムと接続される第四のファイバーチャネルインターフェースと、前記第三のプロセッサと、データを格納するボリュームとを備える第三のストレージシステムと、を有し、
前記第一のプロセッサは、前記計算機から仮想ボリュームの属性変更要求を前記第一のファイバーチャネルインターフェースを介して受け、前記仮想ボリュームに対応するボリュームが前記第一のストレージシステムまたは前記第二のストレージサブシステムにあるか否かを判断し、前記判断結果、前記第二のストレージサブシステムが備えるボリュームであった場合、前記仮想ボリュームの属性と同じ属性を設定できるか否か判断し、前記属性の設定が可能である場合、前記第二のストレージシステムに前記第二のインターフェースを介して属性の設定の指示し、前記属性の設定が可能でない場合、前記仮想ボリュームに対応する前記ボリュームに格納されているデータを前記第一のストレージシステムのボリュームに移動し、前記移動完了後に前記第一のストレージシステムのボリュームに前記属性設定を行い、前記属性の設定が可能でない場合かつ前記第一のストレージシステムのボリュームに前記データを移動できない場合、第三のストレージシステムに前記データを移動し、前記移動されたデータをボリュームに移動後に属性の設定の指示を前記ファイバーチャネルインターフェースを介して行うことを特徴とする計算機システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は，複数の記憶装置を集中して管理する方法に関し、特に記憶装置に格納されるデータの保護方法である。
【背景技術】
【０００２】
複数の計算機と複数の記憶装置との間を通信線（ストレージエリアネットワーク（ＳＡＮ））で接続し，ＳＡＮに接続される複数の記憶装置を集中管理する技術が普及している。
また、電子データの増大により、テープへのアーカイブを行わず、記憶装置においてデータを保存するようになりつつある。記憶装置において、データを安全に保存するために、記憶装置に対する書き込みを禁止する技術が、例えば特許文献１で公開されている。
【０００３】
【特許文献１】特開２００２−３３４０４８号公報（第７頁，第１図）
【発明の開示】
【発明が解決しようとする課題】
【０００４】
電子データの増大にともない、必要な記憶領域が増大し、テープではなくディスクアレイ装置などを有する記憶装置（ストレージシステム）を用いてデータを保存するようになりつつある。また、ＳＡＮに記憶装置が増設されていく。この増設によってＳＡＮ内には，新旧の記憶装置が混在する。
【０００５】
書き込みを禁止する機構をもつ記憶装置は比較的新しく、旧型の記憶装置は本機構を有さないことが多いため，書き込み禁止機構を持つ記憶装置と持たない記憶装置がＳＡＮに混在する。
【０００６】
一方、法規制の下におけるメールアーカイブなどの保存データを法の場で使用するためには，証拠性の確立・保証が必要である。この証拠性を確立するために特許文献１記載のような技術がある。
【０００７】
しかし、機能の異なる記憶装置が混在する環境において、記憶装置においてデータを安全に保存し、証拠性やセキュリティを確立するためには、記憶装置ごとに異なる書き込み禁止機構やアクセス制御機構の有無を把握しつつ、保存するデータを格納する記憶装置ごとに書き込み禁止やアクセス制御設定を行う必要があり、管理者の負担が大きい。
【０００８】
また、上位のストレージシステムに正規に接続されるコンピュータからの書き込みなどのアクセスを抑止するだけでは、下位のストレージシステムに不正にアクセスしようとするコンピュータなどの装置からの書き込みなどのアクセスを防止することが困難である。
【課題を解決するための手段】
【０００９】
上記課題の少なくともいずれかを解決するために、本発明の一実施形態として、外部装置に接続される第一のインターフェースと、他のストレージシステムに接続される第二のインターフェースと、制御部とを備えるストレージシステムは、制御部が、第一のインターフェースを介して外部装置で認識される記憶領域の属性の設定指示を受けると、属性設定の指示で指定される記憶領域と対応するデータを格納する記憶領域が他のストレージシステムである場合、他のストレージシステムに属性の設定の指示を第二のインターフェースを介して行うことを特徴とする。
【００１０】
なお、本発明の他の特徴は、本明細書及び添付図面の記載により明らかにする。
【発明の効果】
【００１１】
仮想化環境における、データを格納するストレージシステムに対するアクセス管理やデータ管理を効率よく行うことができる。
【発明を実施するための最良の形態】
【００１２】
以下に、本発明の実施の形態を説明する。
【実施例１】
【００１３】
本発明の実施の形態を図面を参照しながら説明する。
【００１４】
図１は、本発明の実施の形態である計算機システム１である。
計算機システム１は、ホスト計算機２００、管理計算機３００、ファイバーチャネルスイッチ１００、ストレージサブシステム４００、６００、８００を有する。ホスト計算機２００とストレージサブシステム４００、６００，８００は、ファイバーチャネルスイッチ１００を介して接続されている。また、ホスト計算機２００、管理計算機３００、ストレージサブシステム４００、６００，８００は、ネットワーク１０によって互いに接続されている。
【００１５】
ファイバーチャネルスイッチ１００は、ホスト計算機２００及びストレージサブシステム４００，６００，８００と接続するインターフェイス１０２及びネットワーク１０に接続するインターフェイス１０４とを有する。
ファイバーチャネルスイッチ１００は、ホスト計算機２００やストレージサブシステム４００、６００、８００のインターフェイスにそれぞれ接続するファイバーチャネルインターフェイス１０２に受けるデータをデータの送信先に接続するファイバーチャネルインターフェイス１０２を選択し、データの送信を行う。
【００１６】
ホスト計算機２００は、制御部、メモリ、記憶装置、表示部、ファイバーチャネルスイッチ１００と接続するためのインターフェイス及びネットワーク１０と接続するインターフェイス２０４とを有する。
【００１７】
ここでは、二台のホスト計算機を区別するために、インタフェース２０２と、インタフェース２０３としておく。
管理計算機３００は、制御部、メモリ、記憶装置、表示部、ネットワーク１０と接続するインターフェイス３０４とを有する。
【００１８】
ネットワーク５０は、ファイバーチャネルネットワークであり、計算機２００とストレージサブシステム４００、６００、８００間を接続するネットワークで、ネットワーク１０はローカルエリアネットワークで、管理計算機３００が、計算機２００、ストレージサブシステム４００、６００、８００、ファイバーチャネルスイッチ１００へ接続し、データの送受信を行う管理ネットワークである。同じネットワークであっても、管理計算機が、計算機システム内の機器を管理できればよい。
＜ストレージサブシステム４００＞
ストレージサブシステム４００は、記憶制御装置４２０と記憶装置４１０を有する。
記憶制御装置４２０は、プロセッサ４３０、制御メモリ４４０、不揮発メモリ４５０、キャッシュメモリ４６０、ファイバーチャネルインターフェイス４７０、ファイバーチャネルインターフェイス４８０、ネットワークインターフェイス４９０を有し、これらは互いに接続されている。
記憶装置４１０は、記録媒体をもち、記憶制御装置４２０からの要求により、記録媒体に対してデータのリード及びライトを行う。ファイバーチャネルインターフェイス４８０は、記憶装置４１０に接続される。
【００１９】
記憶制御装置４２０は、ファイバーチャネルインターフェイス４８０を介して、記憶装置４１０に対してデータの入出力を行う。なお、本インターフェイスは、ＡＴＡ，シリアルＡＴＡ，パラレルＳＣＳＩ、シリアルＳＣＳＩなどのインターフェイスであってもよい。
記憶制御装置４２０は、記憶装置４１０を冗長性のあるＲＡＩＤとして制御することで、ストレージサブシステム４００の信頼性向上、性能向上なども行う。尚、ストレージサブシステム４００が有する記憶装置４１０の数は複数でも単数でも構わない。
【００２０】
記憶装置４１０の記憶領域は、物理的あるいは論理的な記憶領域（たとえば、物理ボリューム、あるいは論理ボリューム等のボリューム、以後ボリュームと称する）が設定され、ボリューム識別子によって少なくとも計算機システム１内にて一意に識別される。
【００２１】
ＡＴＡ，シリアルＡＴＡ，パラレルＳＣＳＩ、シリアルＳＣＳＩなどのインターフェイスによるデータの入出力は、記憶装置が提供する論理的な記憶領域に対して行われる。記憶領域に対するデータの入出力要求は，記憶装置によって、記録媒体へのデータの書き込み及び読み出しとして処理される。
【００２２】
ファイバーチャネルインターフェイス４７０は、ファイバーチャネルスイッチ１００に接続される。記憶制御装置４２０は、ファイバーチャネルインターフェイス４７０を介して、ファイバーチャネルスイッチ１００に接続するホスト計算機２００及びストレージサブシステム８００からのデータ入出力要求を受け付ける。このデータ入出力要求は、ボリュームに対して行われる。ネットワークインターフェイス４９０は、ネットワーク１０に接続される。
【００２３】
記憶装置４１０と記憶制御装置４２０間のデータ転送は、記憶制御装置４２０内のデータ転送に比べて遅いため、  記憶制御装置４２０は、頻繁にアクセスされるデータをキャッシュメモリ４６０上に格納することにより、データ転送性能の向上も行う。
【００２４】
上記動作は、不揮発メモリに格納されるプログラムが制御メモリに読み込まれ、プロセッサがこれを実行することによって実現される。また、プログラムの処理を記憶制御装置４２０内にハードウェア的に構成してもよい。
【００２５】
尚、記憶制御装置４２０は、シングルプロセッサであるが、マルチプロセッサ構成であってもよい。
＜ストレージサブシステム６００＞
ストレージサブシステム６００は、ストレージサブシステム４００の特徴に加えて、不揮発メモリにボリュームを単位とする属性変更プログラム8000を有する。
【００２６】
記憶制御装置６２０は、ファイバーチャネルインターフェイス６７０及びネットワークインターフェイス６９０を介してボリュームに対してアクセス属性設定要求を受け付ける。
【００２７】
記憶制御装置６２０のプロセッサ６３０は、ボリュームに対して設定されたアクセス属性によって、計算機２００からの入出力要求に対して、Ｗｒｉｔｅが許可されない属性が設定されている場合にはＷｒｉｔｅ要求に対しＷｒｉｔｅ拒否を応答し、Ｗｒｉｔｅが許可されている場合にはＷｒｉｔｅを実行する（特許文献１参照）。
＜ボリューム属性管理テーブル＞
図６は、ストレージサブシステム６００のボリュームのアクセス属性を管理するボリューム属性管理テーブル６０００を示す図である。ボリューム属性管理テーブル６０００は、記憶制御装置６００の不揮発メモリ６４０に格納される。ボリューム属性管理テーブル６０００のエントリは、ストレージサブシステム６００の全てのボリュームに対して存在する。ボリュームを特定するボリューム識別子に対し、アクセス属性が読み込みのみ可であることを示すＲ、読み込みと書込みが可であることを示すＲＷがボリュームごとに設定される。
【００２８】
また、アクセス属性として、さらに、読み込みのみ可（書き込み禁止）としておく期間を設けている。本明細書で開示される実施例でのアクセス属性は、記憶領域ごとに設定される記憶領域の属性の一つである。
＜アクセス制御＞
本実施形態では、ファイバーチャネルインターフェースを用いて各ストレージサブシステム、ホスト計算機を接続している。ファイバーチャネルインタフェースでは、ＷＷＮ（World Wide Name）と呼ばれるインタフェースごとに固有の識別番号を用いて、そのインタフェースを識別することができる。ホスト計算機から、ストレージサブシステムに発行されるデータの入出力要求には、要求を発行した発行元のファイバーチャネルインタフェースのＷＷＮと、その要求を実行すべき記憶制御装置のＷＷＮが含まれている。記憶制御装置には、データの入出力要求を受け付けた際に、要求発行元のＷＷＮをチェックし、所定外のＷＷＮであれば、データの入出力要求を実行しないことで、不正なアクセスを抑止する機能を持つものがある。本実施形態では、ストレージサブシステムやホスト計算機に図で割り当てた番号をＷＷＮとして説明するが、実際にはＷＷＮは割り当てルールに従ってベンダ識別子などを含む番号である。各記憶制御装置は、どのＷＷＮに対してアクセスを許可するかを保持したアクセス管理テーブルを不揮発性メモリに保持している。
＜アクセス管理テーブル＞
図１２にアクセス管理テーブルの構成を示す。図１２（ａ）がストレージサブシステム６００のアクセス管理テーブル１２００１である。ボリューム識別子で表されるボリュームごとに、どのＷＷＮに対してアクセスを許可するかを示すテーブルとして構成している。図１２（ａ）の場合、ボリュームＸ１、Ｘ２、Ｘ３は、ＷＷＮ２０２とＷＷＮ２０３の両方からのアクセスが可能であり、ボリュームＸ４はＷＷＮ２０２からのみアクセス可能としている。ボリュームＸ５にはアクセス制御を設定していない（「アクセスを許可するＷＷＮの欄が空白（ＮＵＬＬ）」。すなわち、全てのＷＷＮを有するインタフェースからのアクセスを受付可能である。
＜入出力要求処理＞
ストレージサブシステム６００のボリュームに対する計算機２００からのデータ入出力要求に対するアクセス制御を図７を使って説明する。
【００２９】
ホスト入出力要求処理７０００は、ファイバーチャネルインターフェイス６７０を介して計算機２００からのデータ入出力要求を受け取ると、記憶制御装置６２０のプロセッサ６３０が不揮発メモリからアクセス属性設定プログラムを読み出し、リードライト処理を開始する。まず、データ入出力要求から発行元のＷＷＮを取得し、アクセス許可しているＷＷＮかを識別する（ステップ７００５）。もしアクセス許可していないＷＷＮを有するファイバーチャネルインタフェースからの要求であれば、リードライトは一切実行せず終了とする。アクセス許可したＷＷＮの場合には、記憶制御装置６２０のプロセッサ６３０は、要求対象のボリュームの識別子に基づいて、ボリューム属性管理テーブル６０００を参照する（ステップ７０１０）。
次に、プロセッサ６３０は、ホスト計算機２００からのデータ入出力要求を調べ（ステップ７０５０）、Ｗｒｉｔｅ要求である場合には，ステップ７０１０で参照した当該ボリュームのアクセス属性が、Ｒｅａｄ及びＷｒｉｔｅを許可するＲＷであれば（ステップ７０６０）、ボリュームに対してＷｒｉｔｅを実行して（ステップ７０７０）、終了する。
【００３０】
ステップ７０５０において、Ｗｒｉｔｅ要求でない場合は，Ｒｅａｄを実行して（ステップ７０９０）、終了する。
ステップ７０６０において、当該ボリュームのアクセス属性が、Ｒｅａｄのみを許可するＲであれば、要求元の計算機２００にＷｒｉｔｅ不可を応答して（ステップ７０８０）、終了する。
上記のように、管理計算機２００からストレージサブシステム６００のボリュームに対するデータ入出力要求は、ボリューム属性管理テーブル６０００のアクセス属性によって制限される。
本実施例では、アクセス属性として読み込みのみを許可するＲ（Ｒｅａｄ）、読み込みと書き込みを許可するＲＷ（Ｒｅａｄ／Ｗｒｉｔｅ）を設定する。
＜ストレージサブシステム８００＞
ストレージサブシステム８００は、記憶制御装置８２０と記憶装置８１０を有する。
記憶制御装置８２０は、プロセッサ８３０、制御メモリ８４０、不揮発メモリ８５０、キャッシュメモリ８６０、ファイバーチャネルインターフェイス８７０、ファイバーチャネルインターフェイス８８０、ネットワークインターフェイス８９０、ファイバーチャネルインターフェイス９００を有し、これらは互いに接続されている。
記憶装置８１０は、記録媒体をもち、記憶制御装置８２０からの要求により、記録媒体に対してデータのリード及びライトを行う。
【００３１】
不揮発メモリ８５０には、仮想ボリューム管理テーブル１２００、内部ボリューム管理テーブル１１００、外部ボリューム１２００、属性設定可否テーブル1300やホスト入出力要求プログラム２０００、属性変更要求プログラム４０００の各種プログラムが格納されている。なお、プログラムは、ストレージシステムの起動時にメモリ３６０にロードされて実行されてもよく、また、プログラムの処理をストレージシステム内にハードウェア的に構成してもよい。
【００３２】
ファイバーチャネルインターフェイス８８０は、記憶装置８１０に接続される。記憶制御装置８２０は、ファイバーチャネルインターフェイス８８０を介して、記憶装置８１０に対してデータの入出力を行う。なお、本インターフェイスは、ＡＴＡ，シリアルＡＴＡ，パラレルＳＣＳＩ、シリアルＳＣＳＩなどのインターフェイスであってもよい。尚、ストレージサブシステム８００が有する記憶装置８１０の数は複数でも単数でも構わない。  記憶制御装置８２０は、キャッシュメモリ８６０によるデータ転送性能の向上、記憶装置８１０のＲＡＩＤ制御による信頼性・性能向上も行う。記憶装置８１０の数は複数でも単数でも構わない。尚、記憶制御装置８２０は、シングルプロセッサであるが、マルチプロセッサ構成であってもよい。
【００３３】
記憶装置８１０の記憶領域は、物理的あるいは論理的な記憶領域（たとえば、物理ボリューム、あるいは論理ボリューム等のボリューム、以後内部ボリュームと称する）が設定され、記憶制御装置８２０が割り当てる少なくともストレージサブシステム８００内にて一意な内部ボリューム識別子によって識別される。内部ボリュームに格納されているデータに対し、計算機からの要求により記憶制御装置８２０を介してデータがさらに書き込まれたり、読み出されたりする。
【００３４】
ネットワークインターフェイス８９０は、ネットワーク１０に接続される。ストレージサブシステム８００は、ネットワークインターフェイス８９０を介して、管理計算機３００からの外部ボリューム設定や不揮発メモリに格納されているデータの送信要求を受け付ける。ファイバーチャネルインターフェイス９００は、ファイバーチャネルスイッチ１００に接続される。
【００３５】
記憶制御装置８２０は、ファイバーチャネルインターフェイス９００を介して、ストレージサブシステム４００、６００のボリュームに対してデータの入出力を行う。ストレージサブシステム８００の外部にあるストレージサブシステム４００、６００の記憶装置のボリュームをストレージサブシステム800内にある内部ボリュームに対して特に外部ボリュームと称し、外部ボリューム識別子によって外部ボリュームが特定される。外部ボリューム設定は，管理者が管理計算機３００を使用して、記憶制御装置８２０が使用する外部ボリュームを設定することによって行われる。
【００３６】
記憶制御装置８２０は、内部ボリューム及び外部ボリュームに対応する記憶領域で、外部装置から認識可能な記憶領域（以後仮想ボリュームと称する）が設定され、計算機２００の外部装置からファイバーチャネルインターフェイス８７０を介して仮想ボリュームに対する入出力要求及びアクセス属性設定要求を受け付ける。
ファイバーチャネルインターフェイス８７０は、ファイバーチャネルスイッチ１００に接続される。記憶制御装置８２０は、ファイバーチャネルインターフェイス８７０を介して、ファイバーチャネルスイッチ１００に接続するホスト計算機２００からの仮想ボリュームに対するデータ入出力要求を受け付ける。  記憶制御装置８２０は、ファイバーチャネルインターフェイス８７０及びネットワークインターフェイス８９０を介して仮想ボリュームに対するアクセス属性設定要求を受け付ける。
＜内部ボリューム管理テーブル＞
図２は、記憶制御装置８２０の不揮発メモリに格納されている(a)仮想ボリューム管理テーブル１２００、(b)内部ボリューム管理テーブル１１００、(c)外部ボリューム１２００、(d)属性設定可否テーブル１３００である。
【００３７】
図２(b)に示す内部ボリューム管理テーブル１１００は，記憶装置８１０内の記憶領域である当該ボリュームに対応する仮想ボリュームが設定されているかを表す使用状態、対応する仮想ボリュームを示す仮想ボリューム識別子が設定されている。内部ボリュームに対応する仮想ボリュームが設定されていない場合、使用状態は“未使用”であり、仮想ボリューム識別子は“なし”である。
＜外部ボリューム管理テーブル＞
次に外部ボリュームの管理について説明する。
【００３８】
管理者が、管理計算機３００において、記憶制御装置８２０が使用する外部ボリュームを登録することによって、外部ボリューム管理テーブル１２００が設定される。
【００３９】
図２(c)は、外部ボリューム管理テーブル１２００を示す図である。管理者によって登録された外部ボリュームごとに、当該ボリュームを有するストレージサブシステムを示すストレージサブシステム識別子、当該ボリュームに対応する仮想ボリュームに対応する仮想ボリュームが設定されているかを表す使用状態、対応する仮想ボリュームを示す仮想ボリューム識別子、当該ボリュームに対してアクセス属性設定が出来るかを表す属性設定可否の各項目を有する。これらの項目は、管理者が管理計算機３００にてストレージサブシステム４００および６００のボリュームを指定し、ストレージサブシステム８００に指示し、ストレージサブシステム８００の記憶制御装置８２０が、登録設定する。
【００４０】
外部ボリュームを登録すると、記憶制御装置８２０が、指定されたボリュームの識別子を外部ボリューム管理テーブル１２００に設定する。記憶制御装置８２０が、該当外部ボリュームを有するストレージサブシステムの識別子をストレージサブシステム識別子に設定し、使用状態には“未使用”を設定し、仮想ボリューム識別子は、“なし”が設定され、該当外部ボリュームに対してアクセス属性設定ができるかに応じて属性設定可否を設定する。
【００４１】
図２（ｄ）は、属性設定可否テーブル１３００を示す図である。属性設定可否設定テーブル１３００は、ストレージサブシステムごとに、アクセス属性（Ｒ／Ｗとアクセス制御）の設定が可能であるかを示す属性設定可否の項目を有している。
【００４２】
本実施例において、識別子Ｘであるストレージサブシステムは、Ｒ／Ｗ属性設定可否が「可」であることから、読み込みのみ（書込み禁止）のアクセス属性を設定することができる。一方、識別子Ｙであるストレージサブシステムは、Ｒ／Ｗ属性設定可否が「不可」であるから書込み禁止のアクセス属性が設定できない。
【００４３】
また、識別子Ｘであるストレージサブシステムは、アクセス制御属性設定可否が「可」であるからアクセス制御が設定でき、識別子Ｙであるストレージサブシステムは、アクセス制御属性設定可否が「不可」であるからアクセス制御が設定できない。
【００４４】
本実施例では，ストレージサブシステムによって、アクセス属性設定機能を有しており、ストレージサブシステム識別子により、属性設定可否テーブル１３００を参照することにより、該当外部ボリュームに対する属性設定可否を設定する。例えば、ストレージサブシステム８００は、ストレージサブシステムＸが有する外部ボリュームＸ５の登録設定時に、属性設定可否テーブル１３００からストレージサブシステムＸの属性設定可否を参照し、外部ボリューム管理テーブル１２００の外部ボリュームＸ５の属性設定可否には“可”が設定される。
【００４５】
上述したアクセス属性は、記憶領域ごとに設定される記憶領域の属性の一つである。
＜仮想ボリューム属性管理テーブル＞
図２(a)に示す仮想ボリューム管理テーブル１０００は、計算機２００が認識可能な記憶領域である仮想ボリュームごとに、仮想ボリューム識別子と外部からのアクセス属性の項目と仮想ボリュームに対する外部からのアクセスに対応し、データの格納先であるボリュームがストレージサブシステム８００内にあるか、外部のストレージサブシステム４００や６００にあるかを示すボリューム種別の項目を有する。
【００４６】
内部ボリュームに対する仮想ボリュームの設定は、管理者が管理計算機３００において、計算機２００から認識可能なボリュームとして新規に仮想ボリュームを作成し、これに未使用の内部ボリュームを対応させるように設定することにより行われる。そして、仮想ボリュームを作成すると、記憶制御装置８２０は、仮想ボリューム識別子を生成し、仮想ボリューム管理テーブル１０００に格納する。このとき、仮想ボリュームのアクセス属性はＲｅａｄ／Ｗｒｉｔｅ（ＲＷ）に設定され、仮想ボリュームに対応するのが、内部ボリュームであるか外部ボリュームであるかを示すボリューム種別は、“内部”に設定される。さらに、内部ボリューム管理テーブル１１００の仮想ボリュームに対応する内部ボリュームの使用状態は、“使用”が設定され、仮想ボリューム識別子には、該仮想ボリュームの識別子が設定される。
【００４７】
内部ボリュームと同様に、外部ボリュームに対する仮想ボリュームの設定は、管理者が管理計算機３００において、新規に仮想ボリュームを作成し、これに未使用の外部ボリュームを対応させるように設定することにより行われる。
【００４８】
仮想ボリュームを作成すると、記憶制御装置８２０にて仮想ボリューム識別子が生成され、仮想ボリューム管理テーブルに格納される。このとき、仮想ボリュームのアクセス属性はＲｅａｄ／Ｗｒｉｔｅ（ＲＷ）に設定され、仮想ボリュームに対応するのが、内部ボリュームであるか外部ボリュームであるかを示すボリューム種別は、“外部”に設定される。さらに、外部ボリューム管理テーブル１２００の仮想ボリュームに対応する外部ボリュームの使用状態は、“使用”が設定され、仮想ボリューム識別子には、該仮想ボリュームの識別子が設定される。
【００４９】
次に、図５を用いて仮想ボリューム、内部ボリューム、外部ボリュームの対応関係について具体的に説明する。ストレージサブシステム８００の外部ボリュームＸ２に対応する記憶領域Ｖ１（仮想ボリューム）は、外部装置である計算機２００から認識可能であり、データを保持することができない。下位のストレージサブシステム６００の記憶領域Ｘ２が、データを格納し、保持する。例えば、記憶制御装置８２０は、記憶領域Ｖ１に対する計算機２００からの書込み指示を受けると、ストレージサブシステム６００に対して、計算機２００から送信されたデータを下位のストレージサブシステム６００の記憶領域Ｘ２へ書込み要求し、下位のストレージサブシステム６００は、記憶領域Ｘ２にデータを格納する。また、記憶領域Ｖ１が、計算機２００から読み出し要求を受けると、記憶制御装置８２０は、データを格納しているストレージサブシステム６００の記憶領域Ｘ２からデータの読み出しを行い、そのデータを取得し、計算機２００へ送信する。計算機２００は、下位のストレージサブシステム６００内に形成された記憶領域Ｘ２は、上位のストレージサブシステム８００の仮想的な記憶領域（仮想ボリューム）である記憶領域Ｖ１として認識する。また、記憶制御装置８２０は、計算機２００が任認識できる記憶領域Ｖ２に対する書込み指示を計算機２００から受けると、計算機２００から送信されたデータをストレージサブシステム８００自身が有する記憶装置８１０の記憶領域Ｘ２（内部ボリューム）にデータを格納する。なお、図中の記憶領域Ｖ１・・・Ｖ５は、本実施例での仮想ボリューム識別子がＶ１・・・Ｖ５である記憶領域（仮想ボリューム）で、Ｘ２、Ｘ４、Ｘ５、Ｙ３、Ｙ５、Ｙ６はそれぞれ外部ボリューム識別子が、Ｘ２、Ｘ４、Ｘ５、Ｙ３、Ｙ５、Ｙ６である記憶領域（外部ボリューム）である。また、記憶領域１，２、３，４，５は、内部ボリューム識別子が１，２，３，４，５に該当するストレージサブシステム８００の記憶領域（内部ボリューム）である。
＜アクセス制御の設定＞
本実施形態では、ストレージサブシステム８００にストレージサブシステム４００と６００を接続し、ストレージサブシステム４００と６００のボリュームをストレージサブシステム８００の外部ボリュームとして使用している。この設定は管理計算機３００から行われるが、この設定とともにＷＷＮを用いたアクセス制御をあわせて行っても良い。本実施形態ではストレージサブシステム８００と６００はアクセス制御の機能を有するが、ストレージサブシステム４００はアクセス制御の機能を有しないとして説明する。
【００５０】
すなわち、ストレージサブシステム８００の外部ボリュームとして設定したストレージサブシステム６００のボリュームに対して管理計算機３００から、ストレージサブシステム８００のファイバーチャネルインタフェース９００のＷＷＮをアクセス制御対象として設定する。この設定により、外部ボリュームとして割り当てたボリュームは、ＷＷＮ「９００」からのデータの入出力要求のみしか処理できなくなる。このように設定することで、ホスト計算機やストレージサブシステム９００以外のストレージサブシステムなどの装置から、すでに外部ボリュームとして設定されている記憶制御装置６００のボリュームにデータの入出力要求を発行しても、ストレージサブシステム６００は、ストレージサブシステム８００のＷＷＮ「９００」しか許可されていないため、WWNが「９００」以外のファイバーチャネルインタフェースを備えるホスト計算機や外部装置からのボリュームに対するアクセスを拒否し、ストレージサブシステム９００以外から不正アクセスを防止することができる。
【００５１】
本実施形態では、厳格なアクセス制御を提供するために外部ボリューム設定時にアクセス制御を設定する方法で説明しているが、外部ボリュームを設定する段階ではアクセス制御を設定せず、ストレージサブシステム８００に対してアクセス制御の設定が行われたタイミングで、ストレージサブシステム６００のアクセス制御の設定を行っても良い。たとえば、ストレージサブシステム８００の仮想ボリュームＶ１に対して図１２（ｃ）のように、アクセス制御を設定する場合には、仮想ボリュームＶ１の実態であるストレージサブシステム６００の外部ボリュームＸ２に対してアクセス制御を設定するため、図１２（ｂ）のように、アクセス管理テーブル１２００１のＸ２の「アクセス許可するＷＷＮ」の欄に対して、ストレージサブシステム８００のＷＷＮ「９００」を設定しても良い。
＜アクセス管理テーブル＞
図１２（ｂ）に構成変更後のストレージサブシステム６００のアクセス管理テーブルの構成を示す。ボリュームＸ２、Ｘ４、Ｘ５を仮想ボリュームとして、ストレージサブシステム８００から使用した場合のストレージサブシステム６００のアクセス管理テーブル１２００１である。取り込んだボリュームＸ２，Ｘ４、Ｘ５のアクセスを許可するＷＷＮが「９００」となっている。これによって、ボリュームＸ２，Ｘ４、Ｘ５は、ストレージサブシステム８００からのアクセスのみしか実行できなくなる。
アクセス制御設定済みであることは、図２（ｃ）に示すように、外部ボリューム管理テーブル１２００のアクセス制御の欄に保持する。Ｘ２，Ｘ４，Ｘ５は、アクセス制御設定済みである。
【００５２】
次に、図１２（ｃ）にストレージサブシステム８００のアクセス管理テーブル１２００２の構成を示す。ストレージサブシステム８００は、Ｖ１からＶ５の仮想ボリューム識別子で区別される仮想ボリュームを有しているが、図２より、Ｘ２はＶ１、Ｘ４はＶ３、Ｘ５は未使用のためまだ仮想ボリューム識別子が割り当てられていない。
【００５３】
管理計算機３００は、構成変更時に、ストレージサブシステム６００のアクセス管理テーブルを取得し、ストレージサブシステム６００のアクセス管理テーブル１２００１を図１２（ｂ）のように書き換えるとともに、ストレージサブシステム８００のアクセス管理テーブル１２００２を図１２（ｃ）のように書き換える。図１２（ｃ）に示すように、仮想ボリュームＶ１には、ストレージサブシステム６００のＸ２に設定されていたＷＷＮである「２０２」と「２０３」を設定し、仮想ボリュームＶ３には、ストレージサブシステム６００のＸ４に設定されていたＷＷＮである「２０３」を設定する。ストレージサブシステム６００のボリュームＸ５については、未使用のため、アクセス管理テーブルには現れていない。もし、ボリュームＸ５をホスト計算機２００が利用する場合には、管理計算機３００から仮想ボリューム識別子Ｖｎを割当、アクセス管理テーブル１２００２には、ＶｎをどのＷＷＮに対してアクセス許可を与えるかを設定する必要がある。Ｖｎに与えたアクセス制限によって、特に、ストレージサブシステム６００のアクセス管理テーブルを書き換える必要はない。ボリュームＸ５に対しては、図１２（ｂ）に示したように、既にストレージサブシステム８００からのアクセスしか実行しないように設定しているためである。
＜入出力要求処理＞
次に、このように設定された仮想ボリュームに対する計算機２００からのデータ入出力要求に対するアクセス制御を図３を用いて説明する。
【００５４】
記憶制御装置８２０のプロセッサ８３０がファイバーチャネルインターフェイス８７０を介して計算機２００からのデータ入出力要求を受け取ると、不揮発メモリ８５０からホスト入出力要求プログラム２０００を読み出し、実行する。
【００５５】
まず、記憶制御装置８２０のプロセッサは、データ入出力要求から発行元のＷＷＮを取得し、アクセス管理テーブルを参照し、発行元のＷＷＮがアクセス許可しているＷＷＮかを識別する（ステップ２００５）。もしアクセス許可していないＷＷＮを有するファイバーチャネルインタフェースからの要求であれば、リードライトは一切実行せず終了とする。このようにアクセス制御することによって、アクセス許可したＷＷＮの場合には、記憶制御装置８２０のプロセッサは、要求対象の仮想ボリュームの識別子に基づいて、仮想ボリューム属性管理テーブル１０００を参照する（ステップ２０１０）。
当該仮想ボリュームのボリューム種別を調べ（ステップ２０２０）、外部ボリュームである場合には，外部ボリューム管理テーブル１２００を参照し、当該仮想ボリュームに対応する外部ボリュームの識別子を取得する（ステップ２０３０）。
【００５６】
当該仮想ボリュームのボリューム種別が、内部ボリュームである場合には，内部ボリューム管理テーブル１１００を参照し、当該仮想ボリュームに対する内部ボリュームの識別子を取得する（ステップ２０４０）。
【００５７】
次に、ホスト計算機２００からのデータ入出力要求を調べ（ステップ２０５０）が、Ｗｒｉｔｅ要求である場合には，ステップ２０１０で参照した当該仮想ボリュームのアクセス属性が、Ｒｅａｄ及びＷｒｉｔｅを許可するＲＷであれば（ステップ２０６０）、ステップ２０３０で取得した外部ボリュームもしくはステップ２０４０で取得した内部ボリュームに対してＷｒｉｔｅを実行して（ステップ２０７０）、終了する。
ステップ２０５０において、Ｗｒｉｔｅ要求でない場合は，Ｒｅａｄを実行して（ステップ２０９０）、終了する。
ステップ２０６０において、当該仮想ボリュームのアクセス属性が、Ｒｅａｄのみを許可するＲであれば、要求元の計算機２００にＷｒｉｔｅ不可を応答して（ステップ２０８０）、終了する。
上記のように、管理計算機２００からストレージサブシステム８００の仮想ボリュームに対するデータ入出力要求は、仮想ボリューム属性管理テーブル１０００のアクセス属性によって制限される。
本実施例では、アクセス属性として計算機の読み込みのみを許可するＲ（Ｒｅａｄ）、読み込みと書き込みを許可するＲＷ（Ｒｅａｄ／Ｗｒｉｔｅ）を設定する。
＜属性変更処理＞
次に、仮想ボリュームに対するアクセス属性の変更について、図４を用いて説明する。
【００５８】
記憶制御装置８２０のプロセッサ８３０は、ファイバーチャネルインターフェイス８７０を介して計算機２００からのアクセス属性変更要求を受け取ると、不揮発メモリ８５０から属性変更要求プログラム４０００を読み出し、実行する。アクセス属性変更要求は、現在のアクセス属性と異なるアクセス属性の設定を要求や、現在のアクセス属性と同じアクセス属性の設定要求である。ここで、アクセス属性とは、少なくとも書き込み禁止の属性と、書き込み禁止の期間を示す属性である。
【００５９】
記憶制御装置８２０は、要求対象の仮想ボリュームの識別子に基づいて、仮想ボリューム属性管理テーブル１０００を参照する（ステップ４０１０）。
参照結果、当該仮想ボリュームのボリューム種別を調べ（ステップ４０２０）、外部ボリュームでない場合（内部ボリュームである場合）には，仮想ボリューム属性管理テーブル１０００の属性を要求に基づいて設定し（ステップ４０３０）、終了する。
【００６０】
当該仮想ボリュームのボリューム種別が外部ボリュームである場合には，プロセッサ８３０は、外部ボリューム管理テーブル１２００を参照し（ステップ４０４０）、当該仮想ボリュームに対応する外部ボリュームの属性設定可否を調べる（ステップ４０５０）。
【００６１】
当該外部ボリュームの属性設定可否が可である場合には，ファイバーチャネルインターフェイス９００を介して、当該外部ボリュームを有するストレージサブシステムに対して、当該仮想ボリュームに対する属性設定と同じ属性設定の指示を当該外部ボリュームに対して行う。つまり、外部ボリュームを備えるストレージサブシステムに対して属性設定の指示をする。（ステップ４０６０）、仮想ボリューム属性管理テーブル１０００の属性を要求に基づいて設定し（ステップ４０７０）、終了する。設定後、属性設定が完了した旨をホスト計算機２００に通知してもよい。
【００６２】
例えば、ステップ４０６０での外部ボリュームのストレージサブシステムに対する属性設定の指示は、プロセッサ８３０が、受け取ったアクセス属性変更要求に含まれるアクセス属性情報を抽出し、生成する。
【００６３】
ステップ４０５０にて、当該外部ボリュームの属性設定が不可である場合には，プロセッサ８３０は、内部ボリューム管理テーブル１１００から未使用の内部ボリュームを検索し（ステップ４１００）、未使用の内部ボリュームがあるかを調べる（ステップ４１１０）。
【００６４】
未使用の内部ボリュームがある場合は、当該外部ボリュームからステップ４１１０で見つかった未使用の内部ボリュームにデータを移動し（ステップ４１２０）、仮想ボリューム属性管理テーブル１０００の属性を要求に基づいて設定し（ステップ４１３０）、仮想ボリューム属性管理テーブル１０００、内部ボリューム管理テーブル１１００、外部ボリューム管理テーブル１２００を更新し（ステップ４１４０）、終了する。
【００６５】
ステップ４１２０のデータ移動は、外部ボリュームに対してデータのリードを行い、内部ボリュームに対して外部ボリュームからリードしたデータをライトすることによってデータのコピーを行う。ライト終了後、外部のストレージサブシステムに対し、当該データの削除指示を出す。削除指示を受けたストレージサブシステム（本実施例においては、ストレージサブシステム600）は、当該データの削除は、ボリュームの全領域に対して０を書き込むことによって行う。
【００６６】
ステップ４１１０にて、プロセッサ８３０は、未使用の内部ボリュームがない場合には、外部ボリューム管理テーブル１２００から未使用の外部ボリュームを検索し（ステップ４１５０）し、未使用かつ属性設定可否が可である外部ボリュームがあるかを調べる（ステップ４１６０）。
【００６７】
未使用の外部ボリュームがある場合には，当該外部ボリュームからステップ４１６０で見つかった未使用の外部ボリュームにデータを移動し（ステップ４１７０）、データ移動先の外部ボリュームを有するストレージサブシステムに対して、当該仮想ボリュームに対する属性設定と同じ属性設定を当該外部ボリュームに対して行い（ステップ４１８０）、仮想ボリューム属性管理テーブル１０００の属性を要求に基づいて設定し（ステップ４１３０）、仮想ボリューム属性管理テーブル１０００、内部ボリューム管理テーブル１１００、外部ボリューム管理テーブル１２００を更新し（ステップ４１４０）、終了する。
【００６８】
ステップ４１６０にて、未使用の外部ボリュームがない場合、要求元のホスト計算機２００に属性変更不可を通知して（ステップ４１９０）、終了する。
【００６９】
例えば、記憶制御装置８２０は、仮想ボリューム作成時に仮想ボリュームのアクセス属性をＲｅａｄ／Ｗｒｉｔｅ（ＲＷ）に設定する際に、属性変更処理４０００を当該作成仮想ボリュームに対して実行する。
【００７０】
以上説明した実施例により、複数の計算機がファイバーチャネルスイッチを介して接続するストレージサブシステムに格納されるデータに対するアクセス属性の設定を、計算機２００からの要求されるアクセス属性を反映させることができ、データが格納される記憶領域に対するファイバーチャネルスイッチを介する計算機からの不正なアクセスを防止することができる。
【００７１】
なお、既に属性変更要求プログラムにより処理されたボリュームに対し、再度変更要求があった場合でも、ステップ４０５０は行わずに、外部のストレージサブシステム４００や６００に対し、指示をしてもよい。
【００７２】
あるいは、プロセッサ８３０は、ステップ４０５０で、当該外部ボリュームの属性設定が不可である場合には、ステップ４１５０に進んでもよい。ストレージサブシステム８００の記憶装置８１０に、データを移動する判断を行わず、ストレージサブシステム６００へデータを移動してもよい。
【００７３】
また、ホスト計算機２００から、仮想ボリュームを指定し、既にボリュームに書き込まれているデータをアーカイブ化する指示を受けた場合、ストレージサブシステム８００が、そのデータに対する書込みの禁止の設定を図４の処理に従って行ってもよい。
【００７４】
また、ストレージサブシステム８００が、ホスト計算機からの仮想ボリュームに対するWrite要求数を監視し、一定期間内に、Write要求がなかった仮想ボリュームを指定し、図４の処理を行ってもよい。すなわち、ステップ４１２０やステップ４１７は、データの価値の変化に応じて、法律遵守や性能を満たすよう適切なボリュームに、例えば書き込み禁止の設定ができる記憶領域に、データ移動を行ってもよい。
【００７５】
アーカイブ化されるデータの例としては、メールに限らず、ミッションクリティカルな業務に関するデータ（例えば決算書などの文書データ、）も含まれる。また、アーカイブ化されたデータのファイルの形式の例は、pdf形式がある。
【００７６】
図８は、ステップ４０６０で行われるストレージサブシステム８００からファイバーチャネルスイッチ１００を介して、属性設定の指示をストレージサブシステム６００が受けた場合、ボリュームに対するアクセス属性の設定について、図８を使用して説明する。
【００７７】
属性変更プログラム８０００は、ファイバーチャネルインターフェイス６７０を介してストレージサブシステム８００からのアクセス属性設定の指示を受けると、記憶制御装置６２０のプロセッサ６３０が実行する。
【００７８】
記憶制御装置６２０のプロセッサ６３０は、要求対象のボリュームの識別子に基づいて、ボリューム属性管理テーブル６０００を参照する（ステップ８０１０）。
【００７９】
プロセッサ６３０は、ボリューム属性管理テーブル６０００の属性を要求に基づいて設定し（ステップ８０３０）、終了する。なお、ステップ４１８０で、ストレージサブシステム８００から属性設定の指示を受けたストレージサブシステムも同様な処理で属性設定の指示が行われる。
【００８０】
上述した実施例のように、上位のストレージサブシステムで、下位の複数のストレージサブシステムの記憶領域を集中して管理することにより、記憶領域の再配置を容易にし、管理者の負担を軽減することができる。記憶制御装置に正規に接続される計算機から仮想ボリュームに対する書き込みを抑止するだけでなく，仮想ボリュームに対応するストレージサブシステムの記憶領域に対する直接の不正書き込みアクセスによるデータの改竄を、仮想ボリュームに対する書き込み禁止設定のみで防止することができる。システム設定の一貫性が保障され、保存データの証拠性が向上する。つまり、複数のストレージシステムで、仮想ストレージ環境を構成する計算機システムで、データ改ざんを防止し、データの証拠性を容易に高めることができる。
【００８１】
なお、本実施例では，記憶制御装置８２０の仮想ボリュームに対するアクセス属性変更要求は、ファイバーチャネルインターフェイス８７０を介してホスト計算機２００によって行われるが、アクセス属性の変更要求は、ネットワークインターフェイス８９０を介して管理計算機２００もしくは管理計算機３００によって行われてもよい。管理計算機３００から、アクセス属性の変更要求を受け、ストレージサブシステム８００のプロセッサ８３０が、ステップ４０５０でNoの場合に管理計算機３００にその旨通知してもよい。通知を受けることにより、管理計算機３００を利用する管理者が、複数のストレージサブシステムの構成変更を迅速に把握することができる。
【００８２】
また、本実施例では、上位のストレージサブシステムで、外部ボリューム管理テーブル１２００を保持することで、下位のストレージサブシステムの記憶領域の属性を管理しているが、ステップ４０２０で、外部ボリュームである場合、外部ボリュームを備えるストレージサブシステムに要求元のホスト計算機２００からの属性設定指示に応じた属性が設定できるかストレージサブシステム８００から下位のストレージサブシステム４００あるいは６００に問い合わせ、それに対する応答で、ステップ４０６０の判断を行ってもよい。
【００８３】
さらに、Ｒ／Ｗ属性に加えて、アクセス制御の有無を考慮して外部ボリュームから内部ボリュームへのデータ移動を行っても良い。すなわち、外部ボリュームを保持するストレージサブシステムがアクセス制御を有しない場合には、不特定のホスト計算機からのアクセスを実行できる危険性があり、それをデータの移動によって回避する。外部ボリュームに設定しようとしたボリュームに対して、アクセス制御が設定されていない場合には、外部ボリュームから内部ボリュームにデータを移動し、または、アクセス制御を設定可能なストレージサブシステム（本実施形態の場合にはストレージサブシステム６００や８００）にデータを移動し、アクセス制御を設定することで、不特定のホスト計算機やストレージサブシステムからのアクセスを防ぐことができる。
【００８４】
図１３のフローを用いてアクセス制御変更処理の詳細について説明する。記憶制御装置８２０のプロセッサ８３０は、ホスト計算機２００もしくは管理計算機３００からアクセス制御変更要求を受け取ると、不揮発メモリ８５０からアクセス制御変更要求プログラム１３０００を読み出し、実行する。
【００８５】
記憶制御装置８２０は、要求対象の仮想ボリュームの識別子に基づいて、仮想ボリューム属性管理テーブル１０００を参照する（ステップ１３０１０）。
【００８６】
参照結果、当該仮想ボリュームのボリューム種別を調べ（ステップ１３０２０）、外部ボリュームでない場合（内部ボリュームである場合）には、アクセス管理テーブル１２００２上の要求対象の仮想ボリュームへのアクセスを許可するアクセス元のWWNを設定し（ステップ１３０４０）、終了する。
【００８７】
当該仮想ボリュームのボリューム種別が外部ボリュームである場合には、プロセッサ８３０は、外部ボリューム管理テーブル１２００を参照し（ステップ１３０４０）、当該仮想ボリュームに対応する外部ボリュームがアクセス制御設定済みであるかを調べる（１３０５０）。
【００８８】
アクセス制御が設定済みである場合には、アクセス制御管理テーブル１２００２を設定し（ステップ１３０７０）、終了する。設定後、記憶制御装置８２０は、アクセス制御の設定が完了した旨を、設定を依頼したホスト計算機もしくは管理計算機に通知しても良い。
【００８９】
ステップ１３０５０にて、アクセス制御が設定済みではない場合には、プロセッサ８３０は、属性設定可否テーブル１３００を参照し、外部ボリュームにアクセス制御が設定可能かを調べ（ステップ１３０８０）、外部ボリュームにアクセス制御が設定可能な場合には、記憶制御装置６２０に対し、アクセス管理テーブル１２００１を書き換えアクセス制御を設定する指示を送信し（１３０９０）、記憶制御装置６２０のプロセッサ６３０がその指示に基づいてアクセス管理テーブル１２００１を書き換え、終了する。
【００９０】
ステップ１３０８０で、外部ボリュームにアクセス制御が設定済みでなく、アクセス制御が設定できない場合には、プロセッサ８３０は、内部ボリューム管理テーブル１１００から、未使用のボリュームを検索し（ステップ１３１００）、未使用の内部ボリュームがあるかを調べる（ステップ１３１１０）。
【００９１】
未使用の内部ボリュームがある場合には、当該外部ボリュームからステップ１３１１０で見つかった未使用の内部ボリュームにデータを移動し（１３１２０）、アクセス管理テーブル１２００２を更新し（ステップ１３１３０）、仮想ボリューム属性管理テーブル１０００、内部ボリューム管理テーブル１１００、外部ボリューム管理テーブル１２００を更新し（ステップ１３１４０）、終了する。
【００９２】
ステップ１３１１０において、プロセッサ８３０は、未使用の内部ボリュームがない場合には、外部ボリューム管理テーブル１２００から未使用の外部ボリュームを検索し（ステップ１３１５０）、未使用かつアクセス制御設定済みの外部ボリュームがあるかを調べる（１３１６０）。
【００９３】
未使用の外部ボリュームがある場合には、プロセッサ８３０は、当該外部ボリュームからステップ１３１６０で見つかった未使用の外部ボリュームにデータを移動し（ステップ１３１７０）、アクセス管理テーブル１２００２を更新し（ステップ１３１３０）、仮想ボリューム属性管理テーブル１０００、内部ボリューム管理テーブル１１００、外部ボリューム管理テーブル１２００を更新し（ステップ１３１４０）、終了する。
【００９４】
ステップ１３１６０にて、未使用の外部ボリュームがない場合、要求もとのホスト計算機もしくは管理計算機にアクセス制御変更不可を通知して（１３１９０）、終了する。
【００９５】
上述した図１３のフローを実行する例として、ホスト計算機２００もしくは管理計算機３００から、Ｖ４に対して、ＷＷＮ「２０３」のアクセス制御の設定要求があったとすると、ストレージサブシステム８００は、ステップ１３０８０の結果、アクセス制御の仕組みを持つため、アクセス制御テーブル１２００２を図１２（ｄ）のように書き換えることによって、ストレージサブシステム８００としては、アクセス制御を行うことができる。
【００９６】
一方、ストレージサブシステム４００は、ステップ１３０８０の結果、アクセス制御の仕組みを有しないため、ストレージサブシステム４００のボリュームＹ３に対しては、全てのＷＷＮのインタフェースからのアクセスを実行してしまう。この場合、外部ボリューム属性としてアクセス制御属性を考慮することで、ステップ１３１１０及び１３１２０で、外部ボリュームのデータをアクセス制御を実行可能なストレージサブシステム６００もしくは８００にデータ移動することによって対応することができる。  上述した実施例によれば、仮想化環境において、データを格納するストレージサブシステムに対するアクセス管理やデータ管理を効率よく行うことができる。
【実施例２】
【００９７】
図９は、実施例２における管理計算機３００のハードウェア構成図を示したものである。図１の管理計算機３００と比較して、記憶装置３０５に属性設定検査プログラム９０００を有する点が異なる、それ以外は、図１の計算機システムと同様である。
【００９８】
管理計算機３００は、ストレージサブシステム８００の不揮発メモリ８４０に格納される仮想ボリューム属性管理テーブル１０００と外部ボリューム管理テーブル１２００及びストレージサブシステム６００の不揮発メモリ６５０に格納されるボリューム属性管理テーブル６０００を、定期的に収集し、アクセス属性設定の一貫性を検査する。この属性設定検査プログラムを図１０を用いて説明する。
＜属性設定検査プログラムの内容＞
属性設定検査処理９０００は、管理計算機３００の制御部によって実行される。ストレージサブシステム８００の不揮発メモリ８４０に格納される仮想ボリューム属性管理テーブル１０００と外部ボリューム管理テーブル１２００及びストレージサブシステム６００の不揮発メモリ６５０に格納されるボリューム属性管理テーブル６０００を取得する（ステップ９０１０）。
【００９９】
ステップ９０１０にて取得した仮想ボリューム属性管理テーブル１０００に格納される仮想ボリュームのエントリを１つ取得する（ステップ９０２０）。
【０１００】
ステップ９０２０で取得した仮想ボリュームのエントリのボリューム種別が外部である場合には、ステップ９０１０にて取得した外部ボリューム管理テーブル１２００を参照し、ステップ９０１０にて取得した仮想ボリュームに対応する外部ボリュームの識別子を取得する（９０４０）。
【０１０１】
ステップ９０１０にて取得したボリューム属性管理テーブル６０００を参照し、ステップ９０４０で取得した外部ボリュームの属性を取得する（ステップ９０５０）。
【０１０２】
ステップ９０２０で取得した仮想ボリュームの属性とステップ９０５０で取得した外部ボリュームの属性が一致していない場合は，ストレージサブシステム８００に対して当該仮想ボリュームに対して属性変更処理を指示する（９０７０）。
【０１０３】
例えば、仮想ボリュームと外部ボリュームの属性が一致していない場合、仮想ボリュームの属性の設定と同じ内容をストレージサブシステム８００に対して行う。ストレージサブシステム８００は、図４のステップ４０４０以降の処理を行う。
【０１０４】
未処理の仮想ボリュームがある場合（ステップ９０８０）には，未処理の仮想ボリュームに対してステップ９０２０から処理を繰り返す。
【０１０５】
ステップ９０３０にて、仮想ボリュームが外部ボリュームでない場合には，ステップ９０８０にて未処理の仮想ボリュームがある場合には，未処理の仮想ボリュームに対してステップ９０２０から処理を繰り返す。
【０１０６】
ステップ９０６０にて、属性が一致している場合には，ステップ９０８０にて未処理の仮想ボリュームがある場合には，未処理の仮想ボリュームに対してステップ９０２０から処理を繰り返す。
【０１０７】
ステップ９０８０にて全ての仮想ボリュームに対して処理を行った場合には，実行結果を管理計算機３００の表示部に表示（ステップ９０９０）して、終了する。
【０１０８】
ステップ９０７０では、仮想ボリュームを有するストレージサブシステム８００に対して属性変更処理を指示したが、外部ボリュームを有するストレージサブシステム６００に対して直接属性変更処理を指示しても良い。
【０１０９】
管理計算機が、ステップ９０１０からステップ９０５０を仮想ボリュームのエントリごとに繰り返し、仮想ボリュームと外部ボリュームの属性の一致不一致を示すＧＵＩを生成し、管理計算機の表示部に表示してもよい。その一例を図１１に示す。
【０１１０】
図１１は、ボリュームの属性の一致不一致を示すＧＵＩである。
【０１１１】
仮想ボリュームはストレージサブシステム８００の計算機へ提供する記憶領域で、それに対応するデータの格納先である外部ボリュームは、外部のストレージサブシステム４００、６００が有する記憶装置で、データを格納するボリュームである。取得したアクセス属性の一致不一致をストレージサブシステム８００が計算機に提供する仮想ボリューム単位で表示する。
【０１１２】
以上説明した実施例により、管理計算機が、複数の管理テーブルを取得し、ストレージサブシステム間の階層情報や外部が認識可能な仮想ボリュームやそれに対応するデータを格納するボリュームのアクセス属性情報を取得でき、計算機からの要求をより反映したアクセス属性を管理することができる。
【０１１３】
なお、本実施例で説明される処理は、いずれかのストレージサブシステムが、そのストレージサブシステムの仮想ボリュームに対応する外部ボリュームを保持する一つ以上のストレージサブシステムからアクセス属性情報を取得して実行してもよい。あるいは、ホスト計算機が、実行してもよい。
【図面の簡単な説明】
【０１１４】
【図１】本発明の実施形態における計算機システムの構成図。
【図２】ストレージサブシステム８００が管理する管理テーブルを表す図。
【図３】ストレージサブシステム８００のホスト入出力要求プログラムの処理フロー。
【図４】ストレージサブシステム８００の属性変更要求プログラムの処理フロー。
【図５】本発明の実施形態における計算機システムの概念図。
【図６】ストレージサブシステム６００が管理する管理テーブルを表す図。
【図７】ストレージサブシステム６００のホスト入出力要求プログラムの処理フロー。
【図８】ストレージサブシステム６００の属性変更処理の処理フロー。
【図９】実施例２における管理計算機の構成図。
【図１０】管理計算機３００の属性設定検査処理の処理フロー。
【図１１】ボリュームの属性の一致不一致を示すＧＵＩ
【図１２】アクセス管理テーブルを表す図。
【図１３】ストレージサブシステム８００のアクセス制御変更要求プログラムの処理フロー。
【符号の説明】
【０１１５】
１…計算機システム
１００…ファイバーチャネルスイッチ
２００…ホスト計算機
３００…管理計算機
４００…ストレージサブシステム
４１０…記憶装置
４２０…記憶制御装置
６１０…記憶装置
５２０…記憶制御装置
８１０…記憶装置
８２０…記憶制御装置
１０００…仮想ボリューム属性管理テーブル
１１００…内部ボリューム管理テーブル
１２００…外部ボリューム管理テーブル
１３００…属性設定可否テーブル
６０００…ボリューム属性管理テーブル
【図１】
2005276158.tif 000003
【図２】
2005276158.tif 000004
【図３】
2005276158.tif 000005
【図４】
2005276158.tif 000006
【図５】
2005276158.tif 000007
【図６】
2005276158.tif 000008
【図７】
2005276158.tif 000009
【図８】
2005276158.tif 000010
【図９】
2005276158.tif 000011
【図１０】
2005276158.tif 000012
【図１１】
2005276158.tif 000013
【図１２】
2005276158.tif 000014
【図１３】
2005276158.tif 000015