説明

ストレージ装置、データ複写方法およびストレージシステム

【課題】不正なデータコピーを防ぐこと。
【解決手段】ストレージ装置STは、複数のサーバSVのうち要求元となるサーバSVからの複写要求を受け付ける。ストレージ装置STは、複写要求を受け付けた場合、要求元のサーバSVが複写対象データにアクセス可能か否かを判定する。ここで、要求元のサーバSVが複写対象データにアクセス不能の場合、ストレージ装置STは、要求元のサーバSVに、複写対象データを任意の記憶領域に対して複写する権限が設定されているか否かを判定する。ストレージ装置STは、要求元のサーバSVが複写対象データにアクセス可能、または要求元のサーバSVに複写対象データを複写する権限が設定されている場合、複写対象データを複写先のLUNに複写する複写処理を実行する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、筐体間のデータ複写を行うストレージ装置、データ複写方法およびストレージシステムに関する。
【背景技術】
【0002】
従来から、SAN(Storage Area Network)環境などにおいて、ストレージ装置がデータコピーを自律的に行う技術がある。また、SAN環境において、サーバとストレージ装置を対応付けて、ストレージ装置内のデータを排他的に扱うための技術がある(例えば、下記特許文献1〜3参照。)。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2003−242039号公報
【特許文献2】特開2005−276160号公報
【特許文献3】特開2006−146801号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、上述した従来技術では、ストレージ装置内のデータに対するサーバからのアクセスを制限しても、ストレージ装置の自律コピー機能を利用して、不正なデータコピーが行われる場合があるという問題があった。
【0005】
本発明は、上述した従来技術による問題点を解消するため、不正なデータ複写を防ぐことができるストレージ装置、データ複写方法およびストレージシステムを提供することを目的とする。
【課題を解決するための手段】
【0006】
上述した課題を解決し、目的を達成するため、開示のストレージ装置は、複数のサーバのうち要求元となるサーバからの、複写対象データの複写先の記憶領域に対する複写要求を受け付ける受付部と、前記受付部によって前記複写要求を受け付けた場合、前記複数のサーバのうち前記複写対象データにアクセス可能なサーバの識別子を記憶する第1のテーブルに、前記要求元のサーバの識別子が含まれているか否かを判定する第1の判定部と、前記複写要求を受け付けた場合、前記複数のサーバのうち前記複写対象データを任意の記憶領域に対して複写する権限が設定されたサーバの識別子を記憶する第2のテーブルに、前記要求元のサーバの識別子が含まれているか否かを判定する第2の判定部と、前記第1または第2の判定部によって前記要求元のサーバの識別子が含まれていると判定された場合、前記複写対象データを前記複写先の記憶領域に複写する複写処理を実行する実行部と、を備える。
【発明の効果】
【0007】
本ストレージ装置、データ複写方法およびストレージシステムによれば、不正なデータ複写を防ぐことができるという効果を奏する。
【図面の簡単な説明】
【0008】
【図1】本実施の形態にかかるデータ複写手法の一実施例を示す説明図である。
【図2】実施の形態にかかるコンピュータのハードウェア構成の一例を示すブロック図である。
【図3】本実施の形態にかかるストレージシステムの一実施例を示すシステム構成図である。
【図4】サーバ/LUN対応テーブルの記憶内容の一例を示す説明図である。
【図5】サーバ情報テーブルの記憶内容の一例を示す説明図である。
【図6】所有者情報テーブルの記憶内容の一例を示す説明図である。
【図7】許可情報テーブルの記憶内容の一例を示す説明図である。
【図8】ストレージ装置の機能的構成を示すブロック図である。
【図9】複写要求の具体例を示す説明図である。
【図10】LUNのデータ構造の具体例を示す説明図である。
【図11】LUN管理情報の伝播例を示す説明図である。
【図12】データ許可要求の具体例を示す説明図である。
【図13】データ許可応答の具体例を示す説明図である。
【図14】LUN許可要求の具体例を示す説明図である。
【図15】LUN許可応答の具体例を示す説明図である。
【図16】本実施の形態にかかるストレージ装置のデータ複写処理手順の一例を示すフローチャートである。
【図17】本データ複写手法の適用例を示す説明図(その1)である。
【図18】本データ複写手法の適用例を示す説明図(その2)である。
【図19】本データ複写手法の適用例を示す説明図(その3)である。
【発明を実施するための形態】
【0009】
以下に添付図面を参照して、この発明にかかるストレージ装置、データ複写方法およびストレージシステムの好適な実施の形態を詳細に説明する。
【0010】
(データ複写手法の一実施例)
図1は、本実施の形態にかかるデータ複写手法の一実施例を示す説明図である。図1において、サーバSV1は、ストレージ装置ST内の第1の記憶領域110にアクセス可能である。また、サーバSV2は、ストレージ装置ST内の第2の記憶領域120にアクセス可能である。
【0011】
以下、ストレージ装置STが、第1の記憶領域110内のデータDの第2の記憶領域120に対する複写要求をサーバSV2から受け付けた場合を例に挙げて、本実施の形態にかかるデータ複写手法の一実施例について説明する。
【0012】
(1)ストレージ装置STは、第1の記憶領域110内のデータDの第2の記憶領域120に対する複写要求をサーバSV2から受け付ける。
【0013】
(2)ストレージ装置STは、要求元のサーバSV2が、データDの所有権を有するサーバか否かを判定する。ここで、データDの所有権を有するサーバとは、データDにアクセス可能なサーバである。ここでは、データDの所有権を有するサーバは、第1の記憶領域110にアクセス可能なサーバSV1である。
【0014】
上記(2)において、サーバSV2がデータDの所有権を有する場合は下記(5)に移行する。一方、サーバSV2がデータDの所有権を有していない場合は下記(3)に移行する。ここでは、サーバSV2がデータDの所有権を有していないため、下記(3)に移行する。
【0015】
(3)ストレージ装置STは、要求元のサーバSV2が、データDの使用権を有するサーバか否かを判定する。ここで、データDの使用権を有するサーバとは、データDを任意の記憶領域に対して複写する権限を有するサーバである。ここでは、サーバSV2が、データDの使用権を有している場合を想定する。
【0016】
上記(3)において、サーバSV2がデータDの使用権を有する場合は下記(5)に移行する。一方、サーバSV2がデータDの使用権を有していない場合は、(4)ストレージ装置STが、サーバSV2に対して複写失敗を通知する。ここでは、サーバSV2がデータDの使用権を有しているため、下記(5)に移行する。
【0017】
(5)ストレージ装置STは、要求元のサーバSV2が、複写先の記憶領域の所有権を有するサーバか否かを判定する。ここで、複写先の記憶領域の所有権を有するサーバとは、複写先の記憶領域にアクセス可能なサーバである。ここでは、複写先の記憶領域の所有権を有するサーバは、複写先の記憶領域となる第2の記憶領域120にアクセス可能なサーバSV2である。
【0018】
上記(5)において、サーバSV2が複写先の記憶領域の所有権を有する場合は下記(8)に移行する。一方、サーバSV2が複写先の記憶領域の所有権を有していない場合は下記(6)に移行する。ここでは、サーバSV2が複写先の記憶領域の所有権を有しているため、下記(8)に移行する。
【0019】
(6)ストレージ装置STは、要求元のサーバSV2が、複写先の記憶領域の使用権を有するサーバか否かを判定する。ここで、複写先の記憶領域の使用権を有するサーバとは、複写先の記憶領域に対して任意のデータを複写する権限を有するサーバである。
【0020】
上記(6)において、サーバSV2が複写先の記憶領域の使用権を有する場合は下記(8)に移行する。一方、サーバSV2が複写先の記憶領域の使用権を有していない場合は、(7)ストレージ装置STが、サーバSV2に対して複写失敗を通知する。
【0021】
(8)ストレージ装置STは、データDを複写先の記憶領域となる第2の記憶領域120に複写する複写処理を実行する。具体的には、ストレージ装置STが、第1の記憶領域110の中からデータDを読み出して、第2の記憶領域120に書き込む。
【0022】
このように、本データ複写手法では、要求元のサーバSV2が、複写対象となるデータDの所有権または使用権を有し、かつ、複写先となる第2の記憶領域120の所有権または使用権を有する場合に、データDの第2の記憶領域120に対する複写処理を行う。換言すれば、要求元のサーバSV2がアクセス可能な第2の記憶領域120への複写要求であっても、サーバSV2がデータDの所有権または使用権を有していない場合は複写処理が行われない。
【0023】
また、要求元のサーバSV2がアクセス可能なデータDの複写要求であっても、サーバSV2が複写先となる第2の記憶領域120の所有権または使用権を有していない場合は複写処理が行われない。このため、本データ複写手法によれば、ストレージ装置STが自律的にデータ複写を行う機能を利用した不正なデータ複写を防ぐことができる。
【0024】
(コンピュータのハードウェア構成)
つぎに、本実施の形態にかかるコンピュータ(例えば、図1に示したサーバSV1,SV2およびストレージ装置ST)のハードウェア構成について説明する。
【0025】
図2は、実施の形態にかかるコンピュータのハードウェア構成の一例を示すブロック図である。図2において、コンピュータは、CPU(Central Processing Unit)201と、ROM(Read‐Only Memory)202と、RAM(Random Access Memory)203と、HDD(Hard Disk Drive)204と、I/F(Interface)205と、ディスプレイ206と、キーボード207と、マウス208と、を備えている。また、各構成部はバス200によってそれぞれ接続されている。
【0026】
ここで、CPU201は、コンピュータの全体の制御を司る。ROM202は、ブートプログラムなどのプログラムを記憶している。RAM203は、CPU201のワークエリアとして使用される。HDD204は、CPU201の制御にしたがって、磁性体を塗布した円盤(ハードディスク)を高速回転させることで、磁気ヘッドがデータのリード/ライトを行う記憶装置である。
【0027】
I/F205は、通信回線を通じてLAN(Local Area Network)、WAN(Wide Area Network)、インターネットなどのネットワーク214に接続され、このネットワーク214を介して他の装置に接続される。そして、I/F205は、ネットワーク214と内部のインターフェースを司り、外部装置からのデータの入出力を制御する。I/F205には、たとえばモデムやLANアダプタなどを採用することができる。
【0028】
ディスプレイ206は、カーソル、アイコンあるいはツールボックスをはじめ、文書、画像、機能情報などのデータを表示する。このディスプレイ206は、たとえば、CRT、TFT液晶ディスプレイ、プラズマディスプレイなどを採用することができる。
【0029】
キーボード207は、文字、数字、各種指示などの入力のためのキーを備え、データの入力をおこなう。また、タッチパネル式の入力パッドやテンキーなどであってもよい。マウス208は、カーソルの移動や範囲選択、あるいはウィンドウの移動やサイズの変更などをおこなう。ポインティングデバイスとして同様に機能を備えるものであれば、トラックボールやジョイスティックなどであってもよい。
【0030】
なお、上述した構成部201〜208のうち一部の構成部(例えば、ディスプレイ206、キーボード207、マウス208など)をコンピュータから省略することにしてもよい。
【0031】
(ストレージシステム300の一実施例)
図3は、本実施の形態にかかるストレージシステムの一実施例を示すシステム構成図である。図3において、ストレージシステム300は、サーバSV1〜SV3と、ストレージ装置ST1〜ST3と、を含む構成である。
【0032】
サーバSV1〜SV3は、ストレージ装置ST1〜ST3を動作させる機能を有するコンピュータである。また、サーバSV1〜SV3は、ストレージ装置ST1〜ST3の記憶領域にアクセスしてデータのリード/ライトを行う機能を有する。
【0033】
ストレージ装置ST1〜ST3は、データを記憶する記憶領域を有し、記憶領域に対するアクセスを制御するコンピュータである。また、ストレージ装置ST1〜ST3は、自律的に筐体間のデータ複写を行う機能を有する。
【0034】
図3中、LUN(Logical Unit Number)11,LUN12,LUN21,LUN22,LUN31は、各ストレージ装置ST1〜ST3の記憶領域が割り当てられた論理ボリュームである。論理ボリュームとは、各ストレージ装置ST1〜ST3の記憶領域を管理するための単位である。例えば、ハードディスク全体を一つの論理ボリュームとしてもよく、また、ハードディスクを区切って分割されたパーティションを一つの論理ボリュームとしてもよい。さらに、複数のハードディスクを組み合わせて一つの論理ボリュームとしてもよい。
【0035】
ここで、各サーバSV1〜SV3と各ストレージ装置ST1〜ST3との間はマルチパス構成となっている。具体的には、サーバSV1のHBA(Host Bus Adapter)11とストレージ装置ST1のCA(Channel Adaptor)11との間にパスが定義され、サーバSV1のHBA12とストレージ装置ST1のCA12との間にパスが定義されている。
【0036】
サーバSV2のHBA21とストレージ装置ST2のCA21との間にパスが定義され、サーバSV2のHBA22とストレージ装置ST2のCA22との間にパスが定義されている。サーバSV3のHBA31とストレージ装置ST3のCA31との間にパスが定義され、サーバSV3のHBA32とストレージ装置ST3のCA32との間にパスが定義されている。
【0037】
また、各ストレージ装置ST1〜ST3は、筐体間のデータ複写を行うためのRA(Remote Adapter)を備えている。具体的には、ストレージ装置ST1のRA11とストレージ装置ST2のRA21とが接続され、ストレージ装置ST2のRA22とストレージ装置ST3のRA31とが接続されている。
【0038】
(各種テーブルの記憶内容)
つぎに、図4〜図7を用いて各ストレージ装置ST1〜ST3が用いる各種テーブルの記憶内容について説明する。図4〜図7に示す各種テーブルは、例えば、図2に示したRAM203、HDD204などの記憶装置により実現される。
【0039】
<サーバ/LUN対応テーブル410,420,430>
図4は、サーバ/LUN対応テーブルの記憶内容の一例を示す説明図である。図4において、サーバ/LUN対応テーブル410は、ストレージ装置ST1が用いるテーブルである。また、サーバ/LUN対応テーブル420は、ストレージ装置ST2が用いるテーブルである。また、サーバ/LUN対応テーブル430は、ストレージ装置ST3が用いるテーブルである。
【0040】
各サーバ/LUN対応テーブル410,420,430は、サーバ名、経路情報およびLUN番号のフィールドを有する。各フィールドに情報を設定することで、各ストレージ装置ST1〜ST3内のLUNにアクセス可能なサーバSV1〜SV3を特定するための情報が記憶されている。
【0041】
ここで、サーバ名は、各サーバSV1〜SV3の利用者が認識する論理的なサーバの識別子である。以下の説明では、このサーバ名は、各ストレージ装置ST1〜ST3が各サーバSV1〜SV3を認識するための物理的なサーバの識別子と関連付けられており、各ストレージ装置ST1〜ST3は、サーバ名から各サーバSV1〜SV3を認識できるものとする。
【0042】
経路情報は、各サーバSV1〜SV3と各ストレージ装置ST1〜ST3との間に定義されたパスを特定するための情報である。ここでは、各パスを定義するHBA番号とCA番号が設定されている。LUN番号は、ストレージ装置ST1〜ST3内のLUNの識別子である。
【0043】
具体的には、サーバ/LUN対応テーブル410は、サーバSV1のHBA11とストレージ装置ST1のCA11との間に定義されたパスを介して、サーバSV1がLUN11にアクセス可能であることを示している。また、サーバ/LUN対応テーブル410は、サーバSV1のHBA12とストレージ装置ST1のCA12との間に定義されたパスを介して、サーバSV1がLUN11にアクセス可能であることを示している。
【0044】
さらに、サーバ/LUN対応テーブル410は、サーバSV1のHBA11とストレージ装置ST1のCA11との間に定義されたパスを介して、サーバSV1がLUN12にアクセス可能であることを示している。また、サーバ/LUN対応テーブル410は、サーバSV1のHBA12とストレージ装置ST1のCA12との間に定義されたパスを介して、サーバSV1がLUN12にアクセス可能であることを示している。
【0045】
サーバ/LUN対応テーブル420は、サーバSV2のHBA21とストレージ装置ST2のCA21との間に定義されたパスを介して、サーバSV2がLUN21にアクセス可能であることを示している。また、サーバ/LUN対応テーブル420は、サーバSV2のHBA22とストレージ装置ST2のCA22との間に定義されたパスを介して、サーバSV2がLUN21にアクセス可能であることを示している。
【0046】
さらに、サーバ/LUN対応テーブル420は、サーバSV2のHBA21とストレージ装置ST2のCA21との間に定義されたパスを介して、サーバSV2がLUN22にアクセス可能であることを示している。また、サーバ/LUN対応テーブル420は、サーバSV2のHBA22とストレージ装置ST2のCA22との間に定義されたパスを介して、サーバSV2がLUN22にアクセス可能であることを示している。
【0047】
サーバ/LUN対応テーブル430は、サーバSV3のHBA31とストレージ装置ST3のCA31との間に定義されたパスを介して、サーバSV3がLUN31にアクセス可能であることを示している。また、サーバ/LUN対応テーブル430は、サーバSV3のHBA32とストレージ装置ST3のCA32との間に定義されたパスを介して、サーバSV3がLUN31にアクセス可能であることを示している。
【0048】
各ストレージ装置ST1〜ST3は、各サーバ/LUN対応テーブル410,420,430を参照することで、各ストレージ装置ST1〜ST3内のLUNにアクセス可能なサーバSV1〜SV3を特定することができる。なお、各サーバ/LUN対応テーブル410,420,430は、例えば、各サーバSV1〜SV3と各ストレージ装置ST1〜ST3とを接続する際に、各ストレージ装置ST1〜ST3において作成される。
【0049】
<サーバ情報テーブル510,520,530>
図5は、サーバ情報テーブルの記憶内容の一例を示す説明図である。図5において、サーバ情報テーブル510はストレージ装置ST1が用いるテーブルであり、サーバ情報テーブル520はストレージ装置ST2が用いるテーブルであり、サーバ情報テーブル530はストレージ装置ST3が用いるテーブルである。
【0050】
各サーバ情報テーブル510,520,530は、サーバ名、経路情報、筐体名および転送者のフィールドを有する。各フィールドに情報を設定することで、サーバ情報がレコードとして記憶されている。具体的には、サーバ情報テーブル510は、サーバ情報510−1〜510−3を記憶している。サーバ情報テーブル520は、サーバ情報520−1〜520−3を記憶している。サーバ情報テーブル530は、サーバ情報530−1〜530−3を記憶している。
【0051】
ここで、サーバ名は、各サーバSV1〜SV3の識別子である。経路情報は、各サーバSV1〜SV3と各ストレージ装置ST1〜ST3との間に定義されたパスを特定するための情報である。ここでは、各パスを定義するHBA番号とCA番号が設定されている。筐体名は、各ストレージ装置ST1〜ST3の識別子である。転送者は、各サーバ情報の転送元のストレージ装置を示す情報である。なお、自装置において作成されたサーバ情報の転送者フィールドには「*owner*」が設定される。
【0052】
ここで、サーバ情報テーブル510を例に挙げると、サーバ情報510−1によれば、経路情報から特定されるパスを介して、ストレージ装置ST1と直接接続されているサーバSV1を認識することができる。さらに、サーバ情報510−1の転送者から、サーバ情報510−1が自装置で作成されたことを認識することができる。
【0053】
また、サーバ情報510−2によれば、経路情報から特定されるパスを介して、ストレージ装置ST2と直接接続されているサーバSV2を認識することができる。また、サーバ情報510−2の転送者から、サーバ情報510−2の転送元のストレージ装置ST2を認識することができる。
【0054】
また、サーバ情報510−3によれば、経路情報から特定されるパスを介して、ストレージ装置ST3と直接接続されているサーバSV3を認識することができる。また、サーバ情報510−3の転送者から、サーバ情報510−3の転送元のストレージ装置ST2を認識することができる。
【0055】
各ストレージ装置ST1〜ST3は、例えば、サーバとの接続時に、該サーバのサーバ情報を作成し、各サーバ情報テーブル510,520,530に登録する。また、各ストレージ装置ST1〜ST3は、自装置で作成したサーバ情報を、直接接続されている他のストレージ装置に送信する。さらに、各ストレージ装置ST1〜ST3は、他のストレージ装置から受信したサーバ情報を、さらに別のストレージ装置に転送する。これにより、各ストレージ装置ST1〜ST3において、各サーバSV1〜SV3のサーバ情報を共有することができる。
【0056】
<所有者情報テーブル600の記憶内容>
図6は、所有者情報テーブルの記憶内容の一例を示す説明図である。図6において、所有者情報テーブル600は、サーバ名、LUN識別情報およびデータの所有者のフィールドを有する。各フィールドに情報を設定することで、所有者情報600−1〜600−5がレコードとして記憶されている。
【0057】
ここで、サーバ名は、各サーバSV1〜SV3の識別子である。LUN識別情報は、各サーバが所有権を有するLUNの識別子である。ここでは、LUN番号とサーバ名の組み合わせによってLUN識別情報が表現されている。データの所有者は、LUN識別情報から特定されるLUNに記憶されているデータの所有権を有するサーバの識別子である。
【0058】
所有者情報600−1によれば、サーバSV1が、LUN11およびLUN11に記憶されているデータの所有権を有していることを特定することができる。所有者情報600−2によれば、サーバSV1が、LUN12およびLUN12に記憶されているデータの所有権を有していることを特定することができる。
【0059】
所有者情報600−3によれば、サーバSV2が、LUN21およびLUN21に記憶されているデータの所有権を有していることを特定することができる。所有者情報600−4によれば、サーバSV2が、LUN22およびLUN22に記憶されているデータの所有権を有していることを特定することができる。所有者情報600−5によれば、サーバSV3が、LUN31およびLUN31に記憶されているデータの所有権を有していることを特定することができる。
【0060】
各ストレージ装置ST1〜ST3は、例えば、サーバとの接続時に、該サーバの所有者情報を作成し、各ストレージ装置ST1〜ST3の所有者情報テーブル600に登録する。また、各ストレージ装置ST1〜ST3は、自装置で作成した所有者情報を、直接接続されている他のストレージ装置に送信する。さらに、各ストレージ装置ST1〜ST3は、他のストレージ装置から受信した所有者情報を、さらに別のストレージ装置に転送する。これにより、各ストレージ装置ST1〜ST3において、各サーバSV1〜SV3の所有者情報を共有することができる。
【0061】
<許可情報テーブル700の記憶内容>
図7は、許可情報テーブルの記憶内容の一例を示す説明図である。図7において、許可情報テーブル700は、サーバ名、LUN識別情報、許可種別および可否フラグのフィールドを有する。各フィールドに情報を設定することで、許可情報がレコードとして記憶されている。
【0062】
ここで、サーバ名は、各サーバSV1〜SV3の識別子である。LUN識別情報は、各サーバが所有権を有するLUNの識別子である。ここでは、LUN番号とサーバ名の組み合わせによってLUN識別情報が表現されている。許可種別は、論理ボリューム(図中、LUN)の使用権またはデータ(図中、DATA)の使用権を表している。論理ボリュームの使用権とは、任意のデータを該当する論理ボリュームに複写する権限である。データの使用権とは、任意の論理ボリュームに対して該当するデータを複写する権限である。
【0063】
可否フラグは、要求された許可依頼に対して許可されたか否かを示すフラグである。可否フラグは、初期状態では「OFF」が設定されている。許可依頼に対して許可された場合は、可否フラグに「ON」が設定される。一方、許可依頼に対して許可されなかった場合は、可否フラグは「OFF」のままである。
【0064】
許可情報700−1によれば、サーバSV1が、サーバSV2が所有権を有するLUN21の使用権を許可されていることを認識することができる。また、許可情報700−2によれば、サーバSV2が、サーバSV1が所有権を有するLUN11に記憶されているデータの使用権を許可されていることを認識することができる。
【0065】
また、許可情報700−3によれば、サーバSV3が、サーバSV1が所有権を有するLUN12に記憶されているデータの使用権を許可されていないことを認識することができる。なお、許可情報テーブル700内の各レコードは、該当するLUNの削除時に削除される。例えば、ストレージ装置ST2内のLUN21が削除された場合、許可情報700−1が削除される。
【0066】
(ストレージ装置STの機能的構成)
つぎに、本実施の形態にかかるストレージ装置ST1〜ST3の機能的構成について説明する。以下の説明では、特に指定する場合を除いて、本実施の形態にかかるストレージシステム内の任意のストレージ装置を「ストレージ装置ST」と表記し、任意のサーバを「サーバSV」と表記する。
【0067】
図8は、ストレージ装置の機能的構成を示すブロック図である。図8において、ストレージ装置STは、受付部801と、第1の判定部802と、第2の判定部803と、第3の判定部804と、第4の判定部805と、実行部806と、送信部807と、受信部808と、更新部809と、を含む構成である。各機能部(受付部801〜更新部809)は、具体的には、例えば、図2に示したROM202、RAM203、HDD204などの記憶装置に記憶されたプログラムをCPU201に実行させることにより、または、I/F205により、その機能を実現する。また、各機能部の処理結果は、特に指定する場合を除いて、RAM203、HDD204などの記憶装置に記憶される。また、各機能部の処理内容の一例を説明する場合、図3に示したストレージ装置ST2を例に挙げて説明する。
【0068】
受付部801は、複数のサーバSVのうち要求元となるサーバSVからの、複写対象データの複写先LUNに対する複写要求を受け付ける。具体的には、例えば、受付部801が、サーバSVから複写要求を直接受け付けてもよく、また、他のストレージ装置STを介して、サーバSVからの複写要求を受け付けてもよい。ここで、複写要求の具体例について説明する。
【0069】
図9は、複写要求の具体例を示す説明図である。図9において、複写要求900は、要求元サーバ名、複写元LUNおよび複写先LUNを含む情報である。ここで、要求元サーバ名は、複写要求900の要求元のサーバのサーバ名である。複写元LUNは、複写対象データを記憶する複写元LUNのLUN番号である。複写先LUNは、複写先LUNのLUN番号である。具体的には、複写要求900は、要求元のサーバSV2からの、ストレージ装置ST1のLUN11上の複写対象データを、ストレージ装置ST2のLUN21に複写する複写要求である。
【0070】
図8の説明に戻り、第1の判定部802は、複写要求を受け付けた場合、複数のサーバSVのうち複写対象データにアクセス可能なサーバSVの識別子を記憶するテーブルに、要求元のサーバSVの識別子が含まれているか否かを判定する。ここで、複写対象データにアクセス可能なサーバとは、複写対象データの所有権を有するサーバである。
【0071】
すなわち、上記第1の判定部802は、要求元のサーバSVが複写対象データの所有権を有するか否かを判定する。また、複写対象データにアクセス可能なサーバSVの識別子を記憶するテーブルとは、例えば、図6に示した所有者情報テーブル600である。
【0072】
具体的には、例えば、図9に示した複写要求900を受け付けた場合、まず、第1の判定部802が、所有者情報テーブル600の中から、複写元LUNのLUN番号「LUN11」をLUN識別情報に含む所有者情報を検索する。ここでは、所有者情報600−1が検索される。
【0073】
つぎに、第1の判定部802が、検索された所有者情報のデータ所有権に設定されているサーバの識別子が、要求元のサーバSV2の識別子「SV2」と一致するか否かを判定する。ここで、要求元のサーバSV2の識別子と一致する場合、第1の判定部802が、要求元のサーバの識別子が含まれていると判定する。すなわち、要求元のサーバSVは、複写対象データの所有権を有している。
【0074】
一方、要求元のサーバSV2の識別子と不一致の場合、第1の判定部802が、要求元のサーバの識別子が含まれていないと判定する。すなわち、要求元のサーバSVは、複写対象データの所有権を有していない。ここでは、検索された所有者情報600−1のデータ所有権に設定されているサーバの識別子「SV1」が、要求元のサーバSV2の識別子「SV2」と不一致のため、要求元のサーバの識別子が含まれていないと判定される。
【0075】
なお、所有者情報テーブル600の中から、複写元LUNのLUN番号をLUN識別情報に含む所有者情報が検索されなかった場合、第1の判定部802が、要求元のサーバの識別子が含まれていると判定してもよい。すなわち、所有者情報テーブル600に所有者情報が未登録のLUN上のデータは、所有権が設定されたサーバSVが存在しないと仮定して、任意のサーバSVが所有権を有することにする。
【0076】
第2の判定部803は、複写要求を受け付けた場合、複数のサーバSVのうち複写対象データを任意の記憶領域に対して複写する権限が設定されたサーバSVの識別子を記憶するテーブルに、要求元のサーバSVの識別子が含まれているか否かを判定する。ここで、複写対象データを任意の記憶領域に対して複写する権限が設定されたサーバとは、複写対象データの使用権を有するサーバである。
【0077】
すなわち、上記第2の判定部803は、要求元のサーバSVが複写対象データの使用権を有するか否かを判定する。また、複写対象データを任意の記憶領域に対して複写する権限が設定されたサーバSVの識別子を記憶するテーブルとは、例えば、図7に示した許可情報テーブル700である。
【0078】
具体的には、例えば、複写要求900を受け付けた場合、まず、第2の判定部803が、許可情報テーブル700の中から、複写元LUNのLUN番号「LUN11」をLUN識別情報に含み、かつ、許可種別が「DATA」の許可情報を検索する。ここでは、許可情報700−2が検索される。
【0079】
つぎに、第2の判定部803が、検索された許可情報の可否フラグに「ON」が設定されているか否かを判定する。ここで、可否フラグに「ON」が設定されている場合、第2の判定部803が、要求元のサーバSVの識別子が含まれていると判定する。すなわち、要求元のサーバSVは、複写対象データの使用権を有している。
【0080】
一方、可否フラグに「ON」が設定されていない場合、第2の判定部803が、要求元のサーバSVの識別子が含まれていないと判定する。すなわち、要求元のサーバSVは、複写対象データの使用権を有していない。ここでは、許可情報700−2の可否フラグに「ON」が設定されているため、要求元のサーバの識別子が含まれていると判定される。
【0081】
なお、許可情報テーブル700の中から、複写元LUNのLUN番号をLUN識別情報に含み、かつ、許可種別が「DATA」の許可情報が検索されなかった場合は、第1の判定部802は、要求元のサーバの識別子が含まれていないと判定する。すなわち、複写対象データの使用権を有するサーバSVが存在しない。
【0082】
第3の判定部804は、複写要求を受け付けた場合、複数のサーバSVのうち複写先LUNにアクセス可能なサーバSVの識別子を記憶するテーブルに、要求元のサーバSVの識別子が含まれているか否かを判定する。ここで、複写先LUNにアクセス可能なサーバSVとは、複写先LUNの所有権を有するサーバである。すなわち、上記第3の判定部804は、要求元のサーバSVが複写先LUNの所有権を有するか否かを判定する。
【0083】
具体的には、例えば、複写要求900を受け付けた場合、まず、第3の判定部804が、所有者情報テーブル600の中から、複写先LUNのLUN番号「LUN21」をLUN識別情報に含む所有者情報を検索する。ここでは、所有者情報600−3が検索される。
【0084】
つぎに、第3の判定部804が、検索された所有者情報のサーバ名に設定されているサーバの識別子が、要求元のサーバSV2の識別子「SV2」と一致するか否かを判定する。ここで、要求元のサーバSV2の識別子と一致する場合、第3の判定部804が、要求元のサーバの識別子が含まれていると判定する。すなわち、要求元のサーバSVは、複写先LUNの所有権を有している。
【0085】
一方、要求元のサーバSV2の識別子と不一致の場合、第3の判定部804が、要求元のサーバSVの識別子が含まれていないと判定する。すなわち、要求元のサーバSVは、複写先LUNの所有権を有していない。ここでは、検索された所有者情報600−3のサーバ名に設定されているサーバ名「SV2」が、要求元のサーバSV2の識別子「SV2」と一致するため、要求元のサーバSVの識別子が含まれていると判定される。
【0086】
なお、所有者情報テーブル600の中から、複写先LUNのLUN番号をLUN識別情報に含む所有者情報が検索されなかった場合は、第3の判定部804が、要求元のサーバの識別子が含まれていると判定することにしてもよい。すなわち、所有者情報テーブル600に所有者情報が未登録のLUNは、所有権が設定されたサーバSVが存在しないと仮定して、任意のサーバSVが所有権を有することにする。
【0087】
第4の判定部805は、複写要求を受け付けた場合、複数のサーバSVのうち複写先LUNに対して任意のデータを複写する権限が設定されたサーバSVの識別子を記憶するテーブルに、要求元のサーバSVの識別子が含まれているか否かを判定する。ここで、複写先LUNに対して任意のデータを複写する権限が設定されたサーバSVとは、複写先LUNの使用権を有するサーバである。すなわち、上記第4の判定部805は、要求元のサーバSVが複写先LUNの使用権を有するか否かを判定する。
【0088】
具体的には、例えば、複写要求900を受け付けた場合、まず、第4の判定部805が、許可情報テーブル700の中から、複写先LUNのLUN番号「LUN11」をLUN識別情報に含み、かつ、許可種別が「LUN」の許可情報を検索する。つぎに、第4の判定部805が、検索された許可情報の可否フラグに「ON」が設定されているか否かを判定する。
【0089】
ここで、可否フラグに「ON」が設定されている場合、第4の判定部805が、要求元のサーバの識別子が含まれていると判定する。すなわち、要求元のサーバSVは、複写先LUNの使用権を有している。一方、可否フラグに「OFF」が設定されている場合、第4の判定部805が、要求元のサーバの識別子が含まれていないと判定する。すなわち、要求元のサーバSVは、複写先LUNの使用権を有していない。
【0090】
ここでは、許可情報テーブル700の中から、複写先LUNのLUN番号「LUN11」をLUN識別情報に含み、かつ、許可種別が「LUN」の許可情報が検索されない。許可情報テーブル700の中から許可情報が検索されなかった場合は、第4の判定部805は、要求元のサーバの識別子が含まれていないと判定する。すなわち、複写先LUNの使用権を有するサーバSVが存在しない。
【0091】
実行部806は、複写対象データを複写先LUNに複写する複写処理を実行する。複写処理は、ストレージ装置STが複写対象データの送信側のストレージ装置STか、受信側のストレージ装置STかによって処理内容が異なる。送信側のストレージ装置STの場合は、実行部806が、例えば、自装置の複写元LUN上の複写対象データを、複写先LUNを有する他のストレージ装置STに送信する。
【0092】
一方、受信側のストレージ装置STの場合は、まず、受信側のストレージ装置STの実行部806が、例えば、複写元LUNを有する送信側のストレージ装置STに対して、複写処理の起動指示を送信する。この結果、送信側のストレージ装置STの実行部806が、複写元LUN上の複写対象データを受信側のストレージ装置STに送信する。
【0093】
ここで、実行部806は、第1の判定部802または第2の判定部803によって要求元のサーバSVの識別子が含まれていると判定された場合に複写処理を実行することにしてもよい。これにより、要求元のサーバSVが複写対象データの所有権または使用権を有する場合に、複写要求に対する複写処理が実行される。
【0094】
また、実行部806は、第3の判定部804または第4の判定部805によって要求元のサーバSVの識別子が含まれていると判定された場合に複写処理を実行することにしてもよい。これにより、要求元のサーバSVが複写先LUNの所有権または使用権を有する場合に、複写要求に対する複写処理が実行される。
【0095】
また、実行部806は、第1の判定部802または第2の判定部803によって要求元のサーバSVの識別子が含まれていると判定され、かつ、第3の判定部804または第4の判定部805によって要求元のサーバSVの識別子が含まれていると判定された場合、複写処理を実行することにしてもよい。これにより、要求元のサーバSVが、複写対象データの所有権または使用権を有し、かつ、複写先LUNの所有権または使用権を有する場合に、複写要求に対する複写処理が実行される。
【0096】
また、実行部806は、第1の判定部802によって要求元のサーバSVの識別子が含まれていると判定され、かつ、第3の判定部804によって要求元のサーバSVの識別子が含まれていると判定された場合、複写処理を実行することにしてもよい。これにより、要求元のサーバSVが、複写対象データの所有権を有し、かつ、複写先LUNの所有権を有する場合に、複写要求に対する複写処理が実行される。
【0097】
また、実行部806は、第2の判定部803によって要求元のサーバSVの識別子が含まれていると判定され、かつ、第4の判定部805によって要求元のサーバSVの識別子が含まれていると判定された場合、複写処理を実行することにしてもよい。これにより、要求元のサーバSVが、複写対象データの使用権を有し、かつ、複写先LUNの使用権を有する場合に、複写要求に対する複写処理が実行される。
【0098】
また、実行部806は、第1の判定部802によって要求元のサーバSVの識別子が含まれていると判定され、かつ、第4の判定部805によって要求元のサーバSVの識別子が含まれていると判定された場合、複写処理を実行することにしてもよい。これにより、要求元のサーバSVが、複写対象データの所有権を有し、かつ、複写先LUNの使用権を有する場合に、複写要求に対する複写処理が実行される。
【0099】
また、実行部806は、第2の判定部803によって要求元のサーバSVの識別子が含まれていると判定され、かつ、第3の判定部804によって要求元のサーバSVの識別子が含まれていると判定された場合、複写処理を実行することにしてもよい。これにより、要求元のサーバSVが、複写対象データの使用権を有し、かつ、複写先LUNの所有権を有する場合に、複写要求に対する複写処理が実行される。
【0100】
また、複写対象データを複写先LUNに複写する場合、複写対象データの所有権を元のサーバSVがそのまま有することにしてもよい。この場合、上記実行部806によって実行される複写処理では、複写対象データとともにLUN管理情報も複写元LUNから複写先LUNに複写される。LUN管理情報とは、複写対象データの所有権が設定されたサーバSVを管理するための情報である。ここで、LUNのデータ構造について説明する。
【0101】
図10は、LUNのデータ構造の具体例を示す説明図である。図10に示すように、LUNのデータ構造は、LUN管理情報1010とデータ部1020を含む。ストレージ装置STは、LUN管理情報1010およびデータ部1020の両方にアクセス可能である。これに対して、サーバSVは、データ部1020に対してのみアクセス可能である。
【0102】
LUN管理情報1010は、データの所有者、複写元のLUN識別情報および複写先のLUN識別情報を有する。データの所有者は、データ部1020のデータの所有権が設定されたサーバSVを特定するための情報である。ここでは、サーバ名と経路情報の組み合わせによってデータの所有者が表現されている。データの所有者は、サーバSVがデータ部1020に最初にデータを書き込んだときに、ストレージ装置STによって設定される。
【0103】
複写元のLUN識別情報は、データ部1020のデータの複写元のLUNのLUN識別情報である。複写先のLUN識別情報は、データ部1020のデータの複写先のLUNのLUN識別情報である。複写元のLUN識別情報および複写先のLUN識別情報は、複写処理の起動時に、送信側のストレージ装置STによって更新される。
【0104】
また、LUN管理情報1010は、複写処理の実行時に複写対象データとともに複写元LUNから複写先LUNに複写される。このため、送信側のストレージ装置STによって更新されたLUN管理情報1010の内容は、受信側のストレージ装置STにも伝播される。
【0105】
図11は、LUN管理情報の伝播例を示す説明図である。図11において、LUN管理情報1110は、ストレージ装置ST1内のLUN11のLUN管理情報である。また、LUN管理情報1120は、ストレージ装置ST2内のLUN21のLUN管理情報である。
【0106】
ここでは、サーバSV1が所有権を有するLUN11上のデータを、LUN21に複写した場合のLUN管理情報の内容の伝播例が示されている。具体的には、LUN11上のデータがLUN21に複写された結果、LUN11のLUN管理情報1110の内容が、LUN21のLUN管理情報1120に反映されている。
【0107】
また、ストレージ装置ST2は、LUN21のLUN管理情報1120が更新されると、所有者情報テーブル600内の所有者情報600−3を更新する。具体的には、ストレージ装置ST2が、所有者情報600−3のデータ所有者を「SV2」から「SV1」に変更する。
【0108】
さらに、ストレージ装置ST2は、更新された更新後の所有者情報600−3を、サーバ情報テーブル520を参照して、ストレージシステム300内の他のストレージ装置ST1,ST3にブロードキャストする。そして、ストレージ装置ST1,ST3は、更新後の所有者情報600−3を所有者情報テーブル600に登録(上書き)する。これにより、LUN21上のデータのデータ所有者の変更を、ストレージ装置ST1,ST3の所有者情報テーブル600に反映することができる。
【0109】
なお、サーバSV1が所有権を有するLUN21上のデータを、例えば、ストレージ装置ST3内のLUN31に複写する場合、LUN21のLUN管理情報1120の内容が更新される。具体的には、LUN管理情報1120の複写元のLUN識別情報が「LUN21@SV2」に更新され、複写先のLUN識別情報が「LUN31@SV3」に更新される。そして、LUN21上のデータがLUN31に複写されると、LUN21のLUN管理情報1120の内容が、LUN31のLUN管理情報に反映される。
【0110】
また、受付部801は、要求元のサーバSVから、複写対象データを任意のLUNに複写する権限のデータ許可要求を受け付ける。データ許可要求とは、複写対象データの使用権を要求するものである。例えば、サーバSV2が、ストレージ装置ST1のLUN11からデータを複写する場合には、LUN11のデータの使用権が必要となる。ここで、サーバSV2がLUN11のデータの使用権を要求するためのデータ許可要求1200について説明する。
【0111】
図12は、データ許可要求の具体例を示す説明図である。図12において、データ許可要求1200は、要求元サーバ名、LUN識別情報および要求種別を有する。ここで、要求元サーバ名は、データ許可要求1200の要求元のサーバの識別子である。LUN識別情報は、使用権の要求対象となる複写対象データを記憶している複写元のLUNのLUN識別情報である。要求種別は、使用権の要求対象を示す種別である。ここでの要求対象は、複写対象データの使用権のため、要求種別に「DATA」が設定されている。
【0112】
具体的には、データ許可要求1200は、要求元のサーバSV2が、サーバSV1のLUN11上の複写対象データを複写する権限(使用権)を要求するものである。なお、データ許可要求1200は、例えば、サーバSV2においてデータ許可要求コマンドを実行することで、サーバSV2からストレージ装置ST2に送信される。
【0113】
図8の説明に戻り、送信部807は、受け付けたデータ許可要求を、複写対象データにアクセス可能な他のサーバSVに直接接続された他のストレージ装置STに送信する。具体的には、例えば、送信部807が、サーバ情報テーブル520を参照して、ストレージシステム300内の自装置とは異なる他のストレージ装置ST1,3にデータ許可要求1200をブロードキャストする。
【0114】
受信部808は、送信されたデータ許可要求に対する他のサーバSVからのデータ許可応答を、他のストレージ装置STから受信する。ここで、データ許可応答とは、データ許可要求に対する応答結果であり、複写対象データの使用権を許可するか否かを示すものである。
【0115】
図13は、データ許可応答の具体例を示す説明図である。図13において、データ許可応答1300は、図12に示したデータ許可要求1200に対するサーバSV1からの応答結果を示している。データ許可応答1300は、要求元サーバ名、LUN識別情報、要求種別および可否フラグを有する。
【0116】
ここで、要求元サーバ名は、データ許可要求1200の要求元のサーバの識別子である。LUN識別情報は、使用権の要求対象となる複写対象データを記憶している複写元のLUNのLUN識別情報である。要求種別は、要求対象を示す種別である。ここでの要求対象は、複写対象データの使用権のため、要求種別に「DATA」が設定されている。
【0117】
可否フラグは、データ許可要求に対する応答結果を示すフラグである。ここでは、複写対象データの使用権が許可された場合は可否フラグに「ON」が設定され、複写対象データの使用権が許可されなかった場合は可否フラグに「OFF」が設定される。図13の例では、複写対象データの使用権が許可されたため、可否フラグに「ON」が設定されている。
【0118】
図8の説明に戻り、更新部809は、受信されたデータ許可応答に基づいて、任意の記憶領域に対して複写対象データを複写する権限が設定されたサーバSVの識別子を記憶するテーブルを更新する。具体的には、例えば、更新部809が、受信されたデータ許可応答1300を新たな許可情報(図7に示した許可情報700−2に相当)として、許可情報テーブル700に登録する。これにより、データ許可要求に対する応答結果を、許可情報テーブル700に反映することができる。
【0119】
また、受信部808は、他のサーバSVからの、自装置に直接接続されたサーバSVがアクセス可能なデータを複写する権限のデータ許可要求を、他のサーバSVに直接接続された他のストレージ装置STから受信する。具体的には、例えば、受信部808が、自装置に直接接続されたサーバSV1が所有権を有するデータの使用権を要求するデータ許可要求を、サーバSV2に直接接続されたストレージ装置ST2から受信する。
【0120】
この場合、送信部807が、受信されたデータ許可要求をサーバSV1に通知する。そして、サーバSV1において、データ許可要求によって要求されているデータの使用権を許可するか否かの判断が行われる。データの使用権の許否は、例えば、サーバSV1の利用者によって判断される。また、サーバSV1の利用者が利用可否情報を予め作成してサーバSV1に記録しておくことにより、サーバSV1がデータの使用権の許否を自動的に判断することにしてもよい。
【0121】
ここで、利用可否情報は、例えば、データの使用権を有するサーバSVを表す情報である。サーバSV1は、例えば、データ許可要求によって要求されているデータの使用権を有するサーバSVを表す利用可否情報に、サーバSV2が登録されているか否かを判断する。サーバSV1は、利用可否情報にサーバSV2が登録されている場合、データの使用権を許可する。一方、利用可否情報にサーバSV2が未登録の場合、サーバSV1は、データの使用権を許可しない。
【0122】
そして、サーバSV1は、データ許可要求の応答結果を示すデータ許可応答をストレージ装置ST1に送信する。このあと、受信部808が、サーバSV1から送信されたデータ許可応答を受信する。そして、送信部807が、受信されたサーバSV1からのデータ許可応答をストレージ装置ST2に送信する。
【0123】
なお、上記受信部808によって受信されたデータ許可要求のLUN識別情報に自装置に直接接続されたサーバSVのサーバ名が含まれていない場合は、データ許可要求を破棄することにしてもよい。すなわち、受信されたデータ許可要求が、自装置に直接接続されたサーバSVに対するものでない場合はデータ許可要求を破棄する。
【0124】
また、受付部801は、要求元のサーバSVから、複写先のLUNに任意のデータを複写する権限のLUN許可要求を受け付ける。LUN許可要求とは、複写先のLUNの使用権を要求するものである。例えば、サーバSV2が、ストレージ装置ST1のLUN11へデータを複写する場合には、LUN11の使用権が必要となる。ここで、サーバSV2がLUN11の使用権を要求するためのLUN許可要求1400について説明する。
【0125】
図14は、LUN許可要求の具体例を示す説明図である。図14において、LUN許可要求1400は、要求元サーバ名、LUN識別情報および要求種別を有する。ここで、要求元サーバ名は、LUN許可要求1400の要求元のサーバの識別子である。LUN識別情報は、使用権の要求対象となる複写先のLUNのLUN識別情報である。要求種別は、使用権の要求対象を示す種別である。ここでの要求対象は、複写先のLUNの使用権のため、要求種別に「LUN」が設定されている。
【0126】
具体的には、LUN許可要求1400は、要求元のサーバSV2が、サーバSV1のLUN11に任意のデータを複写する権限(使用権)を要求するものである。なお、LUN許可要求1400は、例えば、サーバSV2においてLUN許可要求コマンドを実行することで、サーバSV2からストレージ装置ST2に送信される。
【0127】
図8の説明に戻り、送信部807は、受け付けたLUN許可要求を、複写先のLUNにアクセス可能な他のサーバSVに直接接続された他のストレージ装置STに送信する。具体的には、例えば、送信部807が、サーバ情報テーブル520を参照して、ストレージシステム300内の自装置とは異なる他のストレージ装置ST1,3にLUN許可要求1400をブロードキャストする。
【0128】
受信部808は、送信されたLUN許可要求に対する他のサーバSVからのLUN許可応答を、他のストレージ装置STから受信する。ここで、LUN許可応答とは、LUN許可要求に対する応答結果であり、複写先のLUNの使用権を許可するか否かを示すものである。
【0129】
図15は、LUN許可応答の具体例を示す説明図である。図15において、LUN許可応答1500は、図14に示したLUN許可要求1400に対するサーバSV1からの応答結果を示している。LUN許可応答1500は、要求元サーバ名、LUN識別情報、要求種別および可否フラグを有する。
【0130】
ここで、要求元サーバ名は、LUN許可要求1400の要求元のサーバの識別子である。LUN識別情報は、使用権の要求対象となる複写先のLUNのLUN識別情報である。要求種別は、要求対象を示す種別である。ここでの要求対象は、複写先のLUNの使用権のため、要求種別に「LUN」が設定されている。
【0131】
可否フラグは、LUN許可要求に対する応答結果を示すフラグである。ここでは、複写先のLUNの使用権が許可された場合は可否フラグに「ON」が設定され、複写先のLUNの使用権が許可されなかった場合は可否フラグに「OFF」が設定される。図15の例では、複写先のLUNの使用権が許可されなかったため、可否フラグに「OFF」が設定されている。
【0132】
図8の説明に戻り、更新部809は、受信されたLUN許可応答に基づいて、複写先のLUNに任意のデータを複写する権限が設定されたサーバSVの識別子を記憶するテーブルを更新する。具体的には、例えば、更新部809が、受信されたLUN許可応答1500を新たな許可情報として、許可情報テーブル700に登録する。これにより、LUN許可要求に対する応答結果を、許可情報テーブル700に反映することができる。
【0133】
また、受信部808は、他のサーバSVからの、自装置に直接接続されたサーバSVがアクセス可能なLUNに任意のデータを複写する権限のLUN許可要求を、他のサーバSVに直接接続された他のストレージ装置STから受信する。具体的には、例えば、受信部808が、自装置に直接接続されたサーバSV1が所有権を有するLUNの使用権を要求するLUN許可要求を、サーバSV2に直接接続されたストレージ装置ST2から受信する。
【0134】
この場合、送信部807が、受信されたLUN許可要求をサーバSV1に通知する。そして、サーバSV1において、LUN許可要求によって要求されているLUNの使用権を許可するか否かの判断が行われる。LUNの使用権の許否は、例えば、サーバSV1の利用者によって判断される。
【0135】
そして、サーバSV1は、LUN許可要求の応答結果を示すLUN許可応答をストレージ装置ST1に送信する。このあと、受信部808が、サーバSV1から送信されたLUN許可応答を受信する。そして、送信部807が、受信されたサーバSV1からのLUN許可応答をストレージ装置ST2に送信する。
【0136】
なお、上記受信部808によって受信されたLUN許可要求のLUN識別情報に自装置に直接接続されたサーバSVのサーバ名が含まれていない場合は、LUN許可要求を破棄することにしてもよい。すなわち、受信されたLUN許可要求が、自装置に直接接続されたサーバSVに対するものでない場合はLUN許可要求を破棄する。
【0137】
また、セキュリティ強化を目的として、ストレージ装置間で送受信されるデータ許可要求、データ許可応答、LUN許可要求およびLUN許可応答などを暗号化することにしてもよい。ここで、サーバSV1に所有権が設定されたLUN11上のデータの使用権をサーバSV2が要求するためのデータ許可要求1200を暗号化する場合を例に挙げて説明する。
【0138】
具体的には、例えば、ストレージ装置ST2は、ストレージ装置ST1,ST2が有する共通鍵を用いてデータ許可要求1200を暗号化してストレージ装置ST1に送信する。この場合、ストレージ装置ST1は、暗号化されたデータ許可要求1200をストレージ装置ST1,ST2が有する共通鍵を用いて復号する。
【0139】
ストレージ装置ST1,ST2が有する共通鍵は、例えば、ストレージ装置ST1,ST2間を接続するRA11とRA21のWWN(World Wide Name)を用いて生成される。また、共通鍵は、各ストレージ装置ST1,ST2のCA(例えば、CA11,CA12,CA21,CA22)のWWNを用いて生成してもよい。
【0140】
また、サーバSV2になりすました不正なデータ許可要求を排除するため、以下に説明する認証手法を採用することにしてもよい。まず、ストレージ装置ST2は、ストレージ装置ST1,ST2が有する共通鍵を用いてデータ許可要求1200を暗号化して、ストレージ装置ST1およびサーバSV2に送信する。
【0141】
サーバSV2は、ネットワーク214を介して、暗号化されたデータ許可要求1200をサーバSV1に送信する。つぎに、サーバSV1は、暗号化されたデータ許可要求1200をストレージ装置ST1に送信する。
【0142】
ストレージ装置ST1は、ストレージ装置ST1,ST2が有する共通鍵を用いて、サーバSV1からの暗号化されたデータ許可要求1200と、ストレージ装置ST2からの暗号化されたデータ許可要求1200とを復号する。そして、ストレージ装置ST1は、復号後のサーバSV1からのデータ許可要求1200と、ストレージ装置ST2からのデータ許可要求1200との一致判定を行う。
【0143】
ここで、復号後のデータ許可要求1200が一致する場合、ストレージ装置ST1は、復号後のデータ許可要求1200をサーバSV1に通知する。一方、復号後のデータ許可要求1200が不一致の場合、ストレージ装置ST1は、復号後のデータ許可要求1200を破棄する。これにより、サーバSV2になりすました不正なデータ許可要求1200を排除することができる。
【0144】
なお、上述した説明では、ネットワーク214を介して、暗号化されたデータ許可要求1200をサーバSV2からサーバSV1に送信することにしたが、これに限らない。例えば、サーバSV2の利用者が、可搬型の補助記憶装置に暗号化されたデータ許可要求1200を記憶し、該補助記憶装置をサーバSV1の利用者に手渡しすることにしてもよい。この結果、サーバSV1の利用者によって、補助記憶装置を用いて暗号化されたデータ許可要求1200がサーバSV1に直接入力される。
【0145】
また、上述した説明では、データ許可要求やLUN許可要求によって要求されているデータやLUNの使用権の許否を判断するために、データ許可要求やLUN許可要求をサーバSVに通知することにしたが、これに限らない。具体的には、例えば、データ許可要求またはLUN許可要求を受信したストレージ装置STが、データやLUNの使用権の許否を判断することにしてもよい。
【0146】
より具体的には、例えば、ストレージ装置STが、特定のサーバSVからのデータ許可要求に対しては、データの使用権を許可することにしてもよい。また、ストレージ装置STが、特定の時間帯の特定のサーバSVからのデータ許可要求に対しては、データの使用権を許可することにしてもよい。
【0147】
(ストレージ装置STのデータ複写処理手順)
図16は、本実施の形態にかかるストレージ装置のデータ複写処理手順の一例を示すフローチャートである。図16のフローチャートにおいて、まず、受付部801により、要求元となるサーバSVからの、複写対象データの複写先のLUNに対する複写要求を受け付けたか否かを判断する(ステップS1601)。
【0148】
ここで、複写要求を受け付けるのを待って(ステップS1601:No)、受け付けた場合(ステップS1601:Yes)、第1の判定部802により、要求元のサーバSVが複写対象データにアクセス可能か否かを判定する(ステップS1602)。具体的には、第1の判定部802が、複数のサーバSVのうち複写対象データにアクセス可能なサーバSVの識別子を記憶するテーブルに、要求元のサーバSVの識別子が含まれているか否かを判定する。
【0149】
ここで、複写対象データにアクセス可能な場合(ステップS1603:Yes)、ステップS1607に移行する。一方、複写対象データにアクセス不能の場合(ステップS1603:No)、第2の判定部803により、要求元のサーバSVに、複写対象データを任意のLUNに対して複写する権限が設定されているか否かを判定する(ステップS1604)。具体的には、第2の判定部803が、複数のサーバSVのうち複写対象データを任意のLUNに対して複写する権限が設定されたサーバSVの識別子を記憶するテーブルに、要求元のサーバSVの識別子が含まれているか否かを判定する。
【0150】
ここで、複写対象データを複写する権限が設定されていない場合(ステップS1605:No)、送信部807により、要求元のサーバSVに複写失敗を通知して(ステップS1606)、本フローチャートによる一連の処理を終了する。
【0151】
一方、複写対象データを複写する権限が設定されている場合(ステップS1605:Yes)、第3の判定部804により、要求元のサーバSVが複写先のLUNにアクセス可能か否かを判定する(ステップS1607)。具体的には、第3の判定部804が、複数のサーバSVのうち複写先のLUNにアクセス可能なサーバSVの識別子を記憶するテーブルに、要求元のサーバSVの識別子が含まれているか否かを判定する。
【0152】
ここで、複写先のLUNにアクセス可能な場合(ステップS1608:Yes)、ステップS1611に移行する。一方、複写先のLUNにアクセス不能の場合(ステップS1608:No)、第4の判定部805により、要求元のサーバSVに、複写先のLUNに対して任意のデータを複写する権限が設定されているか否かを判定する(ステップS1609)。具体的には、第4の判定部805が、複数のサーバSVのうち複写先のLUNに対して任意のデータを複写する権限が設定されたサーバSVの識別子を記憶するテーブルに、要求元のサーバSVの識別子が含まれているか否かを判定する。
【0153】
ここで、複写先のLUNに複写する権限が設定されていない場合(ステップS1610:No)、送信部807により、要求元のサーバSVに複写失敗を通知して(ステップS1606)、本フローチャートによる一連の処理を終了する。
【0154】
一方、複写先のLUNに複写する権限が設定されている場合(ステップS1610:Yes)、実行部806により、複写対象データを複写先のLUNに複写する複写処理を実行して(ステップS1611)、本フローチャートによる一連の処理を終了する。
【0155】
これにより、要求元のサーバSVが、複写対象データの所有権または使用権を有し、かつ、複写先のLUNの所有権または使用権を有する場合にのみ、複写対象データの複写先のLUNに対する複写処理を実行することができる。
【0156】
(本データ複写手法の適用例)
図17は、本データ複写手法の適用例を示す説明図(その1)である。図17の(A)において、(1)サーバSV1に所有権が設定されているストレージ装置ST1内のLUN11上のデータが、ストレージ装置ST2内のLUN21に複写されている。
【0157】
図17の(B)において、新たなサーバSV2がストレージ装置ST2に接続されている。この場合、ストレージ装置ST2内のLUN21上のデータの所有者はサーバSV1のため、サーバSV2はストレージ装置ST2内のLUN21上のデータにアクセスすることができない。
【0158】
サーバSV2が、ストレージ装置ST2内のLUN21上のデータにアクセスするためには、サーバSV1からLUN21上のデータの使用権を許可してもらう必要がある。そこで、(2)サーバSV2は、LUN21上のデータのデータ許可要求をストレージ装置ST2に送信する。
【0159】
(3)ストレージ装置ST2は、サーバSV2からのLUN21上のデータのデータ許可要求をストレージ装置ST1に送信する。(4)ストレージ装置ST1は、サーバSV2からのLUN21上のデータのデータ許可要求をサーバSV1に通知する。
【0160】
ここでは、サーバSV1において、データ許可要求によって要求されているLUN21上のデータの使用権が許可される。(5)サーバSV1は、LUN21上のデータの使用権を許可することを示すデータ許可応答をストレージ装置ST1に通知する。(6)ストレージ装置ST1は、サーバSV1からのデータ許可応答をストレージ装置ST2に送信する。
【0161】
このあと、サーバSV1からのデータ許可応答が各ストレージ装置ST1,ST2の許可情報テーブル700に反映され、サーバSV2がLUN21上のデータの使用権を有することになる。この結果、サーバSV2は、ストレージ装置ST2内のLUN21上のデータにアクセスすることができる。
【0162】
図18は、本データ複写手法の適用例を示す説明図(その2)である。図18において、サーバSV1は業務サーバであり、サーバSV2はバックアップサーバである。ここでは、サーバSV2が、ストレージ装置ST1内のLUN11上のデータを、ストレージ装置ST2内のLUN21およびLUN22に複写(バックアップ)する場合を想定する。
【0163】
ただし、LUN11上のデータの所有権は、サーバSV1に設定されている。LUN21およびLUN22の所有権は、サーバSV2に設定されている。この場合、サーバSV2が、LUN11上のデータをLUN21,LUN22に複写するためには、サーバSV1からLUN11上のデータの使用権を許可してもらう必要がある。
【0164】
そこで、(1)サーバSV2は、LUN11上のデータのデータ許可要求をストレージ装置ST2に送信する。(2)ストレージ装置ST2は、サーバSV2からのLUN11上のデータのデータ許可要求をストレージ装置ST1に送信する。(3)ストレージ装置ST1は、サーバSV2からのLUN11上のデータのデータ許可要求をサーバSV1に通知する。
【0165】
ここでは、サーバSV1において、データ許可要求によって要求されているLUN11上のデータの使用権が許可される。(4)サーバSV1は、LUN11上のデータの使用権を許可することを示すデータ許可応答をストレージ装置ST1に通知する。(5)ストレージ装置ST1は、サーバSV1からのデータ許可応答をストレージ装置ST2に送信する。
【0166】
このあと、サーバSV1からのデータ許可応答が各ストレージ装置ST1,ST2の許可情報テーブル700に反映され、サーバSV2がLUN11上のデータの使用権を有することになる。この結果、サーバSV2は、LUN11上のデータをLUN21に複写(バックアップ)することができる。さらに、サーバSV2は、LUN21上のデータをLUN22に複写(多段コピー)することができる。
【0167】
このように、LUN11上のデータの複写要求前において、LUN11上のデータの使用権をサーバSV2に設定しておくことで、受信側のサーバSV2の任意のタイミングで、LUN11上のデータのバックアップ処理を行うことができる。また、LUN11上のデータをLUN21,LUN22に複写したことで、サーバSV1は、LUN21上のデータまたはLUN22上のデータをLUN11に複写(リストア)することができる。
【0168】
図19は、本データ複写手法の適用例を示す説明図(その3)である。図19において、サーバSV1は開発サーバであり、サーバSV2は集約サーバであり、サーバSV3は公開サーバである。ここでは、サーバSV2が、ストレージ装置ST1内のLUN11上のデータを、ストレージ装置ST2内のLUN21に複写する。これにより、サーバSV1によって作成されたLUN11上のデータ(または、プログラム)をLUN21に集約する。
【0169】
また、サーバSV3が、LUN21上のデータをLUN31に複写する。これにより、サーバSV1によって作成されたLUN11上のデータ(または、プログラム)を、サーバSV3から公開する。ただし、LUN11上のデータの所有権は、サーバSV1に設定されている。LUN21の所有権は、サーバSV2に設定されている。LUN31の所有権は、サーバSV3に設定されている。
【0170】
この場合、サーバSV2が、LUN11上のデータをLUN21に複写するためには、サーバSV1からLUN11上のデータの使用権を許可してもらう必要がある。
【0171】
そこで、(1)サーバSV2は、LUN11上のデータのデータ許可要求をストレージ装置ST2に送信する。(2)ストレージ装置ST2は、サーバSV2からのLUN11上のデータのデータ許可要求をストレージ装置ST1に送信する。(3)ストレージ装置ST1は、サーバSV2からのLUN11上のデータのデータ許可要求をサーバSV1に通知する。
【0172】
ここでは、サーバSV1において、データ許可要求によって要求されているLUN11上のデータの使用権が許可される。(4)サーバSV1は、LUN11上のデータの使用権を許可することを示すデータ許可応答をストレージ装置ST1に通知する。(5)ストレージ装置ST1は、サーバSV1からのデータ許可応答をストレージ装置ST2に送信する。
【0173】
このあと、サーバSV1からのデータ許可応答が各ストレージ装置ST1,ST2,ST3の許可情報テーブル700に反映され、サーバSV2がLUN11上のデータの使用権を有することになる。この結果、サーバSV2は、LUN11上のデータをLUN21に複写(集約)することができる。
【0174】
このように、LUN11上のデータの複写要求前において、LUN11上のデータの使用権をサーバSV2に設定しておくことで、受信側のサーバSV2の任意のタイミングで、LUN11上のデータを集約することができる。
【0175】
つぎに、サーバSV3が、LUN11上のデータをLUN31に複写するためには、サーバSV1からLUN11上のデータの使用権を許可してもらう必要がある。
【0176】
そこで、(6)サーバSV3は、LUN21上のデータのデータ許可要求をストレージ装置ST2に送信する。(7)ストレージ装置ST2は、サーバSV3からのLUN21上のデータのデータ許可要求をストレージ装置ST1に送信する。(8)ストレージ装置ST1は、サーバSV3からのLUN21上のデータのデータ許可要求をサーバSV1に通知する。
【0177】
ここでは、サーバSV1において、データ許可要求によって要求されているLUN21上のデータの使用権が許可される。(9)サーバSV1は、LUN21上のデータの使用権を許可することを示すデータ許可応答をストレージ装置ST1に通知する。(10)ストレージ装置ST1は、サーバSV1からのデータ許可応答をストレージ装置ST2に送信する。
【0178】
このあと、サーバSV1からのデータ許可応答が各ストレージ装置ST1,ST2,ST3の許可情報テーブル700に反映され、サーバSV3がLUN21上のデータの使用権を有することになる。この結果、サーバSV3は、LUN21上のデータをLUN31に複写することができる。
【0179】
このように、LUN21上のデータの複写要求前において、LUN21上のデータの使用権をサーバSV3に設定しておくことで、受信側のサーバSV3の任意のタイミングで、LUN21上のデータを複写することができる。これにより、サーバSV3が、何らかの障害によりLUN31上のデータが破壊されたことを検出した場合などに、LUN21上のデータをLUN31に複写することができる。
【0180】
上述した説明では、サーバSV3がLUN21上のデータをLUN31に複写する場合を例に挙げて説明したが、サーバSV2がLUN21上のデータをLUN31に複写することにしてもよい。ただし、この場合はサーバSV2が、LUN22上のデータをLUN31に複写する場合は、サーバSV3からLUN31の使用権を許可してもらう必要がある。
【0181】
以上説明したように、本実施の形態にかかるストレージ装置STによれば、要求元のサーバSVが、複写対象データの所有権または使用権を有し、かつ、複写先のLUNの所有権または使用権を有する場合に、複写対象データの複写先のLUNに対する複写処理を行うことができる。
【0182】
これにより、要求元のサーバSVがアクセス可能な複写先のLUNへの複写要求であっても、要求元のサーバSVが所有権または使用権を有していない複写対象データの複写を防ぐことができる。また、要求元のサーバSVがアクセス可能な複写対象データの複写要求であっても、要求元のサーバSVが所有権または使用権を有していない複写先のLUNへの複写を防ぐことができる。
【0183】
また、ストレージ装置STによれば、複写対象データの所有権を有していない場合であっても、複写要求前に、複写対象データの使用権の許可要求を行うことで、所有権または使用権を有する複写先のLUNへの複写対象データの複写を行うことができる。
【0184】
また、ストレージ装置STによれば、複写先のLUNの所有権を有していない場合であっても、複写要求前に、複写先のLUNの使用権の許可要求を行うことで、所有権または使用権を有する複写対象データの複写先のLUNへの複写対象データの複写を行うことができる。
【0185】
また、ストレージ装置STによれば、複写元のLUNから複写先のLUNへの複写対象データの複写時に、複写対象データの所有権を有するサーバが変化しないように管理することができる。これにより、複写対象データが複写された場合であっても、複写対象データの所有権を有するサーバSVを一意に特定することができる。
【0186】
また、ストレージ装置STによれば、複写対象データおよび複写先のLUNのそれぞれの所有権または使用権を有するサーバSVを、自装置で管理するため、複数のストレージ装置STを統括するサーバ等で一元管理する必要がない。
【0187】
また、ストレージ装置STによれば、要求元のサーバSVが複写対象データの所有権または使用権を有する場合に、複写先のLUNに対する複写対象データの複写処理を行うことにしてもよい。これにより、要求元のサーバSVがアクセス可能な複写先のLUNへの複写要求であっても、要求元のサーバSVが所有権または使用権を有していない複写対象データの複写を防ぐことができる。
【0188】
また、ストレージ装置STによれば、要求元のサーバSVが複写先のLUNの所有権または使用権を有する場合に、複写先のLUNに対する複写対象データの複写処理を行うことにしてもよい。これにより、要求元のサーバSVがアクセス可能な複写対象データの複写要求であっても、要求元のサーバSVが所有権または使用権を有していない複写先のLUNへの複写を防ぐことができる。
【0189】
また、ストレージ装置STによれば、要求元のサーバSVが、複写対象データの所有権を有し、かつ、複写先のLUNの所有権を有する場合に、複写対象データの複写先のLUNに対する複写処理を行うことにしてもよい。これにより、複写対象データおよび複写先のLUNの両方の所有権を有していない要求元のサーバSVからの複写要求に対する複写処理を防ぐことができる。
【0190】
ストレージ装置STによれば、要求元のサーバSVが、複写対象データの使用権を有し、かつ、複写先のLUNの使用権を有する場合に、複写対象データの複写先のLUNに対する複写処理を行うことにしてもよい。これにより、複写対象データおよび複写先のLUNの両方の使用権を有していない要求元のサーバSVからの複写要求に対する複写処理を防ぐことができる。換言すれば、複写対象データおよび複写先のLUNの両方の所有権を有するサーバSVであっても、複写対象データおよび複写先のLUNの両方の使用権を有していない場合は複写処理が禁止される。
【0191】
また、ストレージ装置STによれば、要求元のサーバSVが、複写対象データの所有権を有し、かつ、複写先のLUNの使用権を有する場合に、複写対象データの複写先のLUNに対する複写処理を行うことにしてもよい。これにより、複写対象データの所有権を有し、かつ、複写先のLUNの使用権を有するサーバSVからの複写要求に対する複写処理のみ行うことができる。
【0192】
また、ストレージ装置STによれば、要求元のサーバSVが、複写対象データの使用権を有し、かつ、複写先のLUNの所有権を有する場合に、複写対象データの複写先のLUNに対する複写処理を行うことにしてもよい。これにより、複写対象データの使用権を有し、かつ、複写先のLUNの所有権を有するサーバSVからの複写要求に対する複写処理のみ行うことができる。
【0193】
以上説明した本実施の形態にかかるストレージ装置、データ複写方法およびストレージシステムによれば、不正なデータ複写を防ぐことができる。
【0194】
なお、本実施の形態で説明したデータ複写方法は、予め用意されたプログラムをパーソナル・コンピュータやワークステーション等のコンピュータで実行することにより実現することができる。本データ複写プログラムは、ハードディスク、フレキシブルディスク、CD−ROM、MO、DVD等のコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。また、本データ複写プログラムは、インターネット等のネットワークを介して配布してもよい。
【0195】
上述した実施の形態に関し、さらに以下の付記を開示する。
【0196】
(付記1)複数のサーバのうち要求元となるサーバからの、複写対象データの複写先の記憶領域に対する複写要求を受け付ける受付部と、
前記受付部によって前記複写要求を受け付けた場合、前記複数のサーバのうち前記複写対象データにアクセス可能なサーバの識別子を記憶する第1のテーブルに、前記要求元のサーバの識別子が含まれているか否かを判定する第1の判定部と、
前記複写要求を受け付けた場合、前記複数のサーバのうち前記複写対象データを任意の記憶領域に対して複写する権限が設定されたサーバの識別子を記憶する第2のテーブルに、前記要求元のサーバの識別子が含まれているか否かを判定する第2の判定部と、
前記第1または第2の判定部によって前記要求元のサーバの識別子が含まれていると判定された場合、前記複写対象データを前記複写先の記憶領域に複写する複写処理を実行する実行部と、
を備えることを特徴とするストレージ装置。
【0197】
(付記2)複数のサーバのうち要求元となるサーバからの、複写対象データの複写先の記憶領域に対する複写要求を受け付ける受付部と、
前記受付部によって前記複写要求を受け付けた場合、前記複数のサーバのうち前記複写先の記憶領域にアクセス可能なサーバの識別子を記憶する第1のテーブルに、前記要求元のサーバの識別子が含まれているか否かを判定する第1の判定部と、
前記複写要求を受け付けた場合、前記複数のサーバのうち前記複写先の記憶領域に対して任意のデータを複写する権限が設定されたサーバの識別子を記憶する第2のテーブルに、前記要求元のサーバの識別子が含まれているか否かを判定する第2の判定部と、
前記第1または第2の判定部によって前記要求元のサーバの識別子が含まれていると判定された場合、前記複写対象データを前記複写先の記憶領域に複写する複写処理を実行する実行部と、
を備えることを特徴とするストレージ装置。
【0198】
(付記3)前記複写要求を受け付けた場合、前記複数のサーバのうち前記複写先の記憶領域にアクセス可能なサーバの識別子を記憶する第3のテーブルに、前記要求元のサーバの識別子が含まれているか否かを判定する第3の判定部と、
前記複写要求を受け付けた場合、前記複数のサーバのうち前記複写先の記憶領域に対して任意のデータを複写する権限が設定されたサーバの識別子を記憶する第4のテーブルに、前記要求元のサーバの識別子が含まれているか否かを判定する第4の判定部と、をさらに備え、
前記実行部は、前記第1または第2の判定部によって前記要求元のサーバの識別子が含まれていると判定され、かつ、前記第3または第4の判定部によって前記要求元のサーバの識別子が含まれていると判定された場合、前記複写処理を実行することを特徴とする付記1に記載のストレージ装置。
【0199】
(付記4)前記要求元のサーバからの前記複写対象データを任意の記憶領域に対して複写する権限の許可要求を、前記要求元のサーバとは異なる、前記複写対象データにアクセス可能な他のサーバに直接接続された他のストレージ装置に送信する第1の送信部と、
前記第1の送信部によって送信された前記許可要求に対する前記他のサーバからの許可応答を前記他のストレージ装置から受信する第1の受信部と、
前記第1の受信部によって受信された前記許可応答に基づいて、前記第2のテーブルを更新する第1の更新部と、
を備えることを特徴とする付記3に記載のストレージ装置。
【0200】
(付記5)前記第1の受信部は、自装置に直接接続されたサーバとは異なる他のサーバからの、前記サーバがアクセス可能なデータを任意の記憶領域に対して複写する権限の許可要求を、前記他のサーバに直接接続された他のストレージ装置から受信し、
前記第1の送信部は、前記第1の受信部によって受信された前記許可要求に対する前記サーバからの許可応答を前記他のストレージ装置に送信することを特徴とする付記4に記載のストレージ装置。
【0201】
(付記6)前記要求元のサーバからの前記複写先の記憶領域に任意のデータを複写する権限の許可要求を、前記要求元のサーバとは異なる、前記複写先の記憶領域にアクセス可能な他のサーバに直接接続された他のストレージ装置に送信する第2の送信部と、
前記第2の送信部によって送信された前記許可要求に対する前記他のサーバからの許可応答を前記他のストレージ装置から受信する第2の受信部と、
前記第2の受信部によって受信された前記許可応答に基づいて、前記第4のテーブルを更新する第2の更新部と、
を備えることを特徴とする付記3〜5のいずれか一つに記載のストレージ装置。
【0202】
(付記7)前記第2の受信部は、自装置に直接接続されたサーバとは異なる他のサーバからの、前記サーバがアクセス可能な記憶領域に対して任意のデータを複写する権限の許可要求を、前記他のサーバに直接接続された他のストレージ装置から受信し、
前記第2の送信部は、前記第2の受信部によって受信された前記許可要求に対する前記サーバからの許可応答を前記他のストレージ装置に送信することを特徴とする付記6に記載のストレージ装置。
【0203】
(付記8)複数のサーバのうち要求元となるサーバからの、複写対象データの複写先の記憶領域に対する複写要求を受け付ける受付部と、
前記受付部によって前記複写要求を受け付けた場合、前記複数のサーバのうち前記複写対象データにアクセス可能なサーバの識別子を記憶する第1のテーブルに、前記要求元のサーバの識別子が含まれているか否かを判定する第1の判定部と、
前記複写要求を受け付けた場合、前記複数のサーバのうち前記複写先の記憶領域にアクセス可能なサーバの識別子を記憶する第2のテーブルに、前記要求元のサーバの識別子が含まれているか否かを判定する第2の判定部と、
前記第1または第2の判定部によって前記要求元のサーバの識別子が含まれていると判定された場合、前記複写対象データを前記複写先の記憶領域に複写する複写処理を実行する実行部と、
を備えることを特徴とするストレージ装置。
【0204】
(付記9)複数のサーバのうち要求元となるサーバからの、複写対象データの複写先の記憶領域に対する複写要求を受け付ける受付部と、
前記受付部によって前記複写要求を受け付けた場合、前記複数のサーバのうち前記複写対象データを任意の記憶領域に対して複写する権限が設定されたサーバの識別子を記憶する第1のテーブルに、前記要求元のサーバの識別子が含まれているか否かを判定する第1の判定部と、
前記複写要求を受け付けた場合、前記複数のサーバのうち前記複写先の記憶領域に対して任意のデータを複写する権限が設定されたサーバの識別子を記憶する第2のテーブルに、前記要求元のサーバの識別子が含まれているか否かを判定する第2の判定部と、
前記第1または第2の判定部によって前記要求元のサーバの識別子が含まれていると判定された場合、前記複写対象データを前記複写先の記憶領域に複写する複写処理を実行する実行部と、
を備えることを特徴とするストレージ装置。
【0205】
(付記10)複数のサーバのうち要求元となるサーバからの、複写対象データの複写先の記憶領域に対する複写要求を受け付ける受付部と、
前記受付部によって前記複写要求を受け付けた場合、前記複数のサーバのうち前記複写対象データにアクセス可能なサーバの識別子を記憶する第1のテーブルに、前記要求元のサーバの識別子が含まれているか否かを判定する第1の判定部と、
前記複写要求を受け付けた場合、前記複数のサーバのうち前記複写先の記憶領域に対して任意のデータを複写する権限が設定されたサーバの識別子を記憶する第2のテーブルに、前記要求元のサーバの識別子が含まれているか否かを判定する第2の判定部と、
前記第1または第2の判定部によって前記要求元のサーバの識別子が含まれていると判定された場合、前記複写対象データを前記複写先の記憶領域に複写する複写処理を実行する実行部と、
を備えることを特徴とするストレージ装置。
【0206】
(付記11)複数のサーバのうち要求元となるサーバからの、複写対象データの複写先の記憶領域に対する複写要求を受け付ける受付部と、
前記受付部によって前記複写要求を受け付けた場合、前記複数のサーバのうち前記複写対象データを任意の記憶領域に対して複写する権限が設定されたサーバの識別子を記憶する第1のテーブルに、前記要求元のサーバの識別子が含まれているか否かを判定する第1の判定部と、
前記複写要求を受け付けた場合、前記複数のサーバのうち前記複写先の記憶領域にアクセス可能なサーバの識別子を記憶する第2のテーブルに、前記要求元のサーバの識別子が含まれているか否かを判定する第2の判定部と、
前記第1または第2の判定部によって前記要求元のサーバの識別子が含まれていると判定された場合、前記複写対象データを前記複写先の記憶領域に複写する複写処理を実行する実行部と、
を備えることを特徴とするストレージ装置。
【0207】
(付記12)複数のサーバのうち要求元となるサーバからの、複写対象データの複写先の記憶領域に対する複写要求を受け付ける受付工程と、
前記受付工程によって前記複写要求を受け付けた場合、前記複数のサーバのうち前記複写対象データにアクセス可能なサーバの識別子を記憶する第1のテーブルに、前記要求元のサーバの識別子が含まれているか否かを判定する第1の判定工程と、
前記第1の判定工程によって前記要求元のサーバの識別子が含まれていないと判定された場合、前記複数のサーバのうち前記複写対象データを任意の記憶領域に対して複写する権限が設定されたサーバの識別子を記憶する第2のテーブルに、前記要求元のサーバの識別子が含まれているか否かを判定する第2の判定工程と、
前記第1または第2の判定工程によって前記要求元のサーバの識別子が含まれていると判定された場合、前記複写対象データを前記複写先の記憶領域に複写する複写処理を実行する実行工程と、
をコンピュータが実行することを特徴とするデータ複写方法。
【0208】
(付記13)複数のサーバとストレージ装置とを含むストレージシステムにおいて、
前記ストレージ装置は、
前記複数のサーバのうち要求元となるサーバからの、複写対象データの複写先の記憶領域に対する複写要求を受け付ける受付部と、
前記受付部によって前記複写要求を受け付けた場合、前記複数のサーバのうち前記複写対象データにアクセス可能なサーバの識別子を記憶する第1のテーブルに、前記要求元のサーバの識別子が含まれているか否かを判定する第1の判定部と、
前記複写要求を受け付けた場合、前記複数のサーバのうち前記複写対象データを任意の記憶領域に対して複写する権限が設定されたサーバの識別子を記憶する第2のテーブルに、前記要求元のサーバの識別子が含まれているか否かを判定する第2の判定部と、
前記第1または第2の判定部によって前記要求元のサーバの識別子が含まれていると判定された場合、前記複写対象データを前記複写先の記憶領域に複写する複写処理を実行する実行部と、
を備えることを特徴とするストレージシステム。
【符号の説明】
【0209】
600 所有者情報テーブル
700 許可情報テーブル
801 受付部
802 第1の判定部
803 第2の判定部
804 第3の判定部
805 第4の判定部
806 実行部
807 送信部
808 受信部
809 更新部
ST,ST1〜ST3 ストレージ装置
SV,SV1,SV2,SV3 サーバ

【特許請求の範囲】
【請求項1】
複数のサーバのうち要求元となるサーバからの、複写対象データの複写先の記憶領域に対する複写要求を受け付ける受付部と、
前記受付部によって前記複写要求を受け付けた場合、前記複数のサーバのうち前記複写対象データにアクセス可能なサーバの識別子を記憶する第1のテーブルに、前記要求元のサーバの識別子が含まれているか否かを判定する第1の判定部と、
前記複写要求を受け付けた場合、前記複数のサーバのうち前記複写対象データを任意の記憶領域に対して複写する権限が設定されたサーバの識別子を記憶する第2のテーブルに、前記要求元のサーバの識別子が含まれているか否かを判定する第2の判定部と、
前記第1または第2の判定部によって前記要求元のサーバの識別子が含まれていると判定された場合、前記複写対象データを前記複写先の記憶領域に複写する複写処理を実行する実行部と、
を備えることを特徴とするストレージ装置。
【請求項2】
複数のサーバのうち要求元となるサーバからの、複写対象データの複写先の記憶領域に対する複写要求を受け付ける受付部と、
前記受付部によって前記複写要求を受け付けた場合、前記複数のサーバのうち前記複写先の記憶領域にアクセス可能なサーバの識別子を記憶する第1のテーブルに、前記要求元のサーバの識別子が含まれているか否かを判定する第1の判定部と、
前記複写要求を受け付けた場合、前記複数のサーバのうち前記複写先の記憶領域に対して任意のデータを複写する権限が設定されたサーバの識別子を記憶する第2のテーブルに、前記要求元のサーバの識別子が含まれているか否かを判定する第2の判定部と、
前記第1または第2の判定部によって前記要求元のサーバの識別子が含まれていると判定された場合、前記複写対象データを前記複写先の記憶領域に複写する複写処理を実行する実行部と、
を備えることを特徴とするストレージ装置。
【請求項3】
前記複写要求を受け付けた場合、前記複数のサーバのうち前記複写先の記憶領域にアクセス可能なサーバの識別子を記憶する第3のテーブルに、前記要求元のサーバの識別子が含まれているか否かを判定する第3の判定部と、
前記複写要求を受け付けた場合、前記複数のサーバのうち前記複写先の記憶領域に対して任意のデータを複写する権限が設定されたサーバの識別子を記憶する第4のテーブルに、前記要求元のサーバの識別子が含まれているか否かを判定する第4の判定部と、をさらに備え、
前記実行部は、
前記第1または第2の判定部によって前記要求元のサーバの識別子が含まれていると判定され、かつ、前記第3または第4の判定部によって前記要求元のサーバの識別子が含まれていると判定された場合、前記複写処理を実行することを特徴とする請求項1に記載のストレージ装置。
【請求項4】
前記要求元のサーバからの前記複写対象データを任意の記憶領域に対して複写する権限の許可要求を、前記要求元のサーバとは異なる、前記複写対象データにアクセス可能な他のサーバに直接接続された他のストレージ装置に送信する第1の送信部と、
前記第1の送信部によって送信された前記許可要求に対する前記他のサーバからの許可応答を前記他のストレージ装置から受信する第1の受信部と、
前記第1の受信部によって受信された前記許可応答に基づいて、前記第2のテーブルを更新する第1の更新部と、
を備えることを特徴とする請求項3に記載のストレージ装置。
【請求項5】
前記第1の受信部は、
自装置に直接接続されたサーバとは異なる他のサーバからの、前記サーバがアクセス可能なデータを任意の記憶領域に対して複写する権限の許可要求を、前記他のサーバに直接接続された他のストレージ装置から受信し、
前記第1の送信部は、
前記第1の受信部によって受信された前記許可要求に対する前記サーバからの許可応答を前記他のストレージ装置に送信することを特徴とする請求項4に記載のストレージ装置。
【請求項6】
前記要求元のサーバからの前記複写先の記憶領域に任意のデータを複写する権限の許可要求を、前記要求元のサーバとは異なる、前記複写先の記憶領域にアクセス可能な他のサーバに直接接続された他のストレージ装置に送信する第2の送信部と、
前記第2の送信部によって送信された前記許可要求に対する前記他のサーバからの許可応答を前記他のストレージ装置から受信する第2の受信部と、
前記第2の受信部によって受信された前記許可応答に基づいて、前記第4のテーブルを更新する第2の更新部と、
を備えることを特徴とする請求項3〜5のいずれか一つに記載のストレージ装置。
【請求項7】
複数のサーバのうち要求元となるサーバからの、複写対象データの複写先の記憶領域に対する複写要求を受け付ける受付工程と、
前記受付工程によって前記複写要求を受け付けた場合、前記複数のサーバのうち前記複写対象データにアクセス可能なサーバの識別子を記憶する第1のテーブルに、前記要求元のサーバの識別子が含まれているか否かを判定する第1の判定工程と、
前記第1の判定工程によって前記要求元のサーバの識別子が含まれていないと判定された場合、前記複数のサーバのうち前記複写対象データを任意の記憶領域に対して複写する権限が設定されたサーバの識別子を記憶する第2のテーブルに、前記要求元のサーバの識別子が含まれているか否かを判定する第2の判定工程と、
前記第1または第2の判定工程によって前記要求元のサーバの識別子が含まれていると判定された場合、前記複写対象データを前記複写先の記憶領域に複写する複写処理を実行する実行工程と、
をコンピュータが実行することを特徴とするデータ複写方法。
【請求項8】
複数のサーバとストレージ装置とを含むストレージシステムにおいて、
前記ストレージ装置は、
前記複数のサーバのうち要求元となるサーバからの、複写対象データの複写先の記憶領域に対する複写要求を受け付ける受付部と、
前記受付部によって前記複写要求を受け付けた場合、前記複数のサーバのうち前記複写対象データにアクセス可能なサーバの識別子を記憶する第1のテーブルに、前記要求元のサーバの識別子が含まれているか否かを判定する第1の判定部と、
前記複写要求を受け付けた場合、前記複数のサーバのうち前記複写対象データを任意の記憶領域に対して複写する権限が設定されたサーバの識別子を記憶する第2のテーブルに、前記要求元のサーバの識別子が含まれているか否かを判定する第2の判定部と、
前記第1または第2の判定部によって前記要求元のサーバの識別子が含まれていると判定された場合、前記複写対象データを前記複写先の記憶領域に複写する複写処理を実行する実行部と、
を備えることを特徴とするストレージシステム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate


【公開番号】特開2012−83803(P2012−83803A)
【公開日】平成24年4月26日(2012.4.26)
【国際特許分類】
【出願番号】特願2010−226892(P2010−226892)
【出願日】平成22年10月6日(2010.10.6)
【出願人】(000005223)富士通株式会社 (25,993)
【出願人】(399076998)株式会社富士通ビー・エス・シー (56)
【Fターム(参考)】