JP2014026529A - ストレージシステムおよびその制御方法 - Google Patents

ストレージシステムおよびその制御方法 Download PDF

Info

Publication number
JP2014026529A
JP2014026529A JP2012167454A JP2012167454A JP2014026529A JP 2014026529 A JP2014026529 A JP 2014026529A JP 2012167454 A JP2012167454 A JP 2012167454A JP 2012167454 A JP2012167454 A JP 2012167454A JP 2014026529 A JP2014026529 A JP 2014026529A
Authority
JP
Japan
Prior art keywords
storage
access control
control device
access
load
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
JP2012167454A
Other languages
English (en)
Inventor
Yotaro Konishi
洋太郎 小西
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 JP2012167454A priority Critical patent/JP2014026529A/ja
Priority to US13/886,623 priority patent/US9229660B2/en
Publication of JP2014026529A publication Critical patent/JP2014026529A/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/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
    • 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/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0619Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
    • 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/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
    • 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

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

Abstract

【課題】記憶装置に対するアクセス性能の低下を抑制する。
【解決手段】中継装置4は、記憶装置3a〜3cのそれぞれを、アクセス制御装置2a,2bのいずれかに接続する。そして、記憶装置3a〜3cのそれぞれに対するアクセスは、アクセス制御装置2a,2bのいずれかによって制御される。接続制御装置5は、各アクセス制御装置2a,2bの負荷状況に応じて、各アクセス制御装置2a,2bに負荷が分散するように中継装置4における接続切り替え動作を制御する。例えば、接続制御装置5は、アクセス制御装置2aの負荷の大きさを示すパラメータが所定のしきい値を超えたとき、アクセス制御装置2aに接続されている記憶装置3bを、アクセス制御装置2bに繋ぎ変えるように制御する。
【選択図】図1

Description

本発明は、ストレージシステムおよびその制御方法に関する。
分散型のストレージシステムは、複数の記憶装置と、これら複数の記憶装置へのデータの読み書きを制御するサーバとをそれぞれ含む複数のストレージノードをクラスタ化することによって実現される。分散型のストレージシステムは、格納するデータの増加に応じたシステムの拡張性が高いという特徴を有する。このような分散型のストレージシステムの一種として、データをオブジェクトとして取り扱うオブジェクトストレージシステムがある。
また、ストレージシステムの性能を向上するための各種の技術が提案されている。例えば、ストレージサブシステム間で負荷が均衡するように、ストレージサブシステム内の論理ボリュームを他のストレージサブシステムに移動するようにしたストレージシステムがある。また、FC(Fibre Channel)スイッチにおいて、それぞれ個別のサーバに接続する複数のポートとRAID(Redundant Arrays of Inexpensive Disks)装置に接続する複数のポートとの接続を切り替えて、アクセス経路の負荷がバランスするようにしたストレージシステムがある。
特開2004−13215号公報 特開2007−304896号公報
分散型のストレージシステムに格納されるデータには、大別して、頻繁にアクセスされる「ホット」なデータと、バックアップ用のデータなどの、一度格納された後にはほとんどアクセスされない「コールド」なデータとがある。ところが、格納するデータのうち、どのデータがホットなデータであり、どのデータがコールドなデータであるのかは、データの格納時点では明らかでないことが多い。このため、同一のストレージノード内の記憶装置にホットなデータが集中して格納されると、そのストレージノード内のサーバの負荷が過大になり、サーバに接続された各記憶装置へのアクセス性能が大きく低下するという問題がある。
1つの側面では、本発明は、記憶装置に対するアクセス性能の低下を抑制することが可能なストレージシステムおよびその制御方法を提供することを目的とする。
1つの案では、ストレージシステムが提供される。このストレージシステムは、複数のアクセス制御装置と、複数のアクセス制御装置のいずれかによってそれぞれに対するアクセスが制御される複数の記憶装置と、複数の記憶装置のそれぞれを、複数のアクセス制御装置のうちのいずれかに接続する中継装置と、各アクセス制御装置の負荷状況に応じて、各アクセス制御装置に負荷が分散するように中継装置における接続切り替え動作を制御する接続制御装置と、を有する。
また、1つの案では、上記のストレージシステムと同様の処理が実行される、ストレージシステムの制御方法が提供される。
1態様によれば、ストレージシステムおよびその制御方法において、記憶装置に対するアクセス性能の低下を抑制できる。
第1の実施の形態に係るストレージシステムの構成例および動作例を示す図である。 オブジェクトストレージシステムの参考例を示す図である。 第2の実施の形態に係るストレージシステムの全体構成例を示す図である。 フロントエンドサーバのハードウェア構成例を示す図である。 SASエクスパンダのハードウェア構成例を示す図である。 SASエクスパンダにおけるゾーニング制御について説明するための図である。 フロントエンドサーバが備える処理機能の例を示すブロック図である。 オブジェクトテーブルに登録される情報の例を示す図である。 ディスク負荷テーブルに登録される情報の例を示す図である。 サーバ負荷テーブルに登録される情報の例を示す図である。 PHYテーブルに登録される情報の例を示す図である。 サーバアドレステーブルに登録される情報の例を示す図である。 SASエクスパンダに対する切り替え制御処理の例を示すフローチャートである。 切り替え処理例(1)を示すフローチャートである。 接続切り替えの動作例を示す図である。 切り替え処理例(2)を示すフローチャートである。 接続切り替えの動作例を示す図である。 第2の実施の形態に係るストレージシステムの全体構成例を示す図である。 第2の実施の形態において、フロントエンドサーバおよびコントロールサーバがそれぞれ備える処理機能の例を示すブロック図である。
以下、本発明の実施の形態について図面を参照して説明する。
〔第1の実施の形態〕
図1は、第1の実施の形態に係るストレージシステムの構成例および動作例を示す図である。図1に示すストレージシステム1は、複数のアクセス制御装置2a,2b、複数の記憶装置3a〜3c、中継装置4および接続制御装置5を備える。
アクセス制御装置2a,2bは、それぞれ、1つ以上の記憶装置に対するアクセスを制御する。例えば、アクセス制御装置2a,2bはそれぞれ、図示しないフロントエンド装置から指示されるアクセス先の記憶装置に対してアクセスする。このようなフロントエンド装置、アクセス制御装置2a,2bおよび記憶装置3a〜3bの動作により、分散型のストレージシステムが実現される。なお、図1の例では2台のアクセス制御装置2a,2bが設けられているが、アクセス制御装置の台数は2台以上であれば任意に変更可能である。
記憶装置3aは、アクセス制御装置2a,2bのいずれかによってアクセスが制御される。記憶装置3bも同様に、アクセス制御装置2a,2bのいずれかによってアクセスが制御され、記憶装置3cも同様に、アクセス制御装置2a,2bのいずれかによってアクセスが制御される。なお、図1の例では3台の記憶装置3a〜3cが設けられているが、記憶装置の台数は2台以上であれば任意に変更可能である。
中継装置4は、記憶装置3a〜3cのそれぞれを、アクセス制御装置2a,2bのうちのいずれかに接続する。中継装置4は、1台のアクセス制御装置に複数の記憶装置を接続することもできる。
また、接続制御装置5は、アクセス制御装置2a,2bのそれぞれの負荷状態に応じて、アクセス制御装置2a,2bのそれぞれに負荷が分散するように、中継装置4における接続切り替え動作を制御する。これにより、記憶装置3a〜3cに対するアクセス性能の低下を抑制することができる。
なお、接続制御装置5は、他の制御装置を介して、中継装置4に対して接続切り替えを指示してもよい。また、接続制御装置5は、前述のフロントエンド装置と一体の装置であってもよい。
接続制御装置5がアクセス制御装置2a,2bの負荷状態を認識する方法としては、種々の方法を適用することができる。例えば、接続制御装置5は、アクセス制御装置2a,2bのそれぞれから、あるいは、前述のフロントエンド装置から、アクセス制御装置2a,2bのそれぞれにおける現在の負荷状態を示す情報を取得する。
また、接続制御装置5からの指示に基づく中継装置4での接続切り替えの方法としては、例えば、あるアクセス制御装置に接続されている記憶装置を、別のアクセス制御装置に接続させる方法がある。あるいは、あるアクセス制御装置に接続されている記憶装置と、別のアクセス制御装置に接続されている記憶装置とを、互いに入れ替える方法もある。
次に、中継装置4における接続切り替え動作の例について説明する。まず、図1の状態1に示すように、中継装置4は、アクセス制御装置2aと記憶装置3a,3bとを接続し、アクセス制御装置2bと記憶装置3cとを接続しているものとする。
ここで、接続制御装置5が、アクセス制御装置2aにおける負荷状態を示す負荷パラメータが所定のしきい値を超えたと判定したとする。アクセス制御装置2aについての負荷パラメータがしきい値を超える状態としては、例えば、アクセス制御装置2aに接続されている記憶装置(例えば記憶装置3a)に対してアクセスが集中しているケースが考えられる。このような状態では、アクセス制御装置2aの通信量が過多になって、アクセス制御装置2aに接続されている記憶装置3a,3bに対するアクセス性能が大きく低下する可能性がある。
接続制御装置5は、アクセス制御装置2aについての負荷パラメータがしきい値を超えたと判定すると、アクセス制御装置2aに接続されている記憶装置3a,3bの少なくとも一方を、他のアクセス制御装置2bに接続させるように中継装置4に指示する。図1における状態2では、例として、接続制御装置5は、記憶装置3bの接続先を、アクセス制御装置2aからアクセス制御装置2bに切り替えるように、中継装置4に指示したものとする。
このような接続切り替え動作により、アクセス制御装置2aの通信量が抑制されるとともに、アクセス制御装置2bの通信量が増加して、アクセス制御装置2a,2bの間の負荷の片寄りが改善される。そして、アクセス制御装置2aにおける通信量が過多になることによる記憶装置3a,3bへのアクセス性能の低下が抑制され、記憶装置3a〜3cの全体について、高いアクセス性能を維持することができるようになる。
〔第2の実施の形態〕
次に、図1に示したストレージシステム1を、オブジェクトストレージシステムに適用した場合の例について説明する。ここではまず、図2にオブジェクトストレージシステムの参考例を示して、この図2を用いてオブジェクトストレージシステムにおける問題点を説明し、その後に第2の実施の形態について説明する。
図2は、オブジェクトストレージシステムの参考例を示す図である。図2において、オブジェクト格納サーバ110と、そのオブジェクト格納サーバ110に接続された複数の記憶装置111とが、ストレージノードを構成する。ストレージシステム100においては、このような複数のストレージノードが、フロントエンドサーバ120に接続されている。また、フロントエンドサーバ120には、複数のユーザ端末130が接続されている。
フロントエンドサーバ120は、ユーザ端末130からのクエリを受け付けて、オブジェクトを読み書きするストレージノードを決定する。フロントエンドサーバ120は、例えば、ユーザ端末130から通知されたオブジェクトのパス情報からハッシュ値を計算する。フロントエンドサーバ120は、あらかじめ設定された対応表を参照して、算出したハッシュ値に対応付けられたオブジェクト格納サーバ110および記憶装置111を決定する。
フロントエンドサーバ120は、決定したオブジェクト格納サーバ110に対して、オブジェクトのPUT要求(書き込み要求)またはGET要求(読み出し要求)を出力する。フロントエンドサーバ120からの要求を受けたオブジェクト格納サーバ110は、フロントエンドサーバ120から指定された記憶装置111に対するオブジェクトの読み書きを行う。
ところで、各ストレージノードに格納されるオブジェクトには、大別して、アクセス頻度の高い「ホット」なオブジェクトと、バックアップ用のオブジェクトなどの、アクセス頻度の低い「コールド」なオブジェクトとがある。一般的に、オブジェクトストレージシステムにおいては、格納されるオブジェクトのほとんどがコールドなオブジェクトであることが知られている。
ここで、フロントエンドサーバ120は、格納するデータのうち、どのデータがホットなデータであり、どのデータがコールドなデータであるのかを、データの格納時点で判別することは難しい。このため、複数のストレージノードのうち、あるストレージノードにはホットなオブジェクトが集中して格納され、別のストレージノードにはホットなオブジェクトがほとんど格納されない、というケースがあり得る。
このように、ホットなオブジェクトがあるストレージノードに集中して格納された場合、そのストレージノードにおいては、オブジェクト格納サーバ110による記憶装置111へのアクセス速度が低下するという問題がある。一方、ホットなオブジェクトがほとんど格納されていないストレージノードにおいては、オブジェクト格納サーバ110の資源が有効に活用されていないと言える。
また、ストレージノード間でのアクセスの不均衡を是正する方法としては、ホットなオブジェクトとコールドなオブジェクトとをストレージノード間で入れ替える方法が考えられる。しかし、この方法では、通常の業務におけるフロントエンドサーバ120とストレージノードとの間でのデータ転送とは別に、ストレージノード間でのデータ転送が発生することから、ネットワークに余計なトラフィックが発生してしまう。また、フロントエンドサーバ120は、ハッシュ値と格納場所とを対応付けた対応表のうち、格納場所を移動したオブジェクトに対応する情報を更新する必要も生じる。
このような問題に対し、以下に示す第2の実施の形態においては、複数のオブジェクト格納サーバと、複数の記憶装置とを、接続関係を変更可能な中継装置を介して接続する。そして、各オブジェクト格納サーバにおける負荷状態に応じて、中継装置における接続状態を変更することで、オブジェクトの格納場所を変更することなく、オブジェクト格納サーバ間でのアクセスの不均衡が是正されるようにする。
図3は、第2の実施の形態に係るストレージシステムの全体構成例を示す図である。図3に示すストレージシステム200は、ディスクエンクロージャ210、複数のオブジェクト格納サーバ220、SAS(Serial Attached SCSI,SCSI:Small Computer System Interface)エクスパンダ(図3では「SAS EXP」と表記)230、フロントエンドサーバ300および複数のユーザ端末130を含む。なお、ユーザ端末130は、図2に示したユーザ端末130と同様の処理を行う装置である。
ディスクエンクロージャ210には、オブジェクトの格納対象となる複数の記憶装置が搭載される。本実施の形態では、ディスクエンクロージャ210には、複数のHDD(Hard Disk Drive)211が搭載される。なお、ディスクエンクロージャ210に搭載される記憶装置としては、SSDなどの他の種類の不揮発性記憶媒体、あるいは、複数のHDDもしくは複数のSSDを備えるディスクアレイなどを用いることもできる。また、ディスクエンクロージャ210には、2台以上の任意の台数の記憶装置を搭載させることができる。
オブジェクト格納サーバ220は、図1のアクセス制御装置2a,2bあるいは図2のオブジェクト格納サーバ110に対応する装置である。オブジェクト格納サーバ220のそれぞれは、SASエクスパンダ230を介して、ディスクエンクロージャ210と接続する。
SASエクスパンダ230は、図1の中継装置4に対応する装置である。SASエクスパンダ230は、フロントエンドサーバ300からの指示に応じて、ディスクエンクロージャ210内のHDD211のそれぞれを、いずれか1つのオブジェクト格納サーバ220と接続する。
このようなSASエクスパンダ230の接続動作により、オブジェクト格納サーバ220のそれぞれは、フロントエンドサーバ300からのアクセス要求に応じて、SASエクスパンダ230を介して接続されたHDD211に対するオブジェクトの読み書きを行う。すなわち、ストレージシステム200においては、1つのオブジェクト格納サーバ220と、このオブジェクト格納サーバ220にSASエクスパンダ230を介して接続された任意のHDD211とによって、ストレージノードが構成される。そして、フロントエンドサーバ300は、SASエクスパンダ230にオブジェクト格納サーバ220とHDD211との接続関係を変更させることにより、各ストレージノードを構成するHDD211を動的に変更することができる。
なお、図3では例として、5台のオブジェクト格納サーバ220を示しているが、ストレージシステム200には2台以上の任意の台数のオブジェクト格納サーバ220を設けることができる。
フロントエンドサーバ300は、図2のフロントエンドサーバ120に対応する装置であるとともに、図1の接続制御装置5の機能も備える装置である。フロントエンドサーバ300は、図2のフロントエンドサーバ120と同様に、ユーザ端末130からのクエリを受け付けて、オブジェクトを読み書きするために使用するオブジェクト格納サーバ220およびHDD211を決定する。フロントエンドサーバ300は、決定したオブジェクト格納サーバ220に対して、オブジェクトのPUT要求またはGET要求を出力して、決定したHDD211に対するオブジェクトの格納またはそのHDD211からのオブジェクトの読み出しを依頼する。
これに加えて、フロントエンドサーバ300は、ディスクエンクロージャ210内のHDD211ごとにアクセスの負荷状態を検出する処理と、オブジェクト格納サーバ220ごとの処理負荷状態を検出する処理とを実行する。そして、フロントエンドサーバ300は、検出した負荷状態に応じて、SASエクスパンダ230でのオブジェクト格納サーバ220とHDD211との接続切り替え動作を制御する。フロントエンドサーバ300は、SASエクスパンダ230に、各オブジェクト格納サーバ220間で負荷が分散するように各オブジェクト格納サーバ220に接続するHDD211を切り替えさせて、ストレージノードの構成を動的に変更する。
図4は、フロントエンドサーバのハードウェア構成例を示す図である。フロントエンドサーバ300は、例えば、図4に示すようなコンピュータとして実現される。
フロントエンドサーバ300は、プロセッサ301によって装置全体が制御されている。プロセッサ301には、バス309を介して、RAM(Random Access Memory)302と複数の周辺機器が接続されている。プロセッサ301は、マルチプロセッサであってもよい。プロセッサ301は、例えばCPU(Central Processing Unit)、MPU(Micro Processing Unit)、DSP(Digital Signal Processor)、ASIC(Application Specific Integrated Circuit)、またはPLD(Programmable Logic Device)である。またプロセッサ301は、CPU、MPU、DSP、ASIC、PLDのうちの2以上の要素の組み合わせであってもよい。
RAM302は、フロントエンドサーバ300の主記憶装置として使用される。RAM302には、プロセッサ301に実行させるOS(Operating System)のプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。また、RAM302には、プロセッサ301による処理に必要な各種データが格納される。
バス309に接続されている周辺機器としては、HDD303、グラフィック処理装置304、入力インタフェース305、光学ドライブ装置306、機器接続インタフェース307および通信インタフェース308がある。
HDD303は、フロントエンドサーバ300の補助記憶装置として使用される。HDD303には、OSのプログラム、アプリケーションプログラム、および各種データが格納される。なお、補助記憶装置としては、SSDなどの他の種類の不揮発性記憶装置を使用することもできる。
グラフィック処理装置304には、モニタ304aが接続されている。グラフィック処理装置304は、プロセッサ301からの命令に従って、画像をモニタ304aの画面に表示させる。モニタ304aとしては、CRT(Cathode Ray Tube)を用いた表示装置や液晶表示装置などがある。
入力インタフェース305には、例えば、キーボード305aとマウス305bとが接続されている。入力インタフェース305は、キーボード305aやマウス305bから出力される信号をプロセッサ301に送信する。なお、マウス305bは、ポインティングデバイスの一例であり、他のポインティングデバイスを使用することもできる。他のポインティングデバイスとしては、タッチパネル、タブレット、タッチパッド、トラックボールなどがある。
光学ドライブ装置306は、レーザ光などを利用して、光ディスク306aに記録されたデータの読み取りを行う。光ディスク306aは、光の反射によって読み取り可能なようにデータが記録された可搬型の記録媒体である。光ディスク306aには、DVD(Digital Versatile Disc)、DVD−RAM、CD−ROM(Compact Disc−Read Only Memory)、CD−R(Recordable)/RW(ReWritable)などがある。
機器接続インタフェース307は、フロントエンドサーバ300に周辺機器を接続するための通信インタフェースである。例えば機器接続インタフェース307には、メモリ装置307aやメモリリーダライタ307bを接続することができる。メモリ装置307aは、機器接続インタフェース307との通信機能を搭載した記録媒体である。メモリリーダライタ307bは、メモリカード307cへのデータの書き込み、またはメモリカード307cからのデータの読み出しを行う装置である。メモリカード307cは、カード型の記録媒体である。
通信インタフェース308は、図示しないネットワークなどを介して他の装置との間でデータの送受信を行う。本実施の形態では、通信インタフェース308には、オブジェクト格納サーバ220、ユーザ端末130およびSASエクスパンダ230が接続される。
なお、フロントエンドサーバ300は、オブジェクト格納サーバ220およびユーザ端末130と、SASエクスパンダ230とは、例えば、それぞれ異なる通信規格に従って通信してもよい。この場合、オブジェクト格納サーバ220およびユーザ端末130と通信するための通信インタフェースと、SASエクスパンダ230と通信するための通信インタフェースは、それぞれ個別に設けられてもよい。
以上のようなハードウェア構成によって、フロントエンドサーバ300の処理機能を実現することができる。なお、図3に示した各オブジェクト格納サーバ220および各ユーザ端末130も、図4に示したハードウェアを有するコンピュータとして実現することができる。また、図1に示したアクセス制御装置2a,2bおよび接続制御装置5も、図4に示したハードウェアを有するコンピュータとして実現することができる。
図5は、SASエクスパンダのハードウェア構成例を示す図である。
SASエクスパンダ230は、プロセッサ231によって装置全体が制御されている。プロセッサ231には、バス236を介して、RAM232、不揮発メモリ233、通信インタフェース234およびスイッチ回路235が接続されている。
プロセッサ231は、例えば、1つまたは複数のCPUを有する。RAM232は、SASエクスパンダ230の主記憶装置として使用される。RAM232には、プロセッサ231に実行させる各種ファームウェアの少なくとも一部が一時的に格納される。また、RAM232には、プロセッサ231による処理に必要な各種データが格納される。
不揮発メモリ233は、例えば、フラッシュメモリまたはHDDである。不揮発メモリ233は、SASエクスパンダ230の補助記憶装置として使用される。不揮発メモリ233には、プロセッサ231が実行する各種ファームウェアや、ファームウェアの実行に必要な各種データが格納される。なお、ファームウェアの実行に必要なデータの例としては、後述するゾーニングテーブルがある。
通信インタフェース234は、通信ケーブルを介して外部の機器との間でデータを送受信する。本実施の形態では、通信インタフェース234にはフロントエンドサーバ300が接続される。
スイッチ回路235には、複数のPHY(物理層回路)が接続されている。スイッチ回路235は、プロセッサ231による制御の下で、PHYに接続された機器間で送受信されるデータのスイッチングを行う。
PHYには、いずれかのオブジェクト格納サーバ220、または、ディスクエンクロージャ210内のいずれかのHDD211が接続される。図5では説明をわかりやすくするために、オブジェクト格納サーバ220が接続されるPHYを「PHY236a」と表記し、ディスクエンクロージャ210内のHDD211が接続されるPHYを「PHY236b」と表記する。
プロセッサ231は、PHY236aのそれぞれに1つまたは複数のPHY236bが接続され、なおかつ、PHY236bのそれぞれに対して1つのPHY236aのみが接続されるように、スイッチ回路235におけるスイッチング動作を制御する。
図6は、SASエクスパンダにおけるゾーニング制御について説明するための図である。図6に示すHBA(Host Bus Adaptor)221は、各オブジェクト格納サーバ220が備える通信インタフェースの一例である。HBA221は、SAS規格に従って、SASエクスパンダ230を介して接続されたHDD211に対して、リード要求やライト要求を送信する。
SASエクスパンダ230の各PHYには、IDが付与されている。図6の例では、IDとして「1」「2」「3」がそれぞれ付与された3つのPHY236aと、「11」「12」「13」「14」がそれぞれ付与された4つのPHY236bとが示されている。なお、以下の説明では、ID「x」が付与されたPHYを「PHY#x」と呼ぶ。
図6の例では、PHY#1,#2,#3のそれぞれに、オブジェクト格納サーバ220のHBA221が接続されている。また、PHY#11には、デバイス名「sda」のHDD211(以下、「HDD#sda」と呼ぶ)が接続されている。PHY#12には、デバイス名「sdb」のHDD211(以下、「HDD#sdb」と呼ぶ)が接続されている。PHY#13には、デバイス名「sdc」のHDD211(以下、「HDD#sdc」と呼ぶ)が接続されている。PHY#14には、デバイス名「sdd」のHDD211(以下、「HDD#sdd」と呼ぶ)が接続されている。
SASエクスパンダ230の不揮発メモリ233(図5参照)には、ゾーニングテーブル237が格納されている。ゾーニングテーブル237は、SASエクスパンダ230におけるPHY間の接続状態を決定するための情報であり、フロントエンドサーバ300からの指示に応じてSASエクスパンダ230のプロセッサ231(図5参照)によって設定される。なお、フロントエンドサーバ300は、例えば、SMP(Serial Management Protocol)コマンドを送信することで、SASエクスパンダ230に対してゾーニングテーブル237の更新を指示することができる。
ゾーニングテーブル237には、ゾーンIDごとに、複数のPHYのIDが登録される。各ゾーンIDには、オブジェクト格納サーバ220に接続するPHY236aのうちの1つのIDと、HDD211に接続する1つ以上のPHY236bのIDとが登録される。SASエクスパンダ230のプロセッサ231は、各ゾーンIDに登録されたPHY236aとPHY236bとが接続されるように、スイッチ回路235(図5参照)を制御する。
例えば、図6に示すゾーンID「1」には、PHYのIDとして「1」と「11」が登録されている。この場合、SASエクスパンダ230のスイッチ回路235は、PHY#1とPHY#11とを導通させる。これにより、PHY#1に接続されたオブジェクト格納サーバ220は、PHY#11に接続されたHDD#sdaにアクセスすることが可能になる。
また、図6に示すゾーンID「3」には、PHYのIDとして「3」「13」「14」が登録されている。この場合、SASエクスパンダ230のスイッチ回路235は、PHY#3とPHY#13とを導通させるとともに、PHY#3とPHY#14とを導通させる。これにより、PHY#3に接続されたオブジェクト格納サーバ220は、PHY#13に接続されたHDD#sdcと、PHY#14に接続されたHDD#sddにアクセスすることが可能になる。
次に、図7は、フロントエンドサーバが備える処理機能の例を示すブロック図である。
フロントエンドサーバ300は、I/O(In/Out)処理部311、切り替え判定部312および切り替え制御部313を備える。これらの各部の処理は、例えば、フロントエンドサーバ300のプロセッサ301が所定のアプリケーションプログラムを実行することで実現される。
また、フロントエンドサーバ300内の記憶装置には、オブジェクトテーブル321、ディスク負荷テーブル322、サーバ負荷テーブル323、PHYテーブル331およびサーバアドレステーブル332が格納される。オブジェクトテーブル321、PHYテーブル331およびサーバアドレステーブル332は、例えば、フロントエンドサーバ300のHDD303に格納され、RAM302に展開されてプロセッサ301に参照される。ディスク負荷テーブル322およびサーバ負荷テーブル323は、例えば、フロントエンドサーバ300のRAM302に格納される。
I/O処理部311は、複数のユーザ端末130のそれぞれから、オブジェクトの格納または読み出しを要求するためのクエリを統括的に受信して、クエリに応じたオブジェクトのI/O処理を実行する。I/O処理部311は、受信したクエリに基づき、オブジェクトテーブル321を参照して、アクセス先のHDD211と、経由するオブジェクト格納サーバ220とを決定する。I/O処理部311は、決定したオブジェクト格納サーバ220に対して、受信したクエリに応じたPUT要求またはGET要求を送信する。
切り替え判定部312は、ディスクエンクロージャ210内の各HDD211および各オブジェクト格納サーバ220の負荷状態を監視する。切り替え判定部312は、HDD211およびオブジェクト格納サーバ220の負荷状態に応じて、SASエクスパンダ230において接続の切り替えを行うオブジェクト格納サーバ220およびHDD211の組み合わせを決定する。
切り替え判定部312は、I/O処理部311がユーザ端末130から受信するクエリを監視し、その監視結果から、HDD211ごとの負荷状態を示す情報をディスク負荷テーブル322に登録する。また、切り替え判定部312は、各オブジェクト格納サーバ220からそれぞれのサーバにおける負荷状態を示す情報を取得して、サーバ負荷テーブル323に登録する。
切り替え判定部312は、ディスク負荷テーブル322およびサーバ負荷テーブル323に登録した数値をしきい値と比較することで、負荷が過多になったオブジェクト格納サーバ220を判別する。そして、切り替え判定部312は、ディスク負荷テーブル322およびサーバ負荷テーブル323に基づいて、オブジェクト格納サーバ220間で負荷が分散するように、接続の切り替えを行うオブジェクト格納サーバ220およびHDD211の組み合わせを決定する。
切り替え制御部313は、切り替え判定部312によって決定されたオブジェクト格納サーバ220およびHDD211が接続されるように、SASエクスパンダ230内のゾーニングテーブル237を更新する。切り替え制御部313は、ゾーニングテーブル237の更新の際に、PHYテーブル331およびサーバアドレステーブル332に基づき、接続の切り替え対象に決定されたオブジェクト格納サーバ220およびHDD211がそれぞれ接続されている、SASエクスパンダ230上のPHYのIDを判別する。また、切り替え制御部313は、HDD211が接続されたPHYのIDを判別する際には、そのHDD211が現在接続されているオブジェクト格納サーバ220から、HDD211のSASアドレスを取得する。
図8は、オブジェクトテーブルに登録される情報の例を示す図である。
I/O処理部311がユーザ端末130から受信するクエリには、オブジェクトのパスを示すURL(Uniform Resource Locator)が含まれ、そのURLには、例えばユーザのアカウント名やオブジェクト名などの、オブジェクトのメタデータが含まれる。なお、オブジェクトの格納が要求される場合、クエリには、オブジェクトの実データも含まれる。
I/O処理部311は、ユーザ端末130から受信した、オブジェクトのURLを、例えばMD5(Message Digest Algorithm 5)などの一方向ハッシュ関数を用いて変換し、一定幅のハッシュ値を算出する。一方、図8に示すように、オブジェクトテーブル321には、ハッシュ値に対して、オブジェクト格納サーバ220のIP(Internet Protocol)アドレスを示す「サーバIPアドレス」と、ディスクエンクロージャ210内のHDD211を識別するための「デバイス名」とが対応付けて登録されている。
I/O処理部311は、オブジェクトテーブル321から、オブジェクトのURLを基に算出したハッシュ値に対応付けられたサーバIPアドレスおよびデバイス名を取得して、オブジェクトの読み書きを実行させるオブジェクト格納サーバ220と、オブジェクトの格納先または読み出し元のHDD211とを判別する。そして、I/O処理部311は、判別したオブジェクト格納サーバ220に対して、クエリに応じたメッセージを送信する。オブジェクトの格納が要求された場合、PUT要求メッセージが送信され、オブジェクトの読み出しが要求された場合、GET要求メッセージが送信される。
なお、オブジェクトテーブル321に登録されるハッシュ値のビット幅は、オブジェクトのURLから算出されるハッシュ値のビット幅より小さくてもよい。この場合、I/O処理部311は、オブジェクトのURLから算出したハッシュ値を、オブジェクトテーブル321に登録されたハッシュ値のビット幅に合致するようにビットシフトする。そして、I/O処理部311は、ビットシフト後のハッシュ値に対応付けられたサーバIPアドレスおよびデバイス名をオブジェクトテーブル321から取得する。
また、I/O処理部311からオブジェクト格納サーバ220に送信されるメッセージは、例えば、PUT、GETなどのコマンド名と、オブジェクトのパスを示すURLと、ユーザ認証情報などを含むメッセージヘッダと、メッセージ本文とを含む。PUT要求メッセージのメッセージ本文には、格納するオブジェクトの実データが格納される。メッセージに含まれるURLには、例えば、メッセージの送信先のオブジェクト格納サーバ220のIPアドレスと、アクセス先のHDD211のデバイス名と、オブジェクト名とが記述される。オブジェクト格納サーバ220は、受信したメッセージに含まれるこれらの情報に基づいて、SASエクスパンダ230を介して、オブジェクトの格納先または読み出し元のHDD211にアクセスする。
図9は、ディスク負荷テーブルに登録される情報の例を示す図である。ディスク負荷テーブル322は、ディスクエンクロージャ210内の各HDD211の負荷状態を示すパラメータを保持するための管理テーブルである。
ディスク負荷テーブル322には、オブジェクト格納サーバ220ごとにレコード322aが設けられる。各レコード322aには、オブジェクト格納サーバ220を識別するためのサーバIPアドレスが登録されており、切り替え判定部312は、サーバIPアドレスから所望のオブジェクト格納サーバ220に対応するレコード322aを特定することができる。
また、各レコード322aには、対応するオブジェクト格納サーバ220に現在接続されているHDD211を識別するための「デバイス名」が登録される。デバイス名は、対応するオブジェクト格納サーバ220に現在接続されているHDD211の数だけ登録される。
そして、各レコード322aには、デバイス名にそれぞれ対応付けて、負荷状態を示すパラメータの一例である「通信データ量」が登録される。通信データ量は、直近の単位時間において、対応するHDD211との間で送受信されたデータの量を示す。なお、通信データ量は、例えば、対応するHDD211から読み出される読み出しデータ量であってもよい。
切り替え判定部312は、I/O処理部311がユーザ端末130から受信するクエリを監視し、その監視結果から、ディスク負荷テーブル322内のHDD211ごとの通信データ量を随時更新する。そして、後述するように、切り替え判定部312は、通信データ量が所定のしきい値を超えたとき、その通信データ量に対応付けられたHDD211に対するアクセス負荷が過大になったと判定する。
図10は、サーバ負荷テーブルに登録される情報の例を示す図である。サーバ負荷テーブル323は、各オブジェクト格納サーバ220の負荷状態を示すパラメータを保持するための管理テーブルである。
サーバ負荷テーブル323には、オブジェクト格納サーバ220を識別するための「サーバIPアドレス」ごとに、負荷状態を示すパラメータとして、「プロセッサ使用率」、「空きメモリ」および「通信データ量」が登録される。プロセッサ使用率は、対応するオブジェクト格納サーバ220が備えるプロセッサの使用率(単位時間においてプロセッサがプログラムを実行している時間の割合)を示す。空きメモリは、対応するオブジェクト格納サーバ220が備える主記憶装置(RAM)の残容量を示す。通信データ量は、直近の単位時間において、対応するオブジェクト格納サーバ220が、自装置に接続されているHDD211との間で送受信したデータ量を示す。
切り替え判定部312は、各オブジェクト格納サーバ220から、プロセッサ使用率、空きメモリおよび通信データ量を一定時間ごとに取得して、サーバ負荷テーブル323に上書き登録する。そして、後述するように、切り替え判定部312は、プロセッサ使用率、空きメモリおよび通信データ量をそれぞれ所定のしきい値と比較することにより、負荷が過大になったオブジェクト格納サーバ220を判別する。
図11は、PHYテーブルに登録される情報の例を示す図である。PHYテーブル331には、SASエクスパンダ230に設けられた各PHYのIDと、IDが示すPHYに接続されている機器のSASアドレスとが対応付けて登録される。本実施の形態では、PHYに接続されている機器とは、いずれかのオブジェクト格納サーバ220か、ディスクエンクロージャ210内のいずれかのHDD211である。
なお、オブジェクト格納サーバ220に対応するSASアドレスは、正確には、オブジェクト格納サーバ220に搭載されたHBA221のSASアドレスを指す。しかしながら、これ以後、説明を簡単にするために単に「オブジェクト格納サーバ220のSASアドレス」と呼ぶことにする。
図12は、サーバアドレステーブルに登録される情報の例を示す図である。サーバアドレステーブル332は、各オブジェクト格納サーバ220のIPアドレス(サーバIPアドレス)とSASアドレスとが対応付けて登録される。
なお、上記のPHYテーブル331およびサーバアドレステーブル332の登録情報は、SASエクスパンダ230にオブジェクト格納サーバ220およびHDD211が接続されて、ストレージシステム200の運用が開始された後には、オブジェクト格納サーバ220またはHDD211の取り外しや追加が行われない限り、変更されない。
切り替え制御部313は、SASエクスパンダ230内のゾーニングテーブル237を更新する際に、接続切り替えの対象をPHYのIDによって指定する。一方、切り替え判定部312は、接続切り替えの対象を、オブジェクト格納サーバ220のIPアドレスおよびHDD211のデバイス名によって特定する。このため、切り替え制御部313は、切り替え判定部312によって接続切り替え対象の機器が決定されると、上記のPHYテーブル331およびサーバアドレステーブル332を参照して、決定された機器が接続されているPHYのIDを判別する。
次に、オブジェクト格納サーバ220の負荷状態に応じてSASエクスパンダ230での切り替え動作を制御する処理について、フローチャートを用いて説明する。図13は、SASエクスパンダに対する切り替え制御処理の例を示すフローチャートである。
[ステップS11]切り替え判定部312は、I/O処理部311がユーザ端末130から送信されたクエリを受信したかを監視し、クエリを受信したと判定すると、ステップS12の処理を実行する。
[ステップS12]切り替え判定部312は、ディスク負荷テーブル322に登録された負荷状態を示すパラメータ(図9の通信データ量)のうち、クエリに基づくアクセス先のHDD211に対応するパラメータを更新する。
具体的には、切り替え判定部312は、I/O処理部311が受信したクエリの内容から、アクセス先のHDD211との間で送受信するデータ量を判別する。例えば、切り替え判定部312は、オブジェクトの格納が要求された場合には、格納されるオブジェクトの実データ量を送受信データ量とみなし、オブジェクトの読み出しが要求された場合には、読み出されるオブジェクトの実データ量を送受信データ量とみなす。
切り替え判定部312は、受信したクエリに基づく、アクセス先のオブジェクト格納サーバ220のIPアドレスおよびアクセス先のHDD211のデバイス名を、I/O処理部311から取得する。切り替え判定部312は、ディスク負荷テーブル322から、取得したIPアドレスが登録されたレコード322aを特定する。切り替え判定部312は、特定したレコード322aにおいて、I/O処理部311から取得したデバイス名に対応付けられた通信データ量に、上記手順で判別した送受信データ量を加算する。
なお、図示しないが、切り替え判定部312は、ディスク負荷テーブル322に登録されたすべてのデバイス名に対応する通信データ量を、一定時間ごとに「0」に初期化する。これにより、ディスク負荷テーブル322に登録された通信データ量は、単位時間ごとの通信データ量を示すものとなる。
また、切り替え判定部312は、ユーザ端末130からオブジェクトの読み出しが要求された場合にのみ、ディスク負荷テーブル322のパラメータを更新してもよい。
また、本実施の形態では、HDD211の負荷状態を示すパラメータとして、ディスク負荷テーブル322に通信データ量を登録したが、例えば、パラメータとして単位時間当たりのアクセス頻度を登録してもよい。この場合、切り替え判定部312は、ステップS12において、アクセス先のHDD211に対応付けられたパラメータを「1」だけインクリメントする。
[ステップS13]切り替え判定部312は、ステップS12で更新した通信データ量と、所定のしきい値とを比較する。切り替え判定部312は、通信データ量がしきい値を超えている場合、アクセス先のHDD211の負荷が過大になっていると判定して、ステップS14の処理を実行する。一方、切り替え判定部312は、通信データ量がしきい値以下である場合、アクセス先のHDD211の負荷が過大でないと判定して、ステップS11の処理を実行する。
[ステップS14]切り替え判定部312は、サーバ負荷テーブル323から、受信したクエリに基づくアクセス先のオブジェクト格納サーバ220に対応付けられた、負荷状態を示すパラメータを読み出す。本実施の形態では、パラメータとして図10に示したプロセッサ使用率、空きメモリおよび通信データ量が読み出される。
[ステップS15]切り替え判定部312は、読み出した各パラメータを、パラメータごとにあらかじめ決められたしきい値と比較し、その比較結果に基づいて、アクセス先のオブジェクト格納サーバ220の負荷が過大であるか否かを判定する。切り替え判定部312は、各パラメータのうちの少なくとも1つについてのしきい値との比較結果が、負荷が過大であることを示している場合に、アクセス先のオブジェクト格納サーバ220の負荷が過大であると判定して、ステップS16の処理を実行する。
ここで、負荷が過大であると判定される場合とは、プロセッサ使用率が所定のしきい値を超えている、空きメモリの値が所定のしきい値未満である、通信データ量が所定のしきい値を超えている、という3つの条件のうちの少なくとも1つが満たされている場合である。
ステップS15で「Yes」と判定されたとき、ステップS11で受信したクエリに基づくアクセス先のHDD211が、接続切り替えの対象に決定される。なお、このとき決定されるHDD211は、同じオブジェクト格納サーバ220に接続された複数のHDD211の中で、送受信データ量が最大のものとなる。
一方、切り替え判定部312は、すべてのパラメータについてのしきい値との比較結果が、負荷が過大であることを示していない場合には、ステップS11の処理を実行する。すなわち、切り替え判定部312は、あるHDD211の負荷が過大であると判定した場合でも、そのHDD211へのアクセスの際に経由するオブジェクト格納サーバ220の負荷が過大でないと判定した場合には、そのHDD211に接続するオブジェクト格納サーバ220を変更する必要はないと判定する。
なお、各パラメータの比較結果と、それに基づくステップS15での判定結果との関係は、上記の関係に限らない。例えば、切り替え判定部312は、上記の3つの条件のうち2つ以上が満たされた場合に、負荷が過大であると判定してもよい。
[ステップS16]切り替え判定部312は、I/O処理部311に、受信したクエリに基づくアクセス先のHDD211に対するアクセスを一時的に禁止させる。なお、このステップS16は、SASエクスパンダ230での切り替え動作の途中で、切り替え対象のHDD211へのアクセスが実行されてエラーが発生することを防止するためのものである。
[ステップS17]切り替え判定部312および切り替え制御部313の処理により、SASエクスパンダ230での接続切り替え処理が実行される。このステップS17の詳細については後述するが、少なくとも、ステップS11で受信したクエリに基づくアクセス先のHDD211に接続するオブジェクト格納サーバ220は、別のオブジェクト格納サーバ220に切り替えられる。
[ステップS18]接続切り替え処理の完了後、切り替え判定部312は、I/O処理部311に、アクセスを一時的に禁止させていたHDD211へのアクセスを再開させる。このときアクセスを再開させるHDD211としては、少なくとも、ステップS16でアクセスを禁止させたHDD211が含まれる。また、ステップS17の処理により他のHDD211へのアクセスが禁止された場合には、ステップS18において、そのHDD211へのアクセスも再開される。
次に、ステップS17の接続切り替え処理について、2つの処理例を示す。図14および図15を用いて切り替え処理例(1)を説明し、図16および図17を用いて切り替え処理例(2)を説明する。
〔切り替え処理例(1)〕
切り替え処理例(1)は、図13のステップS11で受信したクエリに基づくアクセス先のHDD211だけを、接続切り替えの対象とするものである。図14は、切り替え処理例(1)を示すフローチャートである。
[ステップS21]切り替え判定部312は、サーバ負荷テーブル323に登録された、オブジェクト格納サーバ220ごとのパラメータに基づいて、負荷が最も低いと考えられるオブジェクト格納サーバ220を選択する。
例えば、切り替え判定部312は、プロセッサ使用率が最も低い、空きメモリの値が最も大きい、通信データ量が最も小さい、という3つの条件を最も多く満たしているオブジェクト格納サーバ220を、負荷が最低のオブジェクト格納サーバ220として選択する。また、切り替え判定部312は、例えば、上記条件を最も多く満たしているオブジェクト格納サーバ220が複数ある場合には、優先度の高いパラメータに関する条件を多く満たしているオブジェクト格納サーバ220を、負荷が最低のオブジェクト格納サーバ220として選択してもよい。
[ステップS22]切り替え判定部312は、図13のステップS11で受信したクエリに基づくアクセス先のHDD211のデバイス名と、ステップS21で選択したオブジェクト格納サーバ220のIPアドレスとを含めたデバイス指定情報を、切り替え制御部313に出力する。このデバイス指定情報は、該当HDD211に現在接続されているオブジェクト格納サーバ220を、デバイス指定情報によって指定される別のオブジェクト格納サーバ220に切り替えるように指示するための情報である。
[ステップS23]切り替え制御部313は、切り替え判定部312からのデバイス指定情報によって指定されたHDD211が接続されている、SASエクスパンダ230におけるPHYのIDを判別する。
具体的には、切り替え制御部313は、図13のステップS11で受信したクエリに基づくアクセス先のオブジェクト格納サーバ220に対して、デバイス指定情報によって指定されたHDD211のSASアドレスを問い合わせる。問い合わせを受けたオブジェクト格納サーバ220は、例えば、指定されたHDD211に対してlsscsiコマンドを送信することで、そのHDD211のSASアドレスを取得して、切り替え制御部313に通知する。切り替え制御部313は、PHYテーブル331から、通知されたSASアドレスに対応付けられたPHYのIDを読み出す。
[ステップS24]切り替え制御部313は、切り替え判定部312からのデバイス指定情報によって指定されたオブジェクト格納サーバ220が接続されている、SASエクスパンダ230におけるPHYのIDを判別する。
具体的には、切り替え制御部313は、サーバアドレステーブル332から、デバイス指定情報に含まれるサーバIPアドレスに対応付けられたSASアドレスを読み出す。切り替え制御部313は、PHYテーブル331から、サーバアドレステーブル332から読み出したSASアドレスに対応付けられたPHYのIDを読み出す。
以上のステップS23,S24により、切り替え制御部313は、デバイス指定情報によって指定されたHDD211およびオブジェクト格納サーバ220のそれぞれが接続されたPHYのIDを認識する。
[ステップS25]切り替え制御部313は、SASエクスパンダ230に対してテーブル更新を要求するためのSMPコマンドを送信する。このSMPコマンドにより、切り替え制御部313は、デバイス指定情報によって指定されたHDD211とオブジェクト格納サーバ220とが接続されるようにSASエクスパンダ230のゾーニングテーブル237を更新することを、SASエクスパンダ230に指示する。
切り替え制御部313は、SASエクスパンダ230から、ゾーニングテーブル237の更新の完了通知を受信すると、切り替え判定部312に対して接続切り替えの完了を通知する。
[ステップS26]切り替え判定部312は、接続切り替え後のオブジェクト格納サーバ220とHDD211との接続関係に応じて、オブジェクトテーブル321のサーバIPアドレスを更新する。具体的には、切り替え判定部312は、オブジェクトテーブル321において、ステップS22で出力したデバイス指定情報に含まれるデバイス名に対応付けられたサーバIPアドレスを、このデバイス指定情報に含まれるオブジェクト格納サーバ220のIPアドレスに書き替える。
本実施の形態においては、接続切り替えが実行された場合でも、HDD211間でのオブジェクトの移動は実行されない。このため、接続切り替えが実行された場合でも、オブジェクトテーブル321におけるハッシュ値とHDD211との関係は変化せず、ハッシュ値とオブジェクトテーブル321との関係のみが変更される。
[ステップS27]切り替え判定部312は、ディスク負荷テーブル322のレコード322aのうち、接続するHDD211が変更されたオブジェクト格納サーバ220に対応するレコード322aの構成を変更する。
図15は、接続切り替えの動作例を示す図である。
図15の例では、SASエクスパンダ230のPHY#1,#2,#3にそれぞれオブジェクト格納サーバ220a,220b,220cが接続され、PHY#11,#12,#13,#14にそれぞれHDD#sda,#sdb,#sdc,#sddが接続されている。そして、接続切り替え前の状態では、PHY#1とPHY#11とが導通状態であり、PHY#2とPHY#12とが導通状態であり、PHY#3とPHY#13,#14とが導通状態であるものとする。
ここで、切り替え判定部312により、HDD#sdcの負荷が過大になり(図13のステップS13)、なおかつ、HDD#sdcに接続するオブジェクト格納サーバ220cの負荷が過大になった(図13のステップS15)と判定されたものとする。また、切り替え判定部312は、他のオブジェクト格納サーバ220a,220bのうち、オブジェクト格納サーバ220bの負荷が最も低いと判定したものとする(図14のステップS21)。
この場合、切り替え判定部312は、HDD#sdcのデバイス名「sdc」とオブジェクト格納サーバ220bのIPアドレスとを含めたデバイス指定情報を出力する(図14のステップS22)。このデバイス指定情報に応じて、図15の下段に示すように、ゾーニングテーブル237は、HDD#sdcが接続されたPHY#13のID「13」と、オブジェクト格納サーバ220bが接続されたPHY#2のID「2」とが同じゾーンIDに対応付けられるように書き替えられる。
これにより、I/O処理部311は、オブジェクト格納サーバ220cの代わりに、オブジェクト格納サーバ220bを介してHDD#sdcにアクセスするようになり、オブジェクト格納サーバ220cの負荷が軽減される。従って、オブジェクト格納サーバ220bとオブジェクト格納サーバ220cとの間で負荷が分散される。また、HDD#sdcに対するアクセス速度の低下が抑制されるとともに、オブジェクト格納サーバ220cに接続されたままのHDD#sddに対するアクセス速度が低下することも防止される。
〔切り替え処理例(2)〕
切り替え処理例(2)は、図13のステップS11で受信したクエリに基づくアクセス先のHDD211を含む2つのHDD211を接続切り替えの対象とし、各HDD211に接続されているオブジェクト格納サーバ220を互いに入れ替えるようにしたものである。図16は、切り替え処理例(2)を示すフローチャートである。この図16では、図14と同じ処理には同じステップ番号を付して示し、その説明を省略する。
[ステップS31]切り替え判定部312は、オブジェクトテーブル321またはディスク負荷テーブル322に基づき、図13のステップS11で受信したクエリに基づくアクセス先のオブジェクト格納サーバ220(すなわち、負荷が過大と判定されたオブジェクト格納サーバ220)に接続されているHDD211の台数が1台か、あるいは2台以上かを判定する。
切り替え判定部312は、接続されているHDD211が1台の場合、ステップS32の処理を実行する。すなわち、この切り替え処理例(2)では、負荷が過大と判定されたオブジェクト格納サーバ220に接続されたHDD211が1台である場合のみ、2つのHDD211に接続されているオブジェクト格納サーバ220を互いに入れ替えるようにする。
一方、接続されているHDD211が2台以上の場合、切り替え判定部312はステップS22の処理を実行し、デバイス指定情報を1つだけ切り替え制御部313に出力する。
[ステップS32]切り替え判定部312は、ディスク負荷テーブル322を参照して、ステップS21で選択したオブジェクト格納サーバ220に接続されているHDD211から、負荷が最も低いHDD211を選択する。なお、ステップS21で選択したオブジェクト格納サーバ220に接続されているHDD211が1台である場合には、そのHDD211が、負荷が最も低いものとして選択される。このステップS32で選択されたHDD211は、接続切り替えの対象となる。
[ステップS33]切り替え判定部312は、I/O処理部311に、ステップS32で選択したHDD211に対するアクセスを一時的に禁止させる。
[ステップS34]切り替え判定部312は、デバイス指定情報を2つ生成する。
切り替え判定部312は、ステップS22と同様に、図13のステップS11で受信したクエリに基づくアクセス先のHDD211のデバイス名と、ステップS21で選択したオブジェクト格納サーバ220のIPアドレスとを含めた第1のデバイス指定情報を生成する。
また、切り替え判定部312は、ステップS32で選択したHDD211のデバイス名と、図13のステップS11で受信したクエリに基づくアクセス先のオブジェクト格納サーバ220のIPアドレスとを含めた第2のデバイス指定情報を生成する。
切り替え判定部312は、第1のデバイス指定情報と第2のデバイス指定情報とを、切り替え制御部313に出力する。
[ステップS23a〜S27a]上記のステップS22またはステップS34の実行後に、ステップS23a〜S27aの処理が実行される。ここで、ステップS22が実行された場合(すなわち、負荷が過大であると判定されたオブジェクト格納サーバ220にHDD211が2台以上接続されている場合)、ステップS23a〜S27aでは、図14のステップS23〜S27と全く同じ処理が実行される。一方、ステップS34が実行された場合(すなわち、負荷が過大であると判定されたオブジェクト格納サーバ220にHDD211が1台のみ接続されている場合)、ステップS23a〜S27aでは、ステップS34で出力された2つのデバイス指定情報について、それぞれステップS23〜S27と同じ処理が実行される。
図17は、接続切り替えの動作例を示す図である。
図17の例では、SASエクスパンダ230のPHY#1,#2,#3にそれぞれオブジェクト格納サーバ220a,220b,220cが接続され、PHY#11,#12,#13,#14にそれぞれHDD#sda,#sdb,#sdc,#sddが接続されている。また、接続切り替え前の状態では、PHY#1とPHY#11,#12とが導通状態であり、PHY#2とPHY#13とが導通状態であり、PHY#3とPHY#14とが導通状態であるものとする。
ここで、切り替え判定部312により、HDD#sddの負荷が過大になり(図13のステップS13)、なおかつ、HDD#sddに接続するオブジェクト格納サーバ220cの負荷が過大になった(図13のステップS15)と判定されたものとする。また、切り替え判定部312は、他のオブジェクト格納サーバ220a,220bのうち、オブジェクト格納サーバ220bの負荷が最も低いと判定したものとする(図16のステップS21)。
この場合、切り替え判定部312は、HDD#sddのデバイス名「sdd」とオブジェクト格納サーバ220bのIPアドレスとを含めた第1のデバイス指定情報を出力する。これとともに、切り替え判定部312は、オブジェクト格納サーバ220bに接続されているHDD#sdcのデバイス名「sdc」と、負荷が過大と判定されたオブジェクト格納サーバ220cのIPアドレスとを含めた第2のデバイス指定情報を出力する(図16のステップS34)。
図17の下段に示すように、第1のデバイス指定情報に応じて、ゾーニングテーブル237は、HDD#sddが接続されたPHY#14のID「14」と、オブジェクト格納サーバ220bが接続されたPHY#2のID「2」とが、同じゾーンID「2」に対応付けられるように書き替えられる。これにより、HDD#sddとオブジェクト格納サーバ220bとが接続される。
また、第2のデバイス指定情報に応じて、ゾーニングテーブル237は、HDD#sdcが接続されたPHY#13のID「13」と、オブジェクト格納サーバ220cが接続されたPHY#3のID「3」とが、同じゾーンID「3」に対応付けられるように書き替えられる。これにより、HDD#sdcとオブジェクト格納サーバ220cとが接続される。
すなわち、HDD#sdc,#sddのそれぞれに接続するオブジェクト格納サーバが、互いに入れ替えられる。これにより、オブジェクト格納サーバ220bとオブジェクト格納サーバ220cとの間で負荷が分散される。
ここで、図17のケースで前述の切り替え処理例(1)が実行された場合には、PHY#14と導通する他方のPHYが、PHY#3からPHY#2に切り替えられるだけになる。この場合、PHY#3に接続されたオブジェクト格納サーバ220cにはHDD211が1つも接続されない状態になり、オブジェクト格納サーバ220cが無駄になってしまう。これに対して、切り替え処理例(2)によれば、2つのHDD側のPHYに接続されるオブジェクト格納サーバが互いに入れ替えられるので、オブジェクト格納サーバ220cにHDD211が1台も接続されない状態が発生しなくなる。従って、オブジェクト格納サーバ220の使用効率が向上する。
また、切り替え処理例(2)では、負荷が過大であると判定されたオブジェクト格納サーバ220にHDD211が2台以上接続されている場合には、サーバの入れ替えを行わずに、切り替え処理例(1)と同様の処理を行う。この場合、接続切り替えの対象とするHDD211が1台だけなので、アクセスを停止させるHDD211も1台だけになる。従って、接続切り替え動作がユーザ端末130からのクエリに応じた処理に与える影響を軽減することができる。
なお、以上で説明した切り替え処理例(1),(2)は、あくまで接続切り替え処理の一例であり、オブジェクト格納サーバ220間で負荷が分散するような他の方法によってSASエクスパンダ230での接続状態が切り替えられてもよい。
〔第3の実施の形態〕
図18は、第2の実施の形態に係るストレージシステムの全体構成例を示す図である。この図18では、図3と同じ処理を実行する構成要素には同じ符号を付して示しており、その説明を省略する。
図18のストレージシステム200aは、図3のストレージシステム200において、フロントエンドサーバ300が備えていた処理機能の一部を、新たに設けたコントロールサーバ400に搭載させたものである。また、図18のフロントエンドサーバ300aは、図3のフロントエンドサーバ300のうち、コントロールサーバ400に移設した以外の処理機能を備える装置である。
なお、フロントエンドサーバ300aおよびコントロールサーバ400は、例えば、図4に示したハードウェア構成を有するコンピュータとして実現可能である。
図19は、第2の実施の形態において、フロントエンドサーバおよびコントロールサーバがそれぞれ備える処理機能の例を示すブロック図である。なお、図19では、図7と同じ処理を実行する構成要素には同じ符号を付して示しており、その説明を省略する。
コントロールサーバ400は、図7のフロントエンドサーバ300が備えていた処理機能のうち、切り替え制御部313に対応する機能を備えている。図19の切り替え制御部313aは、図7の切り替え制御部313に対応する処理を行う。また、コントロールサーバ400の不揮発性記憶装置には、PHYテーブル331およびサーバアドレステーブル332が格納される。一方、フロントエンドサーバ300aが備える切り替え判定部312aは、図7の切り替え判定部312に対応する処理を行う。
切り替え制御部313aおよび切り替え判定部312aの処理は、次の点で、図7の切り替え制御部313および切り替え判定部312と異なる。
切り替え制御部313aは、切り替え判定部312aからのデバイス指定情報によって指定されたHDD211のSASアドレスを取得するために、例えば、フロントエンドサーバ300aの切り替え判定部312aに対して、SASアドレスの問い合わせの実行を依頼する。依頼を受けた切り替え判定部312aは、I/O処理部311が受信したクエリに基づくアクセス先のオブジェクト格納サーバ220に対して、HDD211のSASアドレスを問い合わせる。
切り替え判定部312aは、問い合わせに応じてオブジェクト格納サーバ220から通知されたSASアドレスを、コントロールサーバ400の切り替え制御部313aに通知する。切り替え制御部313aは、PHYテーブル331から、通知されたSASアドレスに対応付けられたPHYのIDを読み出す。
なお、切り替え制御部313aは、例えば、SASアドレスの問い合わせをオブジェクト格納サーバ220に対して直接行ってもよい。
以上の第3の実施の形態によれば、第2の実施の形態と同様に、SASエクスパンダ230での接続状態を動的に変更して、オブジェクト格納サーバ220間の負荷を分散させることができる。これにより、HDD211に対するアクセス性能の低下を抑制することができる。
なお、前述の通り、上記の各実施の形態に示した装置(例えば、アクセス制御装置2a,2b、接続制御装置5、オブジェクト格納サーバ220、フロントエンドサーバ300,300aおよびコントロールサーバ400)の処理機能は、コンピュータによって実現することができる。その場合、各装置が有すべき機能の処理内容を記述したプログラムが提供され、そのプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。
処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、磁気記憶装置、光ディスク、光磁気記録媒体、半導体メモリなどがある。磁気記憶装置には、ハードディスク装置(HDD)、フレキシブルディスク(FD)、磁気テープなどがある。光ディスクには、DVD、DVD−RAM、CD−ROM、CD−R/RWなどがある。光磁気記録媒体には、MO(Magneto-Optical disk)などがある。
プログラムを流通させる場合には、例えば、そのプログラムが記録されたDVD、CD−ROMなどの可搬型記録媒体が販売される。また、プログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することもできる。
プログラムを実行するコンピュータは、例えば、可搬型記録媒体に記録されたプログラムまたはサーバコンピュータから転送されたプログラムを、自己の記憶装置に格納する。そして、コンピュータは、自己の記憶装置からプログラムを読み取り、プログラムに従った処理を実行する。なお、コンピュータは、可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することもできる。また、コンピュータは、ネットワークを介して接続されたサーバコンピュータからプログラムが転送されるごとに、逐次、受け取ったプログラムに従った処理を実行することもできる。
以上の各実施の形態に関し、さらに以下の付記を開示する。
(付記1) 複数のアクセス制御装置と、
前記複数のアクセス制御装置のいずれかによってそれぞれに対するアクセスが制御される複数の記憶装置と、
前記複数の記憶装置のそれぞれを、前記複数のアクセス制御装置のうちのいずれかに接続する中継装置と、
前記各アクセス制御装置の負荷状況に応じて、前記各アクセス制御装置に負荷が分散するように前記中継装置における接続切り替え動作を制御する接続制御装置と、
を有することを特徴とするストレージシステム。
(付記2) 前記接続制御装置は、負荷の大きさを示す負荷パラメータが所定のしきい値を超えた前記アクセス制御装置に接続されている前記記憶装置を、前記負荷パラメータが前記しきい値以下である他の前記アクセス制御装置に接続し直すように前記中継装置に指示することを特徴とする付記1記載のストレージシステム。
(付記3) 前記接続制御装置は、前記負荷パラメータが前記しきい値を超えた前記アクセス制御装置に接続されている前記記憶装置のうち、単位時間の転送データ量が最大の前記記憶装置を、前記負荷パラメータが前記しきい値以下である他の前記アクセス制御装置に接続し直すように前記中継装置に指示することを特徴とする付記2記載のストレージシステム。
(付記4) 前記接続制御装置は、前記負荷パラメータが前記しきい値を超えた前記アクセス制御装置に接続されている第1の記憶装置と、前記負荷パラメータが前記しきい値以下である他の前記アクセス制御装置に接続されている第2の記憶装置との間で、接続される前記アクセス制御装置が入れ替わるように前記中継装置に指示することを特徴とする付記2記載のストレージシステム。
(付記5) 前記接続制御装置は、前記記憶装置ごとにアクセス経路として割り当てられたいずれか1つの前記アクセス制御装置を介して、前記複数の記憶装置のそれぞれにアクセスするフロントエンド処理部を有し、
前記接続制御装置は、前記複数の記憶装置のうちの一の記憶装置に接続する前記アクセス制御装置の変更を前記中継装置に指示するとき、前記一の記憶装置へのアクセス経路として割り当てる前記アクセス制御装置の変更を前記フロントエンド処理部に指示する、
ことを特徴とする付記1〜4のいずれか1項に記載のストレージシステム。
(付記6) 前記フロントエンド処理部は、アクセス先のオブジェクトの識別情報を受け付けると、オブジェクトの識別情報に基づく計算値と、前記記憶装置を識別する情報と、アクセス経路とする前記アクセス制御装置とが対応付けられた対応表に基づいて、前記アクセス先のオブジェクトに対応する前記アクセス制御装置を介して、前記アクセス先のオブジェクトに対応する前記記憶装置にアクセスし、
前記接続制御装置は、前記一の記憶装置に接続する前記アクセス制御装置の変更を前記中継装置に指示するとき、前記対応表に登録された情報のうち、前記一の記憶装置に対応付けられた前記アクセス制御装置の識別情報を変更する、
ことを特徴とする付記5記載のストレージシステム。
(付記7) 複数のアクセス制御装置と、複数の記憶装置とを備えたストレージシステムの制御方法であって、
前記ストレージシステムが備える中継装置が、前記複数の記憶装置のそれぞれを、前記複数のアクセス制御装置のうちのいずれかに接続し、
前記複数のアクセス制御装置のそれぞれが、接続された前記記憶装置に対するアクセスを制御し、
前記ストレージシステムが備える接続制御装置が、前記各アクセス制御装置の負荷状況に応じて、前記各アクセス制御装置に負荷が分散するように前記中継装置における接続切り替え動作を制御する、
ことを特徴とするストレージシステムの制御方法。
(付記8) 前記接続切り替え動作を制御する処理では、前記接続制御装置は、負荷の大きさを示す負荷パラメータが所定のしきい値を超えた前記アクセス制御装置に接続されている前記記憶装置を、前記負荷パラメータが前記しきい値以下である他の前記アクセス制御装置に接続し直すように前記中継装置に指示する、
ことを特徴とする付記7記載のストレージシステムの制御方法。
(付記9) 前記接続切り替え動作を制御する処理では、前記接続制御装置は、前記負荷パラメータが前記しきい値を超えた前記アクセス制御装置に接続されている前記記憶装置のうち、単位時間の転送データ量が最大の前記記憶装置を、前記負荷パラメータが前記しきい値以下である他の前記アクセス制御装置に接続し直すように前記中継装置に指示する、
ことを特徴とする付記8記載のストレージシステムの制御方法。
(付記10) 前記接続切り替え動作を制御する処理では、前記接続制御装置は、前記負荷パラメータが前記しきい値を超えた前記アクセス制御装置に接続されている第1の記憶装置と、前記負荷パラメータが前記しきい値以下である他の前記アクセス制御装置に接続されている第2の記憶装置との間で、接続される前記アクセス制御装置が入れ替わるように前記中継装置に指示する、
ことを特徴とする付記8記載のストレージシステムの制御方法。
(付記11) 前記接続制御装置が、前記記憶装置ごとにアクセス経路として割り当てられたいずれか1つの前記アクセス制御装置を介して、前記複数の記憶装置のそれぞれにアクセスし、
前記接続制御装置が、前記複数の記憶装置のうちの一の記憶装置に接続する前記アクセス制御装置の変更を前記中継装置に指示するとき、前記一の記憶装置へのアクセス経路として割り当てる前記アクセス制御装置を変更して、前記複数の記憶装置のそれぞれへのアクセスを継続する、
処理をさらに含むことを特徴とする付記7〜10のいずれか1項に記載のストレージシステムの制御方法。
(付記12) 前記複数の記憶装置のそれぞれにアクセスする処理では、前記接続制御装置は、アクセス先のオブジェクトの識別情報を受け付けると、オブジェクトの識別情報に基づく計算値と、前記記憶装置を識別する情報と、アクセス経路とする前記アクセス制御装置とが対応付けられた対応表に基づいて、前記アクセス先のオブジェクトに対応する前記アクセス制御装置を介して、前記アクセス先のオブジェクトに対応する前記記憶装置にアクセスし、
前記一の記憶装置へのアクセス経路として割り当てる前記アクセス制御装置を変更してアクセスを継続する処理では、前記接続制御装置は、前記一の記憶装置に接続する前記アクセス制御装置の変更を前記中継装置に指示するとき、前記対応表に登録された情報のうち、前記一の記憶装置に対応付けられた前記アクセス制御装置の識別情報を変更する、
ことを特徴とする付記11記載のストレージシステムの制御方法。
1 ストレージシステム
2a,2b アクセス制御装置
3a〜3c 記憶装置
4 中継装置
5 接続制御装置

Claims (7)

  1. 複数のアクセス制御装置と、
    前記複数のアクセス制御装置のいずれかによってそれぞれに対するアクセスが制御される複数の記憶装置と、
    前記複数の記憶装置のそれぞれを、前記複数のアクセス制御装置のうちのいずれかに接続する中継装置と、
    前記各アクセス制御装置の負荷状況に応じて、前記各アクセス制御装置に負荷が分散するように前記中継装置における接続切り替え動作を制御する接続制御装置と、
    を有することを特徴とするストレージシステム。
  2. 前記接続制御装置は、負荷の大きさを示す負荷パラメータが所定のしきい値を超えた前記アクセス制御装置に接続されている前記記憶装置を、前記負荷パラメータが前記しきい値以下である他の前記アクセス制御装置に接続し直すように前記中継装置に指示することを特徴とする請求項1記載のストレージシステム。
  3. 前記接続制御装置は、前記負荷パラメータが前記しきい値を超えた前記アクセス制御装置に接続されている前記記憶装置のうち、単位時間の転送データ量が最大の前記記憶装置を、前記負荷パラメータが前記しきい値以下である他の前記アクセス制御装置に接続し直すように前記中継装置に指示することを特徴とする請求項2記載のストレージシステム。
  4. 前記接続制御装置は、前記負荷パラメータが前記しきい値を超えた前記アクセス制御装置に接続されている第1の記憶装置と、前記負荷パラメータが前記しきい値以下である他の前記アクセス制御装置に接続されている第2の記憶装置との間で、接続される前記アクセス制御装置が入れ替わるように前記中継装置に指示することを特徴とする請求項2記載のストレージシステム。
  5. 前記接続制御装置は、前記記憶装置ごとにアクセス経路として割り当てられたいずれか1つの前記アクセス制御装置を介して、前記複数の記憶装置のそれぞれにアクセスするフロントエンド処理部を有し、
    前記接続制御装置は、前記複数の記憶装置のうちの一の記憶装置に接続する前記アクセス制御装置の変更を前記中継装置に指示するとき、前記一の記憶装置へのアクセス経路として割り当てる前記アクセス制御装置の変更を前記フロントエンド処理部に指示する、
    ことを特徴とする請求項1〜4のいずれか1項に記載のストレージシステム。
  6. 前記フロントエンド処理部は、アクセス先のオブジェクトの識別情報を受け付けると、オブジェクトの識別情報に基づく計算値と、前記記憶装置を識別する情報と、アクセス経路とする前記アクセス制御装置とが対応付けられた対応表に基づいて、前記アクセス先のオブジェクトに対応する前記アクセス制御装置を介して、前記アクセス先のオブジェクトに対応する前記記憶装置にアクセスし、
    前記接続制御装置は、前記一の記憶装置に接続する前記アクセス制御装置の変更を前記中継装置に指示するとき、前記対応表に登録された情報のうち、前記一の記憶装置に対応付けられた前記アクセス制御装置の識別情報を変更する、
    ことを特徴とする請求項5記載のストレージシステム。
  7. 複数のアクセス制御装置と、複数の記憶装置とを備えたストレージシステムの制御方法であって、
    前記ストレージシステムが備える中継装置が、前記複数の記憶装置のそれぞれを、前記複数のアクセス制御装置のうちのいずれかに接続し、
    前記複数のアクセス制御装置のそれぞれが、接続された前記記憶装置に対するアクセスを制御し、
    前記ストレージシステムが備える接続制御装置が、前記各アクセス制御装置の負荷状況に応じて、前記各アクセス制御装置に負荷が分散するように前記中継装置における接続切り替え動作を制御する、
    ことを特徴とするストレージシステムの制御方法。
JP2012167454A 2012-07-27 2012-07-27 ストレージシステムおよびその制御方法 Pending JP2014026529A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2012167454A JP2014026529A (ja) 2012-07-27 2012-07-27 ストレージシステムおよびその制御方法
US13/886,623 US9229660B2 (en) 2012-07-27 2013-05-03 Storage system and method for controlling storage system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012167454A JP2014026529A (ja) 2012-07-27 2012-07-27 ストレージシステムおよびその制御方法

Publications (1)

Publication Number Publication Date
JP2014026529A true JP2014026529A (ja) 2014-02-06

Family

ID=49996076

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012167454A Pending JP2014026529A (ja) 2012-07-27 2012-07-27 ストレージシステムおよびその制御方法

Country Status (2)

Country Link
US (1) US9229660B2 (ja)
JP (1) JP2014026529A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015153123A (ja) * 2014-02-14 2015-08-24 富士通株式会社 アクセス制御プログラム、アクセス制御方法、およびアクセス制御装置
JP2016076184A (ja) * 2014-10-09 2016-05-12 富士通株式会社 ファイルシステム、管理装置の制御プログラム、および、ファイルシステムの制御方法

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11163454B1 (en) 2017-10-31 2021-11-02 EMC IP Holding Company, LLC Bottom-up IO load balancing storage system and method
US11163451B1 (en) 2017-10-31 2021-11-02 EMC IP Holding Company, LLC Top-down IO load balancing storage system and method
US11163471B1 (en) 2017-10-31 2021-11-02 EMC IP Holding Company LLC Storage system and method for movement between rotation subgroups
US11163465B1 (en) 2017-10-31 2021-11-02 EMC IP Holding Company, LLC Top-down wear-leveling storage system and method
TWI637651B (zh) * 2018-01-03 2018-10-01 和碩聯合科技股份有限公司 無線熱點運作方法
JP7102198B2 (ja) * 2018-04-05 2022-07-19 キヤノン株式会社 記憶手段を有する画像形成装置、画像形成装置の制御方法
US20190347335A1 (en) * 2018-05-08 2019-11-14 Apple Inc. Categorization of websites
CN110557354B (zh) * 2018-05-31 2020-10-13 杭州海康威视数字技术股份有限公司 一种实现节点间通讯的方法、装置及电子设备

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002373103A (ja) * 2001-06-14 2002-12-26 Hitachi Ltd 計算機システム
JP2003296037A (ja) * 2002-04-05 2003-10-17 Hitachi Ltd 計算機システム
JP2006189963A (ja) * 2004-12-28 2006-07-20 Hitachi Ltd ストレージアクセス制御方法、クラスタシステム、パス接続スイッチおよびストレージアクセス制御プログラム
JP2006228078A (ja) * 2005-02-21 2006-08-31 Hitachi Ltd 階層関係で構成される複数のデバイス間のアクセス管理方法、管理計算機、または計算機システム
JP2007079885A (ja) * 2005-09-14 2007-03-29 Hitachi Ltd データ入出力負荷分散方法、データ入出力負荷分散プログラム、計算機システムおよび管理サーバ
JP2008071005A (ja) * 2006-09-13 2008-03-27 Hitachi Ltd 空きポートを有効に活用したストレージシステム

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6438647B1 (en) * 2000-06-23 2002-08-20 International Business Machines Corporation Method and apparatus for providing battery-backed immediate write back cache for an array of disk drives in a computer system
JP2004013215A (ja) 2002-06-03 2004-01-15 Hitachi Ltd ストレージシステム、ストレージサブシステム、および、それらを含む情報処理システム
JP2007304896A (ja) 2006-05-12 2007-11-22 Fujitsu Ltd チャネルスイッチ装置,ストレージシステムおよびアクセス経路切り替え方法
JP5253901B2 (ja) * 2008-06-20 2013-07-31 株式会社東芝 メモリシステム
US8756381B2 (en) * 2011-06-01 2014-06-17 Hitachi, Ltd. Storage subsystem and load distribution method for executing data processing using normal resources even if an abnormality occurs in part of the data processing resources that intermediate data processing between a host computer and a storage device
US8839030B2 (en) * 2011-09-09 2014-09-16 Lsi Corporation Methods and structure for resuming background tasks in a clustered storage environment

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002373103A (ja) * 2001-06-14 2002-12-26 Hitachi Ltd 計算機システム
JP2003296037A (ja) * 2002-04-05 2003-10-17 Hitachi Ltd 計算機システム
JP2006189963A (ja) * 2004-12-28 2006-07-20 Hitachi Ltd ストレージアクセス制御方法、クラスタシステム、パス接続スイッチおよびストレージアクセス制御プログラム
JP2006228078A (ja) * 2005-02-21 2006-08-31 Hitachi Ltd 階層関係で構成される複数のデバイス間のアクセス管理方法、管理計算機、または計算機システム
JP2007079885A (ja) * 2005-09-14 2007-03-29 Hitachi Ltd データ入出力負荷分散方法、データ入出力負荷分散プログラム、計算機システムおよび管理サーバ
JP2008071005A (ja) * 2006-09-13 2008-03-27 Hitachi Ltd 空きポートを有効に活用したストレージシステム

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015153123A (ja) * 2014-02-14 2015-08-24 富士通株式会社 アクセス制御プログラム、アクセス制御方法、およびアクセス制御装置
JP2016076184A (ja) * 2014-10-09 2016-05-12 富士通株式会社 ファイルシステム、管理装置の制御プログラム、および、ファイルシステムの制御方法
US10178014B2 (en) 2014-10-09 2019-01-08 Fujitsu Limited File system, control program of file system management device, and method of controlling file system

Also Published As

Publication number Publication date
US20140032839A1 (en) 2014-01-30
US9229660B2 (en) 2016-01-05

Similar Documents

Publication Publication Date Title
JP2014026529A (ja) ストレージシステムおよびその制御方法
US7536508B2 (en) System and method for sharing SATA drives in active-active RAID controller system
JP5099128B2 (ja) ストレージ管理プログラム、ストレージ管理装置およびストレージ管理方法
JP6056453B2 (ja) プログラム、データ管理方法および情報処理装置
US8898385B2 (en) Methods and structure for load balancing of background tasks between storage controllers in a clustered storage environment
US8930620B2 (en) Host discovery and handling of ALUA preferences and state transitions
JP6040612B2 (ja) ストレージ装置、情報処理装置、情報処理システム、アクセス制御方法、およびアクセス制御プログラム
US20090300283A1 (en) Method and apparatus for dissolving hot spots in storage systems
US8560746B2 (en) Access control apparatus, access control method and storage system
JP4285058B2 (ja) ネットワーク管理プログラム、管理計算機及び管理方法
JP2012531654A (ja) ストレージシステム及びストレージシステムの通信パス管理方法
JP2019095971A (ja) ストレージシステム、ストレージ制御装置およびプログラム
US7886186B2 (en) Storage system and management method for the same
JP2007115140A (ja) ストレージシステム、及びストレージスシステムの制御方法
JP2015161999A (ja) ストレージ装置,制御装置及び制御プログラム
US9891992B2 (en) Information processing apparatus, information processing method, storage system and non-transitory computer readable storage media
JP6005446B2 (ja) ストレージシステム、仮想化制御装置、情報処理装置、および、ストレージシステムの制御方法
JP2014229088A (ja) データ処理システム、データ処理装置および記憶媒体
JP2009295045A (ja) ストレージシステム、ストレージサブシステム、及び記憶制御方法
US11301139B2 (en) Building stable storage area networks for compute clusters
US10970210B2 (en) Managing data storage devices for spontaneous de-staging of cache
US10788995B2 (en) Information processing apparatus, method and non-transitory computer-readable storage medium
JP2018005817A (ja) ストレージ管理装置、ストレージ管理プログラム、およびストレージシステム
JP2014048834A (ja) 情報処理装置、コピー制御プログラム、およびコピー制御方法
WO2015155824A1 (ja) ストレージシステム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150406

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160329

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160329

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160523

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20161011