JP2015097006A - ストレージ制御装置、制御方法、及びプログラム - Google Patents

ストレージ制御装置、制御方法、及びプログラム Download PDF

Info

Publication number
JP2015097006A
JP2015097006A JP2013236654A JP2013236654A JP2015097006A JP 2015097006 A JP2015097006 A JP 2015097006A JP 2013236654 A JP2013236654 A JP 2013236654A JP 2013236654 A JP2013236654 A JP 2013236654A JP 2015097006 A JP2015097006 A JP 2015097006A
Authority
JP
Japan
Prior art keywords
storage
storage area
unit
information
access
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.)
Ceased
Application number
JP2013236654A
Other languages
English (en)
Inventor
健二 服部
Kenji Hattori
健二 服部
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 JP2013236654A priority Critical patent/JP2015097006A/ja
Priority to US14/533,465 priority patent/US20150143041A1/en
Publication of JP2015097006A publication Critical patent/JP2015097006A/ja
Ceased 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/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0662Virtualisation aspects
    • G06F3/0665Virtualisation aspects at area level, e.g. provisioning of virtual or logical volumes
    • 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
    • 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/0629Configuration or reconfiguration of storage systems
    • G06F3/0631Configuration or reconfiguration of storage systems by allocating resources to storage systems
    • 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/0629Configuration or reconfiguration of storage systems
    • G06F3/0635Configuration or reconfiguration of storage systems by changing the path, e.g. traffic rerouting, path reconfiguration
    • 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

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)
  • Computer Networks & Wireless Communication (AREA)
  • Debugging And Monitoring (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Computer Security & Cryptography (AREA)

Abstract

【課題】推奨パスの更新に係る処理負荷を低減すること。【解決手段】1つ又は複数の記録媒体に割り当てられた複数の第1記憶領域Rd1、Rd2、Rd3にそれぞれ対応し、対応する第1記憶領域Rd1、Rd2、Rd3にアクセス可能な複数の制御部21、22と、制御部21、22毎に、対応する1つ又は複数の第1記憶領域Rd1、Rd2、Rd3内で確保された単位記憶領域Ch1、Ch2、…が割り当てられる第2記憶領域23Aを記憶する記憶部23と、を有し、制御部21は、対応する第1記憶領域Rd1、Rd2とは異なる第1記憶領域Rd3に確保された単位記憶領域Ch3へのアクセス要求を受けた場合に、当該単位記憶領域Ch3へのアクセス経路として異なる第1記憶領域Rd3に対応する制御部22の情報を提供するストレージ制御装置20が提供される。【選択図】図1

Description

本発明は、ストレージ制御装置、制御方法、及びプログラムに関する。
業務サーバなどのコンピュータ(以下、サーバ)が扱う大量のデータは、複数のHDD(Hard Disk Drive)を有する信頼性の高いRAID(Redundant Arrays of Inexpensive Disks)装置などのストレージ装置を用いて管理される。最近では、SAN(Storage Area Network)と呼ばれるネットワークでサーバと複数のストレージ装置とを接続したストレージシステムなども広く利用されている。
ストレージ装置の記憶領域(以下、物理領域)は、論理的な記憶領域の単位(以下、LU:Logical Unit)に分割され、LU単位でサーバに認識される。例えば、各LUにはLUN(Logical Unit Number)と呼ばれる識別情報が付されており、サーバは、LUNを参照して各LUを認識することができる。なお、RAIDグループ毎に設定したLUをRLU(RAID LU)と呼ぶ場合がある。
近年、ストレージの仮想化に注目が集まっている。ストレージの仮想化は、ストレージ装置とサーバとの間に仮想化エンジンを設け、サーバに対して仮想化エンジンを1台の仮想的なストレージ装置に見せる技術である。仮想化エンジンは、物理領域を分割したLU(以下、物理LU)とは異なる仮想的なLU(以下、仮想LU)を用意し、1つ又は複数の物理LUから選定した記憶領域を仮想LUに割り当てる。
仮想LUの導入により、サーバが認識する記憶領域と物理領域との関係が高度に抽象化され、利用効率や運用形態の柔軟性などを向上させる効果が期待できる。ストレージの仮想化を適用した場合、サーバは、データを読み書きする場合、仮想LUにアクセスする。つまり、サーバは、仮想化エンジンを介して物理LUへのアクセスを実現する。このような仕組みを有するストレージシステムに関し、信頼性向上のためにサーバから物理LUへのアクセスパスを冗長化したマルチパス環境を構築する方法が提案されている。
マルチパス環境では一部のアクセスパスに障害が発生しても正常なアクセスパスを利用して運用を継続することができるため、ストレージシステムの信頼性向上に寄与する。マルチパス環境におけるアクセスパスの選定は、例えば、RTPG(REPORT TARGET PORT GROUPS)コマンドを利用して実現することができる。なお、RTPGコマンドは、SCSI(Small Computer System Interface)コマンドの1つである。サーバがRTPGコマンドを発行すると、RTPGコマンドを受けたストレージ装置は、推奨するアクセスパス(以下、推奨パス)をサーバに通知する。そして、サーバは、通知を受けた推奨パスを利用してデータを読み書きする。
ところで、仮想化したストレージシステムにおける物理領域の利用率を高める技術の1つにシンプロビジョニングと呼ばれる技術がある。通常、仮想LUには、サーバから要求されたサイズの物理領域が割り当てられる。一方、シンプロビジョニングを適用したストレージシステムでは、要求サイズの仮想LU(以下、TPV(Thin Provisioning Volume))が設定されるものの、要求サイズを上限として利用量に応じたサイズの物理領域が割り当てられる。そのため、現実の運用に即したストレージ容量で運用することが可能になり、利用率の向上や運用開始時のコスト低減などの効果が期待できる。
なお、仮想化したストレージシステムに関し、フラグメンテーションの回避及び物理領域の使用効率向上を目的として仮想LUへの物理領域の割り当てを好適に制御する方法が提案されている。また、TPVへの物理領域の割り当てに関し、未割り当ての物理領域を管理情報から特定し、特定された未割り当ての物理領域を複数のサブ領域に分割し、TPV内で規則的に並んだ連続領域にサブ領域を割り当てる方法が提案されている。
特開2007−157089号公報 特開2004−164370号公報 特開2008−59353号公報
上記のように、マルチパス環境におけるアクセスパスの選定は、ストレージ装置からサーバへと推奨パスを通知することにより実現される。1つの物理LUに対して推奨パスが1つに定まる場合、上述したようにRTPGコマンドを利用した推奨パスの通知が可能である。推奨パスが1つに定まらない場合(例えば、TPVを利用する場合)には、RR(REPORT REFERRALS)コマンドを利用することで仮想LUのLBA(Logical Block Addressing)範囲毎に推奨パスの通知を受けることが可能である。なお、RRコマンドは、SCSIコマンドの1つである。
推奨パスの通知方法としては、例えば、仮想LUに物理LUの領域が割り当てられ、アクセスパスが確定したタイミングで即座に推奨パスの通知が行われるようにする方法が考えられる。しかし、シンプロビジョニングを適用する場合、TPVの未使用LBA範囲にアクセスがある度にアクセスパスが確定する。そのため、シンプロビジョニングを適用したストレージシステムに上記の通知方法を適用すると、推奨パスの通知が頻繁に発生し、推奨パスの管理情報を更新する処理の負荷が増大する可能性がある。
そこで、1つの側面によれば、本発明の目的は、推奨パスの更新に係る処理負荷を低減したストレージ制御装置、制御方法、及びプログラムを提供することにある。
本開示の1つの側面によれば、1つ又は複数の記録媒体に割り当てられた複数の第1記憶領域にそれぞれ対応し、対応する第1記憶領域にアクセス可能な複数の制御部と、制御部毎に、対応する1つ又は複数の第1記憶領域内で確保された単位記憶領域が割り当てられる第2記憶領域を記憶する記憶部と、を有し、制御部は、対応する第1記憶領域とは異なる第1記憶領域に確保された単位記憶領域へのアクセス要求を受けた場合に、当該単位記憶領域へのアクセス経路として異なる第1記憶領域に対応する制御部の情報を提供するストレージ制御装置が提供される。
また、本開示の他の1つの側面によれば、1つ又は複数の記録媒体に割り当てられた複数の第1記憶領域にそれぞれ対応し、対応する第1記憶領域にアクセス可能な複数の制御部と、制御部毎に、対応する1つ又は複数の第1記憶領域内で確保された単位記憶領域が割り当てられる第2記憶領域を記憶する記憶部と、を有するコンピュータの制御部が、対応する第1記憶領域とは異なる第1記憶領域に確保された単位記憶領域へのアクセス要求を受けた場合に、当該単位記憶領域へのアクセス経路として異なる第1記憶領域に対応する制御部の情報を提供する制御方法が提供される。
また、本開示の他の1つの側面によれば、1つ又は複数の記録媒体に割り当てられた複数の第1記憶領域にそれぞれ対応し、対応する第1記憶領域にアクセス可能な複数の制御部と、制御部毎に、対応する1つ又は複数の第1記憶領域内で確保された単位記憶領域が割り当てられる第2記憶領域を記憶する記憶部と、を有するコンピュータに、制御部が、対応する第1記憶領域とは異なる第1記憶領域に確保された単位記憶領域へのアクセス要求を受けた場合に、当該単位記憶領域へのアクセス経路として異なる第1記憶領域に対応する制御部の情報を提供する処理を実行させるプログラムが提供される。
本発明によれば、推奨パスの更新に係る処理負荷を低減することが可能になる。
第1実施形態に係るストレージシステムの一例を示した図である。 第2実施形態に係るストレージシステムについて説明するための第1の図である。 第2実施形態に係るストレージシステムについて説明するための第2の図である。 第2実施形態に係る推奨パスの管理方法について説明するための第1の図である。 第2実施形態に係る推奨パスの管理方法について説明するための第2の図である。 第2実施形態に係る推奨パスの管理方法について説明するための第3の図である。 第2実施形態に係るサーバが有する機能を実現することが可能なハードウェアの一例を示した図である。 第2実施形態に係るストレージ制御装置が有する機能について説明するための図である。 第2実施形態に係るストレージ制御装置が保持するパス状態管理テーブルの一例を示した図である。 第2実施形態に係るストレージ制御装置が保持する論理ボリューム管理テーブルの一例を示した図である。 第2実施形態に係るストレージ制御装置が保持する論理ブロック管理テーブルの一例を示した図である。 第2実施形態に係るストレージ制御装置が保持するセンス通知統計管理テーブルの一例を示した図である。 第2実施形態に係るストレージシステムの動作例(認識時の動作)を示した図である。 第2実施形態に係るストレージシステムの動作例(クロスアクセス検出時の動作)を示した第1の図である。 第2実施形態に係るストレージシステムの動作例(クロスアクセス検出時の動作)を示した第2の図である。
以下に添付図面を参照しながら、本発明の実施形態について説明する。なお、本明細書及び図面において実質的に同一の機能を有する要素については、同一の符号を付することにより重複説明を省略する場合がある。
<1.第1実施形態>
図1を参照しながら、第1実施形態に係るストレージシステムについて説明する。なお、図1は、第1実施形態に係るストレージシステムの一例を示した図である。
図1に示すように、第1実施形態に係るストレージシステムは、サーバ10、ストレージ制御装置20、及びストレージ装置30を含む。
サーバ10は、ストレージ制御装置20を介してストレージ装置30が有する1つ又は複数の記録媒体にアクセスする。記録媒体としては、例えば、HDDや磁気テープなどの磁気記録媒体、光ディスクなどの光記録媒体、SSD(Solid State Drive)などの半導体メモリが利用可能である。RAID装置は、ストレージ装置30の一例である。
ストレージ制御装置20は、制御部21、22と、記憶部23とを有する。なお、図1の例では、ストレージ制御装置20が有する制御部の数は2つ(制御部21、22)であるが、3つ以上の制御部がストレージ制御装置20に設けられていてもよい。また、図1の例では、制御部21をCM#1と表記し、制御部22をCM#2と表記している。
記憶部23は、RAM(Random Access Memory)などの揮発性記憶装置、或いは、HDDやフラッシュメモリなどの不揮発性記憶装置である。制御部21、22は、例えば、CPU(Central Processing Unit)やDSP(Digital Signal Processor)などのプロセッサである。但し、制御部21、22は、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)などの電子回路であってもよい。制御部21、22は、例えば、記憶部23又は他のメモリに記憶されたプログラムを実行する。
制御部21、22は、ストレージ装置30が有する1つ又は複数の記録媒体に割り当てられた複数の第1記憶領域Rd1、Rd2、Rd3にそれぞれ対応付けられている。なお、上述した物理LUやRLUは、第1記憶領域の一例である。また、複数の第1記憶領域Rd1、Rd2、Rd3は、制御部21、22が管理するストレージプール23Bに登録されている。図1の例では、ストレージプール23Bに登録されている第1記憶領域の数は3つ(第1記憶領域Rd1、Rd2、Rd3)であるが、ストレージプール23Bに登録可能な第1記憶領域の数は2以下又は4以上であってもよい。
制御部21、22は、それぞれ自身に対応する第1記憶領域Rd1、Rd2、Rd3にアクセスすることが可能である。図1の例では、制御部21(CM#1)と第1記憶領域Rd1、Rd2とが対応付けられ、制御部22(CM#2)と第1記憶領域Rd3とが対応付けられている。従って、制御部21は、第1記憶領域Rd1、Rd2にアクセス可能である。また、制御部22は、第1記憶領域Rd3にアクセス可能である。
記憶部23には、ストレージプール23Bの情報、及びストレージプール23Bに登録された第1記憶領域Rd1、Rd2、Rd3の情報が格納される。また、記憶部23には、第2記憶領域23Aの情報が格納される。第2記憶領域23Aは、論理的な記憶領域(論理ボリューム)である。上述したTPVは、第2記憶領域の一例である。なお、図1の例では1つの第2記憶領域23Aしか記載されていないが、2以上の第2記憶領域を設けることも可能である。
第2記憶領域23Aには、設定したサイズの単位記憶領域Ch1、Ch2、…が割り当てられる。また、単位記憶領域Ch1、Ch2、…のそれぞれには、第1記憶領域Rd1、Rd2、Rd3が有する物理領域の一部又は全部が割り当てられる。図1の例では、第1記憶領域Rd1が有する物理領域の一部又は全部が単位記憶領域Ch1に割り当てられている。また、第1記憶領域Rd2が有する物理領域の一部又は全部が単位記憶領域Ch2に割り当てられている。また、第1記憶領域Rd3が有する物理領域の一部又は全部が単位記憶領域Ch3に割り当てられている。なお、上述したTPVに割り当てられる単位ブロック(チャンク)は、単位記憶領域の一例である。
上記のように、第2記憶領域23Aには、制御部21、22毎に、対応する1つ又は複数の第1記憶領域Rd1、Rd2、Rd3内で確保された単位記憶領域Ch1、Ch2、…が割り当てられる。
図1の例では、制御部21がアクセス可能な第1記憶領域Rd1、Rd2内で確保された単位記憶領域Ch1、及び制御部22がアクセス可能な第1記憶領域Rd3内で確保された単位記憶領域Ch2が第2記憶領域23A内で混在している。つまり、ストレージ制御装置20は、制御部21を経由するアクセスパスを与える単位記憶領域Ch1と、制御部22を経由するアクセスパスを与える単位記憶領域Ch2とが1つの第2記憶領域23Aに混在する状態を許容する。
制御部21は、対応する第1記憶領域Rd1、Rd2とは異なる第1記憶領域Rd3に確保された単位記憶領域Ch3へのアクセス要求を受けた場合に、当該単位記憶領域Ch3へのアクセス経路として第1記憶領域Rd3に対応する制御部22の情報を提供する。例えば、制御部21は、単位記憶領域Ch3にデータを書き込むコマンド(Writeコマンド)をサーバ10から受けた場合、単位記憶領域Ch3に対応する制御部22の情報をサーバ10に提供する。
制御部21は、第1記憶領域Rd3にアクセスする場合、第1記憶領域Rd3にアクセス可能な制御部22を介して第1記憶領域Rd3へアクセスする。例えば、第1記憶領域Rd3の物理領域が割り当てられた単位記憶領域Ch3に対するWriteコマンドを受けた制御部21は、制御部22を介して第1記憶領域Rd3へデータを書き込む。このように、一の制御部が他の制御部を介して物理領域へとアクセスすることをクロスアクセスと呼ぶ。クロスアクセスの発生は、アクセス性能を低下させる原因となりうる。
そこで、制御部21、22は、クロスアクセスの発生を抑制するアクセスパス(以下、推奨パス)の情報をサーバ10へと提供する。サーバ10が推奨パスの情報を利用することで、クロスアクセスの発生を抑制することが可能になり、アクセス性能の向上が期待できる。推奨パスの情報は、単位記憶領域Ch1、Ch2、Ch3、…のそれぞれについて管理される。また、新たな単位記憶領域が第2記憶領域23Aに設けられた場合、新たな単位記憶領域の推奨パスをサーバ10へと提供する処理が発生する。
ストレージシステムの運用開始時など、頻繁に単位記憶領域が作成されるような状況では、推奨パスの情報をサーバ10へと提供する処理が頻発する可能性がある。このような処理が頻発すると、制御部21、22の処理負荷やサーバ10とストレージ制御装置20との間の通信負荷が増大する可能性が懸念される。そのため、第1実施形態に係る制御部21、22は、クロスアクセスが発生した場合に推奨パスの情報をサーバ10へと提供する。その際、制御部21、22は、第2記憶領域23Aに登録されている全ての単位記憶領域Ch1、Ch2、Ch3、…に関する推奨パスの情報ではなく、発生したクロスアクセスが発生したアクセスパスに対する推奨パスの情報をサーバ10へ提供する。
上記のような仕組みを有することで、ストレージ制御装置20は、クロスアクセスによるアクセス性能の低下を抑制することができる。さらに、ストレージ制御装置20は、推奨パスの情報をサーバ10へと提供する処理の処理負荷(推奨パスの更新に係る処理負荷)を低減することが可能になる。
以上、第1実施形態について説明した。
<2.第2実施形態>
次に、第2実施形態について説明する。
[2−1.システム]
まず、図2及び図3を参照しながら、第2実施形態に係るストレージシステムについて説明する。なお、図2は、第2実施形態に係るストレージシステムについて説明するための第1の図である。また、図3は、第2実施形態に係るストレージシステムについて説明するための第2の図である。
図2に示すように、第2実施形態に係るストレージシステムは、サーバ100、ストレージ制御装置200、及びディスクアレイ301、302を含む。
サーバ100は、ストレージ制御装置200を介してディスクアレイ301、302にアクセスする。ディスクアレイ301は、複数の記録媒体D1、D2、D3、D4を有する。また、ディスクアレイ302は、複数の記録媒体D5、D6、D7、D8を有する。記録媒体としては、例えば、HDDや磁気テープなどの磁気記録媒体、光ディスクなどの光記録媒体、SSDなどの半導体メモリが利用可能である。RAID装置は、ディスクアレイ301、302の一例である。
ストレージ制御装置200は、コントローラ201、202を有する。なお、図2の例では、ストレージ制御装置200が有するコントローラの数は2つ(コントローラ201、202)であるが、3つ以上のコントローラがストレージ制御装置200に設けられていてもよい。また、以下では、コントローラ201をCM#1と表記し、コントローラ202をCM#2と表記する場合がある。
図3に示すように、サーバ100は、ストレージ制御装置200を介してディスクアレイ301、302の物理領域へとアクセスするためのアクセスパスを管理するマルチパスドライバ101を有する。サーバ100には複数のホストバスアダプタ(HBA:Host Bus Adapter)が設けられており、それぞれがストレージ制御装置200のコントローラ201、202に設けられたポート(Port)に接続される。マルチパスドライバ101は、HBAを介してコントローラ201、202にアクセスする。また、マルチパスドライバ101は、物理領域へとアクセスする際に用いる好適なアクセスパス(推奨パス)の情報を管理する。
コントローラ201、202は、サーバ100に提供される論理的な記憶領域を格納する論理ボリューム、及び、ディスクアレイ301、302の物理領域を割り当てるディスクプールを管理する。以下、簡単のために、コントローラ201、202により管理される論理ボリュームがTPVである場合について考える。また、ディスクアレイ301、302の物理領域をグループ分けしたRAIDグループR1、R2、R3がディスクプールに登録されている場合について考える。以下、RAIDグループRk(k=1,2,3)の物理領域をRLU領域Rkと表記する。
コントローラ201はRLU領域R1、R2に対してアクセス可能に設定され、コントローラ202はRLU領域R3にアクセス可能に設定されているものとする。つまり、コントローラ201はRLU領域R1、R2の担当コントローラであり、コントローラ202はRLU領域R3の担当コントローラである場合について考える。以下、担当コントローラを担当CMと表記する場合がある。
TPVには、チャンクと呼ばれる論理的な記憶領域の単位が割り当てられる。チャンクには、RLU領域の一部又は全部が割り当てられる。図3の例では、TPVにチャンクC1、C2、C3、…が割り当てられ、チャンクC1にRLU領域R1、チャンクC2にRLU領域R2、チャンクC3にRLU領域R3が割り当てられている。
チャンクは、コントローラ201、202がサーバ100からデータの書き込みを要求するコマンド(Writeコマンド)を受けた場合に生成される。例えば、既存のチャンクに割り当てられたRLU領域を超えてデータの書き込みが行われる場合、新たなチャンクが生成され、そのチャンクに割り当てられたRLU領域に対してデータの書き込みが行われる。
サーバ100は、TPVのデータにアクセスする場合、マルチパスドライバ101によりアクセスパスの選定処理を実行する。例えば、コントローラ202が担当するRLU領域R3を割り当てたチャンクC3へのアクセス要求をコントローラ201に送信すると、コントローラ201がコントローラ202を介してRLU領域R3へとアクセスするクロスアクセスが発生する。そのため、マルチパスドライバ101は、チャンクC3へのアクセス要求がコントローラ202へと送信されるようなアクセスパス(推奨パス)を選定し、クロスアクセスの発生を抑制する。
マルチパスドライバ101は、例えば、RRコマンドを利用してTPVのLBA範囲毎に推奨パスの情報を取得する。マルチパスドライバ101は、取得した推奨パスの情報を保持し、保持している推奨パスの情報をアクセスパスの選定に利用する。このようにLBA範囲毎に推奨パスの情報を管理することで、RLU領域の担当CMが異なる複数のチャンクが1つのTPV内に混在してもマルチパスドライバ101による推奨パスの選定が可能になる。
(推奨パスの管理方法について)
ここで、図4〜図6を参照しながら、第2実施形態に係るストレージシステムによる推奨パスの管理方法について、さらに説明する。
なお、図4は、第2実施形態に係る推奨パスの管理方法について説明するための第1の図である。また、図5は、第2実施形態に係る推奨パスの管理方法について説明するための第2の図である。また、図6は、第2実施形態に係る推奨パスの管理方法について説明するための第3の図である。
推奨パスの管理方法としては、例えば、上述したRTPGコマンドを利用する論理ボリューム単位の管理方法(以下、管理方法#1)や、上述したRRコマンドを利用するLBA単位の管理方法(以下、管理方法#2)などがある。図4には、論理ボリューム単位で推奨パスを管理する方法を示している。例えば、1つの論理ボリュームに担当CMの異なる複数のRLU領域が割り当てられないような場合には管理方法#1が適用可能である。
管理方法#1の場合、推奨パスを管理するためのパス管理情報は、アクセス対象とする論理ボリューム(L1、…、L4)と推奨パスとを対応付ける情報となる。図4の例では、論理ボリュームL1に割り当てられたRLU領域R1の担当CMがCM#1である。そのため、論理ボリュームL1へアクセスする場合の推奨パスは、CM#1を経由するアクセスパス(P1)に設定される。同様に、論理ボリュームL2に割り当てられたRLU領域R2の担当CMがCM#1であるため、論理ボリュームL2へアクセスする場合の推奨パスは、CM#1を経由するアクセスパス(P1)に設定される。
また、論理ボリュームL3に割り当てられたRLU領域R3の担当CMはCM#2であるため、論理ボリュームL3へアクセスする場合の推奨パスは、CM#2を経由するアクセスパス(P2)に設定される。同様に、論理ボリュームL4に割り当てられたRLU領域R3の担当CMがCM#2であるため、論理ボリュームL4へアクセスする場合の推奨パスは、CM#2を経由するアクセスパス(P2)に設定される。このように、1つの論理ボリュームと1つの担当CMとを対応付ける場合、論理ボリューム毎に推奨パスを確定させることができる。そのため、RTPGコマンドを利用して推奨パスが得られる。
一方、TPVのような論理ボリュームの場合、図5に示すように、担当CMが異なる複数のRLU領域が1つのTPVに割り当てられることがある。図5の例では、論理ボリュームとして2つのTPV(TPV1、TPV2)が設けられており、TPV1に2つのチャンクが含まれている。チャンクC1にはRLU領域R1が割り当てられ、チャンクC2にはRLU領域R3が割り当てられている。そのため、チャンクC1へアクセスする場合の推奨パスは、RLU領域R1の担当CMであるCM#1を経由するアクセスパスになる。一方、チャンクC2へアクセスする場合の推奨パスは、RLU領域R3の担当CMであるCM#2を経由するアクセスパスになる。
例えば、管理方法#1と同様にTPV単位で推奨パスを管理し、CM#1を経由するアクセスパスをTPV1の推奨パスに設定した場合、チャンクC2にアクセスする際にクロスアクセスが発生する。このような場合、図6に示すように、TPVのLBA範囲毎に推奨パスを管理できる管理方法#2を適用すれば、クロスアクセスの発生を抑制することができる。図6の例では、アクセス対象をTPV単位とせず、TPVに割り当てられたチャンクのLBA範囲を単位に推奨パスを対応付けるパス管理情報を利用している。
管理方法#2を適用すると、同じTPV1にアクセスする場合でも、チャンクC1へのアクセスにはCM#1を経由する推奨パスが選定され、チャンクC2へのアクセスにはCM#2を経由する推奨パスが選定される。その結果、図5に例示したようなクロスアクセスの発生が抑制される。但し、新たなチャンクが生成され、RLU領域が割り当てられる度に推奨パスの情報がストレージ制御装置200からマルチパスドライバ101へと通知されると、通知処理の負担やパス管理情報の更新処理にかかる負担が大きくなる。例えば、TPVの運用開始時など、チャンクが頻繁に生成される状況では負荷が高くなる。
そこで、第2実施形態に係るストレージシステムは、クロスアクセスの発生を検知し、クロスアクセスの発生時にパス管理情報の更新に係る処理を実行する。このような仕組みにすることで、新たなチャンクの生成が頻繁に発生する運用開始時などであっても、負荷の増大によるアクセス性能の低下を抑制することができる。以下では、この仕組みを実現するストレージ制御装置200の機能などについて、さらに説明する。
以上、第2実施形態に係るストレージシステムについて説明した。
[2−2.ハードウェア]
次に、図7を参照しながら、サーバ100のハードウェアについて説明する。なお、図7は、第2実施形態に係るサーバが有する機能を実現することが可能なハードウェアの一例を示した図である。
サーバ100が有する機能は、例えば、図7に示す情報処理装置のハードウェア資源を用いて実現することが可能である。つまり、サーバ100が有する機能は、コンピュータプログラムを用いて図7に示すハードウェアを制御することにより実現される。
図7に示すように、このハードウェアは、主に、CPU902と、ROM(Read Only Memory)904と、RAM906と、ホストバス908と、ブリッジ910とを有する。さらに、このハードウェアは、外部バス912と、インターフェース914と、入力部916と、出力部918と、記憶部920と、ドライブ922と、接続ポート924と、通信部926とを有する。
CPU902は、例えば、演算処理装置又は制御装置として機能し、ROM904、RAM906、記憶部920、又はリムーバブル記録媒体928に記録された各種プログラムに基づいて各構成要素の動作全般又はその一部を制御する。ROM904は、CPU902に読み込まれるプログラムや演算に用いるデータなどを格納する記憶装置の一例である。RAM906には、例えば、CPU902に読み込まれるプログラムや、そのプログラムを実行する際に変化する各種パラメータなどが一時的又は永続的に格納される。
これらの要素は、例えば、高速なデータ伝送が可能なホストバス908を介して相互に接続される。一方、ホストバス908は、例えば、ブリッジ910を介して比較的データ伝送速度が低速な外部バス912に接続される。また、入力部916としては、例えば、マウス、キーボード、タッチパネル、タッチパッド、ボタン、スイッチ、及びレバーなどが用いられる。さらに、入力部916としては、赤外線やその他の電波を利用して制御信号を送信することが可能なリモートコントローラが用いられることもある。
出力部918としては、例えば、CRT(Cathode Ray Tube)、LCD(Liquid Crystal Display)、PDP(Plasma Display Panel)、又はELD(Electro-Luminescence Display)などのディスプレイ装置が用いられる。また、出力部918として、スピーカやヘッドホンなどのオーディオ出力装置、又はプリンタなどが用いられることもある。つまり、出力部918は、情報を視覚的又は聴覚的に出力することが可能な装置である。
記憶部920は、各種のデータを格納するための装置である。記憶部920としては、例えば、HDDなどの磁気記憶デバイスが用いられる。また、記憶部920として、SSD(Solid State Drive)やRAMディスクなどの半導体記憶デバイス、光記憶デバイス、又は光磁気記憶デバイスなどが用いられてもよい。
ドライブ922は、着脱可能な記録媒体であるリムーバブル記録媒体928に記録された情報を読み出し、又はリムーバブル記録媒体928に情報を書き込む装置である。リムーバブル記録媒体928としては、例えば、磁気ディスク、光ディスク、光磁気ディスク、又は半導体メモリなどが用いられる。
接続ポート924は、例えば、USB(Universal Serial Bus)ポート、IEEE1394ポート、SCSI(Small Computer System Interface)、RS−232Cポート、又は光オーディオ端子など、外部接続機器930を接続するためのポートである。外部接続機器930としては、例えば、プリンタなどが用いられる。
通信部926は、ネットワーク932に接続するための通信デバイスである。通信部926としては、例えば、有線又は無線LAN(Local Area Network)用の通信回路、WUSB(Wireless USB)用の通信回路、光通信用の通信回路やルータ、ADSL(Asymmetric Digital Subscriber Line)用の通信回路やルータ、携帯電話ネットワーク用の通信回路などが用いられる。通信部926に接続されるネットワーク932は、有線又は無線により接続されたネットワークであり、例えば、インターネット、LAN、放送網、衛星通信回線などを含む。
以上、サーバ100のハードウェアについて説明した。なお、ストレージ制御装置200が有する機能も、図7に例示したハードウェアの一部又は全部を用いて実現することができる。そのため、ストレージ制御装置200のハードウェアについては説明を省略する。
[2−3.ストレージ制御装置の機能]
次に、図8を参照しながら、ストレージ制御装置200が有する機能について説明する。なお、図8は、第2実施形態に係るストレージ制御装置が有する機能について説明するための図である。
図8に示すように、ストレージ制御装置200は、記憶部211と、物理ボリューム管理部212と、論理ボリューム管理部213と、推奨パス情報提供部214とを有する。
なお、記憶部211の機能は、上述したRAM906や記憶部920などを用いて実現できる。物理ボリューム管理部212、論理ボリューム管理部213、及び推奨パス情報提供部214の機能は、上述したCPU902などを用いて実現できる。
(記憶部211)
記憶部211には、プール情報211A、パス管理情報211B、TPV情報211C、及び統計情報211Dが格納される。プール情報211Aは、管理対象のディスクプールに関する情報及びディスクプールに登録されたRLU領域に関する情報を含む。パス管理情報211Bは、サーバ100のポートとコントローラ201、202との接続状態(アクセスパスの有効性)を管理する情報を含む。
TPV情報211Cは、管理対象のTPVに関する情報及びTPVに割り当てられたチャンクに関する情報を含む。また、TPV情報211Cは、チャンクとRLU領域とを対応付ける情報、及びRLU領域の担当CMに関する情報を含む。統計情報211Dは、ストレージ制御装置200からサーバ100へ通知したセンスの統計値(合計値など)を管理する情報を含む。例えば、統計情報211Dには、マルチパスの再構成を要求するセンスの通知回数を示す情報が含まれる。
ここで、図9〜図12を参照しながら、パス管理情報211B、TPV情報211C、及び統計情報211Dについて、さらに説明する。
なお、図9は、第2実施形態に係るストレージ制御装置が保持するパス状態管理テーブルの一例を示した図である。また、図10は、第2実施形態に係るストレージ制御装置が保持する論理ボリューム管理テーブルの一例を示した図である。また、図11は、第2実施形態に係るストレージ制御装置が保持する論理ブロック管理テーブルの一例を示した図である。また、図12は、第2実施形態に係るストレージ制御装置が保持するセンス通知統計管理テーブルの一例を示した図である。
(パス管理情報211B)
図9に例示したパス状態管理テーブルは、パス管理情報211Bの一例である。また、パス状態管理テーブルは、TPVなどの論理ボリューム毎に設けられる。
図9に示すように、パス状態管理テーブルは、コントローラの情報と、ポート(コントローラ側)の情報と、サーバWWN(World Wide Name)の情報と、パス状態とを対応付ける。なお、WWNは、ファイバーチャネルなどを用いるストレージエリアネットワークにおいて機器を一意に識別するための識別子である。サーバWWNは、サーバ100に搭載されたHBAを識別する識別子である。パス状態は、ポートとサーバ100に搭載されたHBAとの接続状態を表す。
例えば、サーバAからCM#1のポート0へとログインがあった場合、CM#1、ポート0、サーバAに対応するパス状態は「オン」となる。また、サーバポートのリンクダウンなどにより、サーバAとCM#1のポート0との接続が切れた場合、CM#1、ポート0、サーバAに対応するパス状態は「オフ」となる。
図9の例では、CM#1のポート0とサーバAとの間のパス状態が「オン」、CM#1のポート1とサーバBとの間のパス状態が「オフ」となっている。また、CM#2のポート0とサーバCとの間のパス状態が「オン」、CM#2のポート1とサーバDとの間のパス状態が「オン」となっている。例えば、あるコントローラがサーバ100からコマンドを受信したとき、コマンドを受信したポートとは異なるポートが全てオフ状態である場合にはセンスの通知が抑止される。
(TPV情報211C)
図10に例示した論理ボリューム管理テーブル、及び図11に例示した論理ブロック管理テーブルは、TPV情報211Cの一例である。なお、TPVは、論理ボリュームの一例である。また、チャンクは、論理ブロックの一例である。また、RLU領域は、物理ボリュームの一例である。また、各チャンクに割り当てられるRLU領域の一部又は全部の物理領域は、物理ブロックの一例である。
図10に示すように、論理ボリューム管理テーブルは、論理ボリュームを識別するLV(Logical Volume)番号と、論理ボリュームの先頭LBA及び終了LBAと、エントリ数とを対応付ける。エントリ数は、後述するセンス通知統計管理テーブルにエントリされているLBA範囲の数を表す。このエントリ数は、後述する推奨パス情報提供部214がセンス通知統計管理テーブルを参照する際に利用される。例えば、エントリ数が0の場合、推奨パス情報提供部214は、センス通知統計管理テーブルを参照しない。
図10の例では、00000000hから00001000hまでのLBA範囲を有するLV番号0000hの論理ボリュームが設けられている。また、LV番号0000hの論理ボリュームについて、センス通知統計管理テーブル内に2つのエントリが存在する。また、00000000hから00002000hまでのLBA範囲を有するLV番号0001hの論理ボリュームが設けられている。また、LV番号0001hの論理ボリュームについては、センス通知統計管理テーブル内にエントリが存在しない。このように、論理ボリューム管理テーブルには、論理ボリュームに関する情報が格納される。
一方、図11に示すように、論理ブロック管理テーブルは、論理ブロックを識別する論理ブロック番号と、物理ボリューム番号及び物理ブロック番号と、担当CMとを対応付ける。つまり、論理ブロック管理テーブルは、論理ブロック番号が示す論理ブロックに割り当てた物理ブロックについて、物理ブロックを含む物理ボリュームと、その物理ボリュームの担当CMとを対応付ける。なお、論理ブロック管理テーブルは、論理ボリューム毎に設けられる。
図11の例では、論理ブロック番号が00000000hの論理ブロックに対し、物理ブロック番号が00000100hの物理ブロックが割り当てられている。この物理ブロックは、物理ボリューム番号が0100hの物理ボリュームに含まれる。さらに、この物理ボリュームの担当CMはCM#1である。例えば、論理ブロック番号が00000000hの論理ブロックへのアクセスを要求するコマンドを担当CM(CM#1)とは異なるCM#2が受けた場合、そのアクセスがクロスアクセスであると判断される。つまり、論理ブロック管理テーブルを参照することにより、クロスアクセスの発生を検出することができる。
(統計情報211D)
図12に例示したセンス通知統計管理テーブルは、統計情報211Dの一例である。
図12に示すように、センス通知統計管理テーブルは、LV番号と、論理ボリュームの先頭LBA及び終了LBAと、センス統計値とを対応付ける。センス統計値は、ストレージ制御装置200からサーバ100に対して通知されたセンスの数を示す。例えば、センス統計値が予め設定した閾値を超えた場合、対応する論理ボリュームを割り当てたサーバ100に対するセンスの通知が抑止される。また、対応するLBA範囲に割り当てた物理ブロックが移動した場合など、論理ボリュームに変更が生じた場合には該当するエントリが削除される。
(物理ボリューム管理部212)
再び図8を参照する。物理ボリューム管理部212は、プール情報211Aを管理する。例えば、物理ボリューム管理部212は、ディスクプールに対してRLU領域を登録する処理や、RLU領域の利用状況を管理する処理などを実行する。
(論理ボリューム管理部213)
論理ボリューム管理部213は、TPV情報211Cを管理する。例えば、論理ボリューム管理部213は、TPVにチャンクを登録する処理や、チャンクへRLU領域を割り当てる処理などを実行する。例えば、新たなTPVを設けた場合、論理ボリューム管理部213は、新たに設けたTPVに関する情報をTPV情報211Cに追加する。また、TPVに新たなチャンクを登録した場合、論理ボリューム管理部213は、新たに登録したチャンクについてTPV情報211Cを更新する。
(推奨パス情報提供部214)
推奨パス情報提供部214は、クロスアクセスを検出した場合にマルチパスの再構成を促すセンスをサーバ100に通知する。また、推奨パス情報提供部214は、センスに応じてサーバ100から送信されたRRコマンドを受信した場合にLBA範囲毎に設定された推奨パスの情報をサーバ100に提供する。これらの機能を実現するために、推奨パス情報提供部214は、クロスアクセス検出部231、及び情報提供部232を有する。
クロスアクセス検出部231は、TPV情報211C(例えば、論理ブロック管理テーブル)を参照し、コマンドが示すアクセス対象の論理ブロックに対応する担当CMを特定する。また、クロスアクセス検出部231は、コマンドを受けたコントローラと担当CMとが同じであるか否かを判定する。コマンドを受けたコントローラと担当CMとが異なる場合、クロスアクセス検出部231は、クロスアクセスが発生したと判定する。このように、クロスアクセス検出部231は、クロスアクセスの発生を検出する。
例えば、論理ブロック番号が00001000hの論理ブロックに対するWriteコマンドを受けた場合、クロスアクセス検出部231は、図11に例示した論理ブロック管理テーブルを参照して担当CM(CM#2)を特定する。また、クロスアクセス検出部231は、Writeコマンドを受けたコントローラがCM#2であるか否かを判定する。Writeコマンドを受けたコントローラがCM#1である場合、クロスアクセス検出部231は、クロスアクセスが発生したと判定する。クロスアクセスを検出したクロスアクセス検出部231は、クロスアクセスの発生を情報提供部232に通知する。
クロスアクセスの発生を通知された情報提供部232は、サーバ100に対してマルチパスの再構築を促すセンスを通知する。また、情報提供部232は、統計情報211D(例えば、センス通知統計管理テーブル)のセンス統計値を更新する。なお、センス通知統計管理テーブルのエントリ数が変更された場合、情報提供部232は、論理ボリューム管理テーブルのエントリ数も更新する。通知したセンスに応じてRRコマンドが発行された場合、情報提供部232は、TPV情報211C(例えば、論理ブロック管理テーブル)を参照して担当CMを経由するアクセスパス(推奨パス)の情報をサーバ100に提供する。
以上、ストレージ制御装置200が有する機能について説明した。
[2−4.処理フロー]
次に、図13〜図15を参照しながら、第2実施形態に係るストレージシステムが実行する処理の流れについて説明する。なお、マルチパスドライバ101がストレージ制御装置200を認識する際(認識時)に実行される処理の流れと、クロスアクセスが検出された際(クロスアクセス検出時)に実行される処理の流れとを分けて説明する。
(認識時の動作)
まず、図13を参照しながら、ストレージ制御装置200をマルチパスドライバ101が認識した時に実行される処理の流れについて説明する。なお、図13は、第2実施形態に係るストレージシステムの動作例(認識時の動作)を示した図である。
(S101)マルチパスドライバ101は、RRコマンドを発行する。このとき、マルチパスドライバ101は、ストレージ制御装置200が管理するTPVに登録された全てのチャンクに関するLBA範囲毎の推奨パスを通知させるRRコマンド(all)を発行する。
(S102)RRコマンド(all)を取得したストレージ制御装置200は、REFERRALSデータ(all)をサーバ100に提供する。REFERRALSデータ(all)は、ストレージ制御装置200が管理するTPVに登録された全てのチャンクに関するLBA範囲毎の推奨パスを示す情報を含む。例えば、ストレージ制御装置200は、推奨パス情報提供部214の機能により、TPV情報211Cを参照し、TPVのLBA範囲と担当CMとの関係を示す情報をサーバ100に提供する。
(S103)REFERRALSデータ(all)を取得したマルチパスドライバ101は、取得したREFERRALSデータ(all)に基づいて推奨パス管理テーブルを作成する。推奨パス管理テーブルには、TPVのLBA範囲と推奨パス(担当CM)とを対応付ける情報がTPV毎に格納されている。推奨パス管理テーブルは、サーバ100がTPVへアクセスする際に参照され、アクセス時にコマンドを通知するコントローラ(アクセスパス)の選定に利用される。
以上が認識時に実行される処理の流れである。
(クロスアクセス検出時の動作)
次に、図14及び図15を参照しながら、クロスアクセス検出時に実行される処理の流れについて説明する。なお、図14は、第2実施形態に係るストレージシステムの動作例(クロスアクセス検出時の動作)を示した第1の図である。また、図15は、第2実施形態に係るストレージシステムの動作例(クロスアクセス検出時の動作)を示した第2の図である。
(S111)マルチパスドライバ101は、ストレージ制御装置200に対するコマンド(Readコマンド又はWriteコマンド)を発行する。
(S112)マルチパスドライバ101からコマンドを受けたストレージ制御装置200は、推奨パス情報提供部214の機能により、クロスアクセスの検出処理を実行する。例えば、推奨パス情報提供部214は、TPV情報211C(論理ブロック管理テーブル)を参照し、コマンドを受けたコントローラが担当CMと同じであるか否かを判定する。コマンドを受けたコントローラと担当CMとが異なる場合、推奨パス情報提供部214は、クロスアクセスが発生したと判定する。
(S113)クロスアクセスが検出された場合、ストレージ制御装置200は、推奨パス情報提供部214の機能により、推奨パスの状態変更(マルチパスの再構成)を通知するためのセンスをマルチパスドライバ101に通知する。このとき、推奨パス情報提供部214は、クロスアクセスを検出したLBA範囲について推奨パスの状態変更を通知するためのセンスをマルチパスドライバ101に通知する。
(S114)ストレージ制御装置200から推奨パスの状態変更が通知されたマルチパスドライバ101は、RRコマンド(LBA)を発行する。RRコマンド(LBA)は、上述したRRコマンド(all)とは異なり、特定のLBA範囲(この場合、クロスアクセスが検出されたLBA範囲)について推奨パスの情報を通知するように要求するコマンドである。このとき、マルチパスドライバ101は、ストレージ制御装置200から受けたセンスが示すLBA範囲を特定したRRコマンド(LBA)を発行する。
(S115)RRコマンド(LBA)を取得したストレージ制御装置200は、REFERRALSデータ(LBA)をサーバ100に提供する。REFERRALSデータ(LBA)は、クロスアクセスが発生したLBA範囲の推奨パスを示す情報を含む。例えば、ストレージ制御装置200は、推奨パス情報提供部214の機能により、TPV情報211Cを参照し、RRコマンド(LBA)により特定されるLBA範囲と担当CMとの関係を示す情報をサーバ100に提供する。
(S116)REFERRALSデータ(LBA)を取得したマルチパスドライバ101は、取得したREFERRALSデータ(LBA)に基づいて推奨パス管理テーブルを更新する。更新後の推奨パス管理テーブルは、サーバ100がTPVへアクセスする際に参照され、アクセス時にコマンドを通知するコントローラ(アクセスパス)の選定に利用される。
ここで、図15を参照しながら、S112及びS113の処理に係るストレージ制御装置200の動作について、さらに説明する。図15に示した一連の処理は、主にストレージ制御装置200が有する推奨パス情報提供部214により実行される。
(S121)推奨パス情報提供部214は、RRコマンドを利用するためのREFERRALS機能が有効か否かを判定する。REFERRALS機能が有効な場合、処理はS122に進む。一方、REFERRALS機能が有効ではない場合、図13〜図15に示した一連の処理は終了する。
(S122)推奨パス情報提供部214は、パス管理情報211B(例えば、パス状態管理テーブル)を参照し、全対向パス(コマンドを受けたポート以外の全ポートを通るパス)がオフライン(パス状態が「オフ」)であるか否かを判定する。全対向パスがオフラインである場合、図13〜図15に示した一連の処理は終了する(センス通知を抑止する。)。一方、少なくとも1つの対向パスがオフラインではない場合、処理はS123へと進む。
(S123)推奨パス情報提供部214は、統計情報211D(例えば、センス通知統計管理テーブル)を参照し、コマンドによりアクセスされるLBA範囲のセンス統計値が、予め設定した閾値に達しているか(センス統計値が閾値以上であるか)否かを判定する。センス統計値が閾値に達している場合、処理はS124へ進む。一方、センス統計値が閾値に達していない場合、処理はS126へ進む。
(S124)推奨パス情報提供部214は、物理領域の割り当て状況(例えば、チャンクに対するRLU領域の割り当て状況など)が変更されたか否かを判定する。割り当て状況が変更された場合、処理はS125へ進む。一方、割り当て状況が変更されていない場合、図13〜図15に示した一連の処理は終了する(センス通知を抑止する。)。
(S125)推奨パス情報提供部214は、統計情報211D(センス通知統計管理テーブル)のエントリをクリアする。S125の処理が完了すると、図13〜図15に示した一連の処理は終了する(センス通知を抑止する。)。
(S126)推奨パス情報提供部214は、クロスアクセスの検出処理を実行する。例えば、推奨パス情報提供部214は、TPV情報211C(論理ブロック管理テーブル)を参照し、コマンドを受けたコントローラが担当CMと同じであるか否かを判定する。コマンドを受けたコントローラと担当CMとが異なる場合、推奨パス情報提供部214は、クロスアクセスが発生したと判定する。
(S127)S126の処理でクロスアクセスが検出された場合、処理はS128に進む。一方、S126の処理でクロスアクセスが検出されなかった場合、図13〜図15に示した一連の処理は終了する(センス通知を抑止する。)。
(S128)推奨パス情報提供部214は、推奨パスの状態変更(マルチパスの再構成)を通知するためのセンスをマルチパスドライバ101に通知する。このとき、推奨パス情報提供部214は、クロスアクセスを検出したLBA範囲について推奨パスの状態変更を通知するためのセンスをマルチパスドライバ101に通知する。
(S129)推奨パス情報提供部214は、統計情報211D(センス通知統計管理テーブル)を更新する。S129の処理が完了すると、図13〜図15に示した一連の処理は終了する(センス通知を抑止する。)。
以上がクロスアクセス検出時に実行される処理の流れである。
以上、第2実施形態に係るストレージシステムが実行する処理の流れについて説明した。
以上説明したように、第2実施形態に係る技術を適用すれば、TPVにチャンクが割り当てられていない初期状態でサーバ100からアクセスを受ける度に推奨パスの変更通知が行われる状況を回避することが可能になり、アクセス性能の低下を抑制できる。また、推奨パスの変更通知時にLBA範囲を指定するため、全てのLBA範囲について推奨パスの変更処理を実行する場合に比べて通信負荷及び処理負荷を低減することができる。
また、割り当て状況の変更時にセンス通知を抑制することで、パス閉塞などにより一時的に推奨パスが使用できない状況で不要なセンス通知が行われることを回避し、推奨パスの変更処理に係る処理負荷を低減することができる。また、クロスアクセスの検出時に推奨パスの情報がサーバ100に提供されるため、何らかの理由で情報提供時に一部の情報漏れが生じてもクロスアクセスの発生に応じて情報の再提供が行われる。そのため、通知漏れによるアクセス性能の低下を抑制することができる。
以上、第2実施形態について説明した。
以上、添付図面を参照しながら好適な実施形態について説明したが、本発明は係る例に限定されない。当業者であれば、特許請求の範囲に記載された範疇内において、様々な変形例や修正例に想到し得ることは明らかであり、こうした変形例や修正例についても当然に本発明の技術的範囲に属することは言うまでもない。
<3.付記>
以上説明した実施形態に関し、さらに以下の付記を開示する。
(付記1) 1つ又は複数の記録媒体に割り当てられた複数の第1記憶領域にそれぞれ対応し、対応する前記第1記憶領域にアクセス可能な複数の制御部と、
前記制御部毎に、対応する1つ又は複数の前記第1記憶領域内で確保された単位記憶領域が割り当てられる第2記憶領域を記憶する記憶部と、
を有し、
前記制御部は、対応する前記第1記憶領域とは異なる前記第1記憶領域に確保された前記単位記憶領域へのアクセス要求を受けた場合に、当該単位記憶領域へのアクセス経路として前記異なる第1記憶領域に対応する前記制御部の情報を提供する
ストレージ制御装置。
(付記2) 前記単位記憶領域へのアクセス経路として提供される情報は、前記第2記憶領域における前記単位記憶領域のアドレスと前記異なる第1記憶領域に対応する前記制御部との対応関係を示す情報である
付記1に記載のストレージ制御装置。
(付記3) 前記制御部は、前記第2記憶領域毎に前記情報の提供回数を保持し、設定した閾値よりも前記提供回数が小さい場合に当該第2記憶領域に関する前記情報を提供する
付記1又は2に記載のストレージ制御装置。
(付記4) 前記制御部は、前記第2記憶領域に割り当てられた前記単位記憶領域が変更された場合又は当該単位記憶領域と前記第1記憶領域との対応関係が変更された場合、当該第2記憶領域に関する前記情報の提供回数をリセットする
付記3に記載のストレージ制御装置。
(付記5) 1つ又は複数の記録媒体に割り当てられた複数の第1記憶領域にそれぞれ対応し、対応する前記第1記憶領域にアクセス可能な複数の制御部と、前記制御部毎に、対応する1つ又は複数の前記第1記憶領域内で確保された単位記憶領域が割り当てられる第2記憶領域を記憶する記憶部と、を有するコンピュータの前記制御部が、対応する前記第1記憶領域とは異なる前記第1記憶領域に確保された前記単位記憶領域へのアクセス要求を受けた場合に、当該単位記憶領域へのアクセス経路として前記異なる第1記憶領域に対応する前記制御部の情報を提供する
制御方法。
(付記6) 前記単位記憶領域へのアクセス経路として提供される情報は、前記第2記憶領域における前記単位記憶領域のアドレスと前記異なる第1記憶領域に対応する前記制御部との対応関係を示す情報である
付記5に記載の制御方法。
(付記7) 前記制御部は、前記第2記憶領域毎に前記情報の提供回数を保持し、設定した閾値よりも前記提供回数が小さい場合に当該第2記憶領域に関する前記情報を提供する
付記5又は6に記載の制御方法。
(付記8) 前記制御部は、前記第2記憶領域に割り当てられた前記単位記憶領域が変更された場合又は当該単位記憶領域と前記第1記憶領域との対応関係が変更された場合、当該第2記憶領域に関する前記情報の提供回数をリセットする
付記7に記載の制御方法。
(付記9) 1つ又は複数の記録媒体に割り当てられた複数の第1記憶領域にそれぞれ対応し、対応する前記第1記憶領域にアクセス可能な複数の制御部と、前記制御部毎に、対応する1つ又は複数の前記第1記憶領域内で確保された単位記憶領域が割り当てられる第2記憶領域を記憶する記憶部と、を有するコンピュータに、
前記制御部が、対応する前記第1記憶領域とは異なる前記第1記憶領域に確保された前記単位記憶領域へのアクセス要求を受けた場合に、当該単位記憶領域へのアクセス経路として前記異なる第1記憶領域に対応する前記制御部の情報を提供する
処理を実行させる、プログラム。
(付記10) 1つ又は複数の記録媒体に割り当てられた複数の第1記憶領域にそれぞれ対応し、対応する前記第1記憶領域にアクセス可能な複数の制御部と、前記制御部毎に、対応する1つ又は複数の前記第1記憶領域内で確保された単位記憶領域が割り当てられる第2記憶領域を記憶する記憶部と、を有するコンピュータに、
前記制御部が、対応する前記第1記憶領域とは異なる前記第1記憶領域に確保された前記単位記憶領域へのアクセス要求を受けた場合に、当該単位記憶領域へのアクセス経路として前記異なる第1記憶領域に対応する前記制御部の情報を提供する
処理を実行させるプログラムが記録された、コンピュータにより読み取り可能な記録媒体。
10 サーバ
20 ストレージ制御装置
21、22 制御部
23 記憶部
23A 第2記憶領域
23B ストレージプール
30 ストレージ装置
Ch1、Ch2、Ch3 単位記憶領域
Rd1、Rd2、Rd3 第1記憶領域

Claims (6)

  1. 1つ又は複数の記録媒体に割り当てられた複数の第1記憶領域にそれぞれ対応し、対応する前記第1記憶領域にアクセス可能な複数の制御部と、
    前記制御部毎に、対応する1つ又は複数の前記第1記憶領域内で確保された単位記憶領域が割り当てられる第2記憶領域を記憶する記憶部と、
    を有し、
    前記制御部は、対応する前記第1記憶領域とは異なる前記第1記憶領域に確保された前記単位記憶領域へのアクセス要求を受けた場合に、当該単位記憶領域へのアクセス経路として前記異なる第1記憶領域に対応する前記制御部の情報を提供する
    ストレージ制御装置。
  2. 前記単位記憶領域へのアクセス経路として提供される情報は、前記第2記憶領域における前記単位記憶領域のアドレスと前記異なる第1記憶領域に対応する前記制御部との対応関係を示す情報である
    請求項1に記載のストレージ制御装置。
  3. 前記制御部は、前記第2記憶領域毎に前記情報の提供回数を保持し、設定した閾値よりも前記提供回数が小さい場合に当該第2記憶領域に関する前記情報を提供する
    請求項1又は2に記載のストレージ制御装置。
  4. 前記制御部は、前記第2記憶領域に割り当てられた前記単位記憶領域が変更された場合又は当該単位記憶領域と前記第1記憶領域との対応関係が変更された場合、当該第2記憶領域に関する前記情報の提供回数をリセットする
    請求項3に記載のストレージ制御装置。
  5. 1つ又は複数の記録媒体に割り当てられた複数の第1記憶領域にそれぞれ対応し、対応する前記第1記憶領域にアクセス可能な複数の制御部と、前記制御部毎に、対応する1つ又は複数の前記第1記憶領域内で確保された単位記憶領域が割り当てられる第2記憶領域を記憶する記憶部と、を有するコンピュータの前記制御部が、対応する前記第1記憶領域とは異なる前記第1記憶領域に確保された前記単位記憶領域へのアクセス要求を受けた場合に、当該単位記憶領域へのアクセス経路として前記異なる第1記憶領域に対応する前記制御部の情報を提供する
    制御方法。
  6. 1つ又は複数の記録媒体に割り当てられた複数の第1記憶領域にそれぞれ対応し、対応する前記第1記憶領域にアクセス可能な複数の制御部と、前記制御部毎に、対応する1つ又は複数の前記第1記憶領域内で確保された単位記憶領域が割り当てられる第2記憶領域を記憶する記憶部と、を有するコンピュータに、
    前記制御部が、対応する前記第1記憶領域とは異なる前記第1記憶領域に確保された前記単位記憶領域へのアクセス要求を受けた場合に、当該単位記憶領域へのアクセス経路として前記異なる第1記憶領域に対応する前記制御部の情報を提供する
    処理を実行させる、プログラム。
JP2013236654A 2013-11-15 2013-11-15 ストレージ制御装置、制御方法、及びプログラム Ceased JP2015097006A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2013236654A JP2015097006A (ja) 2013-11-15 2013-11-15 ストレージ制御装置、制御方法、及びプログラム
US14/533,465 US20150143041A1 (en) 2013-11-15 2014-11-05 Storage control apparatus and control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013236654A JP2015097006A (ja) 2013-11-15 2013-11-15 ストレージ制御装置、制御方法、及びプログラム

Publications (1)

Publication Number Publication Date
JP2015097006A true JP2015097006A (ja) 2015-05-21

Family

ID=53174480

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013236654A Ceased JP2015097006A (ja) 2013-11-15 2013-11-15 ストレージ制御装置、制御方法、及びプログラム

Country Status (2)

Country Link
US (1) US20150143041A1 (ja)
JP (1) JP2015097006A (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104320425A (zh) * 2014-08-28 2015-01-28 海视云(北京)科技有限公司 消息的接收与发送方法及装置

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000049783A (ja) * 1998-07-30 2000-02-18 Hitachi Commun Syst Inc ネットワーク管理方法とそのシステム
JP2004054806A (ja) * 2002-07-24 2004-02-19 Hitachi Ltd ストレージネットワークシステム、接続切替装置、アクセス制御方法及びそのプログラム
JP2006134049A (ja) * 2004-11-05 2006-05-25 Hitachi Ltd ホスト装置が接続される制御装置の接続部とその制御装置が備える記憶デバイスとの間の論理パスを生成する装置及び方法
JP2007287064A (ja) * 2006-04-20 2007-11-01 Hitachi Ltd 記憶システム、パス管理方法及びパス管理装置
JP2008225973A (ja) * 2007-03-14 2008-09-25 Nec Corp 情報処理システムおよび障害情報退避方法
JP2011054152A (ja) * 2009-09-01 2011-03-17 Lsi Corp Scsii/oリファーラルを利用したイニシエータ及びストレージクラスタ間の通信方法及びシステム

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4477437B2 (ja) * 2004-07-02 2010-06-09 株式会社日立製作所 ストレージ装置、そのクラスタ間データ通信方法、及びそのクラスタ通信制御プログラム
US8447860B2 (en) * 2007-06-25 2013-05-21 Dell Products L.P. Storage area network with target side recognition and routing table upload

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000049783A (ja) * 1998-07-30 2000-02-18 Hitachi Commun Syst Inc ネットワーク管理方法とそのシステム
JP2004054806A (ja) * 2002-07-24 2004-02-19 Hitachi Ltd ストレージネットワークシステム、接続切替装置、アクセス制御方法及びそのプログラム
JP2006134049A (ja) * 2004-11-05 2006-05-25 Hitachi Ltd ホスト装置が接続される制御装置の接続部とその制御装置が備える記憶デバイスとの間の論理パスを生成する装置及び方法
JP2007287064A (ja) * 2006-04-20 2007-11-01 Hitachi Ltd 記憶システム、パス管理方法及びパス管理装置
JP2008225973A (ja) * 2007-03-14 2008-09-25 Nec Corp 情報処理システムおよび障害情報退避方法
JP2011054152A (ja) * 2009-09-01 2011-03-17 Lsi Corp Scsii/oリファーラルを利用したイニシエータ及びストレージクラスタ間の通信方法及びシステム

Also Published As

Publication number Publication date
US20150143041A1 (en) 2015-05-21

Similar Documents

Publication Publication Date Title
US8838892B2 (en) Data storage method and storage device
JP4903415B2 (ja) 記憶制御システム及び記憶制御方法
US8473703B2 (en) Storage system and management method of the storage system
JP5427630B2 (ja) 動的ページ再割当てストレージシステムにおけるアプリケーション及び階層構成の管理
JP5502232B2 (ja) ストレージシステム、及びその制御方法
US8271612B2 (en) On-demand virtual storage capacity
US8055723B2 (en) Virtual array site configuration
US8539142B2 (en) Storage system comprising nonvolatile semiconductor storage media
US9262087B2 (en) Non-disruptive configuration of a virtualization controller in a data storage system
US20110066823A1 (en) Computer system performing capacity virtualization based on thin provisioning technology in both storage system and server computer
US8296543B2 (en) Computer system management apparatus and management method for the computer system
US7797487B2 (en) Command queue loading
US20100070731A1 (en) Storage system having allocation-on-use volume and power saving function
US8650358B2 (en) Storage system providing virtual volume and electrical power saving control method including moving data and changing allocations between real and virtual storage areas
US20110191565A1 (en) Extent size optimization
US8572347B2 (en) Storage apparatus and method of controlling storage apparatus
US7870335B2 (en) Host adaptive seek technique environment
US20150160871A1 (en) Storage control device and method for controlling storage device
US8566554B2 (en) Storage apparatus to which thin provisioning is applied and including logical volumes divided into real or virtual areas
JP4616899B2 (ja) 管理サーバ、プール増設方法および計算機システム
US9015410B2 (en) Storage control apparatus unit and storage system comprising multiple storage control apparatus units
JP2015097006A (ja) ストレージ制御装置、制御方法、及びプログラム
US9658803B1 (en) Managing accesses to storage
US20140244958A1 (en) Storage system and management method therefor
JP2012033046A (ja) ストレージ装置およびその制御方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160804

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170419

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170502

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170630

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20171107

A045 Written measure of dismissal of application [lapsed due to lack of payment]

Free format text: JAPANESE INTERMEDIATE CODE: A045

Effective date: 20180327