JP2012043304A - ディスクアレイ装置およびディスクアレイ装置の制御方法 - Google Patents

ディスクアレイ装置およびディスクアレイ装置の制御方法 Download PDF

Info

Publication number
JP2012043304A
JP2012043304A JP2010185507A JP2010185507A JP2012043304A JP 2012043304 A JP2012043304 A JP 2012043304A JP 2010185507 A JP2010185507 A JP 2010185507A JP 2010185507 A JP2010185507 A JP 2010185507A JP 2012043304 A JP2012043304 A JP 2012043304A
Authority
JP
Japan
Prior art keywords
multiplicity
copy
upper limit
data
disk array
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.)
Pending
Application number
JP2010185507A
Other languages
English (en)
Inventor
Akihiro Ueda
明宏 植田
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
Original Assignee
Fujitsu Ltd
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 filed Critical Fujitsu Ltd
Priority to JP2010185507A priority Critical patent/JP2012043304A/ja
Priority to US13/067,104 priority patent/US20120047327A1/en
Publication of JP2012043304A publication Critical patent/JP2012043304A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • G06F3/0613Improving I/O performance in relation to throughput
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/065Replication mechanisms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0689Disk arrays, e.g. RAID, JBOD
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3409Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
    • G06F11/3433Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment for load management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • G06F11/3485Performance evaluation by tracing or monitoring for I/O devices

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

【課題】回線に適した多重度でデータ転送を実行することを課題とする。
【解決手段】ディスクアレイ装置は、データを記憶するディスク群を有し、ディスク群に記憶されるデータの転送先である転送先装置が接続される回線ごとに、当該回線で多重にデータ転送できる多重度の上限値を記憶する。そして、ディスクアレイ装置は、データ転送を実行する場合に、当該データ転送の転送先装置が接続される回線に対応付けて記憶される上限値を取得する。また、ディスクアレイ装置は、当該回線で現在データ転送されている現在の多重度を取得する。そして、ディスクアレイ装置は、当該データ転送を実行することによって多重度が上限値を超えないと判定された場合に、データ転送を実行する。
【選択図】図2

Description

本発明は、ディスクアレイ装置およびディスクアレイ装置の制御方法に関する。
近年、企業では、業務情報や人事情報など様々な情報を電子データ(以下、単に「データ(data)」という)で管理している。そして、企業では、データを失うことが業務停止や信頼の失墜に繋がることから、災害、人為的な誤動作、クラッキング(Cracking)などによるシステム障害への対策が実施されている。
システム障害の対策としては、遠隔地コピーが知られている。遠隔地コピーでは、データを保存するストレージ装置が設置される場所とは地理的に遠い場所に、データを転送して保存することが実施される。例えば、広域イーサネット(登録商標)や専用線などのリモート回線を用いて転送元装置と転送先装置とを接続し、転送元から転送先に定期的にデータを転送してバックアップする。そして、転送元装置においてシステム障害が発生した場合には、転送先装置に保存されるデータで転送元装置のデータを復旧させる。
また、遠隔地コピーでは、一般業務で使用されるLAN(Local Area Network)とは異なるリモート回線で、転送元装置と転送先装置とを接続する。したがって、遠隔地コピーでは、データのバックアップが一般業務に与える影響は小さい。このように、遠隔地にデータを保存することで、一般業務に支障を来たすことなく、障害時にもデータを復旧することができ、システムの信頼性が向上する。
遠隔地コピーを効率的に実施するストレージ装置として、リモート回線の実行回線速度や回線応答遅延時間などの回線情報に基づいて多重度を設定し、設定した多重度でデータ転送を実行するストレージ装置が知られている。例を挙げると、回線情報に基づいて、並列に実行できるコピーの実行数を設定し、設定した実行数でデータコピーを実行することが知られている。一例としては、ストレージ装置は、多重度を5と設定した場合、5つのデータコピーを並列に実行する。
特開2004−145855号公報 特開2006−318491号公報
しかしながら、従来のリモート回線の回線情報に基づいて多重度を設定するストレージ装置では、回線に適した多重度でデータ転送を実行することができないという課題があった。
例えば、従来の技術では、1台の転送元ストレージ装置と複数台の転送先ストレージ装置とが同一のリモート回線で接続される場合に、ストレージ装置間ごとに多重度が設定される。このため、各ストレージ間で同時にデータ転送を実行した場合には、リモート回線が許容できるデータ転送量を超えてしまい、回線に適した多重度でデータ転送を実行することができない場合がある。
一例として、転送元ストレージ装置Aと転送先ストレージ装置B、および、転送元ストレージ装置Aと転送先ストレージ装置Cとが、500Mbpsで許容多重度が8であるリモート回線に共有で接続されているとする。この場合、転送元ストレージ装置Aと転送先ストレージ装置Bとの間で「500Mbpsで8多重」が多重度として決定され、転送元ストレージ装置Aと転送先ストレージ装置Cとの間でも「500Mbpsで8多重」が多重度として設定される。
この結果、転送元ストレージ装置Aから転送先ストレージ装置Bへのデータ転送と、転送元ストレージ装置Aから転送先ストレージ装置Cへのデータ転送を同時に実行した場合には、リモート回線上に16多重のデータ転送が実行される。これでは、リモート回線の許容範囲を超えてしまう。したがって、従来の技術では、それぞれのストレージ装置に「250Mbpsで4多重」などの設定変更を行い、同時に実行してもリモート回線の許容範囲を超えない多重度に変更してデータ転送を実行することとなる。
すなわち、従来の手法では、決定した多重度でデータ転送が実行できずに、多重度を再設定した上でデータ転送を実行しなければならない場合があり、効率的でない。
開示の技術は、上記に鑑みてなされたものであって、回線に適した多重度でデータ転送を実行することが可能であるディスクアレイ装置およびディスクアレイ装置の制御方法を提供することを目的とする。
本願の開示するディスクアレイ装置およびディスクアレイ装置の制御方法は、一つの態様において、データを記憶する記憶部に記憶されるデータの転送先である転送先装置が接続される回線ごとに、当該回線を用いて並列にデータ転送できる多重度の上限値を転送多重度記憶部に記憶する。そして、データ転送を実行する場合に、当該データ転送の転送先装置が接続される回線に対応付けて前記転送多重度記憶部に記憶される前記上限値と、当該回線で現在データ転送されている現在の多重度とに基づいて、当該データ転送を実行することによって多重度が前記上限値を超えないか否かを判定する多重度判定部を有する。さらに、前記多重度判定部によって前記上限値を超えないと判定された場合に、前記データ転送を実行する実行制御部とを有する。
本願の開示するディスクアレイ装置およびディスクアレイ装置の制御方法の一つの態様によれば、回線に適した多重度でデータ転送を実行することが可能であるという効果を奏する。
図1は、実施例1に係るディスクアレイ装置を含むリモートコピーシステムの全体構成を示す図である。 図2は、実施例2に係るディスクアレイ装置の構成を示すブロック図である。 図3は、リモート回線テーブルに記憶されるリモート回線情報の例を示す図である。 図4は、ディスク情報テーブルに記憶されるディスク情報の例を示す図である。 図5は、セッション情報テーブルに記憶されるセッション情報の例を示す図である。 図6は、実施例2に係るREC経路生成処理の流れを示すフローチャートである。 図7は、実施例2に係るデータコピー実行処理の流れを示すフローチャートである。 図8は、実施例2に係るデータコピー実行後の処理の流れを示すフローチャートである。 図9は、実施例3に係るREC経路生成処理の流れを示すフローチャートである。 図10は、実施例3に係るディスク情報テーブルに記憶されるディスク情報の例を示す図である。 図11は、実施例3に係るデータコピー実行処理の流れを示すフローチャートである。 図12は、データ転送時のパスフェイルオーバー処理の流れを示すフローチャートである。
以下に、本願の開示するディスクアレイ装置およびディスクアレイ装置の制御方法の実施例を図面に基づいて詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。
図1は、実施例1に係るディスクアレイ装置を含むリモートコピーシステムの全体構成を示す図である。図1に示すように、このシステムは、ディスクアレイ装置A10とディスクアレイ装置B11とスイッチ15とスイッチ16とスイッチ17とスイッチ18とを有する。そして、ディスクアレイ装置A10とディスクアレイ装置B11とは、広域イーサネット(登録商標)やLAN(Local Area Network)などのネットワークであるリモート回線1およびリモート回線2を介して相互に通信可能に接続される。
図1に示すリモートコピーシステムでは、ディスクアレイ装置A10とディスクアレイ装置B11とを地理的に遠い遠隔地に設置し、キャリア等が異なるリモート回線1およびリモート回線2で接続することで、回線を冗長化している。このシステムは、ディスクアレイ装置A10からディスクアレイ装置B11へデータをコピーする、いわゆる遠隔地コピーを実現するものであり、例えば二重化切り離し方式等を用いたREC(Remote Equivalent Copy)で実現する。
なお、二重化切り離し方式とは、業務データと同期しながらコピーを行うとともに、二度目以降のコピーでは前回との差分だけをコピーするサスペンド・レジューム機能を有する方式であるが、本実施例はこの方式に限定されるものではない。例えば、データのポインタのみを先にコピーした後に、任意のタイミングで実データをバックグラウンドでコピーするバックグラウンドコピー方式や、データ更新時に更新前のデータのみをコピーするコピー・オン・ライト方式などを用いることができる。つまり、本実施例の開示するディスクアレイ装置には、任意の方式を用いて遠隔地コピーを実施することができる。
このようなシステムにおけるディスクアレイ装置A10は、CA(チャネルアダプタ)10aとスイッチ15とをファイバーチャネル(FC)などで接続し、CA10cとスイッチ15とをFCなどで接続する。また、ディスクアレイ装置A10は、CA10bとスイッチ17とをFCなどで接続し、CA10dとスイッチ17とをFCなどで接続する。このディスクアレイ装置A10は、複数のディスクでRAID(Redundant Arrays of Inexpensive Disks)を形成してデータを記憶する装置であり、本実施例ではデータをディスクアレイ装置B11にコピーするコピー元装置として機能する。
そして、ディスクアレイ装置A10は、ディスクアレイ装置B11との間の物理配線を用いて、論理的経路であるRECパス1〜RECパス4を内部的に定めている。RECパス1は、ディスクアレイ装置A10のCA10aとディスクアレイ装置B11のCA11aとの間の論理経路である。RECパス2は、ディスクアレイ装置A10のCA10bとディスクアレイ装置B11のCA11bとの間の論理経路である。RECパス3は、ディスクアレイ装置A10のCA10cとディスクアレイ装置B11のCA11cとの間の論理経路である。RECパス4は、ディスクアレイ装置A10のCA10dとディスクアレイ装置B11のCA11dとの間の論理経路である。
ディスクアレイ装置B11は、CA11aとスイッチ16とをFCなどで接続し、CA11cとスイッチ16とをFCなどで接続する。また、ディスクアレイ装置B11は、CA11bとスイッチ17とをFCなど接続し、CA11dとスイッチ17とをFCなどで接続する。このディスクアレイ装置B11も同様に、複数のディスクでRAIDを形成してデータを記憶する装置であり、本実施例ではディスクアレイ装置A10からデータを受信して記憶するコピー先装置として機能する。
スイッチ15は、FCなどを用いてディスクアレイ装置A10と接続するとともに、リモート回線1でスイッチ16と接続するFCスイッチなどのネットワーク機器である。同様に、スイッチ17は、FCなどを用いてディスクアレイ装置A10と接続するとともに、リモート回線2でスイッチ18と接続するネットワーク機器である。また、スイッチ16は、FCなどを用いてディスクアレイ装置B11と接続するとともに、リモート回線1でスイッチ15と接続するネットワーク機器である。同様に、スイッチ18は、FCなどを用いてディスクアレイ装置B11と接続するとともに、リモート回線2でスイッチ17と接続するネットワーク機器である。
なお、スイッチ15〜スイッチ18は、FCスイッチに限定されるものではなく、ディスクアレイ装置と接続するプロトコルやリモート回線の種別によって、様々な機器を用いることができる。例えば、スイッチとディスクアレイ装置との間をiSCSI(Internet Small Computer System Interface)で接続したり、リモート回線にイーサネット(登録商標)を用いる場合には、ルータやL3スイッチなどのネットワーク機器を用いたりすることができる。
また、図1では、コピー元装置とコピー先装置とが1対1で接続されている例で説明するが、本実施例はこれに限定されるものではなく、1対NまたはN対1、N対N(N:自然数)で接続した場合であっても、本実施例で開示する手法を適用することができる。また、図1に図示したスイッチの台数や各ディスクアレイ装置のCA数についても、これに限定されるものではない。
このような状態において、ディスクアレイ装置A10は、ディスクに記憶されるデータのコピー先であるディスクアレイ装置B11が接続されるリモート回線ごとに、当該リモート回線で多重にデータ転送できる多重度の上限値を記憶する。そして、ディスクアレイ装置A10は、データのコピーを実行する場合に、ディスクアレイ装置B11が接続されるリモート回線に対応付けて記憶される上限値を取得する。また、ディスクアレイ装置A10は、当該リモート回線で現在データ転送されている現在の多重度を取得する。続いて、ディスクアレイ装置A10は、上限値と現在の多重度とに基づいて、当該コピーを実行することによって当該リモート回線で動作する多重度が上限値を超えないか否かを判定する。そして、ディスクアレイ装置A10は、上限値を超えないと判定された場合に、データコピーを実行する。
例えば、ディスクアレイ装置A10は、リモート回線1を用いてディスクアレイ装置B11にコピーセッションを実行する際にリモート回線1の多重度が上限値以内か否かを判定し、上限値以内である場合にのみコピーセッションを実行する。つまり、ディスクアレイ装置A10は、リモート回線ごとにコピーセッションの実行状況を管理し、実行状況が許容範囲内にある場合にはデータコピーを実行し、実行状況が許容範囲を超える場合にはデータコピーを抑止する。このように、ディスクアレイ装置A10は、リモート回線が許容できる多重度を最大限に利用してコピーを実行することができる。この結果、リモート回線に適した多重度でデータ転送を実行することが可能である。
次に、本実施例の開示するディスクアレイ装置の一例について説明する。実施例2では、ディスクアレイ装置の構成、処理の流れ、実施例2による効果について順に説明する。ここで説明するディスクアレイ装置は、コピーを実施するコピー元装置であり、図1の例ではディスクアレイ装置A10に対応する。なお、コピーの方式やリモート回線等については、実施例1と同様なので、ここでは省略する。
[ディスクアレイ装置の構成]
まず、本実施例の開示するディスクアレイ装置の構成について説明する。図2は、実施例2に係るディスクアレイ装置の構成を示すブロック図である。図2に示すように、ディスクアレイ装置20は、CA20a〜CA20dと、ディスク群21と、コントローラ部22とを有する。
CA20a〜CA20dは、リモート回線を介して、コピー先のディスクアレイ装置に接続し、コピー先のディスクアレイ装置とのデータ送受信を制御するインタフェースである。例えば、CA20a〜CA20dは、FCなどでFCスイッチと接続され、FCスイッチを介してリモート回線上に接続される。そして、CA20a〜CA20dは、FCスイッチを介してコピー先にデータを送信する。また、ディスクアレイ装置20は、自装置のCA20a〜CA20dとコピー先装置のCAとの間にある物理配線を用いて管理者等によって内部的に定められた、論理的経路であるRECパスをメモリ25等に記憶する。
ディスク群21は、複数のディスクを有してRAID−0やRAID−5などのRAIDを形成して各種データを記憶する記憶部である。また、ディスク群21が有するディスクは、例えばHDD(Hard Disk Drive)やSSD(Solid State Disk)などのディスクであり、様々なディスクを用いることができる。
コントローラ部22は、ディスク群21に対するデータの書き込みや読み込みなどのデータ制御や、ディスク群21に対するデータを他のディスクアレイ装置にコピーするコピー制御を実施する処理部である。このコントローラ部22は、チャネルアダプタ23と、デバイスアダプタ24と、メモリ25と、制御部30とを有する。
チャネルアダプタ23は、ディスクアレイ装置20に対してデータの書き込みやデータの読み出しを実施するホストサーバとの間の通信を制御するインタフェースであり、FCやiSCSI等を用いてホストサーバと接続する。例えば、チャネルアダプタ23は、ホストサーバから受信したデータ書き込み要求を制御部30に出力し、書き込み結果を制御部30から受信してホストサーバに送信する。
また、チャネルアダプタ23は、ホストサーバから受信したデータ読み出し要求を制御部30に出力し、読み出された結果を制御部30から受信してホストサーバに送信する。また、チャネルアダプタ23は、ディスクアレイ装置20を管理する管理者の端末と接続され、RECパスの設定やRAID設定などの情報を受け付けて制御部30に出力する。
デバイスアダプタ24は、FC等を用いてディスク群21と接続し、ディスク群21との間の通信を制御するイニシエータなどである。例えば、デバイスアダプタ24は、制御部30から受信したディスク群21上の書き込み位置にデータを書き込み、その結果を制御部30に出力する。また、デバイスアダプタ24は、制御部30から受信したディスク群21上の読み出し位置からデータを読み出して制御部30に出力する。
メモリ25は、制御部30がデータのコピーを実行する際に必要とする各種情報を記憶する記憶部であり、例えばリモート回線テーブル26とディスク情報テーブル27とセッション情報テーブル28とを有する。
リモート回線テーブル26は、ディスク群21に記憶されるデータの転送先である転送先装置が接続されるリモート回線ごとに、当該リモート回線で多重にデータ転送できる多重度の上限値と、リモート回線で現在データコピーしている現在の多重度とを記憶する。図3は、リモート回線テーブルに記憶されるリモート回線情報の例を示す図である。例えば、リモート回線テーブル26は、図3に示すように、「リモート回線ID、コピー先装置1、コピー先装置2、・・・、コピー先装置N(Nは任意の自然数)、多重度(動作可能数、動作数)、RECパス(ID、状態)」を記憶する。
ここで記憶される「リモート回線ID」は、オペレータ等によって指定されたり、ディスクアレイ装置が自動的に割り振ったりする、リモート回線を一意に識別する識別子である。「コピー先装置1、コピー先装置2、・・・、コピー先装置N」は、当該リモート回線で接続されるコピー先のディスクアレイ装置を示すホスト名などの識別子である。「多重度(動作可能数)」は、当該リモート回線でコピーセッションが実行できる多重度の上限値であり、言い換えると、当該リモート回線上で同時に動作できるコピー数である。なお、「多重度(動作可能数)」は、リモート回線の実行回線速度や回線応答遅延時間等から、リモート回線ごとに一意に決定される。したがって、ディスクアレイ装置間が複数のリモート回線で接続されている場合には、リモート回線ごとに異なる値となることもある。
「多重度(動作数)」は、当該リモート回線で現在動作しているコピーセッションの多重度である。つまり、この「多重度(動作数)」は、現在同時に実行しているコピー通信の数であり、リモート回線の現在時点における負荷を示している。「RECパス(ID)」は、ディスクアレイ装置20内で内部的に定められたコピー経路を示すRECパスを一意に識別する識別子である。「RECパス(状態)」は、RECパスの状態を示す情報であり、正常に動作しており通信可能な場合には「正常」、通信不可能な場合には「異常」が格納される。
図3の場合、「リモート回線ID=0」であるリモート回線には、ディスクアレイ装置Bがコピー先装置として接続されるとともに、「ID=0x00、0x02、0x04、0x06」の4つのRECパスが設定されており、いずれも正常に動作している。このリモート回線には、動作可能な多重度の上限値として「20」が設定されており、現在、5個(5多重)のデータ通信が実行されている。
また、「リモート回線ID=1」であるリモート回線には、ディスクアレイ装置CとDがコピー先装置として接続されるとともに、「ID=0x01、0x03、0x05、0x07」の4つのRECパスが設定されており、いずれも通信不可能な異常状態である。このリモート回線には、動作可能な多重度の上限値として「50」が設定されており、現在、データ通信が実行されていない。
また、「リモート回線ID=2」であるリモート回線には、ディスクアレイ装置EとFがコピー先装置として接続されるとともに、「ID=0x08、0x0A」の2つのRECパスが設定されており、いずれも正常に動作している。このリモート回線には、動作可能な多重度の上限値として「30」が設定されており、現在、28個のデータ通信が実行されている。
また、「リモート回線ID=3」であるリモート回線には、ディスクアレイ装置Gがコピー先装置として接続されるとともに、「ID=0x09、0x0B」の2つのRECパスが設定されており、いずれも通信不可能な異常状態である。このリモート回線には、動作可能な多重度の上限値として「10」が設定されており、現在、データ通信が実行されていない。なお、図3に示した数字の羅列や文字の羅列に特段の意味はなく、あくまで例示であり、これに限定されるものではない。
図2に戻り、ディスク情報テーブル27は、ディスク群21で形成されるRAIDグループごとに、当該RAIDグループに対して多重にアクセスできる多重度の上限値と、当該RAIDグループに対して現在アクセスしている現在の多重度とを記憶する。また、ディスク情報テーブル27は、コピー先装置で形成されるRAIDグループごとに、当該RAIDグループに対してアクセスできる多重度の上限値と、当該RAIDグループに対して現在アクセスしている現多重度とを記憶する。図4は、ディスク情報テーブルに記憶されるディスク情報の例を示す図である。例えば、ディスク情報テーブル27は、図4に示すように、「筐体ID、RAIDグループ、LUN(Logical Unit Number)、多重度(動作可能数、動作数)」を記憶する。
ここで記憶される「筐体ID」は、自装置またはコピー先のディスクアレイ装置を一意に識別する装置名などの識別子である。「RAIDグループ」は、ディスク群21またはコピー先装置で形成されているRAIDグループを識別する識別子であり、物理ディスクを組み合わせた1つの論理ディスクを構成するグループを識別する識別子である。「LUN」は、ディスク群21またはコピー先装置内の論理ボリュームを識別する識別子であり、RAIDグループから1つ又は複数に分割して作成された論理ボリュームとして、ディスクアレイ装置が認識する単位である。
「多重度(動作可能数)」は、当該RAIDグループに対してアクセスできる多重度の上限値である。つまり、この「多重度(動作可能数)」は、コピーの動作数に限られず、データ書き込みや読み出しなどの様々なディスクアクセスを同時に実行できる数であり、RAIDグループが許容できる最大の負荷を示している。なお、この「多重度(動作可能数)」は、ディスクの種類や容量等によって一意に決定される。
「多重度(動作数)」は、当該RAIDグループに現在アクセスしている多重度である。つまり、この「多重度(動作数)」は、コピーの動作数やデータ参照、データ書き込みなどを含む、現在同時に実行しているディスクアクセスの数であり、RAIDグループの現在時点における負荷を示している。この「多重度(動作数)」は、コピーセッションの実行や他のディスクアクセスが実行された場合にインクリメントされ、コピーセッションが終了や他のディスクアクセスが終了した場合にデクリメントされる。
図4の場合、「筐体ID=Z」である自装置には、「001」と「002」と「003」のRAIDグループが形成されている。「001」のRAIDグループは、「ID=0x00、0x01、0x02」の3つのLUNで形成されるとともに、動作可能な多重度の上限値として「10」が設定されており、現在、2個のアクセスが実行されている。同様に、「002」のRAIDグループは、「ID=0x03、0x04、0x05」の3つのLUNで形成されるとともに、動作可能な多重度の上限値として「10」が設定されており、現在、5個のアクセスが実行されている。また、「003」のRAIDグループは、「ID=0x06、0x07、0x08」の3つのLUNで形成されるとともに、動作可能な多重度の上限値として「10」が設定されており、現在、3個のアクセスが実行されている。
また、「筐体ID=A」であるコピー先装置には、「001」と「002」と「003」のRAIDグループが形成されている。「001」のRAIDグループは、「ID=0x00、0x01、0x02」の3つのLUNで形成されるとともに、動作可能な多重度の上限値として「10」が設定されており、現在、1個のアクセスが実行されている。同様に、「002」のRAIDグループは、「ID=0x03、0x04、0x05」の3つのLUNで形成されるとともに、動作可能な多重度の上限値として「10」が設定されており、現在、1個のアクセスが実行されている。また、「003」のRAIDグループは、「ID=0x06、0x07、0x08」の3つのLUNで形成されるとともに、動作可能な多重度の上限値として「10」が設定されており、現在、4個のアクセスが実行されている。
また、「筐体ID=B」であるコピー先装置には、「001」と「002」と「003」のRAIDグループが形成されている。「001」のRAIDグループは、「ID=0x00、0x01、0x02」の3つのLUNで形成されるとともに、動作可能な多重度の上限値として「5」が設定されており、現在、アクセスが実行されていない。同様に、「002」のRAIDグループは、「ID=0x03、0x04、0x05」の3つのLUNで形成されるとともに、動作可能な多重度の上限値として「5」が設定されており、現在、アクセスが実行されていない。また、「003」のRAIDグループは、「ID=0x06、0x07、0x08」の3つのLUNで形成されるとともに、動作可能な多重度の上限値として「5」が設定されており、現在、2個のアクセスが実行されている。なお、図4に示した数字の羅列や文字の羅列に特段の意味はなく、あくまで例示であり、これに限定されるものではない。また、コピー先装置における現在のアクセス数とは、コピー元装置が実施するコピー動作であるので、コピー元装置は、コピー先装置における現在のアクセス数を把握することができる。このように、コピー動作を把握することから、コピー動作に伴わないアクセスは無視できる。
図2に戻り、セッション情報テーブル28は、管理者等によって生成されるデータであって、コピー対象のデータに関する情報を示すコピーセッションを記憶する。図5は、セッション情報テーブルに記憶されるセッション情報の例を示す図である。例えば、セッション情報テーブル28は、図5に示すように、「セッションID、コピー元LUN、コピー先LUN、コピー先装置、コピー種別」を記憶する。図5に示した情報以外にも、コピーセッションの状態を示す情報として「実行中」、「未実行」、「異常終了」などを記憶するようにしてもよい。また、セッション情報テーブル28に記憶される情報は、実行されて終了した後に削除され、異常終了した場合には新たに生成されるようにしてもよい。
ここで記憶される「セッションID」は、コピー対象のデータに関する情報を示すコピーセッションを識別する識別子である。「コピー元LUN」は、コピー対象のデータが記憶される論理ボリュームの識別子であり、「コピー先LUN」は、コピー先の論理ボリュームの識別子である。「コピー先装置」は、コピー先のディスクアレイ装置を識別するホスト名などの識別子であり、自装置内のデータコピーを示す場合には「−」が格納される。「コピー種別」は、サーバのCPU(Central Processing Unit)を使用せずにディスクアレイ装置だけで高速にコピーを実施するアドバンスト・コピー機能の手法を示し、例えば、遠隔地コピーの場合には「REC」が格納される。
また、装置内のボリュームコピーの場合、「コピー種別」には、「EC(Equivalent Copy)」、「OPC(One Point Copy)」、「QuickOPC」、「SnapOPC」、「SnapOPC+」などが格納される。「EC」は、2重化切り離し方式を用いてバックアップを作成する機能であり、「OPC」は、バックグラウンド方式を用いてバックアップを作成する機能である。「QuickOPC」は、OPC」と同様にバックグランド方式を用いたバックアップを作成する機能であるが、2度目以降のコピー指示では差分のみのデータをコピーする機能である。「SnapOPC」は、コピー元データの更新前のデータをコピーする方式であり、「SnapOPC+」は、コピーオンライト方式を用いたスナップショットを作成する機能である。
図5の場合、「セッションID=01」のコピーセッションは、自装置であるディスクアレイ装置20におけるディスク群21のLUN「0x01」のデータを「ディスクアレイ装置B」のLUN「0x01」に遠隔地コピーすることを示している。また、「セッションID=02」のコピーセッションは、ディスク群21のLUN「0x03」のデータを「ディスクアレイ装置A」のLUN「0x03」に遠隔地コピーすることを示している。また、「セッションID=03」のコピーセッションは、ディスク群21のLUN「0x02」のデータを「ディスクアレイ装置B」のLUN「0x02」に遠隔地コピーすることを示している。
また、「セッションID=04」のコピーセッションは、自装置内のディスク群21のLUN「0x05」のデータを、同じディスク群21のLUN「0x04」にEC方式でコピーすることを示している。また、「セッションID=05」のコピーセッションは、自装置内のディスク群21のLUN「0x11」のデータを、同じディスク群21のLUN「0x10」にOPC方式でコピーすることを示している。なお、図5に示した数字の羅列や文字の羅列に特段の意味はなく、あくまで例示であり、これに限定されるものではない。
図2に戻り、制御部30は、データコピーやRAIDに関する各種制御を実施する処理部であり、情報設定部31と多重度監視部32とセッション生成部33とリモート回線判定部34とコピー元判定部35とコピー先判定部36と転送実行部37とを有する。また、制御部30は、ディスク群21のRAID構成やLUNなどを管理するRAIDコントローラ機能も有している。
情報設定部31は、管理者等による操作を受け付けて、リモート回線テーブル26に各種情報を格納する。また、情報設定部31は、管理者等による操作を受け付けて、ディスクアレイ装置20で内部的に定められた論理的経路であるRECパスを生成する。例えば、情報設定部31は、チャネルアダプタ23を介して接続される管理者端末等から、「リモート回線ID、コピー先装置1〜N、多重度(動作可能数)、RECパス(ID、状態)」を受け付ける。そして、情報設定部31は、受け付けた情報をリモート回線テーブル26に格納する。
なお、情報設定部31は、リモート回線テーブル26の「リモート回線ID、コピー先装置1〜N」については、PING等の既存の手法によって自動的に取得することもできる。また、情報設定部31は、リモート回線テーブル26の「多重度(動作可能数)」については、管理者端末からリモート回線の実行回線速度や回線応答遅延時間等を受け付けて、既存の手法によって算出することもできる。
また、情報設定部31は、ディスク情報テーブル27に各種情報を格納する。例えば、情報設定部31は、制御部30が有するRAIDコントローラによって設定された自装置の「筐体ID、RAIDグループ、LUN、多重度(動作可能数)」をRAIDコントローラから取得する。そして、情報設定部31は、取得した情報を自装置のディスク情報としてディスク情報テーブル27に格納する。
また、情報設定部31は、各コピー先装置に接続して各コピー先装置で設定されている「筐体ID、RAIDグループ、LUN、多重度(動作可能数)」を取得する。そして、情報設定部31は、取得した情報をコピー先装置のディスク情報としてディスク情報テーブル27に格納する。
なお、情報設定部31は、ディスク情報テーブル27の「筐体ID、RAIDグループ、LUN」については、チャネルアダプタ23を介して接続される管理者端末等から受け付けるようにしてもよい。また、情報設定部31は、ディスク情報テーブル27の「多重度(動作可能数)」については、ディスクの種類や容量等によって自動的に特定することもできる。
図2に戻り、多重度監視部32は、リモート回線ごとに、回線上で現在データコピーが実行されている現在の多重度を監視する。また、多重度監視部32は、コピー元のRAIDグループごとに、RAIDグループに対して実行されているアクセスの現在の多重度を監視する。また、多重度監視部32は、コピー先のRAIDグループごとに、RAIDグループに対して実行されているアクセスの現在の多重度を監視する。なお、多重度監視部32は、ディスクアレイ装置20が起動した後、常に監視するようにしてもよく、定期的に監視するようにしてもよく、データコピーを開始するタイミングで監視するようにしてもよい。
例えば、多重度監視部32は、リモート回線ごとに、実行されているコピーセッションの数を監視する。一例としては、多重度監視部32は、コピーセッションが新たに実行された場合には、実行されたリモート回線に対応付けてリモート回線テーブル26に記憶される「多重度(動作数)」をインクリメントする。また、多重度監視部32は、実行されていたコピーセッションが終了した場合には、終了したリモート回線に対応付けてリモート回線テーブル26に記憶される「多重度(動作数)」をデクリメントする。なお、コピーセッションが新たに実行されるとは、例えば、図5に示したセッション情報のうち、未実行のセッションが実行される場合や既に実行されたが未完了で終了したセッションが新たに実行される場合などのことである。
具体例を挙げると、多重度監視部32は、コピーセッション「ID=01」が実行された場合、セッション情報テーブル28を参照し、コピー先装置「B」を特定する。続いて、多重度監視部32は、リモート回線テーブル26において、特定したコピー先装置「B」が接続されるリモート回線「0」の「多重度(動作数)」をインクリメントする。同様に、多重度監視部32は、コピーセッション「ID=01」が終了した場合、セッション情報テーブル28を参照し、コピー先装置「B」を特定する。続いて、多重度監視部32は、リモート回線テーブル26において、特定したコピー先装置「B」が接続されるリモート回線「0」の「多重度(動作数)」をデクリメントする。
また、多重度監視部32は、コピー元である自装置のディスク群21で形成されているRAIDグループに対するアクセス等を計数し、計数したアクセス数等を動作数としてディスク情報テーブル27に格納する。つまり、多重度監視部32は、自装置のディスク群21で形成されているRAIDグループをコピー元またはコピー先とするアクセスや、当該RAIDグループに対するデータの書き込みや読み出しなどのアクセスを監視する。
例えば、多重度監視部32は、ディスク群21のRAIDグループをコピー元とするコピーセッションが新たに実行されたとする。この場合、多重度監視部32は、実行されたRAIDグループに対応付けてディスク情報テーブル27に記憶される「多重度(動作数)」をインクリメントする。また、多重度監視部32は、実行されていたコピーセッションが終了した場合には、終了したRAIDグループに対応付けてディスク情報テーブル27に記憶される「多重度(動作数)」をデクリメントする。
具体例を挙げると、多重度監視部32は、転送実行部37によって「筐体ID=Z、RAIDグループ=001」のコピーセッションが実行されたとする。この場合、多重度監視部32は、ディスク情報テーブル27の「筐体ID=Z、RAIDグループ=001」の「多重度(動作数)」をインクリメントする。また、多重度監視部32は「筐体ID=Z、RAIDグループ=001」のコピーセッションが終了した場合、ディスク情報テーブル27の「筐体ID=Z、RAIDグループ=001」の「多重度(動作数)」をデクリメントする。
一例としては、多重度監視部32は、コピーセッション「ID=01」が実行された場合、コピー元LUN「0x01」をセッション情報テーブル28から特定する。続いて、多重度監視部32は、自装置であるコピー元装置「Z」およびコピー元LUN「0x01」に対応するRAIDグループ「001」をディスク情報テーブル27から特定して、特定したRAIDグループの「多重度(動作数)」をインクリメントする。同様に、多重度監視部32は、コピーセッション「ID=01」が終了した場合、コピー元LUN「0x01」をセッション情報テーブル28から特定する。続いて、多重度監視部32は、コピー元装置「Z」およびコピー元LUN「0x01」に対応するRAIDグループ「001」をディスク情報テーブル27から特定して、特定したRAIDグループの「多重度(動作数)」をデクリメントする。
また、多重度監視部32は、コピー先装置のRAIDグループに対するアクセス等を計数し、計数したアクセス数等を動作数としてディスク情報テーブル27に格納する。つまり、多重度監視部32は、コピー先装置で形成されているRAIDグループをコピー元やコピー先とするアクセスや、当該RAIDグループに対するデータ書き込みや読み出しなどのアクセスを監視する。具体的に例を挙げると、多重度監視部32は、RAIDグループへのアクセス数をコピー先装置から定期的に受信して、コピー先装置におけるRAIDグループに対するアクセス数を監視する。なお、コピー先装置におけるRAIDグループに対するアクセス数を監視する手法は、これに限定されるものではなく、公知の様々な手法を用いることができる。
例えば、多重度監視部32は、コピー先装置のRAIDグループをコピー先とするコピーセッションが新たに実行されたとする。この場合、多重度監視部32は、コピー先のRAIDグループに対応付けてディスク情報テーブル27に記憶される「多重度(動作数)」をインクリメントする。また、多重度監視部32は、実行されていたコピーセッションが終了した場合には、終了したコピー先のRAIDグループに対応付けてディスク情報テーブル27に記憶される「多重度(動作数)」をデクリメントする。
具体例を挙げると、多重度監視部32は、転送実行部37によって「筐体ID=A、RAIDグループ=001」のコピーセッションが実行されたとする。この場合、多重度監視部32は、ディスク情報テーブル27の「筐体ID=A、RAIDグループ=001」の「多重度(動作数)」をインクリメントする。また、多重度監視部32は「筐体ID=A、RAIDグループ=001」のコピーセッションが終了した場合、ディスク情報テーブル27の「筐体ID=A、RAIDグループ=001」の「多重度(動作数)」をデクリメントする。
一例としては、多重度監視部32は、コピーセッション「ID=01」が実行された場合、コピー先LUN「0x01」、コピー先装置「B」をセッション情報テーブル28から特定する。続いて、多重度監視部32は、コピー先装置「B」およびコピー先LUN「0x01」に対応するRAIDグループ「001」をディスク情報テーブル27から特定して、特定したRAIDグループの「多重度(動作数)」をインクリメントする。同様に、多重度監視部32は、コピーセッション「ID=01」が終了した場合、コピー先LUN「0x01」、コピー先装置「B」をセッション情報テーブル28から特定する。続いて、多重度監視部32は、コピー先装置「B」およびコピー先LUN「0x01」に対応するRAIDグループ「001」をディスク情報テーブル27から特定して、特定したRAIDグループの「多重度(動作数)」をデクリメントする。
さらに、多重度監視部32は、PINGやポーリング等の既存の技術を用いてRECパスの疎通を確認し、RECパスの状況を監視する。そして、多重度監視部32は、疎通ができない異常なRECパスを検出した場合には、当該RECパスに対応するリモート回線テーブル26の「RECパス(状態)」を「異常」に変更する。なお、「RECパス(状態)」は、情報設定部31を介して、管理者等によって手動で更新されてもよい。
図2に戻り、セッション生成部33は、管理者等による操作を受け付けて、コピーセッションを生成してセッション情報テーブル28に格納する。例えば、セッション生成部33は、チャネルアダプタ23やLAN等の別インタフェースなどを介して接続される管理者端末等から「コピー元LUN、コピー先LUN、コピー先装置、コピー種別」を受け付ける。そして、セッション生成部33は、受け付けた情報に「セッションID」を割り与えてセッション情報テーブル28に格納する。また、セッション生成部33は、管理者端末等から受け付けるだけでなく、バックアップソフトのスケジューラ機能等によって自動的に生成してセッション情報テーブル28に格納することもできる。
リモート回線判定部34は、データコピーを実行する場合に、当該データコピーのコピー先装置が接続されるリモート回線に対応付けてリモート回線テーブル26に記憶される上限値を取得する。そして、リモート回線判定部34は、取得した上限値と当該リモート回線で現在データコピーされている現在の多重度とに基づいて、当該データコピーを実行することによって多重度が上限値を超えないか否かを判定する。
例えば、リモート回線判定部34は、データコピーを実施するタイミングに到達すると、1つのリモート回線を対象回線として決定する。続いて、リモート回線判定部34は、決定したリモート回線を用いるコピーセッションをセッション情報テーブル28から抽出する。そして、リモート回線判定部34は、決定したリモート回線の動作数の上限値をリモート回線テーブル26から取得するとともに、当該リモート回線で現在実行されているデータコピーの数である動作数を取得する。続いて、リモート回線判定部34は、新たにデータコピーを実行しても、動作数が上限値を超えないと判定した場合、抽出したコピーセッションから1つのコピーセッションを選択して、コピー元判定部35に出力する。
一例として、リモート回線判定部34は、判定対象回線としてリモート回線IDが0のリモート回線を特定したとする。この場合、リモート回線判定部34は、リモート回線テーブル26から、「リモート回線ID=0」に対応する「コピー先装置」が「B」であることを検出する。続いて、リモート回線判定部34は、セッション情報テーブル28から、「コピー先装置」が「B」であるコピーセッションが「01」と「03」であることを抽出する。
また、リモート回線判定部34は、リモート回線テーブル26から、「リモート回線ID=0」に対応する「動作可能数=20」、「動作数=5」を取得する。そして、リモート回線判定部34は、「セッションID=01」のコピーセッションを実行しても、「動作数」が「6」であり「動作可能数=20」を超えないので、当該コピーセッションが実行可能であると判定する。その後、リモート回線判定部34は、「セッションID=01」をコピー元判定部35に出力する。なお、リモート回線判定部34は、セッション情報テーブル28が「状態」を記憶する場合には、この「状態」が「未実行」または「異常終了」であるコピーセッションについて、順に実行対象とする。別の例としては、リモート回線判定部34は、実行が終了したセッションを削除するセッション情報テーブル28の場合には、セッション情報テーブル28に記憶されるコピーセッションについて、順に実行対象とする。
なお、リモート回線判定部34は、新たなコピーセッションを実行すると「動作数」が「動作可能数」を超えると判定した場合、当該コピーセッションのコピー実行を抑止する。そして、リモート回線判定部34は、リモート回線テーブル26に記憶される他のリモート回線について、上述したコピーセッションを実行することによって多重度が上限値を超えないか否かを判定する。
つまり、リモート回線判定部34は、「リモート回線ID=0」のリモート回線について、動作数が上限値を超えるまで、又は、対象コピーセッションがなくなるまで、上述した処理を実行する。また、リモート回線判定部34は、「リモート回線ID=0」に対応するコピーセッションについて上記処理を一通り実施した場合には、他のリモート回線の処理へと遷移する。
コピー元判定部35は、コピー元となるRAIDグループの上限値と、当該RAIDグループに対してアクセスされている現在の多重度とをディスク情報テーブル27から取得する。そして、コピー元判定部35は、新たにデータ転送を実行することによって当該RAIDグループに対する多重度が上限値を超えないか否かを判定する。つまり、コピー元判定部35は、コピー元となるRAIDグループの負荷が許容範囲内であるか否かを判定する。
例えば、コピー元判定部35は、リモート回線判定部34によって選択されたコピーセッションに対応する「コピー元LUN」をセッション情報テーブル28から特定する。そして、コピー元判定部35は、特定した「コピー元LUN」が属する「RAIDグループ」をディスク情報テーブル27から特定する。
その後、コピー元判定部35は、特定した「RAIDグループ」に対応する「動作可能数」と「動作数」とをディスク情報テーブル27から取得し、新たにデータコピーを実行することによって動作数が上限値を超えないか否かを判定する。そして、コピー元判定部35は、新たにデータコピーを実行しても動作数が上限値を超えないと判定した場合、判定対象のコピーセッションをコピー先判定部36に出力する。
一例として、コピー元判定部35は、リモート回線判定部34から「セッションID=01」を受信すると、「セッションID=01」に対応する「コピー元LUN」が「0x01」であることをセッション情報テーブル28から特定する。続いて、コピー元判定部35は、自装置である「筐体ID=Z」において、「コピー元LUN=0x01」が属する「RAIDグループ」が「001」であることをディスク情報テーブル27から特定する。
その後、コピー元判定部35は、「筐体ID=Z」の「RAIDグループ=001」に対応する「動作可能数=10」、「動作数=2」を取得する。そして、コピー元判定部35は、「セッションID=01」のコピーセッションを実行しても、「動作数」が「3」であり「動作可能数=10」を超えないので、当該コピーセッションが実行可能であると判定する。その後、コピー元判定部35は、「セッションID=01」をコピー先判定部36に出力する。
コピー先判定部36は、コピー先となるRAIDグループの上限値と、当該RAIDグループに対して現在アクセスされている現在の多重度とをディスク情報テーブル27から取得する。そして、コピー先判定部36は、新たにデータコピーを実行することによって当該RAIDグループに対する多重度が上限値を超えないか否かを判定する。つまり、コピー先判定部36は、コピー先となるRAIDグループの負荷が許容範囲内であるか否かを判定する。
例えば、コピー先判定部36は、リモート回線判定部34によって選択されたコピーセッションに対応する、コピー先の「コピー先LUN」をセッション情報テーブル28から特定する。そして、コピー先判定部36は、特定した「コピー先LUN」が属する、コピー先の「RAIDグループ」をディスク情報テーブル27から特定する。
その後、コピー先判定部36は、コピー先の「RAIDグループ」に対応する「動作可能数」と「動作数」とをディスク情報テーブル27から取得し、新たにデータコピーを実行することによって多重度が上限値を超えないか否かを判定する。そして、コピー先判定部36は、新たにデータコピーを実行しても多重度が上限値を超えないと判定した場合、判定対象のコピーセッションを転送実行部37に出力する。
一例として、コピー先判定部36は、コピー元判定部35から「セッションID=01」を受信すると、「セッションID=01」に対応する「コピー先LUN」が「コピー先装置=B」の「0x01」であることをセッション情報テーブル28から特定する。続いて、コピー先判定部36は、「コピー先装置=B」の「コピー先LUN=0x01」が属する「RAIDグループ」が「001」であることをディスク情報テーブル27から特定する。
その後、コピー先判定部36は、「コピー先装置=B」の「RAIDグループ=001」に対応する「動作可能数=5」と「動作数=0」を取得する。そして、コピー先判定部36は、「セッションID=01」のコピーセッションを実行しても、「動作数」が「1」であり「動作可能数=5」を超えないので、当該コピーセッションが実行可能であると判定する。その後、コピー先判定部36は、転送実行部37に「セッションID=01」を出力する。
転送実行部37は、リモート回線判定部34、コピー元判定部35、コピー先判定部36によってそれぞれ上限値を超えないと判定された場合に、データコピーを実行する。例えば、転送実行部37は、コピー先判定部36から「セッションID=01」を受信した場合、「セッションID=01」に対応する「リモート回線=0」をリモート回線テーブル26から特定する。続いて、転送実行部37は、「リモート回線=0」に対応する「RECパス=0x00、0x02、0x04、0x06」をリモート回線テーブル26から特定する。その後、転送実行部37は、特定したRECパスのうち任意のRECパスを用いて、「セッションID=01」を実行する。例えば、転送実行部37は、「RECパス=0x00」を用いて、自装置のディスク群21の「LUN=0x01」からコピー先のディスクアレイ装置Bの「LUN=0x01」にデータコピーを実行する。
つまり、転送実行部37は、リモート回線の負荷状況、コピー元RAIDグループの負荷状況、コピー先RAIDグループの負荷状況の各々が許容範囲である場合に、データコピーを実行する。そして、転送実行部37は、実行した「セッションID=01」のコピーセッションをセッション情報テーブル28から削除して、メモリ25の他領域等に退避する。例えば、転送実行部37は、100GBのコピーを実行するコピーセッションを1GBずつ100回に分けて実行する場合、全ての実行が完了した場合に、コピーセッションをセッション情報テーブル28から削除する。別の手法としては、1GBずつ100個のコピーセッションを生成し、1つが実行完了すれば、1つのコピーセッションをセッション情報テーブル28から削除する。
[処理の流れ]
次に、図6〜図8を用いて、ディスクアレイ装置10における処理の流れを説明する。図6は、実施例2に係るREC経路生成処理の流れを示すフローチャートである。図7は、実施例2に係るデータコピー実行処理の流れを示すフローチャートである。図8は、実施例2に係るデータコピー実行後の処理の流れを示すフローチャートである。
(REC経路生成処理の流れ)
まず、図6を用いて、図2に示したリモート回線テーブル26とディスク情報テーブル27の生成例について説明する。図6に示すように、ディスクアレイ装置10の情報設定部31は、チャネルアダプタ23を介して接続される管理者端末等から経路生成指示を受け付けると(ステップS101肯定)、ステップS102を実行する。
具体的には、情報設定部31は、RECパスとリモート回線等の対応付けとして、「リモート回線ID、コピー先装置1〜N、多重度(動作可能数)、RECパス(ID、状態)」を受け付けて、リモート回線テーブル26に格納する。
続いて、情報設定部31は、自装置の制御部30および各コピー先装置からディスク情報を取得する(ステップS103)。例えば、情報設定部31は、制御部30が有するRAIDコントローラから自装置の「筐体ID、RAIDグループ、LUN、多重度(動作可能数)」を取得する。また、情報設定部31は、各コピー先装置に接続して各コピー先装置で設定されている「筐体ID、RAIDグループ、LUN、多重度(動作可能数)」を取得する。
その後、情報設定部31は、ステップS103で取得した自装置のディスク情報とコピー先装置のディスク情報とをディスク情報テーブル27を生成する(ステップS104)。
(データコピー実行処理の流れ)
次に、図7を用いて、データコピー実行処理の流れを説明する。この処理は、各リモート回線毎に実行される。つまり、ディスクアレイ装置10は、リモート回線テーブル26に記憶されるリモート回線について、順番に図7の処理を実行してもよく、並列に実行してもよい。
図7に示すように、リモート回線判定部34は、データコピーを実施するタイミングを示すデータコピー契機に到達すると(ステップS201肯定)、処理対象となるリモート回線をリモート回線テーブル26から特定する(ステップS202)。例えば、リモート回線判定部34は、今回のデータコピー契機において処理未実施のリモート回線を特定する。
続いて、リモート回線判定部34は、ステップS202で特定したリモート回線を用いるコピーセッションが存在するか否かを、セッション情報テーブル28を参照して判定する(ステップS203)。例えば、リモート回線判定部34は、セッション情報テーブル28において未実行のコピーセッションを1つ選択し、選択したコピーセッションのコピー先装置を特定する。続いて、リモート回線判定部34は、特定したコピー先装置に接続されるリモート回線をリモート回線テーブル26から特定する。その後、リモート回線判定部34は、特定したリモート回線が処理対象となるリモート回線であるか否かによって、ステップS202で特定したリモート回線を用いるコピーセッションが存在するか否かを判定する。
そして、リモート回線判定部34は、コピーセッションが存在すると判定した場合(ステップS203肯定)、新たなコピーセッションを実行しても、ステップS202で特定したリモート回線の動作数が動作可能数以下になるか否かを判定する(ステップS204)。このとき、リモート回線判定部34は、ステップS202で特定したリモート回線を用いるコピーセッションをセッション情報テーブル28から抽出してメモリ25等に格納する。
そして、コピー元判定部35は、リモート回線判定部34によって、ステップS202で特定したリモート回線における動作数が動作可能数以下になると判定された場合(ステップS204肯定)、ステップS205を実行する。具体的には、コピー元判定部35は、抽出しておいたコピーセッションに基づいてコピー元のRAIDグループを特定し、特定したコピー元のRAIDグループの動作数が動作可能数以下になるか否かを判定する。
続いて、コピー先判定部36は、コピー元判定部35によって、コピー元のRAIDグループの動作数が動作可能数以下になると判定された場合(ステップS205肯定)、ステップS206を実行する。具体的には、コピー先判定部36は、抽出しておいたコピーセッションに基づいてコピー先のRAIDグループを特定し、特定したコピー先のRAIDグループの動作数が動作可能数以下になるか否かを判定する。
そして、転送実行部37は、コピー先判定部36によって、コピー先のRAIDグループの動作数が動作可能数以下になると判定された場合(ステップS206肯定)、処理対象のコピーセッションを実行する(ステップS207)。続いて、多重度監視部32は、リモート回線テーブル26における「リモート回線の動作数」、ディスク情報テーブル27における「コピー元RAIDグループの動作数」と「コピー先RAIDグループの動作数」とを更新する(ステップS208)。その後、ディスクアレイ装置10は、ステップS203以降の処理を繰り返す。
また、ディスクアレイ装置10は、コピー元判定部35によって、コピー元のRAIDグループの動作数が動作可能数より大きくなると判定された場合(ステップS205否定)、次のコピーセッションについて、ステップS203以降の処理を実行する。同様に、ディスクアレイ装置10は、コピー先判定部36によって、コピー先のRAIDグループの動作数が動作可能数より大きくなると判定された場合(ステップS206否定)、次のコピーセッションについて、ステップS203以降の処理を実行する。
また、ディスクアレイ装置10は、リモート回線判定部34がリモート回線の動作数が動作可能数より大きくなると判定した場合(ステップS204否定)、当該処理を終了して、次のリモート回線についてステップS201以降の処理を実行する。同様に、ディスクアレイ装置10は、リモート回線判定部34によって、コピー対象となるコピーセッションが存在しないと判定された場合(ステップS203否定)、当該処理を終了して、次のリモート回線についてステップS201以降の処理を実行する。
(データコピー実行後処理の流れ)
次に、図8を用いて、データコピー実行後処理の流れを説明する。この処理は、データコピーが終了したことを検出するたびに実行される。
図8に示すように、ディスクアレイ装置10の多重度監視部32は、データ転送が終了したコピーセッションを検出すると(ステップS301肯定)、ステップS302を実行する。具体的には、多重度監視部32は、データコピーが終了したコピーセッションから、当該コピーセッションが使用した「リモート回線」、「コピー元のRAIDグループ」、「コピー先のRAIDグループ」を特定する。
続いて、多重度監視部32は、リモート回線テーブル26において、ステップS302で特定した「リモート回線」の「動作数」を更新する(ステップS303)。同様に、多重度監視部32は、ディスク情報テーブル27において、ステップS302で特定した「コピー元のRAIDグループ」の「動作数」と、「コピー先のRAIDグループ」の「動作数」とを更新する(ステップS304)。
[実施例2による効果]
このように、実施例2によれば、ディスクアレイ装置10は、ディスク群11が形成するRAIDグループごとに、当該RAIDグループに対して多重にアクセスできる多重度の上限値を記憶する。ディスクアレイ装置10は、コピーセッションを実行する場合に、転送元となるRAIDグループに対応付けて記憶される上限値と、当該RAIDグループに対してアクセスしている現在の多重度を取得する。そして、ディスクアレイ装置10は、当該コピーセッションを実行することによって当該RAIDグループに対する多重度が上限値を超えないか否かを判定する。その後、ディスクアレイ装置10は、さらに、上限値を超えないと判定された場合に、コピーセッションを実行する。
また、ディスクアレイ装置10は、コピー先装置が形成するRAIDグループごとに、当該RAIDグループに対して多重にアクセスできる多重度の上限値を記憶する。ディスクアレイ装置10は、コピーセッションを実行する場合に、コピー先となるRAIDグループに対応付けて記憶される上限値と、当該RAIDグループに対してアクセスしている現在の多重度とを取得する。そして、ディスクアレイ装置10は、コピーセッションが実行することによって当該RAIDグループに対する多重度が上限値を超えないか否かを判定する。その後、ディスクアレイ装置10は、さらに、上限値を超えないと判定された場合に、コピーセッションを実行する。
また、ディスクアレイ装置10は、コピーで使用するリモート回線の動作数を監視することで、当該リモート回線の負荷状況を監視することができる。そして、ディスクアレイ装置10は、リモート回線の動作数が上限値以下の場合、言い換えると、リモート回線の負荷状況が許容範囲の場合に、データコピーを実行する。この結果、回線に適した多重度でデータコピーを実行することができる。
また、ディスクアレイ装置10は、リモート回線ごとに多重度の監視を行うことによって、ディスクアレイ装置間に複数のリモート回線があった場合や、ディスクアレイ装置の接続構成が1対Nの場合にも、リモート回線各々の多重度を監視できる。この結果、ディスクアレイ装置10は、コピー元とコピー先とが1対Nの接続であっても、それぞれの回線に適した多重度でのデータ転送ができる。
また、ディスクアレイ装置10は、データコピー元のRAIDグループの多重度やコピー先のRAIDグループの多重度も監視する。つまり、ディスクアレイ装置10は、それぞれのRAIDグループに対して実施されている、コピーを含む全ディスクアクセスを監視する。したがって、ディスクアレイ装置10は、RAIDグループの過負荷によるリモート回線ビジー状態を防ぎ、リモート回線を効率的に使用することができる。例えば、コピー先RAIDグループの過負荷によるデータコピーの応答待ちによるリモート回線の占有を防ぐことができる。また、コピー先RAIDグループの過負荷である場合に、当該RAIDグループに対するデータコピーを抑止し、過負荷でない他のRAIDグループに対するデータコピーを優先させることもできる。
ところで、本実施例の開示するディスクアレイ装置は、リモート回線の多重度とRAIDグループの多重度の以外にも別の多重度を監視して、データコピーを制御することができる。そこで、実施例3では、コピー先のLUNおよびコピー元のLUNの多重度に基づいて、データコピーを制御する例について説明する。
ここでは、実施例2で説明したリモート回線の多重度とRAIDグループの多重度に加え、コピー先のLUNおよびコピー元のLUNの多重度に基づいて、データコピーを制御する例について説明する。
(REC経路生成処理)
まず、図9と図10を用いて、実施例3に係るREC経路生成処理の流れを説明する。図9は、実施例3に係るREC経路生成処理の流れを示すフローチャートである。
図9に示すように、ディスクアレイ装置10の情報設定部31は、チャネルアダプタ23を介して接続される管理者端末等から経路生成指示を受け付けると(ステップS401肯定)、ステップS402を実行する。
具体的には、情報設定部31は、RECパスとリモート回線等の対応付けとして、「リモート回線ID、コピー先装置1〜N、多重度(動作可能数)、RECパス(ID、状態)」を受け付けて、リモート回線テーブル26に格納する。
続いて、情報設定部31は、各コピー先装置からRAIDやLUNなどのディスク情報を取得する(ステップS403)。例えば、情報設定部31は、各コピー先装置に接続して各コピー先装置で設定されている「筐体ID、RAIDグループ、LUN、多重度(RAID)の動作可能数、多重度(LUN)の動作可能数」を取得する。
また、情報設定部31は、自装置の制御部30が有するRAIDコントローラから自装置のRAIDやLUNなどのディスク情報を取得する(ステップS404)。例えば、情報設定部31は、自装置のディスク群21で形成される「筐体ID、RAIDグループ、LUN、多重度(RAID)の動作可能数、多重度(LUN)の動作可能数」を取得する。
その後、情報設定部31は、ステップS403で取得した各コピー先装置のディスク情報とステップS404で取得した自装置のディスク情報とから、ディスク情報テーブル27を生成する(ステップS405)。
(ディスク情報テーブルの構成)
次に、図10を用いて、図8を実施することで生成されるディスク情報テーブルの構成例について説明する。図10は、実施例3に係るディスク情報テーブルに記憶されるディスク情報の例を示す図である。
図10に示すように、実施例3に係るディスク情報テーブル27は、「筐体ID、RAIDグループ、多重度(RAID)の動作可能数と動作数、LUN、多重度(LUN)の動作可能数と動作数」を記憶する。
ここで記憶される「筐体ID」は、自装置またはコピー先のディスクアレイ装置を一意に識別するホスト名などの識別子である。「RAIDグループ」は、ディスク群21またはコピー先装置で形成されているRAIDグループを識別する識別子であり、物理ディスクを組み合わせた1つの論理ディスクを構成するグループを識別する識別子である。
「多重度(RAID)の動作可能数」は、RAIDグループに対してアクセスできる多重度の上限値である。「多重度(RAID)の動作数」は、RAIDグループに対して現在アクセスしている現多重度である。
「LUN」は、ディスク群21またはコピー先装置内の論理ボリュームを識別する識別子であり、RAIDグループから1つ又は複数に分割して作成された物理ディスクとして認識される単位である。
「多重度(LUN)の動作可能数」は、LUNに対してアクセスできる多重度の上限値である。つまり、この「多重度(LUN)の動作可能数」は、コピーの動作数に限られず、データ書き込みや読み出しなどの様々なディスクアクセスを同時に実行できる数であり、LUNが許容できる最大の負荷を示している。なお、この「多重度(LUN)の動作可能数」は、ディスクの種類や容量等によって一意に決定される。
「多重度(LUN)の動作数」は、LUNに対して現在アクセスしている数を示す現多重度である。つまり、この「多重度(LUN)の動作数」は、コピーの動作数やデータ参照、データ書き込みなどを含む、現在同時にアクセスしているディスクアクセスの数であり、LUNの現在時点における負荷を示している。
図10の場合、「筐体ID=Z」である自装置には、「001」と「002」と「003」のRAIDグループが形成されている。この「001」のRAIDグループには、動作可能な多重度の上限値として「20」が設定されており、現在、14個のデータ通信が実行されている。また、「001」のRAIDグループは、「ID=0x00、0x01、0x02」の3つのLUNで形成される。LUN「ID=0x00」には、動作可能な多重度の上限値として「10」が設定されており、現在、3個のデータ通信が実行されている。LUN「ID=0x01」には、動作可能な多重度の上限値として「10」が設定されており、現在、6個のデータ通信が実行されている。LUN「ID=0x02」には、動作可能な多重度の上限値として「7」が設定されており、現在、5個のデータ通信が実行されている。
また、「筐体ID=Z」である自装置における「002」のRAIDグループには、動作可能な多重度の上限値として「30」が設定されており、現在、20個のデータ通信が実行されている。また、「002」のRAIDグループは、「ID=0x03、0x04、0x05」の3つのLUNで形成される。LUN「ID=0x03」には、動作可能な多重度の上限値として「12」が設定されており、現在、11個のデータ通信が実行されている。LUN「ID=0x04」には、動作可能な多重度の上限値として「11」が設定されており、現在、6個のデータ通信が実行されている。LUN「ID=0x05」には、動作可能な多重度の上限値として「6」が設定されており、現在、3個のデータ通信が実行されている。
また、「筐体ID=Z」である自装置における「003」のRAIDグループには、動作可能な多重度の上限値として「10」が設定されており、現在、10個のデータ通信が実行されている。また、「003」のRAIDグループは、「ID=0x06、0x07、0x08」の3つのLUNで形成される。LUN「ID=0x06」には、動作可能な多重度の上限値として「5」が設定されており、現在、5個のデータ通信が実行されている。LUN「ID=0x07」には、動作可能な多重度の上限値として「9」が設定されており、現在、2個のデータ通信が実行されている。LUN「ID=0x08」には、動作可能な多重度の上限値として「7」が設定されており、現在、3個のデータ通信が実行されている。
また、図10の場合、「筐体ID=A」であるコピー先装置には、「001」と「002」と「003」のRAIDグループが形成されている。この「001」のRAIDグループには、動作可能な多重度の上限値として「50」が設定されており、現在、13個のデータ通信が実行されている。また、「001」のRAIDグループは、「ID=0x00、0x01、0x02」の3つのLUNで形成される。LUN「ID=0x00」には、動作可能な多重度の上限値として「7」が設定されており、現在、1個のデータ通信が実行されている。LUN「ID=0x01」には、動作可能な多重度の上限値として「8」が設定されており、現在、7個のデータ通信が実行されている。LUN「ID=0x02」には、動作可能な多重度の上限値として「6」が設定されており、現在、5個のデータ通信が実行されている。
また、「筐体ID=A」であるコピー先装置における「002」のRAIDグループには、動作可能な多重度の上限値として「30」が設定されており、現在、24個のデータ通信が実行されている。また、「002」のRAIDグループは、「ID=0x03、0x04、0x05」の3つのLUNで形成される。LUN「ID=0x03」には、動作可能な多重度の上限値として「15」が設定されており、現在、9個のデータ通信が実行されている。LUN「ID=0x04」には、動作可能な多重度の上限値として「13」が設定されており、現在、11個のデータ通信が実行されている。LUN「ID=0x05」には、動作可能な多重度の上限値として「12」が設定されており、現在、4個のデータ通信が実行されている。
また、「筐体ID=A」であるコピー先装置における「003」のRAIDグループには、動作可能な多重度の上限値として「30」が設定されており、現在、13個のデータ通信が実行されている。また、「003」のRAIDグループは、「ID=0x06、0x07、0x08」の3つのLUNで形成される。LUN「ID=0x06」には、動作可能な多重度の上限値として「10」が設定されており、現在、10個のデータ通信が実行されている。LUN「ID=0x07」には、動作可能な多重度の上限値として「5」が設定されており、現在、1個のデータ通信が実行されている。LUN「ID=0x08」には、動作可能な多重度の上限値として「9」が設定されており、現在、2個のデータ通信が実行されている。
(データコピー実行処理の流れ)
次に、図11を用いて、実施例3に係るデータコピー実行処理の流れを説明する。図11は、実施例3に係るデータコピー実行処理の流れを示すフローチャートである。この処理は、図7と同様、各リモート回線毎に実行される。
図11に示すように、ディスクアレイ装置10のリモート回線判定部34は、データコピー契機に到達すると(ステップS501肯定)、処理対象となるリモート回線をリモート回線テーブル26から特定する(ステップS502)。
続いて、リモート回線判定部34は、ステップS502で特定したリモート回線を用いるコピーセッションが存在するか否かを、セッション情報テーブル28を参照して判定する(ステップS503)。
そして、リモート回線判定部34は、コピーセッションが存在すると判定した場合(ステップS503肯定)、ステップS502で特定したリモート回線の動作数が動作可能数以下になるか否かを判定する(ステップS504)。このとき、リモート回線判定部34は、ステップS502で特定したリモート回線を用いるコピーセッションをセッション情報テーブル28から抽出してメモリ25等に格納する。
そして、コピー元判定部35は、リモート回線判定部34によって、リモート回線の動作数が動作可能数以下になると判定された場合(ステップS504肯定)、ステップS505を実行する。具体的には、コピー元判定部35は、抽出しておいたコピーセッションに基づいてコピー元のRAIDグループを特定し、特定したコピー元のRAIDグループの動作数が動作可能数以下になるか否かを判定する。
続いて、コピー先判定部36は、コピー元判定部35によって、コピー元のRAIDグループの動作数が動作可能数以下になると判定された場合(ステップS505肯定)、ステップS506を実行する。具体的には、コピー先判定部36は、抽出しておいたコピーセッションに基づいてコピー先のRAIDグループを特定し、特定したコピー先のRAIDグループの動作数が動作可能数以下になるか否かを判定する。
そして、コピー元判定部35は、コピー先判定部36によってコピー先のRAIDグループの動作数が動作可能数以下になると判定された場合(ステップS506肯定)、ステップS507を実行する。具体的には、コピー元判定部35は、抽出しておいたコピーセッションに基づいてコピー元のLUNを特定し、特定したコピー元のLUNの動作数が動作可能数以下になるか否かを判定する。
例えば、コピー元判定部35は、リモート回線判定部34から「セッションID=01」を受信すると、「セッションID=01」に対応する「コピー元LUN」が自装置である「筐体ID=Z」の「0x01」であるとセッション情報テーブル28から特定する。続いて、コピー元判定部35は、「筐体ID=Z」の「コピー元LUN=0x01」に対応する「動作可能数=10」、「動作数=6」を取得する。そして、コピー元判定部35は、「セッションID=01」のコピーセッションを実行しても、「動作数」が「7」であり「動作可能数=10」を超えないので、当該コピーセッションが実行可能であると判定する。その後、コピー元判定部35は、「セッションID=01」をコピー先判定部36に出力する。
図11に戻り、コピー先判定部36は、コピー元判定部35によって、コピー元のLUNの動作数が動作可能数以下になると判定された場合(ステップS507肯定)、ステップS508を実行する。具体的には、コピー先判定部36は、抽出しておいたコピーセッションに基づいてコピー先のLUNを特定し、特定したコピー先のLUNの動作数が動作可能数以下になるか否かを判定する。
例えば、コピー先判定部36は、コピー元判定部35から「セッションID=01」を受信すると、「セッションID=01」に対応する「コピー先LUN」が「筐体ID=A」の「0x01」であるとセッション情報テーブル28から特定する。続いて、コピー元判定部35は、「筐体ID=Z」の「コピー元LUN=0x01」に対応する「動作可能数=8」、「動作数=7」を取得する。そして、コピー元判定部35は、「セッションID=01」のコピーセッションを実行しても、「動作数」が「8」であり「動作可能数=10」を超えないので、当該コピーセッションが実行可能であると判定する。その後、コピー元判定部35は、「セッションID=01」を転送実行部37に出力する。
図11に戻り、転送実行部37は、コピー先判定部36によって、コピー先のLUNの動作数が動作可能数以下になると判定された場合(ステップS508肯定)、処理対象のコピーセッションを実行する(ステップS509)。続いて、多重度監視部32は、リモート回線テーブル26における「リモート回線の動作数」、ディスク情報テーブル27における「コピー元RAIDグループの動作数」と「コピー先RAIDグループの動作数」とを更新する(ステップS510)。このとき、多重度監視部32は、ディスク情報テーブル27における「コピー元LUNの動作数」と「コピー先LUNの動作数」も更新する。その後、ディスクアレイ装置10は、ステップS503以降の処理を繰り返す。
また、ディスクアレイ装置10は、コピー先判定部36がコピー先LUNの動作数が動作可能数より大きくなると判定した場合(ステップS508否定)、ステップS503に戻って、次にコピーセッションについてステップS503以降の処理を実行する。同様に、ディスクアレイ装置10は、コピー元判定部35がコピー元LUNの動作数が動作可能数より大きくなると判定した場合(ステップS507否定)、ステップS503に戻って、次にコピーセッションについてステップS503以降の処理を実行する。
なお、ステップS506否定、ステップS505否定、ステップS504否定、ステップS503否定後の処理は、ステップS206否定、ステップS205否定、ステップS204否定、ステップS203否定後の処理と同様なので、詳細な説明は省略する。
(実施例3による効果)
このように、実施例3によれば、ディスクアレイ装置10は、ディスク群11のLUNごとに、当該LUNに対して多重にアクセスできる多重度の上限値を記憶する。ディスクアレイ装置10は、コピーセッションを実行する場合に、当該データが記憶されるLUNに対応付けて記憶される上限値と、当該LUNに対してアクセスしている現在の多重度とを取得する。その後、ディスクアレイ装置10は、コピーセッションを実行することによって当該LUNに対する多重度が上限値を超えないと判定された場合に、コピーセッションを実行する。
また、ディスクアレイ装置10は、コピー先装置のLUNごとに、当該LUNに対して多重にアクセスできる多重度の上限値を記憶する。ディスクアレイ装置10は、コピーセッションを実行する場合に、当該データの転送先LUNに対応付けて記憶される上限値と、当該転送先LUNに対してアクセスしている現在の多重度とを取得する。その後、ディスクアレイ装置10は、コピーセッションを実行することによって当該転送先LUNに対する多重度が上限値を超えないと判定された場合に、コピーセッションを実行する。
この結果、ディスクアレイ装置10は、リモート回線の負荷、コピー元のRAIDグループの負荷、コピー先のRAIDグループの負荷に加え、コピー元およびコピー先のLUNの負荷も考慮することができる。したがって、コピーを実施したにも関わらず、LUNの負荷が高いためにコピーが終了できずに、リモート回線の負荷が大きくなることを防ぐことができる。この結果、実施例1や2に比べて、リモート回線を効率的に使用することができる。
ところで、本実施例の開示するディスクアレイ装置は、リモート回線が異常となった場合に、RECパスを正常なリモート回線に対応付けることで、RECパスの切り替えを自動的に実施することができる。そこで、実施例4では、異常が検出されたリモート回線に対応付けられるRECパスを自動的に切り替えるパスフェイルオーバーについて説明する。
図12は、データ転送時のパスフェイルオーバー処理の流れを示すフローチャートである。図12に示すように、ディスクアレイ装置の転送実行部37は、データ転送時にRECパスの異常を検出すると(ステップS601肯定)、異常検出したRECパスを閉塞させる(ステップS602)。
続いて、転送実行部37は、異常検出したRECパスが属するリモート回線を使用する他のRECパス全てについても閉塞させる(ステップS603)。その後、転送実行部37は、他に正常なパスが存在するか否かを判定する(ステップS604)。そして、転送実行部37は、他に正常なパスが存在すると判定した場合には(ステップS604肯定)、正常なパスを用いてデータ転送をリトライする(ステップS605)。一方、転送実行部37は、他に正常なパスが存在しないと判定した場合には(ステップS604否定)、データ転送処理を終了する(ステップS606)。
例えば、転送実行部37は、リモート回線「ID=0」のRECパス「0x00」を用いて、コピー先装置Bに対してコピーを実行する際に、パス異常を検出したとする。つまり、転送実行部37は、リモート回線「ID=0」の異常を検出する。この場合、転送実行部37は、リモート回線「ID=0」に対応付けてリモート回線テーブル26に記憶されるRECパス「0x00」の状態を「異常」に変更する。さらに、転送実行部37は、リモート回線「ID=0」に対応付けられているRECパス「0x02、0x04、0x06」の状態も「異常」に変更する。
その後、転送実行部37は、リモート回線テーブル26を参照し、コピー先装置Bを転送先装置とする正常なRECパスが存在するか否かを判定する。例えば、転送実行部37は、コピー先装置Bに対応するリモート回線「ID=0」におけるRECパスとして、「0x00」、「0x02」、「0x04」、「0x06」をリモート回線テーブル26から特定する。そして、転送実行部37は、各RECパス「0x00」、「0x02」、「0x04」、「0x06」が「正常」であるか「異常」であるかによって、正常なRECパスが存在するか否かを判定する。そして、転送実行部37は、コピー先装置Bを転送先装置とする他の正常なパスが存在する場合に、当該他の正常なパスを用いてデータ転送を実行する。
このように、実施例4によれば、ディスクアレイ装置は、RECパスとリモート回線と関連付けて記憶している。したがって、ディスクアレイ装置は、RECパスがリモート回線の不具合により異常を検出した際のフェイルオーバー動作時において、不具合が発生したリモート回線とは異なるリモート回線に接続されているRECパスをスムーズに選択することができる。
この結果、ディスクアレイ装置は、RECパスがリモート回線の不具合により異常を検出した際のフェイルオーバー動作時において、異常となったリモート回線に接続されるRECパスを即座に閉塞させ、スムーズなフェイルオーバーを実行することができる。
さて、これまで本発明の実施例について説明したが、本発明は上述した実施例以外にも、種々の異なる形態にて実施されてよいものである。そこで、以下に異なる実施例を説明する。
[多重度判定の組み合わせ]
本実施例の開示するディスクアレイ装置は、実施例1〜実施例3で説明した多重度の判定を任意に組み合わせることができる。例えば、ディスクアレイ装置は、「リモート回線の多重度」のみを判定して、コピーの抑止および実行を制御することもできる。また、ディスクアレイ装置は、「リモート回線の多重度」と「コピー元LUNの多重度」、又は、「リモート回線の多重度」と「コピー先LUNの多重度」を判定して、コピーを制御することもできる。
また、ディスクアレイ装置は、「リモート回線の多重度」と「コピー元およびコピー先LUNの多重度」を判定して、コピーを制御することもできる。また、ディスクアレイ装置は、「リモート回線の多重度」と「コピー元およびコピー先RAIDグループの多重度」を判定して、コピーを制御することもできる。また、ディスクアレイ装置は、「リモート回線の多重度」と「コピー元RAIDグループの多重度」、又は、「リモート回線の多重度」と「コピー先RAIDグループの多重度」を判定して、コピーを制御することもできる。
[RECパスへの振り分け]
本実施例の開示するディスクアレイ装置は、転送対象であるコピーセッションを任意のRECパスへ振り分けることができる。例えば、ディスクアレイ装置は、負荷が最も小さいRECパスや現時点でデータ転送が実行されていないRECパスを選択して、コピーセッションを実行することもできる。また、ディスクアレイ装置は、リモート回線テーブルに記憶されるRECパスを順番に選択するようにしてもよい。また、ディスクアレイ装置は、転送対象であるコピーセッションが「1つ」であり、利用可能なRECパス「4つ」ある場合、当該コピーセッションで実行されるコピーを4分割にして、それぞれを別のRECパスで実行することもできる。
[I/O停止コマンド]
本実施例の開示するディスクアレイ装置は、データコピーを実行する際に、コピー元のLUNまたはコピー先のLUNに対して、他I/Oを停止するコマンドを発行した上で、データコピーを実行することもできる。この結果、ディスクアレイ装置は、データコピーを実行する前に、動作数が動作可能数以下であると判定したにも関わらず、データコピーを実行した後に、動作数が動作可能数より大きくなってしまうことを防止できる。つまり、ディスクアレイ装置は、データコピーを実行後にコピー以外の要因で、コピー先LUN又はコピー元LUNの負荷が大きくなることを防止できる。
[データ転送]
実施例1〜3では、データコピーを実行する場合の例について説明したが、これに限定されるものではない。例えば、あるデータとあるデータをマージしたデータを転送する場合など、データコピーに限られず、様々なデータ転送に適用することができる。
[システム]
また、本実施例において説明した各処理のうち、自動的におこなわれるものとして説明した処理の全部または一部を手動的におこなうこともできる。あるいは、REC経路生成など手動的におこなわれるものとして説明した処理の全部または一部を公知の方法で自動的におこなうこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、例えば図3〜図5、図10等に示した各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られない。例えば、コピー元判定部35とコピー先判定部36とを統合するなど、その全部または一部を各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。さらに、各装置にて行なわれる各処理機能は、その全部または任意の一部が、CPUおよび当該CPUにて解析実行されるプログラムにて実現され得る。
[プログラム]
なお、本実施例で説明したディスクアレイ制御方法は、あらかじめ用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータで実行することによって実現することができる。このプログラムは、インターネットなどのネットワークを介して配布することができる。また、このプログラムは、ハードディスク、フレキシブルディスク(FD)、CD−ROM、MO、DVDなどのコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行することもできる。
以上の各実施例を含む実施形態に関し、さらに以下の付記を開示する。
(付記1)データを記憶する記憶部と、
前記記憶部に記憶されるデータの転送先である転送先装置が接続される回線ごとに、当該回線を用いて並列にデータ転送できる多重度の上限値を記憶する転送多重度記憶部と、
データ転送を実行する場合に、当該データ転送の転送先装置が接続される回線に対応付けて前記転送多重度記憶部に記憶される前記上限値と、当該回線で現在データ転送されている現在の多重度とに基づいて、当該データ転送を実行することによって多重度が前記上限値を超えないか否かを判定する多重度判定部と、
前記多重度判定部によって前記上限値を超えないと判定された場合に、前記データ転送を実行する実行制御部と、
を有することを特徴とするディスクアレイ装置。
(付記2)前記記憶部が形成するRAIDグループごとに、当該RAIDグループに対して多重にアクセスできる多重度の上限値を記憶するRAID多重度記憶部と、
前記データ転送を実行する場合に、当該データの転送元となるRAIDグループに対応付けて前記RAID多重度記憶部に記憶される前記上限値と、当該RAIDグループに対してアクセスしている現在の多重度とに基づいて、当該データ転送を実行することによって当該RAIDグループに対する多重度が前記上限値を超えないか否かを判定するRAID判定部とをさらに有し、
前記実行制御部は、前記多重度判定部によって前記上限値を超えないと判定された場合かつ前記RAID判定部によって前記上限値を超えないと判定された場合に、前記データ転送を実行することを特徴とする付記1に記載のディスクアレイ装置。
(付記3)前記転送先装置が形成するRAIDグループごとに、当該RAIDグループに対して多重にアクセスできる多重度の上限値を記憶するRAID多重度記憶部と、
前記データ転送を実行する場合に、当該データの転送先となるRAIDグループに対応付けて前記RAID多重度記憶部に記憶される前記上限値と、当該RAIDグループに対してアクセスしている現在の多重度とに基づいて、当該データ転送を実行することによって当該RAIDグループに対する多重度が前記上限値を超えないか否かを判定するRAID判定部とをさらに有し、
前記実行制御部は、さらに、前記RAID判定部によって前記上限値を超えないと判定された場合に、前記データ転送を実行することを特徴とする付記1または2に記載のディスクアレイ装置。
(付記4)前記記憶部の論理ボリュームごとに、当該論理ボリュームに対して多重にアクセスできる多重度の上限値を記憶するボリューム多重度記憶部と、
前記データ転送を実行する場合に、当該データが記憶される論理ボリュームに対応付けて前記ボリューム多重度記憶部に記憶される前記上限値と、当該論理ボリュームに対してアクセスしている現在の多重度とに基づいて、当該データ転送を実行することによって当該論理ボリュームに対する多重度が前記上限値を超えないか否かを判定するボリューム判定部とをさらに有し、
前記実行制御部は、さらに、前記ボリューム判定部によって前記上限値を超えないと判定された場合に、前記データ転送を実行することを特徴とする付記1〜3のいずれか一つに記載のディスクアレイ装置。
(付記5)前記転送先装置の論理ボリュームごとに、当該論理ボリュームに対して多重にアクセスできる多重度の上限値を記憶するボリューム多重度記憶部と、
前記データ転送を実行する場合に、当該データが記憶される論理ボリュームに対応付けて前記ボリューム多重度記憶部に記憶される前記上限値と、当該論理ボリュームに対してアクセスしている現在の多重度とに基づいて、当該データ転送を実行することによって当該論理ボリュームに対する多重度が前記上限値を超えないか否かを判定するボリューム判定部とをさらに有し、
前記実行制御部は、さらに、前記ボリューム判定部によって前記上限値を超えないと判定された場合に、前記データ転送を実行することを特徴とする付記1〜4のいずれか一つに記載のディスクアレイ装置。
(付記6)前記多重度記憶部は、前記回線ごとに、自装置内部で定められた前記転送先装置との間の論理経路を少なくとも一つさらに対応付けて記憶し、
前記実行制御部は、前記データ転送の転送先装置が接続される回線に対応付けて前記多重度記憶部に記憶される論理経路のうち、所定の条件に従って選択した論理経路で前記データ転送を実行することを特徴とする付記1〜5のいずれか一つに記載のディスクアレイ装置。
(付記7)前記回線で障害が発生した場合に、障害が発生した回線に対応付けられた論理経路を前記多重度記憶部から特定し、特定した論理経路を正常な回線に新たに対応付ける切替制御部をさらに有することを特徴とする付記6に記載のディスクアレイ装置。
(付記8)ディスクアレイ装置が、
データ転送を実行する場合に、当該データ転送の転送先装置が接続される回線に対応付けて、データを記憶する記憶部に記憶されるデータの転送先である転送先装置が接続される回線ごとに、当該回線で多重にデータ転送できる多重度の上限値を記憶する多重度記憶部に記憶される前記上限値と、当該回線で現在データ転送されている現在の多重度とに基づいて、当該データ転送を実行することによって多重度が前記上限値を超えないか否かを判定する多重度判定ステップと、
前記多重度判定ステップによって前記上限値を超えないと判定された場合に、前記データ転送を実行する実行制御ステップと、
を含んだことを特徴とするディスクアレイ装置の制御方法。
20 ディスクアレイ装置
20a〜20d CA
21 ディスク群
22 コントローラ部
23 チャネルアダプタ
24 デバイスアダプタ
25 メモリ
26 リモート回線テーブル
27 ディスク情報テーブル
28 セッション情報テーブル
30 制御部
31 情報設定部
32 多重度監視部
33 セッション生成部
34 リモート回線判定部
35 コピー元判定部
36 コピー先判定部
37 転送実行部

Claims (6)

  1. データを記憶する記憶部と、
    前記記憶部に記憶されるデータの転送先である転送先装置が接続される回線ごとに、当該回線を用いて並列にデータ転送できる多重度の上限値を記憶する転送多重度記憶部と、
    データ転送を実行する場合に、当該データ転送の転送先装置が接続される回線に対応付けて前記転送多重度記憶部に記憶される前記上限値と、当該回線で現在データ転送されている現在の多重度とに基づいて、当該データ転送を実行することによって多重度が前記上限値を超えないか否かを判定する多重度判定部と、
    前記多重度判定部によって前記上限値を超えないと判定された場合に、前記データ転送を実行する実行制御部と、
    を有することを特徴とするディスクアレイ装置。
  2. 前記記憶部が形成するRAIDグループごとに、当該RAIDグループに対して多重にアクセスできる多重度の上限値を記憶するRAID多重度記憶部と、
    前記データ転送を実行する場合に、当該データの転送元となるRAIDグループに対応付けて前記RAID多重度記憶部に記憶される前記上限値と、当該RAIDグループに対してアクセスしている現在の多重度とに基づいて、当該データ転送を実行することによって当該RAIDグループに対する多重度が前記上限値を超えないか否かを判定するRAID判定部とをさらに有し、
    前記実行制御部は、前記多重度判定部によって前記上限値を超えないと判定された場合かつ前記RAID判定部によって前記上限値を超えないと判定された場合に、前記データ転送を実行することを特徴とする請求項1に記載のディスクアレイ装置。
  3. 前記転送先装置が形成するRAIDグループごとに、当該RAIDグループに対して多重にアクセスできる多重度の上限値を記憶するRAID多重度記憶部と、
    前記データ転送を実行する場合に、当該データの転送先となるRAIDグループに対応付けて前記RAID多重度記憶部に記憶される前記上限値と、当該RAIDグループに対してアクセスしている現在の多重度とに基づいて、当該データ転送を実行することによって当該RAIDグループに対する多重度が前記上限値を超えないか否かを判定するRAID判定部とをさらに有し、
    前記実行制御部は、さらに、前記RAID判定部によって前記上限値を超えないと判定された場合に、前記データ転送を実行することを特徴とする請求項1または2に記載のディスクアレイ装置。
  4. 前記記憶部の論理ボリュームごとに、当該論理ボリュームに対して多重にアクセスできる多重度の上限値を記憶するボリューム多重度記憶部と、
    前記データ転送を実行する場合に、当該データが記憶される論理ボリュームに対応付けて前記ボリューム多重度記憶部に記憶される前記上限値と、当該論理ボリュームに対してアクセスしている現在の多重度とに基づいて、当該データ転送を実行することによって当該論理ボリュームに対する多重度が前記上限値を超えないか否かを判定するボリューム判定部とをさらに有し、
    前記実行制御部は、さらに、前記ボリューム判定部によって前記上限値を超えないと判定された場合に、前記データ転送を実行することを特徴とする請求項1〜3のいずれか一つに記載のディスクアレイ装置。
  5. 前記転送先装置の論理ボリュームごとに、当該論理ボリュームに対して多重にアクセスできる多重度の上限値を記憶するボリューム多重度記憶部と、
    前記データ転送を実行する場合に、当該データが記憶される論理ボリュームに対応付けて前記ボリューム多重度記憶部に記憶される前記上限値と、当該論理ボリュームに対してアクセスしている現在の多重度とに基づいて、当該データ転送を実行することによって当該論理ボリュームに対する多重度が前記上限値を超えないか否かを判定するボリューム判定部とをさらに有し、
    前記実行制御部は、さらに、前記ボリューム判定部によって前記上限値を超えないと判定された場合に、前記データ転送を実行することを特徴とする請求項1〜4のいずれか一つに記載のディスクアレイ装置。
  6. ディスクアレイ装置が、
    データ転送を実行する場合に、当該データ転送の転送先装置が接続される回線に対応付けて、データを記憶する記憶部に記憶されるデータの転送先である転送先装置が接続される回線ごとに、当該回線を用いて並列にデータ転送できる多重度の上限値を記憶する多重度記憶部に記憶される前記上限値と、当該回線で現在データ転送されている現在の多重度とに基づいて、当該データ転送を実行することによって多重度が前記上限値を超えないか否かを判定する多重度判定ステップと、
    前記多重度判定ステップによって前記上限値を超えないと判定された場合に、前記データ転送を実行する実行制御ステップと、
    を含んだことを特徴とするディスクアレイ装置の制御方法。
JP2010185507A 2010-08-20 2010-08-20 ディスクアレイ装置およびディスクアレイ装置の制御方法 Pending JP2012043304A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2010185507A JP2012043304A (ja) 2010-08-20 2010-08-20 ディスクアレイ装置およびディスクアレイ装置の制御方法
US13/067,104 US20120047327A1 (en) 2010-08-20 2011-05-09 Disk array device and control method for the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010185507A JP2012043304A (ja) 2010-08-20 2010-08-20 ディスクアレイ装置およびディスクアレイ装置の制御方法

Publications (1)

Publication Number Publication Date
JP2012043304A true JP2012043304A (ja) 2012-03-01

Family

ID=45594976

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010185507A Pending JP2012043304A (ja) 2010-08-20 2010-08-20 ディスクアレイ装置およびディスクアレイ装置の制御方法

Country Status (2)

Country Link
US (1) US20120047327A1 (ja)
JP (1) JP2012043304A (ja)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9256381B1 (en) * 2011-09-29 2016-02-09 Emc Corporation Managing degraded storage elements in data storage systems
US9158828B1 (en) * 2011-12-19 2015-10-13 Emc Corporation Techniques using associated object properties
US9164913B1 (en) * 2012-04-16 2015-10-20 Qlogic, Corporation Method and system for offloading copy on write operations
US9658803B1 (en) * 2012-06-28 2017-05-23 EMC IP Holding Company LLC Managing accesses to storage
JP2015158800A (ja) * 2014-02-24 2015-09-03 富士通株式会社 データ転送制御装置、データ転送制御プログラムおよびデータ転送制御方法
US10061628B2 (en) * 2014-03-13 2018-08-28 Open Text Sa Ulc System and method for data access and replication in a distributed environment utilizing data derived from data access within the distributed environment
JP6347055B2 (ja) * 2014-03-28 2018-06-27 パナソニックIpマネジメント株式会社 不揮発性メモリ装置
JP2016134050A (ja) * 2015-01-21 2016-07-25 株式会社日立エルジーデータストレージ データライブラリシステム
KR20220023476A (ko) * 2020-08-21 2022-03-02 에스케이하이닉스 주식회사 레이드 데이터 저장 장치 및 이를 포함하는 데이터 저장 시스템

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5745915A (en) * 1995-03-17 1998-04-28 Unisys Corporation System for parallel reading and processing of a file
US7917711B2 (en) * 2003-11-14 2011-03-29 International Business Machines Corporation System, apparatus, and method for automatic copy function selection
JP4963808B2 (ja) * 2005-08-05 2012-06-27 株式会社日立製作所 記憶制御システム
US7500050B2 (en) * 2006-03-20 2009-03-03 International Business Machines Corporation Wise ordering for writes—combining spatial and temporal locality in write caches for multi-rank storage
JP4884198B2 (ja) * 2006-12-19 2012-02-29 株式会社日立製作所 ストレージネットワークの性能管理方法、並びに、その方法を用いた計算機システム及び管理計算機
JP4576449B2 (ja) * 2008-08-29 2010-11-10 富士通株式会社 スイッチ装置およびコピー制御方法
US20100205355A1 (en) * 2009-02-11 2010-08-12 Memory Experts International Inc. Multiplexing secure digital memory

Also Published As

Publication number Publication date
US20120047327A1 (en) 2012-02-23

Similar Documents

Publication Publication Date Title
JP2012043304A (ja) ディスクアレイ装置およびディスクアレイ装置の制御方法
EP1760591B1 (en) System and method of managing access path
JP4963892B2 (ja) 仮想ストレージシステムの構成要素となることが可能なストレージシステムの制御装置
US7447933B2 (en) Fail-over storage system
US20140101279A1 (en) System management method, and computer system
US20130311989A1 (en) Method and apparatus for maintaining a workload service level on a converged platform
JP2009146106A (ja) 物理的な通信ポートに付加される仮想的な通信ポートを移行する機能を有したストレージシステム
JP2018173949A (ja) Ssdのデータ複製システム及び方法
JP4617847B2 (ja) 情報処理システム及びアクセス方法
US20110246720A1 (en) Storage system with multiple controllers
JP2006107151A (ja) ストレージシステム及びストレージシステムの通信パス制御方法
JP2008269462A (ja) ノードの管理装置及び方法
US8549130B2 (en) Discovery and management mechanism for SAN devices
WO2012120634A1 (ja) 管理計算機、ストレージシステム管理方法、及び、ストレージシステム
JP2012531654A (ja) ストレージシステム及びストレージシステムの通信パス管理方法
WO2011042939A1 (en) Storage control device building a logical unit based on storage devices coupled with different switches
JP4551947B2 (ja) ストレージシステムを構成する電子機器を管理する装置
US7886186B2 (en) Storage system and management method for the same
US11829803B2 (en) Methods for dynamic throttling to satisfy minimum throughput service level objectives and devices thereof
JP6179119B2 (ja) 管理装置、管理方法、及び管理プログラム
US8019217B2 (en) Storage system and optical module switching method for storage system
JP4309321B2 (ja) ネットワークシステムの運用管理方法及びストレージ装置
JP2011159243A (ja) Raid装置、異常デバイス検出装置および異常デバイス検出方法
JP6194593B2 (ja) 冗長化システム、冗長化方法、記憶装置、及びプログラム
JP5874933B2 (ja) パス制御装置、パス制御方法、およびパス制御プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130604

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140122

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140128

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140328

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20140930