JP5228988B2 - 割当制御プログラム及び割当制御装置 - Google Patents

割当制御プログラム及び割当制御装置 Download PDF

Info

Publication number
JP5228988B2
JP5228988B2 JP2009038749A JP2009038749A JP5228988B2 JP 5228988 B2 JP5228988 B2 JP 5228988B2 JP 2009038749 A JP2009038749 A JP 2009038749A JP 2009038749 A JP2009038749 A JP 2009038749A JP 5228988 B2 JP5228988 B2 JP 5228988B2
Authority
JP
Japan
Prior art keywords
group
logical volume
information
allocation
storage
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2009038749A
Other languages
English (en)
Other versions
JP2010198056A (ja
Inventor
和一 大江
達夫 熊野
泰生 野口
芳浩 土屋
一隆 荻原
雅寿 田村
哲太郎 丸山
高志 渡辺
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
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 JP2009038749A priority Critical patent/JP5228988B2/ja
Priority to US12/709,863 priority patent/US20100217933A1/en
Publication of JP2010198056A publication Critical patent/JP2010198056A/ja
Application granted granted Critical
Publication of JP5228988B2 publication Critical patent/JP5228988B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • 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/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of 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/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/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]

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)

Description

論理ボリュームをストレージ管理装置群が管理する物理記憶領域に分散配置する割当処理のための割当制御プログラム及び割当制御装置に関する。
従来、複数のストレージ装置をネットワーク上に分散配置して協働させることによって、システムの性能及び信頼性を向上させる分散型のマルチノードストレージシステムがある。マルチノードストレージシステムでは、クライアントからの要求に応じた仮想的な論理ボリュームが生成される。この論理ボリュームは、所定の分割領域に分割されて複数のストレージ装置の物理記憶領域に割り当てられる。
一般的な割当制御では、論理ボリュームを分割した分割領域を、各ストレージ装置の物理記憶領域を分割した分割物理記憶領域に順に割り当てていくラウンドロビン方式が用いられている。このような割当制御により、論理ボリュームの分割領域は、マルチノードストレージシステムを構成するすべてのストレージ装置に分散配置される。
また、論理ボリューム内でデータを二重化する場合には、セカンダリ論理ボリュームを対応するプライマリ論理ボリュームの割当先と同じストレージ装置には割り当てないという制約条件の下、ラウンドロビン方式割当制御が行われる(例えば、特許文献1参照)。
特開2005−4681号公報
しかしながら、従来の割当制御では、性能を保つことが容易ではないという問題点があった。
ラウンドロビン方式の割当制御について、一例を挙げて説明する。図20は、従来のラウンドロビン方式による割当制御を示した図である。
アクセスノードAP0(940)、AP1(941)、AP2(942)がそれぞれ管理する論理ボリューム0(950)、論理ボリューム1(951)、論理ボリューム2(952)は、それぞれ独立して動作する仮想記憶領域である。ディスクノードDP0(910)は物理記憶領域であるディスク#0(920)、DP1(911)はディスク#1(921)、DP2(912)はディスク#2(922)をそれぞれ管理している。
制御ノードCP900は、論理ボリュームの割当制御を行う。例えば、論理ボリューム0(950)の分割領域L0−0,L0−1,L0−2,L0−3,L0−4,L0−5を、ディスク#0(920)、ディスク#1(921)、ディスク#2(922)とラウンドロビン方式で割り当てていく。こうして、図に示したように、論理ボリューム0(950)は、ディスクノード910,911,912に分散配置される。同様の処理が論理ボリューム1(951)の分割領域L1−0,L1−1,L1−2,L1−3,L1−4,L1−5及び論理ボリューム2(952)の分割領域L2−0,L2−1,L2−2,L2−3,L2−4,L2−5に対しても行われる。
ここで、L1−0にアクセスが集中したとする。L1−0は、ディスク#0(920)に割り当てられており、L1−0へのアクセス集中によって、DP0(910)の負荷が重くなる。すると、L1−0ばかりでなく、ディスク#0(920)のスライスすべてのレスポンスが悪化する。ディスク#0(920)には、他の論理ボリュームのL0−0,L0−3及びL2−0,L2−3が割り当てられており、これらに対するアクセス処理が遅延する。
このように、論理ボリューム1(951)へのアクセス集中が、他の論理ボリューム0(950)、論理ボリューム2(952)にレスポンス悪化など、性能上の影響を及ぼす。この結果、アクセスが集中した論理ボリュームばかりでなく、すべての論理ボリュームについて性能を保つことができなくなっていた。
一方、性能の観点からは、論理ボリュームに割り当てられる物理記憶領域は、論理ボリュームに発生する負荷に応じた数のストレージ管理装置に分散されていれば十分である。しかし、従来の割当制御では、論理ボリュームはすべてのストレージ管理装置に一律に分散配置される。このため、性能の観点からすると効率的でない。
このような点に鑑み、状況によらず性能を保つことが可能な割当制御を行う割当制御プログラム及び割当制御装置を提供することを目的とする。
上記課題を解決するために、論理ボリュームをストレージ管理装置群が管理する物理記憶領域に分散配置する割当処理のための割当制御プログラムが提供される。この割当制御プログラムは、割当制御装置に適用され、コンピュータを、グループ分け手段及び割当手段として機能させることができる。ストレージ管理装置に関するストレージ管理情報には、各ストレージ管理装置が管理する物理記憶領域に関する情報と、ストレージ管理装置及び該ストレージ管理装置に対応するストレージ装置の所定の性能情報とが含まれる。グループ分け手段は、このストレージ管理情報と、グループ分けのルールを定義したグループ定義と、に基づいてストレージ管理装置群をグループ分けする。グループ分けされたグループごとに、このグループに属するストレージ管理装置のストレージ管理情報に基づいてグループに関するグループ管理情報を生成し、記憶手段に格納する。グループ管理情報には、所定の性能に関する該グループの上限性能が含まれる。割当手段は、物理記憶領域の割当対象である対象論理ボリュームについての論理ボリューム情報を取得する。論理ボリューム情報には、対象論理ボリュームの容量と、対象論理ボリュームに予測される所定の性能に関する予測性能値とが含まれる。そして、論理ボリューム情報及びグループ管理情報に基づいて対象論理ボリュームの割当が可能な物理記憶領域が確保できるとともにグループの上限性能が対象論理ボリュームの予測性能値よりも高いグループを選択する。この選択されたグループ内の物理記憶領域に対象論理ボリュームの分割領域を割り当てる。
このような割当制御プログラムを実行するコンピュータによれば、ストレージ管理情報を参照し、グループ分けのルールを定義したグループ定義に基づいてストレージ管理装置群がグループ分けされる。そして各グループに属するストレージ管理装置のストレージ管理情報からグループ管理情報が生成され、記憶手段に格納される。グループ管理情報には、所定の性能に関するグループの上限性能も設定される。割当手段は、論理ボリューム情報及びグループ管理情報に基づいて対象論理ボリュームの割当が可能であって、グループの上限性能が対象論理ボリュームの予測性能値よりも高いグループを選択する。そして、選択されたグループ内のストレージ管理装置が管理する物理記憶領域をこの論理ボリュームの分割領域に割り当てる。
また、上記課題を解決するために、コンピュータが上記の割当制御プログラムを実行することによって実現される処理手段を有する割当制御装置が提供される。
開示の割当制御プログラム及び割当制御装置によれば、選択されたグループに属するストレージ管理装置の管理する物理記憶領域を最大範囲として、論理ボリュームの割当処理が行われる。これにより、論理ボリュームのレスポンス遅延などの性能悪化の影響は割り当てられたグループ内に限定され、このような状況によらず、他のグループに割り当てられた論理ボリュームの性能を保つことができる。
実施の形態に適用される割当制御の概要を示した図である。 実施の形態のマルチノードディスクシステムの構成例を示す図である。 制御ノードのハードウェア構成例を示す図である。 制御ノード、論理ボリューム及びディスクノード群の構成例を示した図である。 DP管理情報の一例を示した図である。 DP群のグループ分けを行った後のグループ構成の一例を示した図である。 グループ管理情報の一例を示した図である。 割当ルール1を用いて割当処理を行った場合の割当状態を示した図である。 割当ルール1を用いて割当処理を行った場合のグループ管理情報(割当情報)を示した図である。 割当ルール2を用いて割当処理を行った場合の割当状態を示した図である。 割当ルール2を用いて割当処理を行った場合のグループ管理情報(割当情報)を示した図である。 ホットスポット発生時の再割当処理を示した図である。 ホットスポットによる再割当処理後のグループ管理情報(割当情報)を示した図である。 観測情報に基づいて解析されたアクセス特徴情報の一例を示した図である。 ピークiopsが上限iopsを超えたときの再割当処理を示した図である。 ピークiopsが上限iopsを超えたときの再割当処理後のグループ管理情報を示した図である。 電源投入時の処理の手順を示したフローチャートである。 論理ボリュームへのスライス割当処理の手順を示したフローチャートである。 再割当処理の手順を示したフローチャートである。 従来のラウンドロビン方式による割当制御を示した図である。
以下、本発明の実施の形態を図面を参照して説明する。まず、実施の形態に適用される割当制御の概要について説明し、その後、具体的な内容を説明する。
図1は、実施の形態に適用される割当制御の概要を示した図である。
論理ボリュームは、図示しないアクセス制御装置が管理する仮想的な記憶領域で、割当制御装置10によって物理記憶領域に割り当てられる。物理記憶領域は、ストレージ管理装置#0(20)が管理するストレージ装置#0(30)、ストレージ管理装置#1(21)が管理するストレージ装置#1(31)、ストレージ管理装置#2(22)が管理するストレージ装置#2(32)、ストレージ管理装置#3(23)が管理するストレージ装置#3(33)、・・・、ストレージ管理装置#9(29)が管理するストレージ装置#9(39)にある。以下、特定する必要がないときは、ストレージ管理装置2n及びストレージ装置3nと表記する。また、ストレージ装置3nの物理記憶領域を分割した分割領域をスライスと呼び、スライスに対応する論理ボリューム上の分割領域を論理スライスと呼ぶ。
割当制御装置10は、ネットワーク60を介して物理記憶領域を備えたストレージ装置3nを管理するストレージ管理装置2nに接続し、論理ボリュームのスライス割当処理を行う。その処理のため、グループ定義記憶手段11a及び管理情報記憶手段11bの記憶手段と、グループ分け手段12、割当手段13、割当指示手段14、解析手段15及び再割当手段16の処理手段と、を有する。各処理手段は、コンピュータが、割当制御プログラムを実行することによって、その処理機能が実現される。
グループ定義記憶手段11aには、ストレージ管理装置2nをグループ分けする際に用いるグループ分けのルールが格納されている。例えば、1つのグループを構成するストレージ管理装置の台数、グループの物理記憶領域の総容量など、グループを構成する要件がグループ分けのルールとして予め定義されている。また、生成されたグループの上限性能(iops、スループット、ボリューム数などが定義されている)に基づいてグループ分けを行うグループ分けのルールを生成するとしてもよい。なお、iops(Input Output per Second)は、単位時間当たりの読み・書き処理数を表す。
管理情報記憶手段11bには、管理下のストレージ管理装置2nとストレージ装置3nに関するストレージ管理情報と、生成されたグループに関するグループ管理情報と、が格納される。ストレージ管理情報には、例えば、ストレージ装置3nが有する物理記憶領域の容量や、ストレージ管理装置2nの処理能力などが設定される。グループ管理情報には、グループを構成するストレージ管理装置の識別情報や、グループ全体の処理能力などが設定される。
グループ分け手段12は、管理情報記憶手段11bに格納されるストレージ管理情報を読み出し、グループ定義記憶手段11aに格納されるグループ分けのルールに基づいてストレージ管理装置2nをグループ分けする。ストレージ管理装置2nと、これに接続されるストレージ装置3nとは不可分であり、ストレージ管理装置2nをグループ分けすると、ストレージ装置3nも同じようにグループ分けされる。グループごとに、当該グループにグループ分けされたストレージ管理装置2nの識別情報と、ストレージ管理情報から抽出されたストレージ管理装置2nに関する情報とをグループ管理情報として登録し、管理情報記憶手段11bに格納する。また、グループ管理情報には、グループに割り当てられた論理ボリュームの割当情報も登録される。
割当手段13は、管理情報記憶手段11bに格納されるグループ管理情報を読み出し、グループ管理情報に基づいて対象の論理ボリュームに割り当てるグループを選択する。少なくとも、グループ内の未割当のスライスの容量が、対象の論理ボリュームの論理スライスの容量よりも多くなるようにグループを選択する。そして、選択されたグループ内のスライスに対象の論理ボリュームを割り当て、割当指示手段14を介してこのスライスを管理するストレージ管理装置2nに割当を指示する。正常に割当が完了したときは、割当が完了した論理ボリュームに関する割当情報を生成し、グループ管理情報に登録する。
割当指示手段14は、割当手段13及び再割当手段16に従って、ストレージ管理装置2nに割当指示を通知する。ストレージ管理装置2nからの応答は、要求のあった割当手段13または再割当手段16に返す。
解析手段15は、観測手段が観測したストレージ装置3nへのアクセス状態に関する観測情報を取得し、これを解析する。観測手段は、割当制御装置10内に備えていても、外部機器であってもよい。例えば、ネットワーク60を流れるパケットを観測するパケットアナライザなどがある。解析手段15は、パケットアナライザが観測した観測情報を取得して解析する。そして、各ストレージ管理装置2nのアクセス処理性能など、所定の性能に関する観測値を算出し、アクセス特徴などの解析情報を生成する。例えば、パケットアナライザから所定の期間に論理ボリュームに発生したiopsを取得し、性能の指標とすることができる。また、iopsを時間帯別に集計し、時間帯別のアクセス傾向を解析するとしてもよい。さらに、アクセス要求のパケットを解析し、要求サイズに応じたアクセスパターンで分類し、アクセスパターンの傾向を捉えてもよい。解析手法は適宜選択される。
再割当手段16は、グループごとに、解析手段15が算出した所定の性能に関する観測値と、グループ管理情報に設定されるグループの上限性能とを比較する。そして、観測値がグループの上限値を超えていると判定されれば、論理ボリュームの再割当を行う。また、観測手段がアクセス集中を検出し、通知することができるときは、この通知を受けて再割当を行う。再割当処理では、所定の性能に関する観測値が上限性能を超えた論理ボリューム、あるいは、アクセス集中が通知された論理スライスを含む論理ボリュームに対応するグループを特定する。次に、グループ管理情報に基づいて、この論理ボリュームを割り当てる新たなグループを選択する。そして、選択されたグループに、この論理ボリュームの一部または全領域を新たに選択されたグループのスライスに再割当する。このように、新たなグループのスライスに、少なくとも一部の論理ボリュームを割り当てることにより、処理を行うストレージ管理装置が分散され、再割当前に算出された観測値が上限性能を超えないようにすることができる。なお、再割当処理は、割当手段13と同様、論理ボリュームごとに行われる。
このような割当制御装置10の動作及び割当制御方法について説明する。
システム起動時、割当制御装置10には、予めグループ分けのルールなどの情報が設定される。同時に、各ストレージ管理装置2nのピークiopsや、アクセスパターンなど、ストレージ管理装置2nに関する情報も取得する。これらの情報は、管理者が設定する予測値であってもよい。また、ストレージ管理装置2nが起動した後、ストレージ管理装置2nからピークiopsやRAID種類などの情報の通知を受けるとしてもよい。これらの情報は、記憶手段に格納される。こうして、管理情報記憶手段11bには、ストレージ管理装置2nと、ストレージ装置3nに関するストレージ管理情報が格納される。ストレージ管理情報には、ストレージ装置3nが有する物理記憶領域の容量に関する情報や、予め測定されたストレージ管理装置2nの最大iopsなどが設定されている。また、グループ定義記憶手段11aには、グループ分けのルールやグループの特徴など、生成されるグループを定義するグループ定義が格納される。
割当制御装置10が起動され、グループ分けのルールやストレージ管理情報などが取得されると、これらの情報に基づいてストレージ管理装置2nのグループ分けが開始される。例えば、グループ分けのルールとして、「ストレージ管理装置2nを2台ずつグループ分けする。」というルールが定義されていたとする。ここでは、図1に示したように、ストレージ管理装置#0(20)と、ストレージ管理装置#1(21)とがグループ1に分けられる。同様に、ストレージ管理装置#2(22)と、ストレージ管理装置#3(23)とがグループ2、ストレージ管理装置#9(29)がグループ5にグループ分けされる。各グループの情報は、グループ管理情報に登録される。こうして起動時にグループ分けが行われ、各グループの情報がグループ管理情報に登録された後は、このグループ管理情報に基づいて割当処理が行われる。なお、割当制御装置10に再度電源が投入されたときは、グループ管理情報を読み出し、定義されるグループ構成に基づき処理が行われる。
対象の論理ボリュームが指示されると、割当手段13による割当処理が開始される。割当手段13は、対象論理ボリュームに関する論理ボリューム情報を取得し、グループ管理情報を参照して、この対象論理ボリュームに対応する物理記憶領域を確保できるグループを検索する。例えば、対象論理ボリュームの容量を確保できる物理記憶領域を有するグループを選択する。また、他の条件が設定されていたときは、この条件を考慮してグループが選択される。適したグループが検出されなかったときは、グループを組み合わせ、同様の処理を繰り返す。こうして、対象論理ボリュームに対応して1または複数のグループが選択される。続いて、対象論理ボリュームを分割した論理スライスを、選択されたグループ内のスライスに割り当てる。グループ内のスライスへの割り当ては、ラウンドロビン方式などを用いて論理スライスが各ストレージ管理装置に分散配置されるようにする。例えば、ある論理ボリューム(論理ボリュームAとする)にグループ1が割り当てられたとすると、この論理ボリュームAの論理スライスは、ストレージ装置#0(30)と、ストレージ装置#1(31)とに分散配置される。同様に他の論理ボリューム(論理ボリュームBとする)にグループ2が割り当てられたとき、この論理ボリュームBの論理スライスは、ストレージ装置#2(32)と、ストレージ装置#3(33)とに分散配置される。
以上の処理手順が行われることにより、論理ボリュームの物理記憶領域への割当処理において、論理ボリュームを割り当てられるスライス範囲がグループ内に限定される。これにより、論理ボリュームについてのアクセス処理の影響がグループの異なる論理ボリュームのアクセス処理に影響を及ぼすことを抑止することができる。
さらに、運用が開始された後は、解析手段15によって実際のアクセス状況が解析される。解析手段15は、観測情報をグループごとにまとめ、グループごとのアクセス状況を解析する。そして、グループごとに所定の性能に関する観測値を算出し、アクセス特徴などの解析情報を生成する。再割当手段16は、所定の性能に関する観測値が、予めグループ定義に定義されるグループの上限性能を超えていると判定されたとき、論理ボリュームの再割当を行う。また、観測手段がエラー状態を検出したときの通知を受けて再割当を行うとしてもよい。再割当処理では、所定の性能に関する観測値が上限性能を超えたグループ、あるいはアクセス集中が検出されたグループが特定される。続いて、このグループに割り当てられている論理ボリュームを割り当てる新たなグループを選択する。そして、選択されたグループに、この論理ボリュームの一部またはすべての論理スライスを新たに選択されたグループのスライスに移動させる。このように、新たなグループのスライスに、少なくとも一部の論理スライスを割り当てることにより、処理を行うストレージ管理装置の負荷が分散され、グループに設定される上限性能を超えないようにすることができる。
以上のように、論理ボリュームを割り当てるスライスの範囲をグループ内に限定することにより、グループ外の論理ボリュームの状況に影響を受けずに性能を保持することが可能となる。また、運用が開始された後は、実際のアクセス状況が解析され、性能を保持するためには新たなスライスの割当が必要か否かについて判定される。必要と判定されれば、論理ボリュームについてスライスの再割当が行われ、論理ボリュームの性能を保持することができる。
以下、発明の実施の形態をストレージ装置がディスク装置で構成されるマルチノードディスクシステムの場合で説明する。
図2は、実施の形態のマルチノードディスクシステムの構成例を示す図である。
マルチノードディスクシステムは、ネットワーク600を介して、制御ノード100、複数のディスクノード201,202,203、パケットアナライザ400、アクセスノード500及び管理ノード700が接続されている。
制御ノード100は、仮想的な論理ボリュームを分割した論理スライスを、物理記憶領域を備えたディスク301,302,303に割り当てる割当制御を行う割当制御装置である。
ディスクノード201にはディスク301、ディスクノード202にはディスク302、ディスクノード203にはディスク303が、それぞれ接続されている。ディスクノード201,202,203は、ストレージ管理装置、ディスク301,302,303はストレージ装置として機能する。ディスク301には、物理記憶領域を構成する複数のハードディスク装置(HDD;Hard Disk Drive)が実装されている。ディスク302,303の構成も同様である。ディスク301,302,303の物理記憶領域は、スライス単位に分割され、それぞれディスクノード201,202,203によって管理されている。スライスには、論理スライスのデータと、スライスに関する管理情報(以下、メタデータとする)を記憶する領域と、がある。ディスクノード201,202,203は、例えば、IA(Intel Architecture)と呼ばれるアーキテクチャのコンピュータである。そして、接続されたディスク301,302,303に格納されるメタデータに基づき、スライスデータをアクセスノード500経由で端末装置801,802,803に提供する。
パケットアナライザ400は、ネットワーク600上を流れるパケットを取得し、観測情報を生成する観測手段である。また、予め決められた閾値を超えてアクセスが集中したときなど、予め検出条件を設定しておけば、設定された条件が成立する事象が検出されたとき、事象の発生を通知する。
アクセスノード500には、ネットワーク800を介して複数の端末装置801,802,803が接続されている。アクセスノード500は、ディスクノード201,202,203のそれぞれが管理しているデータの格納場所を認識しており、端末装置801,802,803からの要求に応答して、ディスクノード201,202,203へデータアクセスを行う。
管理ノード700は、マルチノードディスクシステム全体を管理する。また、管理者の指示に従って、論理ボリュームの割当指示を制御ノード100に通知する。
次に、各ノードのハードウェア構成を、制御ノード100を例に説明する。
図3は、制御ノードのハードウェア構成例を示す図である。
制御ノード100は、CPU(Central Processing Unit)101によって装置全体が制御されている。CPU101には、バス105を介してRAM(Random Access Memory)102、HDD103及び通信インタフェース104が接続されている。
RAM102には、CPU101に実行させるOSやアプリケーションプログラムの少なくとも一部が一時的に格納される。また、RAM102には、CPU101による処理に必要な各種データが格納される。HDD103には、OSやアプリケーションのプログラムが格納される。通信インタフェース104は、ネットワーク600に接続されている。通信インタフェース104は、ネットワーク600を介して、ディスクノード201,202,203、パケットアナライザ400、アクセスノード500及び管理ノード700など、マルチノードディスクシステムを構成する他のコンピュータとの間でデータの送受信を行う。
なお、図3には、制御ノード100のハードウェア構成を示したが、ディスクノード及びアクセスノードのハードウェア構成も同様である。
上記の構成のマルチノードディスクシステムにおける論理ボリュームの割当制御について、具体例を用いて説明する。
図4は、制御ノード、論理ボリューム及びディスクノード群の構成例を示した図である。図2と同じものには同じ番号を付し、説明は省略する。
制御ノード100は、割当制御部110と、ルール記憶部120とを有する。割当制御部110は、図1に示した各処理手段を有し、グループ分けルールなどに基づき、論理ボリューム520,521,522,523のDP群200への割当を制御する。ルール記憶部120は、予め定義されたDPグループ分けのルールや、割当または再割当のルールなどを格納する。また、制御ノード100は、図示しない管理部によって、DPに故障を検出したときは、故障スライスに格納されるデータを復元するなどの、スライスの管理処理を行う。
DP群200は、それぞれが、ディスクノード201,202,203,・・・と、ディスク301,302,303,・・・との組を表す複数のDPで構成される。この例では、DP00からDP31の32個のDPでDP群200が構成される。
アクセスノードAP0(510),AP1(511),AP2(512),AP3(513)は、それぞれ独立して動作する論理ボリュームを管理する。ここでは、AP0(510)は、論理ボリュームLVOL0(520)、AP1(511)は、論理ボリュームLVOL1(521)、AP2(512)は、論理ボリュームLVOL2(522)、AP3(513)は、論理ボリュームLVOL3(523)、を管理する。それぞれの論理ボリュームは6分割され、それぞれ0から5のスライス番号が振られている。以下の説明は、論理ボリュームの識別子(L0からL3)と、スライス番号とを用いて各論理スライスを表す。論理ボリュームLVOL0(520)の論理スライスは、L0−0,L0−1,L0−2,L0−3,L0−4,L0−5と表される。論理ボリュームLVOL1(521)の論理スライスは、L1−0,L1−1,L1−2,L1−3,L1−4,L1−5と表される。論理ボリュームLVOL2(522)の論理スライスは、L2−0,L2−1,L2−2,L2−3,L2−4,L2−5と表される。そして、論理ボリュームLVOL3(523)の論理スライスは、L3−0,L3−1,L3−2,L3−3,L3−4,L3−5と表される。なお、ここでは、1つのアクセスノードに1つの論理ボリュームが割り当てられているが、アクセスノードが管理する論理ボリュームの数は任意である。
図4は、割当処理が開始される前の状態であり、論理ボリュームLVOL0(520),LVOL1(521),LVOL2(522),LVOL3(523)の論理スライスはまだDP群200のスライスに割り当てられていない。
図5は、DP管理情報の一例を示した図である。
DP管理情報1000は、DP群200を構成するDPに関する管理情報であり、立ち上がり時に予め、各DPから取得しておく。
DP管理情報1000は、DP1000a、DP IPアドレス1000b及びピークiops1000cの各情報項目を有する。
DP名1000aには、DPを識別可能にする情報で、DPに一意に振られた番号が登録される。
DP IPアドレス1000bには、ディスクノードのIPアドレスが登録される。ディスクノードへの通信は、このIPアドレスを用いて行う。
ピークiops1000cには、DPが処理可能なアクセス処理件数に応じた最大のiops値が登録される。ピークiopsは、予め計測しておくか、管理者が登録しておく。
DP管理情報1000の最上行には、「DP00」は、IPアドレスが「10.25.180.11」、ピークiopsが「125」であることが登録されている。
なお、DP管理情報1000は、一例であり、必要に応じて各種情報が登録される。DPの記憶容量や機種などが同じであれば、特に記載する必要はないが、異なるときは、各DPの容量や、機種などの情報が登録される。
次に、DPグループ分け処理について説明する。
DP群200に属するDPグループ分けは、図5に示したDP管理情報1000と、予め定義されたグループ分けルールに基づいて行われる。
図6は、DP群のグループ分けを行った後のグループ構成の一例を示した図である。
図6は、図4に示したマルチノードディスクシステムにおいて、DP群200のグループ分けが行われた後の状態を示している。なお、図6では、簡単のため、制御ノード100、アクセスノード510,511,512,523及びパケットアナライザ400を省略している。
ここでは、グループ分けルールとして、「DPを4DP単位で分割する」というルールが適用されている。
これにより、DP群200に属するDPは、DP00から順に4DPずつグルーピングされる。図6に示したように、DP00からDP03がDPグループ0(210)、DP04からDP07がDPグループ1(220)、DP08からDP11がDPグループ2(230)、DP12からDP15がDPグループ3(240)、DP16からDP19がDPグループ4(250)、DP20からDP23がDPグループ5(260)、DP24からDP27がDPグループ6(270)、DP28からDP31がDPグループ7(280)、にグルーピングされる。こうして、DP群200は、4DP単位の8グループにグループ分けされる。
また、各DPグループの上限iopsは、DP管理情報1000に基づき、DPグループに属するDPのピークiopsを読み出し、そのiops値を合計して求める。例えば、DPグループ0(210)に属するDP00からDP03のピークiopsは、図5からすべて125という値が得られる。したがって、DPグループ0(210)の上限iopsは、この値を合計した500になる。他のDPグループも同様にして上限iopsを算出する。グループ分けとともに、DPグループを管理するためのグループ管理情報が生成される。
図7は、グループ管理情報の一例を示した図である。
グループ管理情報1100は、図6に示したDPグループのグループ管理情報であり、グループ名、DP IPアドレス1100b、ピークiops1100c及び上限iops1100dの各情報項目を有する。
グループ名1100aには、生成されたDPグループを特定するため、一意に付された識別番号が登録されている。0〜7は、それぞれDPグループ0〜DPグループ7を表している。
DP IPアドレス1100bは、グループ名1100aにグループ分けされたDPの識別情報であり、DPのIPアドレスが登録されている。
ピークiopsは、対応するDPのピークiops値が登録されている。DP IPアドレス1100b及びピークiops1100cは、DP管理情報1000の該当箇所が抽出されて登録される。
上限iops1100dは、対応するDPグループの上限性能が登録される。前述のように、上限iops値は、DPグループに属するDPのピークiopsを合計して算出される。
こうしてグループ管理情報1100には、各DPグループの構成と、上限性能とが設定される。
なお、上記の説明では、グループ分けルールとして、4DP単位でDPグループを構成するとしたが、グループ分けのルールは管理者が任意に設定することができる。
例えば、一定の容量でDPグループを構成するというグループ分けルールを設定してもよい。この場合、例えば、DP管理情報に基づいてDP00から順に記憶容量を加算していき、一定の容量に到達した時点でグループを区切り、1つのDPグループを形成する。そして、次のDPから同様の処理を行って、DPグループを形成する。また、DPの機種が同じものを集め、DPグループを形成するルールとすることもできる。さらに、DPグループの上限iopsを予め決めておき、これを満たすDPグループを形成するというルールとしてもよい。
こうしてDPグループが形成された後、管理ノード700を介して論理ボリュームの割当が指示されると、割当制御部110は割当処理を開始する。割当ルールを予め定義しておき、割当ルールに基づいて割当処理を行う。
まず、「論理ボリュームごとに別DPグループのスライスに割り当てる」という割当ルール(割当ルール1とする)を用いた場合について説明する。
図8は、割当ルール1を用いて割当処理を行った場合の割当状態を示した図である。
割当制御部110は、割当ルール1に基づき、論理ボリュームLVOL0(520),LVOL1(521),LVOL2(522),LVOL3(523)に対し、それぞれ別のDPグループを選択し、割り当てる。図8の例では、論理ボリュームLVOL0(520)にはDPグループ0(210)、論理ボリュームLVOL1(521)にはDPグループ4(250)、論理ボリュームLVOL2(522)にはDPグループ5(260)、そして論理ボリュームLVOL3(523)にはDPグループ6(270)が割り当てられる。
続いて、論理ボリュームの論理スライスを、この論理ボリュームに割り当てられたDPグループ内のスライスに割り当てるスライス割当処理が行われる。DPグループ0(210)が割り当てられた論理ボリュームLVOL0(520)であれば、論理スライスL0−0,L0−1,L0−2,L0−3,L0−4,L0−5を、DPグループ0(210)を構成するDP00,DP01,DP02,DP03に分散配置する。配置にラウンドロビン方式を用いるとすれば、論理ボリューム520aの論理スライスL0−0はDP00、L0−1はDP01、L0−2はDP02、L0−3はDP03、L0−4はDP00、L0−5はDP01というように配置される。このように、論理ボリュームLVOL0(520)は、DPグループ0(210)内のDPに均等分散されるスライス群520aに割り当てられる。
同様に、論理ボリュームLVOL1(521)は、DPグループ4(250)内に均等分散されるスライス群521aに割り当てられる。論理ボリュームLVOL2(522)は、DPグループ5(260)内に均等分散されるスライス群522aに割り当てられる。そして、論理ボリュームLVOL3(523)は、DPグループ6(270)内に均等分散されるスライス群523aに割り当てられる。
こうした割当状態は、割当情報としてグループ管理情報に登録される。
図9は、割当ルール1を用いて割当処理を行った場合のグループ管理情報(割当情報)を示した図である。
グループ管理情報(割当情報)1200は、図7に示したグループ管理情報1100に付加される割当情報を示している。このグループ管理情報(割当情報)1200は、グループ名1200a、論理ボリュームID1200b、スライス番号1200c及び予定iops1200dの情報項目を有している。
グループ名1200aには、グループ管理情報1100のグループ名1100aと同様にDPグループの識別番号が登録される。
論理ボリュームID1200bには、このDPグループに割り当てられた論理ボリュームのID(識別番号)が登録される。0〜3は、それぞれLVOL0〜LVOL3を表している。
スライス番号1200cには、このDPグループに割り当てられた論理スライスの識別番号が登録される。0〜5は、それぞれ論理スライス0〜論理スライス5を表す。なお、「all」は、論理ボリュームのすべての論理スライスが割り当てられていることを表す。
予定iops1200dには、論理ボリューム情報から取得した論理ボリュームの予定iopsが登録される。例えば、最上行には、「DPグループ0」に、論理ボリューム「LVOL0」の「すべて(all)スライス」が割り当てられ、論理ボリュームの予定iopsは「300」であることが登録されている。DPグループ4,5,6についても同様である。
以上のように、「論理ボリュームごとに別DPグループのスライスに割り当てる」という割当ルール1に基づき、論理ボリュームがそれぞれ別のDPグループに割り当てられる。これにより、いずれかの論理ボリュームのアクセス負荷が大きくなり、レスポンス遅延が発生しても、他の論理ボリュームに影響を与えることがなくなり、性能を維持することが可能となる。
さらに、論理ボリュームのスライス割当は、選択されたグループ範囲内に限定されるため、論理ボリュームに割り当てられなかったDPグループを停止させ、省電力を図ることができるという利点もある。
しかし、割当ルール1では、DPグループの上限性能に対し、論理ボリュームに予測されるアクセス負荷が小さくなる場合があり、効率性の観点からは課題が残る。
割当ルール2は、これを解決し、効率的な割当制御を目的としたものである。
「論理ボリュームに必要なiopsを確保してDPグループのスライスに割り当てる」という割当ルール(割当ルール2とする)を用いた場合について説明する。
図10は、割当ルール2を用いて割当処理を行った場合の割当状態を示した図である。
割当制御部110は、割当ルール2に基づき、論理ボリュームに発生するアクセス負荷の予測値として、予定iopsを取得する。予定iopsは、割当処理を行う対象論理ボリュームを指示する管理者などが、論理ボリューム情報として予め定義しておく。割当制御部110は、取得した各論理ボリュームの予定iopsと、グループ管理情報1100に登録される各DPグループの上限iopsとを比較する。そして、DPグループの上限iopsが論理ボリュームの予定iopsよりも高ければ、そのDPグループを選択し、論理ボリュームに割り当てる。
図10の例では、論理ボリュームLVOL0(520)の予定iopsは300、論理ボリュームLVOL1(521)の予定iopsは200、論理ボリュームLVOL2(522)の予定iopsは200、論理ボリュームLVOL3(523)の予定iopsは300であるとしている。
論理ボリュームLVOL0(520)は、予定iopsが300であるので、DPグループ0(210)の上限iops500を超えない。そこで、論理ボリュームLVOL0(520)には、DPグループ0(210)が割り当てられる。DPグループ0(210)は、論理ボリュームLVOL0(520b)を割り当てても、上限iopsまでは200の余裕がある。
次の論理ボリュームLVOL1(521)は、予定iopsが200である。論理ボリュームLVOL1(521)をDPグループ0(210)に割り当てると、予定iopsは論理ボリュームLVOL1(521b)と合わせ、予定iopsが500になってしまう。そこで、他のDPグループを選択し、割り当てる。図10の例では、DPグループ4(250)が割り当てられている。DPグループ4(250)は、論理ボリュームLVOL1(251)が割り当てられても、上限iopsまで300の余裕がある。
次の論理ボリュームLVOL2(522)の予定iopsは200である。論理ボリュームLVOL2(522)をグループ4(250)に割り当てると、予定iopsは論理ボリュームLVOL1(521)と合わせ、予定iopsが400になる。これは、DPグループ4(250)の上限iops500を下回っているので、割り当てることができる。
同様にして、次の論理ボリュームLVOL3(523)には、新たなDPグループ6(270)が選択される。
こうして、図10の例では、論理ボリュームLVOL0(520)にはDPグループ0(210)、論理ボリュームLVOL1(521)にはDPグループ4(250)、論理ボリュームLVOL2(522)にはDPグループ5(260)、そして論理ボリュームLVOL3(523)にはDPグループ6(270)が選択される。
選択されたDPグループ内のスライスへの割当は、図8の割当ルール1と同様とする。これにより、論理ボリュームLVOL0(520)は、DPグループ0(210)内に均等分散されスライス群520bに割り当てられる。論理ボリュームLVOL1(521)はDPグループ4(250)内のスライス群521b、論理ボリュームLVOL2(522)は、DPグループ4(250)内のスライス群522bに割り当てられる。そして、論理ボリュームLVOL3(523)は、DPグループ6(270)内に均等分散されるスライス群523bに割り当てられる。
図11は、割当ルール2を用いて割当処理を行った場合のグループ管理情報(割当情報)を示した図である。
グループ管理情報(割当情報)1201は、図9に示したグループ管理情報1200と同じ構成であり、割当ルール2が適用されて割当処理が行われた後の状態を表している。
DPグループ4に対応する行は、「DPグループ4」には、論理ボリューム「LVOL1」と、「LVOL2」とが割り当てられていることを表している。
以上のように、「論理ボリュームに必要なiopsを確保してDPグループのスライスに割り当てる」という割当ルール2に基づき、論理ボリュームのアクセス負荷に対応する性能が確保して割当が行われる。これにより、効率的に割当を行うことが可能となるとともに、性能を維持することができる。また、いずれかの論理ボリュームのアクセス負荷が大きくなり、レスポンス遅延が発生しても、他のDPグループに割り当てられた論理ボリュームに影響を与えることがない。このため、他のDPグループに割り当てられた論理ボリュームは、その性能を維持することが可能となる。
以上、割当ルール1、または割当ルール2を用いて割当処理を行う場合について説明した。この割当ルール1,2は、一例であり、管理者は任意の割当ルールを設定することができる。また、論理ボリュームごとに異なる割当ルールを設定するとしてもよい。
ところで、実際に運用が開始されると、運用時間の経過とともに、予測範囲外の事態が発生することがある。例えば、ある領域にアクセスが集中し、レスポンスが低下する事態が生じたような場合である。以下の説明では、このようにアクセスが集中した状態をホットスポットと呼ぶ。パケットアナライザ400は、ネットワーク600を観測し、ホットスポットの発生を監視する。そして、ホットスポットが検出されたときは、制御ノード100に対し、ホットスポットが発生した論理ボリューム、またはスライス番号、ホットスポットの大きさ(iops)などの情報を通知する。
ホットスポット発生の通知を受けた割当制御部110は、通知に基づいてホットスポットが発生したDPグループを検索し、そのDPグループとスライスを特定する。
図12は、ホットスポット発生時の再割当処理を示した図である。
図12は、図10に示した割当状態で運用中にホットスポットが発生したことを表している。ここでは、パケットアナライザ400から、ホットスポットが、論理ボリュームLVOL3(523)の論理スライスL3−3で発生し、その大きさ(iops)が400と検出されたことが通知されたとする。
割当制御部110は、通知を受け、通知されたホットスポットがどのDPグループに属しているかを検索する。この例では、DPグループ6(270)が検出される。そこで、グループ管理情報1100及びグループ管理情報(割当情報)1200から、グループ6(270)の上限iopsと、予定iopsとを読み出す。この例では、DPグループ6の上限iops(iops=500)と、予定iops(iops=300)とが得られる。ここで、ホットスポットの負荷により、DPグループ6(270)のアクセス負荷がDPグループの上限iops(iops=500)を超えているかどうかを判定する。論理ボリュームLVOL3(523)の予定iopsは300であるので、L3−3に発生したホットスポットの負荷(iops=400)を加えると、DPグループの上限iopsを超えると判定される。なお、このとき予定iopsに含まれるL3−3の負荷を除いて判定を行ってもよい。
こうして、ホットスポットの発生により、DPグループ6(270)の負荷が上限iopsを超えたと判定されたので、同じDPグループに属し、ホットスポットの発生していないスライスを別のDPグループに移動させる。この例では、ホットスポットを含むスライス群(L3−3,L3−4,L3−5)523cと、ホットスポットの発生していないスライス群(L3−0,L3−1,L3−2)523dとに分ける。そして、論理ボリュームLVOL3(523)に新たにDPグループ7(280)を割り当て、スライス群523dをDPグループ7(280)に移動させる。
図13は、ホットスポットによる再割当処理後のグループ管理情報(割当情報)を示した図である。
グループ管理情報(割当情報)1202は、図11に示したグループ管理情報1201の状態から、再割当処理が行われた後の状態を表している。
DPグループ6には、論理ボリュームLVOL3(523)の論理スライスL3−3,L3−4,L3−5が割り当てられていることが登録されている。なお、予定iopsは、元の予定iops(iops=300)の半分の150としているが、必要に応じて管理者が設定する。DPグループ7(280)には、再割当処理により移動された論理ボリュームLVOL3(523)の論理スライスL3−0,L3−1,L3−2が割り当てられていることが登録されている。他はDPグループ6(270)と同様である。
なお、上記では、パケットアナライザ400からのホットスポット発生通知を受け、再割当処理を行う場合について説明したが、パケットアナライザ400から観測情報を定期的に取得し、再割当の要否を自身が判定するとしてもよい。
そこで、割当制御部110は、システムの状態を観測し、性能が維持されているかどうかを監視する。そして、性能が維持されていないときは、スライスの再割当を行う。
運用が開始されると、制御ノード100には、パケットアナライザ400が観測した観測情報が定期的に送られてくる。パケットアナライザ400は、ネットワーク600上を流れるパケットを採取し、各種解析を行って観測情報を生成する。ここでは、一例として、スライスへのアクセスを伴う入出力要求のパケット(以下、IOパケットとする)を解析し、所定の期間のiops、ioサイズの分布などが観測情報として通知されるとする。割当制御部110は、取得した観測情報を解析し、アクセス負荷など観測された性能値を算出し、論理ボリュームごとのアクセス特徴を解析する。
図14は、観測情報に基づいて解析されたアクセス特徴情報の一例を示した図である。
ここでは、論理ボリュームのアクセス特徴を、「ピークiops」、「アクセス負荷が高い時間帯」、「アクセスパターン」の3種類によって捉えている。また、このアクセス特徴は、図10に示した割当状態で採取された観測情報に基づくものである。
アクセス特徴情報1300は、DPグループ1300a、論理ボリュームID1300b、ピークiops1300c、アクセス負荷が高い時間帯1300d及びアクセスパターン1300eの情報項目を有する。
DPグループ1300aには、グループ分けされたグループのIDと、グループごとに算出された上限のピークiopsと、が登録される。上限のピークiopsは、グループ管理情報1100の上限iops1100dに相当する。
論理ボリュームID1300bには、このDPグループに割り当てられた論理ボリュームのID(識別番号)が登録される。
ピークiops1300cには、論理ボリュームごとに観測されたピークのiops値が設定される。例えば、過去1週間あるいは過去1か月という期間に観測されたiopsのピーク値を残しておく。
アクセス負荷が高い時間帯1300dは、観測情報として測定されたiops値を時間帯別に分類し、アクセス負荷が高い時間帯を算出した結果が登録される。なお、ここでは、アクセス負荷が高いとは、「その時間帯において、各論理ボリュームについて検出されたiopsがピーク値の半分以上の値を継続している状態」と定義する。また、ここで示す時間帯は、Aが0〜5時台(0:00〜5:59、以下同様)、Bが6〜11時台、Cが12〜17時台、Dが18〜23時台を表している。
アクセスパターン1300eには、観測情報として測定されたioサイズの分布に基づき判定される2種類のアクセス特徴のうちのいずれかが登録される。Fileserver型は、ファイルサーバのアクセスによく使われるアクセスパターンで、比較的小さいサイズのリード/ライト要求が行われる。Backup型は、バックアップ時のデータセーブなどのアクセスによく使われるアクセスパターンで、比較的大きいサイズでリード/ライト要求が行われる。リード/ライト要求のパケットに含まれる要求サイズを解析し、所定の期間のioサイズの分布を得る。そして、得られたいioサイズの分布から、どちらのアクセスパターンであるかを判定する。これらの処理はパケットアナライザ400で行い、割当制御部110は結果だけ得るとしてもよい。
例えば、最上行は、DPグループ0には、論理ボリューム「LVOL0」が割り当てられ、そのピークiopsとして「300」が観測されたことを示している。また、この論理ボリュームについてアクセス負荷が高い時間帯は、B(6〜11時台)とC(12〜17時台)であり、昼間のアクセスが多いことを示している。また、アクセスパターンは、Fileserver型である。
このような観測情報を解析して得られた論理ボリュームのアクセス特徴に基づいて、再割当処理を行うことができる。それぞれの特徴項目について順に説明する。
ピークiops1300cからは、論理ボリュームに発生した最大のアクセス負荷がわかる。このピークiopsの値と、論理ボリュームが割り当てられたDPグループの上限iopsとを比較すれば、このDPグループが論理ボリュームのアクセス負荷が最大となったときに、レスポンス悪化などが起きないかどうかを予測することができる。また、ピークiopsの値が、対応するDPグループの上限iopsを超えたときは、ホットスポットが発生していると見なせる。これにより、パケットアナライザ400からの通知を受けなくてもホットスポットを検出することができる。
論理ボリュームのピークiopsが、対応するDPグループの上限iopsを超えたときは、ホットスポットが検出されたときと同様に、再割当処理を行う。
図15は、ピークiopsが上限iopsを超えたときの再割当処理を示した図である。
ここでは、図12に示した割当状態で運用中に、論理ボリュームLVOL0(520)のピークiopsがiops=700と観測されたとする。
制御ノード100では、観測に基づく論理ボリュームLVOL0(520)のピークiops(iops=700)と、対応するDPグループ0(210)の上限iops(iops=500)とを比較する。ピークiopsが、上限iopsを超えているので、論理ボリュームLVOL0(520)に対し、新たなDPグループを論理ボリュームLVOL0(520)に割り当て、論理ボリュームLVOL0(520)の一部の論理スライスを新たに割り当てたDPグループに移動させる。この例では、論理ボリュームLVOL0(520)を、スライス群(L0−1,L0−2,L0−3)520eと、スライス群(L0−3,L0−4,L0−5)520fとに分ける。そして、スライス群520fに新たなDPグループ1(220)に移動させる。
このように、観測されたピークiopsが割り当てられたDPグループの上限iopsを超えたときは、この論理ボリュームの少なくとも一部を他のDPグループに移す。これにより、論理ボリュームに先に割り当てられたDPグループと、新たに割り当てられたDPグループの双方で、ピークiopsを上限iopsより下げることができる。このように、何らかの事情によりアクセス負荷が増大しても、アクセス負荷を軽減するように再割当が行われ、所望の性能を保つことができる。
図16は、ピークiopsが上限iopsを超えたときの再割当処理後のグループ管理情報を示した図である。
グループ管理情報(割当情報)1203は、図13に示したグループ管理情報1202の状態から、図15に示した再割当処理が行われた後の状態を表している。
論理ボリュームLVOL0は、DPグループ0と、DPグループ1とに分かれて割り当てられている。この例では、DPグループ0に、論理ボリュームLVOL0の論理スライスL0−1,L0−2,L0−3が割り当てられていることが登録されている。また、DPグループ1に、論理ボリュームLVOL0の論理スライスL0−3,L0−4,L0−5が割り当てられていることが登録されている。なお、予定iopsは、観測されたピークiops(iops=700)の半分の350としているが、必要に応じて管理者が設定する。
なお、ここでは、ピークiopsが上限iopsを超えたDPグループには、論理ボリュームが1つしか割り当てられていなかったので、論理ボリュームを分割して割り当てた。しかし、複数の論理ボリュームが割り当てられているときは、いずれかの論理ボリュームを別のDPグループに移動させる処理を先に行う。
図14に戻って説明する。
アクセス負荷が高い時間帯1300dからは、その論理ボリュームについてアクセス負荷が高くなる時間帯がわかる。同一DPグループに割り当てるときは、アクセス負荷が高くなる時間帯が異なる論理ボリュームを組み合わせると、アクセス負荷のピークの時間が重なり、レスポンスが悪化する事態を避けることができる。
例えば、DPグループ0には、論理ボリュームLVOL0(ピークiops=300)が割り当てられている。DPグループの上限iopsは、iops=500であるので、論理ボリュームLVOL1(ピークiops=100)、またはLVOL2(ピークiops=100)をDPグループ0に割り当てることができる。この場合、アクセス負荷が高い時間帯の異なる論理ボリュームLVOL1を選択すると、アクセス負荷のピーク時間がずれ、アクセス負荷が高くなる事態を防ぐことができる。
アクセスパターン1300eからは、その論理ボリュームへのアクセスは、どのようなパターンが多いのかを知ることができる。一般に、同じDPであれば、リード/ライト要求のioサイズが同程度である方が処理の効率が高い。したがって、同一DPグループに割り当てるときは、アクセスパターンが同じ論理ボリュームを組み合わせれば、性能を上げることができる。
例えば、DPグループ0には、論理ボリュームLVOL0(アクセスパターン=Fileserver)が割り当てられている。DPグループの上限iopsは、iops=500であるので、論理ボリュームLVOL1(ピークiops=100)、またはLVOL2(ピークiops=100)をDPグループ0に割り当てることができる。この場合、アクセスパターンがBackup型である論理ボリュームLVOL1よりも、アクセスパターンがFileserver型である論理ボリュームLVOL2を選択する。これにより、アクセス処理の効率がよくなる。
以上のように、割当処理が行われた後も、システムのアクセス状態を観測し、観測結果に基づいて再割当処理を行うことにより、継続的に性能を維持することができる。また、解析されたアクセス特徴に基づいて再割当を行うことにより、より高い性能を実現できる。
次に、割当制御装置100で実行される割当制御方法について、フローチャートを用いて説明する。
最初に、電源が投入されたときの処理について説明する。初期化処理では、DPがグループ化されていなければ、DPのグループ分け処理を行う。
図17は、電源投入時の処理の手順を示したフローチャートである。
電源が投入され、処理が開始される。この時点までに、予めDPグループを生成するグループ分けルールが定義され、ルール記憶部120に格納されているとする。
[ステップS01] DP群200の各DPからDPの情報(ピークiops、RAID種類など)を取得する。立ち上がり時に、DPから自動的に通知される情報を取得するとしてもよい。取得した情報は、DP管理情報1000に登録しておく。
[ステップS02] グループ管理情報1200を読み出し、DP群200のグループ分けが行われているかどうかを判定する。グループ分けが未完であれば、処理をステップS03に進める。グループ分けが完了していれば、処理をステップS05に進める。
[ステップS03] グループ分けが未完であれば、グループ分け処理を開始する。ルール記憶部120に格納されるグループ分けのルールを読み出す。グループ分けのルールには、グループの台数、上限iops、RAID種類など、グループ分けの条件が定義されている。
[ステップS04] ステップS03で読み出したグループ分けのルールに従って、DP群200をグループ分けする。4DP単位でグループ分けするというルールであれば、DPを4台ずつまとめ、グループを形成する。600iops単位でグループ分けするというルールであれば、グループに属するDPのiopsの合計が600を超えるようにグループ分けする。また、RAID単位であれば、RAID種類が同じものを同じグループに分ける。これらのルールは、組み合わせて設定することもできる。生成されたグループに関する情報は、グループ管理情報1100に登録する。グループ管理情報1100には、グループに属するDPの識別情報とともに、グループごとに算出した上限iopsを登録しておく。こうしてグループ分けが終了したら、処理を終了する。
[ステップS05] グループ分けが完了していれば、グループ管理情報1100からグループ構成を読み出す。
[ステップS06] DPグループに登録されるDPの正常を確認したら、そのDPグループを有効化し、論理ボリュームの割り当てを可能にする。DPが正常であるかどうかは、DPからの応答を受け取ることができたかどうかで判定する。DPグループを有効化し、処理を終了する。
以上の処理手順により、グループ分けが未完であれば、グループ分けのルールに基づいてDPがグループ分けされて利用可能になる。一方、グループ分けが終了していればグループ管理情報に基づいて登録されているDPグループが有効化され、利用可能になる。
以降の処理では、生成されたグループ単位で論理ボリュームのスライス割当処理が行われる。
次に、論理ボリュームへのスライス割当処理について説明する。論理ボリュームのスライス割当は、グループ単位に割当が行われる。
図18は、論理ボリュームへのスライス割当処理の手順を示したフローチャートである。管理ノード700を介してシステム管理者から論理ボリューム(図では、LVOLとする)のスライス割当指示を受信し、処理が開始される。
[ステップS11] 管理ノード700から論理ボリューム割当コマンドを受信する。論理ボリューム割当コマンドには、対象の論理ボリュームの識別情報が含まれる。
[ステップS12] ステップS11で取得したコマンドに含まれる対象の論理ボリュームに関する論理ボリューム情報を取得する。論理ボリューム情報は、例えば、この論理ボリュームを管理するアクセスノードから取得する。この論理ボリューム情報には、少なくとも、論理ボリュームの容量と、ピークiopsとが含まれる。ピークiopsは、過去の実績などに基づいて、システム管理者によって定義されている。
[ステップS13] ルール記憶部120に割当ルールが定義されている場合は、割当ルールに基づいて、割当可能なグループを検索する。特にルールがないときは、ステップS12で取得した論理ボリュームの容量及びピークiopsと、各グループの物理記憶領域の容量及び上限iopsと、を照合し、割当可能なグループを検索する。グループの物理記憶容量が論理ボリュームの容量よりも大きく、かつ、グループの上限性能が論理ボリュームのピークiopsより高いグループを検索する。
[ステップS14] ステップS13における検索条件に該当するグループがあったかどうかを判定する。あったときは、処理をステップS15に進める。なかったときは、処理をステップS17に進める。
[ステップS15] 条件を満たすグループまたはグループ群が検出されたときは、論理ボリュームの論理スライスに、検出されたグループまたはグループ群に属するDPのスライスを割り当てる。このときのスライス割当は、論理スライスがグループまたはグループ群に属するDPに分散配置されるように、例えば、ラウンドロビン方式で行われる。
[ステップS16] 割当成功の通知を、割当要求を行った管理ノード700へ返信し、処理を終了する。
[ステップS17] 条件を満たすグループが検出されなかったときは、DPグループを複数組み合わせて検索を行う。組み合わされたグループ群の容量の合計、上限iopsの合計を、このグループ群の容量及び上限iopsとして、ステップS13と同様の検索処理を行う。
[ステップS18] ステップS17における検索条件に該当するグループ群があったかどうかを判定する。あったときは、処理をステップS15に進める。なかったときは、処理をステップS19に進める。
[ステップS19] 割当失敗の通知を、割当要求を行った管理ノード700へ返信し、処理を終了する。
以上の処理手順が実行されることにより、論理ボリュームにDPグループまたはDPグループ群が割り当てられ、割り当てられたDPグループまたはDPグループ群の全スライスを最大領域として、スライス割当が行われる。これにより、論理ボリュームにホットスポットなどが発生した場合であっても、別のグループに割り当てられた論理ボリュームには影響が及ばない。
続いて、観測情報に基づいて再割当が必要となった場合の再割当処理について説明する。
図19は、再割当処理の手順を示したフローチャートである。
パケットアナライザ400から観測情報を取得して処理が開始される。
[ステップS21] パケットアナライザ400から観測情報を取得する。パケットアナライザ400からは、定期的に送信される観測データに加え、パケットアナライザ400が検出したホットスポットの発生通知も観測情報として送られてくるとする。
[ステップS22] ステップS21で取得した観測情報が、ホットスポット発生の通知であるかどうかを判定する。ホットスポット発生の通知には、ホットスポットが発生した論理ボリューム、スライス番号、ホットスポットの大きさ(iops)が含まれる。ホットスポット発生の通知であれば、処理をステップS23に進める。ホットスポット発生の通知でなければ、処理をステップS25に進める。
[ステップS23] 取得した観測情報がホットスポット発生の通知であれば、通知に基づいて対応するDPグループを特定する。例えば、通知を受けた論理ボリュームに対応するDPグループを、グループ管理情報(割当情報)1200を検索して抽出する。
[ステップS24] ホットスポット発生の通知に含まれるホットスポットの大きさ(iops)と、ステップS23で特定されたグループの上限iopsとを比較し、ホットスポットの負荷が大きければ、再割当を行う。再割当は、ステップS23で特定されたグループのホットスポット以外のスライスに割り当てられた論理スライスを、別DPグループのスライスへ移動させる。このとき、少なくとも移動するスライス分のアクセス負荷が減ったとき、このグループのピークiops(ホットスポット発生時のiopsから移動スライス分を除いた値)が、上限iopsを超えなくなる分のスライスを移動させる。移動完了で、処理を終了する。
[ステップS25] 取得した観測情報がホットスポット発生の通知でないときは、観測情報から、グループごとのピークiopsを算出する。
[ステップS26] ステップS25で算出されたピークiopsと、DPグループの上限iopsとを比較する。ピークiopsがDPグループの上限iopsより高いときは、処理をステップS27に進める。ピークiopsが上限iopsより高くないときは、処理をステップS28に進める。
[ステップS27] ピークiopsがDPグループの上限iopsより高いときは、同じDPグループのスライスに割り当てられた論理スライスを、別DPグループのスライスへ移動させる。このとき、少なくとも移動するスライス分のアクセス負荷が減ったとき、このグループのピークiopsが、上限iopsを超えなくなる分のスライスを移動させる。また、一部のスライスでなく、論理ボリューム全体を移動させるとしてもよい。特に、同じDPグループに複数の論理ボリュームが割り当てられているときは、どちらか一方の論理ボリュームを移動させる。
[ステップS28] 全DPグループの処理が終了したかどうかを判定する。終了していないときは、ステップS26に戻って、未処理のDPグループの処理を行う。全DPグループの処理が終了したときは、処理を終了させる。
以上の処理手順が実行されることにより、DPグループの上限性能を超えるアクセス負荷がかかったとき、このグループに割り当てられたスライスを他のDPグループに移動させる。こうして、割り当てられた論理ボリュームのアクセス負荷が、DPグループの上限性能を超えないように調整する。
なお、上記の処理機能は、コンピュータによって実現することができる。その場合、割当制御装置が有すべき機能の処理内容を記述したプログラムが提供される。そのプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。
プログラムを流通させる場合には、例えば、そのプログラムが記録されたDVD(Digital Versatile Disc)、CD−ROM(Compact Disc)などの可搬型記録媒体が販売される。また、プログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することもできる。
プログラムを実行するコンピュータは、例えば、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、自己の記憶装置に格納する。そして、コンピュータは、自己の記憶装置からプログラムを読み取り、プログラムに従った処理を実行する。なお、コンピュータは、可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することもできる。また、コンピュータは、サーバコンピュータからプログラムが転送されるごとに、逐次、受け取ったプログラムに従った処理を実行することもできる。
以上の実施の形態に関し、さらに以下の付記を開示する。
(付記1) 論理ボリュームをストレージ管理装置群が管理する物理記憶領域に分散配置する割当処理のための割当制御プログラムにおいて、
コンピュータを、
各ストレージ管理装置が管理する物理記憶領域に関する情報と、前記ストレージ管理装置及び該ストレージ管理装置に対応するストレージ装置の所定の性能情報とを含む前記ストレージ管理装置に関するストレージ管理情報と、グループ分けのルールを定義したグループ定義と、に基づいて前記ストレージ管理装置群をグループ分けし、グループごとに該グループに属するストレージ管理装置の前記ストレージ管理情報に基づいて前記所定の性能に関する該グループの上限性能を含む該グループに関するグループ管理情報を生成し、記憶手段に格納するグループ分け手段、
前記物理記憶領域の割当対象である対象論理ボリュームについて、前記対象論理ボリュームの容量と、前記対象論理ボリュームに予測される前記所定の性能に関する予測性能値とを含む論理ボリューム情報を取得すると、前記論理ボリューム情報及び前記グループ管理情報に基づいて前記対象論理ボリュームの割当が可能な前記物理記憶領域が確保できるとともに前記グループの上限性能が前記対象論理ボリュームの予測性能値よりも高い前記グループを選択し、該グループ内の前記物理記憶領域に前記対象論理ボリュームの分割領域を割り当てる割当手段、
として機能させることを特徴とする割当制御プログラム。
(付記2) 前記割当手段として、前記対象論理ボリュームの分割領域を、前記対象論理ボリュームに選択された前記グループに属する前記ストレージ管理装置に対し均等に割り当てさせる、ことを特徴とする付記1記載の割当制御プログラム。
(付記3) 前記論理ボリュームの予測性能値は、予め前記論理ボリュームを実際に動作させて観測された前記論理ボリュームの性能に基づいて算出される、ことを特徴とする付記1記載の割当制御プログラム。
(付記4) 前記グループ分け手段は、前記グループに属する前記ストレージ管理装置のアクセス処理能力に関する性能情報に基づいて、前記グループのアクセス上限性能を算出し、
前記割当手段は、前記対象論理ボリュームに必要なアクセス処理能力に関する予測性能値を取得し、前記対象論理ボリュームの予測性能値と、それぞれの前記グループについて算出された前記アクセス上限性能とを比較し、前記対象論理ボリュームに必要なアクセス処理能力よりも高い前記アクセス上限性能を有する前記グループを選択する、
ことを特徴とする付記1記載の割当制御プログラム。
(付記5) 前記コンピュータを、
前記ストレージ管理装置のアクセス処理の状況を観測する観測手段から所定の物理記憶領域にアクセスが集中している状態が検出されたことが通知されたときは、前記グループ管理情報に基づいて、前記観測手段がアクセス集中を検出した前記所定の物理記憶領域に対応する前記グループ及び前記論理ボリュームを特定し、前記論理ボリュームの再割当が可能な前記物理記憶領域が確保できる前記グループを新たに選択し、選択された前記グループ内の未割当の前記物理記憶領域に、前記論理ボリュームの一部もしくはすべての分割領域を再割当する再割当手段、
として機能させることを特徴とする付記1記載の割当制御プログラム。
(付記6) 前記コンピュータを、
前記ストレージ管理装置のアクセス処理の状況を観測する観測手段が生成した観測情報を取得して前記グループごとにまとめ、前記グループごとに前記観測情報を解析して前記所定の性能に関する前記グループの観測値を算出し、前記グループ管理情報に関連付けて前記記憶手段に格納する解析手段として機能させ、
前記再割当手段として、前記グループごとに、前記ストレージ管理情報に定義される前記ストレージ管理装置及び該ストレージ管理装置に対応するストレージ装置の所定の性能情報に基づいて算出される前記グループの上限性能と、前記解析手段が算出した前記グループの観測値とを比較し、前記グループの観測値が前記グループの上限性能を超えたときは、該グループに割り当てられた前記論理ボリュームの再割当を行わせる、ことを特徴とする付記5記載の割当制御プログラム。
(付記7) 前記解析手段として、所定の期間における前記観測情報を解析し、前記所定の期間における前記グループのアクセス処理回数に基づいて前記グループにアクセスが発生した観測アクセス数を算出させ、
前記再割当手段として、前記ストレージ装置の前記アクセス処理能力が定義される前記ストレージ管理情報に基づいて前記グループごとに算出される前記グループのアクセス上限性能と、前記解析手段が算出した観測アクセス数とを比較し、前記観測アクセス数が前記グループのアクセス上限性能を超えたときに、該グループに割り当てられた前記論理ボリュームの再割当を行わせる、ことを特徴とする付記6記載の割当制御プログラム。
(付記8) 前記解析手段として、前記観測情報に基づいて前記論理ボリュームへのアクセス傾向を解析し、解析によって抽出されたアクセス特徴を前記記憶手段に記憶させ、
前記割当手段及び前記再割当手段として、前記対象論理ボリュームに前記グループを選択する際に、該対象論理ボリュームの前記アクセス特徴に基づいて前記グループを選択し、該グループ内の前記物理記憶領域に前記対象論理ボリュームの分割領域を割り当てさせる、
ことを特徴とする付記6記載の割当制御プログラム。
(付記9) 前記解析手段として、前記観測情報に基づき、前記グループごとに検出されたアクセスの回数を時間帯別に分類して時間帯別のアクセス傾向を解析させ、
前記再割当手段として、複数の前記論理ボリュームを同じ前記グループに割り当てるときは、前記時間帯別のアクセス傾向が異なる前記論理ボリュームを組み合わせた論理ボリューム群を前記グループに割り当てさせる、
ことを特徴とする付記8記載の割当制御プログラム。
(付記10) 前記解析手段として、前記観測情報に基づき、前記グループごとに検出されたアクセスを処理サイズに応じたアクセスパターンで分類してアクセスパターン別のアクセス傾向を解析させ、
前記再割当手段として、複数の前記論理ボリュームを同じ前記グループに割り当てるときは、前記アクセスパターンが同じ前記論理ボリュームを組み合わせた論理ボリューム群を前記グループに割り当てさせる、
ことを特徴とする付記8記載の割当制御プログラム。
(付記11) 論理ボリュームをストレージ管理装置群が管理する物理記憶領域に分散配置する割当処理を行う割当制御装置において、
各ストレージ管理装置が管理する物理記憶領域に関する情報と、前記ストレージ管理装置及び該ストレージ管理装置に対応するストレージ装置の所定の性能情報とを含む前記ストレージ管理装置に関するストレージ管理情報と、グループ分けのルールを定義したグループ定義とが記憶される記憶手段と、
前記ストレージ管理情報及び前記グループ定義に基づいて前記ストレージ管理装置群をグループ分けし、グループごとに該グループに属するストレージ管理装置の前記ストレージ管理情報に基づいて前記所定の性能に関する該グループの上限性能を含む該グループに関するグループ管理情報を生成して前記記憶手段に格納するグループ分け手段と、
前記物理記憶領域の割当対象である対象論理ボリュームについて、前記対象論理ボリュームの容量と、前記対象論理ボリュームに予測される前記所定の性能に関する予測性能値とを含む論理ボリューム情報を取得すると、前記論理ボリューム情報及び前記グループ管理情報に基づいて前記対象論理ボリュームの割当が可能な前記物理記憶領域が確保できるとともに前記グループの上限性能が前記対象論理ボリュームの予測性能値よりも高い前記グループを選択し、該グループ内の前記物理記憶領域に前記対象論理ボリュームの分割領域を割り当てる割当手段と、
を有することを特徴とする割当制御装置。
(付記12) 論理ボリュームをストレージ管理装置群が管理する物理記憶領域に分散配置する割当制御方法において、
コンピュータが、各ストレージ管理装置が管理する物理記憶領域に関する情報と、前記ストレージ管理装置及び該ストレージ管理装置に対応するストレージ装置の所定の性能情報とを含む前記ストレージ管理装置に関するストレージ管理情報と、グループ分けのルールを定義したグループ定義と、に基づいて前記ストレージ管理装置群をグループ分けし、グループごとに該グループに属するストレージ管理装置の前記ストレージ管理情報に基づいて前記所定の性能に関する該グループの上限性能を含む該グループに関するグループ管理情報を生成し、記憶手段に格納する手順と、
前記物理記憶領域の割当対象である対象論理ボリュームについて、前記対象論理ボリュームの容量と、前記対象論理ボリュームに予測される前記所定の性能に関する予測性能値とを含む論理ボリューム情報を取得すると、前記論理ボリューム情報及び前記グループ管理情報に基づいて前記対象論理ボリュームの割当が可能な前記物理記憶領域が確保できるとともに前記グループの上限性能が前記対象論理ボリュームの予測性能値よりも高い前記グループを選択し、該グループ内の前記物理記憶領域に前記対象論理ボリュームの分割領域を割り当てる手順と、
を有することを特徴とする割当制御方法。
10 割当制御装置
11a グループ定義記憶手段
11b 管理情報記憶手段
12 グループ分け手段
13 割当手段
14 割当指示手段
15 解析手段
16 再割当手段
20,21,22,23,29 ストレージ管理装置
30,31,32,33,39 ストレージ装置

Claims (5)

  1. 論理ボリュームをストレージ管理装置群が管理する物理記憶領域に分散配置する割当処理のための割当制御プログラムにおいて、
    コンピュータを、
    各ストレージ管理装置が管理する物理記憶領域に関する情報と、ストレージ管理装置及び該ストレージ管理装置に対応するストレージ装置の所定の性能情報とを含むストレージ管理情報と、グループ分けのルールを定義したグループ定義と、に基づいて前記ストレージ管理装置群をグループ分けし、グループごとに該グループに属するストレージ管理装置の所定の性能情報に基づいて、該グループの上限性能を含むグループ管理情報を生成し、記憶手段に格納するグループ分け手段、
    理記憶領域の割当対象である対象論理ボリュームについて、前記対象論理ボリュームの容量と、前記対象論理ボリュームに予測される所定の性能に関する予測性能値とを含む論理ボリューム情報を取得すると、前記論理ボリューム情報及び各グループのグループ管理情報に基づいて前記対象論理ボリュームの割当が可能な物理記憶領域が確保できるとともにグループの上限性能が前記対象論理ボリュームの予測性能値よりも高いグループを選択し、該グループに属するストレージ管理装置が管理する物理記憶領域内に限定して、前記対象論理ボリュームの記憶領域を分割して得られる複数の分割領域を、分散して割り当てる割当手段、
    として機能させることを特徴とする割当制御プログラム。
  2. 前記コンピュータを、
    ストレージ管理装置のアクセス処理の状況を観測する観測手段から所定の物理記憶領域にアクセスが集中している状態が検出されたことが通知されたときは、各グループのグループ管理情報に基づいて、前記観測手段がアクセス集中を検出した前記所定の物理記憶領域に対応するグループ及び論理ボリュームを特定し、論理ボリュームの再割当が可能な物理記憶領域が確保できるグループを新たに選択し、選択されたグループ内の未割当の物理記憶領域に、論理ボリュームの一部もしくはすべての分割領域を再割当する再割当手段、
    として機能させることを特徴とする請求項1記載の割当制御プログラム。
  3. 前記コンピュータを、さらに、
    トレージ管理装置のアクセス処理の状況を観測する観測手段が生成した観測情報を取得してグループごとにまとめ、グループごとに前記観測情報を解析して所定の性能に関するグループの観測値を算出し、グループ管理情報に関連付けて前記記憶手段に格納する解析手段として機能させ、
    前記再割当手段として、グループごとに、ストレージ管理情報に定義されるストレージ管理装置及び該ストレージ管理装置に対応するストレージ装置の所定の性能情報に基づいて算出されるグループの上限性能と、前記解析手段が算出したグループの観測値とを比較し、グループの観測値がグループの上限性能を超えたときは、該グループに属するストレージ管理装置が管理する物理記憶領域に割り当てられた分割領域の再割当を行わせる、ことを特徴とする請求項2記載の割当制御プログラム。
  4. 前記解析手段として、観測情報に基づいて論理ボリュームへのアクセス傾向を解析し、解析によって抽出されたアクセス特徴を前記記憶手段に記憶させ、
    前記割当手段及び前記再割当手段として、前記対象論理ボリュームにグループを選択する際に、該対象論理ボリュームのアクセス特徴に基づいてグループを選択し、該グループ内の物理記憶領域に前記対象論理ボリュームの分割領域を割り当てさせる、
    ことを特徴とする請求項3記載の割当制御プログラム。
  5. 論理ボリュームをストレージ管理装置群が管理する物理記憶領域に分散配置する割当処理を行う割当制御装置において、
    各ストレージ管理装置が管理する物理記憶領域に関する情報と、ストレージ管理装置及び該ストレージ管理装置に対応するストレージ装置の所定の性能情報とを含むストレージ管理情報と、グループ分けのルールを定義したグループ定義とに基づいて前記ストレージ管理装置群をグループ分けし、グループごとに該グループに属するストレージ管理装置の所定の性能情報に基づいて、該グループの上限性能を含むグループ管理情報を生成し、記憶手段に格納するグループ分け手段と、
    理記憶領域の割当対象である対象論理ボリュームについて、前記対象論理ボリュームの容量と、前記対象論理ボリュームに予測される所定の性能に関する予測性能値とを含む論理ボリューム情報を取得すると、前記論理ボリューム情報及び各グループのグループ管理情報に基づいて前記対象論理ボリュームの割当が可能な物理記憶領域が確保できるとともにグループの上限性能が前記対象論理ボリュームの予測性能値よりも高い前記グループを選択し、該グループに属するストレージ管理装置が管理する物理記憶領域内に限定して、前記対象論理ボリュームの記憶領域を分割して得られる複数の分割領域を、分散して割り当てる割当手段と、
    を有することを特徴とする割当制御装置。
JP2009038749A 2009-02-23 2009-02-23 割当制御プログラム及び割当制御装置 Expired - Fee Related JP5228988B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2009038749A JP5228988B2 (ja) 2009-02-23 2009-02-23 割当制御プログラム及び割当制御装置
US12/709,863 US20100217933A1 (en) 2009-02-23 2010-02-22 Allocation control program and allocation control device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009038749A JP5228988B2 (ja) 2009-02-23 2009-02-23 割当制御プログラム及び割当制御装置

Publications (2)

Publication Number Publication Date
JP2010198056A JP2010198056A (ja) 2010-09-09
JP5228988B2 true JP5228988B2 (ja) 2013-07-03

Family

ID=42631902

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009038749A Expired - Fee Related JP5228988B2 (ja) 2009-02-23 2009-02-23 割当制御プログラム及び割当制御装置

Country Status (2)

Country Link
US (1) US20100217933A1 (ja)
JP (1) JP5228988B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7234097B2 (ja) 2019-11-11 2023-03-07 大日本印刷株式会社 ブロー成形方法、複合プリフォーム、複合容器、およびプラスチック製部材

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102640120B (zh) * 2010-01-28 2014-12-10 株式会社日立制作所 计算增设/减设的存储容量的管理系统
JP2011186794A (ja) * 2010-03-09 2011-09-22 Hitachi Ltd ストレージシステム内のデータの配置を制御する管理システム、及び、データ配置制御方法
US8566552B2 (en) * 2010-03-12 2013-10-22 Cleversafe, Inc. Dispersed storage network resource allocation
US8627065B2 (en) * 2010-11-09 2014-01-07 Cleversafe, Inc. Validating a certificate chain in a dispersed storage network
DE102012206283B4 (de) 2011-05-06 2013-04-11 International Business Machines Corporation Verteilung des Datenflusses auf mehrere Pfade (Multi-Pathing) in einem Speicherbereichsnetzwerk
WO2013038510A1 (ja) 2011-09-13 2013-03-21 株式会社日立製作所 仮想ボリュームに割り当てられた要求性能に基づく制御を行うストレージシステムの管理システム及び管理方法
KR101907067B1 (ko) * 2011-11-02 2018-10-11 삼성전자 주식회사 요청 패턴을 고려한 분산 스토리지 시스템, 분산 스토리지 관리 장치 및 방법
US9984141B2 (en) * 2015-08-21 2018-05-29 International Business Machines Corporation Inferring application type based on input-output characteristics of application storage resources
US9965218B1 (en) * 2015-09-30 2018-05-08 EMC IP Holding Company LLC Techniques using multiple service level objectives in connection with a storage group
KR102581479B1 (ko) 2016-05-31 2023-09-21 삼성전자주식회사 스토리지 시스템 및 그의 볼륨 관리 방법
JP2021197010A (ja) * 2020-06-17 2021-12-27 株式会社日立製作所 分散型ストレージシステム及びリバランス処理方法

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04165541A (ja) * 1990-10-30 1992-06-11 Hitachi Ltd ファイル再配置方法
US5345584A (en) * 1991-03-11 1994-09-06 Laclead Enterprises System for managing data storage based on vector-summed size-frequency vectors for data sets, devices, and residual storage on devices
JPH0773090A (ja) * 1993-06-21 1995-03-17 Hitachi Ltd 計算機システムおよび二次記憶装置
US6058454A (en) * 1997-06-09 2000-05-02 International Business Machines Corporation Method and system for automatically configuring redundant arrays of disk memory devices
JP3541744B2 (ja) * 1999-08-30 2004-07-14 株式会社日立製作所 ストレージサブシステム及びその制御方法
JP4972845B2 (ja) * 2001-09-27 2012-07-11 富士通株式会社 ストレージシステム
JP2003122508A (ja) * 2001-10-15 2003-04-25 Hitachi Ltd ボリューム管理方法及び装置
US20030177306A1 (en) * 2002-03-14 2003-09-18 Cochran Robert Alan Track level snapshot
JP2008123132A (ja) * 2006-11-09 2008-05-29 Hitachi Ltd 記憶制御装置及び記憶制御装置の論理ボリューム形成方法
WO2008114441A1 (ja) * 2007-03-20 2008-09-25 Fujitsu Limited ストレージ管理プログラム、ストレージ管理方法およびストレージ管理装置
US8392482B1 (en) * 2008-03-31 2013-03-05 Amazon Technologies, Inc. Versioning of database partition maps

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7234097B2 (ja) 2019-11-11 2023-03-07 大日本印刷株式会社 ブロー成形方法、複合プリフォーム、複合容器、およびプラスチック製部材

Also Published As

Publication number Publication date
JP2010198056A (ja) 2010-09-09
US20100217933A1 (en) 2010-08-26

Similar Documents

Publication Publication Date Title
JP5228988B2 (ja) 割当制御プログラム及び割当制御装置
US10387202B2 (en) Quality of service implementation in a networked storage system with hierarchical schedulers
JP5381336B2 (ja) 管理プログラム、管理装置および管理方法
JP4139675B2 (ja) 仮想ボリュームの記憶領域割当方法、その装置及びプログラム
US10298715B2 (en) Distributed processing system, task processing method, and storage medium
US8490106B2 (en) Apparatus for distributing resources to partitions in multi-processor system
US8352942B2 (en) Virtual-machine control apparatus and virtual-machine moving method
JP6459644B2 (ja) ストレージ制御装置、制御システム及び制御プログラム
JP5973089B2 (ja) ストレージシステムの移行方式および移行方法
JPWO2008136075A1 (ja) ストレージ管理プログラム、ストレージ管理装置およびストレージ管理方法
JP2006285808A (ja) ストレージシステム
US11861196B2 (en) Resource allocation method, storage device, and storage system
JP5882557B2 (ja) 要求優先順位シーク・マネージャ
US9513837B2 (en) Performance assist storage volumes
JP6753875B2 (ja) 運用管理システム及び運用管理方法
JP2016118821A (ja) ストレージ管理装置、ストレージ管理方法およびストレージ管理プログラム
JP4693589B2 (ja) 計算機システム、記憶領域割当方法及び管理計算機
JP5957520B2 (ja) データ管理システム及び方法
JP5758449B2 (ja) データ再配置装置、方法およびプログラム
US20190332261A1 (en) Storage system, method of controlling storage system, and management node
US20090006741A1 (en) Preferred zone scheduling
US11593182B2 (en) Storage system
WO2018189847A1 (ja) ストレージ装置およびキャッシュメモリ管理方法
US20210191623A1 (en) Storage system
JP6836536B2 (ja) ストレージシステム及びio処理の制御方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20111006

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120829

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120911

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20121102

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20130219

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130304

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20160329

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees