(57)【要約】【課題】状況によらず性能を保つ割当制御を行う。【解決手段】割当制御装置１０は、グループ分け手段１２が、ストレージ管理装置２０，２１，２２，２３，２９及び対応するストレージ装置３０，３１，３２，３３，３９をグループ分けのルールに基づいてグループ分けし、グループ管理情報を生成する。割当手段１３は、グループ管理情報に基づき、論理ボリュームの割り当てが可能なグループを選択し、選択されたグループ内の物理記憶領域に、論理ボリュームの分割領域を割り当てる。論理ボリュームに発生する負荷の影響が、割当グループの異なる論理ボリュームに影響することはない。【選択図】図１
2010198056.tif 000002
【特許請求の範囲】
【請求項１】
論理ボリュームをストレージ管理装置群が管理する物理記憶領域に分散配置する割当処理のための割当制御プログラムにおいて、
コンピュータを、
各ストレージ管理装置が管理する物理記憶領域に関する情報と、前記ストレージ管理装置及び該ストレージ管理装置に対応するストレージ装置の所定の性能情報とを含む前記ストレージ管理装置に関するストレージ管理情報と、グループ分けのルールを定義したグループ定義と、に基づいて前記ストレージ管理装置群をグループ分けし、グループごとに該グループに属するストレージ管理装置の前記ストレージ管理情報に基づいて前記所定の性能に関する該グループの上限性能を含む該グループに関するグループ管理情報を生成し、記憶手段に格納するグループ分け手段、
前記物理記憶領域の割当対象である対象論理ボリュームについて、前記対象論理ボリュームの容量と、前記対象論理ボリュームに予測される前記所定の性能に関する予測性能値とを含む論理ボリューム情報を取得すると、前記論理ボリューム情報及び前記グループ管理情報に基づいて前記対象論理ボリュームの割当が可能な前記物理記憶領域が確保できるとともに前記グループの上限性能が前記対象論理ボリュームの予測性能値よりも高い前記グループを選択し、該グループ内の前記物理記憶領域に前記対象論理ボリュームの分割領域を割り当てる割当手段、
として機能させることを特徴とする割当制御プログラム。
【請求項２】
前記コンピュータを、
前記ストレージ管理装置のアクセス処理の状況を観測する観測手段から所定の物理記憶領域にアクセスが集中している状態が検出されたことが通知されたときは、前記グループ管理情報に基づいて、前記観測手段がアクセス集中を検出した前記所定の物理記憶領域に対応する前記グループ及び前記論理ボリュームを特定し、前記論理ボリュームの再割当が可能な前記物理記憶領域が確保できる前記グループを新たに選択し、選択された前記グループ内の未割当の前記物理記憶領域に、前記論理ボリュームの一部もしくはすべての分割領域を再割当する再割当手段、
として機能させることを特徴とする請求項１記載の割当制御プログラム。
【請求項３】
前記コンピュータを、
前記ストレージ管理装置のアクセス処理の状況を観測する観測手段が生成した観測情報を取得して前記グループごとにまとめ、前記グループごとに前記観測情報を解析して前記所定の性能に関する前記グループの観測値を算出し、前記グループ管理情報に関連付けて前記記憶手段に格納する解析手段として機能させ、
前記再割当手段として、前記グループごとに、前記ストレージ管理情報に定義される前記ストレージ管理装置及び該ストレージ管理装置に対応するストレージ装置の所定の性能情報に基づいて算出される前記グループの上限性能と、前記解析手段が算出した前記グループの観測値とを比較し、前記グループの観測値が前記グループの上限性能を超えたときは、該グループに割り当てられた前記論理ボリュームの再割当を行わせる、ことを特徴とする請求項２記載の割当制御プログラム。
【請求項４】
前記解析手段として、前記観測情報に基づいて前記論理ボリュームへのアクセス傾向を解析し、解析によって抽出されたアクセス特徴を前記記憶手段に記憶させ、
前記割当手段及び前記再割当手段として、前記対象論理ボリュームに前記グループを選択する際に、該対象論理ボリュームの前記アクセス特徴に基づいて前記グループを選択し、該グループ内の前記物理記憶領域に前記対象論理ボリュームの分割領域を割り当てさせる、
ことを特徴とする請求項３記載の割当制御プログラム。
【請求項５】
論理ボリュームをストレージ管理装置群が管理する物理記憶領域に分散配置する割当処理を行う割当制御装置において、
各ストレージ管理装置が管理する物理記憶領域に関する情報と、前記ストレージ管理装置及び該ストレージ管理装置に対応するストレージ装置の所定の性能情報とを含む前記ストレージ管理装置に関するストレージ管理情報と、グループ分けのルールを定義したグループ定義とが記憶される記憶手段と、
前記ストレージ管理情報及び前記グループ定義に基づいて前記ストレージ管理装置群をグループ分けし、グループごとに該グループに属するストレージ管理装置の前記ストレージ管理情報に基づいて前記所定の性能に関する該グループの上限性能を含む該グループに関するグループ管理情報を生成し、前記記憶手段に格納するグループ分け手段と、
前記物理記憶領域の割当対象である対象論理ボリュームについて、前記対象論理ボリュームの容量と、前記対象論理ボリュームに予測される前記所定の性能に関する予測性能値とを含む論理ボリューム情報を取得すると、前記論理ボリューム情報及び前記グループ管理情報に基づいて前記対象論理ボリュームの割当が可能な前記物理記憶領域が確保できるとともに前記グループの上限性能が前記対象論理ボリュームの予測性能値よりも高い前記グループを選択し、該グループ内の前記物理記憶領域に前記対象論理ボリュームの分割領域を割り当てる割当手段と、
を有することを特徴とする割当制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
論理ボリュームをストレージ管理装置群が管理する物理記憶領域に分散配置する割当処理のための割当制御プログラム及び割当制御装置に関する。
【背景技術】
【０００２】
従来、複数のストレージ装置をネットワーク上に分散配置して協働させることによって、システムの性能及び信頼性を向上させる分散型のマルチノードストレージシステムがある。マルチノードストレージシステムでは、クライアントからの要求に応じた仮想的な論理ボリュームが生成される。この論理ボリュームは、所定の分割領域に分割されて複数のストレージ装置の物理記憶領域に割り当てられる。
【０００３】
一般的な割当制御では、論理ボリュームを分割した分割領域を、各ストレージ装置の物理記憶領域を分割した分割物理記憶領域に順に割り当てていくラウンドロビン方式が用いられている。このような割当制御により、論理ボリュームの分割領域は、マルチノードストレージシステムを構成するすべてのストレージ装置に分散配置される。
【０００４】
また、論理ボリューム内でデータを二重化する場合には、セカンダリ論理ボリュームを対応するプライマリ論理ボリュームの割当先と同じストレージ装置には割り当てないという制約条件の下、ラウンドロビン方式割当制御が行われる（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００５−４６８１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、従来の割当制御では、性能を保つことが容易ではないという問題点があった。
ラウンドロビン方式の割当制御について、一例を挙げて説明する。図２０は、従来のラウンドロビン方式による割当制御を示した図である。
【０００７】
アクセスノードＡＰ０（９４０）、ＡＰ１（９４１）、ＡＰ２（９４２）がそれぞれ管理する論理ボリューム０（９５０）、論理ボリューム１（９５１）、論理ボリューム２（９５２）は、それぞれ独立して動作する仮想記憶領域である。ディスクノードＤＰ０（９１０）は物理記憶領域であるディスク＃０（９２０）、ＤＰ１（９１１）はディスク＃１（９２１）、ＤＰ２（９１２）はディスク＃２（９２２）をそれぞれ管理している。
【０００８】
制御ノードＣＰ９００は、論理ボリュームの割当制御を行う。例えば、論理ボリューム０（９５０）の分割領域Ｌ０−０，Ｌ０−１，Ｌ０−２，Ｌ０−３，Ｌ０−４，Ｌ０−５を、ディスク＃０（９２０）、ディスク＃１（９２１）、ディスク＃２（９２２）とラウンドロビン方式で割り当てていく。こうして、図に示したように、論理ボリューム０（９５０）は、ディスクノード９１０，９１１，９１２に分散配置される。同様の処理が論理ボリューム１（９５１）の分割領域Ｌ１−０，Ｌ１−１，Ｌ１−２，Ｌ１−３，Ｌ１−４，Ｌ１−５及び論理ボリューム２（９５２）の分割領域Ｌ２−０，Ｌ２−１，Ｌ２−２，Ｌ２−３，Ｌ２−４，Ｌ２−５に対しても行われる。
【０００９】
ここで、Ｌ１−０にアクセスが集中したとする。Ｌ１−０は、ディスク＃０（９２０）に割り当てられており、Ｌ１−０へのアクセス集中によって、ＤＰ０（９１０）の負荷が重くなる。すると、Ｌ１−０ばかりでなく、ディスク＃０（９２０）のスライスすべてのレスポンスが悪化する。ディスク＃０（９２０）には、他の論理ボリュームのＬ０−０，Ｌ０−３及びＬ２−０，Ｌ２−３が割り当てられており、これらに対するアクセス処理が遅延する。
【００１０】
このように、論理ボリューム１（９５１）へのアクセス集中が、他の論理ボリューム０（９５０）、論理ボリューム２（９５２）にレスポンス悪化など、性能上の影響を及ぼす。この結果、アクセスが集中した論理ボリュームばかりでなく、すべての論理ボリュームについて性能を保つことができなくなっていた。
【００１１】
一方、性能の観点からは、論理ボリュームに割り当てられる物理記憶領域は、論理ボリュームに発生する負荷に応じた数のストレージ管理装置に分散されていれば十分である。しかし、従来の割当制御では、論理ボリュームはすべてのストレージ管理装置に一律に分散配置される。このため、性能の観点からすると効率的でない。
【００１２】
このような点に鑑み、状況によらず性能を保つことが可能な割当制御を行う割当制御プログラム及び割当制御装置を提供することを目的とする。
【課題を解決するための手段】
【００１３】
上記課題を解決するために、論理ボリュームをストレージ管理装置群が管理する物理記憶領域に分散配置する割当処理のための割当制御プログラムが提供される。この割当制御プログラムは、割当制御装置に適用され、コンピュータを、グループ分け手段及び割当手段として機能させることができる。ストレージ管理装置に関するストレージ管理情報には、各ストレージ管理装置が管理する物理記憶領域に関する情報と、ストレージ管理装置及び該ストレージ管理装置に対応するストレージ装置の所定の性能情報とが含まれる。グループ分け手段は、このストレージ管理情報と、グループ分けのルールを定義したグループ定義と、に基づいてストレージ管理装置群をグループ分けする。グループ分けされたグループごとに、このグループに属するストレージ管理装置のストレージ管理情報に基づいてグループに関するグループ管理情報を生成し、記憶手段に格納する。グループ管理情報には、所定の性能に関する該グループの上限性能が含まれる。割当手段は、物理記憶領域の割当対象である対象論理ボリュームについての論理ボリューム情報を取得する。論理ボリューム情報には、対象論理ボリュームの容量と、対象論理ボリュームに予測される所定の性能に関する予測性能値とが含まれる。そして、論理ボリューム情報及びグループ管理情報に基づいて対象論理ボリュームの割当が可能な物理記憶領域が確保できるとともにグループの上限性能が対象論理ボリュームの予測性能値よりも高いグループを選択する。この選択されたグループ内の物理記憶領域に対象論理ボリュームの分割領域を割り当てる。
【００１４】
このような割当制御プログラムを実行するコンピュータによれば、ストレージ管理情報を参照し、グループ分けのルールを定義したグループ定義に基づいてストレージ管理装置群がグループ分けされる。そして各グループに属するストレージ管理装置のストレージ管理情報からグループ管理情報が生成され、記憶手段に格納される。グループ管理情報には、所定の性能に関するグループの上限性能も設定される。割当手段は、論理ボリューム情報及びグループ管理情報に基づいて対象論理ボリュームの割当が可能であって、グループの上限性能が対象論理ボリュームの予測性能値よりも高いグループを選択する。そして、選択されたグループ内のストレージ管理装置が管理する物理記憶領域をこの論理ボリュームの分割領域に割り当てる。
【００１５】
また、上記課題を解決するために、コンピュータが上記の割当制御プログラムを実行することによって実現される処理手段を有する割当制御装置が提供される。
【発明の効果】
【００１６】
開示の割当制御プログラム及び割当制御装置によれば、選択されたグループに属するストレージ管理装置の管理する物理記憶領域を最大範囲として、論理ボリュームの割当処理が行われる。これにより、論理ボリュームのレスポンス遅延などの性能悪化の影響は割り当てられたグループ内に限定され、このような状況によらず、他のグループに割り当てられた論理ボリュームの性能を保つことができる。
【図面の簡単な説明】
【００１７】
【図１】実施の形態に適用される割当制御の概要を示した図である。
【図２】実施の形態のマルチノードディスクシステムの構成例を示す図である。
【図３】制御ノードのハードウェア構成例を示す図である。
【図４】制御ノード、論理ボリューム及びディスクノード群の構成例を示した図である。
【図５】ＤＰ管理情報の一例を示した図である。
【図６】ＤＰ群のグループ分けを行った後のグループ構成の一例を示した図である。
【図７】グループ管理情報の一例を示した図である。
【図８】割当ルール１を用いて割当処理を行った場合の割当状態を示した図である。
【図９】割当ルール１を用いて割当処理を行った場合のグループ管理情報（割当情報）を示した図である。
【図１０】割当ルール２を用いて割当処理を行った場合の割当状態を示した図である。
【図１１】割当ルール２を用いて割当処理を行った場合のグループ管理情報（割当情報）を示した図である。
【図１２】ホットスポット発生時の再割当処理を示した図である。
【図１３】ホットスポットによる再割当処理後のグループ管理情報（割当情報）を示した図である。
【図１４】観測情報に基づいて解析されたアクセス特徴情報の一例を示した図である。
【図１５】ピークｉｏｐｓが上限ｉｏｐｓを超えたときの再割当処理を示した図である。
【図１６】ピークｉｏｐｓが上限ｉｏｐｓを超えたときの再割当処理後のグループ管理情報を示した図である。
【図１７】電源投入時の処理の手順を示したフローチャートである。
【図１８】論理ボリュームへのスライス割当処理の手順を示したフローチャートである。
【図１９】再割当処理の手順を示したフローチャートである。
【図２０】従来のラウンドロビン方式による割当制御を示した図である。
【発明を実施するための形態】
【００１８】
以下、本発明の実施の形態を図面を参照して説明する。まず、実施の形態に適用される割当制御の概要について説明し、その後、具体的な内容を説明する。
図１は、実施の形態に適用される割当制御の概要を示した図である。
【００１９】
論理ボリュームは、図示しないアクセス制御装置が管理する仮想的な記憶領域で、割当制御装置１０によって物理記憶領域に割り当てられる。物理記憶領域は、ストレージ管理装置＃０（２０）が管理するストレージ装置＃０（３０）、ストレージ管理装置＃１（２１）が管理するストレージ装置＃１（３１）、ストレージ管理装置＃２（２２）が管理するストレージ装置＃２（３２）、ストレージ管理装置＃３（２３）が管理するストレージ装置＃３（３３）、・・・、ストレージ管理装置＃９（２９）が管理するストレージ装置＃９（３９）にある。以下、特定する必要がないときは、ストレージ管理装置２ｎ及びストレージ装置３ｎと表記する。また、ストレージ装置３ｎの物理記憶領域を分割した分割領域をスライスと呼び、スライスに対応する論理ボリューム上の分割領域を論理スライスと呼ぶ。
【００２０】
割当制御装置１０は、ネットワーク６０を介して物理記憶領域を備えたストレージ装置３ｎを管理するストレージ管理装置２ｎに接続し、論理ボリュームのスライス割当処理を行う。その処理のため、グループ定義記憶手段１１ａ及び管理情報記憶手段１１ｂの記憶手段と、グループ分け手段１２、割当手段１３、割当指示手段１４、解析手段１５及び再割当手段１６の処理手段と、を有する。各処理手段は、コンピュータが、割当制御プログラムを実行することによって、その処理機能が実現される。
【００２１】
グループ定義記憶手段１１ａには、ストレージ管理装置２ｎをグループ分けする際に用いるグループ分けのルールが格納されている。例えば、１つのグループを構成するストレージ管理装置の台数、グループの物理記憶領域の総容量など、グループを構成する要件がグループ分けのルールとして予め定義されている。また、生成されたグループの上限性能（ｉｏｐｓ、スループット、ボリューム数などが定義されている）に基づいてグループ分けを行うグループ分けのルールを生成するとしてもよい。なお、ｉｏｐｓ（Input Output per Second）は、単位時間当たりの読み・書き処理数を表す。
【００２２】
管理情報記憶手段１１ｂには、管理下のストレージ管理装置２ｎとストレージ装置３ｎに関するストレージ管理情報と、生成されたグループに関するグループ管理情報と、が格納される。ストレージ管理情報には、例えば、ストレージ装置３ｎが有する物理記憶領域の容量や、ストレージ管理装置２ｎの処理能力などが設定される。グループ管理情報には、グループを構成するストレージ管理装置の識別情報や、グループ全体の処理能力などが設定される。
【００２３】
グループ分け手段１２は、管理情報記憶手段１１ｂに格納されるストレージ管理情報を読み出し、グループ定義記憶手段１１ａに格納されるグループ分けのルールに基づいてストレージ管理装置２ｎをグループ分けする。ストレージ管理装置２ｎと、これに接続されるストレージ装置３ｎとは不可分であり、ストレージ管理装置２ｎをグループ分けすると、ストレージ装置３ｎも同じようにグループ分けされる。グループごとに、当該グループにグループ分けされたストレージ管理装置２ｎの識別情報と、ストレージ管理情報から抽出されたストレージ管理装置２ｎに関する情報とをグループ管理情報として登録し、管理情報記憶手段１１ｂに格納する。また、グループ管理情報には、グループに割り当てられた論理ボリュームの割当情報も登録される。
【００２４】
割当手段１３は、管理情報記憶手段１１ｂに格納されるグループ管理情報を読み出し、グループ管理情報に基づいて対象の論理ボリュームに割り当てるグループを選択する。少なくとも、グループ内の未割当のスライスの容量が、対象の論理ボリュームの論理スライスの容量よりも多くなるようにグループを選択する。そして、選択されたグループ内のスライスに対象の論理ボリュームを割り当て、割当指示手段１４を介してこのスライスを管理するストレージ管理装置２ｎに割当を指示する。正常に割当が完了したときは、割当が完了した論理ボリュームに関する割当情報を生成し、グループ管理情報に登録する。
【００２５】
割当指示手段１４は、割当手段１３及び再割当手段１６に従って、ストレージ管理装置２ｎに割当指示を通知する。ストレージ管理装置２ｎからの応答は、要求のあった割当手段１３または再割当手段１６に返す。
【００２６】
解析手段１５は、観測手段が観測したストレージ装置３ｎへのアクセス状態に関する観測情報を取得し、これを解析する。観測手段は、割当制御装置１０内に備えていても、外部機器であってもよい。例えば、ネットワーク６０を流れるパケットを観測するパケットアナライザなどがある。解析手段１５は、パケットアナライザが観測した観測情報を取得して解析する。そして、各ストレージ管理装置２ｎのアクセス処理性能など、所定の性能に関する観測値を算出し、アクセス特徴などの解析情報を生成する。例えば、パケットアナライザから所定の期間に論理ボリュームに発生したｉｏｐｓを取得し、性能の指標とすることができる。また、ｉｏｐｓを時間帯別に集計し、時間帯別のアクセス傾向を解析するとしてもよい。さらに、アクセス要求のパケットを解析し、要求サイズに応じたアクセスパターンで分類し、アクセスパターンの傾向を捉えてもよい。解析手法は適宜選択される。
【００２７】
再割当手段１６は、グループごとに、解析手段１５が算出した所定の性能に関する観測値と、グループ管理情報に設定されるグループの上限性能とを比較する。そして、観測値がグループの上限値を超えていると判定されれば、論理ボリュームの再割当を行う。また、観測手段がアクセス集中を検出し、通知することができるときは、この通知を受けて再割当を行う。再割当処理では、所定の性能に関する観測値が上限性能を超えた論理ボリューム、あるいは、アクセス集中が通知された論理スライスを含む論理ボリュームに対応するグループを特定する。次に、グループ管理情報に基づいて、この論理ボリュームを割り当てる新たなグループを選択する。そして、選択されたグループに、この論理ボリュームの一部または全領域を新たに選択されたグループのスライスに再割当する。このように、新たなグループのスライスに、少なくとも一部の論理ボリュームを割り当てることにより、処理を行うストレージ管理装置が分散され、再割当前に算出された観測値が上限性能を超えないようにすることができる。なお、再割当処理は、割当手段１３と同様、論理ボリュームごとに行われる。
【００２８】
このような割当制御装置１０の動作及び割当制御方法について説明する。
システム起動時、割当制御装置１０には、予めグループ分けのルールなどの情報が設定される。同時に、各ストレージ管理装置２ｎのピークｉｏｐｓや、アクセスパターンなど、ストレージ管理装置２ｎに関する情報も取得する。これらの情報は、管理者が設定する予測値であってもよい。また、ストレージ管理装置２ｎが起動した後、ストレージ管理装置２ｎからピークｉｏｐｓやＲＡＩＤ種類などの情報の通知を受けるとしてもよい。これらの情報は、記憶手段に格納される。こうして、管理情報記憶手段１１ｂには、ストレージ管理装置２ｎと、ストレージ装置３ｎに関するストレージ管理情報が格納される。ストレージ管理情報には、ストレージ装置３ｎが有する物理記憶領域の容量に関する情報や、予め測定されたストレージ管理装置２ｎの最大ｉｏｐｓなどが設定されている。また、グループ定義記憶手段１１ａには、グループ分けのルールやグループの特徴など、生成されるグループを定義するグループ定義が格納される。
【００２９】
割当制御装置１０が起動され、グループ分けのルールやストレージ管理情報などが取得されると、これらの情報に基づいてストレージ管理装置２ｎのグループ分けが開始される。例えば、グループ分けのルールとして、「ストレージ管理装置２ｎを２台ずつグループ分けする。」というルールが定義されていたとする。ここでは、図１に示したように、ストレージ管理装置＃０（２０）と、ストレージ管理装置＃１（２１）とがグループ１に分けられる。同様に、ストレージ管理装置＃２（２２）と、ストレージ管理装置＃３（２３）とがグループ２、ストレージ管理装置＃９（２９）がグループ５にグループ分けされる。各グループの情報は、グループ管理情報に登録される。こうして起動時にグループ分けが行われ、各グループの情報がグループ管理情報に登録された後は、このグループ管理情報に基づいて割当処理が行われる。なお、割当制御装置１０に再度電源が投入されたときは、グループ管理情報を読み出し、定義されるグループ構成に基づき処理が行われる。
【００３０】
対象の論理ボリュームが指示されると、割当手段１３による割当処理が開始される。割当手段１３は、対象論理ボリュームに関する論理ボリューム情報を取得し、グループ管理情報を参照して、この対象論理ボリュームに対応する物理記憶領域を確保できるグループを検索する。例えば、対象論理ボリュームの容量を確保できる物理記憶領域を有するグループを選択する。また、他の条件が設定されていたときは、この条件を考慮してグループが選択される。適したグループが検出されなかったときは、グループを組み合わせ、同様の処理を繰り返す。こうして、対象論理ボリュームに対応して１または複数のグループが選択される。続いて、対象論理ボリュームを分割した論理スライスを、選択されたグループ内のスライスに割り当てる。グループ内のスライスへの割り当ては、ラウンドロビン方式などを用いて論理スライスが各ストレージ管理装置に分散配置されるようにする。例えば、ある論理ボリューム（論理ボリュームＡとする）にグループ１が割り当てられたとすると、この論理ボリュームＡの論理スライスは、ストレージ装置＃０（３０）と、ストレージ装置＃１（３１）とに分散配置される。同様に他の論理ボリューム（論理ボリュームＢとする）にグループ２が割り当てられたとき、この論理ボリュームＢの論理スライスは、ストレージ装置＃２（３２）と、ストレージ装置＃３（３３）とに分散配置される。
【００３１】
以上の処理手順が行われることにより、論理ボリュームの物理記憶領域への割当処理において、論理ボリュームを割り当てられるスライス範囲がグループ内に限定される。これにより、論理ボリュームについてのアクセス処理の影響がグループの異なる論理ボリュームのアクセス処理に影響を及ぼすことを抑止することができる。
【００３２】
さらに、運用が開始された後は、解析手段１５によって実際のアクセス状況が解析される。解析手段１５は、観測情報をグループごとにまとめ、グループごとのアクセス状況を解析する。そして、グループごとに所定の性能に関する観測値を算出し、アクセス特徴などの解析情報を生成する。再割当手段１６は、所定の性能に関する観測値が、予めグループ定義に定義されるグループの上限性能を超えていると判定されたとき、論理ボリュームの再割当を行う。また、観測手段がエラー状態を検出したときの通知を受けて再割当を行うとしてもよい。再割当処理では、所定の性能に関する観測値が上限性能を超えたグループ、あるいはアクセス集中が検出されたグループが特定される。続いて、このグループに割り当てられている論理ボリュームを割り当てる新たなグループを選択する。そして、選択されたグループに、この論理ボリュームの一部またはすべての論理スライスを新たに選択されたグループのスライスに移動させる。このように、新たなグループのスライスに、少なくとも一部の論理スライスを割り当てることにより、処理を行うストレージ管理装置の負荷が分散され、グループに設定される上限性能を超えないようにすることができる。
【００３３】
以上のように、論理ボリュームを割り当てるスライスの範囲をグループ内に限定することにより、グループ外の論理ボリュームの状況に影響を受けずに性能を保持することが可能となる。また、運用が開始された後は、実際のアクセス状況が解析され、性能を保持するためには新たなスライスの割当が必要か否かについて判定される。必要と判定されれば、論理ボリュームについてスライスの再割当が行われ、論理ボリュームの性能を保持することができる。
【００３４】
以下、発明の実施の形態をストレージ装置がディスク装置で構成されるマルチノードディスクシステムの場合で説明する。
図２は、実施の形態のマルチノードディスクシステムの構成例を示す図である。
【００３５】
マルチノードディスクシステムは、ネットワーク６００を介して、制御ノード１００、複数のディスクノード２０１，２０２，２０３、パケットアナライザ４００、アクセスノード５００及び管理ノード７００が接続されている。
【００３６】
制御ノード１００は、仮想的な論理ボリュームを分割した論理スライスを、物理記憶領域を備えたディスク３０１，３０２，３０３に割り当てる割当制御を行う割当制御装置である。
【００３７】
ディスクノード２０１にはディスク３０１、ディスクノード２０２にはディスク３０２、ディスクノード２０３にはディスク３０３が、それぞれ接続されている。ディスクノード２０１，２０２，２０３は、ストレージ管理装置、ディスク３０１，３０２，３０３はストレージ装置として機能する。ディスク３０１には、物理記憶領域を構成する複数のハードディスク装置（ＨＤＤ；Hard Disk Drive）が実装されている。ディスク３０２，３０３の構成も同様である。ディスク３０１，３０２，３０３の物理記憶領域は、スライス単位に分割され、それぞれディスクノード２０１，２０２，２０３によって管理されている。スライスには、論理スライスのデータと、スライスに関する管理情報（以下、メタデータとする）を記憶する領域と、がある。ディスクノード２０１，２０２，２０３は、例えば、ＩＡ（Intel Architecture）と呼ばれるアーキテクチャのコンピュータである。そして、接続されたディスク３０１，３０２，３０３に格納されるメタデータに基づき、スライスデータをアクセスノード５００経由で端末装置８０１，８０２，８０３に提供する。
【００３８】
パケットアナライザ４００は、ネットワーク６００上を流れるパケットを取得し、観測情報を生成する観測手段である。また、予め決められた閾値を超えてアクセスが集中したときなど、予め検出条件を設定しておけば、設定された条件が成立する事象が検出されたとき、事象の発生を通知する。
【００３９】
アクセスノード５００には、ネットワーク８００を介して複数の端末装置８０１，８０２，８０３が接続されている。アクセスノード５００は、ディスクノード２０１，２０２，２０３のそれぞれが管理しているデータの格納場所を認識しており、端末装置８０１，８０２，８０３からの要求に応答して、ディスクノード２０１，２０２，２０３へデータアクセスを行う。
【００４０】
管理ノード７００は、マルチノードディスクシステム全体を管理する。また、管理者の指示に従って、論理ボリュームの割当指示を制御ノード１００に通知する。
次に、各ノードのハードウェア構成を、制御ノード１００を例に説明する。
【００４１】
図３は、制御ノードのハードウェア構成例を示す図である。
制御ノード１００は、ＣＰＵ（Central Processing Unit）１０１によって装置全体が制御されている。ＣＰＵ１０１には、バス１０５を介してＲＡＭ（Random Access Memory）１０２、ＨＤＤ１０３及び通信インタフェース１０４が接続されている。
【００４２】
ＲＡＭ１０２には、ＣＰＵ１０１に実行させるＯＳやアプリケーションプログラムの少なくとも一部が一時的に格納される。また、ＲＡＭ１０２には、ＣＰＵ１０１による処理に必要な各種データが格納される。ＨＤＤ１０３には、ＯＳやアプリケーションのプログラムが格納される。通信インタフェース１０４は、ネットワーク６００に接続されている。通信インタフェース１０４は、ネットワーク６００を介して、ディスクノード２０１，２０２，２０３、パケットアナライザ４００、アクセスノード５００及び管理ノード７００など、マルチノードディスクシステムを構成する他のコンピュータとの間でデータの送受信を行う。
【００４３】
なお、図３には、制御ノード１００のハードウェア構成を示したが、ディスクノード及びアクセスノードのハードウェア構成も同様である。
上記の構成のマルチノードディスクシステムにおける論理ボリュームの割当制御について、具体例を用いて説明する。
【００４４】
図４は、制御ノード、論理ボリューム及びディスクノード群の構成例を示した図である。図２と同じものには同じ番号を付し、説明は省略する。
制御ノード１００は、割当制御部１１０と、ルール記憶部１２０とを有する。割当制御部１１０は、図１に示した各処理手段を有し、グループ分けルールなどに基づき、論理ボリューム５２０，５２１，５２２，５２３のＤＰ群２００への割当を制御する。ルール記憶部１２０は、予め定義されたＤＰグループ分けのルールや、割当または再割当のルールなどを格納する。また、制御ノード１００は、図示しない管理部によって、ＤＰに故障を検出したときは、故障スライスに格納されるデータを復元するなどの、スライスの管理処理を行う。
【００４５】
ＤＰ群２００は、それぞれが、ディスクノード２０１，２０２，２０３，・・・と、ディスク３０１，３０２，３０３，・・・との組を表す複数のＤＰで構成される。この例では、ＤＰ００からＤＰ３１の３２個のＤＰでＤＰ群２００が構成される。
【００４６】
アクセスノードＡＰ０（５１０），ＡＰ１（５１１），ＡＰ２（５１２），ＡＰ３（５１３）は、それぞれ独立して動作する論理ボリュームを管理する。ここでは、ＡＰ０（５１０）は、論理ボリュームＬＶＯＬ０（５２０）、ＡＰ１（５１１）は、論理ボリュームＬＶＯＬ１（５２１）、ＡＰ２（５１２）は、論理ボリュームＬＶＯＬ２（５２２）、ＡＰ３（５１３）は、論理ボリュームＬＶＯＬ３（５２３）、を管理する。それぞれの論理ボリュームは６分割され、それぞれ０から５のスライス番号が振られている。以下の説明は、論理ボリュームの識別子（Ｌ０からＬ３）と、スライス番号とを用いて各論理スライスを表す。論理ボリュームＬＶＯＬ０（５２０）の論理スライスは、Ｌ０−０，Ｌ０−１，Ｌ０−２，Ｌ０−３，Ｌ０−４，Ｌ０−５と表される。論理ボリュームＬＶＯＬ１（５２１）の論理スライスは、Ｌ１−０，Ｌ１−１，Ｌ１−２，Ｌ１−３，Ｌ１−４，Ｌ１−５と表される。論理ボリュームＬＶＯＬ２（５２２）の論理スライスは、Ｌ２−０，Ｌ２−１，Ｌ２−２，Ｌ２−３，Ｌ２−４，Ｌ２−５と表される。そして、論理ボリュームＬＶＯＬ３（５２３）の論理スライスは、Ｌ３−０，Ｌ３−１，Ｌ３−２，Ｌ３−３，Ｌ３−４，Ｌ３−５と表される。なお、ここでは、１つのアクセスノードに１つの論理ボリュームが割り当てられているが、アクセスノードが管理する論理ボリュームの数は任意である。
【００４７】
図４は、割当処理が開始される前の状態であり、論理ボリュームＬＶＯＬ０（５２０），ＬＶＯＬ１（５２１），ＬＶＯＬ２（５２２），ＬＶＯＬ３（５２３）の論理スライスはまだＤＰ群２００のスライスに割り当てられていない。
【００４８】
図５は、ＤＰ管理情報の一例を示した図である。
ＤＰ管理情報１０００は、ＤＰ群２００を構成するＤＰに関する管理情報であり、立ち上がり時に予め、各ＤＰから取得しておく。
【００４９】
ＤＰ管理情報１０００は、ＤＰ１０００ａ、ＤＰ  ＩＰアドレス１０００ｂ及びピークｉｏｐｓ１０００ｃの各情報項目を有する。
ＤＰ名１０００ａには、ＤＰを識別可能にする情報で、ＤＰに一意に振られた番号が登録される。
【００５０】
ＤＰ  ＩＰアドレス１０００ｂには、ディスクノードのＩＰアドレスが登録される。ディスクノードへの通信は、このＩＰアドレスを用いて行う。
ピークｉｏｐｓ１０００ｃには、ＤＰが処理可能なアクセス処理件数に応じた最大のｉｏｐｓ値が登録される。ピークｉｏｐｓは、予め計測しておくか、管理者が登録しておく。
【００５１】
ＤＰ管理情報１０００の最上行には、「ＤＰ００」は、ＩＰアドレスが「１０．２５．１８０．１１」、ピークｉｏｐｓが「１２５」であることが登録されている。
なお、ＤＰ管理情報１０００は、一例であり、必要に応じて各種情報が登録される。ＤＰの記憶容量や機種などが同じであれば、特に記載する必要はないが、異なるときは、各ＤＰの容量や、機種などの情報が登録される。
【００５２】
次に、ＤＰグループ分け処理について説明する。
ＤＰ群２００に属するＤＰグループ分けは、図５に示したＤＰ管理情報１０００と、予め定義されたグループ分けルールに基づいて行われる。
【００５３】
図６は、ＤＰ群のグループ分けを行った後のグループ構成の一例を示した図である。
図６は、図４に示したマルチノードディスクシステムにおいて、ＤＰ群２００のグループ分けが行われた後の状態を示している。なお、図６では、簡単のため、制御ノード１００、アクセスノード５１０，５１１，５１２，５２３及びパケットアナライザ４００を省略している。
【００５４】
ここでは、グループ分けルールとして、「ＤＰを４ＤＰ単位で分割する」というルールが適用されている。
これにより、ＤＰ群２００に属するＤＰは、ＤＰ００から順に４ＤＰずつグルーピングされる。図６に示したように、ＤＰ００からＤＰ０３がＤＰグループ０（２１０）、ＤＰ０４からＤＰ０７がＤＰグループ１（２２０）、ＤＰ０８からＤＰ１１がＤＰグループ２（２３０）、ＤＰ１２からＤＰ１５がＤＰグループ３（２４０）、ＤＰ１６からＤＰ１９がＤＰグループ４（２５０）、ＤＰ２０からＤＰ２３がＤＰグループ５（２６０）、ＤＰ２４からＤＰ２７がＤＰグループ６（２７０）、ＤＰ２８からＤＰ３１がＤＰグループ７（２８０）、にグルーピングされる。こうして、ＤＰ群２００は、４ＤＰ単位の８グループにグループ分けされる。
【００５５】
また、各ＤＰグループの上限ｉｏｐｓは、ＤＰ管理情報１０００に基づき、ＤＰグループに属するＤＰのピークｉｏｐｓを読み出し、そのｉｏｐｓ値を合計して求める。例えば、ＤＰグループ０（２１０）に属するＤＰ００からＤＰ０３のピークｉｏｐｓは、図５からすべて１２５という値が得られる。したがって、ＤＰグループ０（２１０）の上限ｉｏｐｓは、この値を合計した５００になる。他のＤＰグループも同様にして上限ｉｏｐｓを算出する。グループ分けとともに、ＤＰグループを管理するためのグループ管理情報が生成される。
【００５６】
図７は、グループ管理情報の一例を示した図である。
グループ管理情報１１００は、図６に示したＤＰグループのグループ管理情報であり、グループ名、ＤＰ  ＩＰアドレス１１００ｂ、ピークｉｏｐｓ１１００ｃ及び上限ｉｏｐｓ１１００ｄの各情報項目を有する。
【００５７】
グループ名１１００ａには、生成されたＤＰグループを特定するため、一意に付された識別番号が登録されている。０〜７は、それぞれＤＰグループ０〜ＤＰグループ７を表している。
【００５８】
ＤＰ  ＩＰアドレス１１００ｂは、グループ名１１００ａにグループ分けされたＤＰの識別情報であり、ＤＰのＩＰアドレスが登録されている。
ピークｉｏｐｓは、対応するＤＰのピークｉｏｐｓ値が登録されている。ＤＰ  ＩＰアドレス１１００ｂ及びピークｉｏｐｓ１１００ｃは、ＤＰ管理情報１０００の該当箇所が抽出されて登録される。
【００５９】
上限ｉｏｐｓ１１００ｄは、対応するＤＰグループの上限性能が登録される。前述のように、上限ｉｏｐｓ値は、ＤＰグループに属するＤＰのピークｉｏｐｓを合計して算出される。
【００６０】
こうしてグループ管理情報１１００には、各ＤＰグループの構成と、上限性能とが設定される。
なお、上記の説明では、グループ分けルールとして、４ＤＰ単位でＤＰグループを構成するとしたが、グループ分けのルールは管理者が任意に設定することができる。
【００６１】
例えば、一定の容量でＤＰグループを構成するというグループ分けルールを設定してもよい。この場合、例えば、ＤＰ管理情報に基づいてＤＰ００から順に記憶容量を加算していき、一定の容量に到達した時点でグループを区切り、１つのＤＰグループを形成する。そして、次のＤＰから同様の処理を行って、ＤＰグループを形成する。また、ＤＰの機種が同じものを集め、ＤＰグループを形成するルールとすることもできる。さらに、ＤＰグループの上限ｉｏｐｓを予め決めておき、これを満たすＤＰグループを形成するというルールとしてもよい。
【００６２】
こうしてＤＰグループが形成された後、管理ノード７００を介して論理ボリュームの割当が指示されると、割当制御部１１０は割当処理を開始する。割当ルールを予め定義しておき、割当ルールに基づいて割当処理を行う。
【００６３】
まず、「論理ボリュームごとに別ＤＰグループのスライスに割り当てる」という割当ルール（割当ルール１とする）を用いた場合について説明する。
図８は、割当ルール１を用いて割当処理を行った場合の割当状態を示した図である。
【００６４】
割当制御部１１０は、割当ルール１に基づき、論理ボリュームＬＶＯＬ０（５２０），ＬＶＯＬ１（５２１），ＬＶＯＬ２（５２２），ＬＶＯＬ３（５２３）に対し、それぞれ別のＤＰグループを選択し、割り当てる。図８の例では、論理ボリュームＬＶＯＬ０（５２０）にはＤＰグループ０（２１０）、論理ボリュームＬＶＯＬ１（５２１）にはＤＰグループ４（２５０）、論理ボリュームＬＶＯＬ２（５２２）にはＤＰグループ５（２６０）、そして論理ボリュームＬＶＯＬ３（５２３）にはＤＰグループ６（２７０）が割り当てられる。
【００６５】
続いて、論理ボリュームの論理スライスを、この論理ボリュームに割り当てられたＤＰグループ内のスライスに割り当てるスライス割当処理が行われる。ＤＰグループ０（２１０）が割り当てられた論理ボリュームＬＶＯＬ０（５２０）であれば、論理スライスＬ０−０，Ｌ０−１，Ｌ０−２，Ｌ０−３，Ｌ０−４，Ｌ０−５を、ＤＰグループ０（２１０）を構成するＤＰ００，ＤＰ０１，ＤＰ０２，ＤＰ０３に分散配置する。配置にラウンドロビン方式を用いるとすれば、論理ボリューム５２０ａの論理スライスＬ０−０はＤＰ００、Ｌ０−１はＤＰ０１、Ｌ０−２はＤＰ０２、Ｌ０−３はＤＰ０３、Ｌ０−４はＤＰ００、Ｌ０−５はＤＰ０１というように配置される。このように、論理ボリュームＬＶＯＬ０（５２０）は、ＤＰグループ０（２１０）内のＤＰに均等分散されるスライス群５２０ａに割り当てられる。
【００６６】
同様に、論理ボリュームＬＶＯＬ１（５２１）は、ＤＰグループ４（２５０）内に均等分散されるスライス群５２１ａに割り当てられる。論理ボリュームＬＶＯＬ２（５２２）は、ＤＰグループ５（２６０）内に均等分散されるスライス群５２２ａに割り当てられる。そして、論理ボリュームＬＶＯＬ３（５２３）は、ＤＰグループ６（２７０）内に均等分散されるスライス群５２３ａに割り当てられる。
【００６７】
こうした割当状態は、割当情報としてグループ管理情報に登録される。
図９は、割当ルール１を用いて割当処理を行った場合のグループ管理情報（割当情報）を示した図である。
【００６８】
グループ管理情報（割当情報）１２００は、図７に示したグループ管理情報１１００に付加される割当情報を示している。このグループ管理情報（割当情報）１２００は、グループ名１２００ａ、論理ボリュームＩＤ１２００ｂ、スライス番号１２００ｃ及び予定ｉｏｐｓ１２００ｄの情報項目を有している。
【００６９】
グループ名１２００ａには、グループ管理情報１１００のグループ名１１００ａと同様にＤＰグループの識別番号が登録される。
論理ボリュームＩＤ１２００ｂには、このＤＰグループに割り当てられた論理ボリュームのＩＤ（識別番号）が登録される。０〜３は、それぞれＬＶＯＬ０〜ＬＶＯＬ３を表している。
【００７０】
スライス番号１２００ｃには、このＤＰグループに割り当てられた論理スライスの識別番号が登録される。０〜５は、それぞれ論理スライス０〜論理スライス５を表す。なお、「ａｌｌ」は、論理ボリュームのすべての論理スライスが割り当てられていることを表す。
【００７１】
予定ｉｏｐｓ１２００ｄには、論理ボリューム情報から取得した論理ボリュームの予定ｉｏｐｓが登録される。例えば、最上行には、「ＤＰグループ０」に、論理ボリューム「ＬＶＯＬ０」の「すべて（ａｌｌ）スライス」が割り当てられ、論理ボリュームの予定ｉｏｐｓは「３００」であることが登録されている。ＤＰグループ４，５，６についても同様である。
【００７２】
以上のように、「論理ボリュームごとに別ＤＰグループのスライスに割り当てる」という割当ルール１に基づき、論理ボリュームがそれぞれ別のＤＰグループに割り当てられる。これにより、いずれかの論理ボリュームのアクセス負荷が大きくなり、レスポンス遅延が発生しても、他の論理ボリュームに影響を与えることがなくなり、性能を維持することが可能となる。
【００７３】
さらに、論理ボリュームのスライス割当は、選択されたグループ範囲内に限定されるため、論理ボリュームに割り当てられなかったＤＰグループを停止させ、省電力を図ることができるという利点もある。
【００７４】
しかし、割当ルール１では、ＤＰグループの上限性能に対し、論理ボリュームに予測されるアクセス負荷が小さくなる場合があり、効率性の観点からは課題が残る。
割当ルール２は、これを解決し、効率的な割当制御を目的としたものである。
【００７５】
「論理ボリュームに必要なｉｏｐｓを確保してＤＰグループのスライスに割り当てる」という割当ルール（割当ルール２とする）を用いた場合について説明する。
図１０は、割当ルール２を用いて割当処理を行った場合の割当状態を示した図である。
【００７６】
割当制御部１１０は、割当ルール２に基づき、論理ボリュームに発生するアクセス負荷の予測値として、予定ｉｏｐｓを取得する。予定ｉｏｐｓは、割当処理を行う対象論理ボリュームを指示する管理者などが、論理ボリューム情報として予め定義しておく。割当制御部１１０は、取得した各論理ボリュームの予定ｉｏｐｓと、グループ管理情報１１００に登録される各ＤＰグループの上限ｉｏｐｓとを比較する。そして、ＤＰグループの上限ｉｏｐｓが論理ボリュームの予定ｉｏｐｓよりも高ければ、そのＤＰグループを選択し、論理ボリュームに割り当てる。
【００７７】
図１０の例では、論理ボリュームＬＶＯＬ０（５２０）の予定ｉｏｐｓは３００、論理ボリュームＬＶＯＬ１（５２１）の予定ｉｏｐｓは２００、論理ボリュームＬＶＯＬ２（５２２）の予定ｉｏｐｓは２００、論理ボリュームＬＶＯＬ３（５２３）の予定ｉｏｐｓは３００であるとしている。
【００７８】
論理ボリュームＬＶＯＬ０（５２０）は、予定ｉｏｐｓが３００であるので、ＤＰグループ０（２１０）の上限ｉｏｐｓ５００を超えない。そこで、論理ボリュームＬＶＯＬ０（５２０）には、ＤＰグループ０（２１０）が割り当てられる。ＤＰグループ０（２１０）は、論理ボリュームＬＶＯＬ０（５２０ｂ）を割り当てても、上限ｉｏｐｓまでは２００の余裕がある。
【００７９】
次の論理ボリュームＬＶＯＬ１（５２１）は、予定ｉｏｐｓが２００である。論理ボリュームＬＶＯＬ１（５２１）をＤＰグループ０（２１０）に割り当てると、予定ｉｏｐｓは論理ボリュームＬＶＯＬ１（５２１ｂ）と合わせ、予定ｉｏｐｓが５００になってしまう。そこで、他のＤＰグループを選択し、割り当てる。図１０の例では、ＤＰグループ４（２５０）が割り当てられている。ＤＰグループ４（２５０）は、論理ボリュームＬＶＯＬ１（２５１）が割り当てられても、上限ｉｏｐｓまで３００の余裕がある。
【００８０】
次の論理ボリュームＬＶＯＬ２（５２２）の予定ｉｏｐｓは２００である。論理ボリュームＬＶＯＬ２（５２２）をグループ４（２５０）に割り当てると、予定ｉｏｐｓは論理ボリュームＬＶＯＬ１（５２１）と合わせ、予定ｉｏｐｓが４００になる。これは、ＤＰグループ４（２５０）の上限ｉｏｐｓ５００を下回っているので、割り当てることができる。
【００８１】
同様にして、次の論理ボリュームＬＶＯＬ３（５２３）には、新たなＤＰグループ６（２７０）が選択される。
こうして、図１０の例では、論理ボリュームＬＶＯＬ０（５２０）にはＤＰグループ０（２１０）、論理ボリュームＬＶＯＬ１（５２１）にはＤＰグループ４（２５０）、論理ボリュームＬＶＯＬ２（５２２）にはＤＰグループ５（２６０）、そして論理ボリュームＬＶＯＬ３（５２３）にはＤＰグループ６（２７０）が選択される。
【００８２】
選択されたＤＰグループ内のスライスへの割当は、図８の割当ルール１と同様とする。これにより、論理ボリュームＬＶＯＬ０（５２０）は、ＤＰグループ０（２１０）内に均等分散されスライス群５２０ｂに割り当てられる。論理ボリュームＬＶＯＬ１（５２１）はＤＰグループ４（２５０）内のスライス群５２１ｂ、論理ボリュームＬＶＯＬ２（５２２）は、ＤＰグループ４（２５０）内のスライス群５２２ｂに割り当てられる。そして、論理ボリュームＬＶＯＬ３（５２３）は、ＤＰグループ６（２７０）内に均等分散されるスライス群５２３ｂに割り当てられる。
【００８３】
図１１は、割当ルール２を用いて割当処理を行った場合のグループ管理情報（割当情報）を示した図である。
グループ管理情報（割当情報）１２０１は、図９に示したグループ管理情報１２００と同じ構成であり、割当ルール２が適用されて割当処理が行われた後の状態を表している。
【００８４】
ＤＰグループ４に対応する行は、「ＤＰグループ４」には、論理ボリューム「ＬＶＯＬ１」と、「ＬＶＯＬ２」とが割り当てられていることを表している。
以上のように、「論理ボリュームに必要なｉｏｐｓを確保してＤＰグループのスライスに割り当てる」という割当ルール２に基づき、論理ボリュームのアクセス負荷に対応する性能が確保して割当が行われる。これにより、効率的に割当を行うことが可能となるとともに、性能を維持することができる。また、いずれかの論理ボリュームのアクセス負荷が大きくなり、レスポンス遅延が発生しても、他のＤＰグループに割り当てられた論理ボリュームに影響を与えることがない。このため、他のＤＰグループに割り当てられた論理ボリュームは、その性能を維持することが可能となる。
【００８５】
以上、割当ルール１、または割当ルール２を用いて割当処理を行う場合について説明した。この割当ルール１，２は、一例であり、管理者は任意の割当ルールを設定することができる。また、論理ボリュームごとに異なる割当ルールを設定するとしてもよい。
【００８６】
ところで、実際に運用が開始されると、運用時間の経過とともに、予測範囲外の事態が発生することがある。例えば、ある領域にアクセスが集中し、レスポンスが低下する事態が生じたような場合である。以下の説明では、このようにアクセスが集中した状態をホットスポットと呼ぶ。パケットアナライザ４００は、ネットワーク６００を観測し、ホットスポットの発生を監視する。そして、ホットスポットが検出されたときは、制御ノード１００に対し、ホットスポットが発生した論理ボリューム、またはスライス番号、ホットスポットの大きさ（ｉｏｐｓ）などの情報を通知する。
【００８７】
ホットスポット発生の通知を受けた割当制御部１１０は、通知に基づいてホットスポットが発生したＤＰグループを検索し、そのＤＰグループとスライスを特定する。
図１２は、ホットスポット発生時の再割当処理を示した図である。
【００８８】
図１２は、図１０に示した割当状態で運用中にホットスポットが発生したことを表している。ここでは、パケットアナライザ４００から、ホットスポットが、論理ボリュームＬＶＯＬ３（５２３）の論理スライスＬ３−３で発生し、その大きさ（ｉｏｐｓ）が４００と検出されたことが通知されたとする。
【００８９】
割当制御部１１０は、通知を受け、通知されたホットスポットがどのＤＰグループに属しているかを検索する。この例では、ＤＰグループ６（２７０）が検出される。そこで、グループ管理情報１１００及びグループ管理情報（割当情報）１２００から、グループ６（２７０）の上限ｉｏｐｓと、予定ｉｏｐｓとを読み出す。この例では、ＤＰグループ６の上限ｉｏｐｓ（ｉｏｐｓ＝５００）と、予定ｉｏｐｓ（ｉｏｐｓ＝３００）とが得られる。ここで、ホットスポットの負荷により、ＤＰグループ６（２７０）のアクセス負荷がＤＰグループの上限ｉｏｐｓ（ｉｏｐｓ＝５００）を超えているかどうかを判定する。論理ボリュームＬＶＯＬ３（５２３）の予定ｉｏｐｓは３００であるので、Ｌ３−３に発生したホットスポットの負荷（ｉｏｐｓ＝４００）を加えると、ＤＰグループの上限ｉｏｐｓを超えると判定される。なお、このとき予定ｉｏｐｓに含まれるＬ３−３の負荷を除いて判定を行ってもよい。
【００９０】
こうして、ホットスポットの発生により、ＤＰグループ６（２７０）の負荷が上限ｉｏｐｓを超えたと判定されたので、同じＤＰグループに属し、ホットスポットの発生していないスライスを別のＤＰグループに移動させる。この例では、ホットスポットを含むスライス群（Ｌ３−３，Ｌ３−４，Ｌ３−５）５２３ｃと、ホットスポットの発生していないスライス群（Ｌ３−０，Ｌ３−１，Ｌ３−２）５２３ｄとに分ける。そして、論理ボリュームＬＶＯＬ３（５２３）に新たにＤＰグループ７（２８０）を割り当て、スライス群５２３ｄをＤＰグループ７（２８０）に移動させる。
【００９１】
図１３は、ホットスポットによる再割当処理後のグループ管理情報（割当情報）を示した図である。
グループ管理情報（割当情報）１２０２は、図１１に示したグループ管理情報１２０１の状態から、再割当処理が行われた後の状態を表している。
【００９２】
ＤＰグループ６には、論理ボリュームＬＶＯＬ３（５２３）の論理スライスＬ３−３，Ｌ３−４，Ｌ３−５が割り当てられていることが登録されている。なお、予定ｉｏｐｓは、元の予定ｉｏｐｓ（ｉｏｐｓ＝３００）の半分の１５０としているが、必要に応じて管理者が設定する。ＤＰグループ７（２８０）には、再割当処理により移動された論理ボリュームＬＶＯＬ３（５２３）の論理スライスＬ３−０，Ｌ３−１，Ｌ３−２が割り当てられていることが登録されている。他はＤＰグループ６（２７０）と同様である。
【００９３】
なお、上記では、パケットアナライザ４００からのホットスポット発生通知を受け、再割当処理を行う場合について説明したが、パケットアナライザ４００から観測情報を定期的に取得し、再割当の要否を自身が判定するとしてもよい。
【００９４】
そこで、割当制御部１１０は、システムの状態を観測し、性能が維持されているかどうかを監視する。そして、性能が維持されていないときは、スライスの再割当を行う。
運用が開始されると、制御ノード１００には、パケットアナライザ４００が観測した観測情報が定期的に送られてくる。パケットアナライザ４００は、ネットワーク６００上を流れるパケットを採取し、各種解析を行って観測情報を生成する。ここでは、一例として、スライスへのアクセスを伴う入出力要求のパケット（以下、ＩＯパケットとする）を解析し、所定の期間のｉｏｐｓ、ｉｏサイズの分布などが観測情報として通知されるとする。割当制御部１１０は、取得した観測情報を解析し、アクセス負荷など観測された性能値を算出し、論理ボリュームごとのアクセス特徴を解析する。
【００９５】
図１４は、観測情報に基づいて解析されたアクセス特徴情報の一例を示した図である。
ここでは、論理ボリュームのアクセス特徴を、「ピークｉｏｐｓ」、「アクセス負荷が高い時間帯」、「アクセスパターン」の３種類によって捉えている。また、このアクセス特徴は、図１０に示した割当状態で採取された観測情報に基づくものである。
【００９６】
アクセス特徴情報１３００は、ＤＰグループ１３００ａ、論理ボリュームＩＤ１３００ｂ、ピークｉｏｐｓ１３００ｃ、アクセス負荷が高い時間帯１３００ｄ及びアクセスパターン１３００ｅの情報項目を有する。
【００９７】
ＤＰグループ１３００ａには、グループ分けされたグループのＩＤと、グループごとに算出された上限のピークｉｏｐｓと、が登録される。上限のピークｉｏｐｓは、グループ管理情報１１００の上限ｉｏｐｓ１１００ｄに相当する。
【００９８】
論理ボリュームＩＤ１３００ｂには、このＤＰグループに割り当てられた論理ボリュームのＩＤ（識別番号）が登録される。
ピークｉｏｐｓ１３００ｃには、論理ボリュームごとに観測されたピークのｉｏｐｓ値が設定される。例えば、過去１週間あるいは過去１か月という期間に観測されたｉｏｐｓのピーク値を残しておく。
【００９９】
アクセス負荷が高い時間帯１３００ｄは、観測情報として測定されたｉｏｐｓ値を時間帯別に分類し、アクセス負荷が高い時間帯を算出した結果が登録される。なお、ここでは、アクセス負荷が高いとは、「その時間帯において、各論理ボリュームについて検出されたｉｏｐｓがピーク値の半分以上の値を継続している状態」と定義する。また、ここで示す時間帯は、Ａが０〜５時台（０：００〜５：５９、以下同様）、Ｂが６〜１１時台、Ｃが１２〜１７時台、Ｄが１８〜２３時台を表している。
【０１００】
アクセスパターン１３００ｅには、観測情報として測定されたｉｏサイズの分布に基づき判定される２種類のアクセス特徴のうちのいずれかが登録される。Ｆｉｌｅｓｅｒｖｅｒ型は、ファイルサーバのアクセスによく使われるアクセスパターンで、比較的小さいサイズのリード／ライト要求が行われる。Ｂａｃｋｕｐ型は、バックアップ時のデータセーブなどのアクセスによく使われるアクセスパターンで、比較的大きいサイズでリード／ライト要求が行われる。リード／ライト要求のパケットに含まれる要求サイズを解析し、所定の期間のｉｏサイズの分布を得る。そして、得られたいｉｏサイズの分布から、どちらのアクセスパターンであるかを判定する。これらの処理はパケットアナライザ４００で行い、割当制御部１１０は結果だけ得るとしてもよい。
【０１０１】
例えば、最上行は、ＤＰグループ０には、論理ボリューム「ＬＶＯＬ０」が割り当てられ、そのピークｉｏｐｓとして「３００」が観測されたことを示している。また、この論理ボリュームについてアクセス負荷が高い時間帯は、Ｂ（６〜１１時台）とＣ（１２〜１７時台）であり、昼間のアクセスが多いことを示している。また、アクセスパターンは、Ｆｉｌｅｓｅｒｖｅｒ型である。
【０１０２】
このような観測情報を解析して得られた論理ボリュームのアクセス特徴に基づいて、再割当処理を行うことができる。それぞれの特徴項目について順に説明する。
ピークｉｏｐｓ１３００ｃからは、論理ボリュームに発生した最大のアクセス負荷がわかる。このピークｉｏｐｓの値と、論理ボリュームが割り当てられたＤＰグループの上限ｉｏｐｓとを比較すれば、このＤＰグループが論理ボリュームのアクセス負荷が最大となったときに、レスポンス悪化などが起きないかどうかを予測することができる。また、ピークｉｏｐｓの値が、対応するＤＰグループの上限ｉｏｐｓを超えたときは、ホットスポットが発生していると見なせる。これにより、パケットアナライザ４００からの通知を受けなくてもホットスポットを検出することができる。
【０１０３】
論理ボリュームのピークｉｏｐｓが、対応するＤＰグループの上限ｉｏｐｓを超えたときは、ホットスポットが検出されたときと同様に、再割当処理を行う。
図１５は、ピークｉｏｐｓが上限ｉｏｐｓを超えたときの再割当処理を示した図である。
【０１０４】
ここでは、図１２に示した割当状態で運用中に、論理ボリュームＬＶＯＬ０（５２０）のピークｉｏｐｓがｉｏｐｓ＝７００と観測されたとする。
制御ノード１００では、観測に基づく論理ボリュームＬＶＯＬ０（５２０）のピークｉｏｐｓ（ｉｏｐｓ＝７００）と、対応するＤＰグループ０（２１０）の上限ｉｏｐｓ（ｉｏｐｓ＝５００）とを比較する。ピークｉｏｐｓが、上限ｉｏｐｓを超えているので、論理ボリュームＬＶＯＬ０（５２０）に対し、新たなＤＰグループを論理ボリュームＬＶＯＬ０（５２０）に割り当て、論理ボリュームＬＶＯＬ０（５２０）の一部の論理スライスを新たに割り当てたＤＰグループに移動させる。この例では、論理ボリュームＬＶＯＬ０（５２０）を、スライス群（Ｌ０−１，Ｌ０−２，Ｌ０−３）５２０ｅと、スライス群（Ｌ０−３，Ｌ０−４，Ｌ０−５）５２０ｆとに分ける。そして、スライス群５２０ｆに新たなＤＰグループ１（２２０）に移動させる。
【０１０５】
このように、観測されたピークｉｏｐｓが割り当てられたＤＰグループの上限ｉｏｐｓを超えたときは、この論理ボリュームの少なくとも一部を他のＤＰグループに移す。これにより、論理ボリュームに先に割り当てられたＤＰグループと、新たに割り当てられたＤＰグループの双方で、ピークｉｏｐｓを上限ｉｏｐｓより下げることができる。このように、何らかの事情によりアクセス負荷が増大しても、アクセス負荷を軽減するように再割当が行われ、所望の性能を保つことができる。
【０１０６】
図１６は、ピークｉｏｐｓが上限ｉｏｐｓを超えたときの再割当処理後のグループ管理情報を示した図である。
グループ管理情報（割当情報）１２０３は、図１３に示したグループ管理情報１２０２の状態から、図１５に示した再割当処理が行われた後の状態を表している。
【０１０７】
論理ボリュームＬＶＯＬ０は、ＤＰグループ０と、ＤＰグループ１とに分かれて割り当てられている。この例では、ＤＰグループ０に、論理ボリュームＬＶＯＬ０の論理スライスＬ０−１，Ｌ０−２，Ｌ０−３が割り当てられていることが登録されている。また、ＤＰグループ１に、論理ボリュームＬＶＯＬ０の論理スライスＬ０−３，Ｌ０−４，Ｌ０−５が割り当てられていることが登録されている。なお、予定ｉｏｐｓは、観測されたピークｉｏｐｓ（ｉｏｐｓ＝７００）の半分の３５０としているが、必要に応じて管理者が設定する。
【０１０８】
なお、ここでは、ピークｉｏｐｓが上限ｉｏｐｓを超えたＤＰグループには、論理ボリュームが１つしか割り当てられていなかったので、論理ボリュームを分割して割り当てた。しかし、複数の論理ボリュームが割り当てられているときは、いずれかの論理ボリュームを別のＤＰグループに移動させる処理を先に行う。
【０１０９】
図１４に戻って説明する。
アクセス負荷が高い時間帯１３００ｄからは、その論理ボリュームについてアクセス負荷が高くなる時間帯がわかる。同一ＤＰグループに割り当てるときは、アクセス負荷が高くなる時間帯が異なる論理ボリュームを組み合わせると、アクセス負荷のピークの時間が重なり、レスポンスが悪化する事態を避けることができる。
【０１１０】
例えば、ＤＰグループ０には、論理ボリュームＬＶＯＬ０（ピークｉｏｐｓ＝３００）が割り当てられている。ＤＰグループの上限ｉｏｐｓは、ｉｏｐｓ＝５００であるので、論理ボリュームＬＶＯＬ１（ピークｉｏｐｓ＝１００）、またはＬＶＯＬ２（ピークｉｏｐｓ＝１００）をＤＰグループ０に割り当てることができる。この場合、アクセス負荷が高い時間帯の異なる論理ボリュームＬＶＯＬ１を選択すると、アクセス負荷のピーク時間がずれ、アクセス負荷が高くなる事態を防ぐことができる。
【０１１１】
アクセスパターン１３００ｅからは、その論理ボリュームへのアクセスは、どのようなパターンが多いのかを知ることができる。一般に、同じＤＰであれば、リード／ライト要求のｉｏサイズが同程度である方が処理の効率が高い。したがって、同一ＤＰグループに割り当てるときは、アクセスパターンが同じ論理ボリュームを組み合わせれば、性能を上げることができる。
【０１１２】
例えば、ＤＰグループ０には、論理ボリュームＬＶＯＬ０（アクセスパターン＝Ｆｉｌｅｓｅｒｖｅｒ）が割り当てられている。ＤＰグループの上限ｉｏｐｓは、ｉｏｐｓ＝５００であるので、論理ボリュームＬＶＯＬ１（ピークｉｏｐｓ＝１００）、またはＬＶＯＬ２（ピークｉｏｐｓ＝１００）をＤＰグループ０に割り当てることができる。この場合、アクセスパターンがＢａｃｋｕｐ型である論理ボリュームＬＶＯＬ１よりも、アクセスパターンがＦｉｌｅｓｅｒｖｅｒ型である論理ボリュームＬＶＯＬ２を選択する。これにより、アクセス処理の効率がよくなる。
【０１１３】
以上のように、割当処理が行われた後も、システムのアクセス状態を観測し、観測結果に基づいて再割当処理を行うことにより、継続的に性能を維持することができる。また、解析されたアクセス特徴に基づいて再割当を行うことにより、より高い性能を実現できる。
【０１１４】
次に、割当制御装置１００で実行される割当制御方法について、フローチャートを用いて説明する。
最初に、電源が投入されたときの処理について説明する。初期化処理では、ＤＰがグループ化されていなければ、ＤＰのグループ分け処理を行う。
【０１１５】
図１７は、電源投入時の処理の手順を示したフローチャートである。
電源が投入され、処理が開始される。この時点までに、予めＤＰグループを生成するグループ分けルールが定義され、ルール記憶部１２０に格納されているとする。
【０１１６】
［ステップＳ０１］  ＤＰ群２００の各ＤＰからＤＰの情報（ピークｉｏｐｓ、ＲＡＩＤ種類など）を取得する。立ち上がり時に、ＤＰから自動的に通知される情報を取得するとしてもよい。取得した情報は、ＤＰ管理情報１０００に登録しておく。
【０１１７】
［ステップＳ０２］  グループ管理情報１２００を読み出し、ＤＰ群２００のグループ分けが行われているかどうかを判定する。グループ分けが未完であれば、処理をステップＳ０３に進める。グループ分けが完了していれば、処理をステップＳ０５に進める。
【０１１８】
［ステップＳ０３］  グループ分けが未完であれば、グループ分け処理を開始する。ルール記憶部１２０に格納されるグループ分けのルールを読み出す。グループ分けのルールには、グループの台数、上限ｉｏｐｓ、ＲＡＩＤ種類など、グループ分けの条件が定義されている。
【０１１９】
［ステップＳ０４］  ステップＳ０３で読み出したグループ分けのルールに従って、ＤＰ群２００をグループ分けする。４ＤＰ単位でグループ分けするというルールであれば、ＤＰを４台ずつまとめ、グループを形成する。６００ｉｏｐｓ単位でグループ分けするというルールであれば、グループに属するＤＰのｉｏｐｓの合計が６００を超えるようにグループ分けする。また、ＲＡＩＤ単位であれば、ＲＡＩＤ種類が同じものを同じグループに分ける。これらのルールは、組み合わせて設定することもできる。生成されたグループに関する情報は、グループ管理情報１１００に登録する。グループ管理情報１１００には、グループに属するＤＰの識別情報とともに、グループごとに算出した上限ｉｏｐｓを登録しておく。こうしてグループ分けが終了したら、処理を終了する。
【０１２０】
［ステップＳ０５］  グループ分けが完了していれば、グループ管理情報１１００からグループ構成を読み出す。
［ステップＳ０６］  ＤＰグループに登録されるＤＰの正常を確認したら、そのＤＰグループを有効化し、論理ボリュームの割り当てを可能にする。ＤＰが正常であるかどうかは、ＤＰからの応答を受け取ることができたかどうかで判定する。ＤＰグループを有効化し、処理を終了する。
【０１２１】
以上の処理手順により、グループ分けが未完であれば、グループ分けのルールに基づいてＤＰがグループ分けされて利用可能になる。一方、グループ分けが終了していればグループ管理情報に基づいて登録されているＤＰグループが有効化され、利用可能になる。
【０１２２】
以降の処理では、生成されたグループ単位で論理ボリュームのスライス割当処理が行われる。
次に、論理ボリュームへのスライス割当処理について説明する。論理ボリュームのスライス割当は、グループ単位に割当が行われる。
【０１２３】
図１８は、論理ボリュームへのスライス割当処理の手順を示したフローチャートである。管理ノード７００を介してシステム管理者から論理ボリューム（図では、ＬＶＯＬとする）のスライス割当指示を受信し、処理が開始される。
【０１２４】
［ステップＳ１１］  管理ノード７００から論理ボリューム割当コマンドを受信する。論理ボリューム割当コマンドには、対象の論理ボリュームの識別情報が含まれる。
［ステップＳ１２］  ステップＳ１１で取得したコマンドに含まれる対象の論理ボリュームに関する論理ボリューム情報を取得する。論理ボリューム情報は、例えば、この論理ボリュームを管理するアクセスノードから取得する。この論理ボリューム情報には、少なくとも、論理ボリュームの容量と、ピークｉｏｐｓとが含まれる。ピークｉｏｐｓは、過去の実績などに基づいて、システム管理者によって定義されている。
【０１２５】
［ステップＳ１３］  ルール記憶部１２０に割当ルールが定義されている場合は、割当ルールに基づいて、割当可能なグループを検索する。特にルールがないときは、ステップＳ１２で取得した論理ボリュームの容量及びピークｉｏｐｓと、各グループの物理記憶領域の容量及び上限ｉｏｐｓと、を照合し、割当可能なグループを検索する。グループの物理記憶容量が論理ボリュームの容量よりも大きく、かつ、グループの上限性能が論理ボリュームのピークｉｏｐｓより高いグループを検索する。
【０１２６】
［ステップＳ１４］  ステップＳ１３における検索条件に該当するグループがあったかどうかを判定する。あったときは、処理をステップＳ１５に進める。なかったときは、処理をステップＳ１７に進める。
【０１２７】
［ステップＳ１５］  条件を満たすグループまたはグループ群が検出されたときは、論理ボリュームの論理スライスに、検出されたグループまたはグループ群に属するＤＰのスライスを割り当てる。このときのスライス割当は、論理スライスがグループまたはグループ群に属するＤＰに分散配置されるように、例えば、ラウンドロビン方式で行われる。
【０１２８】
［ステップＳ１６］  割当成功の通知を、割当要求を行った管理ノード７００へ返信し、処理を終了する。
［ステップＳ１７］  条件を満たすグループが検出されなかったときは、ＤＰグループを複数組み合わせて検索を行う。組み合わされたグループ群の容量の合計、上限ｉｏｐｓの合計を、このグループ群の容量及び上限ｉｏｐｓとして、ステップＳ１３と同様の検索処理を行う。
【０１２９】
［ステップＳ１８］  ステップＳ１７における検索条件に該当するグループ群があったかどうかを判定する。あったときは、処理をステップＳ１５に進める。なかったときは、処理をステップＳ１９に進める。
【０１３０】
［ステップＳ１９］  割当失敗の通知を、割当要求を行った管理ノード７００へ返信し、処理を終了する。
以上の処理手順が実行されることにより、論理ボリュームにＤＰグループまたはＤＰグループ群が割り当てられ、割り当てられたＤＰグループまたはＤＰグループ群の全スライスを最大領域として、スライス割当が行われる。これにより、論理ボリュームにホットスポットなどが発生した場合であっても、別のグループに割り当てられた論理ボリュームには影響が及ばない。
【０１３１】
続いて、観測情報に基づいて再割当が必要となった場合の再割当処理について説明する。
図１９は、再割当処理の手順を示したフローチャートである。
【０１３２】
パケットアナライザ４００から観測情報を取得して処理が開始される。
［ステップＳ２１］  パケットアナライザ４００から観測情報を取得する。パケットアナライザ４００からは、定期的に送信される観測データに加え、パケットアナライザ４００が検出したホットスポットの発生通知も観測情報として送られてくるとする。
【０１３３】
［ステップＳ２２］  ステップＳ２１で取得した観測情報が、ホットスポット発生の通知であるかどうかを判定する。ホットスポット発生の通知には、ホットスポットが発生した論理ボリューム、スライス番号、ホットスポットの大きさ（ｉｏｐｓ）が含まれる。ホットスポット発生の通知であれば、処理をステップＳ２３に進める。ホットスポット発生の通知でなければ、処理をステップＳ２５に進める。
【０１３４】
［ステップＳ２３］  取得した観測情報がホットスポット発生の通知であれば、通知に基づいて対応するＤＰグループを特定する。例えば、通知を受けた論理ボリュームに対応するＤＰグループを、グループ管理情報（割当情報）１２００を検索して抽出する。
【０１３５】
［ステップＳ２４］  ホットスポット発生の通知に含まれるホットスポットの大きさ（ｉｏｐｓ）と、ステップＳ２３で特定されたグループの上限ｉｏｐｓとを比較し、ホットスポットの負荷が大きければ、再割当を行う。再割当は、ステップＳ２３で特定されたグループのホットスポット以外のスライスに割り当てられた論理スライスを、別ＤＰグループのスライスへ移動させる。このとき、少なくとも移動するスライス分のアクセス負荷が減ったとき、このグループのピークｉｏｐｓ（ホットスポット発生時のｉｏｐｓから移動スライス分を除いた値）が、上限ｉｏｐｓを超えなくなる分のスライスを移動させる。移動完了で、処理を終了する。
【０１３６】
［ステップＳ２５］  取得した観測情報がホットスポット発生の通知でないときは、観測情報から、グループごとのピークｉｏｐｓを算出する。
［ステップＳ２６］  ステップＳ２５で算出されたピークｉｏｐｓと、ＤＰグループの上限ｉｏｐｓとを比較する。ピークｉｏｐｓがＤＰグループの上限ｉｏｐｓより高いときは、処理をステップＳ２７に進める。ピークｉｏｐｓが上限ｉｏｐｓより高くないときは、処理をステップＳ２８に進める。
【０１３７】
［ステップＳ２７］  ピークｉｏｐｓがＤＰグループの上限ｉｏｐｓより高いときは、同じＤＰグループのスライスに割り当てられた論理スライスを、別ＤＰグループのスライスへ移動させる。このとき、少なくとも移動するスライス分のアクセス負荷が減ったとき、このグループのピークｉｏｐｓが、上限ｉｏｐｓを超えなくなる分のスライスを移動させる。また、一部のスライスでなく、論理ボリューム全体を移動させるとしてもよい。特に、同じＤＰグループに複数の論理ボリュームが割り当てられているときは、どちらか一方の論理ボリュームを移動させる。
【０１３８】
［ステップＳ２８］  全ＤＰグループの処理が終了したかどうかを判定する。終了していないときは、ステップＳ２６に戻って、未処理のＤＰグループの処理を行う。全ＤＰグループの処理が終了したときは、処理を終了させる。
【０１３９】
以上の処理手順が実行されることにより、ＤＰグループの上限性能を超えるアクセス負荷がかかったとき、このグループに割り当てられたスライスを他のＤＰグループに移動させる。こうして、割り当てられた論理ボリュームのアクセス負荷が、ＤＰグループの上限性能を超えないように調整する。
【０１４０】
なお、上記の処理機能は、コンピュータによって実現することができる。その場合、割当制御装置が有すべき機能の処理内容を記述したプログラムが提供される。そのプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。
【０１４１】
プログラムを流通させる場合には、例えば、そのプログラムが記録されたＤＶＤ（Digital Versatile Disc）、ＣＤ−ＲＯＭ（Compact Disc）などの可搬型記録媒体が販売される。また、プログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することもできる。
【０１４２】
プログラムを実行するコンピュータは、例えば、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、自己の記憶装置に格納する。そして、コンピュータは、自己の記憶装置からプログラムを読み取り、プログラムに従った処理を実行する。なお、コンピュータは、可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することもできる。また、コンピュータは、サーバコンピュータからプログラムが転送されるごとに、逐次、受け取ったプログラムに従った処理を実行することもできる。
【０１４３】
以上の実施の形態に関し、さらに以下の付記を開示する。
（付記１）  論理ボリュームをストレージ管理装置群が管理する物理記憶領域に分散配置する割当処理のための割当制御プログラムにおいて、
コンピュータを、
各ストレージ管理装置が管理する物理記憶領域に関する情報と、前記ストレージ管理装置及び該ストレージ管理装置に対応するストレージ装置の所定の性能情報とを含む前記ストレージ管理装置に関するストレージ管理情報と、グループ分けのルールを定義したグループ定義と、に基づいて前記ストレージ管理装置群をグループ分けし、グループごとに該グループに属するストレージ管理装置の前記ストレージ管理情報に基づいて前記所定の性能に関する該グループの上限性能を含む該グループに関するグループ管理情報を生成し、記憶手段に格納するグループ分け手段、
前記物理記憶領域の割当対象である対象論理ボリュームについて、前記対象論理ボリュームの容量と、前記対象論理ボリュームに予測される前記所定の性能に関する予測性能値とを含む論理ボリューム情報を取得すると、前記論理ボリューム情報及び前記グループ管理情報に基づいて前記対象論理ボリュームの割当が可能な前記物理記憶領域が確保できるとともに前記グループの上限性能が前記対象論理ボリュームの予測性能値よりも高い前記グループを選択し、該グループ内の前記物理記憶領域に前記対象論理ボリュームの分割領域を割り当てる割当手段、
として機能させることを特徴とする割当制御プログラム。
【０１４４】
（付記２）  前記割当手段として、前記対象論理ボリュームの分割領域を、前記対象論理ボリュームに選択された前記グループに属する前記ストレージ管理装置に対し均等に割り当てさせる、ことを特徴とする付記１記載の割当制御プログラム。
【０１４５】
（付記３）  前記論理ボリュームの予測性能値は、予め前記論理ボリュームを実際に動作させて観測された前記論理ボリュームの性能に基づいて算出される、ことを特徴とする付記１記載の割当制御プログラム。
【０１４６】
（付記４）  前記グループ分け手段は、前記グループに属する前記ストレージ管理装置のアクセス処理能力に関する性能情報に基づいて、前記グループのアクセス上限性能を算出し、
前記割当手段は、前記対象論理ボリュームに必要なアクセス処理能力に関する予測性能値を取得し、前記対象論理ボリュームの予測性能値と、それぞれの前記グループについて算出された前記アクセス上限性能とを比較し、前記対象論理ボリュームに必要なアクセス処理能力よりも高い前記アクセス上限性能を有する前記グループを選択する、
ことを特徴とする付記１記載の割当制御プログラム。
【０１４７】
（付記５）  前記コンピュータを、
前記ストレージ管理装置のアクセス処理の状況を観測する観測手段から所定の物理記憶領域にアクセスが集中している状態が検出されたことが通知されたときは、前記グループ管理情報に基づいて、前記観測手段がアクセス集中を検出した前記所定の物理記憶領域に対応する前記グループ及び前記論理ボリュームを特定し、前記論理ボリュームの再割当が可能な前記物理記憶領域が確保できる前記グループを新たに選択し、選択された前記グループ内の未割当の前記物理記憶領域に、前記論理ボリュームの一部もしくはすべての分割領域を再割当する再割当手段、
として機能させることを特徴とする付記１記載の割当制御プログラム。
【０１４８】
（付記６）  前記コンピュータを、
前記ストレージ管理装置のアクセス処理の状況を観測する観測手段が生成した観測情報を取得して前記グループごとにまとめ、前記グループごとに前記観測情報を解析して前記所定の性能に関する前記グループの観測値を算出し、前記グループ管理情報に関連付けて前記記憶手段に格納する解析手段として機能させ、
前記再割当手段として、前記グループごとに、前記ストレージ管理情報に定義される前記ストレージ管理装置及び該ストレージ管理装置に対応するストレージ装置の所定の性能情報に基づいて算出される前記グループの上限性能と、前記解析手段が算出した前記グループの観測値とを比較し、前記グループの観測値が前記グループの上限性能を超えたときは、該グループに割り当てられた前記論理ボリュームの再割当を行わせる、ことを特徴とする付記５記載の割当制御プログラム。
【０１４９】
（付記７）  前記解析手段として、所定の期間における前記観測情報を解析し、前記所定の期間における前記グループのアクセス処理回数に基づいて前記グループにアクセスが発生した観測アクセス数を算出させ、
前記再割当手段として、前記ストレージ装置の前記アクセス処理能力が定義される前記ストレージ管理情報に基づいて前記グループごとに算出される前記グループのアクセス上限性能と、前記解析手段が算出した観測アクセス数とを比較し、前記観測アクセス数が前記グループのアクセス上限性能を超えたときに、該グループに割り当てられた前記論理ボリュームの再割当を行わせる、ことを特徴とする付記６記載の割当制御プログラム。
【０１５０】
（付記８）  前記解析手段として、前記観測情報に基づいて前記論理ボリュームへのアクセス傾向を解析し、解析によって抽出されたアクセス特徴を前記記憶手段に記憶させ、
前記割当手段及び前記再割当手段として、前記対象論理ボリュームに前記グループを選択する際に、該対象論理ボリュームの前記アクセス特徴に基づいて前記グループを選択し、該グループ内の前記物理記憶領域に前記対象論理ボリュームの分割領域を割り当てさせる、
ことを特徴とする付記６記載の割当制御プログラム。
【０１５１】
（付記９）  前記解析手段として、前記観測情報に基づき、前記グループごとに検出されたアクセスの回数を時間帯別に分類して時間帯別のアクセス傾向を解析させ、
前記再割当手段として、複数の前記論理ボリュームを同じ前記グループに割り当てるときは、前記時間帯別のアクセス傾向が異なる前記論理ボリュームを組み合わせた論理ボリューム群を前記グループに割り当てさせる、
ことを特徴とする付記８記載の割当制御プログラム。
【０１５２】
（付記１０）  前記解析手段として、前記観測情報に基づき、前記グループごとに検出されたアクセスを処理サイズに応じたアクセスパターンで分類してアクセスパターン別のアクセス傾向を解析させ、
前記再割当手段として、複数の前記論理ボリュームを同じ前記グループに割り当てるときは、前記アクセスパターンが同じ前記論理ボリュームを組み合わせた論理ボリューム群を前記グループに割り当てさせる、
ことを特徴とする付記８記載の割当制御プログラム。
【０１５３】
（付記１１）  論理ボリュームをストレージ管理装置群が管理する物理記憶領域に分散配置する割当処理を行う割当制御装置において、
各ストレージ管理装置が管理する物理記憶領域に関する情報と、前記ストレージ管理装置及び該ストレージ管理装置に対応するストレージ装置の所定の性能情報とを含む前記ストレージ管理装置に関するストレージ管理情報と、グループ分けのルールを定義したグループ定義とが記憶される記憶手段と、
前記ストレージ管理情報及び前記グループ定義に基づいて前記ストレージ管理装置群をグループ分けし、グループごとに該グループに属するストレージ管理装置の前記ストレージ管理情報に基づいて前記所定の性能に関する該グループの上限性能を含む該グループに関するグループ管理情報を生成して前記記憶手段に格納するグループ分け手段と、
前記物理記憶領域の割当対象である対象論理ボリュームについて、前記対象論理ボリュームの容量と、前記対象論理ボリュームに予測される前記所定の性能に関する予測性能値とを含む論理ボリューム情報を取得すると、前記論理ボリューム情報及び前記グループ管理情報に基づいて前記対象論理ボリュームの割当が可能な前記物理記憶領域が確保できるとともに前記グループの上限性能が前記対象論理ボリュームの予測性能値よりも高い前記グループを選択し、該グループ内の前記物理記憶領域に前記対象論理ボリュームの分割領域を割り当てる割当手段と、
を有することを特徴とする割当制御装置。
【０１５４】
（付記１２）  論理ボリュームをストレージ管理装置群が管理する物理記憶領域に分散配置する割当制御方法において、
コンピュータが、各ストレージ管理装置が管理する物理記憶領域に関する情報と、前記ストレージ管理装置及び該ストレージ管理装置に対応するストレージ装置の所定の性能情報とを含む前記ストレージ管理装置に関するストレージ管理情報と、グループ分けのルールを定義したグループ定義と、に基づいて前記ストレージ管理装置群をグループ分けし、グループごとに該グループに属するストレージ管理装置の前記ストレージ管理情報に基づいて前記所定の性能に関する該グループの上限性能を含む該グループに関するグループ管理情報を生成し、記憶手段に格納する手順と、
前記物理記憶領域の割当対象である対象論理ボリュームについて、前記対象論理ボリュームの容量と、前記対象論理ボリュームに予測される前記所定の性能に関する予測性能値とを含む論理ボリューム情報を取得すると、前記論理ボリューム情報及び前記グループ管理情報に基づいて前記対象論理ボリュームの割当が可能な前記物理記憶領域が確保できるとともに前記グループの上限性能が前記対象論理ボリュームの予測性能値よりも高い前記グループを選択し、該グループ内の前記物理記憶領域に前記対象論理ボリュームの分割領域を割り当てる手順と、
を有することを特徴とする割当制御方法。
【符号の説明】
【０１５５】
１０  割当制御装置
１１ａ  グループ定義記憶手段
１１ｂ  管理情報記憶手段
１２  グループ分け手段
１３  割当手段
１４  割当指示手段
１５  解析手段
１６  再割当手段
２０，２１，２２，２３，２９  ストレージ管理装置
３０，３１，３２，３３，３９  ストレージ装置
【図１】
2010198056.tif 000003
【図２】
2010198056.tif 000004
【図３】
2010198056.tif 000005
【図４】
2010198056.tif 000006
【図５】
2010198056.tif 000007
【図６】
2010198056.tif 000008
【図７】
2010198056.tif 000009
【図８】
2010198056.tif 000010
【図９】
2010198056.tif 000011
【図１０】
2010198056.tif 000012
【図１１】
2010198056.tif 000013
【図１２】
2010198056.tif 000014
【図１３】
2010198056.tif 000015
【図１４】
2010198056.tif 000016
【図１５】
2010198056.tif 000017
【図１６】
2010198056.tif 000018
【図１７】
2010198056.tif 000019
【図１８】
2010198056.tif 000020
【図１９】
2010198056.tif 000021
【図２０】
2010198056.tif 000022