(57)【要約】【課題】  複数の計算機が用途に合ったデバイスを必要に応じて利用できるように、デバイスの設定、各計算機への割付を動的に行う。【解決手段】  記憶装置サブシステム３は、種々の構成、容量を持つ複数のデバイスを有し、複数の計算機１に接続される。管理計算機３は、計算機１と記憶装置サブシステム２の接続関係を記憶・管理し、計算機１のボリュームマネージャ１１と通信しながらデバイスの管理を行う。計算機１が新たにデバイスを要求する際、管理マネージャ３１にデバイスの数、容量、種類などの情報を通知する。管理マネージャ３１は、要求に合ったデバイスを選択し、計算機１からそのデバイスを利用できるよう記憶装置サブシステムに設定を指示する。管理マネージャ３１は、その後、計算機１に新たなデバイスのアクセスに必要な情報を通知し、ボリュームマネージャ１１は、その通知に従って計算機１の設定を変更する。【選択図】  図１
2004355638.tif 000002
【特許請求の範囲】
【請求項１】
第１の計算機と、
前記第１の計算機からアクセスされるデータを保持する記憶デバイスを有する記憶装置サブシステムと、
前記記憶装置サブシステムが有する前記記憶デバイスに関するデバイス管理情報と、前記記憶デバイスの前記第１の計算機への割り当ての状態を示すホスト管理情報とを有する第２の計算機とを有する計算機システムであって、
前記第１の計算機は、ユーザまたはアプリケーションプログラムからの新たな記憶デバイスの要求を受け付け、前記第２の計算機に新たな記憶デバイスの割り当てを要求する要求手段を有し、
前記第２の計算機は、前記要求手段からの要求に応じて、前記デバイス管理情報及び前記ホスト管理情報を参照して前記第１の計算機に割り当て可能な記憶デバイスを決定する手
段、及び該決定手段により決定された記憶デバイスを前記第１の計算機からアクセス可能となるように前記記憶装置サブシステムの設定を変更する変更手段とを有することを特徴とする計算機システム。
【請求項２】
前記記憶デバイスは、前記記憶装置サブシステムが備える物理的な記憶装置に形成される少なくとも一部の記憶領域であることを特徴とする請求項１記載の計算機システム。
【請求項３】
前記要求手段は、前記割り当ての要求とともに、割り当てられる記憶デバイスの条件を指定する情報を前記第２の計算機に送ることを特徴とする請求項１記載の計算機システム。
【請求項４】
前記決定手段は、前記デバイス管理情報を参照し、前記要求手段により指定された前記条件を満たす記憶デバイスであって、オフライン状態にある記憶デバイスを前記割り当て可能な記憶デバイスとして選択することを特徴とする請求項３記載の計算機システム
【請求項５】
前記条件は、要求される記憶デバイスの性能及び信頼性の少なくとも一方を指定するための情報を含むことを特徴とする請求項４記載の計算機システム。
【請求項６】
前記要求手段は、既存の記憶デバイスの容量の変更の要求を受け付け、該要求を前記第２の計算機に送信する手段を有し、
前記第２の計算機は、前記変更の要求要求に応じて、容量の変更後における記憶デバイスに合致する記憶デバイスを選択する手段と、前記記憶装置サブシステムに対し、前記既存の記憶デバイスに保持されているデータを前記選択手段により選択された記憶デバイスに移動するよう指示する手段とを有し、
前記記憶装置サブシステムは、前記指示に応答してデータを移動する手段を有することを特徴とする請求項１記載の計算機システム。
【請求項７】
前記第１の計算機は、複数の記憶デバイスを論理的に一つのデバイスとして前記アプリケーションプログラムに提供する手段を有することを特徴とする請求項１記載の計算機システム。
【請求項８】
前記要求手段は、すでに前記アプリケーションプログラムに提供しているデバイスの容量の拡張の要求に応じて、前記第２の計算機に前記拡張の要求で要求された拡張に必要な容量の新たな記憶デバイスの割り当てを要求し、
前記提供する手段は、新たに割り当てられた記憶デバイスを前記拡張が要求されたデバイスの一部とすることを特徴とする請求項７記載の計算機システム。
【請求項９】
第１の計算機、
前記第１の計算機からアクセスされるデータを保持する記憶デバイスを有する記憶装置サブシステム、
及び前記記憶装置サブシステムが有する前記記憶デバイスの前記第１の計算機への割り当ての状態を管理する第２の計算機とを有する計算機システムにおける記憶デバイスの割り当て方法であって、
前記第１の計算機から前記第２の計算機に新たな記憶デバイスの割り当てを要求し、
前記第２の計算機において、前記要求に基づいて前記第１の計算機に割り当て可能な記憶デバイスを決定し、
前記第２の計算機から前記記憶装置サブシステムに対して決定された記憶デバイスを前記第１の計算機からアクセス可能となるように設定を変更するよう前記記憶装置サブシステムに指示し、
前記第２の計算機から前記第１の計算機に前記決定された記憶デバイスのアクセスに必要な情報を転送し、
前記第１の計算機において、前記アクセスに必要な情報に基づいて前記決定された記憶デバイスを利用できるように、前記第１の計算機の設定を変更することを特徴とする記憶デバイス割り当て方法。
【請求項１０】
前記割り当ての要求ステップは、前記新たな記憶デバイスに要求される条件を
示す情報を含む要求を前記第２の計算機に送信するステップを含むことを特徴と
する請求項９記載の記憶デバイス割り当て方法。
【請求項１１】
前記要求される条件は、前記新たな記憶デバイスの性能及び信頼性の少なくとも一方を指定するための情報を含むことを特徴とする請求項１０記載の記憶デバイス割り当て方法。
【請求項１２】
前記決定するステップは、前記記憶装置サブシステム内の記憶デバイスを管理するデバイス管理情報を参照し、前記条件を満たす記憶デバイスであってオフライン状態にある記憶デバイスを前記割り当て可能な記憶デバイスとして決定するステップを含むことを特徴とする請求項１１記載の記憶デバイス割り当て方法。
【請求項１３】
請求項９記載の記憶デバイス割り当て方法において、さらに、前記第１の計算機において、前記決定された記憶デバイスと、前記第１の計算機において使用されている論理的なストレージを構成する既存の記憶デバイスとを結合し、前記論理的なストレージの容量を拡張することを特徴とする記憶デバイス割り当て方法。
【請求項１４】
計算機と、
該計算機からアクセスされるデータを保持する記憶デバイスを有する記憶装置サブシステムとを有する計算機システムにおいて、
前記計算機は、ユーザまたはアプリケーションプログラムからの新たな記憶デバイスの要求を受け付け、前記記憶装置サブシステムに新たな記憶デバイスの割り当てを要求する要求手段を有し、
前記記憶装置サブシステムは、前記要求手段からの要求に応じて、前記デバイス管理情報及び前記ホスト管理情報を参照して前記第１の計算機に割り当て可能な記憶デバイスを決定する手段、及び
該決定手段により決定された記憶デバイスを前記第１の計算機からアクセス可能となるように前記記憶装置サブシステムの設定を変更する変更手段とを有することを特徴とする計算機システム。
【請求項１５】
複数の計算機と、
該複数の計算機がネットワークを介して接続されるファイルサーバと、
ファイルサーバに接続され、複数の記憶デバイスを備える記憶装置サブシステムとを有する計算機システムにおいて、
前記複数の計算機は、ユーザまたはアプリケーションプログラムからの新たなファイル領域の要求を受け付け、前記第２の計算機に新たなファイル領域の割り当てを要求する要求手段を有し、
前記ファイルサーバは、前記要求手段からの要求に応じて、前記デバイス管理情報及び前記ホスト管理情報を参照して前記ファイル領域を設定可能な記憶領域を有する記憶デバイスを決定する手段、
該決定手段により決定された記憶デバイスを前記ファイルサーバからアクセス可能となるように前記記憶装置サブシステムの設定を変更する変更手段、
前記決定された記憶デバイスを利用できるように、前記ファイルサーバの設定を変更する設定手段、
前記決定された記憶デバイス上に前記ファイル領域を作成するファイル管理手段を有することを特徴とする計算機システム。
【請求項１６】
前記ファイル管理手段は、作成したファイル領域のアクセスに使われる情報を、前記要求を行った計算機に送信する手段を備え、
前記要求を行った計算機は、前記アクセスに使われる情報を利用して前記作成されたファイル領域へのアクセスを行うアプリケーションプログラムを有することを特徴とする請求項１６記載の計算機システム。  
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、計算機システム、及び、計算機システムにおける計算機への記憶デバイスの割り当て方法に係り、特に、複数の計算機により共用される記憶装置サブシステムを備えた計算機システムにおいて、計算機に対する記憶デバイスの割り当てを行うための方法に関する。
【背景技術】
【０００２】
近年、企業などで利用される計算機システムで扱われる情報量は、飛躍的に増大しており、これに伴いデータを記憶するディスク装置などの容量も増加の一途をたどっている。例えば、磁気ディスク装置においては、数ＴＢ（テラバイト）の容量を持つ装置も珍しくなくなってきている。このようなディスク装置に関して、例えば、特許文献１には、１台の記憶装置サブシステムを複数種類の論理的なディスク装置（以下では、デバイスとも呼ぶ）で構成する技術が開示されている。具体的には、ホストコンピュータからアクセスされるデバイス（論理ディスク）として、ＲＡＩＤ（Redundant Arrays of Inexpensive Disks）におけるＲＡＩＤ５とＲＡＩＤ１のように、ＲＡＩＤレベルの異なるものを混在させ、あるいは、論理ディスクを構成するための実際の磁気ディスク装置（物理ディスク装置）として、アクセス速度の異なるものを混在させたディスクサブシステムが開示されている。ユーザは、各デバイスのアクセス頻度に応じて、デバイスを使い分けることができる。
【０００３】
一方、ホスト計算機とディスク装置などの周辺装置との間のインタフェースとして、ファイバチャネル技術が現れたことにより、複数のホスト計算機、複数の記憶装置を１つのファイバチャネルケーブルで接続して計算機システムを構成することも行われるようになってきた。このような計算機システムでは、それぞれのホスト計算機は、ファイバチャネル上の任意の記憶装置に直接アクセスできる。このため、従来ように、各ホスト計算機がそれぞれに記憶装置を持つ場合に比べ、ホスト計算機間でのデータの共有やネットワーク負荷の低減が期待できる。
【０００４】
【特許文献１】特開平９−２７４５４４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
上述した従来技術によれば、各ホスト計算機がアクセスできるデバイスの数や種類を飛躍的に増加させることができる。しかし、ホスト計算機がアクセスできるデバイスの数や種類が増加するに伴い、各ホスト計算機でのデバイスの管理が難しくなってくる。１つのホスト計算機から多くのデバイスにアクセスできる利点の一方で、ユーザにとっては、ある業務でどのデバイスを使用すれば良いか選択するといったことが困難となる。特に、ファイバチャネルで接続された計算機システムの場合、あるホスト計算機からそのホスト計算機が本来使用していないデバイスにまでアクセスできることとなる。このため、他のホスト計算機が使用しているデバイスに不正アクセスを起こし、データを破壊してしまうといったことが生じ得る。
【０００６】
特開平１０―３３３８３９号公報には、このような問題を解決するため、ファイバチャネルで接続された記憶装置が、特定のホスト計算機からのアクセスだけを許可する方法が開示されている。しかし、記憶装置、デバイスが複数になった場合や、異なる種類のデバイスが混在する場合には、処理が複雑であることには変わりはなく、各ホスト計算機で、それぞれデバイスの種類などを常に意識する必要がある。
【０００７】
本発明の目的は、各ホスト計算機が用途に合ったデバイスを必要な時に必要な分だけ利用できるように、デバイスの設定、デバイスの各ホスト計算機への割り当てを容易に行えるようにすることにある。
【課題を解決するための手段】
【０００８】
本発明における計算機システムは、その好ましい一つの態様において、複数の計算機と、これら複数の計算機に接続する記憶装置サブシステムとを有する。記憶装置サブシステムは、複数の記憶デバイスと複数のインタフェースとを有し、各計算機に接続される。複数の計算機の１つは、記憶装置サブシステム内の記憶デバイスと、各計算機と記憶装置サブシステムの接続関係の情報を保持する管理手段を有する。各計算機は、新たにデバイスが必要なとき、管理手段にその容量や種類を通知する。管理手段は、その通知を受けて、要求に合った記憶デバイスを選択する。そして選択したデバイスが計算機からアクセスできるように、記憶装置サブシステムに対し所定の情報を設定するように指示する。管理手段は、また、デバイス割り当ての要求の有った計算機に所定の情報を返却し、要求の有った計算機では、その情報に基づき計算機の設定を変更し、当該計算機で割り当てられたデバイスが使用できるようにする。
【０００９】
本発明の他の態様において、複数の計算機と複数の記憶装置サブシステムがネットワークを介して接続される。任意の計算機上には、各記憶装置サブシステムが有する記憶デバイスと、各計算機と記憶装置サブシステムの接続関係の情報を保持する管理手段が設けられる。各記憶装置サブシステムは、管理手段から指定された計算機に対してアクセスを許可するための制御手段を有する。各計算機は、新たな記憶デバイスを必要とするとき、管理手段にその容量や種類を通知する。管理手段は、通知に応じて要求に合ったデバイスを選択し、選択したデバイスが新たな記憶デバイスを必要とする計算機からアクセスできるように、記憶装置サブシステムに対し当該計算機からのアクセスを許可するよう指示する。管理手段は、また、デバイス割り当てを要求した計算機に所定の情報を返却する。デバイス割り当てを要求した計算機では、管理手段から返却された情報に基づき、計算機の設定を変更し、その計算機から割り当てられたデバイスが使用できるようにする。
【発明の効果】
【００１０】
本発明によれば、ホスト計算機に対する記憶デバイスの割り当てを必要に応じて動的に行うことができる。
【発明を実施するための最良の形態】
【００１１】
図１は、本発明が適用された計算機システムの一実施形態における構成例を示す簡略なブロック図である。
【００１２】
計算機システムは、複数のホスト計算機、ホスト計算機１ａ、ホスト計算機１ｂ、…ホスト計算機１ｎ（総称してホスト１と呼ぶ）、ホスト1に接続される記憶装置サブシステム２、管理用ホスト計算機３、ネットワーク４、及び遠隔地に配置される記憶装置である副記憶装置５を有して構成される。
【００１３】
ホスト計算機１a、１ｂ、…は、ＣＰＵ、メモリなどを有する計算機であり、メモリに格納されたオペレーティングシステム、アプリケーションプログラムをＣＰＵが読み出して実行することで、所定の機能を達成する。
【００１４】
記憶装置サブシステム２は、複数のディスクユニット２１、ディスクコントローラ２２、ホスト計算機１と接続する複数のポート２３、副記憶装置５と接続するためのインタフェース２４、ネットワーク４と接続するネットワークインタフェース２５を有している。本実施形態における記憶装置サブシステム２は、複数のディスクユニット２１をまとめて１または複数の論理デバイスとしてホスト計算機１に見せかける。もちろん、個々のディスクユニット２１を１つの論理デバイスとしてホスト計算機１に見せるようにしても良い。
【００１５】
ポート２３としては、たとえば、接続されるホスト計算機１が、いわゆるオープンシステムの計算機であればＳＣＳＩ（Small Computer System Interface）などのインタフェースが用いられる。一方、ホスト計算機１が、いわゆるメインフレームであれば、ＥＳＣＯＮ（Enterprise System CONnection）などのチャネルインタフェースが用いられる。それぞれのポート２３は、同一のインタフェースであっても異なるものが混在していてもかまわない。本実施形態では、全てのポート２３にインタフェースとして、ＳＣＳＩを用いるものとして説明する。
【００１６】
ディスクコントローラ２２は、プロセッサ２２１、キャッシュメモリ２２２、制御メモリ２２３を有している。プロセッサ２２１は、ホスト計算機１からのアクセスやディスクユニット２１の制御を行う。プロセッサ２２１は、特に、記憶装置サブシステム２がホスト計算機１に対してディスクユニット２１単体ではなく、ディスクアレイの様に複数のディスクユニットをまとめて１または複数の論理デバイスに見せかけている場合には、その処理や管理などを行う。ディスクコントローラ２２は、ネットワークインタフェース２５を介して管理用ホスト計算機３との通信を行う。
【００１７】
キャッシュメモリ２２２は、ホスト計算機１からのアクセス処理速度を高めるため、頻繁に読み出されるデータを格納したり、あるいはホスト計算機１からのライトデータを一時的に格納したりする。キャッシュメモリ２２２の一部を、１または複数の論理的なディスクに見せかけ、磁気ディスクユニットへのアクセスが不要なデバイスとして利用することもできる。
【００１８】
制御メモリ２２３は、プロセッサ２２１が実行するプログラムを格納し、また、ディスクユニット２１や、複数のディスクユニット２１を組み合わせて構成される論理デバイスの管理を行うための情報を格納するために使用される。
【００１９】
各ホスト計算機１ａ、１ｂ…には、ボリュームマネージャ１１と呼ばれるソフトウェア（プログラム）が配置される。ボリュームマネージャ１１は、管理用ホスト計算機３に配置される管理マネージャ３１と通信しあって動作する。各ホスト計算機１は、インタフェース（Ｉ／Ｆ）１２を持っており、インタフェース１２により記憶装置サブシステム２のポート２３と接続される。
【００２０】
次に、記憶装置サブシステム２内の論理デバイスの管理形態について説明する。
【００２１】
前述の通り、記憶装置サブシステム２は、複数のディスクユニット２１を１または複数の論理デバイスとして、あるいは、個々のディスクユニット２１を１つの論理デバイスとしてホスト計算機１に見せかける。記憶装置サブシステム２は、また、キャッシュメモリ２２２の一部の領域を１または複数の論理デバイスとしてホスト計算機１に見せる。記憶装置サブシステム２内のディスクユニット２１の数と論理デバイスの数に相関関係はない。
【００２２】
図２は、記憶装置サブシステム２が論理デバイスを管理するために使用する情報を保持する論理デバイス管理テーブルの一例を示すテーブル構成図である。
【００２３】
論理デバイス管理テーブルは、論理デバイス番号６１に対し、サイズ６２、構成６３、状態６４、パス６５、ターゲットＩＤ６６，ＬＵＮ６７の項目の組を保持する。サイズ６２には、論理デバイス番号６１により特定される論理デバイスの容量を表す情報が設定される。
【００２４】
構成６３には、当該論理デバイスの構成を示す情報、たとえばディスクユニット２１によりＲＡＩＤ（Redundant Arrays of Inexpensive Disks）が構成され、それが論理デバイスに割り当てられている場合、ＲＡＩＤ１、ＲＡＩＤ５など、ＲＡＩＤの種別を示す情報が設定される。また、当該論理デバイスとして、キャッシュメモリ２２２の一部の領域が割り当てられていれば「キャッシュ」、単体のディスクユニットが割り当てられている場合には「単体ディスクユニット」を示す情報が構成６３に設定される。
【００２５】
状態６４には、当該論理デバイスの状態を示す情報が設定される。状態としては、「オンライン」、「オフライン」、「未実装」、「障害オフライン」が存在する。「オンライン」は、当該論理デバイスが正常に稼動し、ホスト計算機１からのアクセスが可能な状態であることを示す。「オフライン」は、当該論理デバイスは定義され、正常に稼動しているが、ホスト計算機１からのアクセスはできない状態にあることを示す。この状態は、以前ホスト計算機１で使用されていたが、ホスト計算機１でそのデバイスが不要となって使われなくなった場合に相当する。「未実装」は、当該論理デバイスが定義されておらずホストからのアクセスはできない状態にあることを示す。また「障害オフライン」は、当該論理デバイスに障害が発生してホストからのアクセスができないことを示す。
【００２６】
パス６５には、当該論理デバイスが複数のポート２３のどのポートに接続されているかを表す情報が設定される。各ポート２３には、記憶装置サブシステム２内で一意な番号が割り振られており、「パス」欄には論理デバイスが接続されているポート２３の番号が記録される。ターゲットＩＤ６６とＬＵＮ６７は、論理デバイスを識別するための識別子である。ここでは、これらの識別子として、ＳＣＳＩ上でホスト計算機１からデバイスをアクセスする場合に用いられるＳＣＳＩ−ＩＤ、ＬＵＮが用いられる。
【００２７】
１つの論理デバイスを複数のポートに接続し、複数のホスト計算機１から同一の論理デバイスをアクセス可能とすることができる。この場合、論理デバイス管理テーブルには、当該論理デバイスに関する複数のエントリが作成される。例えば、図２に示す論理デバイス管理テーブルでは、論理デバイス番号２番のデバイスはポート番号０、及び１の２つのポート２３に接続されている。このため、論理デバイス番号２番の項目が２つ存在している。１つの論理デバイスがこのように複数のポート２３からアクセス可能とされる場合、それぞれのパス６５に対応するターゲットＩＤ、ＬＵＮは同一である必要はなく、図２に示されるように異なっていても良い。
【００２８】
論理デバイス管理テーブルに保持された情報は、ネットワークインタフェース２４を通じて、適当なタイミングで、あるいは記憶装置サブシステム２に障害が発生して構成が変化した、などの際に管理用ホスト計算機３に送られる。このため、管理用ホスト計算機３も、図２に示すテーブルと同様の論理デバイス管理テーブルを保持する。
【００２９】
図３は、管理用ホスト計算機３の管理マネージャ３１により保持されるホスト管理テーブルの一例を示すテーブル構成図である。
【００３０】
ホスト管理テーブルは、管理用ホスト計算機３が各ホスト計算機１に対するデバイスの割り当てを管理するために、ホスト名７１、ポート番号７２、インタフェース番号７３、論理デバイス番号７４の組で構成される管理情報を保持する。
【００３１】
ポート番号７２と論理デバイス番号７４は、記憶装置サブシステム２の内部で定義される番号で、記憶装置サブシステム２の各ポート２３及び論理デバイスを識別するための情報である。ポート番号７２と論理デバイス番号７４には、ホスト名７１に設定された識別子で識別されるホスト計算機１が接続されるポートのポート番号と、そのホスト計算機に割り当てられている論理デバイスのデバイス番号が設定される。
【００３２】
インタフェース番号７３は、各ホスト計算機１のインタフェース１２を管理するために付けられた番号である。インタフェース番号７３は、特に、１つのホスト計算機１が複数のインタフェース１２を持つ場合に必要となる。ポート番号７２とインタフェース番号７３の組は、ホスト計算機１と論理デバイスの接続関係を示すために重要な要素である。例えば、図１に示すホスト計算機１ｂは、２つのインタフェース１２を備え、各インタフェース１２は、それぞれ異なるポート２３に接続されている。このような場合、一方のインタフェース、あるいは、一方のインタフェースと記憶装置サブシステム２を接続するラインの障害などにより使えなくなっても、他方のインタフェースから論理デバイスへの接続がなされていれば処理を続行でき、信頼性を高めることができる。
【００３３】
管理用ホスト計算機３は、ホスト管理テーブルと、記憶装置サブシステム２から送られる論理デバイス管理テーブルを参照して、各ホスト計算機１に論理デバイスを割り当てる。以下、デバイスの割り当ての処理について説明する。
【００３４】
図４は、各ホスト計算機１のボリュームマネージャ１１により実施される処理の流れを示すフローチャートである。この処理は、ホスト計算機１を使用するユーザ、またはホスト計算機１で稼動するアプリケーションプログラムなどが新規にデバイスを必要とするときに実施される。
【００３５】
ステップ１００１で、ボリュームマネージャ１１は、ユーザ、またはアプリケーションプログラムから必要とされるデバイスの数とデバイスの種類の情報を得る。ユーザ、またはアプリケーションプログラムは、デバイスに関する情報として、その容量、性能条件、信頼性レベルなどの情報を指定する。デバイスの容量とは、先に説明したデバイスのサイズのことである。性能条件としては、例えば、低速ディスクドライブ、高速ディスクドライブ、キャッシュ常駐ディスクドライブといった、デバイスのアクセス速度などの性能に関する情報が指定される。信頼性レベルとしては、例えば、ＲＡＩＤ０、ＲＡＩＤ１、ＲＡＩＤ５、二重パス、リモートミラーなど、デバイスの信頼性に関する情報が指定される。二重パスでは、ホスト計算機１が複数のインタフェースを持つ場合に、それら複数のインタフェースを利用して同一デバイスにアクセスできるよう複数のパスが設けられる。二重パスでは、あるパスが利用できなくなった時でも、他のパスを使ってそのデバイスにアクセスすることが可能となる。リモートミラーは、副記憶装置５に記憶装置サブシステム２内のデバイスのコピーを持たせるものであり、地震、火災などの要因で記憶装置サブシステム２そのものが稼動できなくなった場合にも、副記憶装置５にデータが保持されているため、信頼性を高めることができる。
【００３６】
次に、ステップ１００２でボリュームマネージャ１１は、当該ホスト計算機１のインタフェース１２上で使用されていないターゲットＩＤ、ＬＵＮの組を検索する。
【００３７】
ステップ１００３でボリュームマネージャ１１は、ステップ１００１において指定された容量、性能条件、信頼性レベル、及びステップ１００２で検索された未使用のターゲットＩＤ、ＬＵＮの組を管理用ホスト計算機３の管理マネージャ３１に送信し、新たなデバイスの割付を要求する。管理マネージャ３１は、受け取った情報に基づいて割り当てるべきデバイスを検索し、そのデバイスのアクセスに使用するホストインタフェース番号、ターゲットＩＤ、及びＬＵＮを指定する情報を返却する。ここで行われる管理マネージャ３１の処理については後述する。
【００３８】
ステップ１００４でボリュームマネージャ１１は、管理マネージャ１３からの情報を受け取る。ステップ１００５では、管理マネージャ１３から受け取った情報をもとに、新しいデバイスを使用できるようにホスト計算機１の設定変更が行われる。
【００３９】
いわゆるオープン系のオペレーティングシステムの場合、ホスト計算機１が各デバイスにアクセスするために、デバイスファイルがデバイス毎に用意され、デバイスファイルに対してアクセスが実施される。通常、デバイスファイルは、ホスト計算機１のデバイスコンフィギュレーション処理を行った際に用意され、デバイスコンフィギュレーション処理時に存在しないデバイスについては、デバイスファイルが作成されていない。このため、ステップ１００４では、新しく割り当てられたデバイスに関するデバイスファイルが作成される。具体的には、例えば、サンマイクロシステムズ社のSolarisオペレーティングシステムでは、“drvconfig”コマンド、あるいは“drives”コマンドにより、新規デバイスの認識、デバイスファイルの作成が行われ、ホスト計算機１から新たに割り当てられたデバイスに対してアクセスできるようになる。
【００４０】
最後にステップ１００６でボリュームマネージャ１１は、割り当てられたデバイスファイル名、ターゲットＩＤ、ＬＵＮの情報をユーザまたはアプリケーションプログラムに通知して処理を終了する。
【００４１】
図５は、新しいデバイスの割り当て時に管理用ホスト計算機３の管理マネージャ３１による処理の流れを示すフローチャートである。
【００４２】
管理マネージャ３１は、ステップ１１０１でホスト計算機１から送られてきたデバイスサイズ、性能条件、信頼度レベルなどの情報を受け取ると、保持している論理デバイス管理テーブル、及びホスト管理テーブルに設定されている情報を参照し、要求に応じたデバイスが存在するか検索する。ここで検索対象となるデバイスは、論理デバイス管理テーブルの状態６４に「オフライン」が設定されているものである（ステップ１１０２）。管理マネージャ３１は、検索の結果、要求に合った「オフライン」状態のデバイスが見つかったかどうか判別する（ステップ１１０３）。
【００４３】
要求に合った「オフライン」状態のデバイスが見つかった場合、管理マネージャ３１は、ホスト計算機１から受け取ったターゲットＩＤ、ＬＵＮの情報と、論理デバイス管理テーブル及びホスト管理テーブルに設定されている情報に基づいて、当該デバイスをホスト計算機１に接続するために使用するポート番号、ターゲットＩＤ、ＬＵＮを決定する（ステップ１１０４）。
【００４４】
次に、管理マネージャ３１は、ステップ１１０３で見つけた論理デバイス番号のデバイスを、ステップ１１０４で決定したポート番号、ターゲットＩＤ、ＬＵＮでアクセスできるように設定してオンライン状態にするよう記憶装置サブシステム２に指示する。記憶装置サブシステム２は、管理マネージャ３１からの指示に従って設定を行い、その結果を管理マネージャ３１に返却する（ステップ１１０５）。
【００４５】
管理マネージャ３１は、記憶装置サブシステム２から結果を受け取ると（ステップ１１０６）、要求のあったホスト計算機１のボリュームマネージャ１１に対して、インタフェース番号、ターゲットＩＤ、ＬＵＮを返却する（ステップ１１０７）。
【００４６】
一方、ステップ１１０３で「オフライン」状態のデバイスで要求に合ったものが存在しなかった場合、管理マネージャ３１は、論理デバイス管理テーブルの状態６４が「未実装」の論理デバイス番号が存在するか検索する（ステップ１１０８）。「未実装」の論理デバイス番号が存在する場合、管理マネージャ３１は、記憶装置サブシステム２に対して、ホスト計算機１から要求のあったデバイスサイズ、性能条件、信頼度レベルなどの情報を伝えてデバイスの構築を要求する。記憶装置サブシステム２は、管理マネージャ３１から要求に合わせて当該デバイス番号のデバイスを構築し、管理マネージャ３１にその結果を返却する（ステップ１１０９）。管理マネージャ３１は、その結果を受け取ると、上述したステップ１１０４以降の処理を実施する（ステップ１１１０）。
【００４７】
図６は、ホスト計算機１で不必要になったデバイスの返却処理においてボリュームマネージャ１１が実施する処理の流れを示すフローチャートである。
【００４８】
デバイスの返却処理において、ボリュームマネージャ１１は、まず、ユーザ、あるいは上位アプリケーションプログラムから不必要になったデバイスの情報、例えば、デバイスファイル名を受け取る（ステップ１２０１）。ボリュームマネージャ１１は、受け取った情報をもとに、返却処理の対象となるデバイスに関連するインタフェース番号、ターゲットＩＤ、ＬＵＮを取得する（ステップ１２０２）。
【００４９】
次に、ボリュームマネージャ１１は、ホスト計算機１でそのデバイスを使わないようにするため、必要に応じてホスト計算機１の設定変更を行う。ここでは、具体的には、デバイスファイルの削除などの処理が行われる（ステップ１２０３）。続いて、ボリュームマネージャ１１は、ステップ１２０２で取得したインタフェース番号、ターゲットＩＤ、ＬＵＮを管理マネージャ３１に通知し、処理を終了する（ステップ１２０４）。
【００５０】
図７は、ホスト計算機１で不必要になったデバイスの返却処理において管理マネージャ３１が実施する処理の流れを示すフローチャートである。
【００５１】
管理マネージャ３１は、ホスト計算機１からインタフェース番号、ターゲットＩＤ、ＬＵＮを受け取る（ステップ１３０１）。管理マネージャ３１は、受け取ったインタフェース番号、ターゲットＩＤ、ＬＵＮに基づいて、記憶装置サブシステム２に対し、返却の対象とされているデバイスをオフラインにするよう指示する。この指示に応じて、記憶装置サブシステム２は、指定されたデバイスをオフラインとし、その結果を反映した論理デバイス管理テーブルを管理マネージャ３１に返却する（ステップ１３０２）。記憶装置サブシステム２から、論理デバイス管理テーブルを受け取ると、それを保持して処理を完了する（ステップ１３０３）。
【００５２】
上述した第１の実施形態では、管理用ホスト計算機を設け、そこに管理マネージャを配置しているが、管理マネージャの機能は必ずしも管理用ホスト計算機に存在する必要はない。例えば、ホスト計算機１ａ、１ｂ、…のいずれかに存在するように構成することも可能である。また、管理マネージャの機能を記憶装置サブシステムに設けることもできる。この場合、各ホスト計算機１ａ、１ｂ、…は、インタフェースを介して直接記憶装置サブシステムとの間で、要求の送出、情報受け取りを行えばよい。
【００５３】
図８は、本発明の第２の実施形態における計算機システムの構成を示す簡略なブロック図である。
【００５４】
本実施形態における計算機システムは、複数のホスト計算機１（ホスト計算機１ａ、ホスト計算機１ｂ、…、ホスト計算機１ｎ）と、複数の記憶装置サブシステム２ａ、２ｂ、…、２ｍ、管理用ホスト計算機３、ネットワーク４、及びファイバチャネルスイッチ６を有して構成される。
【００５５】
ホスト計算機１は、第１の実施形態と同じく、ボリュームマネージャ１１を有する。ボリュームマネージャ１１は、管理用ホスト計算機３におかれた管理マネージャ３１と通信しあって動作する。さらに、ホスト計算機１は、インタフェース（Ｉ／Ｆ）１２を有し、インタフェース１２によりファイバチャネルスイッチ８と接続される。
【００５６】
記憶装置サブシステム２ａ、２ｂ、…、２ｍは、それぞれ、第１の実施形態における記憶装置サブシステム２と同様に、ディスクユニット２１、ディスクコントローラ２２、ポート２３、ネットワークと接続するネットワークインタフェース（ネットワークＩ／Ｆ）２５を含んで構成される。第１の実施形態と同じくディスクユニット２１、ポート２３は複数あってもよいが、ここでは説明を簡単にするためディスクユニット、及びポートは、それぞれ１つであるものとして説明する。
【００５７】
ファイバチャネルスイッチ８は、複数のポート８１を有する。各ポート８１には、ホスト計算機１ａ、１ｂ、…のインタフェース１２、及び、記憶装置サブシステム２ａ、２ｂ、…のポート２３のいずれかが接続される。ファイバチャネルスイッチ８は、ネットワークインタフェース８２を有しており、ネットワーク４にも接続されている。ファイバチャネルスイッチ８は、ホスト計算機１ａ、１ｂ、…が、記憶装置サブシステム２ａ、２ｂ、…を自由にアクセスできるようにするために使用される。この構成では、基本的にすべてのホスト計算機１が、すべての記憶装置サブシステム２にアクセスすることが可能である。
管理用ホスト計算機３は、第１の実施形態と同じく、管理マネージャ３１を有する。管理マネージャ３１は、各ホスト計算機１ａ、１ｂ、…のボリュームマネージャ１１と通信しあって動作する。
【００５８】
図９は、管理用ホスト計算機３が保持する論理デバイス管理テーブルの一例を示すテーブル構成図である。本実施形態における論理デバイス管理テーブルは、第１の実施形態において記憶装置サブシステム２が保持する論理デバイス管理テーブルと同様の情報を管理するために用いられる。以下、主に第１の実施形態における論理デバイス管理テーブルとの相違点について説明する。
【００５９】
本実施形態において、管理用ホスト計算機３は、全ての記憶装置サブシステム２が有する全てのデバイスに一意な番号をつけて管理する。この管理の目的のため、論理デバイス管理テーブルには、デバイス毎にそのサイズ１０３、構成１０４、状態１０５、ＬＵＮ１０６、ＷＷＮ（World Wide Name）１０２、及び接続ホスト名１０７を情報として持つ。
【００６０】
サイズ１０３、構成１０４、状態１０５、ＬＵＮ１０６については、第１の実施形態における論理デバイス管理テーブルが保持する情報と同じものである。ＷＷＮ１０２は、記憶装置サブシステム２のポート２３に設定されている情報で、各ポートを識別するために個々のファイバチャネルインタフェースに固有に割り付けられている情報である。ＷＷＮ１０７は、N_PORT_NAMEとも呼ばれる。接続ホスト名１０７は、当該デバイスに接続が許可されているホスト計算機を識別するためのホスト名である。
【００６１】
基本的に、ファイバチャネルスイッチ８に接続された複数のホスト計算機１が任意の記憶装置サブシステム２に自由にアクセスできると、システムの安全上問題となることがある。このようなシステムの安全性に関する問題を解決するために、例えば、特開平１０―３３３８３９号公報には、ファイバチャネルで接続された記憶装置に対し、特定のホスト計算機からのアクセスだけを許可することを可能とする技術が開示されている。本実施形態でも、システムの安全性を維持するために、記憶装置サブシステム２は、特開平１０―３３３８３９号公報に開示されているような安全性を維持するための手段を持っているものとする。ただし、これについては、本発明の本質とは直接関係するところではなく、ここでは詳しい説明を省略する。
【００６２】
本実施形態において、ＷＷＮ１０７は、各ホスト計算機１のインタフェース１２にも与えられている。管理用ホスト計算機３は、図１０に示すテーブルにより、ホスト名１０８とＷＷＮ１０９の組を管理している。
【００６３】
以下、ボリュームマネージャ１１、管理マネージャ３１の動作について説明する。
【００６４】
本実施形態において、ホスト計算機に新しいデバイスを割り当てる際にボリュームマネージャ１１によって実施される処理は、基本的には、図４に示した第１の実施形態における処理と同様に実施される。すなわち、ボリュームマネージャ１１は、ユーザまたはアプリケーションプログラムから必要とするデバイスの数や種類の情報を受けると、それをもとに管理マネージャ３１に新たなデバイスの割付を要求する。管理マネージャ３１において新たなデバイスの割り当てが終わると、ボリュームマネージャ１１は、デバイスの設定変更を行い、新しいデバイスをホスト計算機１から利用できるようにする。
【００６５】
図１１に、本実施形態において、新しいデバイスの割り当て時に管理マネージャ３１により実施される処理のフローチャートを示す。
【００６６】
管理マネージャ３１により行われる処理も、同様に、図５に示した第１の実施形態における管理マネージャの処理とほぼ同様に行われる。なお、図１１において、図５に示したものと同様の処理が行われる部分については、図５と同一の参照番号を用いている。以下では、主に、図５と異なる処理が行われる部分について説明し、図５と同一の処理が行われる部分については説明を省略する。
【００６７】
本実施形態において、記憶装置サブシステム２は、デバイスに対して、割り当てられていないホスト計算機から不用意にアクセスされることのないよう、初期状態では全てのホスト計算機１からのアクセスを禁止している。このため、管理マネージャ３１は、ステップ１１０５で記憶装置サブシステム２にデバイスをオンラインにするよう指示する際、併せて記憶装置サブシステム２に当該ホスト計算機１から新たに割り当てるデバイスへのアクセスを許可するように指示する。
【００６８】
この指示において、管理マネージャ３１は、記憶装置サブシステム２に対して、デバイスへのアクセスを許可すべきホスト計算機１のＷＷＮを通知する。記憶装置サブシステム２は、ホスト計算機１によるデバイスのアクセス時に、管理マネージャ３１から受け取ったＷＷＮに基づいて、そのアクセスの可否を判断する（ステップ２１０５）。
【００６９】
ステップ２１０５の処理に続いて、管理マネージャ３１は、ファイバチャネルスイッチ８の設定変更を行う。例えば、図１２に示すように、ホスト計算機Ａ、Ｂは、ディスクユニット（デバイス）ａ、ｂにアクセスするが、ホスト計算機Ｃは、ディスクユニット（デバイス）ｃのみにアクセスする場合を考える。この場合、管理マネージャ３１は、ホスト計算機Ｃに接続するポートｃからは、ディスクユニットａ、ｂに接続するポート（ポートｄ、ポートｅ）にはアクセスできないような経路設定をファイバチャネルスイッチ８に対して行う。これにより、あたかも２つのスイッチが存在するようにできる。このような経路設定を行うことをゾーニングと呼ぶ。ゾーニングを行うことによって、あるデバイスが本来アクセスが許されていないホスト計算機からアクセスされることを防ぐことができる。また、データの流れが分離されるため、性能を向上させることもできる（ステップ２１０６）。
【００７０】
以上の処理の後、管理マネージャ３１は、ステップ１１０６、１１０７の処理を実施する。
【００７１】
図１３は、本発明が適用された計算機システムの第３の実施形態における構成例を示す簡略なブロック図である。
【００７２】
本実施形態の計算機システムは、複数のホスト計算機１ａ′、ホスト計算機１ｂ′、…ホスト計算機１ｎ′（総称してホスト１′と呼ぶ）がネットワークインタフェース（Ｉ／Ｆ）１２′、ネットワーク４を介して、ファイルサーバ９に接続されている。ファイルサーバ９は、インタフェース（Ｉ／Ｆ）９２を介して記憶装置サブシステム２に接続される。記憶装置サブシステム２、及び遠隔地に配置される記憶装置である副記憶装置５は第１の実施形態と同様のものである。
【００７３】
ファイルサーバ９は各ホスト計算機１′と接続するネットワークインタフェース９１、記憶装置サブシステム２と接続する複数のインタフェース３２、管理マネージャ９３、及びサーバプログラム９４を備える。
【００７４】
管理マネージャ９３は、第１の実施形態におけるの管理マネージャ３１と同じく、要求に応じたデバイスの割り当てなどを実施する。サーバプログラム９４は、ＮＦＳ（Network File System）などの、ネットワーク経由でのファイルアクセスを提供するファイルサーバプログラムである。サーバプログラム９４は、ファイルサーバ９が記憶装置サブシステム２に作ったファイルシステムをホスト計算機１′からアクセスするための手段を提供する。
【００７５】
記憶装置サブシステム２とファイルサーバ９は、各ホスト計算機１′からそれらがひとつの記憶装置として見える、いわゆるＮＡＳ（Network Attached Storage）になっている構成もありうる。
【００７６】
ホスト計算機１′のクライアントプログラム１１′は、ファイルサーバ９上のサーバプログラム９４と通信しあって、ホスト１′上で動作するアプリケーションプログラムから、ファイルサーバ９が記憶装置サブシステム２に作ったファイルシステムを使用できるようにするプログラムである。クライアントプログラム１１′は、システムの構成によっては、ホスト１′上の図示しないオペレーティングシステムに組み込まれていてもよい。クライアントプログラム１１′は、管理マネージャ９３に対し、新たにファイルシステムを作るよう要求し、あるいは既存のファイルシステムのサイズの変更を要求する。
【００７７】
ホスト計算機１の稼働中に、既存のファイルシステムのサイズの変更を可能とするため、本実施形態の記憶装置サブシステムは、ある論理デバイスに存在するデータをその論理デバイスが形成されている物理的なディスクユニットとは別の物理的なディスクユニットに移動する機能を備える。このような機能を実現する具体的な技術手段については、例えば、特開平９−２７４５４４号公報に開示された公知の技術を適用することができる。したがって、本明細書ではその詳細な説明は省略する。
【００７８】
図１４は、ホスト計算機１′のクライアントプログラム１１′が新規にファイルシステムを構築する際に行われる処理の流れを示すフローチャートである。
【００７９】
この処理は、ホスト計算機１′を使用するユーザ、またはホスト計算機１′で稼動するアプリケーションプログラムなどが新規にファイル領域を必要とするときに実施される。
【００８０】
クライアントプログラム１１′は、ユーザ、またはアプリケーションプログラムからの要求に応じて必要とするデバイスについての情報の指定を受け付ける。ここで取得する情報には、図４に示した第１の実施形態におけるステップ１００１と同様に、必要とするデバイスの容量、性能条件、信頼性レベルなどの情報が含まれる（ステップ２００１）。
【００８１】
次に、クライアントプログラム１１′は、ステップ２００１で指定された容量、性能条件、信頼性レベルなどの情報を管理マネージャ９３に送信し、新たなファイルシステムの領域を要求する。管理マネージャ９３は、クライアントプログラム１１′から受け取った情報に基づいて、割り当てることのできるデバイスの領域を検索して用意し、その結果をクライアントプログラム１１′に返却する。このとき行われる管理マネージャ９３の処理については後述する（ステップ２００２）。
【００８２】
クライアントプログラム１１′は、新たな領域の要求に対する管理マネージャ９３からの応答を受け取る。このときに受け取る応答には情報は、マウントポイント、例えば、ＮＦＳの場合にはファイルサーバのホスト名、あるいは、ホストＩＰアドレス、及びディレクトリ名などが含まれる（ステップ２００３）。クライアントプログラム１１′は、管理マネージャ９３受け取った情報をもとに、ファイルシステムをマウントする（ステップ２００４）。最後に、クライアントプログラム１１′は、割り当てられたマウントポイントをユーザまたはアプリケーションプログラムに通知して処理を終了する（ステップ２００５）。
【００８３】
図１５は、クライアントプログラム１１′からの新たな領域の要求に応答して行われる管理マネージャ９３による処理の流れを示すフローチャートである。
【００８４】
この処理は、基本的に図５に示した第１の実施形態における管理マネージャ３１の処理と同様に行われる。ただし、図５におけるステップ１１０７の処理が、ステップ２１０７、２１１１、２１１２の処理に変更される。
【００８５】
図５のステップ１１０７では要求のあったホスト計算機に対してターゲットＩＤなどの情報が渡されるが、本実施形態では、これらの情報に対する加工が施される。このために、管理マネージャ９３は、ターゲットＩＤなどデバイスについての情報をサーバプログラム９４に渡し（ステップ２１０７）、サーバプログラム９４からマウントポイントの情報を受け取る（ステップ２１１１）。そして、サーバプログラム９４から受け取ったマウントポイントの情報を要求のあったクライアントプログラム１１′に渡して処理を終了する（ステップ２１１２）。
【００８６】
図１６は、デバイスについての情報を管理マネージャから受け取ったサーバプログラムが実施する処理の流れを示すフローチャートである。
【００８７】
管理マネージャ９３からデバイスについての情報が渡されると（ステップ２２０１）、サーバプログラム９４は、ファイルサーバ９のデバイスリコンフィグを実施する。この処理は、具体的には、図４に示した第１の実施形態におけるステップ１００５の処理と同様の処理である（ステップ２２０２）。
【００８８】
続いて、サーバプログラム９４は、新たにできたデバイスにファイルシステムを作成し（ステップ２２０３）、管理マネージャ９３にそのファイルシステムのマウントポイントを示す情報を返却する（ステップ２２０４）。
【００８９】
以上の処理により、ホスト計算機１′から利用可能な新しいファイルシステムを追加することができる。
【００９０】
図１７は、既存のファイルシステムのサイズを変更する際に管理マネージャ９３により実施される処理の流れを示すフローチャートである。図１５に示した新たなファイルシステムの要求時の処理とは、以下の点において相違する。
【００９１】
既存のファイルシステムのサイズを変更しようとするとき、ユーザ、あるいは、アプリケーションプログラムは、クライアントプログラム１１′に対して、サイズを変更するファイルシステムのマウントポイント、拡張、あるいは、縮小しようとするサイズなどに関する情報を指定した要求を発行する。クライアントプログラム１１′は、ユーザ、あるいは、アプリケーションプログラムから指定された情報を用いて管理マネージャ９３にファイルシステムのサイズの変更を要求する。管理マネージャ９３は、クライアントプログラム１１′から送られてくる、処理の対象とするファイルシステムのマウントポイント、拡張したいサイズ等の情報を受け取る（ステップ２３０１）。
【００９２】
管理マネージャ９３は、クライアントプログラム１１′から受け取ったマウントポイントに基づいて処理の対象となっているファイルシステムを格納している論理デバイスのターゲットＩＤ、ＬＵＮなどの情報を得て、論理デバイスを判別する。そして、管理マネージャ９３は、この論理デバイスの種類、すなわち、信頼性、性能等の情報を得る（ステップ２３０２）。続いて、管理マネージャ９３は、ステップ２３０１、２３０２で得た情報に基づき、新たなファイルシステムを追加するときと同様にして、変更後のファイルシステムのサイズの空き領域を持ち、元の論理デバイスと同じ種類の論理デバイスを確保する（ステップ１１０２〜１１１０）。
【００９３】
この後、管理マネージャ９３は、ステップ２３０４において、記憶装置サブシステム２に対し、これまでファイルシステムが記録されていた論理デバイスから新たに確保した論理デバイスにデータの移動を指示する。データの移動はファイルサーバプログラム９４から透過的に行われる。ホスト計算機１′はファイルサーバプログラム９４を介して記憶装置サブシステム２にアクセスするため、この処理は、ホスト計算機１′からも透過的な処理となる。したがって、データの移動中、ホスト計算機１′は処理を停止する必要はない。
【００９４】
データの移動が終わると、管理マネージャ９３は、サーバプログラム９４にファイルシステムの拡張を指示する。実際のデバイス容量が増加してもファイルシステムを構築しなおさなければ、ファイルシステムとしては拡張された容量のすべてを使うことはできない。サーバプログラム９４に対してファイルシステムの拡張を指示した後、管理マネージャ９３は、処理の完了をクライアントプログラム１１′に通知して処理を終了する（ステップ２３０５）。
【００９５】
以上の処理により、既存のファイルシステムのサイズの変更を、ホスト計算機１′を稼働させたまま行うことが可能となる。なお、既存のファイルシステムのサイズを変更する場合、クライアントプログラム１１′は、管理マネージャからの通知を受けた後、そのまま拡張されたファイルシステムを使用することができる。したがって、この場合には、図１４におけるステップ２００４、及びステップ２００５の処理は実施する必要がない。
【００９６】
図１８は、本発明が適用された計算機システムの第４の実施形態における構成例を示す簡略なブロック図である。
【００９７】
本実施形態における計算機システムは、複数のホスト計算機１″（ホスト計算機１ａ″、１ｂ″、・・・、１ｎ″）、管理用ホスト計算機３、記憶装置サブシステム２′、副記憶装置５を有している。各ホスト計算機１″と記憶装置サブシステム２′は、ファイバチャネルスイッチ８を介して接続される。また、ホスト計算機１″、記憶装置サブシステム２′、ファイバチャネルスイッチ８は、ネットワーク４を介して相互に接続されている。
【００９８】
ファイバチャネルスイッチ８は、複数のポート８１を備えており、これらのポート間の接続を切り替え、ポート８１に接続された機器間でのデータ転送を実現する。ファイバチャネルスイッチ８は、また、ネットワーク４を介して通信を行うためのネットワークインタフェース８２を備える。ホスト計算機１″は、それぞれ、ボリュームマネージャ１１″、１または複数のインタフェース１２を備えている。ホスト計算機１″のインタフェース１２は、ファイバチャネル８が有する複数のポート８１のいずれかと接続される。
【００９９】
記憶装置サブシステム２′は、複数のクラスタ２６とクラスタ２６を相互に接続するコントローラ間接続機構２７を有する。各クラスタ２６は、チャネルプロセッサ２３′、ドライブプロセッサ２２′、複数のディスクユニット２１を備える。同じクラスタ内のチャネルプロセッサ２３′とドライブプロセッサ２２′とは、コントローラ間接続機構２７よりも高速なバス２８で結合されている。各チャネルプロセッサ２３′は、１、または複数のポート２３１を備えており、副記憶装置５、あるいは、ファイバチャネル８を介してホスト計算機１″と接続される。ドライブプロセッサ２２′には複数のディスクユニット２１が接続されている。本実施形態では、これら複数のディスクユニット２１を組み合わせて１または複数の論理デバイスが構成され、あるいは、１つのディスクユニット２１により１または複数の論理デバイスが構成される。なお、ある１つの論理デバイスを構成するにあたって複数のクラスタ２６が備えるディスクユニット２１を組み合わせることはできないものとする。
【０１００】
チャネルプロセッサ２３′は、各ホスト計算機１″に対し、１または複数の論理デバイスを見せ、各ホスト１″からのアクセスを受け付ける。原則として、チャネルプロセッサ２３′は、そのチャネルプロセッサ２３′が属するクラスタ２６内のドライブプロセッサ２２′に接続されたディスクユニット２１により構成される論理デバイスを管理対象とする。これは同一クラスタ２６内のチャネルプロセッサ２３′とドライブプロセッサ２２′の通信は、クラスタをまたがった通信よりも高速に行うことができることによる。ただし、障害などの要因により、あるクラスタ２６のチャネルプロセッサ２３′が動作しない場合には、他クラスタ２６のチャネルプロセッサ２３′がその処理を肩代わりする。チャネルプロセッサ２３′はホスト計算機１″から指定された論理デバイスがどのドライブプロセッサ２２′に接続されたディスクユニット２１に構成されているか判別し、然るべきドライブプロセッサ２２′に処理の要求を渡す。ドライブプロセッサ２２′は、チャネルプロセッサ２３′からの要求を解釈して、論理デバイスの置かれている各ディスクユニット２１に対するディスクアクセス要求を生成して、該当するディスクユニット２１にそのディスクアクセス要求を送る。
【０１０１】
ホスト計算機１″は、第１の実施形態におけるホスト計算機１とほぼ同様の構成を有するが、その上で動作するボリュームマネージャ１１″の機能に若干の相違がある。ボリュームマネージャ１１″は、第１の実施形態においてボリュームマネージャ１１が行う論理デバイスの割り当て、返却の処理に加え、複数の論理デバイスをまとめて、別の論理デバイスとして上位のアプリケーションプログラムに見せる機能を持つ。以下、ボリュームマネージャ１１″が作る論理デバイスを、記憶装置サブシステム２′が管理する論理デバイスと区別するためＬＶＯＬと表記する。ボリュームマネージャ１１″は、複数の論理デバイスを見かけ上結合してより大きな１つのＬＶＯＬを形成し、あるいは、１つの論理デバイスを複数の領域に分割し、それらの領域をＬＶＯＬとしてホスト計算機１″上のアプリケーションプログラムに利用させることができる。また、すでに存在するＬＶＯＬに新たな論理デバイスを結合して、ＬＶＯＬの容量を拡張することもできる。
【０１０２】
図１９は、本実施形態においてボリュームを新規に割り当てる際にボリュームマネージ１１″により実施される処理の流れを示すフローチャートである。ここで説明する処理は、図４に示した第１の実施形態におけるデバイスの割り当て処理のステップ１００２がステップ１００２′に、ステップ１００６がステップ１００５′、ステップ１００６′に置き換えたものである。このほかのステップでは、図４の対応するステップと同様の処理が行われる。以下、ステップ１００２′、１００５′、及び１００６′で行われる処理について説明する。
【０１０３】
ステップ１００２′では、未使用のＷＷＮ、ＬＵＮの組をボリュームマネージャ１１″が管理しているＬＶＯＬ管理テーブルより検索する。ＬＶＯＬ管理テーブルの一例を図２０に示す。ＬＶＯＬ管理テーブルには、ＬＶＯＬ名１５１、デバイスファイル名１５２、サイズ１５３、そして各デバイスのＷＷＮ１５４、ＬＵＮ１５５の組からなる情報が登録される。ＬＶＯＬ名１５１は、ボリュームマネージャ１１″によりアプリケーションプログラムに提供されているＬＶＯＬを識別するために付与される識別子である。デバイスファイル名１５２は、ＬＶＯＬを構成する論理デバイスの名称である。ボリュームマネージャ１１″は、各ＬＶＯＬに属する論理デバイスをデバイスファイル名に基づいて管理している。サイズ１５３は、そのＬＶＯＬを構成する各論理デバイスの容量を示す。1つのＬＶＯＬが複数の論理デバイスで構成されることもあるため、１つのＬＶＯＬ名に複数のデバイスファイルが属することもある。
【０１０４】
ステップ１００５′でボリュームマネージャ１１″は、管理マネージャ３１によって割り当てられた論理デバイスを用いて新たにＬＶＯＬを作成し、その内容をＬＶＯＬ管理テーブルに登録する。ステップ１００６′では、割り当ての済んだＬＶＯＬ名がユーザに通知されて処理は終了する。
【０１０５】
図２１は、ユーザ、あるいは、アプリケーションプログラムの要求に応じてＬＶＯＬの容量を拡張する際のボリュームマネージャの処理を示すフローチャートである。
【０１０６】
ＬＶＯＬの容量を拡張する際には、新たに論理デバイスが用意され、その論理デバイスを拡張しようとするＬＶＯＬを構成している論理デバイスと組み合わされて新しいＬＶＯＬが構築される。このとき新たに用意される論理デバイスは、拡張しようとするＬＶＯＬを構築している論理デバイスと同じ種類の論理デバイスであることが普通である。本実施形態では、ボリュームマネージャ１１″が拡張しようとするＬＶＯＬを構成している論理デバイスの種類を判別し、同じ種類の論理デバイスを確保する。
【０１０７】
本処理において、ボリュームマネージャ１１″は、まず、ユーザあるいは、アプリケーションプログラムから拡張対象のＬＶＯＬのＬＶＯＬ名と拡張すべき容量についての情報を受け取る（ステップ２５０１）。次に、ボリュームマネージャ１１″は、拡張対象のＬＶＯＬを構成する論理デバイスの種類を管理マネージャ３１に問い合わせる（ステップ２５０２）。ボリュームマネージャ１１″は、未使用のWWN、ＬＵＮの組をＬＶＯＬ管理テーブルより検索する（ステップ２５０３）。ボリュームマネージャ１１″は、ステップ２５０２、２５０３で取得した論理デバイスの種類、及び未使用のＷＷＮとＬＵＮの組み合わせを含む情報を管理マネージャ３１に送信する。（ステップ２５０４）。管理マネージャ３１から新たに割り当てられた論理デバイスについての情報を受信すると（ステップ２５０５）、ボリュームマネージャ１１″は、ホスト計算機１″のリコンフィグを実施し、新たに割り当てられた論理デバイスをホスト計算機１″から認識できるようにする（ステップ２５０６）。最後に、ボリュームマネージャ１１″は、拡張対象のＬＶＯＬに新たに割り当てられた論理デバイスを追加してＬＶＯＬの容量を拡張し、処理を終了する（ステップ２５０７）。
【０１０８】
図１９のステップ１００３、及び図２１のステップ２５０４でボリュームマネージャ１１″から新しい論理ボリュームの割り当ての要求があると、管理マネージャ３１は、いずれの場合もボリュームマネージャ１１″から要求されたデバイスの種類、容量に見合ったデバイスを検索して割り当てる。この処理のために、管理マネージャ３１は、図９に示すような論理デバイス管理テーブルの他、記憶装置サブシステム２′内のクラスタ２６に関する情報が設定されたクラスタ情報テーブルを備える。
【０１０９】
図２２は、クラスタ情報管理テーブルの一例を示すテーブル構成図である。
【０１１０】
クラスタ情報管理テーブルは、各クラスタ２６に対応したエントリを有し、クラスタ２６ごとにそのクラスタを識別するクラスタ番号１６１、クラスタが有するポートのポート番号１６２、及びポートに割り当てられているＷＷＮ１６３が設定されている。図に示すように、１つのクラスタ２６に複数のポートが存在する場合、それぞれのポート番号とＷＷＮがそのクラスタに対応したエントリに設定される。先に説明したように、あるドライブプロセッサ２２′に接続されたディスクユニット２１に論理デバイスを構築したときは、その論理デバイスに対しては同一のクラスタ内のポート２３１からアクセスできるようにすることが性能上の観点から望ましい。管理マネージャ３１は、クラスタ情報テーブルに基づいてホスト計算機１″からのアクセスに用いられるポート２３１と、新しく割り当てる論理デバイスが構築されるディスクユニット２１が接続するドライブプロセッサ２２′が同じクラスタとなるようにデバイスの設定を行う。
【０１１１】
図２３は、管理マネージャ３１によるデバイスの割り当て処理の流れを示すフローチャートである。
【０１１２】
本実施形態におけるデバイスの割り当て処理は、図１１に示した第２の実施形態における処理とほぼ同様に行われるが、記憶装置サブシステムの構成上の相違から一部の処理が第２の実施形態とは異なる。具体的には、ステップ１１０９において、管理マネージャ３１から記憶装置サブシステム２′に対して新規にデバイスの構築が要求されると、記憶装置サブシステム２′は、要求に合わせてデバイスを構築する。記憶装置サブシステム２′において論理デバイスが構築されると、管理マネージャ３１には、新しく構築された論理デバイスに関し、その論理デバイスがどのクラスタ２６に構築されたかを示す情報を受け取る（ステップ２６１０）。
【０１１３】
管理マネージャ３１は、記憶装置サブシステム２′から受け取った論理デバイスに関する情報と、クラスタ情報管理テーブルを参照して、どのポートから当該デバイスをアクセスできるようにするか決定する。管理マネージャ３１は、さらに、未使用ＬＵＮの情報によって、新たに割り当てるデバイスのＬＵＮを決定する（ステップ２６０４）。また、管理マネージャ３１は、最後に、ボリュームマネージャ１１″に対し、新しく割り当てる論理ボリュームのアクセスに必要なＷＷＮ、ＬＵＮなどの情報を送り、処理を終了する（ステップ２６０７）。
【０１１４】
ここで説明した以外の処理については、図１１に示した第２の実施形態における管理マネージャの処理と同様であり、図では、図１１と同一の参照番号を用い、詳細な説明は省略する。
【０１１５】
以上説明した実施の形態によれば、ホスト計算機が稼働中であっても、要求にあわせてデバイスの割り当てを行うことができる。さらにファイバチャネルスイッチで構成された、複数のデバイスが混在するような環境でも、要求に合ったデバイスを容易にホスト計算機に割り当てることが可能となる。
【０１１６】
なお、本発明は、上述した実施形態に限定されるものではなく、本発明の趣旨の範囲内において種々の態様をとり得るものであることは言うまでもない。
【図面の簡単な説明】
【０１１７】
【図１】本発明の第１の実施形態における計算機システムの構成例を示すブロック図である。
【図２】記憶装置サブシステムにより保持される論理デバイス管理テーブルの一例を示すテーブル構成図である。
【図３】管理マネージャにより保持されるホスト管理テーブルの一例を示すテーブル構成図である。
【図４】ホスト計算機のボリュームマネージャにより実施され処理の流れを示すフローチャートである。
【図５】管理マネージャにより実施される処理の流れを示すフローチャートである。
【図６】デバイスの返却処理におけるボリュームマネージャによる処理の流れを示すフローチャートである。
【図７】デバイスの返却処理における管理マネージャによる処理の流れを示すフローチャートである。
【図８】本発明の第２の実施形態における計算機システムの構成例を示すブロック図である。
【図９】管理マネージャにより保持される論理デバイス管理テーブルの一例を示すテーブル構成図である。
【図１０】管理マネージャにより保持されるホスト計算機とＷＷＮの対応関係を管理するためのテーブルの一例を示すテーブル構成図である。
【図１１】管理マネージャによる処理の流れを示すフローチャートである。
【図１２】ファイバチャネルスイッチのゾーニングの機能を示す説明図である。
【図１３】本発明の第３の実施形態における計算機システムの構成例を示すブロック図である。
【図１４】クライアントプログラムによる処理の流れを示すフローチャートである。
【図１５】ファイルサーバの管理マネージャによる処理の流れを示すフローチャートである。
【図１６】ファイルサーバのサーバプログラムによる処理の流れを示すフローチャートである。
【図１７】ファイルシステムを拡張する際に管理マネージャにより実施される処理の流れを示すフローチャートである。
【図１８】本発明の第４の実施形態における計算機システムの構成例を示すブロック図である。
【図１９】ボリュームマネージャによる処理の流れを示すフローチャートである。
【図２０】ＬＶＯＬ管理テーブルの一例を示すテーブル構成図である。
【図２１】ＬＶＯＬを拡張するときにボリュームマネージャにより実施される処理の流れを示すフローチャートである。
【図２２】クラスタ情報テーブルの一例を示すテーブル構成図である。
【図２３】ＬＶＯＬを拡張するときに管理マネージャにより実施される処理の流れを示すフローチャートである。
【符号の説明】
【０１１８】
１…ホスト計算機、
２…記憶装置サブシステム
３…管理用ホスト計算機
４…ネットワーク
５…副記憶装置
８…ファイバチャネルスイッチ
１１…ボリュームマネージャ
２１…ディスクユニット
２２…ディスクコントローラ
２３…ポート
３１…管理マネージャ
８１…ポート
【図１】
2004355638.tif 000003
【図２】
2004355638.tif 000004
【図３】
2004355638.tif 000005
【図４】
2004355638.tif 000006
【図５】
2004355638.tif 000007
【図６】
2004355638.tif 000008
【図７】
2004355638.tif 000009
【図８】
2004355638.tif 000010
【図９】
2004355638.tif 000011
【図１０】
2004355638.tif 000012
【図１１】
2004355638.tif 000013
【図１２】
2004355638.tif 000014
【図１３】
2004355638.tif 000015
【図１４】
2004355638.tif 000016
【図１５】
2004355638.tif 000017
【図１６】
2004355638.tif 000018
【図１７】
2004355638.tif 000019
【図１８】
2004355638.tif 000020
【図１９】
2004355638.tif 000021
【図２０】
2004355638.tif 000022
【図２１】
2004355638.tif 000023
【図２２】
2004355638.tif 000024
【図２３】
2004355638.tif 000025