(57)【要約】【課題】　ストレージ装置あるいはストレージ装置の論理ユニット単位で割り当てを可能とするシステムを提供する。【解決手段】　ホスト計算機１１１内で仮想的に設定された仮想ロジカルユニット（VLU）とストレージ装置の論理ユニット（LU）とを対応付けするVLU-LU対応テーブル３２０を設け、このテーブルに遅延時間、アクセス頻度などの評価項目を格納する。評価部３０４では、評価項目から評価値を求め、この評価値に基づいて割り当てを行う。【選択図】　図３
2004070971.tif 000002
【特許請求の範囲】
【請求項１】
　ネットワークに接続された複数の記憶装置における所定の記憶領域を、前記ネットワークに接続された計算機に割り当てる記憶装置の割り当て方法であって、割当て可能な所定の記憶領域に関する情報を収集し、前記収集した情報に基づいて前記所定の記憶領域ごとの評価値を求め、当該求めた評価値から割り当てるべき所定の記憶領域を決定する記憶装置の割り当て方法。
【請求項２】
　請求項１記載の記憶装置割り当て方法において、前記所定の記憶領域に関する情報は、前記所定の記憶領域を有する記憶装置のアクセス頻度、容量、遅延時間である記憶装置の割り当て方法。
【請求項３】
　ネットワークに接続された複数の記憶装置における所定の記憶領域を、前記ネットワークに接続された複数の計算機に割り当てる記憶装置の割り当て方法であって、割当て可能な所定の記憶領域に関する情報を収集し、前記収集した情報に基づいて前記所定の記憶領域ごとの評価値を求め、当該求めた評価値と予め決定された条件に基づいて割り当てるべき所定の記憶領域を決定する記憶装置の割り当て方法。
【請求項４】
　ホスト計算機と複数の記憶装置がネットワークに接続された情報処理システムであって、前記ホスト計算機は、前記記憶装置の所定の領域に関する情報を記憶する記憶部と、アプリケーションプログラムの実行により該所定の領域に関する情報に基づいて該所定の領域毎の評価値を求め、該評価値に基づいて割り当てるべき所定の記憶領域を決定する処理部とを有する情報処理システム。
【請求項５】
　複数のホスト計算機と複数の記憶装置がネットワークに接続された情報処理システムであって、それぞれの前記記憶装置は、それぞれの前記ホスト計算機と該ホスト計算機に対応付けされた前記記憶装置の所定の記憶領域と、該所定の記憶領域に関する情報を格納する記憶部を有し、前記ホスト計算機は、アプリケーションプログラムの実行により記憶装置を選択し、選択した記憶装置の記憶部に格納されている前記所定の記憶領域に関する情報に基づいて前記所定の記憶領域毎に評価値を求め、該評価値に基づいて割り当てるべき所定の記憶領域を決定する処理部とを有する情報処理システム。
【請求項６】
　請求項４又は５記載の情報処理システムにおいて、前記所定の記憶領域に関する情報は、前記所定の記憶領域を有する記憶装置のアクセス頻度、容量、遅延時間である情報処理システム。
【請求項７】
　ネットワークに接続された複数の記憶装置における所定の記憶領域を、前記ネットワークに接続された計算機に割り当てる処理であって、割当て可能な所定の記憶領域に関する情報を収集する処理と、前記収集した情報に基づいて前記所定の記憶領域ごとの評価値を求め、当該求めた評価値から割り当てるべき所定の記憶領域を決定する処理とを記憶したコンピュータ読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
　本発明はネットワークに接続されたストレージ装置の割り当てに関するものである。
【背景技術】
【０００２】
　特許文献１にネットワークで相互に接続されたディスク制御装置について開示されている。ここでは、複数のディスクアレイ制御装置をネットワークで接続した形態のストレージシステムにおいて、ホストとディスクアレイ制御装置間における通信プロトコルと、ディスクアレイ制御装置間における通信プロトコルとを切り替える機構を設けることが開示されている。これにより、ホストとは汎用インターフェースを保ち、ディスクアレイ制御装置間は高速に通信を行うようにしたものである。
【０００３】
　また、特許文献２も同様にネットワークで相互に接続されたディスク制御装置について開示されている。ここでは、ファイバチャネルネットワークに接続された既存の記憶制御装置に対し、ファイバチャネルネットワーク上に新たな記憶制御装置をオンライン中に追加し、ロジカルユニットの処理担当を引き継がせることが開示されている。これにより、記憶制御装置間の負荷分散、処理の統合を可能にして、システム全体の処理能力を向上させるようにしたものである。
　
【０００４】
【特許文献１】特開平１０−６９３５７号公報
【特許文献２】特開２０００−９９２７２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
　ネットワークにホスト計算機とストレージ装置が接続されたシステムにおいて、従来はホスト計算機が利用するストレージ装置あるいはロジカルユニットは予め定められているものであった。
【０００６】
　ネットワークに複数のストレージ装置が接続されたストレージシステムにおいて、各ストレージ装置はネットワークに接続された複数のホスト計算機でアクセスが可能になる。また、ストレージ装置間においてもアクセスが可能になる。
【０００７】
　このように構成されたシステムにおいて、ホスト計算機がストレージにアクセスする場合、ネットワークの伝送路によりストレージ装置毎にアクセスに要する時間が異なる場合がある。また、ストレージ装置毎にアクセス頻度やバックアップの頻度が異なる場合があり、ストレージ装置毎に信頼性が異なる場合がある。
【０００８】
　また、ホスト計算機においてもアプリケーションプログラムによってはアクセスに要する時間が早いものが必要であったり、アクセスに要する時間が遅くても信頼性が必要であったりする。
【０００９】
　従って、アプリケーションプログラム毎にストレージ装置あるいは論理ユニットの割り当てを行えるようにすれば、より効率の良いシステムを構築することが可能となる。
【００１０】
　本発明の目的は、ホスト計算機側でストレージ装置あるいは論理ユニットの割り当てを行うことを可能とする方法及びシステムを提供することにある。
【課題を解決するための手段】
【００１１】
　上記目的を達成するために、本発明では割り当てられる所定の記憶領域毎に、この記憶領域に関する情報を管理し、割り当てを行う際に、この情報に基づいて記憶領域毎に評価値を求め、この評価値に基づいて割り当てるべき記憶領域を決定する。
【００１２】
　これにより、記憶装置毎にあるいは記憶領域毎に割り当てを行うことが可能となり、効率の良いシステムを構築することが可能となる。
【発明の効果】
【００１３】
　本発明によれば、きめ細かくストレージ装置あるいは記憶領域を割り当てることが可能となりシステムの効率を向上させることが可能となる。
　
【発明を実施するための最良の形態】
【００１４】
　本発明の一実施例を、以下図面に従って説明する。
【００１５】
　図１は本発明によるストレージの割当て方法を適用したシステムの全体構成を示したものである。ホスト計算機１１１は、Fabric Channel スイッチ１１３（以下、「FC-Switch１１３」と称す。）を介して複数のストレージ装置１１７、１１８と接続されている。更にストレージ装置１１６、１１９はFC-Switch１１５を介して接続されている。ストレージ装置１１６、１１７、１１８、１１９は光ディスク装置、磁気ディスク装置、光磁気ディスク装置あるいは磁気テープのいずれであっても良い。
【００１６】
　ストレージ装置１１６、１１７、１１８、１１９は、それぞれディスクとディスクコントローラを備えている。図２はストレージ装置のディスクコントローラの構成を示したものである。ディスクコントローラは、ＣＰＵなどによって構成された処理部２１１、ＲＡＭやＲＯＭなどによって構成された記憶部２１２を有している。記憶部２１２にはFC-Switchやネットワークを制御するためのネットワーク処理プログラム、ストレージ装置の制御プログラムが格納されており、処理部２１１によって、このプログラムを起動することによりFC-Switch１１３、１１５を制御し、ホスト計算機１１１を介さずにストレージ装置１１６、１１７、１１８、１１９間だけで直接データのやり取りが行えるようになっている。
【００１７】
　ホスト計算機１１１はＣＰＵなどの処理装置によって構成された処理部１２１とＲＯＭ、ＲＡＭなどの記憶装置で構成された記憶部１２２とを有している。尚、このホスト計算機１１１は別のネットワークを介して上位の計算機と接続される構成であっても良い。
【００１８】
　このようなシステムにおいて、ホスト計算機１１１の処理部１２１は、アプリケーションプログラムの実行によりストレージ装置にアクセスする必要が生じた場合には、ストレージ割り当てプログラムを実行し、予めユーザから与えられている方針テーブルに基づいて、ユーザから与えられている方針（条件）を満たすあるいは方針（条件）に近いストレージ装置を決定し、このストレージ装置のファイルやデータベースを利用することができる。従って、例えばユーザが「性能（アクセス速度）」といった方針（条件）をホスト計算機１１１に与えた場合、１つのFC-Switch１１３を介してアクセス可能なストレージ装置１１７又はストレージ装置１１８が決定される。
【００１９】
　本実施例において、ホスト計算機１１１は仮想的な記憶領域を有しており、ネットワーク内で接続許可されたストレージ装置を可能なだけ利用することができる。ホスト計算機１１１が有している仮想的な記憶領域は、ある記憶領域毎に仮想ロジカルユニット（VLU）として仮想ロジカルユニット番号（VLUN）を付して管理している。また、各ディスク装置のディスク毎などのように所定の記憶領域の単位で論理ユニット（LU）が設けられ、それぞれ論理ユニット番号（LUN）を付して管理している。図１０は、仮想ロジカルユニット（VLU）と論理ユニット（LU）との対応関係を示したものである。図では仮想ロジカル論理ユニット毎に別々のストレージB1002、D1003の論理ユニット（LU）を指定し、あたかも連続領域であるかのような仮想ロジカル論理ユニット（VLUN）が二つ存在している状態を示している。
【００２０】
　図３はホスト計算機１１１の構成を示したものである。
【００２１】
　ホスト計算機１１１の記憶部１２２は、アプリケーションプログラム３１５、ストレージ割り当てプログラム３１６、ファイルの管理を行うためのファイルシステム３１７、メモリ管理やタスク管理を行うＯＳカーネル３１８、FC-SWITCHを駆動するＦＣ−ドライバ３１９、それぞれのディスク装置の遅延時間やアクセス頻度等が記録されているVLU-LU対応テーブル３２０、ユーザの方針を入力するユーザ方針決定プログラム３２１、ユーザ方針決定プログラム３２１で決定された方針を記憶する方針テーブル３２２とが保持されている。ここで、アプリケーションプログラム３１５、ストレージ割り当てプログラム３１６、ユーザの方針を入力するユーザ方針決定プログラム３２１は、予めホスト計算機１１１の記憶部１２１へ記憶されている場合であっても良いし、磁気ディスク装置などのコンピュータで読み取りが可能な記憶媒体に格納されており、この記憶媒体から読み出して、ホスト計算機１１１の記憶部１２２へ格納されたものでもよい。
【００２２】
　処理部１２１は、ストレージ割り当てプログラムを実行するための構成を示している。処理部１２１は、仮想論理ユニット番号（VLUN）と論理ユニット番号（LUN）との変換を行うアクセス変換部３０２、ホスト計算機１１１からストレージ装置の論理ユニット（LU）の応答時間を遅延時間として計測する遅延時間計測部３０３、ホスト計算機１１１がアクセスするストレージ装置の論理ユニット（LU）を決定する評価部３０４、評価部３０４で評価するための項目値を収集する評価データ収集部３０５とを有している。
【００２３】
　評価データ収集部３０５は、ＯＳのコマンドを用いて各ストレージ装置の空き容量を計測する容量取得部、各ストレージ装置へのOpen／Create／Read／Write命令があった回数を取得するアクセス頻度取得部、ストレージ装置が他のデバイスにバックアップされている頻度を取得したり、ストレージ装置にボリューム二重書きの機能がありそれを利用しているか否かを調べる信頼性取得部とを有している。
【００２４】
　尚、ここで遅延時間計測部３０３を評価データ収集部３０５と別にしているのは、遅延時間計測部２０４はストレージ割り当ての要求があった時に動作し、評価データ収集部３０５は定期的に動作するようにしているためである。これにより、遅延時間はその時点において可能な限り正確な情報とすることができる。
【００２５】
　図４はVLU-LU対応テーブルの一例を示したものである。キー項目となるのは仮想ロジカルユニット（VLU）毎にユニークな番号である仮想ロジカルユニット番号（VLUN）402と物理的な位置を示す絶対セクタ番号403である。論理ユニット（LU）の位置を特定するために同様に論理ユニット番号（LU）404と物理的な位置を示す絶対セクタ番号405を用意する。仮想ロジカルユニット番号（VLUN）に論理ユニット番号（LUN）が対応づけられていないとき仮想ロジカルユニット番号（VLUN）の値は0に設定されている。絶対セクタ番号は等容量ごとに割り振られており論理ユニット（LU）の個数を乗じた値が仮想ロジカルユニット（VLU）の容量を示している。
【００２６】
　遅延時間４０６はストレージ装置への割当て要求のあったときに、遅延時間計測部３０３によって書き換えられる項目である。尚、この値はユーザの特殊な要求がない限り小さいほど良いものとする。
【００２７】
　アクセス頻度407は、それぞれの論理ユニット（LU）への参照・書き込みの回数を示しており、性能や信頼性に影響を与える。その時点で未使用のLUの場合は0となる。この値も小さいほど良いものとする。
【００２８】
　バックアップ頻度408は、それぞれの論理ユニット（LU）が他のデバイスにバックアップを取られている年当たりの回数を示している。バックアップが取られていない場合はこの値が0となる。この値は大きいほど信頼性も良いと判断する。
【００２９】
　信頼性を高めるため、ストレージの構成によっては同一内容を複数のボリュームに書き込む場合がある。この機能を使用しているかどうかがボリュームの二重書き有無409である。当然使用している方が信頼性も高いとみなす。
【００３０】
　以上の評価項目の他、更に小さい単位でのディスクの冗長化の程度や、遅延時間の統計的推移を採取することでストレージ割当ての指針のバリエーションを豊富にすることができる。
【００３１】
　評価値410は評価部３０４で求められた各論理ユニット（LU）の評価値を示したものである。この評価値に基づいて仮想ロジカルユニット（VLU）と論理ユニット（LU）との対応づけが行われる。尚、仮想ロジカルユニット番号（VLUN）に正の値が入っている場合は以前の評価値が残っており、0の場合はその時点での評価値を示している。対応づけされている論理ユニット（LU）の評価値で対応づけされていない論理ユニット（LU）の評価値よりも小さい値しか持たないものもあるが、これは評価された時点が異なるためか、あるいはユーザの方針が異なっていたために生じる現象である。
【００３２】
　以上の構成において、ユーザの方針の決定およびストレージ装置の割り当て動作を以下説明する。
【００３３】
　まず、ユーザが方針を決定する処理について説明する。
【００３４】
　ユーザの方針の決定は、ユーザ方針決定プログラム３２０を処理部１２１で実行することにより行われる。図５はユーザ方針決定プログラム３２０の処理フローを示したものである。
【００３５】
　まず、重視事項おいて評価項目を抽象化した特性を表示する（５０１）。図６は、この重視事項の表示例とそれに対するユーザ入力の例を示したものである。ユーザ方針決定プログラム３２０はユーザの入力を受け付ける（５０２）。本実施例では図６に示すように重視事項６０１として評価項目を抽象化した特性を並べて表示し、ユーザがこの重視事項を選択できる構成となっている。本例では、ユーザによって信頼性と容量が選択されている。
【００３６】
　この重視事項の各特性とVLU-LU対応テーブルの評価項目とは図７に示すテーブルによって対応づけされている。この図７に示すテーブルはユーザが書き換えることが可能である。
【００３７】
　また、ユーザによって選択された重視事項に対しては、遵守するか（必須６０７）、可能な限り希望に沿うか（優先６０９）の２通りを厳密性６０６として選択することが可能になっている。
【００３８】
　「優先」を選んだ場合には、仮想ロジカルユニット（VLU）と対応付けされていない論理ユニット（LU）全てについて評価値を求め、「必須」を選んだ場合には閾値を満たす論理ユニット（LU）について評価値を求める。閾値として例えば、バックアップ頻度が５２回／年以上、かつボリューム二重書き有無が１の論理ユニット（LU）等があり、ユーザはこの閾値を指定することが可能となっている。
【００３９】
　ユーザによって選択された重視事項に基づいて、対応する評価項目の評価係数を変換する（５０３）。例えばGUIの重視事項501で信頼性を選択した場合、アクセス頻度の評価係数を1.5倍にし、バックアップ頻度とボリューム二重書き有無の評価係数を2倍にする。
【００４０】
　このようにして変更された評価係数及び「優先」、「厳密」についてユーザ方針テーブル３２１へ書き込む。
【００４１】
　尚、図８はユーザがVLU-LU対応テーブルを参照する場合の表示例を示したものである。ユーザはこのテーブルを見ながら重視事項６０１や厳密性６０６を決定したり、現在の対応づけや未対応のLUを確認する。表示項目の設定802ではVLU-LU対応テーブルの表示項目を増減することができ、デフォルトである全てを表示した場合は８０１のようになる。
【００４２】
　次にストレージの割り当て処理について説明する。
【００４３】
　ストレージの割り当てはストレージ割り当てプログラム３１６を実行することにより行われる。
【００４４】
　図９はストレージ割り当てプログラムの処理フローを示したものである。
【００４５】
　ホスト計算機１１１の処理部１２１でアプリケーションプログラム３１５が起動され、ファイル名を指定しファイルのOpen/Create命令が発行されると、この命令はファイルシステム３１７へ送られる。ファイルシステム３１７はディレクトリ構造を参照しファイルIDをアプリケーションプログラム３１５へ返す。アプリケーションプログラム３１５はファイルのRead/Writeのために、この受け取ったファイルIDと相対セクタ番号をファイルシステム３１７に送付する。ファイルシステム３１７では、これらから絶対セクタ番号を割り出し、ファイルIDに含まれるドライブ番号と共にOSのカーネル３１８に送付する。ＯＳカーネル３１８ではドライブ番号を仮想ロジカルユニット番号(VLUN)に変換し、ストレージ割り当てプログラム３１６を起動し、絶対セクタ番号と共に送付する。
【００４６】
　ストレージ割り当てプログラムが起動されるとアクセス変換部２０２ではVLU-LU対応テーブルを参照し(９０１)、当該仮想ロジックユニット（VLU）があれば対応する論理ユニット番号（LUN）を戻す(９０２)。なければ新たな論理ユニット（LU）を割り当てることになるが、まずユーザ方針テーブル、VLU-LU対応テーブルを参照して評価値を算出する論理ユニット（LU）を検索する（９０３）。論理ユニット（LU）の検索は、ユーザ方針テーブルで「必須」となっている評価項目がある場合、設定された閾値を満足する論理ユニット（LU）を抽出する。ここで、全ての論理ユニットが満足しない場合には、「閾値該当論理ユニット（LU）無し。「優先」処理を実行します。」と表示し、ユーザに「優先」で処理することを知らせ、ユーザ方針テーブルの「必須」を「優先」に変える。ユーザ方針テーブルに、他の「必須」がある場合は同様に閾値を満足する論理ユニット（LU）を抽出する。
【００４７】
　一方、「必須」がない場合には仮想ロジカルユニット（VLU）に対応付けされていない論理ユニット（LU）を抽出する。
【００４８】
　次に抽出された論理ユニット（LU）に対して遅延時間計測部３０３により、遅延時間の計測を行う（９０４）。遅延時間の計測は、タイマーをスタートさせ、ファイルシステムの種類に応じてマウント要求ないし参照要求を発行し、応答を受けるまでの時間を計測することにより行う。
【００４９】
　遅延時間計測部３０３により測定された結果をVLU-LU対応テーブルに書き込む (９０５)。
【００５０】
　次に、評価部３０４でユーザ方針テーブルから評価係数を読み出してVLU-LU対応テーブルの各評価項目の重み付けを図り、各評価項目値をS=K1*H1+K2*H2…(Sは評価値、Knは評価係数、Hnは評価項目値、)の多項式に展開する(９０６)。値の小さいほど良いとされる評価項目値は逆数に変換する。又、各評価項目値間でバランスが取れるよう適切な評価係数を設定する。例えば遅延時間はミリ秒を単位としているが他の評価項目値に比べ全般的に値が小さくなるため、評価係数を2倍にしておく。
【００５１】
　全ての論理ユニット（LU）に関し評価値が求まると、その値の高い順に新規に作成するVLUの値と対応づけるべくVLU-LU対応テーブルの仮想ロジックユニット番号（VLUN）の項目４０２を埋めてゆく（９０７）。
【００５２】
　アプリケーションからの要求に容量が含まれている場合は同一VLUNを持つLUの個数を増減して対応する。
【００５３】
　以上説明したように本発明によれば、ユーザの割り当て方針に従って、ストレージ装置を割り当てることが可能となる。
【００５４】
　尚、本実施例では説明していなかったが、VLU-LU対応テーブルの評価項目としてストレージ装置の空き容量を追加することも可能である。これにより、空き容量の多いストレージ装置の論理ユニットを選択することも可能になる。
【００５５】
　また、ストレージ装置毎に論理ユニットを割り当てるようにすれば、ストレージ割り当てプログラムは、ストレージ自身の割り当てを行うようになる。
【００５６】
　つまり、本実施例によればVLU-LU対応テーブルの評価項目と図７に示したテーブルを書き換えることにより、さまざまな形態で記憶領域を割り当てることが可能となる。
【００５７】
　次に、他の実施例を説明する。
【００５８】
　図１１は本発明によるストレージの割り当て方法を適用したシステムの全体構成を示したものである。
【００５９】
　本システムは、ネットワークに接続された複数のホスト計算機1101、1102、1103と、ネットワークに接続された複数のストレージ装置1111、1112から構成されている。図１で示したものと同じ符号が付されているものは図１と同様の機能を備えている（以下の説明においても同じ）。ストレージ装置1111、1112は、それぞれディスクコントローラと複数のディスク装置から構成されている。
【００６０】
　各ホスト計算機１１０１、１１０２、１１０３の構成は図３で示した構成とほぼ同様である。
【００６１】
　但し、本実施例においてストレージ割り当てプログラム３１６の処理内容は相違するので、後で詳細に説明する。
【００６２】
　また、本実施例において、VLU-LU対応テーブル３２０は、図４に示したものよりも簡易なものであってよい。つまり、少なくとも仮想ロジカルユニット番号（VLUN）、仮想ロジカルユニットの絶対セクタ番号、論理ユニット番号（LUN）、論理ユニットの絶対セクタ番号を備えていれば良い。また、このVLU-LU対応テーブルは、後に説明するように仮想ロジカルユニット（VLU）と論理ユニット（LU）が対応付けされたものだけが保持されている。
【００６３】
　図１２は、ストレージ装置1111、1112のディスクコントローラを示したものである。ディスクコントローラはＣＰＵなどによって構成された処理部２１１とＲＡＭやＲＯＭで構成された記憶部２１２から構成されている。記憶部２１２はネットワークアプリケーションプログラム、制御プログラムの他に、マシン-LU対応テーブル１２０１が格納されている。
【００６４】
　図１３はマシン-LU対応テーブルの一例を示したものである。マシン-LU対応テーブルのキー項目となるのは各ホスト計算機を示すマシン識別子１３０２と物理的な位置を示す絶対セクタ番号１３０３である。論理ユニット（LU）の位置を特定するために同様に論理ユニット番号（LU）１３０４と物理的な位置を示す絶対セクタ番号１３０５を用意する。マシン識別子に論理ユニット番号（LUN）が対応づけられていないときマシン識別子の値は0に設定されている。絶対セクタ番号は等容量ごとに割り振られており論理ユニット（LU）の個数を乗じた値がホスト計算機の仮想ロジカルユニット（VLU）の容量を示している。
【００６５】
　遅延時間１３０６はストレージ装置への割当て要求のあったときに、遅延時間計測部３０３によって書き換えられる項目である。
【００６６】
　アクセス頻度１３０７は、それぞれの論理ユニット（LU）への参照・書き込みの回数を示しており、性能や信頼性に影響を与える。その時点で未使用のLUの場合は0となる。
【００６７】
　バックアップ頻度１３０８は、それぞれの論理ユニット（LU）が他のデバイスにバックアップを取られている年当たりの回数を示している。バックアップが取られていない場合はこの値が0となる。信頼性を高めるため、ストレージの構成によっては同一内容を複数のボリュームに書き込む場合がある。この機能を使用しているかどうかがボリュームの二重書き有無１３０９である。
【００６８】
　以上の評価項目の他、更に小さい単位でのディスクの冗長化の程度や、遅延時間の統計的推移を採取することでストレージ割当ての指針のバリエーションを豊富にすることができる。
【００６９】
　評価値１３１０は評価部３０４で求められた各論理ユニット（LU）の評価値を示したものである。この評価値に基づいてホスト計算機と論理ユニット（LU）との対応づけが行われる。尚、マシン識別子に正の値が入っている場合は以前の評価値が残っており、0の場合はその時点での評価値を示している。対応づけされている論理ユニット（LU）の評価値で対応づけされていない論理ユニット（LU）の評価値よりも小さい値しか持たないものもあるが、これは評価された時点が異なるためか、あるいはユーザの方針が異なっていたために生じる現象である。
【００７０】
　次に、ホスト計算機によるストレージ装置の割り当て処理について説明する。尚、ユーザの方針の決定については図５で説明したのと同様の処理によって行われる。
【００７１】
　ストレージ装置の割り当て処理は、全てのホスト計算機で同様に行われる。ここでは、一例としてホスト計算機１１０１がストレージ割り当て処理を実行する場合について説明する。
【００７２】
　図１４は本実施例におけるストレージ割り当てプログラムの処理フローを示したものである。
【００７３】
　ホスト計算機１１０１の処理部１２１でアプリケーションプログラム３１５が起動され、ファイル名を指定しファイルのOpen/Create命令が発行されると、この命令はファイルシステム３１７へ送られる。ファイルシステム３１７はディレクトリ構造を参照しファイルIDをアプリケーションプログラム３１５へ返す。アプリケーションプログラム３１５はファイルのRead/Writeのために、この受け取ったファイルIDと相対セクタ番号をファイルシステム３１７に送付する。ファイルシステム３１７では、これらから絶対セクタ番号を割り出し、ファイルIDに含まれるドライブ番号と共にOSのカーネル３１８に送付する。ＯＳカーネル３１８ではドライブ番号を仮想ロジカルユニット番号(VLUN)に変換し、ストレージ割り当てプログラム３１６を起動し、絶対セクタ番号と共に送付する。
【００７４】
　ストレージ割り当てプログラム３１６が起動されるとアクセス変換部２０２ではVLU-LU対応テーブルを参照し(１４０１)、当該仮想ロジックユニット（VLU）があれば対応する論理ユニット番号（LUN）を戻す(１４０２)。なければ新たな論理ユニット（LU）を割り当てることになるが、この処理は各ストレージ装置毎に行う。
【００７５】
　まず、ストレージ装置１１１１のアクセス排他権を取得し、ストレージ装置１１１１のマシン-LU対応テーブルを読み出す（１４０３）。次にユーザ方針テーブルを参照して評価値を算出する論理ユニット（LU）を検索する（１４０４）。論理ユニット（LU）の検索は、ユーザ方針テーブルで「必須」となっている評価項目がある場合、設定された閾値を満足する論理ユニット（LU）を抽出する。ここで、全ての論理ユニットが満足しない場合には、「閾値該当論理ユニット（LU）無し。「優先」処理を実行します。」と表示し、ユーザに「優先」で処理することを知らせ、ユーザ方針テーブルの「必須」を「優先」に変える。ユーザ方針テーブルに、他の「必須」がある場合は同様に閾値を満足する論理ユニット（LU）を抽出する。
【００７６】
　一方、「必須」がない場合にはマシン識別子に対応付けされていない論理ユニット（LU）を抽出する。
【００７７】
　次に抽出された論理ユニット（LU）に対して遅延時間計測部３０３により、遅延時間の計測を行う（１４０５）。遅延時間の計測は、既に説明したのと同様に行う。
【００７８】
　遅延時間計測部１４０５により測定された結果をマシン-LU対応テーブルに書き込む(１４０６)。
【００７９】
　次に、評価部３０４でユーザ方針テーブルから評価係数を読み出してマシン-LU対応テーブルの各評価項目の重み付けを図り、各評価項目値をS=K1*H1+K2*H2…(Sは評価値、Knは評価係数、Hnは評価項目値、)の多項式に展開する(１４０７)。
【００８０】
　全ての論理ユニット（LU）に関し評価値が求まると、その値の高い論理ユニット番号を評価値と共に記憶する（１４０８）。
【００８１】
　次に、ストレージ装置1112のアクセス排他権を獲得し、以上説明した１４０３〜１４０８の処理を実行する。
【００８２】
　このようにして各ストレージ装置から評価値の高い論理ユニット番号が抽出されたので、次にこの抽出された評価値の中で高い評価値の論理ユニットとホスト計算機１１０１の仮想ロジカルユニットとを対応付ける（１４０９）。
【００８３】
　この対応付けを行った仮想ロジカルユニット番号（VLUN）、仮想ロジックユニットの絶対セクタ、論理ユニット番号（LUN）、論理ユニットの絶対セクタとをVLU-LU対応テーブルに格納する（１４１０）。更に、対応付けされた論理ユニットのストレージ装置へ論理ユニット番号とホスト計算機１１１１のマシン識別子を送る（１４１１）。ストレージ装置の処理部は送られてきた論理ユニット番号とホスト計算機１１１１のマシン識別子からマシン-LU対応テーブルの該当部分にマシン識別子を書き込む。
【００８４】
　アプリケーションからの要求に容量が含まれている場合は同一マシン識別子を持つLUの個数を増減して対応する。
【００８５】
　以上説明したように本発明によれば、ユーザの割り当て方針に従って、ストレージ装置を割り当てることが可能となる。またマシン-LU対応テーブルをストレージ側に用意し、マシン間で排他的に共有することで同一ストレージに対する割当ての競合を防ぐことができる。
　
【図面の簡単な説明】
【００８６】
【図１】本発明によるストレージの割当て方法を適用したシステム全体構成例を示した図である。
【図２】ディスクコントローラの構成を示した図である。
【図３】ホスト計算機の構成を示した図である。
【図４】VLU-LU対応テーブルの例を示した図である。
【図５】ユーザ方針決定処理の処理フローを示した図である。
【図６】画面表示例を示した図である。
【図７】重視事項と評価項目とを対応づけるテーブルを示した図である。
【図８】画面表示例を示した図である。
【図９】ストレージ割り当て処理の処理フローを示した図である。
【図１０】仮想ロジカル論理ユニットと論理ユニットとの対応関係を示した図である。
【図１１】本発明を適用した他のシステムの構成を示した図である。
【図１２】ディスクコントローラの構成を示した図である。
【図１３】マシン-LU対応テーブルの一例を示した図である。
【図１４】ストレージ割り当て処理の処理フローを示した図である。
【符号の説明】
【００８７】
　１１１…ホスト計算機、１１３、１１５…FC-Switchi、１１６、１１７、１１８、１１９…ストレージ装置、１２１…処理部、１２２…記憶部、２１１…処理部、２１２…記憶部、３０２…アクセス変換部、３０３…遅延時間計測部、３０４…評価部、３０５…評価データ収集部
【図１】
2004070971.tif 000003
【図２】
2004070971.tif 000004
【図３】
2004070971.tif 000005
【図４】
2004070971.tif 000006
【図５】
2004070971.tif 000007
【図６】
2004070971.tif 000008
【図７】
2004070971.tif 000009
【図８】
2004070971.tif 000010
【図９】
2004070971.tif 000011
【図１０】
2004070971.tif 000012
【図１１】
2004070971.tif 000013
【図１２】
2004070971.tif 000014
【図１３】
2004070971.tif 000015
【図１４】
2004070971.tif 000016