JP5395962B2 - 計算機システム、及びその管理方法、並びに、プログラム - Google Patents

計算機システム、及びその管理方法、並びに、プログラム Download PDF

Info

Publication number
JP5395962B2
JP5395962B2 JP2012548557A JP2012548557A JP5395962B2 JP 5395962 B2 JP5395962 B2 JP 5395962B2 JP 2012548557 A JP2012548557 A JP 2012548557A JP 2012548557 A JP2012548557 A JP 2012548557A JP 5395962 B2 JP5395962 B2 JP 5395962B2
Authority
JP
Japan
Prior art keywords
application
virtual volume
capacity
information
allocation
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
JP2012548557A
Other languages
English (en)
Other versions
JPWO2012081074A1 (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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Application granted granted Critical
Publication of JP5395962B2 publication Critical patent/JP5395962B2/ja
Publication of JPWO2012081074A1 publication Critical patent/JPWO2012081074A1/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/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • G06F3/0607Improving or facilitating administration, e.g. storage management by facilitating the process of upgrading existing storage systems, e.g. for improving compatibility between host and storage device
    • 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/0638Organizing or formatting or addressing of data
    • G06F3/0644Management of space entities, e.g. partitions, extents, pools
    • 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/0653Monitoring 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
    • 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/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]
    • 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
    • G06F2206/00Indexing scheme related to dedicated interfaces for computers
    • G06F2206/10Indexing scheme related to storage interfaces for computers, indexing schema related to group G06F3/06
    • G06F2206/1008Graphical user interface [GUI]

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)
  • Debugging And Monitoring (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Description

本発明は、計算機システム、及びその管理方法、並びに、プログラムに関し、例えば、1つ以上のメディア(記憶デバイス)の複数の記憶領域から構成されるストレージプールの容量を把握する技術に関するものである。
近年の各種業務のIT化に伴い、企業が保持するデータ数は増得続けている。このような状況で、SAN(Storage Area Network)によるストレージ集約が広く利用されつつある。
また、ストレージ管理コストを軽減する技術として、Thin Provisioningが注目を集めている。Thin Provisioningとは、ストレージがホストに対して仮想ボリュームを割り当て、かつ、ホストからのI/O要求に従って、動的かつ段階的に仮想ボリュームに対してストレージ内のディスク容量を割り当てる技術である。これにより、ホストに割り当てる全ボリュームに対して、ディスクを事前に購入することなく、ホストのストレージ利用状況(具体的には利用ディスクサイズ)を基に段階的にディスクを増強することができる。このようなThin Provisioningに関しては、ストレージ内部に複数のディスクから構成されたプールを構築し、このプールからホストに割り当てる仮想ボリュームを作成し、かつ、ホスト計算機からの当該仮想ボリュームへのI/O要求に伴いプール内のディスクを動的に割り当てる方法がある。このケースでは、プールを管理する必要がある。つまり、定期的にプールの空き容量を監視し、プールの容量枯渇によるI/Oエラーを防止する必要がある。
さらに、Thin Provisioningを拡張し、異なる物理特性のディスクの組合せでプールを構成し(例えばSSDとSATAディスク)、I/O頻度が高いデータを高速ディスク(例えばSSD)に配置し、I/O頻度が低いデータを低速ディスク(例えばSATA)に配置することもできる。この場合にもThin Provisioningのケースと同様にプールの空き容量を監視する必要がある。
特開2003−216460号公報
ところで、上述したThin Provisioningにおける従来のプール容量監視技術(従来方法)では、プールの容量枯渇タイミングを予測するため、過去のプールの容量消費傾向から将来の消費傾向を予測し、容量枯渇が発生する時期を予測している。
しかしながら、上記従来方法では、外的環境の変更については考慮されていない。つまり、従来方法では、過去のプールの容量消費傾向にのみ基づいて将来の消費傾向を予測していたため、既存プールから新規アプリケーションへのボリューム割り当て等の構成変更によるプール容量消費傾向の変化を予測できない。
また、従来方法で構成変更によるプール容量消費傾向の変化を予測する場合、新規ボリュームのプール容量消費傾向を予測可能になるまで履歴を取得する必要があり、ボリューム追加のタイミングでプール容量枯渇タイミングを把握することができない。
本発明はこのような状況に鑑みてなされたものであり、新規アプリケーションの追加や既存アプリケーションの特性変更等の外部環境の変化があっても適切にプール容量枯渇のタイミングを予測することができるプール容量監視技術を提供するものである。
上記課題を解決するために、プールの容量枯渇タイミングを予測するため、アプリケーションの追加等の外部環境変化がある度にプールを構成するメディア毎の消費量を予測し、容量枯渇時期の予測を再計算する。また、仮想ボリュームを利用するアプリケーション毎のI/O消費傾向を、ストレージ内に貯めた過去の消費傾向からメディア毎に予測値を算出する。
即ち、本発明による計算機システムは、1つ以上の物理記憶デバイスの記憶領域を仮想ボリュームとしてホスト計算機に提供するストレージサブシステムと、ストレージサブシステムを管理する管理計算機と、を有している。そして、管理計算機は、アプリケーションが使用すべき仮想ボリュームの割り当てについての入力指示に応答して、アプリケーションとアプリケーション種別が同一或いは類似のアプリケーションが使用する仮想ボリュームの過去の消費容量動向に関する情報を取得し、当該消費容量動向に関する情報に基づいて、割当て予定の仮想ボリュームおける消費容量を予測する。
本発明によれば、新規アプリケーションの追加や既存アプリケーションの特性変更等の外部環境の変化があっても適切にプール容量枯渇のタイミングを予測することができるようになる。
なお、上述した以外の課題、構成及び効果は、以下の本発明を実施するための形態および添付図面によって明らかになるものである。
本発明の実施形態による計算機システムの概略構成を示す図である。 ホスト計算機の内部構成を示す図である。 ストレージサブシステムの内部構成を示す図である。 RAIDグループ管理表の構成例を示す図である。 実領域管理表の構成例を示す図である。 仮想ボリューム(VVOL)管理表の構成例を示す図である。 階層定義表の構成例を示す図である。 プール−仮想ボリューム(VVOL)対応管理表の構成例を示す図である。 管理計算機の内部構成を示す図である。 アプリケーション名とアプリケーションタイプと仮想ボリュームIDの対応関係を示すマッピングテーブルの構成例を示す図である。 仮想ボリューム容量情報テーブルの構成例を示す図である。 プール容量予測テーブルの構成例を示す図である。 計算機システムにおける処理の全体的概要を説明するための図である。 アプリケーション情報入力画面(GUI)の構成例を示す図である。 階層管理表設定画面(GUI)の構成例を示す図である。 プール容量予測結果レポート画面の構成例を示す図である。 再配置処理を説明するためのフローチャートである。 管理計算機が実行する処理の概要について説明するためのフローチャートである。 アプリケーション追加時における、新規VOLへのPage割当て量予測エンジンの処理の詳細を説明するためのフローチャートである。 既存VOLへのPage割当て量予測エンジンの処理概要について説明するためのフローチャートである。 プールの各Tierの予測容量消費量算出処理(ステップ2001)の詳細を説明するためのフローチャートである。 プールの各Tierの容量消費量算出処理(ステップ2002)の詳細を説明するためのフローチャートである。 アプリケーション削除画面(GUI)の構成例を示す図である。 Tier毎の課金設定画面(GUI)の構成例を示す図である。 Tier毎の課金管理テーブルの構成例を示す図である。 プール容量予測結果レポート画面の構成例を示す図である。
以下、添付図面を参照して本発明の実施形態について説明する。ただし、本実施形態は本発明を実現するための一例に過ぎず、本発明の技術的範囲を限定するものではないことに注意すべきである。また、各図において共通の構成については同一の参照番号が付されている。
なお、以後の説明では「aaaテーブル」という表現にて本発明の情報を説明するが、これら情報は必ずしもテーブルによるデータ構造で表現されていなくても良く、リスト、DB、キュー等のデータ構造やそれ以外で表現されていても良い。そのため、データ構造に依存しないことを示すために「aaaテーブル」、「aaaリスト」、「aaaDB」、「aaaキュー」等について「aaa情報」と呼ぶことがある。
また、各情報の内容を説明する際に、「識別情報」、「識別子」、「名」、「名前」、「ID」という表現を用いることが可能であり、これらについてはお互いに置換が可能である。
以後の説明では「プログラム」「エンジン」「エージェント」を主語として説明を行うが、プログラム等はプロセッサによって実行されることで定められた処理をメモリ及び通信ポート(通信制御装置)を用いながら行うため、プロセッサを主語とした説明としてもよい。また、プログラムを主語として開示された処理は管理サーバ等の計算機、情報処理装置が行う処理としてもよい。プログラムの一部または全ては専用ハードウェアで実現してもよく、また、モジュール化されていても良い。各種プログラムはプログラム配布サーバや記憶メディアによって各計算機にインストールされてもよい。
<計算機システムの構成>
図1は、本発明の実施形態による計算機システム100の概略構成を示す図である。計算機システム100は、ホスト計算機101と、ストレージサブシステム102と、管理システム107と、を有している。ストレージサブシステム102とホスト計算機101とは、ストレージエリアネットワーク105によって接続されている。また、管理システム107とストレージサブシステム102及びホスト計算機101とは、管理用ネットワーク106によって接続されている。
管理システム107は、管理計算機103とWebブラウズ用計算機104を含む。なお、管理計算機103とWebブラウズ用計算機104とは、同じ計算機でもよく、また、それぞれ複数の計算機で同等の機能を実現していてもよい。管理システム107は、管理用ネットワーク106を介してストレージサブシステム102に制御要求を送信する。
ホスト計算機101は、管理用ネットワーク106を介して管理システム107にアクセス要求を送信する。
ストレージサブシステム102は、管理システム107から管理用ネットワーク106を介して制御要求を受信し、要求に従う処理を実行する。なお、本計算機システム100に含まれるホスト計算機101、ストレージサブシステム102、及び管理システム107は、それぞれ複数設置しても良い。
<ホスト計算機の構成>
図2は、ホスト計算機101の内部構成を示す図である。ホスト計算機101は、ストレージエリアネットワーク105との接続を実現するためのSANポート203と、管理用ネットワーク106との接続を実現するためのLANポート205と、メモリ202と、メモリ202およびSANポート203、LANポート205に接続されたCPU201と、を有する。
SANポート203は、ストレージエリアネットワーク105に接続されている。また、LANポートは管理用ネットワーク106に接続されている。
メモリ202には、1つ以上のアプリケーションプログラム204が格納されている。各アプリケーションプログラム204は、CPU201によって実行され、LANポート205、および管理用ネットワーク105を介して、ストレージサブシステム102にアクセス要求を送信する。
<ストレージサブシステムの構成>
図3は、ストレージサブシステム102の内部構成を示す図である。ストレージサブシステム102は、ディスク回転数等の物理特性の異なる複数の物理記憶デバイス305と、コントローラ312を有し、これらは内部バス等の回路を介して相互に接続されている。同種の物理記憶デバイス305が複数ある場合、それらはRAID構成を組んでいてもよい。RAID構成を組んでいる複数の物理記憶デバイス305は、RAIDグループ306を構成する。
コントローラ312は、ストレージエリアネットワーク105に接続するための少なくとも1つのSANポート302と、管理用ネットワーク106に接続するための少なくとも1つのLANポート303と、メモリ304と、それらに接続されたCPU301と、を有する。
SANポート302は、ストレージエリアネットワーク105に接続されるポートである。SANポート302は、ホスト計算機101からのアクセス要求を受信する。
LANポート303は、管理用ネットワーク106に接続されるポートである。LANポート303は、管理システム107からの制御要求を受信する。
メモリ304には、ストレージ制御プログラム307と、RAIDグループ管理表308と、実領域管理表309と、階層管理表310と、VVOL管理表311とストレージ情報取得エージェント313と、プール−仮想ボリューム対応管理表314と、が格納されている。
ストレージ情報取得エージェント313は、ストレージサブシステム102内コントローラ312より、ストレージサブシステム102から、各VOLについて、Tier毎の割当て容量の情報を取得するプログラムである。なお、取得する情報については後述する。
ストレージ制御プログラム307は、CPU301で実行されることにより、指定された管理システム107に対してのみ、後述する仮想ボリュームに対してアクセス可能とするアクセス制御処理とデータ書き込み処理と再配置処理を行う。
ストレージ制御プログラム307は次のようにデータ書き込み処理を実行する。つまり、まず、ストレージ制御プログラム307は、データ書き込み要求をホスト計算機101から受信すると、データ書き込み要求が有するアクセス先情報を基に、データを書き込む先の仮想領域(以下、書き込み先仮想領域)を特定する。
次に、ストレージ制御プログラム307は、書き込み先仮想領域に実領域が割り当てられているか否かを判断する。具体的には、書き込み先仮想領域がVVOL管理表311に登録されているか否かを判断する。
書き込み先仮想領域に実領域が割り当てられている場合、ストレージ制御プログラム307は、書き込み対象データを書き込み先仮想領域に割り当てられている実領域に書き込む。書き込み先仮想領域に実領域が割り当てられていない場合、ストレージ制御プログラム307は、書き込み先仮想領域に割り当てられる未割当の実領域が存在するか否かを判断する。具体的には、ストレージ制御プログラム307は、実領域管理表309の割当状況504が「未割当」である実領域が存在するか否かを判断する。
書き込み先仮想領域に未割当の実領域が存在する場合、ストレージ制御プログラム307は、書き込み先仮想領域に未割当の実領域を割り当てて、書き込み対象データを当該実領域に書き込む。
書き込み先仮想領域に未割当の実領域が存在しない場合、ストレージ制御プログラム307は、ホスト計算機101にエラーを送信する。
また、ストレージ制御プログラム307は書き込み先仮想領域がプールの構成要素であるかを判断する。プールの構成要素で合った場合はプールの識別子であるプールID2302と仮想ボリュームの識別子であるVVOLID2301の組の値をプールと仮想ボリュームとの対応管理表2301に書き込む。
最後に、ストレージ制御プログラム307は、書き込み元仮想領域に対応するアクセス数604の値を更新する。
<仮想ボリュームの実現方法>
ストレージ制御プログラム307は、後述する図4に示すように、複数の物理記憶デバイスからRAIDグループを構築する。ストレージ制御プログラム307は、ホスト計算機101から指定された仮想ボリュームを割当てる際、ボリュームサイズに対応した物理ディスクを当該ホスト計算機101に割当てるわけではなく、ボリュームの利用状況に応じて動的に物理ディスクを割当てる。以降では、このボリュームを仮想ボリューム(「VVOL」ともいう)と呼ぶこととする。
上述の仮想ボリュームを実現する方法として、ストレージ制御プログラム307は、まず、各RAIDグループを固定サイズ(例えば1000ブロック)に分割する。以降では分割した単位をセグメントと呼ぶ。また、ストレージ制御プログラム307は、後述する図5に示すように、各セグメントの割当て状況を把握し、ある仮想ボリュームに新規セグメントを割当てる際に、未割当セグメントを利用する。
なお、ストレージ制御プログラム307が実行する再配置処理については、後述する。
<RAIDグループ管理表308>
図4は、ストレージサブシステム102が有するRAIDグループ管理表308の構成例を示す図である。RAIDグループ管理表308は、RAIDグループ306の性能に関する情報を有する。
例えば、RAIDグループ管理表は、RAIDグループの識別子を表すRAIDグループID401と、RAIDグループを構成する物理記憶デバイスの種類を表すデバイス種別402と、RAIDグループのRAIDレベルおよびコンビネーションを表すRAIDレベル403と、RAIDグループを構成する物理記憶デバイスの識別子を表すPDEV_ID404と、を構成項目として含んでいる。なお、情報401〜404のうちの少なくとも1つに代えてまたは加えて、他種の情報が含まれていてもよい。
<実領域管理表309>
図5は、ストレージサブシステム102が有する実領域管理表309の構成例を示す図である。実領域管理表309は、各RAIDグループ306が持つ実領域が、仮想ボリュームに割当済か否かの情報を有する。
例えば、実領域管理表309は、実領域を持つRAIDグループの識別子を表すRAIDグループID501と、実領域の識別子を表す実領域ID502と、実領域に対応するRAIDグループのLBA範囲を表すRG_LBA範囲503と、実領域が割当済か否かを表す割当状況504と、を構成項目として含んでいる。
<VVOL(仮想ボリューム)管理表311>
図6は、ストレージサブシステム102が有するVVOL管理表311の構成例を示す図である。VVOL管理表311は、仮想ボリューム内の各仮想領域と、その仮想領域に割り当てられている実領域に関する情報を有する。
例えば、VVOL管理表311は、仮想ボリュームの識別子を表すVVOL ID601と、仮想ボリューム内の仮想領域に対応するLBA範囲を表すVVOL LBA範囲602と、仮想ボリューム内の仮想領域に割り当てられている実領域を表す実領域ID603と、仮想ボリューム内の仮想領域に対する、ホスト計算機101からのアクセス数(一定期間内での累計のI/O数)を表すアクセス数604と、後述する再配置処理(図17参照)において仮想ボリューム内の仮想領域にその階層内の実領域を割り当てるべきであると判定された当該階層の識別子を表す再配置判定結果605を構成項目として含んでいる。
上記VVOL管理表311において、VVOL_ID601は、ホスト計算機101から指定される識別子ではなく、ストレージサブシステム102の内部で認識される識別子を示す情報である。アクセス数604は、当該仮想領域に対するアクセス回数の値を持っており、ストレージサブシステム102は一定期間、例えば24時間ごとに、アクセス数604の値を0にリセットする。また、再配置判定結果605には、ストレージ制御プログラム307がTierの許容アクセス数を監視し、図7に示す階層管理表310の許容アクセス数範囲703の値に基づいて判定した結果を格納する。
なお、図6における再配置判定結果605は、再配置判定を実行した後であるが、再配置処理は実行していない状態での判定結果の情報を示している。従って、再配置判定結果605が示す階層の情報と、実領域ID603が示す領域が属するデバイスが属する階層が合致していないことに注意すべきである。再配置処理を実行した直後は、両者の情報は合致したものとなっている。
<階層定義表310>
図7は、ストレージサブシステム102が有する階層定義表310の構成例を示す図である。階層定義表310は、階層の性能及び許容するアクセス数の範囲に関する情報を有する。
例えば、階層定義表310は、階層毎に、階層の識別子を表す階層ID701と、階層の性能要件を表す性能要件702と、階層に対応した、単位時間当たりの許容アクセス数の範囲を表す許容IOPS範囲703と、を構成項目として含んでいる。階層定義表310において、階層の性能要件702は、例えば、物理記憶デバイスの種別と、RAIDグループのRAIDレベルとで定義される。
階層IDで特定される各階層701は、性能要件702を満たす物理記憶デバイスまたは/およびRAIDグループに属する実領域を要素に持っている。
なお、階層定義表310は、管理計算機103或いはホスト計算機101からの要求に応じて管理用ネットワークを介してストレージサブシステム102のLANポート303のメモリ304の階層管理表310に設定される。
<プール−仮想ボリューム対応管理表314>
図8は、プールと仮想ボリュームとの対応関係を管理する、プール−仮想ボリューム(VVOL)対応管理表314の構成例を示す図である。
例えば、プール−仮想ボリューム対応管理表314は、プールID3141と、VVOL_ID3142と、を構成項目として含んでいる。
プール−仮想ボリューム対応管理表314により、各プールがどの仮想ボリュームから構成されているかが分かる。例えば、プールAは、仮想ボリューム(VVOL)AとBとから構成されている。この情報は、ストレージ制御プログラム307によって取得され、必要な処理に用いられる。
<管理計算機の構成>
図9は、管理計算機103の内部構成を示すブロック図である。管理計算機103は、管理用ネットワーク106に接続するためのLANポート802と、構成管理プログラム804を実行するCPU801と、CPU801が用いるメモリ803とを有し、これらは内部バス等の回路を介して相互に接続されている。
メモリ803は、アプリケーション情報取得エンジン804と、プール容量予測エンジン805と、新規VOLへのPage割当て量予測エンジン806と、既存VOLへのPage割当て量予測エンジン807と、結果表示エンジン808と、Tier定義取得エンジン809と、ストレージ情報取得エンジン810を格納している。ここで、「エンジン」とはリクエストを出して所望の情報を取得するプログラムを意味し、特に断らない限り、「プログラム」と読み替えても良い。
また、管理計算機103は、記憶装置811と、表示装置813と、入力装置814を有している。記憶装置811はデータ格納用DB812を有している。
なお、管理計算機50が有する入力装置400の例としてキーボードとポインタデバイスが考えられるが、これ以外の装置であっても良い。また、表示装置401に代えて、或いはそれに加えて、それ以外の出力装置(例えば、プリンタ)を設けるようにしても良い。
入力装置及び表示装置(出力装置)の代替としてシリアルインターフェースやイーサーネットインターフェースを入出力装置とし、当該インターフェースにディスプレイ又はキーボード又はポインタデバイスを有する表示用計算機を接続し、表示用情報を表示用計算機に送信したり、入力用情報を表示用計算機から受信することで、表示用計算機で表示を行ったり、入力を受け付けることで入出力装置での入力及び表示を代替してもよい。
以後、計算機システム100を管理し、本願発明の表示用情報を表示する1つ以上の計算機の集合を管理システムと呼ぶことがある。管理計算機103が表示用情報を表示する場合は管理計算機103が管理システム107であり、また、管理計算機103とWebブラウズ用計算機(表示用計算機)104の組み合わせも管理システム107である。また、管理処理の高速化や高信頼化のために複数の計算機で管理計算機と同等の処理を実現してもよく、この場合は当該複数の計算機(表示を表示用計算機が行う場合は表示用計算機も含め)が管理システム107である。
(i)アプリケーション情報取得エンジン
アプリケーション情報取得エンジン804は、アプリケーション情報入力画面1301(図14参照)で入力したユーザが割当て予定のVOLとアプリケーションとの対応関係を取得し、管理計算機103の記憶装置811のデータ格納用DBに存在するアプリケーションとボリュームとのマッピングテーブル901に格納する。なお、マッピングテーブル901は、データ格納用DB812の中に含まれている。
アプリケーション情報取得エンジン804は、入力画面1301から入力された新規に追加されるアプリケーション名と、アプリケーションタイプと、仮想ボリュームの情報を取得し、それらをマッピングテーブル901(図10参照)に格納する。
マッピングテーブル901は、図10に示されるように、アプリケーション名902と、アプリケーションタイプ903と、仮想VOL_ID904と、を構成項目として含んでいる。このテーブルを確認することにより、どのようなアプリケーションがどの仮想ボリュームに割り当てられているか把握することができるようになっている。
なお、アプリケーション情報取得エンジン804の処理の延長で割当て予定のボリューム(VOL)をホスト計算機101に割当ててもよい。また、ユーザからの割当て指示の入力がなされて直ぐにVOLを割り当てても良いし、割当て予定のVOLをユーザから指示された指定期間経過後に割当てるというように予約できるようにしても良い。
(ii)Tier定義取得エンジン
Tier定義取得エンジン809は、階層管理表設定画面1401(図15参照)を用いてユーザが入力した情報を取得し、管理計算機103のLANポート802と管理用ネットワーク106とストレージサブシステム102のLANポート303を介してストレージサブシステム102のメモリ304内の階層管理表310に格納する。
より具体的には、Tier定義取得エンジン809は、例えばストレージサブシステム102のストレージ制御プログラム307と協働して、階層管理表310に対して、階層ID1402を階層ID701に、デバイス種別1403及びRAIDレベル1404を性能要件702に、許容アクセス数範囲1405を許容アクセス数範囲703に、それぞれ格納することになる。
(iii)ストレージ情報取得エンジン
ストレージ情報取得エンジン810は、定期的に管理計算機103のCPU801で実行される。実行時、ストレージ情報取得エンジン810は、ストレージサブシステム102のメモリ304のストレージ情報取得エージェント313から各VVOLについてTier毎の割当て容量を取得する。そして、ストレージ情報取得エンジン810は、取得した情報を、LANポート303と管理用ネットワーク106とLANポート802と記憶装置811を介して、データ格納用DB812内の仮想ボリューム容量情報テーブル1001へ格納する。
より具体的には、ストレージ情報取得エンジン810は、仮想ボリューム容量情報テーブル1001のVVOLID1004に、VOL管理表311のVVOL_ID601を格納する。また、ストレージ情報取得エンジン810は、VVOLのトータル容量をVVOL容量1005に、VVOLの各Tier利用量の情報をTier1利用量1006、Tier2利用量1007、及びTier3利用量1008に、データ収集した時刻を収集時間1002に、それぞれ格納する。さらに、ストレージ情報取得エンジン810は、当該VVOLが属するプール名をプール−仮想ボリューム対応管理表314のプールID3141から取得してプールID1003に格納する。
(iv)プール容量予測エンジン
プール容量予測エンジン805は、アプリケーション及びVVOLの追加または、既存のVVOLへのPage割当て、増加後のプールの容量を予測するエンジンである。具体的には、新規VOLへのPage割当て量予測エンジン806と既存VOLへのPage割当て量予測エンジン807を起動し、新規VOLへのPage割当て量予測エンジン806と既存VOLへのPage割当て量予測エンジン807が算出した値を合計した上で結果をプール容量予測テーブル1101(図12参照)に格納する。なお、本実施形態では、従来のPool単位での容量予測ではなく、各Tierについて容量予測を行うようにしている。
(v)新規VOLへのPage割当て量予測エンジン
新規VOLへのPage割当て量予測エンジン806は、アプリケーション情報入力画面1301のアプリケーション名1307とアプリケーションタイプ1308と予測期間1309の情報から、過去に導入済みの同一、同種或いはアプリケーションの利用するボリュームの消費傾向が類似するアプリケーション(以下、「類似等するアプリケーション」ということとする)の情報をアプリケーションとボリュームとのマッピングテーブル901から特定する。そして、新規VOLへのPage割当て量予測エンジン806は、導入当初から測期間1309で指定した期間分の過去のVVOLの容量消費傾向を仮想ボリューム容量情報テーブル1001から取得する。さらに、新規VOLへのPage割当て量予測エンジン806は、上記類似等するアプリケーションのVVOLの容量消費傾向から、各Tierの利用率を算出しプール容量予測エンジン805に算出した値を返す。なお、各Tierの利用率の算出方法については、図19を用いて後述する。
(vi)既存VOLへのPage割当て量予測エンジン
既存VOLへのPage割当て量予測エンジン807は、ストレージサブシステム102が管理する各プールについて、Tier毎の割当て済みPage数の履歴情報を仮想ボリューム容量情報テーブル1001から取得し、最尤推定法(例えば、最小二乗法)を用いて、アプリケーション情報入力画面1301で指定した予測期間1309後のプールの容量消費量を予測する。予測した算出結果をプール容量予測エンジン805に返す。なお、算出方法については、図20乃至22を用いて後述する。
(vii)結果表示エンジン
結果表示エンジン808は、プール容量予測エンジンが起動する。プール容量予測テーブル1101から、データを取得し、表示装置813にプール容量予測結果レポート画面1501を出力する。
<本システムにおける処理概要>
本実施形態によるストレージサブシステム102は、定期的に、ストレージサブシステム102が提供するプールと仮想ボリュームの構成情報と容量情報を収集する処理と、ユーザが指定するTierの階層管理を行うための入力情報を基にTierを再配置する処理と、を実行する。
プールは、複数の階層で構成されている。階層は、同じ性能を有する実領域の集合である。階層は例えば性能を表す特定の値によって定義され、その値が表す性能と同じ性能を有する実領域を内包する。階層は、他の階層と比較した高低の概念を持つ。階層の高さは、階層の性能の高さに依存する。なお、ここで言う「性能」とは、例えばアクセス性能であり、レスポンスタイム、あるいはデータ転送速度、IOPS(単位時間当たりに処理したアクセス要求の数)等が含まれる。アクセス要求の一例としてはライト要求又はリード要求がある。
各階層は、2以上の実領域で構成されている。したがって、プールは複数の実領域で構成されていると言うことができる。また、実領域は、物理記憶デバイスまたは/およびRAIDグループの記憶領域の一部である。階層の性能は、階層を構成する実領域の性能に依存する。実領域の性能は、例えば、当該実領域を有する物理記憶デバイスの種別、RAIDグループのRAIDレベル、または/およびRAIDグループに参加する記憶デバイスの数に依存する。物理記憶デバイスの種別として、例えば、SSDと、SAS−HDD、およびSATA−HDDがある。
仮想ボリュームは、複数の仮想領域(仮想的な記憶領域)で構成されている。各仮想領域には、それぞれ1つ以下の実領域が割り当てられている。なお、仮想領域には、実領域が割り当てられていなくてもよい。ストレージサブシステム102は、そのような仮想領域(未割当の仮想領域)に対するライト要求をホスト計算機から受けたときには、いずれの仮想領域にも割り当てられていない実領域(未割当の実領域)を、当該仮想領域に割り当てるようにする。
一方、管理計算機103は、ユーザが指定する追加すべきアプリケーションとVVOLの情報の情報を基に、アプリケーションが利用するVVOLの容量消費傾向を予測し、予測結果をレポーティング(出力)する処理を実行する。これらついては、データ構造と処理フローを中心にシステム全体の概略は図13を用いて説明する。図13は、本システムにおける処理の全体的概要を説明するための図である。
(i)追加すべきアプリケーションの情報入力からプール要領予測結果出力までの処理
管理システム107に表示されるアプリケーション情報入力画面1301から追加或いは、ボリュームの対応を変更するアプリケーションについての情報が入力されると、アプリケーション情報取得エンジン804は、その入力情報をアプリケーションとボリュームとのマッピングテーブル901に格納する。
そして、プール予測エンジン806は、新規VOLへのPage割当て量予測エンジン806及び既存VOLへのPage割当て量予測エンジン807を起動する。両エンジン896及び807はそれぞれの処理を実行し、実行結果をプール容量予測エンジン805に提供する。実行結果を受け取ったプール容量予測エンジン805は、当該プール容量予測結果をプール容量予測テーブル1101に格納すると共に、結果表示エンジン808を起動する。また、起動された結果表示エンジン808は、プール容量予測テーブル1101から該当するプール容量予測結果を取得し、プール容量予測結果レポート画面1501(図16参照)に表示する。
(ii)ストレージ情報取得処理
ストレージ情報取得エンジン810は、定期的にストレージサブシステム102内のデータをポーリングして各仮想ボリュームの容量を取得し、当該容量の情報を仮想ボリューム容量情報テーブル1001に格納する(図11参照)。
(iii)階層定義取得処理
管理システム107に表示される階層管理表設定画面1401(図15参照)を用いて設定された階層の情報が入力されると、階層定義取得エンジン809は、ストレージサブシステム102の階層管理表310に格納する。
<ストレージサブシステム102の定期的に実行するTier再配置処理>
管理計算機103は、定期的にTierの再配置処理の実行をストレージサブシステム102に定期的に指示する。例えば、1時間や30分毎に、当該仮想ボリューム内の仮想領域に対する実領域の割当状況を見直す。
管理計算機103は、当該仮想ボリューム内の各仮想領域について、仮想領域へのアクセス数が、当該仮想領域に割り当てられている実領域を有する階層に対応したアクセス数範囲を超えているか否かを判断する。管理システムは上記の判断の結果、範囲外であると判断した仮想領域に対して、当該仮想領域に割り当てられている実領域(以下、移行元の実領域)に代えて、当該仮想領域へのアクセス数が収まるアクセス数範囲に対応する階層内の実領域(以下、移行先の実領域)を割り当てる。具体的には、管理計算機103はストレージサブシステム102に、移行元の実領域のデータを移行先の実領域に移行するよう指示する。なお、ここで、仮想領域へのアクセス数とは、対象仮想領域の全てまたは一部について、アドレス範囲として指定し、処理が完了したアクセス要求数を意味する。
<再配置処理>
図17は、再配置処理の詳細を説明するためのフローチャートである。再配置処理は、VVOL管理表311のVVOLID601登録されている仮想ボリューム(以下、図17の説明において対象VVOL)に対して行う処理である。
(ステップ1700の処理内容)
管理計算機103は、一定時間毎(例えば30分毎や1時間毎)に、ストレージサブシステム102のストレージ制御プログラム307へ再配置処理の実行を要求する。
(ステップ1701の処理内容)
ストレージ制御プログラム307は、VVOL管理表311に登録される各VVOLID601のアクセス数604の値を取得し、各仮想領域のアクセス数604の値と階層管理表310の許容アクセス数範囲703とを突き合わせることで、現配置箇所が妥当かを判断した上で該当する階層ID701を特定する。この結果、記録された階層IDは、当該仮想領域に割り当てられている実領域を含む階層の階層IDと同じであることもあれば異なることもある。
(繰り返し処理)
次に、ストレージ制御プログラム307は、ステップ1701で取得したすべての仮想領域に対してステップ1703〜1708の処理を実行する。
(ステップ1703の処理内容)
ストレージ制御プログラム307は、現在対象仮想領域に割り当てられている実領域に対応する階層(「対象領域配置元階層」という)のIDとステップ1701で特定した再配置判定結果の値とが一致するか否かを判定する。具体的には、ストレージ制御プログラム307は、対象仮想領域に割り当てられている実領域のID603を基に、その実領域を含むRAIDグループのID501を特定し、そのRAIDグループに対応するデバイス種別402または/およびRAIDレベル403が適合する性能要件702に対応する階層ID701を特定する。特定した階層ID701と、ステップ1701で特定した再配置判定結果の値が一致するか否かを判定する。
対象領域配置元階層が配置されるべき階層の場合(ステップ1703でYesの場合)、対象の仮想領域のデータ移行は不要のため、対象の仮想領域に対する処理は終了する。一方、対象領域配置元階層が配置されるべき階層でない場合(ステップ1703でNoの場合)、処理はステップ1704に移行する。
(ステップ1704の処理内容)
ストレージ制御プログラム307は、実領域管理表309を基にステップ1701で特定した再配置判定結果の階層IDによって示される階層(「対象領域配置先階層」という)内に、未割当の実領域が存在するか否かを判定する。
配置されるべき階層に空きがある場合(ステップ1704でYesの場合)、処理はステップ1706に移行し、配置されるべき階層に空きがない場合(ステップ1704でNoの場合)、処理はステップ1705に移行する。
(ステップ1706の処理内容)
ストレージ制御プログラム307は、対象仮想領域に現在割り当てられている実領域(「データ移行元実領域」という)に代えて、対象領域配置先階層内の未割当の実領域(「データ移行先実領域」という)を割り当てる。具体的には、ストレージ制御プログラム307は、実領域管理表309の、データ移行元実領域に対応する割り当て状況309の値を未割当に更新し、データ移行先実領域に対応する割り当て状況309の値を割当済みに更新する。なお、本実施形態では、例えば、実領域と仮想領域は同じ容量で区切られるように管理され、移行元と移行先の容量を考慮する必要がないようになっている。
また、ストレージ制御プログラム307は、VVOL管理表311の、対象仮想領域に対応する実領域ID603の値を、データ移行先実領域のIDに更新する。また、ストレージ制御プログラム307はデータ移行元実領域からデータ移行先実領域にデータを移行する。
なお、ステップ1706の処理を行うと、他の仮想ボリュームの性能に影響を及ぼす場合がある。例えば、ある仮想ボリュームの再配置処理において、ステップ1706の処理を行った結果、性能が高い階層内の未割当実領域を全て使い切ってしまう場合がある。この場合、この後に再配置処理を行う仮想ボリューム内の仮想領域には、当該階層内の未割当実領域を割り当てることができない。したがって、当該階層内の実領域を割り当てるべきであると判定された仮想領域が存在する場合、後述するステップ1707および1708の処理のように、当該階層内の実領域が割り当てられている他の仮想領域と割り当て状況およびデータを入れ替えたり、性能が近い他の階層の実領域を割り当てたりすることとなり、性能に影響を及ぼす場合がある。本事象に対処するためには、例えば、再配置処理において、対象VVOLの仮想領域に未割当の実領域を割り当てることは行わず、常に対象VVOL内の他の仮想領域との入れ替えのみによって、対象VVOL内仮想領域への実領域割り当て状況の最適化を実現する方法が考えられる。再配置処理において未割当の実領域を使用するか否かは、例えば、各階層内において未割当である実領域の個数または/および割合によって、ストレージ制御プログラム307が判断する。より具体的には、ストレージ制御プログラム307は、ステップ1704の処理において、対象領域配置先階層内に未割当実領域が存在したとしても、その個数が対象領域配置先階層内の全実領域数の1割よりも少ない場合は、ステップ1706の処理ではなくステップ1705の処理に移行する。
(ステップ1705の処理内容)
ストレージ制御プログラム307は、対象仮想領域に割り当てられている実領域と、データを入れ替え可能な実領域が存在するか否かを判定する。具体的には、ストレージ制御プログラム307は、対象領域配置先階層内の割当済の実領域の中で、その実領域が割り当てられている仮想領域に対応するステップ1701で特定した再配置判定結果の階層IDが、対象領域配置元階層の階層IDと一致するものが存在するか否かを判定する。
入れ替え可能な実領域が存在する場合(ステップ1705でYesの場合)、処理はステップ1707に移行し、入れ替え可能な実領域が存在しない場合(ステップ1705でNoの場合)、処理はステップ1708に移行する。
(ステップ1707の処理内容)
ストレージ制御プログラム307は、対象仮想領域に割り当てられている実領域(以下、ステップ1707の説明において「対象実領域1」という)と、対象領域配置先階層が有する割当済実領域(以下、ステップ1707の説明において「対象実領域2」という)との間で、仮想領域への割り当て状況を入れ替える。具体的には、ストレージ制御プログラム307は、VVOL管理表311の実領域ID603において、対象実領域1のIDが格納されている箇所に対象実領域2のIDを格納し、対象実領域2のIDが格納されている箇所に対象実領域1のIDを格納する。また、ストレージ制御プログラム307は、対象実領域1と対象実領域2の間のデータの入れ替えを行う。例えば、ストレージ制御プログラム307は、下記の処理を行うことによりデータの入れ替えを実現する。なお、下記処理におけるキャッシュメモリ領域は、ストレージサブシステム102が有する未割当実領域でもよい。
手順1:ストレージ制御プログラム307は、対象実領域1内のデータをキャッシュメモリ領域に書く。
手順2:ストレージ制御プログラム307は、対象実領域2内のデータをキャッシュメモリ領域に書く。
手順3:ストレージ制御プログラム307は、対象実領域1のデータをキャッシュメモリ領域から対象実領域2に書き込む。
手順4:ストレージ制御プログラム307は、対象実領域2のデータをキャッシュメモリ領域から対象実領域1に書き込む。
(ステップ1708の処理内容)
ストレージ制御プログラム307は、対象階層に性能が最も近い階層内の未割当の実領域に、対象仮想領域に割り当てられている実領域内のデータを移行する。また、ストレージ制御プログラム307は、VVOL管理表311と実領域管理表309を更新する。
<管理計算機103が実行する全体的処理の概要>
図18は、本実施形態における管理計算機103が実行する全体的処理の概要について説明するためのフローチャートである。
(ステップ1801)
ユーザ(管理者)がアプリケーション情報入力画面1301(図14参照)にHost識別子1302と、Storage識別子1303と、PoolID1304と、VVOLID1305と、VVOLSIZE1306と、VVOLSIZE1307と、アプリケーション名1307と、アプリケーションタイプ1308と、予測期間1309の情報を入力し、実行1310を投下すると、アプリケーション情報取得エンジン804が入力された情報を取得する。なお、新規追加アプリケーション、或いは使用態様(使用ボリューム)を変更するアプリケーションの情報が入力され、実行ボタン1310が押下されると即時にプール容量予測処理を実行するようにしても良いが、ユーザの指定した期間後にプール容量予測処理を実行するようにしても良い。この場合、割当て予定の仮想ボリュームは、他のユーザが利用できないように予約する必要がある。また、上述のように、アプリケーションは新規追加や変更だけでなく、削除をして削除後のプール容量を予測するようにしても良い。以下、アプリケーションを追加する場合と削除する場合のアプリケーション情報入力(S1801)に付随する処理について説明する。
(i)アプリケーション追加の場合:アプリケーション追加指示に伴う仮想ボリュームの追加
アプリケーション情報の入力画面は図14に示したとおりである。また、アプリケーションを追加した場合には、マッピングテーブル901と、仮想ボリューム容量情報テーブル1001に情報が追加される。つまり、アプリケーション情報取得エンジン804は、アプリケーション追加画面1301に入力されたアプリケーション名1302とアプリケーションタイプ1303とVVOLID1304から、アプリケーションとボリュームとのマッピングテーブル901のアプリケーション名902とアプリケーションタイプ903とVVOLID904に該当する行を追加する。
また、ストレージ情報取得エンジン810は、VVOLID1304とPOOLID1305から、仮想ボリューム容量情報テーブル1001のプールID1003とVVOLID1004に該当する行を追加する。
そして、管理計算機103は、VVOLID1304に基づいて、管理用ネットワーク106を経由してストレージサブシステム102内のストレージ制御プログラム307に対して、VVOLID2004に対応する実領域管理表309の割当状況504を「割当」に変更するように指示する。より具体的には、当該指示を受けたストレージ制御プログラム307は、VVOL管理表311のVVOLID601とVVOLID2004が一致するVVOLLBA範囲602と実領域ID603を取得し、実領域管理表309の実領域ID502とRGLBA範囲503がVVOLLBA範囲602と実領域ID603に一致する割当状況504を「割当」に変更する。
(ii)アプリケーション削除の場合:アプリケーション削除に伴う仮想ボリュームの削除
上述したように、アプリケーションの新規追加に加えて、本実施形態では、アプリケーション削除に伴う割当て済み仮想ボリュームの削除も可能である。割当て済み仮想ボリュームを削除することで、対象プールの各Tier利用量の精度向上及び無駄な領域の解放が見込まれる。
アプリケーション削除の場合、アプリケーションに割り当てられる仮想ボリュームの削除を実現する。具体的には、図23に示すようにアプリケーション削除画面2001を作成し、削除対象のアプリケーション名2002とアプリケーションタイプ2003とVVOLID2004とPOOLID2005を入力し、実行2006を投下する。
アプリケーション情報取得エンジン804は、アプリケーション削除画面2001に入力されたアプリケーション名2002とアプリケーションタイプ2003とVVOLID2004から、アプリケーションとボリュームとのマッピングテーブル901のアプリケーション名902とアプリケーションタイプ903とVVOLID904に該当する行を削除する。
また、ストレージ情報取得エンジン810は、VVOLID2004とPOOLID2005から、仮想ボリューム容量情報テーブル1001のプールID1003とVVOLID1004に該当する行を全て削除する。
そして、管理計算機103は、VVOLID2004に基づいて、管理用ネットワーク106を経由してストレージサブシステム102内のストレージ制御プログラム307に対して、VVOLID2004に対応する実領域管理表309の割当状況504を「未割当」に変更するように指示する。より具体的には、当該指示を受けた制御プログラム307は、VVOL管理表311のVVOLID601とVVOLID2004が一致するVVOLLBA範囲602と実領域ID603を取得し、実領域管理表309の実領域ID502とRGLBA範囲503が前記VVOLLBA範囲602と実領域ID603に一致する割当状況504を「未割当」に変更する。
(ステップ1602)
アプリケーション情報取得エンジン804は、アプリケーション情報入力画面1301から取得したアプリケーション名1307、アプリケーションタイプ1308、VVOLID1305の情報を記憶装置811のデータ格納用DB812内アプリケーションとボリュームとのマッピングテーブル901へ格納する。
(ステップ1603)
アプリケーション情報取得エンジン804は、ステップ1601で取得したVVOLSIZE1306と予測期間1309とアプリケーションタイプ1308とPOOLID1304の情報を入力に、プール容量予測エンジン805に予測処理実行を指示する。
(ステップ1804)
プール容量予測エンジン805は、アプリケーションが利用するVVOLの容量消費傾向の予測に必要な入力パラメータを得るため、新規VOLへのPage割当て量予測エンジン806と既存VOLへのPage割当て量予測エンジン807を起動する。
プール容量予測エンジン805が、新規VOLへのPage割当て量予測エンジン806の起動時に、パラメータとしてVVOLSIZE1306と予測期間1309とアプリケーションタイプ1308を渡すことで、新規VOLへのPage割当て量予測エンジン806は、割当て予定のVVOLSIZE1305に対する予測期間1309後の各Tierの容量消費量を取得する。具体的な処理内容に関しては後述する。
また、既存VOLへのPage割当て量予測エンジン807は、割当て予定のVVOLを構成するプールに対して、VVOL追加に伴う既存のプールへの影響を予測する。起動時にパラメータとしてPOOLID1304と予測期間1309を受け取ることで、既存VOLへのPage割当て量予測エンジン807は、POOLID1304における予測期間1309後のプールの各Tierの予測容量消費量を取得する。具体的な処理内容に関しては後述する。なお、アプリケーションの削除が管理計算機103から指示された場合には、上述のように、当該指示に応答して、削除対象のアプリケーションを削除すると共に、対応する仮想ボリュームを「未割当」に変更する。そして、削除対象のアプリケーションを除く他の全ての既存アプリケーションが全体で消費する容量を予測する。なぜなら、アプリケーション削除後はデータが高性能のTier1等に残っていることがあり、資源の無駄となる可能性があるからである。このため、アプリケーション削除が指示された場合には、新規VOLへのPage割当て量予測エンジン806による予測処理は実行されない。ただし、アプリケーションを一時的に削除(停止)するような場合には、該当する仮想ボリュームにデータを残したまま他の既存アプリケーションの消費容量を予測するようにしても良い。一時的に停止したアプリケーションを復活させた場合には、新規VOLへのPage割当て量予測エンジン806による処理を実行し、復活させて指定期間経過した後の消費容量を予測するようにしても良い。
プール容量予測エンジン805は、各予測エンジン806及び807から得た結果を合計し、プール容量予測テーブル1101に格納する。具体的には、プール容量予測エンジン805は、既存VOLへのPage割当て量予測エンジン807で算出した予測期間1309後のプールの各Tierの予測容量消費量に、新規VOLへのPage割当て量予測エンジン806で予測した結果を加算し、算出結果を1ヶ月後の容量消費量1105に格納する。また、プール容量予測エンジン805は、既存VOLへのPage割当て量予測エンジン807のステップ2212で算出した現時点でのプールの各Tierの容量消費量を現在の容量消費量1104に格納する。また、プール容量予測エンジン805は、割り当てるVVOLのVVOLSIZE1306をVVOL容量1103に格納する。
(ステップ1805)
プール容量予測エンジン805は、結果表示エンジン808を起動する。結果表示エンジン808は、プール容量予測テーブル1101のデータをプール容量予測結果レポート画面1301に出力する。
なお、Tier購入時に発生するTier毎の金額をレポートするようにしても良い。この場合、プール容量予測エンジン805と結果表示エンジン808を拡充することで、容量消費量の予測と共に、各Tierの購入に必要な金額をレポートすることが可能となる。
図24に示されるように、各Tierのコストを設定するために、Tier毎の課金設定画面2101が作成される。Tier毎の課金設定画面2101では、Tier毎のコスト入力2102〜2104を行い、実行2105が押下される。
そして、この場合、プール容量予測エンジン805は、Tier毎の課金設定画面2101で入力した情報をTier毎の課金管理テーブル2201(図25参照)に格納する。具体的には、プール容量予測エンジン805は、Tier毎のコスト入力2102〜2104をTier毎の課金管理テーブル2201に格納する。データを算出する場合、プール容量予測エンジン805は、ステップ1804の処理を実行した後、プール容量予測テーブル1101の一カ月後の容量消費量1105から各Tierのデータを取得し、Tier毎の課金管理テーブル 2201のCost2203のデータと掛け合わせた値をプール容量予測テーブル 1101に格納する。
続いて、プール容量予測エンジン805は、ステップ1805で結果表示エンジン808がプール容量予測テーブル1101のデータをプール容量予測結果レポート画面2301に出力する。この場合の画面描画結果は図26に示されるように表示される。図26と図16との差異は、予測コスト2302が表示されることである。なお、ここでは、容量が足りない場合にデバイス購入に掛かるコストを表示しているが、消費容量で課金するシステムの場合には、消費容量によるコストを表示するようにしても良い。
<新規VOLへのPage割当て量予測エンジン806の処理の詳細>
図19は、アプリケーション追加時における、新規VOLへのPage割当て量予測エンジン(以下、「新規割当て量予測エンジン」ということもある)806の処理の詳細を説明するためのフローチャートである。
(ステップ1901)
割当て予定のVVOLと類似する使用傾向が見られるVVOLを検索するため、新規割当て量予測エンジン806は、割当て予定のVVOLのアプリケーションタイプから、VVOL ID904をアプリケーションとボリュームとのマッピングテーブル901より取得する。つまり、追加するアプリケーションのタイプと類似する既存のアプリケーションが特定される。ここで、「類似」とは、「同一」も含む概念である。例えば、追加されるアプリケーションが、検索エンジンである場合には、同一の検索エンジンが既にあればそれが選択されるが、同一ではないが他の検索エンジンがあればそれが選択される。複数の類似タイプのアプリケーションがある場合には、何れか1つのアプリケーションを選択してその導入当初の動向を用いて予測するようにしても良いし、複数のアプリケーションを選択し、それらの導入当初の動向を平均するようにしても良い。
(ステップ1902)
新規割当て量予測エンジン806は、ステップ1901で取得した類似使用用途のVVOLID904の一覧全てに対してステップ1903ないし1906の処理を実行する。一覧全てに対して処理が実行された場合は、処理はステップ1907に移行する。
(ステップ1903)
新規割当て量予測エンジン806は、仮想ボリューム容量情報テーブル1001から、現在対象とする類似使用用途のVVOLについて収集を開始した最も古い時刻を運用開始時刻として仮定する。なお、仮想ボリューム容量情報テーブル1001において、最新時刻から遡った所定期間の情報を用いるのでなければ、運用開始時刻は任意に設定することができる。当該類似タイプのアプリケーションの導入当初の使用状況が追加された新規のアプリケーション等の運用予定と比べてあまりにも特異な場合には、類似のアプリケーションの使用状態が安定している時期を選択して予測処理に用いるようにしても良い。
(ステップ1904)
新規割当て量予測エンジン806は、ステップ1903で取得した時刻(運用開始時刻)からユーザが指定した予測したい期間(例えば、1ヶ月)までのデータを、仮想ボリューム容量情報テーブル1001から取得する。
(ステップ1905)
新規割当て量予測エンジン806は、ステップ1904の実行結果1件ずつに対して、Tier0利用量1006÷VVOL容量1005、Tier1利用量1007÷VVOL容量1005、Tier2利用量1008÷VVOL容量1005を実行し、各Tierについて、VVOLの割当て容量に対する消費比率を算出する。
(ステップ1906)
新規割当て量予測エンジン806は、類似するアプリケーションの中においてステップ1905で算出した各TierのVVOL割当て容量に対する消費比率が、最大となる値を安全係数として見積もるために、現在の中で最大の値が算出されれば、予測値の候補として、Tierの利用量1006〜1008と、VVOL容量1005の組として保持する。即ち、ステップ1906では、最終的に、運用開始時刻からの指定期間内における容量消費量が最大のTier利用量とVVOL容量を見つけ出す処理が行われている。
(ステップ1907)
新規割当て量予測エンジン806は、対象とする類似用途のVVOL全てについて検証後、候補の組について、各Tierについて、VVOLの割当て容量に対する消費比率を算出する。この処理は、最大値を取る候補の組み合わせ(Tier利用量1006とVVOL容量1005)に対して、ステップ1905と同等の演算を実行するものである。演算結果が保持されていれば、再度同じ演算を行う必要はないが、ここでは保持されない場合を想定している。
(ステップ1908)
新規割当て量予測エンジン806は、ステップ1907で算出した値とユーザの指定する新規割当て予定のVVOLを乗算する。このようにすることで、ユーザの指定したVVOLに対する指定期間後の各Tierの予測容量消費量が算出できる。
(ステップ1909)
新規割当て量予測エンジン806は、ステップ1908で算出した値を追加されたアプリケーションによって消費されるプール容量の予測値として、プール容量予測エンジン805に返す。
<既存VOLへのPage割当て量予測エンジン807の処理の詳細>
図20は、既存VOLへのPage割当て量予測エンジン807の処理概要について説明するためのフローチャートである。既存VOLへのPage割当て量予測エンジン(以下、「既存割当て予測エンジン」ということもある)807は、プールの各Tierの予測容量消費量算出処理(ステップ2001)によって算出された値と、プールの各Tierの容量消費量算出処理(ステップ2002)によって算出された値を、プール容量予測エンジン805に返す。以下、ステップ2001及び2002の詳細について説明する。
(i)プールの各Tierの予測容量消費量算出処理(S2001)の詳細
図21は、プールの各Tierの予測容量消費量算出処理(ステップ2001)の詳細を説明するためのフローチャートである。
(ステップ2101)
既存割当て予測エンジン807は、アプリケーション情報入力画面1301から入力されたPOOLID1304の全VVOL一覧を取得する。この取得したVVOLに対してS2103からS2105の処理が実行される。
(ステップ2102)
既存割当て予測エンジン807は、ステップ2101で取得したVVOLID1004の全てに対して処理(S2103乃至S2105)を実行したか否か判断する。処理が完了していれば、処理はステップ2106に移行する。
(ステップ2103)
既存割当て予測エンジン807は、VVOL毎に履歴データを取得する。ここでは、過去全てのデータを取得するようにするが、ユーザ(管理者)によって取得すべきデータの範囲(期間)が指定され、その指定期間中のデータを用いるようにしても良いし、固定期間のデータを用いるようにしても良い。
(ステップ2104)
既存割当て予測エンジン807は、ステップ2103で取得したデータに対して収集時間1002毎に各Tierの利用量の最尤推定(例えば、最小二乗法等を用いる)を行い、VVOLの各Tierの利用量の増加傾向を示す関係式を算出する。
(ステップ1808)
既存割当て予測エンジン807は、ステップ2104で算出した関係式に対してアプリケーション情報入力画面1301で入力したユーザの指定した予測期間1309を乗算することでVVOLの各Tierの容量消費量の予測を算出する。つまり、過去の統計的データに基づいて、指定期間経過後の容量消費量を予測する。
(ステップ1809)
既存割当て予測エンジン807は、ステップ2105で算出したVVOL毎の各Tierの容量消費量の予測値を合算し、プールの各Tierの予測容量消費量を算出する。
(ii)プールの各Tierの容量消費量算出処理(S2002)の詳細
図22は、プールの各Tierの容量消費量算出処理(ステップ2002)の詳細を説明するためのフローチャートである。
(ステップ2201)
既存割当て予測エンジン807は、ステップ2101で取得したVVOLID1004の全てに対して、ステップ2202の処理が完了したか否か判断する。S2202の処理が完了していれば、処理はステップ2203に移行する。
(ステップ2202)
既存割当て予測エンジン807は、現時点でのVVOLの各Tierの消費量を取得する。厳密な意味での現時点のデータがなければ、最新のデータでも良い。
(ステップ1812)
既存割当て予測エンジン807は、ステップ2202で算出したVVOL毎の各Tierの容量消費量(現時点の容量)を合算し、プールの各Tierの容量消費量を算出する。
<変形例>
(i)アプリケーションの特性変更に伴うボリューム消費量の再予測
上記実施形態では、主にアプリケーション追加に伴う新規仮想ボリュームの割当てを想定しているが、本発明を拡充し既存アプリケーションの特性変化に応じた容量消費量の再予測も可能である。ここで「特性変更」とは、例えば、当初OLTPに割り当てられた仮想ボリューム(VVOL)が別のアプリケーションに割り当てられたような場合等、一度アプリケーションに割り当てた仮想ボリュームの利用態様が変わる場合を意味する。
また、別の「特性変更」の例として、アプリケーションによっては、運用するにつれてその特性が変化する場合も考えられる。より具体的には、ある業務アプリケーションは通常アクセス量は少ないが、年度末や期末等といった特定の期間においてアクセス量が増え、OLTPに近いアクセス量が発生するなどといった特性を持つ場合がある。
本発明をこのようなケースに適用し、アプリケーション特性の変化を考慮した反復的な容量予測を実行することが可能である。具体的にはステップ1801(図18)を実行する際、ユーザ(管理者)が、アプリケーションタイプ1308(図14)を変更し、割当たっている仮想ボリュームの残容量をVVOLSIZE1307に入力した上で、ステップ1802と同様の情報をアプリケーション情報入力画面1301に入力し、実行1310を投下する。以降は本実施形態における管理計算機103が実行する処理と同じの処理が実行される。このように、既存のアプリケーションの特性を変更したときにも、上述のアプリケーションの新規追加の処理を適用することができる。これにより、アプリケーションの特性が変更した後の容量消費量が予測可能となる。
(ii)LVM環境に対するボリューム消費量の予測
アプリケーションによっては、サーバ上のOSが提供するLVM(Logical Volume Manager)機能等を利用して、各割当論理ボリュームをグルーピングし、1つの仮想ボリュームとしてアプリケーションに見せて割り当てる環境も存在する。このような環境において、本発明の思想を適用(拡張)し、アプリケーションに割り当てられている個々の論理ボリュームの容量消費量の総和から将来の消費量を予測することでLVM環境の容量消費量を予測できるようになる。つまり、LVM機能においては、1つのグループ(複数のVVOLで構成される)をアプリケーションに割り当てているが、その1つのグループの容量消費予測は、それぞれの構成VVOLの容量消費予測を合算して表すことが可能である。LVM機能を実現する環境では、アプリケーションに割り当てられているボリュームは、異なるプールから切り出されたVVOLである可能性もある。そこで、このような場合にグループ全体の消費容量を予測するには、1つのプールだけからではなく、それぞれの該当プールからも容量を予測する必要があるのである。そして、この環境に本発明を適用するためには、以下のように、情報入力画面とステップ1908の処理を拡張する必要がある。
まず、情報入力画面については、アプリケーションに割当たっている個々の仮想ボリュームの情報を入力可能とするため、アプリケーション情報入力画面1301のVVOLID1305と、VVOLSIZE1307に複数のボリュームの情報が入力できるようにリストを追加する。その上で、ユーザ(管理者)が、LVMを構成する全ての仮想ボリュームの情報を入力する。
また、新規VOLへのPage割当て量予測エンジン806は、S1908において、割り当て予定のVVOL容量に関して、LVMを構成する全ての仮想ボリューム容量の総和に変更する。より具体的には、S1908を“ステップ1907で算出した各Tierの比率×アプリケーション情報入力画面1301のVVOLSIZE1307に入力した各VVOL値の総和”とする。
以降は本実施形態における管理計算機103が実行する処理と同じの処理を実行すれば良い。
<まとめ>
本実施形態では、新規にアプリケーションの追加が指示された場合、或いは、既存のプリケーションが使用する仮想ボリュームの割り当ての変更が指示された場合、当該指示に応答して、新規のアプリケーション、或いは割り当て変更対象のアプリケーションと、アプリケーション種別が同一或いは類似のアプリケーションが使用する仮想ボリュームの過去の消費容量動向(例えば、アプリケーション導入当初から所定期間内における消費容量の傾向)に関する情報を取得する。そして、取得した消費容量動向に関する情報に基づいて、割当て予定の仮想ボリュームおける消費容量を予測する。このようにすることにより、アプリケーションの追加又はボリュームの割り当て変更に伴う容量(例えば、プールに割り当てられている容量)の枯渇タイミングを把握することができるようになる。アプリケーション導入当初からの消費容量傾向の情報を取得するのは、追加或いは割り当て変更に伴う消費容量の傾向をより正確に把握することができるからである。
また、ストレージサブシステムでは、1つ以上の物理記憶デバイスが階層を構成している。また、仮想ボリュームは、1つ以上の階層を用いて構成され、かつ、ホスト計算機が直接アクセスするターゲットと関連付けられたプールと対応付けられている。仮想ボリュームについては、各階層ごとに消費容量(利用量)が管理されている(図11参照)。そして、割当て予定の仮想ボリュームにおける消費容量を予測する際には、当該仮想ボリュームを構成する1つ以上の階層における割り当て領域の過去の利用量に関する情報が用いられる。このようにすることにより、異なる物理特性のディスクの組み合わせでプールを構成する場合に、より正確にプールの消費容量枯渇のタイミングを把握することができるようになる。つまり、Thin Provisioningを拡張して運用する場合にも対応することができるようになる。
さらに、上記新規に追加されるアプリケーション等以外の、全ての既存のアプリケーション(仮想ボリュームの割り当て状況に変化がないもの)が使用する仮想ボリュームにおける過去の消費容量に関するデータを取得する。そして、このデータに基づいて、最尤推定法(例えば、最小二乗法)を用いて、これら全ての既存のアプリケーションが使用する仮想ボリュームにおける、指定予測期間後の消費容量を予測する。この既存アプリケーションの予測消費容量と、上記新規追加アプリケーション等に割当て予定の仮想ボリュームにおける予測消費容量とを合算して出力(表示やプリントアウト)する。このようにすることにより、既存のアプリケーションの消費容量の動向をも加味して、システム全体の消費容量の予測情報を提示することができ、ユーザ(管理者)は物理記憶デバイスの追加のタイミングを知ることができるようになる。
また、予測消費容量を提示すると共に、将来に掛かるコストを提示する。これにより、ユーザ(管理者)はコスト面を考慮しつつ、システムを効率よく運用することが可能となる。
アプリケーション削除に伴う仮想ボリュームの削除が指示された場合には、削除対象のアプリケーションを除いて全体の予測消費容量を演算する。この場合には、既存VOLへのPage割当て予測エンジン807を用いて消費容量を予測する。このようにすることにより、アプリケーション削除に伴う容量確保がどの程度効果があるか見極めることができる。また、アプリケーション削除後はデータが高性能のTier1等に残っていると資源の無駄となるが、このような事態を回避することができる。
なお、本発明は、実施形態そのままに限定されるものではなく、実施段階では、その要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
また、実施形態で示された各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現しても良い。また、上記各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現しても良い。各機能等を実現するプログラム、テーブル、ファイル等の情報は、メモリやハードディスク、SSD(Solid State Drive)等の記録或いは記憶装置、またはICカード、SDカード、DVD等の記録或いは記憶媒体に格納することができる。
さらに、上述の実施形態において、制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。全ての構成が相互に接続されていても良い。
100 計算機システム
101 ホスト計算機
102 ストレージサブシステム
103 管理計算機
104 Webブラウズ用計算機
105 ストレージエリアネットワーク
106 管理用ネットワーク
107 管理システム

Claims (13)

  1. 1つ以上の物理記憶デバイスを有するストレージサブシステムと、前記ストレージサブシステムを管理する管理システムと、を有し、
    前記ストレージサブシステムは、前記物理記憶デバイスの記憶領域を、仮想ボリュームとしてホスト計算機に提供し、
    前記管理システムは、アプリケーションが使用すべき前記仮想ボリュームの割り当てについての入力指示に応答して、前記アプリケーションとアプリケーション種別が同一或いは類似のアプリケーションが使用する仮想ボリュームの過去の消費容量動向に関する情報を取得し、当該消費容量動向に関する情報に基づいて、前記割当て予定の仮想ボリュームおける消費容量を予測し、
    前記入力指示は、新規にアプリケーションの追加の指示、或いは、既存のアプリケーションに割り当てられる前記仮想ボリュームに変更の指示を含むことを特徴とする計算機システム。
  2. 請求項において、
    前記管理システムは、前記新規追加のアプリケーションと同一又は類似のタイプのアプリケーション、或いは前記仮想ボリューム割り当て変更の既存アプリケーションの運用開始から所定期間における前記消費容量動向に関する情報を取得し、前記割当て予定の仮想ボリュームにおける消費容量を予測することを特徴とする計算機システム。
  3. 請求項において、
    前記1つ以上の物理記憶デバイスは、1つ以上の階層を構成し、
    前記仮想ボリュームは、前記1つ以上の階層を用いて構成され、かつ、前記ホスト計算機が直接アクセスするターゲットと関連付けられたプールと対応付けられ、
    前記管理システムは、前記割当て予定の仮想ボリュームにおける消費容量を予測する際に、当該仮想ボリュームを構成する前記1つ以上の階層における割当て領域の過去の利用量に関する情報を用いることを特徴とする計算機システム。
  4. 請求項において、
    前記管理システムは、さらに、前記仮想ボリュームの割り当てが不変の全ての既存のアプリケーションが使用する前記仮想ボリュームにおける過去の消費容量に関する情報を取得し、当該全ての既存のアプリケーションが使用する前記仮想ボリュームにおける消費容量であって、指定された予測期間後の消費容量を予測し、前記割当て予定の仮想ボリュームにおける予測消費容量と前記既存アプリケーションの予測消費容量を併せて出力することを特徴とする計算機システム。
  5. 請求項において、
    前記管理システムは、前記1つ以上の階層のコストに関するコスト設定情報、及び前記割当て予定の仮想ボリュームにおける予測消費容量と前記既存アプリケーションの予測消費容量に基づいて、前記1つ以上の階層における予測コストを出力することを特徴とする計算機システム。
  6. 請求項1において、
    前記管理システムは、アプリケーションの削除と当該削除対象のアプリケーションに割り当てられた前記仮想ボリュームの削除についての入力指示に応答して、当該削除対象のアプリケーションが使用する前記仮想ボリュームの割り当てを解放し、前記削除対象のアプリケーションを除く全ての既存のアプリケーションが使用する前記仮想ボリュームにおける過去の消費容量に関する情報を取得し、前記削除対象のアプリケーションを除く全ての既存のアプリケーションが使用する前記仮想ボリュームにおける消費容量であって、指定された予測期間後の消費容量を予測し、当該予測消費量を出力することを特徴とする計算機システム。
  7. 1つ以上の物理記憶デバイスの記憶領域を仮想ボリュームとしてホスト計算機に提供するストレージサブシステムと、前記ストレージサブシステムを管理する管理システムと、を有する計算機システムの管理方法であって、
    前記管理システムのプロセッサが、アプリケーションが使用すべき前記仮想ボリュームの割り当てについて指示された場合、前記アプリケーションとアプリケーション種別が同一或いは類似のアプリケーションが使用する仮想ボリュームの過去の消費容量動向に関する情報を取得する工程と、
    前記プロセッサが、前記消費容量動向に関する情報に基づいて、前記割当て予定の仮想ボリュームおける消費容量を予測する工程と、を有し、
    前記指示は、新規にアプリケーションの追加の指示、或いは、既存のアプリケーションに割り当てられる前記仮想ボリュームに変更の指示を含むことを特徴とする管理方法。
  8. 請求項において、
    前記プロセッサは、前記新規追加のアプリケーションと同一又は類似のタイプのアプリケーション、或いは前記仮想ボリューム割り当て変更の既存アプリケーションの運用開始から所定期間における前記消費容量動向に関する情報を取得し、前記割当て予定の仮想ボリュームにおける消費容量を予測することを特徴とする管理方法。
  9. 請求項において、
    前記1つ以上の物理記憶デバイスは、1つ以上の階層を構成し、
    前記仮想ボリュームは、前記1つ以上の階層を用いて構成され、かつ、前記ホスト計算機が直接アクセスするターゲットと関連付けられたプールと対応付けられ、
    前記プロセッサは、前記割当て予定の仮想ボリュームにおける消費容量を予測する際に、当該仮想ボリュームを構成する前記1つ以上の階層における割当て領域の過去の利用量に関する情報を用いることを特徴とする管理方法。
  10. 請求項において、
    さらに、前記プロセッサが、前記仮想ボリュームの割り当てが不変の全ての既存のアプリケーションが使用する前記仮想ボリュームにおける過去の消費容量に関する情報を取得する工程と、
    前記プロセッサが、当該全ての既存のアプリケーションが使用する前記仮想ボリュームにおける消費容量であって、指定された予測期間後の消費容量を予測し、前記割当て予定の仮想ボリュームにおける予測消費容量と前記既存アプリケーションの予測消費容量を併せて出力する工程と、
    を有することを特徴とする管理方法。
  11. 請求項10において、
    さらに、前記プロセッサが、前記1つ以上の階層のコストに関するコスト設定情報、及び前記割当て予定の仮想ボリュームにおける予測消費容量と前記既存アプリケーションの予測消費容量に基づいて、前記1つ以上の階層における予測コストを出力する工程を有することを特徴とする管理方法。
  12. 請求項において、
    さらに、前記プロセッサが、アプリケーションの削除と当該削除対象のアプリケーションに割り当てられた前記仮想ボリュームの削除について指示された場合、当該削除対象のアプリケーションが使用する前記仮想ボリュームの割り当てを解放する工程と、
    前記プロセッサが、前記削除対象のアプリケーションを除く全ての既存のアプリケーションが使用する前記仮想ボリュームにおける過去の消費容量に関する情報を取得する工程と、
    前記プロセッサが、前記削除対象のアプリケーションを除く全ての既存のアプリケーションが使用する前記仮想ボリュームにおける消費容量であって、指定された予測期間後の消費容量を予測する工程と、
    前記プロセッサが、前記予測消費量を出力する工程と、
    を有することを特徴とする管理方法。
  13. 1つ以上の物理記憶デバイスの記憶領域を仮想ボリュームとしてホスト計算機に提供するストレージサブシステムと、前記ストレージサブシステムを管理する管理システムと、
    を有する計算機システムにおいて、前記管理システムのプロセッサに、
    アプリケーションが使用すべき前記仮想ボリュームの割り当てについての入力指示であって、新規にアプリケーションの追加の指示、或いは、既存のアプリケーションに割り当てられる前記仮想ボリュームに変更の指示を含む入力指示に応答して、前記アプリケーションとアプリケーション種別が同一或いは類似のアプリケーションが使用する仮想ボリュームの過去の消費容量動向に関する情報を取得する処理と、
    前記消費容量動向に関する情報に基づいて、前記割当て予定の仮想ボリュームおける消費容量を予測する処理と、
    を実行させるためのプログラム。
JP2012548557A 2010-12-13 2010-12-13 計算機システム、及びその管理方法、並びに、プログラム Expired - Fee Related JP5395962B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2010/072377 WO2012081074A1 (ja) 2010-12-13 2010-12-13 計算機システム、及びその管理方法、並びに、プログラム

Publications (2)

Publication Number Publication Date
JP5395962B2 true JP5395962B2 (ja) 2014-01-22
JPWO2012081074A1 JPWO2012081074A1 (ja) 2014-05-22

Family

ID=46200607

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012548557A Expired - Fee Related JP5395962B2 (ja) 2010-12-13 2010-12-13 計算機システム、及びその管理方法、並びに、プログラム

Country Status (4)

Country Link
US (1) US20120151174A1 (ja)
JP (1) JP5395962B2 (ja)
GB (1) GB2496807B (ja)
WO (1) WO2012081074A1 (ja)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5492731B2 (ja) * 2010-10-06 2014-05-14 株式会社日立製作所 仮想計算機のボリューム割当て方法およびその方法を用いた計算機システム
EP2583163A1 (en) * 2010-12-28 2013-04-24 Hitachi, Ltd. Storage system, management method of the storage system, and program
US9639402B2 (en) * 2011-08-05 2017-05-02 Oracle International Corporation Systems and methods for automatic hardware provisioning based on application characteristics
US20130262811A1 (en) * 2012-03-27 2013-10-03 Hitachi, Ltd. Method and apparatus of memory management by storage system
US8904144B1 (en) * 2012-05-24 2014-12-02 Netapp, Inc. Methods and systems for determining at risk index for storage capacity
WO2015063859A1 (ja) * 2013-10-29 2015-05-07 株式会社日立製作所 計算機システム及び制御方法
JP2017004114A (ja) * 2015-06-05 2017-01-05 キヤノン株式会社 画像形成装置及びアプリケーションの削除方法
US10228856B2 (en) * 2016-01-28 2019-03-12 Hewlett Packard Enterprise Development Lp Storage space management in a thin provisioned virtual environment
JP6878369B2 (ja) * 2018-09-03 2021-05-26 株式会社日立製作所 ボリューム配置管理装置、ボリューム配置管理方法、及びボリューム配置管理プログラム
US11683666B2 (en) * 2019-06-18 2023-06-20 Nokia Technologies Oy Data transmission
US11163476B2 (en) * 2019-10-04 2021-11-02 International Business Machines Corporation Dynamic rebalancing of free space between storage pools
US20220057947A1 (en) * 2020-08-20 2022-02-24 Portworx, Inc. Application aware provisioning for distributed systems

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4124331B2 (ja) * 2002-09-17 2008-07-23 株式会社日立製作所 Dbms向け仮想ボリューム作成・管理方法
JP5037881B2 (ja) * 2006-04-18 2012-10-03 株式会社日立製作所 ストレージシステム及びその制御方法
JP2008097502A (ja) * 2006-10-16 2008-04-24 Hitachi Ltd 容量監視方法及び計算機システム
JP4914173B2 (ja) * 2006-10-30 2012-04-11 株式会社日立製作所 再配置システムおよび再配置方法
EP2184681A1 (en) * 2008-10-31 2010-05-12 HSBC Holdings plc Capacity control
US8261018B2 (en) * 2009-05-25 2012-09-04 Hewlett-Packard Development Company, L.P. Managing data storage systems
US20110153978A1 (en) * 2009-12-21 2011-06-23 International Business Machines Corporation Predictive Page Allocation for Virtual Memory System

Also Published As

Publication number Publication date
JPWO2012081074A1 (ja) 2014-05-22
GB2496807B (en) 2019-11-06
US20120151174A1 (en) 2012-06-14
WO2012081074A1 (ja) 2012-06-21
GB2496807A (en) 2013-05-22
GB201303105D0 (en) 2013-04-10

Similar Documents

Publication Publication Date Title
JP5395962B2 (ja) 計算機システム、及びその管理方法、並びに、プログラム
US9182926B2 (en) Management system calculating storage capacity to be installed/removed
US8122116B2 (en) Storage management method and management server
JP5439581B2 (ja) ストレージシステム、ストレージ装置、ストレージシステムの記憶領域の最適化方法
US8346934B2 (en) Method for executing migration between virtual servers and server system used for the same
JP5502232B2 (ja) ストレージシステム、及びその制御方法
JP4733461B2 (ja) 計算機システム、管理計算機及び論理記憶領域の管理方法
US9703500B2 (en) Reducing power consumption by migration of data within a tiered storage system
JP5363595B2 (ja) 仮想ボリューム内のデータの再配置を行うストレージシステム及び方法
JP5668151B2 (ja) 計算機システムの管理装置及び管理方法
JP5185445B2 (ja) ストレージシステム及びストレージシステムにおける使用容量管理方法
JP5706531B2 (ja) 計算機システム、及び情報管理方法
US20110320754A1 (en) Management system for storage system and method for managing storage system
JP5073259B2 (ja) 仮想化システム及び領域割当て制御方法
US8402214B2 (en) Dynamic page reallocation storage system management
JP2010122814A (ja) ストレージシステム及びストレージシステムの運用方法
JP2009110346A (ja) 性能履歴の管理方法および性能履歴の管理システム
JP2015517147A (ja) 空間節約(spacesavings:空き容量節約)を達成するように処理をスケジューリングするためのシステム、方法及びコンピュータープログラム製品
JP2013114624A (ja) ストレージシステム及びプール容量縮小の制御方法
JP6100404B2 (ja) 計算機システムおよびその階層記憶の制御方法
US20140058717A1 (en) Simulation system for simulating i/o performance of volume and simulation method
WO2012039062A1 (ja) ストレージ装置における複数の記憶デバイスを複数の階層に振り分ける方法及びシステム
JP6035363B2 (ja) 管理計算機、計算機システム、及び管理方法

Legal Events

Date Code Title Description
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: 20131001

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20131018

R151 Written notification of patent or utility model registration

Ref document number: 5395962

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

LAPS Cancellation because of no payment of annual fees