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

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

Info

Publication number
JP5602572B2
JP5602572B2 JP2010226892A JP2010226892A JP5602572B2 JP 5602572 B2 JP5602572 B2 JP 5602572B2 JP 2010226892 A JP2010226892 A JP 2010226892A JP 2010226892 A JP2010226892 A JP 2010226892A JP 5602572 B2 JP5602572 B2 JP 5602572B2
Authority
JP
Japan
Prior art keywords
server
copy
data
lun
request
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2010226892A
Other languages
English (en)
Other versions
JP2012083803A (ja
Inventor
秀明 高橋
真奈 田中
秀幸 田中
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Fujitsu Broad Solution and Consulting Inc
Original Assignee
Fujitsu Ltd
Fujitsu Broad Solution and Consulting Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd, Fujitsu Broad Solution and Consulting Inc filed Critical Fujitsu Ltd
Priority to JP2010226892A priority Critical patent/JP5602572B2/ja
Priority to US13/200,594 priority patent/US20120089567A1/en
Publication of JP2012083803A publication Critical patent/JP2012083803A/ja
Application granted granted Critical
Publication of JP5602572B2 publication Critical patent/JP5602572B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2053Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
    • G06F11/2094Redundant storage or storage space
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/1658Data re-synchronization of a redundant component, or initial sync of replacement, additional or spare unit
    • G06F11/1662Data re-synchronization of a redundant component, or initial sync of replacement, additional or spare unit the resynchronized component or unit being a persistent storage device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Bioethics (AREA)
  • Software Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Storage Device Security (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本発明は、筐体間のデータ複写を行うストレージ装置、データ複写方法およびストレージシステムに関する。
従来から、SAN(Storage Area Network)環境などにおいて、ストレージ装置がデータコピーを自律的に行う技術がある。また、SAN環境において、サーバとストレージ装置を対応付けて、ストレージ装置内のデータを排他的に扱うための技術がある(例えば、下記特許文献1〜3参照。)。
特開2003−242039号公報 特開2005−276160号公報 特開2006−146801号公報
しかしながら、上述した従来技術では、ストレージ装置内のデータに対するサーバからのアクセスを制限しても、ストレージ装置の自律コピー機能を利用して、不正なデータコピーが行われる場合があるという問題があった。
本発明は、上述した従来技術による問題点を解消するため、不正なデータ複写を防ぐことができるストレージ装置、データ複写方法およびストレージシステムを提供することを目的とする。
上述した課題を解決し、目的を達成するため、開示のストレージ装置は、複数のサーバのうち要求元となるサーバからの、複写対象データの複写先の記憶領域に対する複写要求を受け付ける受付部と、前記受付部によって前記複写要求を受け付けた場合、前記複数のサーバのうち前記複写対象データにアクセス可能なサーバの識別子を記憶する第1のテーブルに、前記要求元のサーバの識別子が含まれているか否かを判定する第1の判定部と、前記複写要求を受け付けた場合、前記複数のサーバのうち前記複写対象データを任意の記憶領域に対して複写する権限が設定されたサーバの識別子を記憶する第2のテーブルに、前記要求元のサーバの識別子が含まれているか否かを判定する第2の判定部と、前記第1または第2の判定部によって前記要求元のサーバの識別子が含まれていると判定された場合、前記複写対象データを前記複写先の記憶領域に複写する複写処理を実行する実行部と、を備える。
本ストレージ装置、データ複写方法およびストレージシステムによれば、不正なデータ複写を防ぐことができるという効果を奏する。
本実施の形態にかかるデータ複写手法の一実施例を示す説明図である。 実施の形態にかかるコンピュータのハードウェア構成の一例を示すブロック図である。 本実施の形態にかかるストレージシステムの一実施例を示すシステム構成図である。 サーバ/LUN対応テーブルの記憶内容の一例を示す説明図である。 サーバ情報テーブルの記憶内容の一例を示す説明図である。 所有者情報テーブルの記憶内容の一例を示す説明図である。 許可情報テーブルの記憶内容の一例を示す説明図である。 ストレージ装置の機能的構成を示すブロック図である。 複写要求の具体例を示す説明図である。 LUNのデータ構造の具体例を示す説明図である。 LUN管理情報の伝播例を示す説明図である。 データ許可要求の具体例を示す説明図である。 データ許可応答の具体例を示す説明図である。 LUN許可要求の具体例を示す説明図である。 LUN許可応答の具体例を示す説明図である。 本実施の形態にかかるストレージ装置のデータ複写処理手順の一例を示すフローチャートである。 本データ複写手法の適用例を示す説明図(その1)である。 本データ複写手法の適用例を示す説明図(その2)である。 本データ複写手法の適用例を示す説明図(その3)である。
以下に添付図面を参照して、この発明にかかるストレージ装置、データ複写方法およびストレージシステムの好適な実施の形態を詳細に説明する。
(データ複写手法の一実施例)
図1は、本実施の形態にかかるデータ複写手法の一実施例を示す説明図である。図1において、サーバSV1は、ストレージ装置ST内の第1の記憶領域110にアクセス可能である。また、サーバSV2は、ストレージ装置ST内の第2の記憶領域120にアクセス可能である。
以下、ストレージ装置STが、第1の記憶領域110内のデータDの第2の記憶領域120に対する複写要求をサーバSV2から受け付けた場合を例に挙げて、本実施の形態にかかるデータ複写手法の一実施例について説明する。
(1)ストレージ装置STは、第1の記憶領域110内のデータDの第2の記憶領域120に対する複写要求をサーバSV2から受け付ける。
(2)ストレージ装置STは、要求元のサーバSV2が、データDの所有権を有するサーバか否かを判定する。ここで、データDの所有権を有するサーバとは、データDにアクセス可能なサーバである。ここでは、データDの所有権を有するサーバは、第1の記憶領域110にアクセス可能なサーバSV1である。
上記(2)において、サーバSV2がデータDの所有権を有する場合は下記(5)に移行する。一方、サーバSV2がデータDの所有権を有していない場合は下記(3)に移行する。ここでは、サーバSV2がデータDの所有権を有していないため、下記(3)に移行する。
(3)ストレージ装置STは、要求元のサーバSV2が、データDの使用権を有するサーバか否かを判定する。ここで、データDの使用権を有するサーバとは、データDを任意の記憶領域に対して複写する権限を有するサーバである。ここでは、サーバSV2が、データDの使用権を有している場合を想定する。
上記(3)において、サーバSV2がデータDの使用権を有する場合は下記(5)に移行する。一方、サーバSV2がデータDの使用権を有していない場合は、(4)ストレージ装置STが、サーバSV2に対して複写失敗を通知する。ここでは、サーバSV2がデータDの使用権を有しているため、下記(5)に移行する。
(5)ストレージ装置STは、要求元のサーバSV2が、複写先の記憶領域の所有権を有するサーバか否かを判定する。ここで、複写先の記憶領域の所有権を有するサーバとは、複写先の記憶領域にアクセス可能なサーバである。ここでは、複写先の記憶領域の所有権を有するサーバは、複写先の記憶領域となる第2の記憶領域120にアクセス可能なサーバSV2である。
上記(5)において、サーバSV2が複写先の記憶領域の所有権を有する場合は下記(8)に移行する。一方、サーバSV2が複写先の記憶領域の所有権を有していない場合は下記(6)に移行する。ここでは、サーバSV2が複写先の記憶領域の所有権を有しているため、下記(8)に移行する。
(6)ストレージ装置STは、要求元のサーバSV2が、複写先の記憶領域の使用権を有するサーバか否かを判定する。ここで、複写先の記憶領域の使用権を有するサーバとは、複写先の記憶領域に対して任意のデータを複写する権限を有するサーバである。
上記(6)において、サーバSV2が複写先の記憶領域の使用権を有する場合は下記(8)に移行する。一方、サーバSV2が複写先の記憶領域の使用権を有していない場合は、(7)ストレージ装置STが、サーバSV2に対して複写失敗を通知する。
(8)ストレージ装置STは、データDを複写先の記憶領域となる第2の記憶領域120に複写する複写処理を実行する。具体的には、ストレージ装置STが、第1の記憶領域110の中からデータDを読み出して、第2の記憶領域120に書き込む。
このように、本データ複写手法では、要求元のサーバSV2が、複写対象となるデータDの所有権または使用権を有し、かつ、複写先となる第2の記憶領域120の所有権または使用権を有する場合に、データDの第2の記憶領域120に対する複写処理を行う。換言すれば、要求元のサーバSV2がアクセス可能な第2の記憶領域120への複写要求であっても、サーバSV2がデータDの所有権または使用権を有していない場合は複写処理が行われない。
また、要求元のサーバSV2がアクセス可能なデータDの複写要求であっても、サーバSV2が複写先となる第2の記憶領域120の所有権または使用権を有していない場合は複写処理が行われない。このため、本データ複写手法によれば、ストレージ装置STが自律的にデータ複写を行う機能を利用した不正なデータ複写を防ぐことができる。
(コンピュータのハードウェア構成)
つぎに、本実施の形態にかかるコンピュータ(例えば、図1に示したサーバSV1,SV2およびストレージ装置ST)のハードウェア構成について説明する。
図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によってそれぞれ接続されている。
ここで、CPU201は、コンピュータの全体の制御を司る。ROM202は、ブートプログラムなどのプログラムを記憶している。RAM203は、CPU201のワークエリアとして使用される。HDD204は、CPU201の制御にしたがって、磁性体を塗布した円盤(ハードディスク)を高速回転させることで、磁気ヘッドがデータのリード/ライトを行う記憶装置である。
I/F205は、通信回線を通じてLAN(Local Area Network)、WAN(Wide Area Network)、インターネットなどのネットワーク214に接続され、このネットワーク214を介して他の装置に接続される。そして、I/F205は、ネットワーク214と内部のインターフェースを司り、外部装置からのデータの入出力を制御する。I/F205には、たとえばモデムやLANアダプタなどを採用することができる。
ディスプレイ206は、カーソル、アイコンあるいはツールボックスをはじめ、文書、画像、機能情報などのデータを表示する。このディスプレイ206は、たとえば、CRT、TFT液晶ディスプレイ、プラズマディスプレイなどを採用することができる。
キーボード207は、文字、数字、各種指示などの入力のためのキーを備え、データの入力をおこなう。また、タッチパネル式の入力パッドやテンキーなどであってもよい。マウス208は、カーソルの移動や範囲選択、あるいはウィンドウの移動やサイズの変更などをおこなう。ポインティングデバイスとして同様に機能を備えるものであれば、トラックボールやジョイスティックなどであってもよい。
なお、上述した構成部201〜208のうち一部の構成部(例えば、ディスプレイ206、キーボード207、マウス208など)をコンピュータから省略することにしてもよい。
(ストレージシステム300の一実施例)
図3は、本実施の形態にかかるストレージシステムの一実施例を示すシステム構成図である。図3において、ストレージシステム300は、サーバSV1〜SV3と、ストレージ装置ST1〜ST3と、を含む構成である。
サーバSV1〜SV3は、ストレージ装置ST1〜ST3を動作させる機能を有するコンピュータである。また、サーバSV1〜SV3は、ストレージ装置ST1〜ST3の記憶領域にアクセスしてデータのリード/ライトを行う機能を有する。
ストレージ装置ST1〜ST3は、データを記憶する記憶領域を有し、記憶領域に対するアクセスを制御するコンピュータである。また、ストレージ装置ST1〜ST3は、自律的に筐体間のデータ複写を行う機能を有する。
図3中、LUN(Logical Unit Number)11,LUN12,LUN21,LUN22,LUN31は、各ストレージ装置ST1〜ST3の記憶領域が割り当てられた論理ボリュームである。論理ボリュームとは、各ストレージ装置ST1〜ST3の記憶領域を管理するための単位である。例えば、ハードディスク全体を一つの論理ボリュームとしてもよく、また、ハードディスクを区切って分割されたパーティションを一つの論理ボリュームとしてもよい。さらに、複数のハードディスクを組み合わせて一つの論理ボリュームとしてもよい。
ここで、各サーバSV1〜SV3と各ストレージ装置ST1〜ST3との間はマルチパス構成となっている。具体的には、サーバSV1のHBA(Host Bus Adapter)11とストレージ装置ST1のCA(Channel Adaptor)11との間にパスが定義され、サーバSV1のHBA12とストレージ装置ST1のCA12との間にパスが定義されている。
サーバSV2のHBA21とストレージ装置ST2のCA21との間にパスが定義され、サーバSV2のHBA22とストレージ装置ST2のCA22との間にパスが定義されている。サーバSV3のHBA31とストレージ装置ST3のCA31との間にパスが定義され、サーバSV3のHBA32とストレージ装置ST3のCA32との間にパスが定義されている。
また、各ストレージ装置ST1〜ST3は、筐体間のデータ複写を行うためのRA(Remote Adapter)を備えている。具体的には、ストレージ装置ST1のRA11とストレージ装置ST2のRA21とが接続され、ストレージ装置ST2のRA22とストレージ装置ST3のRA31とが接続されている。
(各種テーブルの記憶内容)
つぎに、図4〜図7を用いて各ストレージ装置ST1〜ST3が用いる各種テーブルの記憶内容について説明する。図4〜図7に示す各種テーブルは、例えば、図2に示したRAM203、HDD204などの記憶装置により実現される。
<サーバ/LUN対応テーブル410,420,430>
図4は、サーバ/LUN対応テーブルの記憶内容の一例を示す説明図である。図4において、サーバ/LUN対応テーブル410は、ストレージ装置ST1が用いるテーブルである。また、サーバ/LUN対応テーブル420は、ストレージ装置ST2が用いるテーブルである。また、サーバ/LUN対応テーブル430は、ストレージ装置ST3が用いるテーブルである。
各サーバ/LUN対応テーブル410,420,430は、サーバ名、経路情報およびLUN番号のフィールドを有する。各フィールドに情報を設定することで、各ストレージ装置ST1〜ST3内のLUNにアクセス可能なサーバSV1〜SV3を特定するための情報が記憶されている。
ここで、サーバ名は、各サーバSV1〜SV3の利用者が認識する論理的なサーバの識別子である。以下の説明では、このサーバ名は、各ストレージ装置ST1〜ST3が各サーバSV1〜SV3を認識するための物理的なサーバの識別子と関連付けられており、各ストレージ装置ST1〜ST3は、サーバ名から各サーバSV1〜SV3を認識できるものとする。
経路情報は、各サーバSV1〜SV3と各ストレージ装置ST1〜ST3との間に定義されたパスを特定するための情報である。ここでは、各パスを定義するHBA番号とCA番号が設定されている。LUN番号は、ストレージ装置ST1〜ST3内のLUNの識別子である。
具体的には、サーバ/LUN対応テーブル410は、サーバSV1のHBA11とストレージ装置ST1のCA11との間に定義されたパスを介して、サーバSV1がLUN11にアクセス可能であることを示している。また、サーバ/LUN対応テーブル410は、サーバSV1のHBA12とストレージ装置ST1のCA12との間に定義されたパスを介して、サーバSV1がLUN11にアクセス可能であることを示している。
さらに、サーバ/LUN対応テーブル410は、サーバSV1のHBA11とストレージ装置ST1のCA11との間に定義されたパスを介して、サーバSV1がLUN12にアクセス可能であることを示している。また、サーバ/LUN対応テーブル410は、サーバSV1のHBA12とストレージ装置ST1のCA12との間に定義されたパスを介して、サーバSV1がLUN12にアクセス可能であることを示している。
サーバ/LUN対応テーブル420は、サーバSV2のHBA21とストレージ装置ST2のCA21との間に定義されたパスを介して、サーバSV2がLUN21にアクセス可能であることを示している。また、サーバ/LUN対応テーブル420は、サーバSV2のHBA22とストレージ装置ST2のCA22との間に定義されたパスを介して、サーバSV2がLUN21にアクセス可能であることを示している。
さらに、サーバ/LUN対応テーブル420は、サーバSV2のHBA21とストレージ装置ST2のCA21との間に定義されたパスを介して、サーバSV2がLUN22にアクセス可能であることを示している。また、サーバ/LUN対応テーブル420は、サーバSV2のHBA22とストレージ装置ST2のCA22との間に定義されたパスを介して、サーバSV2がLUN22にアクセス可能であることを示している。
サーバ/LUN対応テーブル430は、サーバSV3のHBA31とストレージ装置ST3のCA31との間に定義されたパスを介して、サーバSV3がLUN31にアクセス可能であることを示している。また、サーバ/LUN対応テーブル430は、サーバSV3のHBA32とストレージ装置ST3のCA32との間に定義されたパスを介して、サーバSV3がLUN31にアクセス可能であることを示している。
各ストレージ装置ST1〜ST3は、各サーバ/LUN対応テーブル410,420,430を参照することで、各ストレージ装置ST1〜ST3内のLUNにアクセス可能なサーバSV1〜SV3を特定することができる。なお、各サーバ/LUN対応テーブル410,420,430は、例えば、各サーバSV1〜SV3と各ストレージ装置ST1〜ST3とを接続する際に、各ストレージ装置ST1〜ST3において作成される。
<サーバ情報テーブル510,520,530>
図5は、サーバ情報テーブルの記憶内容の一例を示す説明図である。図5において、サーバ情報テーブル510はストレージ装置ST1が用いるテーブルであり、サーバ情報テーブル520はストレージ装置ST2が用いるテーブルであり、サーバ情報テーブル530はストレージ装置ST3が用いるテーブルである。
各サーバ情報テーブル510,520,530は、サーバ名、経路情報、筐体名および転送者のフィールドを有する。各フィールドに情報を設定することで、サーバ情報がレコードとして記憶されている。具体的には、サーバ情報テーブル510は、サーバ情報510−1〜510−3を記憶している。サーバ情報テーブル520は、サーバ情報520−1〜520−3を記憶している。サーバ情報テーブル530は、サーバ情報530−1〜530−3を記憶している。
ここで、サーバ名は、各サーバSV1〜SV3の識別子である。経路情報は、各サーバSV1〜SV3と各ストレージ装置ST1〜ST3との間に定義されたパスを特定するための情報である。ここでは、各パスを定義するHBA番号とCA番号が設定されている。筐体名は、各ストレージ装置ST1〜ST3の識別子である。転送者は、各サーバ情報の転送元のストレージ装置を示す情報である。なお、自装置において作成されたサーバ情報の転送者フィールドには「*owner*」が設定される。
ここで、サーバ情報テーブル510を例に挙げると、サーバ情報510−1によれば、経路情報から特定されるパスを介して、ストレージ装置ST1と直接接続されているサーバSV1を認識することができる。さらに、サーバ情報510−1の転送者から、サーバ情報510−1が自装置で作成されたことを認識することができる。
また、サーバ情報510−2によれば、経路情報から特定されるパスを介して、ストレージ装置ST2と直接接続されているサーバSV2を認識することができる。また、サーバ情報510−2の転送者から、サーバ情報510−2の転送元のストレージ装置ST2を認識することができる。
また、サーバ情報510−3によれば、経路情報から特定されるパスを介して、ストレージ装置ST3と直接接続されているサーバSV3を認識することができる。また、サーバ情報510−3の転送者から、サーバ情報510−3の転送元のストレージ装置ST2を認識することができる。
各ストレージ装置ST1〜ST3は、例えば、サーバとの接続時に、該サーバのサーバ情報を作成し、各サーバ情報テーブル510,520,530に登録する。また、各ストレージ装置ST1〜ST3は、自装置で作成したサーバ情報を、直接接続されている他のストレージ装置に送信する。さらに、各ストレージ装置ST1〜ST3は、他のストレージ装置から受信したサーバ情報を、さらに別のストレージ装置に転送する。これにより、各ストレージ装置ST1〜ST3において、各サーバSV1〜SV3のサーバ情報を共有することができる。
<所有者情報テーブル600の記憶内容>
図6は、所有者情報テーブルの記憶内容の一例を示す説明図である。図6において、所有者情報テーブル600は、サーバ名、LUN識別情報およびデータの所有者のフィールドを有する。各フィールドに情報を設定することで、所有者情報600−1〜600−5がレコードとして記憶されている。
ここで、サーバ名は、各サーバSV1〜SV3の識別子である。LUN識別情報は、各サーバが所有権を有するLUNの識別子である。ここでは、LUN番号とサーバ名の組み合わせによってLUN識別情報が表現されている。データの所有者は、LUN識別情報から特定されるLUNに記憶されているデータの所有権を有するサーバの識別子である。
所有者情報600−1によれば、サーバSV1が、LUN11およびLUN11に記憶されているデータの所有権を有していることを特定することができる。所有者情報600−2によれば、サーバSV1が、LUN12およびLUN12に記憶されているデータの所有権を有していることを特定することができる。
所有者情報600−3によれば、サーバSV2が、LUN21およびLUN21に記憶されているデータの所有権を有していることを特定することができる。所有者情報600−4によれば、サーバSV2が、LUN22およびLUN22に記憶されているデータの所有権を有していることを特定することができる。所有者情報600−5によれば、サーバSV3が、LUN31およびLUN31に記憶されているデータの所有権を有していることを特定することができる。
各ストレージ装置ST1〜ST3は、例えば、サーバとの接続時に、該サーバの所有者情報を作成し、各ストレージ装置ST1〜ST3の所有者情報テーブル600に登録する。また、各ストレージ装置ST1〜ST3は、自装置で作成した所有者情報を、直接接続されている他のストレージ装置に送信する。さらに、各ストレージ装置ST1〜ST3は、他のストレージ装置から受信した所有者情報を、さらに別のストレージ装置に転送する。これにより、各ストレージ装置ST1〜ST3において、各サーバSV1〜SV3の所有者情報を共有することができる。
<許可情報テーブル700の記憶内容>
図7は、許可情報テーブルの記憶内容の一例を示す説明図である。図7において、許可情報テーブル700は、サーバ名、LUN識別情報、許可種別および可否フラグのフィールドを有する。各フィールドに情報を設定することで、許可情報がレコードとして記憶されている。
ここで、サーバ名は、各サーバSV1〜SV3の識別子である。LUN識別情報は、各サーバが所有権を有するLUNの識別子である。ここでは、LUN番号とサーバ名の組み合わせによってLUN識別情報が表現されている。許可種別は、論理ボリューム(図中、LUN)の使用権またはデータ(図中、DATA)の使用権を表している。論理ボリュームの使用権とは、任意のデータを該当する論理ボリュームに複写する権限である。データの使用権とは、任意の論理ボリュームに対して該当するデータを複写する権限である。
可否フラグは、要求された許可依頼に対して許可されたか否かを示すフラグである。可否フラグは、初期状態では「OFF」が設定されている。許可依頼に対して許可された場合は、可否フラグに「ON」が設定される。一方、許可依頼に対して許可されなかった場合は、可否フラグは「OFF」のままである。
許可情報700−1によれば、サーバSV1が、サーバSV2が所有権を有するLUN21の使用権を許可されていることを認識することができる。また、許可情報700−2によれば、サーバSV2が、サーバSV1が所有権を有するLUN11に記憶されているデータの使用権を許可されていることを認識することができる。
また、許可情報700−3によれば、サーバSV3が、サーバSV1が所有権を有するLUN12に記憶されているデータの使用権を許可されていないことを認識することができる。なお、許可情報テーブル700内の各レコードは、該当するLUNの削除時に削除される。例えば、ストレージ装置ST2内のLUN21が削除された場合、許可情報700−1が削除される。
(ストレージ装置STの機能的構成)
つぎに、本実施の形態にかかるストレージ装置ST1〜ST3の機能的構成について説明する。以下の説明では、特に指定する場合を除いて、本実施の形態にかかるストレージシステム内の任意のストレージ装置を「ストレージ装置ST」と表記し、任意のサーバを「サーバSV」と表記する。
図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を例に挙げて説明する。
受付部801は、複数のサーバSVのうち要求元となるサーバSVからの、複写対象データの複写先LUNに対する複写要求を受け付ける。具体的には、例えば、受付部801が、サーバSVから複写要求を直接受け付けてもよく、また、他のストレージ装置STを介して、サーバSVからの複写要求を受け付けてもよい。ここで、複写要求の具体例について説明する。
図9は、複写要求の具体例を示す説明図である。図9において、複写要求900は、要求元サーバ名、複写元LUNおよび複写先LUNを含む情報である。ここで、要求元サーバ名は、複写要求900の要求元のサーバのサーバ名である。複写元LUNは、複写対象データを記憶する複写元LUNのLUN番号である。複写先LUNは、複写先LUNのLUN番号である。具体的には、複写要求900は、要求元のサーバSV2からの、ストレージ装置ST1のLUN11上の複写対象データを、ストレージ装置ST2のLUN21に複写する複写要求である。
図8の説明に戻り、第1の判定部802は、複写要求を受け付けた場合、複数のサーバSVのうち複写対象データにアクセス可能なサーバSVの識別子を記憶するテーブルに、要求元のサーバSVの識別子が含まれているか否かを判定する。ここで、複写対象データにアクセス可能なサーバとは、複写対象データの所有権を有するサーバである。
すなわち、上記第1の判定部802は、要求元のサーバSVが複写対象データの所有権を有するか否かを判定する。また、複写対象データにアクセス可能なサーバSVの識別子を記憶するテーブルとは、例えば、図6に示した所有者情報テーブル600である。
具体的には、例えば、図9に示した複写要求900を受け付けた場合、まず、第1の判定部802が、所有者情報テーブル600の中から、複写元LUNのLUN番号「LUN11」をLUN識別情報に含む所有者情報を検索する。ここでは、所有者情報600−1が検索される。
つぎに、第1の判定部802が、検索された所有者情報のデータ所有権に設定されているサーバの識別子が、要求元のサーバSV2の識別子「SV2」と一致するか否かを判定する。ここで、要求元のサーバSV2の識別子と一致する場合、第1の判定部802が、要求元のサーバの識別子が含まれていると判定する。すなわち、要求元のサーバSVは、複写対象データの所有権を有している。
一方、要求元のサーバSV2の識別子と不一致の場合、第1の判定部802が、要求元のサーバの識別子が含まれていないと判定する。すなわち、要求元のサーバSVは、複写対象データの所有権を有していない。ここでは、検索された所有者情報600−1のデータ所有権に設定されているサーバの識別子「SV1」が、要求元のサーバSV2の識別子「SV2」と不一致のため、要求元のサーバの識別子が含まれていないと判定される。
なお、所有者情報テーブル600の中から、複写元LUNのLUN番号をLUN識別情報に含む所有者情報が検索されなかった場合、第1の判定部802が、要求元のサーバの識別子が含まれていると判定してもよい。すなわち、所有者情報テーブル600に所有者情報が未登録のLUN上のデータは、所有権が設定されたサーバSVが存在しないと仮定して、任意のサーバSVが所有権を有することにする。
第2の判定部803は、複写要求を受け付けた場合、複数のサーバSVのうち複写対象データを任意の記憶領域に対して複写する権限が設定されたサーバSVの識別子を記憶するテーブルに、要求元のサーバSVの識別子が含まれているか否かを判定する。ここで、複写対象データを任意の記憶領域に対して複写する権限が設定されたサーバとは、複写対象データの使用権を有するサーバである。
すなわち、上記第2の判定部803は、要求元のサーバSVが複写対象データの使用権を有するか否かを判定する。また、複写対象データを任意の記憶領域に対して複写する権限が設定されたサーバSVの識別子を記憶するテーブルとは、例えば、図7に示した許可情報テーブル700である。
具体的には、例えば、複写要求900を受け付けた場合、まず、第2の判定部803が、許可情報テーブル700の中から、複写元LUNのLUN番号「LUN11」をLUN識別情報に含み、かつ、許可種別が「DATA」の許可情報を検索する。ここでは、許可情報700−2が検索される。
つぎに、第2の判定部803が、検索された許可情報の可否フラグに「ON」が設定されているか否かを判定する。ここで、可否フラグに「ON」が設定されている場合、第2の判定部803が、要求元のサーバSVの識別子が含まれていると判定する。すなわち、要求元のサーバSVは、複写対象データの使用権を有している。
一方、可否フラグに「ON」が設定されていない場合、第2の判定部803が、要求元のサーバSVの識別子が含まれていないと判定する。すなわち、要求元のサーバSVは、複写対象データの使用権を有していない。ここでは、許可情報700−2の可否フラグに「ON」が設定されているため、要求元のサーバの識別子が含まれていると判定される。
なお、許可情報テーブル700の中から、複写元LUNのLUN番号をLUN識別情報に含み、かつ、許可種別が「DATA」の許可情報が検索されなかった場合は、第1の判定部802は、要求元のサーバの識別子が含まれていないと判定する。すなわち、複写対象データの使用権を有するサーバSVが存在しない。
第3の判定部804は、複写要求を受け付けた場合、複数のサーバSVのうち複写先LUNにアクセス可能なサーバSVの識別子を記憶するテーブルに、要求元のサーバSVの識別子が含まれているか否かを判定する。ここで、複写先LUNにアクセス可能なサーバSVとは、複写先LUNの所有権を有するサーバである。すなわち、上記第3の判定部804は、要求元のサーバSVが複写先LUNの所有権を有するか否かを判定する。
具体的には、例えば、複写要求900を受け付けた場合、まず、第3の判定部804が、所有者情報テーブル600の中から、複写先LUNのLUN番号「LUN21」をLUN識別情報に含む所有者情報を検索する。ここでは、所有者情報600−3が検索される。
つぎに、第3の判定部804が、検索された所有者情報のサーバ名に設定されているサーバの識別子が、要求元のサーバSV2の識別子「SV2」と一致するか否かを判定する。ここで、要求元のサーバSV2の識別子と一致する場合、第3の判定部804が、要求元のサーバの識別子が含まれていると判定する。すなわち、要求元のサーバSVは、複写先LUNの所有権を有している。
一方、要求元のサーバSV2の識別子と不一致の場合、第3の判定部804が、要求元のサーバSVの識別子が含まれていないと判定する。すなわち、要求元のサーバSVは、複写先LUNの所有権を有していない。ここでは、検索された所有者情報600−3のサーバ名に設定されているサーバ名「SV2」が、要求元のサーバSV2の識別子「SV2」と一致するため、要求元のサーバSVの識別子が含まれていると判定される。
なお、所有者情報テーブル600の中から、複写先LUNのLUN番号をLUN識別情報に含む所有者情報が検索されなかった場合は、第3の判定部804が、要求元のサーバの識別子が含まれていると判定することにしてもよい。すなわち、所有者情報テーブル600に所有者情報が未登録のLUNは、所有権が設定されたサーバSVが存在しないと仮定して、任意のサーバSVが所有権を有することにする。
第4の判定部805は、複写要求を受け付けた場合、複数のサーバSVのうち複写先LUNに対して任意のデータを複写する権限が設定されたサーバSVの識別子を記憶するテーブルに、要求元のサーバSVの識別子が含まれているか否かを判定する。ここで、複写先LUNに対して任意のデータを複写する権限が設定されたサーバSVとは、複写先LUNの使用権を有するサーバである。すなわち、上記第4の判定部805は、要求元のサーバSVが複写先LUNの使用権を有するか否かを判定する。
具体的には、例えば、複写要求900を受け付けた場合、まず、第4の判定部805が、許可情報テーブル700の中から、複写先LUNのLUN番号「LUN11」をLUN識別情報に含み、かつ、許可種別が「LUN」の許可情報を検索する。つぎに、第4の判定部805が、検索された許可情報の可否フラグに「ON」が設定されているか否かを判定する。
ここで、可否フラグに「ON」が設定されている場合、第4の判定部805が、要求元のサーバの識別子が含まれていると判定する。すなわち、要求元のサーバSVは、複写先LUNの使用権を有している。一方、可否フラグに「OFF」が設定されている場合、第4の判定部805が、要求元のサーバの識別子が含まれていないと判定する。すなわち、要求元のサーバSVは、複写先LUNの使用権を有していない。
ここでは、許可情報テーブル700の中から、複写先LUNのLUN番号「LUN11」をLUN識別情報に含み、かつ、許可種別が「LUN」の許可情報が検索されない。許可情報テーブル700の中から許可情報が検索されなかった場合は、第4の判定部805は、要求元のサーバの識別子が含まれていないと判定する。すなわち、複写先LUNの使用権を有するサーバSVが存在しない。
実行部806は、複写対象データを複写先LUNに複写する複写処理を実行する。複写処理は、ストレージ装置STが複写対象データの送信側のストレージ装置STか、受信側のストレージ装置STかによって処理内容が異なる。送信側のストレージ装置STの場合は、実行部806が、例えば、自装置の複写元LUN上の複写対象データを、複写先LUNを有する他のストレージ装置STに送信する。
一方、受信側のストレージ装置STの場合は、まず、受信側のストレージ装置STの実行部806が、例えば、複写元LUNを有する送信側のストレージ装置STに対して、複写処理の起動指示を送信する。この結果、送信側のストレージ装置STの実行部806が、複写元LUN上の複写対象データを受信側のストレージ装置STに送信する。
ここで、実行部806は、第1の判定部802または第2の判定部803によって要求元のサーバSVの識別子が含まれていると判定された場合に複写処理を実行することにしてもよい。これにより、要求元のサーバSVが複写対象データの所有権または使用権を有する場合に、複写要求に対する複写処理が実行される。
また、実行部806は、第3の判定部804または第4の判定部805によって要求元のサーバSVの識別子が含まれていると判定された場合に複写処理を実行することにしてもよい。これにより、要求元のサーバSVが複写先LUNの所有権または使用権を有する場合に、複写要求に対する複写処理が実行される。
また、実行部806は、第1の判定部802または第2の判定部803によって要求元のサーバSVの識別子が含まれていると判定され、かつ、第3の判定部804または第4の判定部805によって要求元のサーバSVの識別子が含まれていると判定された場合、複写処理を実行することにしてもよい。これにより、要求元のサーバSVが、複写対象データの所有権または使用権を有し、かつ、複写先LUNの所有権または使用権を有する場合に、複写要求に対する複写処理が実行される。
また、実行部806は、第1の判定部802によって要求元のサーバSVの識別子が含まれていると判定され、かつ、第3の判定部804によって要求元のサーバSVの識別子が含まれていると判定された場合、複写処理を実行することにしてもよい。これにより、要求元のサーバSVが、複写対象データの所有権を有し、かつ、複写先LUNの所有権を有する場合に、複写要求に対する複写処理が実行される。
また、実行部806は、第2の判定部803によって要求元のサーバSVの識別子が含まれていると判定され、かつ、第4の判定部805によって要求元のサーバSVの識別子が含まれていると判定された場合、複写処理を実行することにしてもよい。これにより、要求元のサーバSVが、複写対象データの使用権を有し、かつ、複写先LUNの使用権を有する場合に、複写要求に対する複写処理が実行される。
また、実行部806は、第1の判定部802によって要求元のサーバSVの識別子が含まれていると判定され、かつ、第4の判定部805によって要求元のサーバSVの識別子が含まれていると判定された場合、複写処理を実行することにしてもよい。これにより、要求元のサーバSVが、複写対象データの所有権を有し、かつ、複写先LUNの使用権を有する場合に、複写要求に対する複写処理が実行される。
また、実行部806は、第2の判定部803によって要求元のサーバSVの識別子が含まれていると判定され、かつ、第3の判定部804によって要求元のサーバSVの識別子が含まれていると判定された場合、複写処理を実行することにしてもよい。これにより、要求元のサーバSVが、複写対象データの使用権を有し、かつ、複写先LUNの所有権を有する場合に、複写要求に対する複写処理が実行される。
また、複写対象データを複写先LUNに複写する場合、複写対象データの所有権を元のサーバSVがそのまま有することにしてもよい。この場合、上記実行部806によって実行される複写処理では、複写対象データとともにLUN管理情報も複写元LUNから複写先LUNに複写される。LUN管理情報とは、複写対象データの所有権が設定されたサーバSVを管理するための情報である。ここで、LUNのデータ構造について説明する。
図10は、LUNのデータ構造の具体例を示す説明図である。図10に示すように、LUNのデータ構造は、LUN管理情報1010とデータ部1020を含む。ストレージ装置STは、LUN管理情報1010およびデータ部1020の両方にアクセス可能である。これに対して、サーバSVは、データ部1020に対してのみアクセス可能である。
LUN管理情報1010は、データの所有者、複写元のLUN識別情報および複写先のLUN識別情報を有する。データの所有者は、データ部1020のデータの所有権が設定されたサーバSVを特定するための情報である。ここでは、サーバ名と経路情報の組み合わせによってデータの所有者が表現されている。データの所有者は、サーバSVがデータ部1020に最初にデータを書き込んだときに、ストレージ装置STによって設定される。
複写元のLUN識別情報は、データ部1020のデータの複写元のLUNのLUN識別情報である。複写先のLUN識別情報は、データ部1020のデータの複写先のLUNのLUN識別情報である。複写元のLUN識別情報および複写先のLUN識別情報は、複写処理の起動時に、送信側のストレージ装置STによって更新される。
また、LUN管理情報1010は、複写処理の実行時に複写対象データとともに複写元LUNから複写先LUNに複写される。このため、送信側のストレージ装置STによって更新されたLUN管理情報1010の内容は、受信側のストレージ装置STにも伝播される。
図11は、LUN管理情報の伝播例を示す説明図である。図11において、LUN管理情報1110は、ストレージ装置ST1内のLUN11のLUN管理情報である。また、LUN管理情報1120は、ストレージ装置ST2内のLUN21のLUN管理情報である。
ここでは、サーバSV1が所有権を有するLUN11上のデータを、LUN21に複写した場合のLUN管理情報の内容の伝播例が示されている。具体的には、LUN11上のデータがLUN21に複写された結果、LUN11のLUN管理情報1110の内容が、LUN21のLUN管理情報1120に反映されている。
また、ストレージ装置ST2は、LUN21のLUN管理情報1120が更新されると、所有者情報テーブル600内の所有者情報600−3を更新する。具体的には、ストレージ装置ST2が、所有者情報600−3のデータ所有者を「SV2」から「SV1」に変更する。
さらに、ストレージ装置ST2は、更新された更新後の所有者情報600−3を、サーバ情報テーブル520を参照して、ストレージシステム300内の他のストレージ装置ST1,ST3にブロードキャストする。そして、ストレージ装置ST1,ST3は、更新後の所有者情報600−3を所有者情報テーブル600に登録(上書き)する。これにより、LUN21上のデータのデータ所有者の変更を、ストレージ装置ST1,ST3の所有者情報テーブル600に反映することができる。
なお、サーバSV1が所有権を有するLUN21上のデータを、例えば、ストレージ装置ST3内のLUN31に複写する場合、LUN21のLUN管理情報1120の内容が更新される。具体的には、LUN管理情報1120の複写元のLUN識別情報が「LUN21@SV2」に更新され、複写先のLUN識別情報が「LUN31@SV3」に更新される。そして、LUN21上のデータがLUN31に複写されると、LUN21のLUN管理情報1120の内容が、LUN31のLUN管理情報に反映される。
また、受付部801は、要求元のサーバSVから、複写対象データを任意のLUNに複写する権限のデータ許可要求を受け付ける。データ許可要求とは、複写対象データの使用権を要求するものである。例えば、サーバSV2が、ストレージ装置ST1のLUN11からデータを複写する場合には、LUN11のデータの使用権が必要となる。ここで、サーバSV2がLUN11のデータの使用権を要求するためのデータ許可要求1200について説明する。
図12は、データ許可要求の具体例を示す説明図である。図12において、データ許可要求1200は、要求元サーバ名、LUN識別情報および要求種別を有する。ここで、要求元サーバ名は、データ許可要求1200の要求元のサーバの識別子である。LUN識別情報は、使用権の要求対象となる複写対象データを記憶している複写元のLUNのLUN識別情報である。要求種別は、使用権の要求対象を示す種別である。ここでの要求対象は、複写対象データの使用権のため、要求種別に「DATA」が設定されている。
具体的には、データ許可要求1200は、要求元のサーバSV2が、サーバSV1のLUN11上の複写対象データを複写する権限(使用権)を要求するものである。なお、データ許可要求1200は、例えば、サーバSV2においてデータ許可要求コマンドを実行することで、サーバSV2からストレージ装置ST2に送信される。
図8の説明に戻り、送信部807は、受け付けたデータ許可要求を、複写対象データにアクセス可能な他のサーバSVに直接接続された他のストレージ装置STに送信する。具体的には、例えば、送信部807が、サーバ情報テーブル520を参照して、ストレージシステム300内の自装置とは異なる他のストレージ装置ST1,3にデータ許可要求1200をブロードキャストする。
受信部808は、送信されたデータ許可要求に対する他のサーバSVからのデータ許可応答を、他のストレージ装置STから受信する。ここで、データ許可応答とは、データ許可要求に対する応答結果であり、複写対象データの使用権を許可するか否かを示すものである。
図13は、データ許可応答の具体例を示す説明図である。図13において、データ許可応答1300は、図12に示したデータ許可要求1200に対するサーバSV1からの応答結果を示している。データ許可応答1300は、要求元サーバ名、LUN識別情報、要求種別および可否フラグを有する。
ここで、要求元サーバ名は、データ許可要求1200の要求元のサーバの識別子である。LUN識別情報は、使用権の要求対象となる複写対象データを記憶している複写元のLUNのLUN識別情報である。要求種別は、要求対象を示す種別である。ここでの要求対象は、複写対象データの使用権のため、要求種別に「DATA」が設定されている。
可否フラグは、データ許可要求に対する応答結果を示すフラグである。ここでは、複写対象データの使用権が許可された場合は可否フラグに「ON」が設定され、複写対象データの使用権が許可されなかった場合は可否フラグに「OFF」が設定される。図13の例では、複写対象データの使用権が許可されたため、可否フラグに「ON」が設定されている。
図8の説明に戻り、更新部809は、受信されたデータ許可応答に基づいて、任意の記憶領域に対して複写対象データを複写する権限が設定されたサーバSVの識別子を記憶するテーブルを更新する。具体的には、例えば、更新部809が、受信されたデータ許可応答1300を新たな許可情報(図7に示した許可情報700−2に相当)として、許可情報テーブル700に登録する。これにより、データ許可要求に対する応答結果を、許可情報テーブル700に反映することができる。
また、受信部808は、他のサーバSVからの、自装置に直接接続されたサーバSVがアクセス可能なデータを複写する権限のデータ許可要求を、他のサーバSVに直接接続された他のストレージ装置STから受信する。具体的には、例えば、受信部808が、自装置に直接接続されたサーバSV1が所有権を有するデータの使用権を要求するデータ許可要求を、サーバSV2に直接接続されたストレージ装置ST2から受信する。
この場合、送信部807が、受信されたデータ許可要求をサーバSV1に通知する。そして、サーバSV1において、データ許可要求によって要求されているデータの使用権を許可するか否かの判断が行われる。データの使用権の許否は、例えば、サーバSV1の利用者によって判断される。また、サーバSV1の利用者が利用可否情報を予め作成してサーバSV1に記録しておくことにより、サーバSV1がデータの使用権の許否を自動的に判断することにしてもよい。
ここで、利用可否情報は、例えば、データの使用権を有するサーバSVを表す情報である。サーバSV1は、例えば、データ許可要求によって要求されているデータの使用権を有するサーバSVを表す利用可否情報に、サーバSV2が登録されているか否かを判断する。サーバSV1は、利用可否情報にサーバSV2が登録されている場合、データの使用権を許可する。一方、利用可否情報にサーバSV2が未登録の場合、サーバSV1は、データの使用権を許可しない。
そして、サーバSV1は、データ許可要求の応答結果を示すデータ許可応答をストレージ装置ST1に送信する。このあと、受信部808が、サーバSV1から送信されたデータ許可応答を受信する。そして、送信部807が、受信されたサーバSV1からのデータ許可応答をストレージ装置ST2に送信する。
なお、上記受信部808によって受信されたデータ許可要求のLUN識別情報に自装置に直接接続されたサーバSVのサーバ名が含まれていない場合は、データ許可要求を破棄することにしてもよい。すなわち、受信されたデータ許可要求が、自装置に直接接続されたサーバSVに対するものでない場合はデータ許可要求を破棄する。
また、受付部801は、要求元のサーバSVから、複写先のLUNに任意のデータを複写する権限のLUN許可要求を受け付ける。LUN許可要求とは、複写先のLUNの使用権を要求するものである。例えば、サーバSV2が、ストレージ装置ST1のLUN11へデータを複写する場合には、LUN11の使用権が必要となる。ここで、サーバSV2がLUN11の使用権を要求するためのLUN許可要求1400について説明する。
図14は、LUN許可要求の具体例を示す説明図である。図14において、LUN許可要求1400は、要求元サーバ名、LUN識別情報および要求種別を有する。ここで、要求元サーバ名は、LUN許可要求1400の要求元のサーバの識別子である。LUN識別情報は、使用権の要求対象となる複写先のLUNのLUN識別情報である。要求種別は、使用権の要求対象を示す種別である。ここでの要求対象は、複写先のLUNの使用権のため、要求種別に「LUN」が設定されている。
具体的には、LUN許可要求1400は、要求元のサーバSV2が、サーバSV1のLUN11に任意のデータを複写する権限(使用権)を要求するものである。なお、LUN許可要求1400は、例えば、サーバSV2においてLUN許可要求コマンドを実行することで、サーバSV2からストレージ装置ST2に送信される。
図8の説明に戻り、送信部807は、受け付けたLUN許可要求を、複写先のLUNにアクセス可能な他のサーバSVに直接接続された他のストレージ装置STに送信する。具体的には、例えば、送信部807が、サーバ情報テーブル520を参照して、ストレージシステム300内の自装置とは異なる他のストレージ装置ST1,3にLUN許可要求1400をブロードキャストする。
受信部808は、送信されたLUN許可要求に対する他のサーバSVからのLUN許可応答を、他のストレージ装置STから受信する。ここで、LUN許可応答とは、LUN許可要求に対する応答結果であり、複写先のLUNの使用権を許可するか否かを示すものである。
図15は、LUN許可応答の具体例を示す説明図である。図15において、LUN許可応答1500は、図14に示したLUN許可要求1400に対するサーバSV1からの応答結果を示している。LUN許可応答1500は、要求元サーバ名、LUN識別情報、要求種別および可否フラグを有する。
ここで、要求元サーバ名は、LUN許可要求1400の要求元のサーバの識別子である。LUN識別情報は、使用権の要求対象となる複写先のLUNのLUN識別情報である。要求種別は、要求対象を示す種別である。ここでの要求対象は、複写先のLUNの使用権のため、要求種別に「LUN」が設定されている。
可否フラグは、LUN許可要求に対する応答結果を示すフラグである。ここでは、複写先のLUNの使用権が許可された場合は可否フラグに「ON」が設定され、複写先のLUNの使用権が許可されなかった場合は可否フラグに「OFF」が設定される。図15の例では、複写先のLUNの使用権が許可されなかったため、可否フラグに「OFF」が設定されている。
図8の説明に戻り、更新部809は、受信されたLUN許可応答に基づいて、複写先のLUNに任意のデータを複写する権限が設定されたサーバSVの識別子を記憶するテーブルを更新する。具体的には、例えば、更新部809が、受信されたLUN許可応答1500を新たな許可情報として、許可情報テーブル700に登録する。これにより、LUN許可要求に対する応答結果を、許可情報テーブル700に反映することができる。
また、受信部808は、他のサーバSVからの、自装置に直接接続されたサーバSVがアクセス可能なLUNに任意のデータを複写する権限のLUN許可要求を、他のサーバSVに直接接続された他のストレージ装置STから受信する。具体的には、例えば、受信部808が、自装置に直接接続されたサーバSV1が所有権を有するLUNの使用権を要求するLUN許可要求を、サーバSV2に直接接続されたストレージ装置ST2から受信する。
この場合、送信部807が、受信されたLUN許可要求をサーバSV1に通知する。そして、サーバSV1において、LUN許可要求によって要求されているLUNの使用権を許可するか否かの判断が行われる。LUNの使用権の許否は、例えば、サーバSV1の利用者によって判断される。
そして、サーバSV1は、LUN許可要求の応答結果を示すLUN許可応答をストレージ装置ST1に送信する。このあと、受信部808が、サーバSV1から送信されたLUN許可応答を受信する。そして、送信部807が、受信されたサーバSV1からのLUN許可応答をストレージ装置ST2に送信する。
なお、上記受信部808によって受信されたLUN許可要求のLUN識別情報に自装置に直接接続されたサーバSVのサーバ名が含まれていない場合は、LUN許可要求を破棄することにしてもよい。すなわち、受信されたLUN許可要求が、自装置に直接接続されたサーバSVに対するものでない場合はLUN許可要求を破棄する。
また、セキュリティ強化を目的として、ストレージ装置間で送受信されるデータ許可要求、データ許可応答、LUN許可要求およびLUN許可応答などを暗号化することにしてもよい。ここで、サーバSV1に所有権が設定されたLUN11上のデータの使用権をサーバSV2が要求するためのデータ許可要求1200を暗号化する場合を例に挙げて説明する。
具体的には、例えば、ストレージ装置ST2は、ストレージ装置ST1,ST2が有する共通鍵を用いてデータ許可要求1200を暗号化してストレージ装置ST1に送信する。この場合、ストレージ装置ST1は、暗号化されたデータ許可要求1200をストレージ装置ST1,ST2が有する共通鍵を用いて復号する。
ストレージ装置ST1,ST2が有する共通鍵は、例えば、ストレージ装置ST1,ST2間を接続するRA11とRA21のWWN(World Wide Name)を用いて生成される。また、共通鍵は、各ストレージ装置ST1,ST2のCA(例えば、CA11,CA12,CA21,CA22)のWWNを用いて生成してもよい。
また、サーバSV2になりすました不正なデータ許可要求を排除するため、以下に説明する認証手法を採用することにしてもよい。まず、ストレージ装置ST2は、ストレージ装置ST1,ST2が有する共通鍵を用いてデータ許可要求1200を暗号化して、ストレージ装置ST1およびサーバSV2に送信する。
サーバSV2は、ネットワーク214を介して、暗号化されたデータ許可要求1200をサーバSV1に送信する。つぎに、サーバSV1は、暗号化されたデータ許可要求1200をストレージ装置ST1に送信する。
ストレージ装置ST1は、ストレージ装置ST1,ST2が有する共通鍵を用いて、サーバSV1からの暗号化されたデータ許可要求1200と、ストレージ装置ST2からの暗号化されたデータ許可要求1200とを復号する。そして、ストレージ装置ST1は、復号後のサーバSV1からのデータ許可要求1200と、ストレージ装置ST2からのデータ許可要求1200との一致判定を行う。
ここで、復号後のデータ許可要求1200が一致する場合、ストレージ装置ST1は、復号後のデータ許可要求1200をサーバSV1に通知する。一方、復号後のデータ許可要求1200が不一致の場合、ストレージ装置ST1は、復号後のデータ許可要求1200を破棄する。これにより、サーバSV2になりすました不正なデータ許可要求1200を排除することができる。
なお、上述した説明では、ネットワーク214を介して、暗号化されたデータ許可要求1200をサーバSV2からサーバSV1に送信することにしたが、これに限らない。例えば、サーバSV2の利用者が、可搬型の補助記憶装置に暗号化されたデータ許可要求1200を記憶し、該補助記憶装置をサーバSV1の利用者に手渡しすることにしてもよい。この結果、サーバSV1の利用者によって、補助記憶装置を用いて暗号化されたデータ許可要求1200がサーバSV1に直接入力される。
また、上述した説明では、データ許可要求やLUN許可要求によって要求されているデータやLUNの使用権の許否を判断するために、データ許可要求やLUN許可要求をサーバSVに通知することにしたが、これに限らない。具体的には、例えば、データ許可要求またはLUN許可要求を受信したストレージ装置STが、データやLUNの使用権の許否を判断することにしてもよい。
より具体的には、例えば、ストレージ装置STが、特定のサーバSVからのデータ許可要求に対しては、データの使用権を許可することにしてもよい。また、ストレージ装置STが、特定の時間帯の特定のサーバSVからのデータ許可要求に対しては、データの使用権を許可することにしてもよい。
(ストレージ装置STのデータ複写処理手順)
図16は、本実施の形態にかかるストレージ装置のデータ複写処理手順の一例を示すフローチャートである。図16のフローチャートにおいて、まず、受付部801により、要求元となるサーバSVからの、複写対象データの複写先のLUNに対する複写要求を受け付けたか否かを判断する(ステップS1601)。
ここで、複写要求を受け付けるのを待って(ステップS1601:No)、受け付けた場合(ステップS1601:Yes)、第1の判定部802により、要求元のサーバSVが複写対象データにアクセス可能か否かを判定する(ステップS1602)。具体的には、第1の判定部802が、複数のサーバSVのうち複写対象データにアクセス可能なサーバSVの識別子を記憶するテーブルに、要求元のサーバSVの識別子が含まれているか否かを判定する。
ここで、複写対象データにアクセス可能な場合(ステップS1603:Yes)、ステップS1607に移行する。一方、複写対象データにアクセス不能の場合(ステップS1603:No)、第2の判定部803により、要求元のサーバSVに、複写対象データを任意のLUNに対して複写する権限が設定されているか否かを判定する(ステップS1604)。具体的には、第2の判定部803が、複数のサーバSVのうち複写対象データを任意のLUNに対して複写する権限が設定されたサーバSVの識別子を記憶するテーブルに、要求元のサーバSVの識別子が含まれているか否かを判定する。
ここで、複写対象データを複写する権限が設定されていない場合(ステップS1605:No)、送信部807により、要求元のサーバSVに複写失敗を通知して(ステップS1606)、本フローチャートによる一連の処理を終了する。
一方、複写対象データを複写する権限が設定されている場合(ステップS1605:Yes)、第3の判定部804により、要求元のサーバSVが複写先のLUNにアクセス可能か否かを判定する(ステップS1607)。具体的には、第3の判定部804が、複数のサーバSVのうち複写先のLUNにアクセス可能なサーバSVの識別子を記憶するテーブルに、要求元のサーバSVの識別子が含まれているか否かを判定する。
ここで、複写先のLUNにアクセス可能な場合(ステップS1608:Yes)、ステップS1611に移行する。一方、複写先のLUNにアクセス不能の場合(ステップS1608:No)、第4の判定部805により、要求元のサーバSVに、複写先のLUNに対して任意のデータを複写する権限が設定されているか否かを判定する(ステップS1609)。具体的には、第4の判定部805が、複数のサーバSVのうち複写先のLUNに対して任意のデータを複写する権限が設定されたサーバSVの識別子を記憶するテーブルに、要求元のサーバSVの識別子が含まれているか否かを判定する。
ここで、複写先のLUNに複写する権限が設定されていない場合(ステップS1610:No)、送信部807により、要求元のサーバSVに複写失敗を通知して(ステップS1606)、本フローチャートによる一連の処理を終了する。
一方、複写先のLUNに複写する権限が設定されている場合(ステップS1610:Yes)、実行部806により、複写対象データを複写先のLUNに複写する複写処理を実行して(ステップS1611)、本フローチャートによる一連の処理を終了する。
これにより、要求元のサーバSVが、複写対象データの所有権または使用権を有し、かつ、複写先のLUNの所有権または使用権を有する場合にのみ、複写対象データの複写先のLUNに対する複写処理を実行することができる。
(本データ複写手法の適用例)
図17は、本データ複写手法の適用例を示す説明図(その1)である。図17の(A)において、(1)サーバSV1に所有権が設定されているストレージ装置ST1内のLUN11上のデータが、ストレージ装置ST2内のLUN21に複写されている。
図17の(B)において、新たなサーバSV2がストレージ装置ST2に接続されている。この場合、ストレージ装置ST2内のLUN21上のデータの所有者はサーバSV1のため、サーバSV2はストレージ装置ST2内のLUN21上のデータにアクセスすることができない。
サーバSV2が、ストレージ装置ST2内のLUN21上のデータにアクセスするためには、サーバSV1からLUN21上のデータの使用権を許可してもらう必要がある。そこで、(2)サーバSV2は、LUN21上のデータのデータ許可要求をストレージ装置ST2に送信する。
(3)ストレージ装置ST2は、サーバSV2からのLUN21上のデータのデータ許可要求をストレージ装置ST1に送信する。(4)ストレージ装置ST1は、サーバSV2からのLUN21上のデータのデータ許可要求をサーバSV1に通知する。
ここでは、サーバSV1において、データ許可要求によって要求されているLUN21上のデータの使用権が許可される。(5)サーバSV1は、LUN21上のデータの使用権を許可することを示すデータ許可応答をストレージ装置ST1に通知する。(6)ストレージ装置ST1は、サーバSV1からのデータ許可応答をストレージ装置ST2に送信する。
このあと、サーバSV1からのデータ許可応答が各ストレージ装置ST1,ST2の許可情報テーブル700に反映され、サーバSV2がLUN21上のデータの使用権を有することになる。この結果、サーバSV2は、ストレージ装置ST2内のLUN21上のデータにアクセスすることができる。
図18は、本データ複写手法の適用例を示す説明図(その2)である。図18において、サーバSV1は業務サーバであり、サーバSV2はバックアップサーバである。ここでは、サーバSV2が、ストレージ装置ST1内のLUN11上のデータを、ストレージ装置ST2内のLUN21およびLUN22に複写(バックアップ)する場合を想定する。
ただし、LUN11上のデータの所有権は、サーバSV1に設定されている。LUN21およびLUN22の所有権は、サーバSV2に設定されている。この場合、サーバSV2が、LUN11上のデータをLUN21,LUN22に複写するためには、サーバSV1からLUN11上のデータの使用権を許可してもらう必要がある。
そこで、(1)サーバSV2は、LUN11上のデータのデータ許可要求をストレージ装置ST2に送信する。(2)ストレージ装置ST2は、サーバSV2からのLUN11上のデータのデータ許可要求をストレージ装置ST1に送信する。(3)ストレージ装置ST1は、サーバSV2からのLUN11上のデータのデータ許可要求をサーバSV1に通知する。
ここでは、サーバSV1において、データ許可要求によって要求されているLUN11上のデータの使用権が許可される。(4)サーバSV1は、LUN11上のデータの使用権を許可することを示すデータ許可応答をストレージ装置ST1に通知する。(5)ストレージ装置ST1は、サーバSV1からのデータ許可応答をストレージ装置ST2に送信する。
このあと、サーバSV1からのデータ許可応答が各ストレージ装置ST1,ST2の許可情報テーブル700に反映され、サーバSV2がLUN11上のデータの使用権を有することになる。この結果、サーバSV2は、LUN11上のデータをLUN21に複写(バックアップ)することができる。さらに、サーバSV2は、LUN21上のデータをLUN22に複写(多段コピー)することができる。
このように、LUN11上のデータの複写要求前において、LUN11上のデータの使用権をサーバSV2に設定しておくことで、受信側のサーバSV2の任意のタイミングで、LUN11上のデータのバックアップ処理を行うことができる。また、LUN11上のデータをLUN21,LUN22に複写したことで、サーバSV1は、LUN21上のデータまたはLUN22上のデータをLUN11に複写(リストア)することができる。
図19は、本データ複写手法の適用例を示す説明図(その3)である。図19において、サーバSV1は開発サーバであり、サーバSV2は集約サーバであり、サーバSV3は公開サーバである。ここでは、サーバSV2が、ストレージ装置ST1内のLUN11上のデータを、ストレージ装置ST2内のLUN21に複写する。これにより、サーバSV1によって作成されたLUN11上のデータ(または、プログラム)をLUN21に集約する。
また、サーバSV3が、LUN21上のデータをLUN31に複写する。これにより、サーバSV1によって作成されたLUN11上のデータ(または、プログラム)を、サーバSV3から公開する。ただし、LUN11上のデータの所有権は、サーバSV1に設定されている。LUN21の所有権は、サーバSV2に設定されている。LUN31の所有権は、サーバSV3に設定されている。
この場合、サーバSV2が、LUN11上のデータをLUN21に複写するためには、サーバSV1からLUN11上のデータの使用権を許可してもらう必要がある。
そこで、(1)サーバSV2は、LUN11上のデータのデータ許可要求をストレージ装置ST2に送信する。(2)ストレージ装置ST2は、サーバSV2からのLUN11上のデータのデータ許可要求をストレージ装置ST1に送信する。(3)ストレージ装置ST1は、サーバSV2からのLUN11上のデータのデータ許可要求をサーバSV1に通知する。
ここでは、サーバSV1において、データ許可要求によって要求されているLUN11上のデータの使用権が許可される。(4)サーバSV1は、LUN11上のデータの使用権を許可することを示すデータ許可応答をストレージ装置ST1に通知する。(5)ストレージ装置ST1は、サーバSV1からのデータ許可応答をストレージ装置ST2に送信する。
このあと、サーバSV1からのデータ許可応答が各ストレージ装置ST1,ST2,ST3の許可情報テーブル700に反映され、サーバSV2がLUN11上のデータの使用権を有することになる。この結果、サーバSV2は、LUN11上のデータをLUN21に複写(集約)することができる。
このように、LUN11上のデータの複写要求前において、LUN11上のデータの使用権をサーバSV2に設定しておくことで、受信側のサーバSV2の任意のタイミングで、LUN11上のデータを集約することができる。
つぎに、サーバSV3が、LUN11上のデータをLUN31に複写するためには、サーバSV1からLUN11上のデータの使用権を許可してもらう必要がある。
そこで、(6)サーバSV3は、LUN21上のデータのデータ許可要求をストレージ装置ST2に送信する。(7)ストレージ装置ST2は、サーバSV3からのLUN21上のデータのデータ許可要求をストレージ装置ST1に送信する。(8)ストレージ装置ST1は、サーバSV3からのLUN21上のデータのデータ許可要求をサーバSV1に通知する。
ここでは、サーバSV1において、データ許可要求によって要求されているLUN21上のデータの使用権が許可される。(9)サーバSV1は、LUN21上のデータの使用権を許可することを示すデータ許可応答をストレージ装置ST1に通知する。(10)ストレージ装置ST1は、サーバSV1からのデータ許可応答をストレージ装置ST2に送信する。
このあと、サーバSV1からのデータ許可応答が各ストレージ装置ST1,ST2,ST3の許可情報テーブル700に反映され、サーバSV3がLUN21上のデータの使用権を有することになる。この結果、サーバSV3は、LUN21上のデータをLUN31に複写することができる。
このように、LUN21上のデータの複写要求前において、LUN21上のデータの使用権をサーバSV3に設定しておくことで、受信側のサーバSV3の任意のタイミングで、LUN21上のデータを複写することができる。これにより、サーバSV3が、何らかの障害によりLUN31上のデータが破壊されたことを検出した場合などに、LUN21上のデータをLUN31に複写することができる。
上述した説明では、サーバSV3がLUN21上のデータをLUN31に複写する場合を例に挙げて説明したが、サーバSV2がLUN21上のデータをLUN31に複写することにしてもよい。ただし、この場合はサーバSV2が、LUN21上のデータをLUN31に複写する場合は、サーバSV3からLUN31の使用権を許可してもらう必要がある。
以上説明したように、本実施の形態にかかるストレージ装置STによれば、要求元のサーバSVが、複写対象データの所有権または使用権を有し、かつ、複写先のLUNの所有権または使用権を有する場合に、複写対象データの複写先のLUNに対する複写処理を行うことができる。
これにより、要求元のサーバSVがアクセス可能な複写先のLUNへの複写要求であっても、要求元のサーバSVが所有権または使用権を有していない複写対象データの複写を防ぐことができる。また、要求元のサーバSVがアクセス可能な複写対象データの複写要求であっても、要求元のサーバSVが所有権または使用権を有していない複写先のLUNへの複写を防ぐことができる。
また、ストレージ装置STによれば、複写対象データの所有権を有していない場合であっても、複写要求前に、複写対象データの使用権の許可要求を行うことで、所有権または使用権を有する複写先のLUNへの複写対象データの複写を行うことができる。
また、ストレージ装置STによれば、複写先のLUNの所有権を有していない場合であっても、複写要求前に、複写先のLUNの使用権の許可要求を行うことで、所有権または使用権を有する複写対象データの複写先のLUNへの複写対象データの複写を行うことができる。
また、ストレージ装置STによれば、複写元のLUNから複写先のLUNへの複写対象データの複写時に、複写対象データの所有権を有するサーバが変化しないように管理することができる。これにより、複写対象データが複写された場合であっても、複写対象データの所有権を有するサーバSVを一意に特定することができる。
また、ストレージ装置STによれば、複写対象データおよび複写先のLUNのそれぞれの所有権または使用権を有するサーバSVを、自装置で管理するため、複数のストレージ装置STを統括するサーバ等で一元管理する必要がない。
また、ストレージ装置STによれば、要求元のサーバSVが複写対象データの所有権または使用権を有する場合に、複写先のLUNに対する複写対象データの複写処理を行うことにしてもよい。これにより、要求元のサーバSVがアクセス可能な複写先のLUNへの複写要求であっても、要求元のサーバSVが所有権または使用権を有していない複写対象データの複写を防ぐことができる。
また、ストレージ装置STによれば、要求元のサーバSVが複写先のLUNの所有権または使用権を有する場合に、複写先のLUNに対する複写対象データの複写処理を行うことにしてもよい。これにより、要求元のサーバSVがアクセス可能な複写対象データの複写要求であっても、要求元のサーバSVが所有権または使用権を有していない複写先のLUNへの複写を防ぐことができる。
また、ストレージ装置STによれば、要求元のサーバSVが、複写対象データの所有権を有し、かつ、複写先のLUNの所有権を有する場合に、複写対象データの複写先のLUNに対する複写処理を行うことにしてもよい。これにより、複写対象データおよび複写先のLUNの両方の所有権を有していない要求元のサーバSVからの複写要求に対する複写処理を防ぐことができる。
ストレージ装置STによれば、要求元のサーバSVが、複写対象データの使用権を有し、かつ、複写先のLUNの使用権を有する場合に、複写対象データの複写先のLUNに対する複写処理を行うことにしてもよい。これにより、複写対象データおよび複写先のLUNの両方の使用権を有していない要求元のサーバSVからの複写要求に対する複写処理を防ぐことができる。換言すれば、複写対象データおよび複写先のLUNの両方の所有権を有するサーバSVであっても、複写対象データおよび複写先のLUNの両方の使用権を有していない場合は複写処理が禁止される。
また、ストレージ装置STによれば、要求元のサーバSVが、複写対象データの所有権を有し、かつ、複写先のLUNの使用権を有する場合に、複写対象データの複写先のLUNに対する複写処理を行うことにしてもよい。これにより、複写対象データの所有権を有し、かつ、複写先のLUNの使用権を有するサーバSVからの複写要求に対する複写処理のみ行うことができる。
また、ストレージ装置STによれば、要求元のサーバSVが、複写対象データの使用権を有し、かつ、複写先のLUNの所有権を有する場合に、複写対象データの複写先のLUNに対する複写処理を行うことにしてもよい。これにより、複写対象データの使用権を有し、かつ、複写先のLUNの所有権を有するサーバSVからの複写要求に対する複写処理のみ行うことができる。
以上説明した本実施の形態にかかるストレージ装置、データ複写方法およびストレージシステムによれば、不正なデータ複写を防ぐことができる。
なお、本実施の形態で説明したデータ複写方法は、予め用意されたプログラムをパーソナル・コンピュータやワークステーション等のコンピュータで実行することにより実現することができる。本データ複写プログラムは、ハードディスク、フレキシブルディスク、CD−ROM、MO、DVD等のコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。また、本データ複写プログラムは、インターネット等のネットワークを介して配布してもよい。
上述した実施の形態に関し、さらに以下の付記を開示する。
(付記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)前記第2の受信部は、自装置に直接接続されたサーバとは異なる他のサーバからの、前記サーバがアクセス可能な記憶領域に対して任意のデータを複写する権限の許可要求を、前記他のサーバに直接接続された他のストレージ装置から受信し、
前記第2の送信部は、前記第2の受信部によって受信された前記許可要求に対する前記サーバからの許可応答を前記他のストレージ装置に送信することを特徴とする付記6に記載のストレージ装置。
(付記8)複数のサーバのうち要求元となるサーバからの、複写対象データの複写先の記憶領域に対する複写要求を受け付ける受付部と、
前記受付部によって前記複写要求を受け付けた場合、前記複数のサーバのうち前記複写対象データにアクセス可能なサーバの識別子を記憶する第1のテーブルに、前記要求元のサーバの識別子が含まれているか否かを判定する第1の判定部と、
前記複写要求を受け付けた場合、前記複数のサーバのうち前記複写先の記憶領域にアクセス可能なサーバの識別子を記憶する第2のテーブルに、前記要求元のサーバの識別子が含まれているか否かを判定する第2の判定部と、
前記第1または第2の判定部によって前記要求元のサーバの識別子が含まれていると判定された場合、前記複写対象データを前記複写先の記憶領域に複写する複写処理を実行する実行部と、
を備えることを特徴とするストレージ装置。
(付記9)複数のサーバのうち要求元となるサーバからの、複写対象データの複写先の記憶領域に対する複写要求を受け付ける受付部と、
前記受付部によって前記複写要求を受け付けた場合、前記複数のサーバのうち前記複写対象データを任意の記憶領域に対して複写する権限が設定されたサーバの識別子を記憶する第1のテーブルに、前記要求元のサーバの識別子が含まれているか否かを判定する第1の判定部と、
前記複写要求を受け付けた場合、前記複数のサーバのうち前記複写先の記憶領域に対して任意のデータを複写する権限が設定されたサーバの識別子を記憶する第2のテーブルに、前記要求元のサーバの識別子が含まれているか否かを判定する第2の判定部と、
前記第1または第2の判定部によって前記要求元のサーバの識別子が含まれていると判定された場合、前記複写対象データを前記複写先の記憶領域に複写する複写処理を実行する実行部と、
を備えることを特徴とするストレージ装置。
(付記10)複数のサーバのうち要求元となるサーバからの、複写対象データの複写先の記憶領域に対する複写要求を受け付ける受付部と、
前記受付部によって前記複写要求を受け付けた場合、前記複数のサーバのうち前記複写対象データにアクセス可能なサーバの識別子を記憶する第1のテーブルに、前記要求元のサーバの識別子が含まれているか否かを判定する第1の判定部と、
前記複写要求を受け付けた場合、前記複数のサーバのうち前記複写先の記憶領域に対して任意のデータを複写する権限が設定されたサーバの識別子を記憶する第2のテーブルに、前記要求元のサーバの識別子が含まれているか否かを判定する第2の判定部と、
前記第1または第2の判定部によって前記要求元のサーバの識別子が含まれていると判定された場合、前記複写対象データを前記複写先の記憶領域に複写する複写処理を実行する実行部と、
を備えることを特徴とするストレージ装置。
(付記11)複数のサーバのうち要求元となるサーバからの、複写対象データの複写先の記憶領域に対する複写要求を受け付ける受付部と、
前記受付部によって前記複写要求を受け付けた場合、前記複数のサーバのうち前記複写対象データを任意の記憶領域に対して複写する権限が設定されたサーバの識別子を記憶する第1のテーブルに、前記要求元のサーバの識別子が含まれているか否かを判定する第1の判定部と、
前記複写要求を受け付けた場合、前記複数のサーバのうち前記複写先の記憶領域にアクセス可能なサーバの識別子を記憶する第2のテーブルに、前記要求元のサーバの識別子が含まれているか否かを判定する第2の判定部と、
前記第1または第2の判定部によって前記要求元のサーバの識別子が含まれていると判定された場合、前記複写対象データを前記複写先の記憶領域に複写する複写処理を実行する実行部と、
を備えることを特徴とするストレージ装置。
(付記12)複数のサーバのうち要求元となるサーバからの、複写対象データの複写先の記憶領域に対する複写要求を受け付ける受付工程と、
前記受付工程によって前記複写要求を受け付けた場合、前記複数のサーバのうち前記複写対象データにアクセス可能なサーバの識別子を記憶する第1のテーブルに、前記要求元のサーバの識別子が含まれているか否かを判定する第1の判定工程と、
前記第1の判定工程によって前記要求元のサーバの識別子が含まれていないと判定された場合、前記複数のサーバのうち前記複写対象データを任意の記憶領域に対して複写する権限が設定されたサーバの識別子を記憶する第2のテーブルに、前記要求元のサーバの識別子が含まれているか否かを判定する第2の判定工程と、
前記第1または第2の判定工程によって前記要求元のサーバの識別子が含まれていると判定された場合、前記複写対象データを前記複写先の記憶領域に複写する複写処理を実行する実行工程と、
をコンピュータが実行することを特徴とするデータ複写方法。
(付記13)複数のサーバとストレージ装置とを含むストレージシステムにおいて、
前記ストレージ装置は、
前記複数のサーバのうち要求元となるサーバからの、複写対象データの複写先の記憶領域に対する複写要求を受け付ける受付部と、
前記受付部によって前記複写要求を受け付けた場合、前記複数のサーバのうち前記複写対象データにアクセス可能なサーバの識別子を記憶する第1のテーブルに、前記要求元のサーバの識別子が含まれているか否かを判定する第1の判定部と、
前記複写要求を受け付けた場合、前記複数のサーバのうち前記複写対象データを任意の記憶領域に対して複写する権限が設定されたサーバの識別子を記憶する第2のテーブルに、前記要求元のサーバの識別子が含まれているか否かを判定する第2の判定部と、
前記第1または第2の判定部によって前記要求元のサーバの識別子が含まれていると判定された場合、前記複写対象データを前記複写先の記憶領域に複写する複写処理を実行する実行部と、
を備えることを特徴とするストレージシステム。
600 所有者情報テーブル
700 許可情報テーブル
801 受付部
802 第1の判定部
803 第2の判定部
804 第3の判定部
805 第4の判定部
806 実行部
807 送信部
808 受信部
809 更新部
ST,ST1〜ST3 ストレージ装置
SV,SV1,SV2,SV3 サーバ

Claims (8)

  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の判定部によって前記要求元のサーバの識別子が含まれていると判定された場合、前記複写対象データを前記複写先の記憶領域に複写する複写処理を実行する実行部と、
    を備えることを特徴とするストレージシステム。
JP2010226892A 2010-10-06 2010-10-06 ストレージ装置、データ複写方法およびストレージシステム Expired - Fee Related JP5602572B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2010226892A JP5602572B2 (ja) 2010-10-06 2010-10-06 ストレージ装置、データ複写方法およびストレージシステム
US13/200,594 US20120089567A1 (en) 2010-10-06 2011-09-27 Storage device, data replication method, and storage system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010226892A JP5602572B2 (ja) 2010-10-06 2010-10-06 ストレージ装置、データ複写方法およびストレージシステム

Publications (2)

Publication Number Publication Date
JP2012083803A JP2012083803A (ja) 2012-04-26
JP5602572B2 true JP5602572B2 (ja) 2014-10-08

Family

ID=45925913

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010226892A Expired - Fee Related JP5602572B2 (ja) 2010-10-06 2010-10-06 ストレージ装置、データ複写方法およびストレージシステム

Country Status (2)

Country Link
US (1) US20120089567A1 (ja)
JP (1) JP5602572B2 (ja)

Families Citing this family (98)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8589640B2 (en) 2011-10-14 2013-11-19 Pure Storage, Inc. Method for maintaining multiple fingerprint tables in a deduplicating storage system
US9335942B2 (en) * 2012-04-18 2016-05-10 Avago Technologies General IP (Technologies) Pte. Ltd. Methods and structure for LUN masking in a switching device
US11960371B2 (en) 2014-06-04 2024-04-16 Pure Storage, Inc. Message persistence in a zoned system
US9367243B1 (en) 2014-06-04 2016-06-14 Pure Storage, Inc. Scalable non-uniform storage sizes
US11652884B2 (en) 2014-06-04 2023-05-16 Pure Storage, Inc. Customized hash algorithms
US10574754B1 (en) 2014-06-04 2020-02-25 Pure Storage, Inc. Multi-chassis array with multi-level load balancing
US9218244B1 (en) 2014-06-04 2015-12-22 Pure Storage, Inc. Rebuilding data across storage nodes
US11068363B1 (en) 2014-06-04 2021-07-20 Pure Storage, Inc. Proactively rebuilding data in a storage cluster
US9836234B2 (en) 2014-06-04 2017-12-05 Pure Storage, Inc. Storage cluster
US9003144B1 (en) 2014-06-04 2015-04-07 Pure Storage, Inc. Mechanism for persisting messages in a storage system
US9021297B1 (en) 2014-07-02 2015-04-28 Pure Storage, Inc. Redundant, fault-tolerant, distributed remote procedure call cache in a storage system
US8868825B1 (en) 2014-07-02 2014-10-21 Pure Storage, Inc. Nonrepeating identifiers in an address space of a non-volatile solid-state storage
US9836245B2 (en) 2014-07-02 2017-12-05 Pure Storage, Inc. Non-volatile RAM and flash memory in a non-volatile solid-state storage
US11604598B2 (en) 2014-07-02 2023-03-14 Pure Storage, Inc. Storage cluster with zoned drives
US11886308B2 (en) 2014-07-02 2024-01-30 Pure Storage, Inc. Dual class of service for unified file and object messaging
US9811677B2 (en) 2014-07-03 2017-11-07 Pure Storage, Inc. Secure data replication in a storage grid
US9747229B1 (en) 2014-07-03 2017-08-29 Pure Storage, Inc. Self-describing data format for DMA in a non-volatile solid-state storage
US10853311B1 (en) 2014-07-03 2020-12-01 Pure Storage, Inc. Administration through files in a storage system
US9781054B1 (en) 2014-07-25 2017-10-03 Google Inc. Quota-based resource scheduling
US9082512B1 (en) 2014-08-07 2015-07-14 Pure Storage, Inc. Die-level monitoring in a storage cluster
US10983859B2 (en) 2014-08-07 2021-04-20 Pure Storage, Inc. Adjustable error correction based on memory health in a storage unit
US9483346B2 (en) 2014-08-07 2016-11-01 Pure Storage, Inc. Data rebuild on feedback from a queue in a non-volatile solid-state storage
US9495255B2 (en) 2014-08-07 2016-11-15 Pure Storage, Inc. Error recovery in a storage cluster
US10079711B1 (en) 2014-08-20 2018-09-18 Pure Storage, Inc. Virtual file server with preserved MAC address
US9940234B2 (en) 2015-03-26 2018-04-10 Pure Storage, Inc. Aggressive data deduplication using lazy garbage collection
US10082985B2 (en) 2015-03-27 2018-09-25 Pure Storage, Inc. Data striping across storage nodes that are assigned to multiple logical arrays
US10178169B2 (en) 2015-04-09 2019-01-08 Pure Storage, Inc. Point to point based backend communication layer for storage processing
US9672125B2 (en) 2015-04-10 2017-06-06 Pure Storage, Inc. Ability to partition an array into two or more logical arrays with independently running software
US9817576B2 (en) 2015-05-27 2017-11-14 Pure Storage, Inc. Parallel update to NVRAM
US10846275B2 (en) 2015-06-26 2020-11-24 Pure Storage, Inc. Key management in a storage device
US10983732B2 (en) 2015-07-13 2021-04-20 Pure Storage, Inc. Method and system for accessing a file
US10108355B2 (en) 2015-09-01 2018-10-23 Pure Storage, Inc. Erase block state detection
US11269884B2 (en) 2015-09-04 2022-03-08 Pure Storage, Inc. Dynamically resizable structures for approximate membership queries
US11341136B2 (en) 2015-09-04 2022-05-24 Pure Storage, Inc. Dynamically resizable structures for approximate membership queries
US10762069B2 (en) 2015-09-30 2020-09-01 Pure Storage, Inc. Mechanism for a system where data and metadata are located closely together
US10853266B2 (en) 2015-09-30 2020-12-01 Pure Storage, Inc. Hardware assisted data lookup methods
US9768953B2 (en) 2015-09-30 2017-09-19 Pure Storage, Inc. Resharing of a split secret
US9843453B2 (en) 2015-10-23 2017-12-12 Pure Storage, Inc. Authorizing I/O commands with I/O tokens
US10007457B2 (en) 2015-12-22 2018-06-26 Pure Storage, Inc. Distributed transactions with token-associated execution
US9842154B2 (en) * 2016-04-29 2017-12-12 Netapp, Inc. Secure data replication
US10261690B1 (en) 2016-05-03 2019-04-16 Pure Storage, Inc. Systems and methods for operating a storage system
US11861188B2 (en) 2016-07-19 2024-01-02 Pure Storage, Inc. System having modular accelerators
US9672905B1 (en) 2016-07-22 2017-06-06 Pure Storage, Inc. Optimize data protection layouts based on distributed flash wear leveling
US10768819B2 (en) 2016-07-22 2020-09-08 Pure Storage, Inc. Hardware support for non-disruptive upgrades
US11604690B2 (en) 2016-07-24 2023-03-14 Pure Storage, Inc. Online failure span determination
US10366004B2 (en) 2016-07-26 2019-07-30 Pure Storage, Inc. Storage system with elective garbage collection to reduce flash contention
US10203903B2 (en) 2016-07-26 2019-02-12 Pure Storage, Inc. Geometry based, space aware shelf/writegroup evacuation
US11797212B2 (en) 2016-07-26 2023-10-24 Pure Storage, Inc. Data migration for zoned drives
US11886334B2 (en) 2016-07-26 2024-01-30 Pure Storage, Inc. Optimizing spool and memory space management
US11734169B2 (en) 2016-07-26 2023-08-22 Pure Storage, Inc. Optimizing spool and memory space management
US11422719B2 (en) 2016-09-15 2022-08-23 Pure Storage, Inc. Distributed file deletion and truncation
US9747039B1 (en) 2016-10-04 2017-08-29 Pure Storage, Inc. Reservations over multiple paths on NVMe over fabrics
US10613974B2 (en) 2016-10-04 2020-04-07 Pure Storage, Inc. Peer-to-peer non-volatile random-access memory
US10481798B2 (en) 2016-10-28 2019-11-19 Pure Storage, Inc. Efficient flash management for multiple controllers
US11550481B2 (en) 2016-12-19 2023-01-10 Pure Storage, Inc. Efficiently writing data in a zoned drive storage system
US11307998B2 (en) 2017-01-09 2022-04-19 Pure Storage, Inc. Storage efficiency of encrypted host system data
US9747158B1 (en) 2017-01-13 2017-08-29 Pure Storage, Inc. Intelligent refresh of 3D NAND
US11955187B2 (en) 2017-01-13 2024-04-09 Pure Storage, Inc. Refresh of differing capacity NAND
US10528488B1 (en) 2017-03-30 2020-01-07 Pure Storage, Inc. Efficient name coding
US11016667B1 (en) 2017-04-05 2021-05-25 Pure Storage, Inc. Efficient mapping for LUNs in storage memory with holes in address space
US10516645B1 (en) 2017-04-27 2019-12-24 Pure Storage, Inc. Address resolution broadcasting in a networked device
US10141050B1 (en) 2017-04-27 2018-11-27 Pure Storage, Inc. Page writes for triple level cell flash memory
US11782625B2 (en) 2017-06-11 2023-10-10 Pure Storage, Inc. Heterogeneity supportive resiliency groups
US10425473B1 (en) 2017-07-03 2019-09-24 Pure Storage, Inc. Stateful connection reset in a storage cluster with a stateless load balancer
US10402266B1 (en) 2017-07-31 2019-09-03 Pure Storage, Inc. Redundant array of independent disks in a direct-mapped flash storage system
US10831935B2 (en) 2017-08-31 2020-11-10 Pure Storage, Inc. Encryption management with host-side data reduction
US11354058B2 (en) 2018-09-06 2022-06-07 Pure Storage, Inc. Local relocation of data stored at a storage device of a storage system
US10496330B1 (en) 2017-10-31 2019-12-03 Pure Storage, Inc. Using flash storage devices with different sized erase blocks
US12067274B2 (en) 2018-09-06 2024-08-20 Pure Storage, Inc. Writing segments and erase blocks based on ordering
US11024390B1 (en) 2017-10-31 2021-06-01 Pure Storage, Inc. Overlapping RAID groups
US10545687B1 (en) 2017-10-31 2020-01-28 Pure Storage, Inc. Data rebuild when changing erase block sizes during drive replacement
US10860475B1 (en) 2017-11-17 2020-12-08 Pure Storage, Inc. Hybrid flash translation layer
US10467527B1 (en) 2018-01-31 2019-11-05 Pure Storage, Inc. Method and apparatus for artificial intelligence acceleration
US10976948B1 (en) 2018-01-31 2021-04-13 Pure Storage, Inc. Cluster expansion mechanism
US11036596B1 (en) 2018-02-18 2021-06-15 Pure Storage, Inc. System for delaying acknowledgements on open NAND locations until durability has been confirmed
US12079494B2 (en) 2018-04-27 2024-09-03 Pure Storage, Inc. Optimizing storage system upgrades to preserve resources
US11385792B2 (en) 2018-04-27 2022-07-12 Pure Storage, Inc. High availability controller pair transitioning
US11500570B2 (en) 2018-09-06 2022-11-15 Pure Storage, Inc. Efficient relocation of data utilizing different programming modes
US11868309B2 (en) 2018-09-06 2024-01-09 Pure Storage, Inc. Queue management for data relocation
US10976947B2 (en) 2018-10-26 2021-04-13 Pure Storage, Inc. Dynamically selecting segment heights in a heterogeneous RAID group
WO2020127148A1 (en) * 2018-12-21 2020-06-25 Telefonaktiebolaget Lm Ericsson (Publ) User data traffic handling
US11099986B2 (en) 2019-04-12 2021-08-24 Pure Storage, Inc. Efficient transfer of memory contents
US11487665B2 (en) 2019-06-05 2022-11-01 Pure Storage, Inc. Tiered caching of data in a storage system
US11281394B2 (en) 2019-06-24 2022-03-22 Pure Storage, Inc. Replication across partitioning schemes in a distributed storage system
US11893126B2 (en) 2019-10-14 2024-02-06 Pure Storage, Inc. Data deletion for a multi-tenant environment
US11704192B2 (en) 2019-12-12 2023-07-18 Pure Storage, Inc. Budgeting open blocks based on power loss protection
US11416144B2 (en) 2019-12-12 2022-08-16 Pure Storage, Inc. Dynamic use of segment or zone power loss protection in a flash device
US11847331B2 (en) 2019-12-12 2023-12-19 Pure Storage, Inc. Budgeting open blocks of a storage unit based on power loss prevention
US11188432B2 (en) 2020-02-28 2021-11-30 Pure Storage, Inc. Data resiliency by partially deallocating data blocks of a storage device
US11474986B2 (en) 2020-04-24 2022-10-18 Pure Storage, Inc. Utilizing machine learning to streamline telemetry processing of storage media
US12056365B2 (en) 2020-04-24 2024-08-06 Pure Storage, Inc. Resiliency for a storage system
US11487455B2 (en) 2020-12-17 2022-11-01 Pure Storage, Inc. Dynamic block allocation to optimize storage system performance
US11847324B2 (en) 2020-12-31 2023-12-19 Pure Storage, Inc. Optimizing resiliency groups for data regions of a storage system
US12093545B2 (en) 2020-12-31 2024-09-17 Pure Storage, Inc. Storage system with selectable write modes
US12067282B2 (en) 2020-12-31 2024-08-20 Pure Storage, Inc. Write path selection
US11614880B2 (en) 2020-12-31 2023-03-28 Pure Storage, Inc. Storage system with selectable write paths
US12061814B2 (en) 2021-01-25 2024-08-13 Pure Storage, Inc. Using data similarity to select segments for garbage collection
US11507597B2 (en) 2021-03-31 2022-11-22 Pure Storage, Inc. Data replication to meet a recovery point objective

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7165152B2 (en) * 1998-06-30 2007-01-16 Emc Corporation Method and apparatus for managing access to storage devices in a storage system with access control
JP3575603B2 (ja) * 2001-03-16 2004-10-13 ソニー株式会社 情報処理装置および方法、記録媒体、並びにプログラム
JP3993773B2 (ja) * 2002-02-20 2007-10-17 株式会社日立製作所 ストレージサブシステム、記憶制御装置及びデータコピー方法
JP4704659B2 (ja) * 2002-04-26 2011-06-15 株式会社日立製作所 記憶装置システムの制御方法および記憶制御装置
JP4304308B2 (ja) * 2004-06-15 2009-07-29 日本電気株式会社 ストレージ装置とその論理記憶装置割り当て制御方法
JP4504762B2 (ja) * 2004-08-19 2010-07-14 株式会社日立製作所 ストレージネットワークの移行方法、管理装置、管理プログラムおよびストレージネットワークシステム
JP5057656B2 (ja) * 2005-05-24 2012-10-24 株式会社日立製作所 ストレージシステム及びストレージシステムの運用方法
JP2008117342A (ja) * 2006-11-08 2008-05-22 Hitachi Ltd ストレージシステムおよびリモートコピーを制御するためのコントローラ

Also Published As

Publication number Publication date
JP2012083803A (ja) 2012-04-26
US20120089567A1 (en) 2012-04-12

Similar Documents

Publication Publication Date Title
JP5602572B2 (ja) ストレージ装置、データ複写方法およびストレージシステム
US8301909B2 (en) System and method for managing external storage devices
US8966281B1 (en) Systems and methods for accessing storage or network based replicas of encryped volumes with no additional key management
US8261068B1 (en) Systems and methods for selective encryption of operating system metadata for host-based encryption of data at rest on a logical unit
JP6061171B1 (ja) コンピュータプログラム、秘密管理方法及びシステム
JP5117748B2 (ja) 暗号化機能を備えたストレージ仮想化装置
US7269743B2 (en) Method and apparatus for secure data mirroring a storage system
US20080126813A1 (en) Storage control device and method of controlling encryption function of storage control device
JP4456909B2 (ja) バックアップ方法、ストレージシステム及びそのプログラム
US7783737B2 (en) System and method for managing supply of digital content
US20080228770A1 (en) Method for Performing Recoverable Live Context Migration in a Stacked File System
JP4588486B2 (ja) 計算機システム及び管理計算機とホスト計算機並びにボリューム管理方法
US20080101605A1 (en) Storage system provided with an encryption function
US20090164780A1 (en) Volume management method in a storage apparatus having encryption feature
US20080086612A1 (en) Access right managing method for accessing multiple programs
JP4855516B2 (ja) アクセス制御プログラム、アクセス制御装置およびアクセス制御方法
JP2008522279A (ja) アクセスが制御される仮想ディスク間のオンラインによるデータのセキュリティ伝送システムおよび、これを通じたセキュリティ伝送方法
JP4521865B2 (ja) ストレージシステム、計算機システムまたは記憶領域の属性設定方法
JP2007199756A (ja) 計算機システム及びデータ複製方法
JP2010009306A (ja) ストレージ装置及びストレージ装置のデータ処理方法
JP2004295465A (ja) 計算機システム
JP2009193125A (ja) 暗号鍵を管理するストレージシステム、計算機システム及び方法
US8086873B2 (en) Method for controlling file access on computer systems
JP2009064055A (ja) 計算機システム及びセキュリティ管理方法
JP2007115234A (ja) クロスパーティションコマンドを認定する為の方法と装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130627

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140228

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140408

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140609

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20140729

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140820

R150 Certificate of patent or registration of utility model

Ref document number: 5602572

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313115

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees