(57)【要約】      （修正有）【課題】記憶デバイス制御装置および記憶デバイス制御装置の制御方法を提供する。【解決手段】記憶デバイス制御装置において、記憶デバイスにより提供される記憶領域を情報処理装置から指定させるために仮想的に設定されるボリュームである仮想ボリュームと、記憶デバイスにより提供される記憶領域に対応づけて論理的に設定されるボリュームである論理ボリュームとの対応づけを記憶し、情報処理装置から送られてくるデータ入出力要求を受信して、そのデータ入出力要求に設定されている仮想ボリュームに対応する論理ボリュームを対象としてデータ入出力処理を行い、仮想ボリュームに要求される仕様を記憶し、論理ボリュームの仕様を記憶し、仮想ボリュームに要求される仕様と論理ボリュームの仕様とを比較することにより仮想ボリュームに対応づける論理ボリュームを選出し、選出した論理ボリュームを仮想ボリュームに対応づけて記憶するようにする。【選択図】      図１
2004178253.tif 000002
【特許請求の範囲】
【請求項１】
記憶デバイスにより提供される記憶領域を情報処理装置から指定させるために仮想的に設定されるボリュームである仮想ボリュームと、記憶デバイスにより提供される記憶領域に対応づけて論理的に設定されるボリュームである論理ボリュームとの対応づけを記憶する手段と、
情報処理装置から送られてくるデータ入出力要求を受信して、そのデータ入出力要求に設定されている仮想ボリュームに対応する論理ボリュームを対象としてデータ入出力処理を行う手段と、
仮想ボリュームに要求される仕様を記憶する手段と、
論理ボリュームの仕様を記憶する手段と、
仮想ボリュームに要求される仕様と論理ボリュームの仕様とを比較することにより仮想ボリュームに対応づける論理ボリュームを選出する選出手段と、
選出した論理ボリュームを仮想ボリュームに対応づけて記憶する手段と、
を備えることを特徴とする記憶デバイス制御装置。
【請求項２】
請求項１に記載の記憶デバイス制御装置において、
前記選出手段は、前記仮想ボリュームに要求される前記仕様を満たすように一以上の前記論理ボリュームを選出する手段であること、
を特徴とする記憶デバイス制御装置。
【請求項３】
請求項２に記載の記憶デバイス制御装置において、
前記仮想ボリュームに要求される前記仕様を満たすために必要となる前記仕様を有する前記論理ボリュームが存在しない場合に、
前記論理ボリュームに未対応の記憶領域を有する前記記憶デバイスにより前記仕様を満たす新たな前記論理ボリュームを設定するための処理を実行する手段、
を備えることを特徴とする記憶デバイス制御装置。
【請求項４】
請求項３に記載の記憶デバイス制御装置において、
前記仕様を満たす新たな前記論理ボリュームを設定するために必要となる前記記憶デバイスを確保できない場合に、記憶デバイスの増設を促すメッセージを人に報知するための手段、
を備えることを特徴とする記憶デバイス制御装置。
【請求項５】
請求項１に記載の記憶デバイス制御装置において、
前記論理ボリュームの仕様を自動的に測定しその結果をその論理ボリュームの前記仕様として記憶する手段、
を備えることを特徴とする記憶デバイス制御装置。
【請求項６】
請求項１に記載の記憶デバイス制御装置において、
前記仮想ボリュームに対応づけている前記論理ボリュームにより提供される記憶容量の残容量を監視する手段を備え、
前記仮想ボリュームに既に対応づけている前記論理ボリュームにより提供される記憶容量の残容量が閾値以下となった場合に、前記仮想ボリュームに新たな前記論理ボリュームを対応づけて記憶する手段、
を備えることを特徴とする記憶デバイス制御装置。
【請求項７】
請求項１に記載の記憶デバイス制御装置において、
前記仮想ボリュームに要求される前記仕様には、その仮想ボリュームに要求される記憶容量、ＲＡＩＤレベル、シーケンシャル読み出し時の応答速度、シーケンシャル書き込み時の応答速度、ランダム読み出し時の応答速度、ランダム書き込み時の応答速度、の少なくともいずれかが含まれること、
を特徴とする記憶デバイス制御装置。
【請求項８】
請求項１〜７のいずれかに記載の記憶デバイス制御装置において、前記記憶デバイスはディスクドライブであることを特徴とする記憶デバイス制御装置。
【請求項９】
記憶デバイスにより提供される記憶領域を情報処理装置から指定させるために仮想的に設定されるボリュームである仮想ボリュームと、記憶デバイスにより提供される記憶領域に対応づけて論理的に設定されるボリュームである論理ボリュームとの対応づけを記憶し、
情報処理装置から送られてくるデータ入出力要求を受信して、そのデータ入出力要求に設定されている仮想ボリュームに対応する論理ボリュームを対象としてデータ入出力処理を行い、
仮想ボリュームに要求される仕様を記憶し、
論理ボリュームの仕様を記憶し、
仮想ボリュームに要求される仕様と論理ボリュームの仕様とを比較することにより仮想ボリュームに対応づける論理ボリュームを選出し、
選出した論理ボリュームを仮想ボリュームに対応づけて記憶すること、
を特徴とする記憶デバイス制御装置の制御方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、記憶デバイス制御装置および記憶デバイス制御装置の制御方法に関する。
【０００２】
【従来の技術】
ディスクアレイ装置などのストレージに実装される記憶デバイスにより提供される記憶領域は、一般にこれら記憶領域に対応づけて設定される論理的な記憶領域である論理ボリュームを単位として提供される。
【０００３】
一方、ストレージにアクセスしてくる様々なタイプの情報処理装置に対する柔軟性を確保する等の目的で、ストレージシステムの多くは、論理ボリュームに対応させて仮想的なボリューム（以下、「仮想ボリューム」と称する）を設定し、情報処理装置からこの仮想ボリュームによりストレージの記憶領域を指定させる仕組みを採用している。
【０００４】
【特許文献１】
特開平９−１２０３４２号公報
【０００５】
【発明が解決しようとする課題】
ところで、仮想ボリュームに論理ボリュームを対応づける作業は、情報処理装置の仕様やユーザ申請などに応じてオペレータ等により手動で行われているのが現状である。
しかしながら、ＩＴ関連産業の発達に伴い、ストレージシステムで取り扱われる仮想ボリュームや論理ボリュームの数は年々増大しており、データセンタなどにおいては、前記作業にかかるオペレータの作業負荷の増大が深刻である。
この発明はこのような事情に鑑みてなされたもので、記憶デバイス制御装置および記憶デバイス制御装置の制御方法を提供することを目的とする。
【０００６】
【課題を解決するための手段】
この目的を達成するための本発明の主たる発明にかかる記憶デバイス制御装置は、
記憶デバイスにより提供される記憶領域を情報処理装置から指定させるために仮想的に設定されるボリュームである仮想ボリュームと、記憶デバイスにより提供される記憶領域に対応づけて論理的に設定されるボリュームである論理ボリュームとの対応づけを記憶する手段と、
情報処理装置から送られてくるデータ入出力要求を受信して、そのデータ入出力要求に設定されている仮想ボリュームに対応する論理ボリュームを対象としてデータ入出力処理を行う手段と、
仮想ボリュームに要求される仕様を記憶する手段と、
論理ボリュームの仕様を記憶する手段と、
仮想ボリュームに要求される仕様と論理ボリュームの仕様とを比較することにより仮想ボリュームに対応づける論理ボリュームを選出する選出手段と、
選出した論理ボリュームを仮想ボリュームに対応づけて記憶する手段と、
を備えて構成される。
なお、本発明の他の特徴については、本明細書及び添付図面の記述により明らかにする。
【０００７】
【発明の実施の形態】
＝＝＝開示の概要＝＝＝
以下の開示により、少なくともつぎのことが明らかにされる。
前記の発明において、記憶デバイス制御装置とは、例えば、後述するストレージサーバであり、記憶デバイスとは、例えば、後述するディスクアレイ装置に実装されているディスクドライブである。情報処理装置とは、例えば、後述するホストコンピュータである。仮想ボリュームに要求される仕様とは、例えば、その仮想ボリュームに要求される記憶容量、ＲＡＩＤレベル、シーケンシャル読み出し時の応答速度、シーケンシャル書き込み時の応答速度、ランダム読み出し時の応答速度、ランダム書き込み時の応答速度、などである。
【０００８】
この発明によれば、記憶デバイス制御装置が、仮想ボリュームに自動的に論理ボリュームを対応づけるため、オペレータ等は仮想ボリュームに論理ボリュームを対応づける作業から解放されることになる。
【０００９】
また、昨今ではユーザニーズの多様化が進み、また、ストレージシステムに実装される記憶デバイスには複数ベンダーにより供給され仕様の異なる多様な記憶デバイスが混在し、オペレータ等は、ストレージシステムに関する知識や情報を把握していなければならなかったが、この発明によれば、そのような必要もなくなりオペレータ等の作業負荷はこのような面でも軽減される。
【００１０】
また、本発明の他の一態様は、前記選出手段は、仮想ボリュームに要求される仕様を満たすように一以上の論理ボリュームを選出する手段であるものとする。
【００１１】
また、本発明の他の一態様では、記憶デバイス制御装置が、仮想ボリュームに要求される仕様を満たすために必要となる仕様を有する論理ボリュームが存在しない場合に、論理ボリュームに未対応の記憶領域を有する記憶デバイスにより前記仕様を満たす新たな論理ボリュームを設定するための処理を実行する手段を備えることとしている。
【００１２】
ここで論理ボリュームに未対応の記憶領域を有する記憶デバイスとは、例えば、後述するディスクアレイ装置に実装されているディスクドライブのうち、その記憶領域がまだ論理ボリュームに対応されていないディスクドライブである。また、前記仕様を満たす新たな論理ボリュームを設定するための処理を実行する手段とは、例えば、後述するストレージサーバが、ディスクアレイ装置に対して論理ボリュームの生成を促すメッセージを送信する手段である。
【００１３】
この発明によれば、仮想ボリュームに要求される仕様を満たすために必要となる論理ボリュームが存在しない場合に、自動的に新たな論理ボリュームを設定するための処理が実行されるので、オペレータ等は新たに論理ボリュームを設定する必要がなくなる。
【００１４】
また、本発明の他の一態様では、記憶デバイス制御装置が、仮想ボリュームに要求される仕様を満たす新たな論理ボリュームを設定するために必要となる記憶デバイスを確保できない場合に、記憶デバイスの増設を促すメッセージを人に報知するようにしている。
【００１５】
ここで記憶デバイスを確保できない場合とは、例えば、後述するように、論理ボリュームを新たに生成するために必要なディスクドライブがディスクアレイ装置に存在しない場合である。また、記憶デバイスの増設を促すメッセージを人に報知するとは、例えば、後述するように管理端末のディスプレイにディスクドライブの増設を促すメッセージを表示することである。
【００１６】
このように、記憶デバイスを確保できない場合にその増設を促すメッセージが報知されることで、オペレータはその旨を迅速に認知することができ、例えば、仮想ボリュームに論理ボリュームを対応づけることができずにシステムが停止するといったトラブルを未然に防ぐことができる。
【００１７】
また、本発明の一態様では、記憶デバイス制御装置が、論理ボリュームの仕様を自動的に測定しその結果をその論理ボリュームの仕様として記憶するようにしている。
【００１８】
ここでこの測定は、例えば、後述するように、論理ボリュームやディスクドライブに対して実行されるベンチマークテストにより行われる。また、測定は、ディスクアレイ装置のメモリに記憶されている情報を読み出したり、ディスクドライブに記憶されている情報を読み出すことによっても行われる。
【００１９】
このように記憶デバイス制御装置が、論理ボリュームの仕様を自動的に測定するため、オペレータ等は、論理ボリュームが新たに設定された場合などにその論理ボリュームの仕様を登録する作業から解放されることになる。
【００２０】
また、本発明の他の一態様では、記憶デバイス制御装置が、仮想ボリュームに対応づけている論理ボリュームにより提供される記憶容量の残容量を監視して、仮想ボリュームに既に対応づけている論理ボリュームにより提供される記憶容量の残容量が閾値以下となった場合に、仮想ボリュームに新たな論理ボリュームを対応づけて記憶するようにしている。
【００２１】
このように記憶デバイス制御装置が、仮想ボリュームに対応づけている論理ボリュームの残容量を自動的に監視して、残容量が閾値以下となった場合に、仮想ボリュームに新たな論理ボリュームを自動的に対応づけることで、オペレータ等は、残容量を監視する作業および仮想ボリュームに新たな論理ボリュームを対応づける作業から解放され、オペレータ等の作業負荷が軽減されることになる。
【００２２】
＝＝＝ストレージシステムの構成＝＝＝
本発明の一実施例として説明するストレージシステムの構成を図１に示す。ストレージシステムは、ホストコンピュータ１１０と、ストレージサーバ１２０と、ディスクアレイ装置１３０とを含んで構成される。
【００２３】
ホストコンピュータ１１０とストレージサーバ１２０とは、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）やＳＡＮ（Ｓｔｏｒａｇｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、ｉＳＣＳＩ（Ｉｎｔｅｒｎｅｔ  ＳｍａｌｌＣｏｍｐｕｔｅｒｅ  Ｓｙｓｔｅｍ  Ｉｎｔｅｒｆａｃｅ）、ＥＳＣＯＮ（Ｅｎｔｅｒｐｒｉｓｅ  Ｓｙｓｔｅｍｓ  Ｃｏｎｎｅｃｔｉｏｎ）（登録商標）やＦＩＣＯＮ（Ｆｉｂｒｅ  Ｃｏｎｎｅｃｔｉｏｎ）（登録商標）などのプロトコルに準拠した第一のネットワーク１５１を介して接続している。また、ストレージサーバ１２０とディスクアレイ装置１３０とは、ＳＡＮやＬＡＮなどのプロトコルに準拠した第二のネットワーク１５２を介して接続している。
【００２４】
ホストコンピュータ１１０は、ＣＰＵやメモリなどを含んで構成され、オペレーティングシステムやアプリケーションプログラムが動作するパーソナルコンピュータやメインフレームなどのコンピュータである。
【００２５】
ストレージサーバ１２０は、ＣＰＵ１２１やメモリ１２２、ディスクドライブ（不図示）などを含んで構成されるコンピュータである。ストレージサーバ１２０は、第一のネットワーク１５１に接続するための１以上の通信ポートを備える第一の通信インタフェース１２３と、第二のネットワーク１５２に接続するための１以上の通信ポートを備える第二の通信インタフェース１２４とを備える。
【００２６】
ストレージサーバ１２０には、接続インタフェース１２５を介してキーボードやマウス、ディスプレイなどのユーザインタフェースを備える管理端末１２６が接続する。なお、管理端末１２６に代えてストレージサーバ１２０自身が管理端末１２６の機能を備える構成としてもよい。
【００２７】
ディスクアレイ装置１３０は、チャネル制御部１３１、ディスク制御部１３２、制御メモリ１３３、キャッシュメモリ１３４、およびこれらを接続する内部バス１３５、およびディスクドライブ１３６などを含んで構成される。内部バス１３５は、例えば、クロスバスイッチなどで構成される。また、ディスクドライブ１３６は、ＦＣ−ＡＬなどに準拠した通信インタフェースを備えるハードディスクドライブである。ディスクアレイ装置１３０に実装されているディスクドライブ１３６にはその仕様や製造メーカなどが異なるものが混在することもある。ディスクドライブ１３６はディスクアレイ装置１３０を収容する筐体とは別筐体に収容される構成でもよい。
【００２８】
チャネル制御部１３１は、ＣＰＵおよびメモリ、第二のネットワーク１５２に接続するための外部通信インタフェース、内部バス１３５と接続するための内部通信インタフェース、などを含んで構成される。
【００２９】
ディスク制御部１３２は、ＣＰＵおよびメモリ、ディスクドライブ１３６と接続するためのディスク接続インタフェース、および内部バス１３５と接続するための内部通信インタフェース、などを含んで構成される。ディスク接続インタフェースは、例えば、ＦＣ−ＡＬ（Ｆｉｂｒｅ  Ｃｈａｎｎｅｌ  Ａｒｂｉｔｒａｔｅｄ  Ｌｏｏｐ）などの規格に準拠したインタフェースであり、この規格に準拠した内部ネットワーク１３８を介してディスクドライブ１３６と接続する。また、ディスク制御部１３２は、ディスクドライブ１３６をいわゆるＲＡＩＤ（Ｒｅｄｕｎｄａｎｔ  Ａｒｒａｙ  ｏｆ  ＩｎｅｘｐｅｎｓｉｖｅＤｉｓｋｓ）方式の所定のＲＡＩＤレベルで制御することができる。
【００３０】
チャネル制御部１３１は、内部バス１３５を介してディスク制御部１３２に制御指示を送信する。ディスク制御部１３２は、前記制御指示に応じてディスクドライブ１３６に対するデータの書き込み処理や読み出し処理を実行し、その処理結果や、ディスクドライブ１３６から読み出したデータなどをチャネル制御部１３１に送信する。
【００３１】
制御メモリ１３３には、例えば、ディスクアレイ装置１３０において実行される各種のプログラムやデータが記憶される。キャッシュメモリ１３４は、主としてチャネル制御部１３１とディスク制御部１３２との間で授受されるデータのバッファとして機能する。
【００３２】
＝＝＝基本的な動作＝＝＝
つぎに以上の構成からなるストレージシステムの基本的な動作について、図２に示すフローチャートとともに説明する。ホストコンピュータ１１０は、ディスクアレイ装置１３０に対するデータ入出力処理の実行に際し、ストレージサーバ１２０にデータ入出力要求を送信する（Ｓ２１０）。
【００３３】
図３にデータ入出力要求のフォーマットを示す。この図において、ヘッダの欄３１１には、そのデータ入出力要求を送信したホストコンピュータ１１０を特定するための情報やデータ入出力要求の送信先を指定する通信に関連する情報などが設定される。コマンド名の欄３１２には、そのデータ入出力要求が、データ読み出し要求であるのか、データ書き込み要求であるのかといった、処理に対応したコマンドが設定される。このコマンドは、例えば、ＳＣＳＩ規格に準拠したコマンドである。位置情報の欄３１３には、仮想ボリュームのＩＤ、およびディスクドライブ１３６上の記憶位置を特定するための情報が設定される。なお、図３に示すデータフォーマットとして、ＳＣＳＩ規格のデータフォーマットをそのまま採用することもできる。
【００３４】
ここで前記の仮想ボリュームについて詳述する。仮想ボリュームとは、前述したように、ディスクアレイ装置１３０により提供される記憶領域をホストコンピュータ１１０から指定させるために仮想的に設定されるボリュームである。また、仮想ボリュームには、ディスクアレイ装置１３０のディスクドライブ１３６により提供される記憶領域に対応づけて論理的に設定されるボリュームである、論理ボリュームが対応づけられる。
【００３５】
仮想ボリュームと論理ボリュームとの対応は、ストレージサーバ１２０のメモリ１２２に記憶されている仮想ボリューム構成テーブルに管理されている。図４に仮想ボリューム構成テーブル４００の一例を示す。この図に示すように、仮想ボリューム構成テーブル４００には、仮想ボリュームのＩＤ４１１に対応づけて、その仮想ボリュームに対応づけられている論理ボリュームのＩＤ４１２が登録されている。また、このテーブルには仮想ボリュームに対応づけられている論理ボリュームにより提供される記憶容量の残容量（未使用容量）４１３も記載されている。この残容量４１３の内容は、ストレージサーバ１２０がディスクアレイ装置１３０に問い合わせることにより取得する。なお、この図の候補論理ボリュームのＩＤ４１４の欄の説明については後述する。
【００３６】
ディスクドライブ１３６がＲＡＩＤの方式で制御される場合には、論理ボリュームはＲＡＩＤの方式で提供される記憶領域上に設定される。論理ボリュームとディスクドライブ１３６との対応づけは、ディスクアレイ装置１３０が記憶する論理ボリューム構成テーブル５００に管理されている。図５に論理ボリューム構成テーブル５００の一例を示す。論理ボリューム構成テーブル５００には、論理ボリュームのＩＤ５１１に、その論理ボリュームを構成しているディスクドライブ１３６のＩＤ５１２が対応づけられている。
【００３７】
図３のデータフォーマットの位置情報３１３に含まれる、ディスクドライブ１３６上の記憶位置を特定するための情報とは、例えば、そのデータ入出力要求がデータ読み出し要求である場合には、読み出し対象データのディスクドライブ１３６上の記憶位置を特定するための情報であり、また、データ書き込み要求である場合には、ディスクドライブ１３６上の書き込み位置を特定するための情報である。
【００３８】
これらは▲１▼ディスクドライブ１３６上の記憶位置を特定するアドレスであったり、▲２▼仮想ボリューム上の記憶位置を指定するアドレスであったり、▲３▼論理ボリューム上の記憶位置を指定するアドレスであったりする。なお、前記▲２▼、▲３▼の場合においては、例えば、ストレージサーバ１２０やディスクアレイ装置１３０は、仮想ボリューム上の記憶位置を指定するアドレスや論理ボリューム上の記憶位置を指定するアドレスとディスクドライブ１３６上のアドレスとを対応づけたテーブルを記憶しており、このテーブルを用いてこれらのアドレスをディスクドライブ１３６上の記憶領域を指定するアドレスに変換する。また、図３のデータフォーマットにおけるデータの欄３１４には、例えば、当該データ入出力要求がデータ書き込み要求である場合には、書き込み対象となるデータが設定される。
【００３９】
図２において、ホストコンピュータ１１０からデータ入出力要求を受信（Ｓ２１１）したストレージサーバ１２０は、そのデータ入出力要求に設定されている仮想ボリュームのＩＤを仮想ボリューム構成テーブル４００に対照することで対応する論理ボリュームを特定し（Ｓ２１２）、その論理ボリュームを対象とするＩ／Ｏ実行要求をディスクアレイ装置１３０に送信する（Ｓ２１３）。
【００４０】
図６にＩ／Ｏ実行要求のフォーマットを示す。この図において、ヘッダの欄６１１には、そのＩ／Ｏ実行要求を送信したストレージサーバ１２０を特定するための情報やそのＩ／Ｏ実行要求の送信先を指定する通信に関連する情報などが設定される。コマンド名の欄６１２には、そのＩ／Ｏ実行要求が、データ読み出し要求であるのか、データ書き込み要求であるのかといった、処理に対応したコマンドが設定される。位置情報の欄６１３には、論理ボリュームのＩＤおよびディスクドライブ１３６上の記憶位置を特定するための情報が設定される。このうち記憶位置を特定するための情報についての説明は、図３のデータフォーマットにおける場合と同様であるのでここでは説明を省略する。また、データの欄６１４についても、図３のデータフォーマットにおける場合と同様であるのでここでは説明を省略する。
【００４１】
ディスクアレイ装置１３０は、ストレージサーバ１２０から前記フォーマットからなるＩ／Ｏ実行要求を受信すると（Ｓ２１４）、そのＩ／Ｏ実行要求に設定されている論理ボリュームのＩＤを、論理ボリューム構成テーブル５００に対照することで、その論理ボリュームに対応するディスクドライブ１３６を特定し（Ｓ２１５）、ディスクドライブ１３６上の記憶位置を特定するための情報により特定されるディスクドライブ１３６上の記憶位置を対象として当該Ｉ／Ｏ実行要求に設定されているコマンドに対応するＩ／Ｏ処理を実行する（Ｓ２１６）。
【００４２】
例えば、ディスクアレイ装置１３０は、Ｉ／Ｏ実行要求に設定されているコマンドがデータ読み出し要求である場合には、ディスクドライブ１３６から該当データを読み出す。また、例えば、Ｉ／Ｏ実行要求に設定されているコマンドがデータ書き込み要求である場合には、ディスクドライブ１３６にそのデータ書き込み要求で指定されている書き込みデータを書き込む。そして、ディスクアレイ装置１３０は、データを読み出した旨やデータを書き込んだ旨などの処理結果を記載したメッセージや、読み出したデータなどを、ストレージサーバ１２０に送信する（Ｓ２１７）。
【００４３】
ストレージサーバ１２０は、前記メッセージを受信すると（Ｓ２１８）、当該メッセージの内容などを記載した応答データを、ホストコンピュータ１１０に送信し（Ｓ２１９）、ホストコンピュータ１１０はこの応答データを受信する（Ｓ２２０）。
【００４４】
なお、以上の処理において、仮想ボリュームに複数の論理ボリュームを対応づけている場合には、ストレージサーバ１２０は、一のデータ入出力要求により複数の論理ボリュームについてのＩ／Ｏ実行要求をディスクアレイ装置１３０に送信することがある。また、論理ボリュームが複数のディスクドライブ１３６により構成される場合には、一のＩ／Ｏ実行要求により複数のディスクドライブ１３６についてＩ／Ｏ処理が発生することがある。
【００４５】
＝＝＝仮想ボリューム管理機能＝＝＝
ストレージサーバ１２０は、仮想ボリュームや論理ボリュームを設定する機能や、論理ボリュームを仮想ボリュームに自動的に対応づける機能など、仮想ボリュームに関する各種の管理機能を備えている。図７はこれらの機能の提供に係わるソフトウエアやテーブルを示している。以下、これらのソフトウエアやテーブルを用いて提供される各種の管理機能について説明する。
【００４６】
＜仮想ボリュームの設定と登録＞
仮想ボリュームの設定は、オペレータ等が管理端末１２６を操作して行うことができる。この設定は、設定しようとする仮想ボリュームに自動的にもしくは手動によりＩＤ（識別子）を付与し、その仮想ボリュームの仕様を設定することで行われる。
【００４７】
ここで設定される仕様としては、例えば、当該仮想ボリュームの記憶容量、ＲＡＩＤのレベル、シーケンシャル読み出し時の応答速度、シーケンシャル書き込み時の応答速度、ランダム読み出し時の応答速度、ランダム書き込み時の応答速度、残容量閾値、などがある。
【００４８】
なお、前記の応答速度は、例えば、ストレージサーバ１２０がディスクアレイ装置１３０にＩ／Ｏ実行要求を送信し、ディスクアレイ装置１３０がそのＩ／Ｏ実行要求に対応する処理をディスクドライブ１３６に対して実行した後、ストレージサーバ１２０がその処理結果をディスクアレイ装置１３０から受信するまでに要する時間で示される。また、前記の残容量閾値は、後述する仮想ボリュームに新たに論理ボリュームを対応づける必要があるかどうかの判断に際して利用される値である。なお、仮想ボリュームの設定に際しては、前述した項目のほか、新たに項目を追加することもできるし、既存の項目を削除することもできる。また、特定の項目のみを選択して設定することもできる。
【００４９】
以上のようにして設定された仮想ボリュームについての情報は、図７に示す仮想ボリューム生成機能７１１により、仮想ボリュームのＩＤに対応づけて仮想ボリューム要求仕様テーブルに登録される。図８に仮想ボリューム要求仕様テーブル８００の一例を示す。このテーブルには、仮想ボリュームに要求される仕様として、仮想ボリュームのＩＤ８１１に対応づけて前述したＲＡＩＤレベル８１２、記憶容量８１３、残容量閾値８１４、シーケンシャル読み出し時の応答速度８１５、シーケンシャル書き込み時の応答速度８１６、ランダム読み出し時の応答速度８１７、ランダム書き込み時の応答速度８１８などが登録されている。なお、この図に示す例では、応答速度は高速、中速、低速として表現しているが、時間や数値表記等の他の形式で表現されていてもよい。
【００５０】
＜仕様調査機能＞
ストレージサーバ１２０は、ディスクアレイ装置１３０が提供する論理ボリュームの仕様を、図９に示す論理ボリューム仕様管理テーブル９００に管理している。このテーブルには、ディスクアレイ装置１３０により提供される各論理ボリュームについての仕様が登録されている。この図では、仕様として、論理ボリュームのＩＤ９１１に対応づけて、ＲＡＩＤレベル９１２、記憶容量９１３、シーケンシャル読み出し時の応答速度９１４、シーケンシャル書き込み時の応答速度９１５、ランダム読み出し時の応答速度９１６、ランダム書き込み時の応答速度９１７、その論理ボリュームが既に仮想ボリュームに対応済であるかどうかを示すフラグ９１８などが登録されている。
【００５１】
このテーブル９００に登録されている各論理ボリュームについての仕様は、例えば、オペレータが管理端末１２６を操作して登録することができるほか、ストレージサーバ１２０が自動的にディスクアレイ装置１３０から取得して登録することもできる。このうち自動的にディスクアレイ装置１３０から取得して登録する仕組みについて以下に説明する。
【００５２】
この仕組みは、ストレージサーバ１２０の論理ボリューム仕様調査機能７１２により実現される。論理ボリューム仕様調査機能７１２は、第二のネットワーク１５２を介してディスクアレイ装置１３０に問い合わせを行う。ディスクアレイ装置１３０は、前記の問い合わせがあると、自身のメモリやディスクドライブ１３６に記憶されている前記仕様に関する情報を読み出して、その情報をストレージサーバ１２０に送信する。そして、論理ボリューム仕様調査機能７１２は、前記情報を受信して、これを論理ボリューム仕様管理テーブル９００に登録する。
【００５３】
また論理ボリューム仕様調査機能７１２は、ディスクアレイ装置１３０に設定されている論理ボリュームやディスクドライブ１３６を対象としてベンチマークテストを実行し、自ら論理ボリュームの性能を測定することにより論理ボリュームの仕様を自動的に取得する仕組みを備えている。ここでこの測定は、オペレータが管理端末１２６を操作して手動で起動することもできる。また、オペレータ等によりスケジューリングされたタイミングで自動的に起動させることもできる。
【００５４】
論理ボリューム仕様調査機能７１２は、以上の測定により取得される各論理ボリュームについての仕様を、論理ボリュームのＩＤ９１１に対応づけて、論理ボリューム仕様管理テーブル９００に登録する。
【００５５】
＜仮想ボリュームに論理ボリュームを対応づける＞
仮想ボリュームへの論理ボリュームの対応づけは、オペレータが管理端末１２６を操作して手動で行うことができる。また、仮想ボリューム生成機能７１１が備える機能により自動的に行わせるようにすることもできる。仮想ボリュームの使用開始時においては、設定されている記憶容量分の論理ボリュームをあらかじめ対応づけておき、例えば、容量が不足してきたタイミングなど、所定のタイミングで論理ボリュームを段階的に仮想ボリュームに対応づけるようにすることもできる。
【００５６】
以下、仮想ボリュームに自動的に論理ボリュームを対応づける仕組みについて、図１０に示すフローチャートとともに説明する。なお、図１０のフローチャートに示す処理は、ストレージサーバ１２０により、繰り返し実行され、また、このフローチャートに示す処理は、個々の仮想ボリュームについて実行される。
【００５７】
図７に示した仮想ボリューム生成機能７１１は、仮想ボリュームに対応づけられている論理ボリュームの記憶容量の残容量をリアルタイムに把握している（Ｓ１０１１）。仮想ボリューム生成機能７１１は、前述したように、例えば、ストレージサーバ１２０からディスクアレイ装置１３０に問い合わせを行うことで、論理ボリュームの記憶容量の残容量を取得する。なお、ストレージサーバ１２０自身が仮想ボリュームに対して行われるデータ入出力要求を監視して仮想ボリュームに対応づけられている論理ボリュームの残容量を把握するようにしてもよい。
【００５８】
仮想ボリューム生成機能７１１は、仮想ボリュームに対応づけられている論理ボリュームの残容量と、仮想ボリューム要求仕様テーブル８００の残容量閾値８１４とを比較する（Ｓ１０１２）。この比較はリアルタイムに行うようにすることもできるし、スケジュールされたタイミングで行うようにすることもできる。仮想ボリューム生成機能７１１は、残容量が残容量閾値８１４以下となったことを認知すると、その仮想ボリュームに新たに論理ボリュームを対応づける。
【００５９】
ここでこの対応づけはつぎのようにして行われる。まず、仮想ボリューム生成機能７１１は、仮想ボリューム要求仕様テーブル８００と、論理ボリューム仕様管理テーブル９００とを対照し、論理ボリューム仕様管理テーブル９００に登録されている論理ボリュームの中から仮想ボリュームの仕様を満たす論理ボリュームを選出する（Ｓ１０１３）。ここで、仕様を満たしているかどうかを判断するためのアルゴリズムは、ユーザニーズやストレージシステムの運用面などから、任意に設定することができる。例えば、論理ボリューム仕様管理テーブル９００に登録されている仕様が仮想ボリュームに要求されている仕様を満たしているかどうかを、仕様の種類ごとに比較してその結果をフラグにより管理し、その結果、仮想ボリュームに対応づけることができると判断された論理ボリュームを仮想ボリュームに対応づけるといったアルゴリズムなどが採用される。
【００６０】
また、仕様を満たしているかどうかの判断は、例えば仕様を数値で表現した場合、厳密にその数値を境界として判断するのではなく、例えば、仕様の種類ごとに許容範囲を定めておき、その許容範囲内であれば仕様を満たしていると判断させるようにしてもよい。また、例えば、仮想ボリュームについて要求されている全ての種類の仕様を満たしている場合にのみ、仕様を満たしていると判断するようにしたり、要求されている仕様のうち設定された一部の種類の仕様を満たしている場合に仕様を満たしていると判断するようにしてもよい。
【００６１】
以上のようにして論理ボリュームが選出されると、仮想ボリューム生成機能７１１は、仮想ボリューム構成テーブル４００の該当の仮想ボリュームのＩＤ４１１に対応づけて登録する（Ｓ１０１４）。
【００６２】
なお、図４にも例示しているように、仮想ボリュームには複数の論理ボリュームが対応づけられることもある。例えば、１の論理ボリュームだけでは仮想ボリュームに要求されている記憶容量を満たさない場合には、このような対応づけとなる。なお、この場合に、仮想ボリューム要求仕様テーブル８００において、一の仮想ボリュームに対応づけられる複数の論理ボリュームのそれぞれについて個別に仕様を設定できるようにしてもよい。
【００６３】
また、複数の論理ボリュームが候補として選出されることもある。この場合には、論理ボリュームに付与されているＩＤ順や、記憶容量の小さい順もしくは大きい順、仮想ボリュームの仕様を満たす論理ボリュームのうち仮想ボリュームの仕様にもっとも近似する仕様の論理ボリュームを優先的に対応づけるようにする、など適宜な条件に従って論理ボリュームを仮想ボリュームに対応づけるようにすることができる。
【００６４】
また、（Ｓ１０１３）の処理を残容量が残容量閾値８１４以下になった場合に実行するのではなく、この処理を前もって実行しておくことで、対応づけることが可能な論理ボリュームの候補をあらかじめ選出しておき、残容量が残容量閾値８１４以下となったときに候補として選出しておいた論理ボリュームを仮想ボリュームに対応づけるようにすることもできる。この場合には、残容量が残容量閾値８１４以下となった場合に選出処理を行わずに済む分、迅速に論理ボリュームを仮想ボリュームに対応づけることができる。なお、この場合にあらかじめ選出しておいた論理ボリュームは、例えば、仮想ボリュームのＩＤに対応づけて候補の論理ボリュームのＩＤを仮想ボリューム構成テーブル４００に登録しておく（図４の例では候補論理ボリュームの欄４１４が対応する）。
【００６５】
また、仮想ボリュームへの論理ボリュームの対応づけるに際しては、仮想ボリュームに要求されている全記憶容量に対応する分の論理ボリュームを一度に対応づけてしまうのではなく、既にその仮想ボリュームに対応づけられている論理ボリュームの残容量が一定の閾値以下となる度に段階的に論理ボリュームをその仮想ボリュームに対応づけるようにしてもよい。また、この場合において、既にその仮想ボリュームに対応づけられている論理ボリュームの残容量が、仮想ボリューム要求仕様テーブル８００の容量８１３に登録されている記憶容量の所定割合の記憶容量以下となった場合を契機として、新たな論理ボリュームを仮想ボリュームに割り当てるようにしてもよい。
【００６６】
＜論理ボリュームの自動生成＞
仮想ボリュームに対応づけられていない論理ボリュームの数や、仮想ボリュームに対応づけられていない論理ボリュームにより提供される記憶容量が仮想ボリュームの仕様を満たさなくなった場合、もしくは、満たさなくなる可能性が高くなってきた場合には、オペレータがディスクアレイ装置１３０に実装されている未使用のディスクドライブ１３６を用いて構成した新たな論理ボリュームを論理ボリューム仕様テーブル９００に登録することで論理ボリュームを補充する。なお、未使用のディスクドライブ１３６が存在しない場合、もしくは、不十分な場合には、オペレータはディスクドライブ１３６をディスクアレイ装置１３０に補充する。
【００６７】
また、本実施例におけるストレージシステムは、仮想ボリュームに対応づけられていない論理ボリュームの残数や、仮想ボリュームに対応づけられていない論理ボリュームにより提供される記憶容量の残容量が仮想ボリュームの仕様を満たさなくなった場合や、満たさなくなる可能性が高くなってきた場合に、自動的に論理ボリュームを追加する仕組みを備えている。以下では、この仕組みについて図１１のフローチャートとともに説明する。
【００６８】
この仕組みは、ストレージサーバ１２０が備える論理ボリューム追加機能７１３により提供される。論理ボリューム追加機能７１３は、仮想ボリュームに対応づけられていない論理ボリュームの残数や、仮想ボリュームに対応づけられていない論理ボリュームにより提供される記憶容量の残容量を、リアルタイムにもしくは設定されたタイミングで監視している（Ｓ１１１１）。この監視は、例えば、論理ボリューム追加機能７１３が、論理ボリューム仕様管理テーブル９００を参照したり、論理ボリュームの残数や残容量を取得するための情報を第二のネットワーク１５２を介してディスクアレイ装置１３０に問い合わせることなどにより行われる。
【００６９】
また、論理ボリューム追加機能７１３は、仮想ボリュームに対応づけられていない論理ボリュームの残数や、仮想ボリュームに対応づけられていない論理ボリュームにより提供される記憶容量の残容量が、設定されている閾値以下となっていないかどうかをリアルタイムに監視している（Ｓ１１１２）。なお、閾値は、例えば、オペレータが管理端末１２６を操作して設定する。
【００７０】
論理ボリューム追加機能７１３は、仮想ボリュームに対応づけられていない論理ボリュームの残数や残容量が閾値以下となったことを認知すると、ディスクアレイ装置１３０に対し論理ボリュームの生成を促すメッセージを送信する（Ｓ１１１３）。なお、前記の残容量は、論理ボリュームごとの残容量でもよいし、例えば、仮想ボリュームに対応づけられていない全論理ボリュームの残容量の合計でもよい。
【００７１】
ディスクアレイ装置１３０は、前記メッセージを受信すると（Ｓ１１１４）、ディスクアレイ装置１３０に実装されているディスクドライブ１３６のうち論理ボリュームに用いることが可能であり、かつ、論理ボリュームに対応づけられていないディスクドライブ１３６を用いて論理ボリュームを生成する（Ｓ１１１５）。なお、ここでいう「生成」とは、ディスクアレイ装置１３０において管理されている論理ボリューム構成テーブル５００に論理ボリュームのＩＤ５１１とディスクドライブのＩＤ５１２とを対応づけて登録することを意味している。
【００７２】
なお、（Ｓ１１１３）の処理において、ストレージサーバ１２０からディスクアレイ装置１３０に対し、前記論理ボリュームの生成を促すメッセージに付帯させて論理ボリュームの仕様に関する情報を送信し、ディスクアレイ装置１３０が、前記仕様を満たすように論理ボリュームを生成するようにしてもよい。この場合、例えば、仕様として記憶容量が指定されている場合には、その記憶容量となるようにディスクドライブ１３６を選出して論理ボリュームを生成する。また、仕様としてＲＡＩＤレベルに「レベル５」が要求されている場合には、ＲＡＩＤレベルが「レベル５」で制御される論理ボリュームを生成する。また、仕様として応答速度が指定されている場合には、そのような応答速度を有するディスクドライブ１３６を選出して論理ボリュームを生成する。
【００７３】
また、以上の処理において、論理ボリュームを生成するのに必要な、論理ボリュームに対応づけられていないディスクドライブ１３６が確保できないといった理由により、新たに論理ボリュームを生成することができない場合もある。この場合には、例えば、管理端末１２６のディスプレイにその旨のメッセージやディスクドライブ１３６の増設を促すメッセージを表示するなどによりその旨をオペレータ等に報知し、ディスクドライブ１３６の増設を促す。
【００７４】
ところで、ストレージサーバ１２０に複数台のディスクアレイ装置１３０が接続していることもある。この場合には、ストレージサーバ１２０は、論理ボリュームの生成が可能なディスクアレイ装置１３０を選出して前記論理ボリュームの生成を促すメッセージを送信するようにしてもよい。なお、この場合、各ディスクアレイ装置１３０において論理ボリュームの生成が可能であるかどうかをストレージサーバ１２０側で判断するために、ストレージサーバ１２０に各ディスクアレイ装置１３０に関する情報を記憶しておく必要がある。そこでこの情報は、例えば、ストレージサーバ１２０がディスクアレイ装置１３０に問い合わせを行うことにより取得する。前記の情報としては、例えば、実装されている未使用のディスクドライブ１３６の台数や仕様、既に構成されているＲＡＩＤに関する情報（ＲＡＩＤレベル、何台のディスクで構成されているのか）、既に構成されているＲＡＩＤグループの数などがある。
【００７５】
＝＝＝他の実施形態＝＝＝
以上に説明した実施例では、仮想ストレージの管理機能をストレージサーバ１２０に持たせているが、管理機能の全部又は一部をディスクアレイ装置１３０に持たせる構成としてもよい。また、ホストコンピュータ１１０上で動作するアプリケーションソフトウエアにより行えるようにしてもよい。
【００７６】
以上に説明した実施例では、仮想ボリュームに論理ボリュームを対応づけるようにしているが、ディスクドライブ１３６により提供される記憶領域を直接、仮想ボリュームに対応づける構成としてもよい。
【００７７】
以上に説明したストレージシステムにおいて、ディスクドライブ１３６を、半導体ディスク等のこれと等価の機能を備える他の記憶デバイスで置き換えても本発明を実施することができる。
【００７８】
以上、一実施形態に基づき本発明に係る記憶デバイス制御装置等について説明してきたが、上記した発明の実施の形態は、本発明の理解を容易にするためのものであり、本発明を限定するものではない。本発明は、その趣旨を逸脱することなく、変更、改良され得ると共に、本発明にはその等価物が含まれることは勿論である。
【００７９】
【発明の効果】
この発明によれば、記憶デバイス制御装置および記憶デバイス制御装置の制御方法を提供することができる。
【図面の簡単な説明】
【図１】本発明の一実施例として説明するストレージシステムの構成を示す図である。
【図２】本発明の一実施例による、本発明のストレージシステムの基本的な動作を説明するフローチャートを示す図である。
【図３】本発明の一実施例による、データ入出力要求のフォーマットを示す図である。
【図４】本発明の一実施例による、仮想ボリューム構成テーブルを示す図である。
【図５】本発明の一実施例による、論理ボリューム構成テーブルを示す図である。
【図６】本発明の一実施例による、Ｉ／Ｏ実行要求のフォーマットを示す図である。
【図７】本発明の一実施例による、仮想ボリュームに関する各種の管理機能の提供に係わるソフトウエアやテーブルを示す図である。
【図８】本発明の一実施例による、仮想ボリューム要求仕様テーブルを示す図である。
【図９】本発明の一実施例による、論理ボリューム仕様管理テーブルを示す図である。
【図１０】本発明の一実施例による、仮想ボリュームに自動的に論理ボリュームを対応づける仕組みを説明するフローチャートを示す図である。
【図１１】本発明の一実施例による、自動的に論理ボリュームを追加する仕組みを説明するフローチャートを示す図である。
【符号の説明】
１１０  ホストコンピュータ
１２０  ストレージサーバ
１２６  管理端末
１３０  ディスクアレイ装置
１３１  チャネル制御部
１３２  ディスク制御部
１３６  ディスクドライブ
１５１  第一のネットワーク
１５２  第二のネットワーク
４００  仮想ボリューム構成テーブル
７１１  仮想ボリューム生成機能
８００  仮想ボリューム要求仕様テーブル
９００  論理ボリューム仕様管理テーブル
【図１】
2004178253.tif 000003
【図２】
2004178253.tif 000004
【図３】
2004178253.tif 000005
【図４】
2004178253.tif 000006
【図５】
2004178253.tif 000007
【図６】
2004178253.tif 000008
【図７】
2004178253.tif 000009
【図８】
2004178253.tif 000010
【図９】
2004178253.tif 000011
【図１０】
2004178253.tif 000012
【図１１】
2004178253.tif 000013