(57)【要約】【課題】ストレージ装置において、業務アプリケーションの求める性能を満たすボリュームをデータの格納先として割り当てる方法を提供する。【解決手段】性能要件解析部２００と、ボリューム割当て部２０１と、ボリューム性能判定部２０２とを有するボリューム割当て管理サーバ１００と、ストレージ装置１１０がネットワークを介して接続したストレージ管理システムにおいて、ボリュームを割り当てるデータを使用する業務アプリケーションが必要とする性能要件と、データの格納先となるボリュームの性能特性とを求め、それらの情報を基に、性能要件を満たすボリュームをデータの格納先として選択する。【選択図】図２
2008084253.tif 000002
【特許請求の範囲】
【請求項１】
ホストコンピュータに対してストレージ装置が有する複数の記憶領域からある記憶領域を割当る方法であって、
ホストコンピュータで実行されるアプリケーションの稼動情報から当該アプリケーションの性能を求め、
ストレージ装置が有する記憶領域の属性から、それぞれの記憶領域の性能を求め、
前記アプリケーションの性能を満たす記憶領域を特定し、特定された記憶領域を前記アプリケーションが実行されるホストコンピュータに割当ることを特徴とした記憶領域の割当方法。
【請求項２】
請求項１に記載された記憶領域の割当方法において、
前記アプリケーションの性能は、アプリケーション種別、データ更新頻度、アクセスパターンにより求めることを特徴とする記憶領域の割当方法。
【請求項３】
請求項１に記載された記憶領域の割当方法において、
前記記憶領域は、ディスク装置の記憶領域であって、前記記憶領域の性能は、ディスク装置の回転数から求めることを特徴とする記憶領域の割当方法。
【請求項４】
請求項１に記載された記憶領域の割当方法において、
前記ストレージ装置は、異なる種類の記憶媒体を有し、それぞれの前記記憶領域はいずれかの記憶媒体の記憶領域であって、記憶媒体の種類によって前記記憶領域の性能を求めることを特徴とする記憶領域の割当方法。
【請求項５】
請求項４に記載された記憶領域の割当方法であって、
前記記憶媒体は、FCディスク装置、ATAディスク装置、半導体記憶装置であることを特徴とする記憶領域の割当方法。
【請求項６】
請求項１に記載された記憶領域の割当方法であって、
前記アプリケーションの性能を一定の間隔で繰り返し求め、求めたアプリケーションの性能が変化した場合に、記憶領域の性能から前記性能が変化したアプリケーションの性能を満たす新たな記憶領域を特定し、前記性能が変化したアプリケーションに割当てられていた記憶領域に格納されていたデータを前記特定された新たな記憶領域に移動することを特徴とする記憶領域の割当方法。
【請求項７】
請求項６に記載された記憶領域の割当方法であって、
前記新たな記憶領域を特定するときに、記憶領域の属性から新たに記憶領域の性能を求めることを特徴とする記憶領域の割当方法。
【請求項８】
複数の記憶領域を有し、ある記憶領域に格納されたデータを別の記憶領域にマイグレーションするデータマイグレーション方法であって、
ホストコンピュータからデータの書き込み及び読み出しとの対象となる第１の記憶領域と、前記第１の記憶領域に格納されたデータの複製が格納される第２の記憶領域とを特定し、
前記第１の記憶領域の性能と前記第２の記憶領域の性能を求め、第１の記憶領域の性能よりも前記第２の記憶領域の性能が高い場合に、前記ストレージ装置が有する記憶領域の中から前記第１の記憶領域の性能よりも低い性能を有する記憶領域を特定し、前記特定した記憶領域に前記第２の記憶領域に格納されたデータをマイグレーションし、前記特定された記憶領域を新たな第２の記憶領域として前記第１の記憶領域に格納されるデータの複製を格納することを特徴としたデータマイグレーション方法。
【請求項９】
請求項８記載のデータマイグレーション方法であって、
前記第１の記憶領域と前記第２の記憶領域へのデータの格納は非同期で行われることを特徴とするデータマイグレーション方法。
【請求項１０】
アプリケーションを有するホストコンピュータと、複数の記憶領域を有するストレージ装置と、管理サーバとを有するストレージシステムにおいて、
前記管理サーバは、
ホストコンピュータで実行されるアプリケーションの稼動情報から当該アプリケーションの性能を求め、ストレージ装置が有する記憶領域の属性から、それぞれの記憶領域の性能を求め、前記アプリケーションの性能を満たす記憶領域を特定し、特定された記憶領域と前記アプリケーションが実行されるホストコンピュータの情報を前記ストレージ装置に送信する制御部を有することを特徴とするストレージシステム。
【請求項１１】
請求項１０に記載されたストレージシステムにおいて、
前記アプリケーションの性能は、アプリケーション種別、データ更新頻度、アクセスパターンにより求めることを特徴とするストレージシステム。
【請求項１２】
請求項１０に記載されたストレージシステムにおいて、
前記記憶領域は、ディスク装置の記憶領域であって、前記記憶領域の性能は、ディスク装置の回転数から求めることを特徴とするストレージシステム。
【請求項１３】
請求項１０に記載されたストレージシステム、
前記ストレージ装置は、異なる種類の記憶媒体を有し、それぞれの前記記憶領域はいずれかの記憶媒体の記憶領域であって、記憶媒体の種類によって前記管理サーバの前記制御部は、前記記憶領域の性能を求めることを特徴とするストレージシステム。
【請求項１４】
請求項１３に記載されたストレージシステムであって、
前記記憶媒体は、FCディスク装置、ATAディスク装置、半導体記憶装置であることを特徴とするストレージシステム。
【請求項１５】
請求項１０に記載された記憶領域の割当方法であって、
前記管理サーバの前記制御部は、前記アプリケーションの性能一定の間隔で繰り返し求め、求めたアプリケーションの性能が変化した場合に、記憶領域の性能から前記性能が変化したアプリケーションの性能を満たす新たな記憶領域を特定し、前記性能が変化したアプリケーションに割当てられていた記憶領域に格納されていたデータを前記特定された新たな記憶領域に移動する命令を前記ストレージ装置に送信することを特徴とするストレージシステム。
【請求項１６】
請求項１５に記載されたストレージシステムであって、
前記管理サーバの前記制御部は、前記新たな記憶領域を特定するときに、記憶領域の属性から新たに記憶領域の性能を求めることを特徴とするストレージシステム。
【請求項１７】
請求項１０に記載されたストレージシステムであって、
前記管理サーバの前記制御部は、ホストコンピュータからデータの書き込み及び読み出しとの対象となる第１の記憶領域と、前記第１の記憶領域に格納されたデータの複製が格納される第２の記憶領域とを特定し、前記第１の記憶領域の性能と前記第２の記憶領域の性能を求め、第１の記憶領域の性能よりも前記第２の記憶領域の性能が高い場合に、前記ストレージ装置が有する記憶領域の中から前記第１の記憶領域の性能よりも低い性能を有する記憶領域を特定し、前記特定した記憶領域に前記第２の記憶領域に格納されたデータをマイグレーションするよう前記ストレージ装置に指示し、前記特定された記憶領域を新たな第２の記憶領域として前記第１の記憶領域に格納されるデータの複製を格納するよう前記ストレージ装置に指示することを特徴としたストレージシステム。
【請求項１８】
請求項１７記載のストレージシステムであって、
前記第１の記憶領域と前記第２の記憶領域へのデータの格納は非同期で行われることを特徴とするストレージシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のホストとストレージ装置が接続された情報処理システムにおいて、ストレージ装置によって提供される、複数の記憶領域の中から、ホストのデータが格納される記憶領域を求め、格納する技術に関する。
【背景技術】
【０００２】
現在では企業で扱うデータが増大し、それに応じてストレージ装置の大規模化が進んでいる。ストレージ装置の大規模化に伴い、ストレージ装置内の個々のボリュームは均一な性能を持つものではなく、様々な性能のボリュームが混在することとなる。その際、扱うデータの重要度等に応じて格納するボリュームを最適配置することが必要になる。時間の経過に応じたデータの重要度の変化や、ストレージ装置の置き換えなどにより、データのマイグレーションが求められることが多くなっており、その際に空きボリュームであればどれでもよいというわけではなく、データの重要度に応じた性能や信頼性を満たす最適なボリュームの選択が重要となっている。
【０００３】
これに対して、ボリュームの負荷を監視し、負荷が所定量を超えたらボリュームを移動することが、特許文献１に記載されている。これによると、ボリューム負荷の観点から最適配置を行うもので、データ移動によりボリュームの負荷を均等化する効果がある。
【０００４】
【特許文献１】特開２００５−１１５４３８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、上記従来技術では、データ内容の重要性を評価しておらず、どのようなデータであってもボリュームに対する負荷が上がれば移動対象となる。また、移動先のボリュームの選択も、ボリュームの特性を考慮せず、アクセス負荷のみで判定しているため、重要であり高いアクセス性能を求められるデータを低速ボリュームに移動したり、逆にアクセス性能は重要でないアーカイブデータを高速ボリュームに移動したりすることがあるという問題がある。
【０００６】
そこで本発明は、上記問題点に鑑みてなされたもので、データに対して求められる性能要件に適したストレージ装置の記憶領域を利用できるようにするものである。
【課題を解決するための手段】
【０００７】
ホストコンピュータで実行されるアプリケーションの稼動情報から当該アプリケーションの性能を求め、ストレージ装置が有する記憶領域の属性から、それぞれの記憶領域の性能を求め、アプリケーションの性能を満たす記憶領域を特定し、特定された記憶領域を前記アプリケーションが実行されるホストコンピュータに割当る。
【発明の効果】
【０００８】
本発明によれば、データに対して求められる性能要件に適したストレージ装置の記憶領域を利用することができる。
【発明を実施するための最良の形態】
【０００９】
図１は、情報処理システムの構成を示したものである。
【００１０】
情報処理システムは、管理サーバ１００、複数のストレージ装置１１０、複数のホスト１２０が、ネットワーク１３０に接続されている。また、管理サーバ１００と複数のホスト１２０は、ネットワーク１４０に接続されている。ネットワーク１３０、ネットワーク１４０は、どのような種類のネットワークであってもよい。例えば、ネットワーク１３０、１４０ともIPネットワークとすることもできるし、ネットワーク１３０をSAN（Storage Area Network）とし、ネットワーク１４０をIPネットワークとするような異なる種類のネットワークであっても良い。
【００１１】
管理サーバ１００は、ホスト１２０で実行されているプログラムの管理、ストレージ装置１１０の状態を管理する。また、ストレージ装置１１０に設定される論理ボリューム（論理的な記憶領域）間でデータを移動（マイグレーション）させる指示をストレージ装置１１０に与える。管理サーバ１００は、種々のコンピュータプログラム、制御情報等を記憶することができる半導体メモリや、ハードディスクドライブ等の記憶資源１０２、記憶資源１０２からコンピュータプログラム、制御情報、データ等を読み込んで実行するＣＰＵ１０１、通信ネットワーク１３０のインタフェースとなる一つ以上のネットワークインタフェース１０３、通信ネットワーク１４０のインタフェースとなるネットワークインタフェース１０４を備えている。
【００１２】
各ホスト１２０は、ストレージ装置１１０の論理ボリュームに対してデータを読み書きするための入出力コマンドを発行する計算機である。各ホスト１２０は、いずれも同様のハードウェア構成であっても、異なるハードウェア構成であってもよい。ここでは、同様のハードウェア構成として、ホスト１２０Ａを例に説明する。
【００１３】
ホスト１２０Ａは、種々のコンピュータプログラムを記憶することができる半導体メモリやハードディスクドライブ等の記憶資源１２２、記憶資源１２２からコンピュータプログラムを読み込んで実行するＣＰＵ１２１、通信ネットワーク１３０のインタフェースとなる一つ以上のネットワークインタフェース１２３、通信ネットワーク１４０のインタフェースとなるネットワークインタフェース１２４を備えている。
【００１４】
各ストレージ装置１１０は、データを記憶する複数のディスク装置１１６を有し、ホスト１２０からの入出力コマンドに対して、データをディスク装置１１６へ書き込んだり、ディスク装置１１６から読み出したりする装置である。各ストレージ装置１１０は、いずれも同様のハードウェア構成であっても、異なるハードウェア構成であってもよい。ここでは、同様のハードウェア構成として、ストレージ装置１１０Ａを例に説明する。
【００１５】
ストレージ装置１１０Ａは、複数のディスク装置１１６を備え、ＲＡＩＤ（Ｒｅｄｕｎｄａｎｔ Ａｒｒａｙ ｏｆ Ｉｎｄｅｐｅｎｄｅｎｔ Ｄｉｓｋｓ）を構成することができる。なお、ディスク装置１１６に代えて、フラッシュメモリ、ＲＡＭ、ＲＯＭ等の半導体記憶装置を利用してもよい。半導体記憶装置は、ディスク装置に比べて、機械的な部分がないので振動、騒音、消費電力、応答速度といった面で優れている。また、ディスク装置と半導体記憶装置の両方を備える構成であっても良い。例えば、ディスク装置と不揮発性の半導体記憶装置とを備える構成とすることで、書き込みが多い場合には、ディスク装置を利用し、読み出しが多い場合には不揮発性の半導体装置を利用するといったように使い分けをすることができる。また、半導体記憶装置は、ディスク装置に比べて振動等に強いため、ＲＡＩＤシステムを構成せずに利用しても良い。
【００１６】
また、ストレージ装置１１０Ａは、複数のディスク装置１１６の他に、コントローラ１１１Ａを備えている。
【００１７】
コントローラ１１１Ａは、ストレージシステム１１０Ａの動作を制御する装置である。コントローラ１１１Ａは、通信ネットワーク１３０に対するネットワークインタフェース１１５Ａ、ディスク装置１１６に対するドライブインタフェース１１４Ａ、ＣＰＵ１１２Ａ、メモリ１１３Ａを備えている。ＣＰＵ１１２Ａ、メモリ１１３Ａは、それぞれ一つであっても複数であっても良い。メモリ１１３Ａは、例えば記憶装置１１６とホスト１２０との間で授受されるデータを一時的に記憶することができるキャッシュ領域や、ストレージ装置１１０Ａを制御するためのデータやコンピュータプログラムを記憶することができる制御領域などを備えることができる。ＣＰＵ１１２Ａは、制御領域からコンピュータプログラムを読み込んで実行することができる。
【００１８】
図２は、管理サーバの構成を示したものであり、具体的には、管理サーバが有するプログラム、データを示したものである。
【００１９】
管理サーバ１００の記憶資源１０２には、業務アプリ性能判定プログラム２００、ボリューム性能判定プログラム２０１、ボリューム割当プログラム２０２、性能監視プログラム２０３、マイグレーションタスク実行プログラム２０４、ボリュームグループ生成プログラム２０５、ボリューム検索条件生成プログラム２０６、マイグレーションタスク生成プログラム２０７、ペア監視プログラム２０８、及び各プログラムの実行に必要なデータが格納されている。プログラムの実行に必要なデータは、対応付けて格納されており、ここでは対応関係を分かりやすくするため、テーブルで説明する。テーブルとしては、図２に示すように、業務アプリ管理テーブル８００、業務アプリ種別テーブル１０００、論理ボリューム管理テーブル１１００、監視テーブル１８００、タスク実行管理テーブル２０００、ボリュームグループ管理テーブル２４００、ボリューム検索条件管理テーブル２６００、ペア定義テーブル３１００がある。
【００２０】
図３は、ストレージ装置の構成を示したものである。
【００２１】
ストレージ装置１１０のコントローラ１１１は、ホスト１２０がアクセスするための論理的な記憶領域である論理ボリューム２１０を形成することができる。コントローラ１１１は、この論理ボリューム２１０を、ディスク装置１１６によって提供される物理的な記憶領域との対応付け、他のストレージ装置によって提供される論理ボリュームと対応付けをすることができる。例えば、論理ボリューム２１０Ｃ、２１０Ｄは、ディスク装置１１６によって提供される物理的な記憶領域と対応付けられている。また、論理ボリューム２１０Ａ、２１０Ｂは、ストレージ装置１１０Ｂの論理ボリューム２１０Ｅ、２１０Ｆと対応付けられており、論理ボリューム２１０Ｅ―Ｈは、ストレージ装置１１０Ｂのディスク装置１１６と対応付けられている。従って、論理ボリューム２１０Ｃ又は２１０Ｄに対してホスト１２０からアクセスすると、ストレージ装置１１０Ａのディスク装置１１６の物理的な記憶領域に対してアクセスされることになる。一方、論理ボリューム２１０Ａ、２１０Ｂに対してホスト１２０からアクセスすると、ストレージ装置１１０Ａのコントローラ１１１Ａは、ストレージ装置１１０Ｂに対して、論理ボリューム２１０Ｅ、Ｆに対するアクセスとして、ホスト１２０からのアクセスを転送する。ストレージ装置１１０Ｂのコントローラ１１１Ｂは、論理ボリューム２１０Ｅ、Ｆのアクセスとして、ディスク装置１１６の物理的な記憶領域に対してアクセスする。このように、論理ボリューム２１０Ａ、２１０Ｂへのアクセスは、論理ボリューム２１０Ｅ、２１０Ｆへのアクセスとなり、結果としてストレージ装置１１０Ｂのディスク装置１１６に対するアクセスとなる。
【００２２】
このような構成において、データのマイグレーション（移動）について説明する。
【００２３】
図４は、データのマイグレーションの一例を示したものである。
【００２４】
コントローラ１１１Ａは、管理サーバ１００からマイグレーション元の論理ボリューム、マイグレーション先の論理ボリュームと共に、データマイグレーションの指示を受けると、マイグレーション元の論理ボリュームからマイグレーション先の論理ボリュームに対してデータをマイグレーションし、その後、論理ボリュームの識別子を変更する。
【００２５】
図４（ａ）は、データマイグレーション前の状態を示す。ここでは、ホスト１２０が論理ボリューム２１０Ｃと対応付けられ、ストレージ装置１１０Ａのディスク装置１１６の物理的な記憶領域４１Ａと対応付けられている。論理ボリューム２１０Ｄは、ディスク装置１１６の物理的な記憶領域４１Ｂと対応付けられている。
【００２６】
図４（ｂ）は、データマイグレーションの状態を示す。
【００２７】
図４（ａ）の状態において、管理サーバ１００からマイグレーション元を論理ボリューム２１０Ｃ、マイグレーション先を論理ボリューム２１０Ｄとするデータマイグレーションの指示を受けると、コントローラ１１１Ａは、記憶領域４１Ａに格納されているデータを記憶領域４１Ｂにコピーし、コピーが完了すると、記憶領域４１Ａと論理ボリューム２１０Ｄ、記憶領域４１Ａと論理ボリューム２１０Ｃとを対応付ける。これにより、ホスト１２０と論理ボリュームとの対応関係を変更せずに、物理的なデータの格納位置を変更することが可能となる。
【００２８】
なお、図４では論理ボリューム２１０Ｃ、２１０Ｄの間でのデータマイグレーションを示したが、論理ボリューム２１０Ａ、２１０Ｂ間でのデータマイグレーションも同様に行うことができる。
【００２９】
例えば、図３において論理ボリューム２１０Ａに格納されているデータを論理ボリューム２１０Ｂにデータマイグレーションする場合には、論理ボリューム２１０Ｅに格納されているデータを論理ボリューム２１０Ｆにコピーし、コピー完了後に、論理ボリューム２１０Ａ、２１０Ｂと、論理ボリューム２１０Ｅ、２１０Ｆとの対応関係を変更すればよい。この場合は、単に論理ボリューム２１０Ｅ、２１０Ｆと物理的な記憶領域との対応関係を変更しても良い。
【００３０】
同様の論理ボリューム２１０Ａと論理ボリューム２１０Ｃとの間でもデータのマイグレーションを行うことができる。
【００３１】
なお、ここで説明しているマイグレーションは、マイグレーション後にマイグレーション元（コピー元）の記憶領域からデータを消去する場合、消去しない場合の両方を含んでいる。
【００３２】
図５は、ホストの構成を示したものであり、具体的には、ホストが有するプログラム、データを示したものである。
【００３３】
各ホスト１２０の記憶資源１２２には、一又は複数の業務アプリケーションプログラム（以下、「業務アプリ」と称す。）２２０、性能収集プログラム２２１、オペレーティングシステム（OS）２２２及びこれらのプログラムにより利用される稼動情報テーブル４００、性能情報テーブル５００が格納されている。ＣＰＵ１２１は、記憶資源１２２に格納されている、これらのプログラムを実行する。
【００３４】
以下、本システムの処理について説明する。
【００３５】
まず、ホスト１２０の処理について説明する。
【００３６】
業務アプリ２２０は、例えばＷｅｂサービス、勤休管理サービス、銀行の預金、残高紹介等のオンラインサービスを行うアプリケーションプログラムである。業務アプリ２２０は、ストレージ装置１１０の論理ボリューム２１０に対して入出力コマンドを発行することで、サービスを提供する。また、各業務アプリ２２０は、ストレージ装置に対するアクセス要求を発行した場合、その情報を稼動情報テーブル４００にログとして格納する。
【００３７】
図６は、稼動情報テーブルを示したものである。
【００３８】
これは、業務アプリ６０１、書き込み又は読み出し先の論理ボリューム６０２、書き込み又は読み出しを意味するコマンド６０３、コマンドを発行した時刻６０４が対応付けて格納されているものである。なお、時刻には日付情報も含まれている。
【００３９】
図７は、性能情報テーブルを示したものである。
【００４０】
性能情報テーブルは、業務アプリ情報７０１、論理ボリューム７０２、稼動開始時刻７０３、更新日時７０４、アクセスパターン７０５が対応付けて格納されているものである。業務アプリ情報７０１は、業務アプリの名称と業務アプリの製造元の情報が含まれている。これは、ホストの管理者が設定する。更新日時７０３、アクセスパターン７０４は、性能収集プログラム２２１によって設定される。なお、業務アプリに対してストレージ装置の記憶領域が割当てられていない場合には、業務アプリは稼動していないので、稼動開始時刻７０３、更新日時７０４、アクセスパターン７０５には、何も設定されない。
【００４１】
性能収集プログラム２２１は、稼動情報テーブルを一定周期で参照して、次に示す定義に従って性能情報テーブルの更新日時７０４、アクセスパターン７０５を設定する。
（定義）
「稼動開始時刻」最初のアクセスの時刻
「更新日時」業務アプリが最後にアクセスした時刻から現在の時刻までの時間
「アクセスパターン」
「単発」１ヶ月間で５００以下のアクセス数
「分散」１日に５００以上１０００以下のアクセス数
「集中」１時間に５００以上のアクセス数
この定義は、定義ファイルとしてホスト１２０の記憶資源１２２に格納しておき、性能収集プログラム２２１が、この定義ファイルを読み出して実行するようにしても良いし、性能収集プログラム２２１自体に定義しても良い。定義ファイルの設定は自由に変更することができるので、例えばアクセスパターンについては、書き込みのアクセスで集計することも可能である。また、定義ファイルを管理サーバ１００からホスト１２０へ送るようにすれば、管理サーバ１００で集計したい項目、内容を自由に決めることができる。
【００４２】
また、性能情報テーブル７００の業務アプリ情報７０１は、ホスト管理者が設定するようにしているが、性能収集プログラム２２１がＯＳ２２２と通信を行うことによって、インストールされている業務アプリをＯＳから収集し、設定するようにしても良い。
【００４３】
また、性能収集プログラム２２１は、管理サーバ１００から性能情報テーブル７００に設定された項目についての送信要求を受けると、管理サーバ１００に送る。既に述べたように定義ファイルでこれ以外の項目についても集計している場合には、その情報についても管理サーバ１００へ送る。
【００４４】
次に、管理サーバ１００の処理について説明する。
【００４５】
図８は業務アプリ管理テーブルを示したものである。
【００４６】
業務アプリ管理テーブル８００は、ホスト８０１、業務アプリ８０２、種別８０３、稼動開始時刻８０４、更新日時８０５、アクセスパターン８０６、評価値８０７、論理ボリューム８０８が対応付けて設定されたものである。
【００４７】
業務アプリ８０２、稼動開始時刻８０４、更新日時８０５、アクセスパターン８０６は、各ホスト１２０の性能情報テーブル７００に設定されている情報を収集したものである。
【００４８】
図９は、業務アプリ性能判定プログラムの処理を示したものである。
【００４９】
業務アプリ性能判定プログラム２００は、一定の周期で、各ホスト１２０の性能情報テーブルに設定されている情報を収集し、業務アプリ管理テーブル８００に収集した情報を設定する（Ｓ９０１）。次に、図１０に示す業務アプリ種別テーブル１０００を参照し、業務アプリの種別を設定する（Ｓ９０２）。業務アプリ種別テーブル１０００は、業務アプリの製造元１００１、業務アプリ１００２、種別１００３が対応付けられたものであり、管理サーバ１００の記憶資源１０２に格納されている。これは、管理者によって設定されるものである。
【００５０】
次に、各項目に対して定義された評価値から、業務アプリに対する評価値を求める（Ｓ９０３）。
【００５１】
各項目の評価値は、例えば次のように設定する。
【００５２】
稼動開始時刻：稼動開始時刻が１時間以内の場合はＡ＝１、Ｂ＝０．５、稼動開始時刻が１時間以上の場合Ａ＝０．２、Ｂ＝１
種別：アーカイブ…０、メールサーバ…１、業務システム…２
更新日時：１年間…０、１ヶ月…１、１日…３
アクセスパターン：単発…０、分散…１、集中…２
ここでは、アクセスが多いものほど値が高くなるように設定している。
【００５３】
この定義を利用して、業務アプリ毎に、ＡPi＝Ａ＊種別の評価値＋Ｂ＊（更新日時の評価値＋アクセスパターンの評価値）を求め、その最大値と最小値の間を５つに分け、それぞれ該当するレベルを求める。例えば、最小値が０で最大値が５の場合、０≦APｉ≦１はレベル１、１＜APｉ≦２はレベル２、２＜APｉ≦３はレベル３、３＜APｉ≦４はレベル４、４＜APｉ≦５はレベル５といったように業務アプリの評価値を決定する。決定した評価値を、評価値８０７に設定する。
【００５４】
なお、各項目の評価値の定義は、自由に設定することができる。また、稼動開始時間を利用することで、稼動開始していない、あるいは稼動開始直後の業務アプリについては種別を重視し、ある程度稼動している業務アプリについては、更新日時、アクセスパターン等の稼動情報を重視するようにしている。なお、ここで求めた業務アプリの評価値は、これに限られず、その他の方法によって求めたものでも良い。
【００５５】
業務アプリ性能判定プログラムは、一定時間経過後（Ｓ９０４で「Ｙ」）、再びＳ９０１に戻って処理を続ける。
【００５６】
図１１は、論理ボリューム管理テーブルを示したものである。
【００５７】
論理ボリューム管理テーブル１１００は、論理ボリューム（ＶＯＬ）１１０１、関連ボリューム（関連ＶＯＬ）１１０２、ストレージ装置１１０３、割当状況１１０４、容量１１０５、回転数１１０６、ＲＡＩＤレベル１１０７、ディスクタイプ１１０８、応答速度１１０９、アクセス頻度１１１０、評価値１１１１が対応付けられている。これらの情報は、管理サーバ１００の記憶資源１０２に格納されている。
【００５８】
論理ボリューム１１０１は、論理ボリュームの識別子が設定され、関連ボリューム１１０２は、図３で説明した論理ボリューム２１０Ａと論理ボリューム２１０Ｅのように論理ボリュームどうしで対応付けがされている場合に設定される。ストレージ装置１１０３は、論理ボリュームが設定されているストレージ装置であり、割当状況１１０４は、ホスト又は業務アプリに対して割当てられている場合に「済」、まだ割当てられていない場合には「未済」が設定される。容量１１０５は論理ボリュームの容量であり、回転１１０６は、論理ボリュームの物理的な記憶領域であるディスク装置の回転数である。なお、物理的な記憶領域が半導体メモリである場合には、０が設定される。ＲＡＩＤレベル１１０７は、ＲＡＩＤ０−ＲＡＩＤ５といった値であり、ディスクタイプ１１０８は、物理的な記憶領域の媒体の種別が設定される。ここで、FCとはファイバチャネルループに対応したディスク装置であり、ＦＭとは半導体メモリであるフラッシュメモリを意味している。応答速度１１０９、アクセス頻度１１１０は、当該論理ボリュームに対する応答速度及びアクセス頻度である。評価値１１１１は、ボリューム性能判定プログラム２０１により設定される。
【００５９】
図１２は、ボリューム性能判定プログラムの処理を示したものである。
【００６０】
ボリューム性能判定プログラム１２０１は、一定の周期で、各ストレージ装置から、各論理ボリュームの容量、回転数、ＲＡＩＤレベル、ディスクタイプ、応答速度、アクセス頻度といった情報を収集し、論理ボリューム管理テーブル１１００に収集した情報を設定する（Ｓ１２０１）。
【００６１】
次に、決められた項目に対して評価値を求め、各論理ボリュームに対する評価値を求める（Ｓ１２０２）。
【００６２】
各項目の評価値は、例えば次のように設定する。
回転数：０…３、０より大きく１００００以下…０、１００００より大きく１５０００以下…１、１５０００より大きい…２
ディスクタイプ：ＡＴＡ…０、ＦＣ…１、半導体メモリ…２
ＲＡＩＤレベル：ＲＡＩＤ０…０、ＲＡＩＤ１…２、ＲＡＩＤ３…３、ＲＡＩＤ４…４、ＲＡＩＤ５…５
ここでは、性能が高い、信頼性が高いものほど値が高くなるように設定している。
【００６３】
この定義を利用して、論理ボリューム毎に、ＶＯＬi＝回転数の評価値＋ディスクタイプの評価値＋ＲＡＩＤレベルの評価値を求め、その最大値と最小値の間を５つに分け、それぞれ該当するレベルを求める。例えば、最小値が０で最大値が５の場合、０≦ＶＯＬｉ≦１はレベル１、１＜ＶＯＬｉ≦２はレベル２、２＜ＶＯＬｉ≦３はレベル３、３＜ＶＯＬｉ≦４はレベル４、４＜ＶＯＬｉ≦５はレベル５といったように論理ボリュームの評価値を決定する。決定した評価値を、評価値１１１１に設定する。
【００６４】
なお、各項目の評価値の定義は、自由に設定することができる。なお、ここで求めた論理ボリュームの評価値は、これに限られず、その他の方法によって求めたものでも良い。
【００６５】
ボリューム性能判定プログラム２０１は、一定時間経過後（Ｓ１２０３で「Ｙ」）、再びＳ１２０１に戻って処理を続ける。
【００６６】
このように業務アプリの評価値、論理ボリュームの評価値を求めたが、それぞれの評価値の最大値と最小値は一致するようにすることが望ましい。また、ここで評価値を求める際に、応答速度、アクセス頻度については考慮されていないが、これについても評価値を設定することにより、論理ボリュームの評価値を求める際に考慮することができるようになる。
【００６７】
次に、業務アプリ２２０に論理ボリュームを割当てる処理について説明する。
【００６８】
図１３は論理ボリュームを割当てる処理を示した図である。
【００６９】
この処理は、管理者によりボリューム割当プログラム２０２を実行することによって行われる。
【００７０】
まず、論理ボリュームの割当を行うための設定画面を表示する（Ｓ１３０１）。
【００７１】
図１４は、表示される設定画面の一例を示したものである。
【００７２】
設定画面には、ホスト-業務アプリ一覧１４０１、ホスト１４０２、業務アプリ１４０３、評価値１４０４、容量１４０３、追加ボタン、変更ボタン、戻りボタン、完了ボタンが表示される。ホスト−業務アプリ一覧１４０１には、図８の業務アプリ管理テーブル８００に設定されている全てのホストと業務アプリが対応付けて表示される。更に、論理ボリュームが割当てられている業務アプリと、論理ボリュームが未割当の業務アプリとは異なった色で表示される。
【００７３】
ホスト１４０２、業務アプリ１４０３は、管理者がホスト名、業務アプリ名を入力してもよく、またホスト−業務アプリ一覧１４０１に表示されているホストと業務アプリを指定して、追加ボタンを指示することにより、指定されたホストと業務アプリがホスト１４０２、業務アプリ１４０３に表示することもできる。これにより、業務アプリ管理テーブル８００に設定され、論理ボリュームが未割当の業務アプリについても、業務アプリ管理テーブル８００に設定されていない業務アプリについても、論理ボリュームの割当の対象として指定することができる。
【００７４】
評価値１４０４は、業務アプリ１４０３に入力された業務アプリの評価値が表示される。但し、新たに論理ボリュームを割当てる場合には、業務アプリに関する情報が少ないために、評価値が必ずしも適正でない場合がある。この場合、別のホストで既に同じ業務アプリが運用していれば、その評価値を利用したり、あるいは関連する業務アプリの評価値を利用することで、より適正な評価値となる場合がある。そのため、ホスト−業務アプリ一覧１４０１に表示された業務アプリを指定し、変更を指示すると、指定された業務アプリの評価値を評価値１４０４に表示することができるようになっている。なお、評価値を元の状態に戻す場合には、戻りボタンを指示することで、最初に表示された評価値が表示されるようになっている。
【００７５】
容量１４０３は、複数の容量が設定できるようになっている。一つの容量を設定すると一つの論理ボリュームの割当がされ、複数の容量を設定すると、複数の論理ボリュームが割当てられる。つまり設定された容量の数が、割当てる論理ボリュームの数となる。
【００７６】
再び、図１３に戻り、処理の説明をする。
【００７７】
設定画面を表示した後に、業務アプリ管理テーブル８００に設定されたホスト８０１、業務アプリ８０２をホスト−業務アプリ一覧１４０１に表示する（Ｓ１３０２）。次に管理者からの入力を待ち（Ｓ１３０３）、入力があった場合（Ｓ１３０３で「Ｙ」）、完了ボタンの指示かを判断する（Ｓ１３０４）。
【００７８】
ホスト１４０２、業務アプリ１４０３の入力であった場合（Ｓ１３０５で「Ｙ」）、業務アプリ性能判定プログラム２００を実行し（Ｓ１３０６）、これにより得られた評価値を評価値１４０４に設定し（Ｓ１３０７）、再び管理者からの入力を待つ。管理者によりホスト１４０２、業務アプリ１４０３の入力があった場合に、業務アプリ性能判定プログラム２００を実行することで、当該ホストに入力された業務アプリが設定されているかを確認することができる。もし設定されていなければ、業務アプリの評価値は何も表示されないので、論理ボリュームの割当がされない。
【００７９】
ホスト−業務アプリ一覧１４０１に表示された業務アプリの指示、追加ボタンの指定である場合（Ｓ１３０８で「Ｙ」）、指示された業務アプリを業務アプリ１４０３、指示された業務アプリと対応するホストをホスト１４０２、評価値を評価値１４０４に表示する（Ｓ１３０９）。
【００８０】
ホスト−業務アプリ一覧１４０１に表示された業務アプリの指示、変更ボタンの指定である場合（Ｓ１３１０で「Ｙ」）、指定された業務アプリの評価値を業務アプリ管理テーブルから読み出し、評価値１４０４に設定する（Ｓ１３１１）。
【００８１】
Ｓ１３０４、Ｓ１３０５、Ｓ１３０８、Ｓ１３１０で示した以外の入力であれば、再び管理者の入力を待つ。
【００８２】
Ｓ１３０４で完了ボタンの指示である場合、業務アプリ管理テーブル８００に評価値を設定し（Ｓ１３１２）、論理ボリュームの割当処理を行い（Ｓ１３１３）、処理を終了する。
【００８３】
図１５は、論理ボリュームの割当の処理を示したものである。
【００８４】
この処理も、ボリューム割当プログラム２０２によって実行される。
【００８５】
まず、設定画面で設定された評価値に基づいて、論理ボリューム管理テーブル１１００から対応する評価値の論理ボリュームを検索する（Ｓ１５０１）。例えば、Level１が設定されている場合には、論理ボリューム管理テーブル１１００の上から順にLevel１の論理ボリュームがあるかを検索する。なお、検索の対象となる論理ボリュームは割当状態が未割当の論理ボリュームである。この結果、対応する評価値の論理ボリュームがある場合（Ｓ１５０２で「Ｙ」）、設定画面で設定された容量を満たすか判断する（Ｓ１５０３）。容量を満たしていれば（Ｓ１５０３で「Ｙ」）、業務アプリ管理テーブル８００の論理ボリューム８０８に当該論理ボリュームを設定し、論理ボリューム管理テーブル１１００の当該論理ボリュームの割当状態を「済」に設定する（Ｓ１５０４）。次に、設定画面で設定された全ての容量に対して論理ボリュームを割当てたかを判断し（Ｓ１５０５）、全ての容量に対して論理ボリュームが割当られていない場合（Ｓ１５０５で「Ｎ」）、Ｓ１５０１に戻り、次の容量に対する論理ボリュームの検索を行う。
【００８６】
Ｓ１５０５で全ての容量に対して論理ボリュームの割当がされている場合（Ｓ１５０５で「Ｙ」）、検索結果の画面を表示する（Ｓ１５０６）。
【００８７】
図１６は、検索結果の画面の表示例を示したものである。
【００８８】
検索結果の画面には、ホスト１６０１、業務アプリ１６０２、評価値１６０３、容量１６０４、論理ボリューム１６０５、実容量１６０６、変更レベル１６０７、再検索ボタン、割当ボタンが表示される。
【００８９】
ホスト１６０１、業務アプリ１６０２、評価値１６０３、容量１６０４は、図１４に示した設定画面のホスト１４０２、業務アプリ１４０３、評価値１４０４、容量１４０３に表示されるものと同じである。論理ボリューム１６０５は、図１５の処理により割当対象として特定された論理ボリュームが表示される。実容量とは、論理ボリュームの容量であり、論理ボリューム管理テーブル１１００に設定されている論理ボリュームの容量である。変更レベル１６０７は、管理者が別のレベルのボリュームに変更したい場合に、別のレベル入力する。
【００９０】
管理者が、再検索ボタンを指示すると、再度論理ボリュームの検索を実行し、割当を指示すると、ストレージ装置に対して論理ボリュームの割当が指示される。
【００９１】
再び、図１５の処理に戻り説明する。
【００９２】
管理者からの入力を待ち（Ｓ１５０７）、再検索の指示である場合（Ｓ１５０８で「Ｙ」）、業務アプリ管理テーブル８００に設定した論理ボリュームを削除し、また論理ボリューム管理テーブル１１００に設定した割当状況を「未割当」にして（Ｓ１５０９）、Ｓ１５０１に戻り、再びボリュームの検索を開始する。
【００９３】
管理者からの入力が割当の指示である場合（Ｓ１５１０で「Ｙ」）、ストレージ装置１１０に対して割当てる論理ボリューム、ホストのポート番号とを送り（Ｓ１５１１）、次にホストに対して割当が終了したことを通知して（Ｓ１５１２）、処理を終了する。
【００９４】
ストレージ装置１１０は、送られてきた論理ボリュームとホストのポート番号をコントローラのメモリに設定する。また、ホスト１２０は、管理サーバ１００から論理ボリュームの割当が通知されると、ストレージ装置１１０に対して、ホストのポート番号とともに、論理ボリュームを通知するコマンドを送る。ストレージ装置１１０では、論理ボリュームとポート番号とを管理しており、ホストから論理ボリュームを通知するコマンドを受けると、ポート番号と対応づけられている論理ボリュームの情報をホスト１２０に送る。これにより、ホスト１２０では、ストレージ装置で利用できる論理ボリュームを取得することができ、業務アプリ２２０は、当該論理ボリュームに対してアクセスすることが可能となる。
【００９５】
なお、Ｓ１５０２、Ｓ１５０３で論理ボリュームがないと判断された場合、図１６に示す表示画面を表示し（Ｓ１５１３）、管理者の入力を待つ（Ｓ１５０８）。Ｓ１５０２で論理ボリュームがないと判断された場合には、論理ボリューム１６０５に「該当するレベルの論理ボリューム無し」と表示し、Ｓ１５０３で容量を満たす論理ボリュームがないと判断された場合に論理ボリューム１６０５に「該当する容量の論理ボリューム無し」と表示する。これに対して、管理者は、容量又はLevelを再設定し、再検索のボタンを押して、別の論理ボリュームを検索する。
【００９６】
尚、図１５で示した処理では、管理者から割当の指示があるのを待つようにしているが、割当てる論理ボリュームが見つかった場合、管理者の指示を待たずにＳ１５１１の処理を開始するようにしても良い。
【００９７】
以上説明したように、業務アプリに対して論理ボリュームの割当が行われる。
【００９８】
なお、ここでは、業務アプリの評価値を求める構成としているが、業務アプリが利用するファイル単位で評価値を求めることも可能である。つまり、図６に示した稼動情報テーブルにファイルの情報も追加することによって、業務アプリ性能判定プログラムでは、ファイル単位に評価値を求めることが可能となる。例えば、一つの業務アプリで複数のファイルを別々の論理ボリュームに格納している場合は、ファイル単位で更新日時、アクセスパターンを求める。これにより、ファイル又はデータに対する評価を求めて、ファイル又はデータが要求する性能に合わせた論理ボリュームを割当てることができる。
【００９９】
このように、業務アプリ２２０に論理ボリュームを割当て、業務を実行すると、業務アプリに関する情報が蓄積され、業務アプリ２２０に対する評価値が変わってくる場合がある。ここでは、業務アプリ２２０の評価値が変化した場合に、論理ボリュームを再割当する方法について説明する。
【０１００】
図１７は、論理ボリュームを再割当する処理を示したものである。
【０１０１】
これは、性能監視プログラム２０３によって実行される。
【０１０２】
性能監視プログラム２０３は、業務アプリ管理テーブル８００から業務アプリを特定して、特定した業務アプリの評価値を読み出す（Ｓ１７０１）。次に、特定した業務アプリに対応付けて設定されている論理ボリュームの評価値を論理ボリューム管理テーブル１１００から読み出す（Ｓ１７０２）。次に、業務アプリの評価値と論理ボリュームの評価値を比較し、双方の評価値が一致しているかを判断する（Ｓ１７０３）。評価値が一致していれば、まだ処理をしていない業務アプリがあるかを判断し（Ｓ１７０４）、まだ処理が行われていない業務アプリがあれば、Ｓ１７０１に戻り、別の業務アプリに対して同じ処理を行う。一方、Ｓ１７０３で、評価値が一致していなければ、監視テーブル１８００に業務アプリと、評価が一致していない論理ボリュームとを設定し（Ｓ１７０５）、Ｓ１７０４の処理へ移る。
【０１０３】
図１８は、監視テーブルを示したものである。
【０１０４】
監視テーブル１８００は、業務アプリの評価値と業務アプリに対応付けられている論理ボリュームの評価値が一致していない場合に、業務アプリ１８０１、論理ボリューム１８０２が設定される。また、検索結果１８０３には、業務アプリの評価値と一致する評価値を持つ論理ボリュームが設定される。
【０１０５】
再び、図１７に戻り処理を説明する。
【０１０６】
全ての業務アプリと業務アプリと対応付けられている論理ボリュームの評価値の比較を終了すると（Ｓ１７０４で「Ｎ」）、監視テーブルに業務アプリ１８０１、論理ボリューム１８０２が設定されているか判断する（Ｓ１７０６）。業務アプリ１８０１、論理ボリューム１８０２が設定されている場合、業務アプリの一つを特定し、業務アプリ管理テーブルから特定した業務アプリの評価値を読み出す（Ｓ１７０７）。次に、この評価値と一致する評価値を有し、割当状況が「未割当」の論理ボリュームを論理ボリューム管理テーブル１１００から検索する（Ｓ１７０８）。この検索の結果、論理ボリュームがあれば（Ｓ１７０９で「Ｙ」）、監視テーブル１８００の検索結果１８０３に論理ボリュームを設定する（Ｓ１７１０）。このとき、論理ボリューム管理テーブル１１００の当該論理ボリュームの割当状況に「済」を設定する。一方、論理ボリュームがなければ（Ｓ１７０９で「Ｎ」）、監視テーブルの検索結果１８０３に、「該当ボリュームなし」を設定する。
【０１０７】
監視テーブル１８００に、まだ論理ボリュームの検索をしていない業務アプリがあれば（Ｓ１７１２で「Ｙ」）、Ｓ１７０７に戻り、別の業務アプリに対して処理を行う。監視テーブル１８００に設定された全ての業務アプリについて処理が行われた場合（Ｓ１７１３で「Ｎ」）、管理サーバ１００の表示装置に結果を表示する（Ｓ１７１３）。
【０１０８】
図１９は、結果の表示の一例を示したものである。
【０１０９】
画面には、業務アプリ１９０１、業務アプリに対応付けられている論理ボリューム１９０２、業務アプリの評価値と一致する論理ボリューム１９０３が表示される。これは、それぞれ監視テーブル１８００に設定された業務アプリ１８０１、論理ボリューム１８０２、検索結果１８０３である。また、論理ボリューム１９０３に論理ボリュームが表示される場合には、「移動する」が選択できるようになっている。これは、管理者が、論理ボリューム１９０３に表示された論理ボリュームにデータをマイグレーションする場合に、「移動する」を選択する。
【０１１０】
再び、図１７に戻り処理を説明する。
【０１１１】
Ｓ１７１３で結果を画面に表示した後、管理者からの入力を待つ（Ｓ１７１４）。管理者から「完了」の指示があった場合、移動が選択されている業務アプリに対してデータのマイグレーションを行うため、タスク実行管理テーブルを設定し（Ｓ１７１５）、マイグレーションタスク実行プログラム２０４を実行し、処理を終了する。
【０１１２】
図２０は、タスク実行管理テーブルを示したものである。
【０１１３】
タスク実行管理テーブルは、タスク２００１、ボリュームグループ２００２、ボリューム検索条件２００３、タスク実行タイミング２００４、ソースボリューム２００５、ターゲットボリューム２００６が設定される。
【０１１４】
タスク２００１は、各タスクを管理するためのタスクの名称であり、ボリュームグループ２００２は、論理ボリュームの集合である。ボリューム検索条件２００３は、ターゲットボリューム２００６を検索するための条件である。タスク実行タイミング２００４は、マイグレーションを行うタイミングを設定するものである。ソースボリューム２００５は、マイグレーション元の論理ボリュームであり、ボリュームグループ２００２が設定されている場合には、ボリュームグループ２００２に属する論理ボリュームが設定される。ここでは、タスク２００１、タスク実行タイミング２００４、ソースボリューム２００５、ターゲットボリューム２００６が設定され、マイグレーションされる場合について説明する。ボリュームグループ２００２、ボリューム検索条件２００３が設定された場合のマイグレーションについては、後述する。
【０１１５】
Ｓ１７１５で行われるタスク管理テーブルの設定は、タスク２００１を設定し、移動が選択された論理ボリューム１９０２に表示されている論理ボリュームをソースボリューム２００５、論理ボリューム１９０３に表示されている論理ボリュームをターゲットボリューム２００６に設定する。また、タスク実行タイミング２００４には、「直ぐに実行」を設定する。このように、「移動する」が指定された業務アプリ毎にタスクを設定する。
【０１１６】
図２１は、マイグレーションを実行する処理を示したものである。
【０１１７】
これは、マイグレーションタスク実行プログラム２０４によって実行される。
【０１１８】
まず、タスク管理テーブルに設定されたタスクの実行タイミングを監視し（Ｓ２１０１）、実行タイミングのタスクがある場合（Ｓ２１０２）、ソースボリューム、ターゲットボリューム、マイグレーションコマンドをストレージサブシステムに送信する（Ｓ２１０３）。ストレージサブシステムから、マイグレーションの終了を受けると（Ｓ２１０４で「Ｙ」、タスク管理テーブルに設定されているタスクを削除し（Ｓ２１０５）、再びＳ２１０２へ戻り、タスク実行タイミングを監視する。
【０１１９】
以上説明したように、性能監視プログラム２０３によって、業務アプリの評価値と、論理ボリュームの不一致が生じた場合に、業務アプリの評価値に基づいて論理ボリュームを選択し、データの移動を行う。なお、Ｓ１７１３−Ｓ１７１５で、管理者にマイグレーションを行うかどうかを判断するようにしているが、この処理をせずに、監視テーブル１８００に業務アプリ、論理ボリュームが設定されたら、Ｓ１７１６を行うようにして、自動的にデータのマイグレーションが行われるようにしても良い。
【０１２０】
次に、管理者の指定によりデータのマイグレーションを行う場合について説明する。ここでは、一つ一つの論理ボリュームを指定してマイグレーションを行うのではなく、複数の論理ボリュームをまとめたボリュームグループを定義できるようにして、この単位でマイグレーションすることで管理者の負担を減らす構成を説明する。
【０１２１】
図２２は、ボリュームグループを生成又は編集するための表示画面の一例を示したものである。
【０１２２】
この表示画面には、ボリュームグループ一覧２２０１、ボリュームグループ名称２２０２、属性一覧２２０３、ボリューム一覧２２０４、完了ボタンが表示される。
【０１２３】
ボリュームグループ一覧２２０１は、後述するボリュームグループ管理テーブルに設定されているボリュームグループが表示される。
【０１２４】
ボリュームグループ名称２２０２は、管理者が新たに設定、変更するボリュームグループの名称を入力する領域である。
【０１２５】
属性一覧２２０３は、図１１に示した論理ボリューム管理テーブル１１００に設定されている属性、図８に示す業務アプリ管理テーブル８００に設定されている業務アプリが表示される。また、この属性は論理ボリュームの評価値、業務アプリの評価値も設定できる。このように、この属性一覧２２０３に表示する属性は、自由に設定できるようになっている。従って、図１１に示す論理ボリューム管理テーブル１１００の全ての属性とすることも、一部の属性とすることも可能である。
【０１２６】
ボリューム一覧２２０４は、属性一覧２２０３で指定された属性を有する論理ボリュームや、既に設定されたボリュームグループの論理ボリュームが表示される。
【０１２７】
図２３は、ボリュームグループの設定/編集する場合の処理の一例を示したものである。
【０１２８】
この処理は、管理者によりボリュームグループ生成プログラム２０５が実行された場合に行われる処理である。
【０１２９】
まず、図２２に示す画面を管理サーバ１００の表示装置に表示する（Ｓ２３０１）。この段階では、まだ、ボリュームグループが指定されていないので、ボリュームグループ名称２２０２は何も表示されない。次に、管理者からの入力を待ち（Ｓ２３０２）、入力があった場合、完了ボタンの指示か判断する（Ｓ２１０３）。完了ボタンの指示である場合、処理を終了する。
【０１３０】
ボリュームグループ一覧２２０１に表示されたボリュームグループが指定された場合（Ｓ２３０４で「Ｙ」）、ボリュームグループ名称２２０２に指定されたボリュームグループを表示する（Ｓ２３０５）。次に、ボリュームグループ管理テーブルから指定されたボリュームグループをキーにして、ボリューム一覧２２０５に、特定した論理ボリューム、ボリュームグループを表示し（Ｓ２３０６）、再び管理者の入力を待つ。
【０１３１】
ボリュームグループの名称の変更である場合（Ｓ２３０７で「Ｙ」）、ボリュームグループ管理テーブルに設定された、ボリュームグループ一覧で指定されたボリュームグループをボリュームグループ名称２２０２に入力されたボリュームグループに変更し（Ｓ２３０８）、再び管理者の入力を待つ。なお、Ｓ２３０７では、管理者によるボリュームグループ名称２２０２の入力があり、ボリュームグループ一覧２２０１で指定されたボリュームグループとボリュームグループ名称２２０２に入力されたボリュームグループとを比較して、ボリュームグループの名称が変更されたかを判断している。一致していれば変更なし、一致していなければ変更ありと判断する。
【０１３２】
属性の指定である場合（Ｓ２３０９で「Ｙ」）、論理ボリューム管理テーブル１１００又は業務アプリ管理テーブル８００から指定された属性を有する論理ボリュームをボリューム一覧６４に表示し（Ｓ２３１０）、再び管理者の入力を待つ。
【０１３３】
ボリューム追加（チェックボックスの指示によるチェックマークの付与）である場合（Ｓ２３１１で「Ｙ」）、ボリュームグループ管理テーブルに論理ボリュームを設定し（Ｓ２３１２）、再び管理者の入力を待つ。
【０１３４】
ボリュームの削除（チェックボックスの指示によるチェックマークの消去）である場合（Ｓ２３１３で「Ｙ」）、ボリュームグループ管理テーブルから該当する論理ボリュームを削除し（Ｓ２３１４）、再び管理者の入力を待つ。
【０１３５】
図２４は、ボリュームグループ管理テーブルを示したものである。
【０１３６】
ボリュームグループ管理テーブルは、ボリュームグループの名称であるボリュームグループ２４０１、ボリュームグループに属する論理ボリューム２４０２が設定される。図２２のボリュームグループ一覧２２０１には、ボリュームグループ２４０１に設定されたボリュームグループが表示される。
【０１３７】
また、Ｓ２３１２、Ｓ２３１４で論理ボリュームの追加又は削除があった場合には、ボリュームグループ管理テーブルに論理ボリュームが追加、削除される。
【０１３８】
次に、管理者がボリュームの検索条件を生成、編集する場合について説明する。
【０１３９】
図２５は、ボリュームの検索条件を生成、編集するための表示画面の一例を示したものである。管理サーバ１００の表示装置には、ボリューム検索条件一覧２５０１、ボリューム検索条件名称２５０２、属性一覧２５０３、検索条件２５０４、論理条件ボタン（ＡＮＤボタン、ＯＲボタン、ＮＯＲボタン）、削除ボタン、完了ボタンが表示される。
【０１４０】
ボリューム検索条件一覧２５０１には、後述する図２６に設定されたボリューム検索条件が表示される。ボリューム検索条件名称２５０２は、管理者によって入力される検索条件の名称、又は既に設定されている検索条件の名称が表示される。属性一覧２５０３には、論理ボリューム管理テーブルの属性が表示される。検索条件２５０４には、属性一覧２５０３、論理条件ボタンから指定された属性、論理条件が表示される。
【０１４１】
図２６は、ボリューム検索条件管理テーブルの一例を示したものである。
【０１４２】
ボリューム検索条件管理テーブル２６００は、ボリューム検索条件２６０１と、検索条件２６０２が設定される。ボリューム検索条件２６０１とは、図２５の画面で管理者により入力されたボリューム検索条件名称２５０２が設定され、検索条件２６０２は、管理者により入力された属性、論理条件が設定される。
【０１４３】
図２７は、ボリュームの検索条件を生成又は編集する場合の処理を示したものである。
【０１４４】
この処理は、管理者により実行されるボリューム検索条件生成プログラム２０６により実行される。
【０１４５】
まず、図２５に示した画面を管理サーバ１００の表示装置に表示する（Ｓ２７０１）。次に、ボリューム検索条件管理テーブル２６００を検索し、ボリューム検索条件が設定されている場合には、ボリューム検索条件を検索条件一覧２５０１に表示する（Ｓ２７０２）。また、論理ボリューム管理テーブル１１００に設定されている属性を属性一覧２５０３に表示する（Ｓ２７０３）。次に、管理者からの入力を待ち（Ｓ２７０４）、入力があった場合、完了ボタンの指示か判断する（Ｓ２７０５）。
【０１４６】
管理者からの入力が、ボリューム検索条件一覧２５０１に表示されるボリューム検索条件の指定である場合（Ｓ２７０６で「Ｙ」）、指定されたボリューム検索条件をボリューム検索条件名称２５０２に表示し、またボリューム検索条件管理テーブル２６００から、指定されたボリューム検索条件に対応する検索条件を読み出し、検索条件２５０４に表示する（Ｓ２７０７）。
【０１４７】
Ｓ２７０５で管理者からの入力が完了ボタンの指示である場合（Ｓ２７０５で「Ｙ」）、ボリューム検索条件名称２５０２に入力された名称と一致するボリューム検索条件がボリューム検索条件管理テーブル２６００にあるかを判断し（Ｓ２７０８）、一致するボリューム検索条件がある場合（Ｓ２７０８で「Y」）、検索条件２５０４に設定された検索条件を、ボリューム検索条件管理テーブル２６００に設定する（Ｓ２７０９）。一致する名称がない場合（Ｓ２７０８で「N」）、ボリューム検索条件管理テーブルに、入力されたボリューム検索条件と、入力された検索条件を設定する（Ｓ２７０９）。その後、処理を終了する。
次に、ボリュームをマイグレーションさせるマイグレーションタスクについて説明する。
【０１４８】
図２８は、マイグレーションタスクを実行するための設定画面の一例を示したものである。
【０１４９】
管理サーバ１００の表示装置には、ボリュームグループ一覧２８０１、ボリューム検索条件一覧２８０２、タスク実行タイミング２８０３、指定日時２８０４、完了ボタンが表示される。
【０１５０】
ボリュームグループ一覧２８０１には、論理ボリューム管理テーブル１１００に設定されたボリュームグループの名称を表示する。ボリューム検索条件一覧２８０２には、ボリューム検索条件管理テーブル２６００に設定されたボリューム検索条件を表示する。管理者は、ボリュームグループ一覧２８０１に表示されたボリュームグループ、ボリューム検索条件一覧２３０２に表示された検索条件を指定し、タスク実行タイミング２８０３を指定し、完了ボタンを指定する。これにより、タスク管理テーブルに、データマイグレーションを行うタスクが設定される。ここで、直ぐに実行とは、タスクが生成された場合に直ぐに実行されることを意味し、負荷が低い時に実行とは、管理サーバ１００においてストレージ装置の負荷を監視し、負荷が閾値よりも下がった場合に、タスクを実行することを意味している。この場合、閾値は管理者によって、記憶資源１０２に設定されている。また、日時指定の場合には、指定日時２８０４に入力された日時にタスクが実行されることを意味している。
【０１５１】
図２９は、マイグレーションタスクを生成する処理を示したものである。
【０１５２】
この処理は、管理者により、マイグレーションタスク生成プログラム２０７を実行することにより行われる。なお、この処理の説明で、Tier Condition、Volume Listは、管理サーバ１１のCPUの処理に利用される変数であり、CPU内の記憶領域に変数に設定されるデータが格納される。
【０１５３】
まず、図２９に示す画面を管理サーバ１００の表示装置に表示する（Ｓ２９０１）。次に、ボリュームグループ管理テーブル２４００に設定されているボリュームグループを読み出して、ボリュームグループ一覧２６０１に表示する（Ｓ２９０２）。次に、ボリューム検索条件管理テーブル２６００から、ボリューム検索条件を読み出し、ボリューム検索条件一覧２６０２に表示する（Ｓ２９０３）。その後、管理者から完了ボタンが指示されるのを待つ（Ｓ２９０４）。管理者から完了ボタンが指示された場合（Ｓ２９０４で「Ｙ」）、指定されたボリュームグループ、ボリューム検索条件、タスク実行タイミングをタスク実行管理テーブル２０００に設定する（Ｓ２９０５）。次に、指定されたボリュームグループが設定されている論理ボリュームをボリュームグループ管理テーブル２４００から特定し、タスク実行管理テーブル２０００のソースボリューム２００５に設定する（Ｓ２９０６）。
【０１５４】
次に、ボリューム検索条件管理テーブル２６００から指定されたボリューム検索条件に対応する検索条件を読み出して、Tier Conditionに設定する（S２９０７）。
【０１５５】
次に、新たに設定された検索条件（Tier Conditionに設定された検索条件）を満たす論理ボリュームを、論理ボリューム管理テーブル１１００から特定し、特定された論理ボリュームをVolume Listに設定する（Ｓ２９０８）。ここで、特定される論理ボリュームは、割当状況が「未済」、マイグレーション元の論理ボリュームの容量以上であって、新たに設定された検索条件を満たすものである。
【０１５６】
このVolume Listに設定された論理ボリューム一覧を、管理サーバ１００の表示装置に表示する（Ｓ２９０９）。
【０１５７】
図３０は、Ｓ２９０９の処理で、ボリューム検索条件によって、特定された論理ボリュームの表示画面の一例である。表示画面には、ボリュームグループ３００１、ボリューム検索条件３００２、ソースボリューム３００３、ターゲットボリューム３００４、ターゲットボリューム一覧３００５、完了ボタンが表示される。ボリュームグループ３００１、ボリューム検索条件３００２は、指定されたボリュームグループ、ボリューム検索条件が表示される。ソースボリューム３００３には、指定されたボリュームグループに属する論理ボリュームが表示される。ターゲットボリューム一覧３００５には、Volume Listに設定された論理ボリュームが表示される。なお、S３００８でボリューム検索条件を満たす論理ボリュームがない場合、ターゲットボリューム一覧３００５には、何も表示されない。ターゲットボリューム３００４は、ターゲットボリューム一覧３００５に表示された論理ボリュームから管理者が選択することで表示される。管理者は、ターゲットボリュームを設定した後に完了ボタンを指示する。
【０１５８】
再び、図２９の処理説明に戻る。
【０１５９】
完了ボタンが指示されると（Ｓ２９１０で「Ｙ」）、タスク管理テーブルのターゲットボリュームに指定された論理ボリュームを設定し（Ｓ２９１１）、マイグレーションタスク実行プログラム２０４を実行し、処理を終了する。マイグレーションタスク実行プログラム２０４の処理については、図２１で説明した。
【０１６０】
一方、再配置ボタンの指示である場合、性能監視プログラム２０３を実行する。これにより、業務アプリの評価値に一致していない論理ボリュームがあれば、別の論理ボリュームへデータが移動される。この結果、論理ボリュームに空きができるので、再度、Ｓ２７０８を行うことにより、論理ボリュームが見つかる場合がある。
【０１６１】
また、終了ボタンの指示である場合には、処理を終了する。
【０１６２】
次に、論理ボリュームの関係に基づいて、データをマイグレーションする場合について説明する。ストレージ装置は、データを格納して利用されるが、より信頼性を高めるためにデータのバックアップを行う場合がある。この場合、２つの論理ボリュームでペアを構成し、一方をホストがアクセスするためのデータ格納用の論理ボリューム（以下、「正論理ボリューム」と称す。）、正論理ボリュームに格納されたデータの複製が格納される論理ボリューム（以下、「副論理ボリューム」と称す。）として運用する。このようにすると、正論理ボリュームに障害が発生しても、副論理ボリュームのデータを利用して業務を再開することができる。この場合、正論理ボリュームに格納されたデータを副論理ボリュームにも格納するが、この場合の形式として同期式と非同期式がある。同期式は、一般に正論理ボリュームと副論理ボリュームの双方にデータが格納された後に、ホストに対してデータが格納されたことの応答を返す。一方、非同期式は、正論理ボリュームにデータが格納されたらホストに対して応答を返し、その後、副ボリュームにデータを格納する。従って、同期式の場合、副論理ボリュームの性能は、正論理ボリュームと同等の性能であれば良い。また、非同期式の場合は、副論理ボリュームの性能は、正論理ボリュームほどは必要ない。このような理由から、ペア関係にある論理ボリュームについてデータの再配置を行う。
【０１６３】
図３１は、論理ボリュームのペア定義テーブルを示したものである。
【０１６４】
ペア定義テーブルは、コピーの名称３１０１、正論理ボリューム３１０２、副論理ボリューム３１０３、コピーの形式３１０４が設定される。このペア定義テーブル３１００には、ストレージ装置にも設定されており、正論理ボリュームに対してアクセスがあった場合、このペア定義テーブルを参照して、副論理ボリュームにデータが格納される。
【０１６５】
図３２は、データの再配置処理を示したものである。
【０１６６】
この処理は、管理者によってペア監視プログラムが実行された場合に行われるものである。
【０１６７】
まず、ペア定義テーブル３１００から一つのペアを特定し（Ｓ３２０１）、特定されたペアのコピー形式が同期式かを判断する（Ｓ３２０２）。同期式の場合、正論理ボリュームと、副論理ボリュームの評価値を論理ボリューム管理テーブル１１００から読み出し、判断する（Ｓ３２０３）。正論理ボリュームの評価値より副論理ボリュームの評価値が低い場合には、正論理ボリュームの評価値以上の評価値を有する論理ボリュームを論理ボリューム管理テーブル１１００から特定する。正論理ボリュームの評価値以上の論理ボリュームがある場合（Ｓ３２０４で「Ｙ」）、マイグレーションタスク管理テーブルに設定する。具体的には、副論理ボリュームをソースボリューム、特定された論理ボリュームをターゲットボリュームに設定し、タスク実行タイミングに「直ぐに実行」を設定する。
【０１６８】
ペア定義テーブル３１００に、まだ処理がされていないペアがあれば、Ｓ３２０１に戻り他のペアについて同様の処理を行う。
【０１６９】
一方、Ｓ３２０２で形式が「同期式」でない場合、正論理ボリュームの評価値＞副論理ボリュームの評価値であるかを判断する（Ｓ３２０７）。正論理ボリュームの評価値＞副論理ボリュームの評価値である場合（Ｓ３２０７で「Ｙ」）、Ｓ３２０６へ移る。一方、正論理ボリュームの評価値≦副論理ボリュームの評価値である場合（Ｓ３２０７で「Ｎ」）、正論理ボリュームの評価値よりも低い評価値を持つ論理ボリュームを論理ボリューム管理テーブルから特定する。正論理ボリュームの評価値よりも低い評価値を持つ論理ボリュームがあれば（Ｓ３２０８で「Ｙ」）、Ｓ３２０５へ移り、マイグレーション管理テーブルの設定を行い、なければ（Ｓ３２０８で「Ｎ」）、Ｓ３２０６へ移る。Ｓ３２０６で全てのペアについて処理が行われたと判断された場合（Ｓ３２０６で「Ｙ」）、マイグレーションタスク実行プログラム２０４を実行し、処理を終了する。
【０１７０】
なお、論理ボリュームの評価値は、既に説明したように回転数、RAIDレベル、ディスクタイプ、応答速度、アクセス頻度の一つ、又はいくつかの組合せにより求めてもよい。また、ここで評価値を求めるのは、複数の論理ボリュームでの性能を分類するためである。従って、回転数、RAIDレベル、ディスクタイプ、応答速度、アクセス頻度のいずれか一つで、論理ボリュームを分類するとすれば、評価値を出さずに、そのものの値で評価してもよい。
【図面の簡単な説明】
【０１７１】
【図１】図１は情報処理システムの構成を示した図である。
【図２】図２は管理サーバの構成を示した図である。
【図３】図３はストレージ装置の構成を示した図である。
【図４】図４はデータマイグレーションの一例を示した図である。
【図５】図５はホストの構成を示した図である。
【図６】図６は稼動情報テーブルを示したものである。
【図７】図７は性能情報テーブルを示したものである。
【図８】図８は業務アプリ管理テーブルを示したものである。
【図９】図９は業務アプリ性能判定プログラムの処理を示したものである。
【図１０】図１０は業務アプリ種別テーブルを示したものである。
【図１１】図１１は論理ボリューム管理テーブルを示したものである。
【図１２】図１２はボリューム性能判定プログラムの処理を示したものである。
【図１３】図１３は論理ボリュームを割当てる処理を示した図である。
【図１４】図１４は表示される設定画面の一例を示したものである。
【図１５】図１５は論理ボリュームの割当の処理を示したものである。
【図１６】図１６は検索結果の画面の表示例を示したものである。
【図１７】図１７は論理ボリュームを再割当する処理を示したものである。
【図１８】図１８は監視テーブルを示したものである。
【図１９】図１９は結果の表示の一例を示したものである。
【図２０】図２０はタスク実行管理テーブルを示したものである。
【図２１】図２１はマイグレーションを実行する処理を示したものである。
【図２２】図２２はボリュームグループの生成、編集画面を示したものである。
【図２３】図２３はボリュームグループの設定/編集処理を示したものである。
【図２４】図２４はボリュームグループ管理テーブルを示したものである。
【図２５】図２５はボリュームの検索条件の生成、編集画面を示したものである。
【図２６】図２６はボリューム検索条件管理テーブルを示したものである。
【図２７】図２７はボリュームの検索条件の生成、編集処理を示したものである。
【図２８】図２８はマイグレーションタスクを実行するための設定画面を示した図ある。
【図２９】図２９はマイグレーションタスクを生成する処理を示したものである。
【図３０】図３０は論理ボリュームの表示画面である。
【図３１】図３１は論理ボリュームのペア定義テーブルを示した図である。
【図３２】図３２は再配置処理を示した図である。
【符号の説明】
【０１７２】
１００…管理サーバ、１１０…ストレージ装置、１２０…ホスト、１３０…通信ネットワーク、２００…性能要件解析部、２０１…ボリューム割当て部、２０２…ボリューム性能判定部、２１０…論理ボリューム、２２０…業務アプリケーション、７００…性能監視部
【図１】
2008084253.tif 000003
【図２】
2008084253.tif 000004
【図３】
2008084253.tif 000005
【図４】
2008084253.tif 000006
【図５】
2008084253.tif 000007
【図６】
2008084253.tif 000008
【図７】
2008084253.tif 000009
【図８】
2008084253.tif 000010
【図９】
2008084253.tif 000011
【図１０】
2008084253.tif 000012
【図１１】
2008084253.tif 000013
【図１２】
2008084253.tif 000014
【図１３】
2008084253.tif 000015
【図１４】
2008084253.tif 000016
【図１５】
2008084253.tif 000017
【図１６】
2008084253.tif 000018
【図１７】
2008084253.tif 000019
【図１８】
2008084253.tif 000020
【図１９】
2008084253.tif 000021
【図２０】
2008084253.tif 000022
【図２１】
2008084253.tif 000023
【図２２】
2008084253.tif 000024
【図２３】
2008084253.tif 000025
【図２４】
2008084253.tif 000026
【図２５】
2008084253.tif 000027
【図２６】
2008084253.tif 000028
【図２７】
2008084253.tif 000029
【図２８】
2008084253.tif 000030
【図２９】
2008084253.tif 000031
【図３０】
2008084253.tif 000032
【図３１】
2008084253.tif 000033
【図３２】
2008084253.tif 000034