(57)【要約】【課題】設置済のネットワークストレージが仮想一元化機能を持たない場合でも、新しいネットワークストレージを増設して、簡単に設置済ネットワークストレージの容量を拡張できる仮想一元化方法を提供する。【解決手段】新ネットワークストレージ上の仮想一元化装置に、管理者からの増設要求に従い、設置済ネットワークストレージの設定情報を読み出す手段と、設置済ネットワークストレージを仮想一元化装置のメンバに登録する手段と、設置済ネットワークストレージのディレクトリツリー構造を複写する手段と、設置済ネットワークストレージと新ネットワークストレージの設定情報を置き換える手段を設ける。【効果】容量を拡張したい設置済ネットワークストレージが仮想一元化機能を持たない状況でも、設置済ネットワークストレージのディレクトリツリー構造を継承して一元管理することができる。このとき設置済ネットワークストレージに特別な情報を設定する必要がない。また、クライアント計算機におけるネットワークストレージの共有設定を変更することなく一元管理することができる。【選択図】図１
2004046661.tif 000002
【特許請求の範囲】
【請求項１】
ネットワーク上に分散した新旧少なくとも２つのネットワークストレージを該ネットワークに接続したクライアントに対して単一のネットワークストレージに見せるために仮想一元化ファイルシステムを構築する仮想一元化方法であって、前記旧ネットワークストレージの名前情報を含む基本設定情報を読み出すステップと、
前記旧ネットワークストレージを該仮想一元化ファイルシステムのメンバとして登録するステップと、
メンバ情報と前記旧ネットワークストレージの基本設定情報を利用し、前記旧ネットワークストレージのファイルディレクトリ構造を前記仮想一元化ファイルシステムに複写するステップからなり、
前記仮想一元化ファイルシステムが前記旧ネットワークストレージのファイルディレクトリ構造を継承することを特徴とする複数ネットワークストレージの仮想一元化方法。
【請求項２】
前記取得する基本設定情報は、前記旧ネットワークストレージのＩＰアドレスとマウントポイントを含むことを特徴とする請求項１記載の複数ネットワークストレージの仮想一元化方法。
【請求項３】
請求項１記載の複数ネットワークストレージの仮想一元化方法において、
更に、前記新ネットワークストレージを該仮想一元化ファイルシステムのメンバに登録するステップと、
前記旧ネットワークストレージの基本設定情報と前記新ネットワークストレージの基本設定情報を交換するステップを含み、
前記新ネットワークストレージが前記旧ネットワークストレージになりかわることを特徴とする複数ネットワークストレージの仮想一元化方法。
【請求項４】
請求項３記載の複数ネットワークストレージの仮想一元化方法において、更に前記旧ネットワークストレージに存在するファイルを前記新ネットワークストレージに移動するステップを有することを特徴とする複数ネットワークストレージの仮想一元化方法。
【請求項５】
請求項４記載の複数ネットワークストレージの仮想一元化方法において、
更に、ファイルとファイルを保持するネットワークストレージを対応付けるステップと、
前記クライアントからのファイルアクセス要求を受け付け処理するステップを含み、
前記クライアントが該ファイルアクセス要求を発行すると、前記対応付けに従い前記ファイルを保持するネットワークストレージを特定し、特定したネットワークストレージに対して該ファイルアクセス要求を発行することを特徴とする複数ネットワークストレージの仮想一元化方法。
【請求項６】
前記旧ネットワークストレージのファイルを該新ネットワークストレージに移動するステップは、前記クライアントからのファイルアクセス要求を停止しないことを特徴とする請求項４記載の複数ネットワークストレージの仮想一元化方法。
【請求項７】
請求項４記載の複数ネットワークストレージの仮想一元化方法において、
更にファイルとファイルの属するファイルグループを対応付けるステップと、
ファイルグループとファイルグループの属するネットワークストレージを対応付けるステップと、
前記クライアントからのファイルアクセス要求を処理するステップを含み、
該クライアントがファイルアクセス要求を前記仮想一元化ファイルシステムに発行すると、前記対応付けに従いファイルの属するファイルグループと、該ファイルグループの属するネットワークストレージを特定し、特定した該ファイルを保持するネットワークストレージに対してファイルアクセス要求を発行することを特徴とする複数ネットワークストレージの仮想一元化方法。
【請求項８】
前記ファイルの属するファイルグループは、該ファイルの識別情報により決定することを特徴とする請求項７記載の複数ネットワークストレージの仮想一元化方法。
【請求項９】
ネットワーク上に分散した新旧少なくとも２つのネットワークストレージを該ネットワークに接続するクライアントに対して単一のネットワークストレージに見せるために仮想一元化ファイルシステムを構築する仮想一元化装置であって、前記仮想一元化ファイルシステムのメンバ情報を保持するホストテーブルと、
前記旧ネットワークストレージの名前情報を含む基本設定情報を読み出す手段と、
前記旧ネットワークストレージを該ホストテーブルに登録する手段と、
前記ホストテーブルと該基本設定情報を利用して該旧ネットワークストレージのファイルディレクトリ構造を該仮想一元化装置に複写する手段を有し、
前記仮想一元化ファイルシステムが該旧ネットワークストレージのファイルディレクトリ構造を継承することを特徴とする複数ネットワークストレージの仮想一元化装置。
【請求項１０】
請求項９記載の複数ネットワークストレージの仮想一元化装置において、
更に、前記新ネットワークストレージを該ホストテーブルに登録する手段と
前記旧ネットワークストレージの該基本設定情報と該新ネットワークストレージの該基本設設定情報とを置き換える手段を有し、
前記新ネットワークストレージが該旧ネットワークストレージになりかわることを特徴とする複数ネットワークストレージの仮想一元化装置。
【請求項１１】
前記第１０項記載の複数ネットワークストレージの仮想一元化装置において、更に、前記旧ネットワークストレージから該新ネットワークストレージにファイルを移行する手段を有することを特徴とする複数ネットワークストレージの仮想一元化装置。
【請求項１２】
前記第１１項記載の複数ネットワークストレージの仮想一元化装置において、更に、前記クライアントからのファイルアクセス要求を処理する要求処理手段と、
該要求処理手段により新しくファイルを生成する場合に、ファイルを配置するネットワークストレージを決定するマッピング手段を有し、
前記クライアントから前記ファイルのアクセス要求が発行された場合には、前記マッピング手段により決定したネットワークストレージに対して前記ファイルのアクセス要求を発行することを特徴とする複数ネットワークストレージの仮想一元化装置。
【請求項１３】
前記ホストテーブルに格納するメンバ情報は、前記ネットワークストレージの名前情報と、マウントポイントと、前記仮想一元化ファイルシステム間で一意なネットワークストレージの識別子であることを特徴とする請求項９記載の複数ネットワークストレージの仮想一元化装置。
【請求項１４】
前記仮想一元化装置は新ネットワークストレージに搭載することを特徴とする請求項９記載の複数ネットワークストレージの仮想一元化装置。
【請求項１５】
請求項１１記載の複数ネットワークストレージの仮想一元化装置において、
更に、前記クライアントからのファイルアクセス要求を処理する要求処理手段と、
該要求処理手段により新しくファイルを生成する場合に、ファイルを配置するネットワークストレージを決定するマッピング手段を有し、
該マッピング手段は、
ファイルを識別する情報により該ファイルの属するファイルグループを決定する手段と、
該ファイルの属する該ファイルグループにより該ファイルグループの属する該ネットワークストレージを決定する手段を有し、
前記クライアントからファイルのアクセス要求が発行された場合には、前記マッピング手段により決定したネットワークストレージに対して該ファイルのアクセス要求を発行することを特徴とする複数ネットワークストレージの仮想一元化装置。
【請求項１６】
ネットワーク上に分散した新旧少なくとも２つのネットワークストレージを該ネットワークに接続するクライアントに対して仮想一元化ファイルシステムに見せる複数ネットワークストレージの仮想一元化装置であって、
該新ネットワークストレージは、
該クライアントが該ネットワーク経由であるいは直接装置に入力した名前情報とネットワークを含む基本設定情報に従い、該ネットワークに接続した後、
該クライアントに対して該新ネットワークストレージの使用目的を指定させるための管理メニュー画面を表示するインタフェースと、
該クライアントが該管理メニュー画面から、容量拡張あるいはリプレースコマンドと、該容量拡張あるいはリプレース対象の該旧ネットワークストレージの名前情報を入力するのに応答して、
該旧ネットワークストレージにアクセスし、動的に仮想一元化ファイルシステムを構築し、構築後に完了画面を表示するインタフェースを有することを特徴とする複数ネットワークストレージの仮想一元化装置。
【請求項１７】
ネットワーク上に分散した新旧少なくとも２つのネットワークストレージを該ネットワークに接続するクライアントに対して単一のネットワークストレージに見せるために仮想一元化ファイルシステムを構築する仮想化一元化方法であって、
前記クライアントが前記ネットワーク経由で該新ネットワークストレージに対して、ＩＰアドレスおよび名前情報を含む該新ネットワークストレージの基本設定情報を設定するステップと、
前記クライアントが前記ネットワーク経由で前記新ネットワークストレージに対して、容量拡張あるいはリプレースのためのコマンドと、該容量拡張対象あるいはリプレース対象の該旧ネットワークストレージの名前情報を設定するステップと、
前記新ネットワークストレージが、前記クライアントが設定したコマンドと前記旧ネットワークストレージの名前情報を受け取ると、前記旧ネットワークストレージにアクセスして、前記旧ネットワークストレージのファイルディレクトリ構造を継承して動的に該仮想一元化ファイルシステムを構築するステップを含むことを特徴とする複数ネットワークストレージの仮想一元化方法。
【請求項１８】
前記クライアントは、前記容量拡張あるいはリプレースのためのコマンドと、該容量拡張対象あるいはリプレース対象の該旧ネットワークストレージの名前情報を設定するステップにて、前記旧ネットワークストレージが仮想一元化されているかどうかを識別する情報をも設定することを特徴とする請求項１７記載の複数ネットワークストレージの仮想一元化方法。
【請求項１９】
仮想一元化装置を有する新ネットワークストレージをネットワークに接続して、該ネットワーク上に接続される旧ネットワークストレージの容量を拡張するための増設処理方法であって、
増設先となる前記旧ネットワークストレージの設定情報を読み出すステップと、増設先となる前記旧ネットワークストレージを該仮想一元化装置のメンバとして登録するステップと、
増設先となる前記旧ネットワークストレージのファイルディレクトリ構造を該新ネットワークストレージに複写するステップと、
増設した該新ネットワークストレージを該仮想一元化装置のメンバとして登録するステップと、
前記旧ネットワークストレージと前記新ネットワークストレージ間で該設定情報を置き換えるステップを含み、
前記新ネットワークストレージをネットワークに接続して、前記旧ネットワークストレージの容量を拡張することを特徴とする増設処理方法。
【請求項２０】
仮想一元化装置を有する新ネットワークストレージと旧ネットワークストレージを置き換えるためのリプレース処理方法であって、
リプレース先となる前記旧ネットワークストレージの設定情報を読み出すステップと、
前記旧ネットワークストレージを該仮想一元化装置の一員として登録するステップと、
前記旧ネットワークストレージのファイルディレクトリ構造を該新ネットワークストレージに複写するステップと、
前記新ネットワークストレージを該仮想一元化装置の一員として登録するステップと、
前記旧ネットワークストレージと前記新ネットワークストレージ間で該設定情報を置き換えるステップと、
前記旧ネットワークストレージの保持する全ファイルを前記新ネットワークストレージに移行するステップと、
移行終了後、前記旧ネットワークストレージを該仮想一元化装置のメンバから削除するステップを含み、
前記新ネットワークストレージをネットワークに接続して、前記旧ネットワークストレージと入れ換えることを特徴とするリプレース処理方法。
【請求項２１】
前記リプレース先となる旧ネットワークストレージの保持する全ファイルを該新ネットワークストレージに移行するステップは、前記クライアントからのファイルアクセス要求を停止することなく行なうことを特徴とする請求項２０記載のリプレース処理方法。
【請求項２２】
ネットワーク上に分散した新旧少なくとも２つのネットワークストレージを該ネットワークに接続したクライアントに対して単一のネットワークストレージに見せるために仮想一元化ファイルシステムを構築する仮想一元化方法であって、前記クライアントが新ネットワークストレージに対して、ＩＰアドレスと名前情報を含む該新ネットワークストレージの基本設定情報を設定し、
さらに前記クライアントが該新ネットワークストレージに対して、容量拡張あるいはリプレースといった該新ネットワークストレージの用途指定コマンドと、該容量拡張対象あるいは該リプレース対象の旧ネットワークストレージの名前情報を設定すると、前記新ネットワークストレージは、該用途指定コマンドと該旧ネットワークストレージの名前情報を利用して、該旧ネットワークストレージのＩＰアドレスと名前情報を含む基本設定情報を読み出し、
前記旧ネットワークストレージを前記仮想一元化ファイルシステムのメンバに登録し、
前記基本設定情報に従って、前記旧ネットワークストレージのファイルディレクトリ構造を該新ネットワークストレージに複写し、
前記読み出し手段により読み出した旧ネットワークストレージの該基本設定情報と前記新ネットワークストレージの基本設定情報を交換することにより、前記旧ネットワークストレージのファイルディレクトリ構造を継承して前記仮想一元化ファイルシステムを構築することを特徴とする複数ネットワークストレージの仮想一元化方法。
【請求項２３】
ネットワーク上に分散した新旧少なくとも２つのネットワークストレージを該ネットワークに接続したクライアントに対して単一のネットワークストレージに見せるために仮想一元化ファイルシステムを構築する仮想一元化方法であって、前記旧ネットワークストレージが仮想一元化されているかどうかを識別するステップを含み、
該識別するステップは、
前記旧ネットワークストレージが仮想一元化されていない場合には、前記新ネットワークストレージの仮想一元化装置が動的に該仮想一元化ファイルシステムを構築するステップと、
前記旧ネットワークストレージが仮想一元化装置を有するが使用していない場合に、前記新ネットワークストレージが前記旧ネットワークストレージの仮想一元化装置を起動して呼び出し、前記旧ネットワークストレージの仮想一元化装置が動的に仮想一元化ファイルシステムを構築するステップと、
前記旧ネットワークストレージが仮想一元化されている場合には、前記新ネットワークストレージが前記旧ネットワークストレージの仮想一元化装置を呼び出し、前記旧ネットワークストレージの仮想一元化装置が、動的に仮想一元化ファイルシステムを構築するステップのいずれかを行なうことを特徴とする複数ネットワークストレージの仮想一元化方法。
【請求項２４】
請求項２３記載の複数ネットワークストレージの仮想一元化方法において、
前記旧ネットワークストレージが仮想一元化機能を有するが使用していない場合に、前記新ネットワークストレージが前記旧ネットワークストレージの仮想一元化装置を起動して呼び出し、
前記旧ネットワークストレージの仮想一元化装置が動的に仮想一元化ファイルシステムを構築するステップは、
前記旧ネットワークストレージが、該旧ネットワークストレージを該旧ネットワークストレージの仮想一元化装置のメンバとして登録するステップと、
前記旧ネットワークストレージが該旧ネットワークストレージのファイルディレクトリ構造を該旧ネットワークストレージの仮想一元化装置に複写するステップと、該新ネットワークストレージを該旧ネットワークストレージの仮想一元化装置のメンバとして登録するステップを含むことを特徴とする請求項２３記載の複数ネットワークストレージの仮想一元化方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、複数ネットワークストレージの仮想化方法に関連し、特に複数のファイルシステムをクライアント計算機に対して仮想的に単一のファイルシステムに見せるための方法および装置に関する。
【０００２】
【従来の技術】
従来、データはクライアント計算機に直接接続したストレージ（ＤＡＳ：Ｄｉｒｅｃｔ　Ａｔｔａｃｈｅｄ　Ｓｔｏｒａｇｅ）に格納されていた。ＤＡＳ上のデータは直接接続しているクライアント計算機を介してのみアクセス可能であるため、クライアント計算機が他のクライアント計算機に接続したＤＡＳのデータをアクセスする場合には、ＤＡＳが接続している計算機を経由してデータをアクセスする必要があった。
【０００３】
しかしながら、近年のネットワーク技術の発展により個々のクライアント計算機に格納すべきデータ量が飛躍的に増大している。それに伴い、これらのデータを効率良く管理したいというニーズも増大し、ＤＡＳに代わりネットワークに接続したストレージシステム（ネットワークストレージ）が導入されるようになってきた。ネットワークストレージを導入することにより、複数のクライアント計算機間でデータを共有できるため、管理者は共有データを効率良く管理することができる。
【０００４】
ネットワークストレージの例としては、ＳＡＮ（Ｓｔｏｒａｇｅ　Ａｒｅａ　Ｎｅｔｗｏｒｋ）で接続されてブロックアクセスを提供するＳＡＮストレージ、ＩＰネットワークやＩｎｆｉｎｉｂａｎｄ等で接続されてファイルアクセスを提供するＮＡＳ（Ｎｅｔｗｏｒｋ　Ａｔｔａｃｈｅｄ　Ｓｔｏｒａｇｅ）がある。その中でもＮＡＳは、ＳＡＮストレージに比べて安価であり、かつＮＦＳ（Ｎｅｔｗｏｒｋ　Ｆｉｌｅ　Ｓｙｓｔｅｍ）やＣＩＦＳ（Ｃｏｍｍｏｎ　Ｉｎｔｅｒｎｅｔ　Ｆｉｌｅ　Ｓｙｓｔｅｍ）のような複数の標準的なファイルアクセスプロトコルを用いて複数のクライアント計算機が簡単にファイルを共有することができるため、その市場は拡大している。
【０００５】
このように、ネットワークストレージは、管理者が効率的に複数クライアント計算機の共有データを一括して管理できるため、世の中に広く受け入れられている。ところが、ネットワーク技術の発展によって、複数のクライアント計算機が扱う共有データ量がさらに増大し、１台のネットワークストレージには格納できなくなりつつある。格納すべきデータ量が１台のネットワークストレージの容量を超えてしまう場合には、管理者は新しいネットワークストレージを用意して、以下の作業を行なわなければならない。
【０００６】
まず、新しいネットワークストレージをネットワークに接続してＩＰアドレスや名前をつけるといった基本的な設定を行なう。次に、複数のクライアント計算機が複数ネットワークストレージ中のどれを共有するかという共有設定を再度行なう必要がある。例えば、２つのクライアント計算機が１台のネットワークストレージを共有していた場合を想定する。新しいネットワークストレージを追加した場合、管理者は、第一のクライアント計算機が設置済ネットワークストレージを共有し、第二のクライアント計算機が新ネットワークストレージを共有するように設定を変更する。このように複数クライアント計算機における共有設定を変更した場合には、管理者が設置済ネットワークストレージ上にある第２のクライアント計算機のデータを、新しく共有する新ネットワークストレージに明示的に移動しなければならない。これらの管理コストは管理すべきネットワークストレージの数が多いほど膨張する。
【０００７】
管理コストを抑える方法としては、複数のネットワークストレージをクライアント計算機からは仮想的に単一のストレージシステムに見せ、新たなネットワークストレージを追加してもシステム全体に影響が及ばないようにするネットワークストレージの仮想化技術が開示されている。
【０００８】
例えば、特開平２００２−９９５１９では、既存のファイルサーバの容量が不足してサーバの容量を増加したい場合において、既存のファイルサーバにディスク増設を行うための専門知識や拡張用の機器類、およびその作業を一切不要として、ネットワークに接続した複数のファイルサーバシステムをクライアントからは単一の動的仮想ファイルサーバに見せるための動的ファイルサーバシステムを構築する方法が記載されている。サーバ計算機が、動的仮想ファイルサーバに加入する旨の宣言情報を前記ネットワーク上に送出すると、動的仮想ファイルサーバの各メンバは、宣言情報を受け取り内容を解釈して、各メンバが保持する動的仮想ファイルサーバの管理情報を更新する。このように宣言情報を送出したサーバ計算機を動的仮想サーバのメンバに加えることで、動的仮想ファイルサーバを運用しつつ、その容量を拡張できる。（第１の公知例）
特開平２００１−５１８９０では、ネットワーク上に分散した複数のファイルサーバの台数やストレージ装置の接続状態を意識させないための仮想分散ファイルサーバシステムについて記載されている。仮想分散ファイルサーバシステムは、マルチキャスト可能なネットワークに接続された複数のファイルサーバに分散して実装される。各ファイルサーバは、仮想分散ファイルサーバシステムとそのファイルを実際に管理するローカルファイルシステムとの間のマッピング情報を保持するマッピングテーブルを持つ。さらに、各ファイルサーバは、クライアントからマルチキャストされたファイルアクセス要求を受け取り、マッピングテーブルを参照して、自分がその要求を処理するのに最適なファイルサーバであると認識した場合にのみ、サーバ内のローカルファイルシステムにアクセスして、ファイルアクセス操作を行う。クライアントは、仮想分散ファイルサーバを介して、ネットワーク上に分散した複数ファイルサーバにアクセスするため、複数のファイルサーバの存在を意識せずにシステムを拡張できる。（第２の公知例）
特開平５−２４１９３４には、複数ファイルシステムの実際の配置状態に関係なく仮想的に単一のファイルシステムとして見せる機能を持つ仮想ファイルシステムが記載されている。仮想ファイルシステムは、複数サーバのうちの一つに存在し、クライアントからのファイルアクセス要求を全て受け付け、複数ファイルシステムを１つの木構造で管理する手段を持つ。クライアントは仮想ファイルシステムの存在するサーバに対してファイルアクセス要求を発行する。仮想ファイルシステムは、クライアントからのファイルアクセス要求に対して、要求されたファイルが存在するサーバのファイルシステムを調査し、ファイルが存在するサーバに対してアクセス要求を発行し、データをクライアントに送り返す。クライアントと仮想ファイルシステムの各メンバは、仮想ファイルシステムの情報のみを知っていればよいので、サーバ増設によるシステム変更を容易に実現できる。（第３の公知例）
【０００９】
【発明が解決しようとする課題】
ところが、上記第１、第２および第３の公知例で記載されているネットワークストレージの仮想化技術では、新しいネットワークストレージを増設する場合に、設置済ネットワークストレージがすでに仮想一元化ファイルシステムにより一元管理されていることが前提である。また、仮想一元化ファイルシステムに属する全てのメンバが、仮想一元化に関する情報を持つ必要がある。例えば、第１の公知例では、仮想一元化ファイルシステムに属する全てのメンバが、仮想一元化ファイルシステムを構成するメンバ情報をもつ必要がある。また第２の公知例では、仮想一元化ファイルシステムに属する全てのメンバが、仮想一元化ファイルシステムとローカルファイルシステムのマッピング情報を持つ必要がある。第３の公知例では、全メンバが仮想一元化ファイルシステムの存在するサーバ情報を持つ必要がある。
【００１０】
一般に、管理者がネットワークストレージを導入する場合、その容量が足りなくなることを想定していない。まず、ネットワークストレージを１台購入しオフィス等で運用する。そして、容量が足りなくなった場合に、新しいネットワークストレージを買い足す。１台のネットワークストレージのみで運用されている状態では、そのネットワークストレージを仮想一元化する必要性がないため、仮想一元化機能はない。容量不足により、新しいネットワークストレージを購入してはじめて、管理者は管理コストを削減するために、一元管理しようとする。ところが、設置済のネットワークストレージは仮想一元化機能を持たないため、公知の方法では管理者が設置済ネットワークストレージのディレクトリツリー構造を保って仮想一元化することはできない。
【００１１】
この問題点を解決するために、設置済ネットワークストレージが仮想一元化機能を使用せずに運用している状況で、新しいネットワークストレージを増設した場合でも、設置済ネットワークストレージのディレクトリツリー構造を継承しつつ、仮想一元化する必要がある。
【００１２】
また、ネットワークストレージはほとんどの場合、アプライアンス装置として提供される。アプライアンス装置は、管理者の管理コストを低減するため、管理者が設定可能な情報が限定されている。そのため、仮想一元化されずに運用していた設置済ネットワークストレージを一元管理しようとしても、先に述べたような仮想一元化するための特別な情報を設定することができず、結果として一元管理することはできない。
【００１３】
この問題点を解決するために、設置済ネットワークストレージと新しいネットワークストレージとを仮想一元化する場合に、設置済ネットワークストレージには特別な情報を設定することなく仮想一元化する必要がある。
【００１４】
さらに、複数のクライアント計算機が設置済ネットワークストレージを共有する状況において、仮に新しいネットワークストレージを増設して設置済ネットワークストレージを仮想一元化できたとしても、クライアント計算機における共有設定を新しいネットワークストレージへと変更しなければならない。共有設定の変更するには、クライアント計算機の運用を一旦停止する必要があり、管理コストが増大する。
【００１５】
この問題点を解決するために、クライアント計算機におけるネットワークストレージの共有設定を変更することなく、すなわち、クライアント計算機は設置済ネットワークストレージを共有するように設定したままで、設置済ネットワークストレージと新ネットワークストレージを仮想一元化する必要がある。
【００１６】
本発明の第１の課題は、管理者が設置済ネットワークストレージの容量が足りなくなって新しいネットワークストレージを増設する場合に、設置済ネットワークストレージに仮想一元化機能がなくても簡単に設置済ネットワークストレージのディレクトリ構造、ファイル構造を継承して、その容量を拡張することができる仮想一元化方法を提供することにある。
【００１７】
本発明の第２の課題は、設置済ネットワークストレージと新しいネットワークストレージを仮想一元化する場合に、設置済ネットワークストレージには特別な情報を設定せずに簡単に一元管理することができる仮想一元化方法を提供することにある。
【００１８】
本発明の第３の課題は、クライアント計算機における設置済ネットワークストレージの共有設定を変更することなく、設置済ネットワークストレージと新ネットワークストレージを一元管理することができる仮想一元化方法を提供することにある。
【００１９】
【課題を解決するための手段】
本発明の第１の課題は、新ネットワークストレージ上の仮想一元化装置に、設置済ネットワークストレージのファイルシステムと新ネットワークストレージのファイルシステムを１つのディレクトリツリー構造で管理する一元管理ディレクトリと、仮想一元化装置を構成するメンバ情報を保持するテーブルと、管理者からの構成変更要求を受け付け仮想一元化装置全体を管理する管理手段と、仮想一元化されていない設置済ネットワークストレージの設定情報を読み出す設定情報読み出し手段と、設置済ネットワークストレージを仮想一元化装置のメンバに登録するメンバ登録手段と、読み出した設定情報を利用して設置済ネットワークストレージに搭載したファイルシステム上のディレクトリツリー構造を一元管理ディレクトリに複写する手段を設けることで解決できる。
【００２０】
本発明の第２の課題は、第１の課題を解決する手段に加えて、新ネットワークストレージ上の仮想一元化装置に、ファイルを格納するネットワークストレージを決定するマッピング手段と、クライアント計算機からのファイルアクセス要求を受け付け、マッピング手段により決定したネットワークストレージに対して標準ファイルアクセスプロトコルを用いてアクセスする要求処理手段を設けることで解決できる。
【００２１】
本発明の第３の課題は、第１および第２の課題を解決する手段に加えて、設置済ネットワークストレージの設定情報と新ネットワークストレージの設定情報を置き換える設定情報置き換え手段を設けることで解決できる。
【００２２】
仮想一元化されていない設置済ネットワークストレージの容量が足りなくなり、新しいネットワークストレージを増設した場合にも、新しいネットワークストレージの仮想一元化装置が、設置済ネットワークストレージの設定情報を読み出して、設置済ネットワークストレージを仮想一元化装置の構成メンバに登録し、設置済ネットワークストレージに搭載したファイルシステム上のディレクトリツリー構造を新ネットワークストレージの仮想一元化装置に複写することで、設置済ネットワークストレージのディレクトリツリー構造とファイル構造を継承して仮想一元化されていない設置済ネットワークストレージと新しいネットワークストレージを仮想一元化することができる。
【００２３】
また、クライアント計算機からファイルアクセス要求が発行されると、仮想一元化装置がそのファイルアクセス要求を受け付け、マッピング手段を利用して、アクセス対象ファイルの存在するネットワークストレージを特定し、特定したネットワークストレージに対して標準ファイルアクセスプロトコルによりファイルアクセス要求を発行することで、設置済ネットワークストレージに特別な情報を設定することなく、仮想一元化されていない設置済ネットワークストレージと新ネットワークストレージを仮想一元化することができる。
【００２４】
さらに、新ネットワークストレージ上の仮想一元化装置が、設置済ネットワークストレージの設定情報と、新ネットワークストレージの設定情報の入れ替えを行ない、新ネットワークストレージが設置済ネットワークストレージに成り代わることで、クライアント計算機におけるネットワークストレージの共有設定を変更することなく、設置済ネットワークストレージと新ネットワークストレージを仮想一元化することができる。
【００２５】
【発明の実施の形態】
＜代表的な発明の実施の形態＞
図１に本発明の実施例であるネットワークストレージシステムを示す。ネットワークストレージシステムは、クライアント１００〜１０１、ネットワーク１０２、設置済ネットワークストレージ１０３、新ネットワークストレージ１０４で構成する。以下の説明では、当初、クライアント１００〜１０１が設置済ネットワークストレージ１０３のみを使用してファイル共有を行なっており、新ネットワークストレージ１０４を増設して、設置済ネットワークストレージ１０３の容量を拡張する場合について詳細に説明する。また、本実施例では、増設処理と同等の処理を行なうことで、設置済ネットワークストレージ１０３を新しいネットワークストレージ１０４に置き換える（リプレースする）ことも可能であるため、このリプレース処理についても詳細に説明する。
【００２６】
新ネットワークストレージ１０４をネットワークに接続していない状況では、クライアント１００〜１０１は、設置済ネットワークストレージ１０３に対してのみファイルアクセス要求を発行する。
【００２７】
クライアント１００〜１０１は、ＮＦＳ（Ｎｅｔｗｏｒｋ　Ｆｉｌｅ　Ｓｙｓｔｅｍ）クライアントプログラムあるいは、ＣＩＦＳ（Ｃｏｍｍｏｎ　Ｉｎｔｅｒｎｅｔ　Ｆｉｌｅ　Ｓｙｓｔｅｍ）を介して、ネットワーク１０２経由で、設置済ネットワークストレージ１０３あるいは新ネットワークストレージ１０４にアクセスする。ここで、クライアントとしてＮＦＳとＣＩＦＳのみを例にとったが、これ以外の標準的なファイルアクセスプロトコルを利用してもよい。その他のファイルアクセスプロトコルとしては、ＡＦＰ（Ａｐｐｌｅ　Ｆｉｌｅ　Ｐｒｏｔｏｃｏｌ）やＮＣＰ（Ｎｅｔｗａｒｅ　Ｃｏｒｅ　Ｐｒｏｔｏｃｏｌｓ）等がある。
設置済ネットワークストレージ１０３は、ネットワークインタフェース１１０、リモート制御手段１１１、ストレージ装置１１２、管理手段１１３で構成する。設置済ネットワークストレージ１０３は、専用装置であってもよいし、ストレージ装置を有する汎用サーバ、ワークステーション、あるいはＰＣにリモート制御手段を搭載してもよい。
【００２８】
ネットワークインタフェース１１０は、ネットワーク１０２を介してクライアント１００〜１０１と設置済ネットワークストレージ１０３が通信するためのインタフェースである。
【００２９】
リモート制御手段１１１は、ネットワーク１０２上に接続したクライアント１００〜１０１からのマウント要求およびファイルの生成要求、読み出し要求、書きこみ要求、あるいはディレクトリの生成、ディレクトリの削除等を行なう。マウントとは、ネットワークを介してアクセスするネットワークストレージのファイルシステムをクライアント計算機のファイルシステムの一部分にする処理である。マウント処理により、クライアントはネットワーク上に分散するストレージ装置をあたかもクライアントのローカルファイルシステムのようにアクセスできる。リモート制御手段１１１は、ＮＦＳあるいはＣＩＦＳ等の標準的なファイルアクセスプロトコルを使用して、クライアント１００〜１０１と通信を行なう。例えば、ＮＦＳプロトコルを使用する場合には、公知のｍｏｕｎｔｄとｎｆｓｄを使用する。
【００３０】
クライアント１００〜１０１は、ストレージ装置に対してファイルハンドルを利用してファイルアクセス要求を発行する。ファイルハンドルはファイルオブジェクトの識別子であり、全ファイルに対して一意であることが保証されている。ファイルオブジェクトとはファイルあるいはディレクトリのいずれかである。図２にファイルハンドルの構成を示す。ファイルハンドル２００は、親ディレクトリのｉノード番号フィールド２０１とファイルオブジェクトのｉノード番号フィールド２０２を含む。
【００３１】
ＮＦＳプロトコルで規定されたファイルやディレクトリに対するアクセス要求としては、ファイル名を与えてファイルハンドルを取得するＬＯＯＰＵＰ要求、ファイルを生成するＣＲＥＡＴＥ要求、ファイルを読み出すＲＥＡＤ要求、ファイルを書きこむＷＲＩＴＥ要求、ファイルの属性を設定するＳＥＴＡＴＴＲ要求、ファイルの属性を読み出すＧＥＴＡＴＴＲ要求、ファイルを削除するＲＥＭＯＶＥ要求、ファイル名を変更するＲＥＮＡＭＥ要求、ディレクトリを生成するＭＫＤＩＲ要求、ディレクトリを読み出すＲＥＡＤＤＩＲ要求、ディレクトリを削除するＲＭＤＩＲ要求がある。
【００３２】
リモート制御手段１１１は、マウント要求およびＬＯＯＰＵＰ要求処理の結果得られるファイルハンドルを引数として、クライアントからのファイルアクセス要求を受け付け、各要求を処理して結果をクライアントに返す。
【００３３】
ＣＩＦＳプロトコルを使用する場合には、公知のＳａｍｂａ等を使用すればよい。本実施例ではクライアントがＮＦＳプロトコルを利用して設置済ネットワークストレージ１０３にアクセスする。
【００３４】
ストレージ装置１１２にはファイルシステムを搭載する。図３は、ＵＮＩＸ系オペレーティングシステムにおけるファイルシステムの基本構造を示す。ＵＮＩＸ系のオペレーティングシステムとしては、サン・マイクロシステムズ社にＳｏｌａｒｉｓ、インターナショナル・ビジネス・マシーン社（Ｉｎｔｅｒｎａｔｉｏｎａｌ　Ｂｕｓｉｎｅｓｓ　Ｍａｃｈｉｎｅｓ　Ｃｏｒｐｏｒａｔｉｏｎ）社のＡＩＸ、ヒューレット・パッカード社（Ｈｅｗｌｅｔｔ−Ｐａｃｋａｒｄ　Ｃｏｍｐａｎｙ）のＨＰ―ＵＸ、Ｌｉｎｕｘ、及び、ＦｒｅｅＢＳＤ等がある。図３の／、ｄ１、ｄ２、ｄ３はディレクトリ、ｆ１、ｆ２、ｆ３はファイルを示す。／はルートディレクトリと呼ばれ、階層ディレクトリの始点である。
【００３５】
管理手段１１３は、設置済ネットワークストレージ１０３に関する基本的な設定情報を管理し、ファイルアクセス操作の場合はリモート制御手段１１１を呼び出して要求を処理する。基本的な設定情報はＩＰアドレス、名前情報、マウントポイント等である。名前情報には、ホスト名とＮｅｔＢＩＯＳ名の両方がある。その他の設定情報としては、時刻、アカウント等がある。管理手段１１３を介したファイルアクセス操作としては、新しく共有ディレクトリを作成したり、ディレクトリのアクセス権限の変更する処理がある。
【００３６】
管理者は、クライアント１００〜１０１上の汎用Ｗｅｂブラウザをユーザインタフェースとして管理手段１１３にアクセスする。あるいは、クライアント上に専用のユーザインタフェースプログラムを搭載してそれを用いてもよい。あるいは、設置済ネットワークストレージ１０３にコンソールを接続してそれを用いてもよい。管理手段１１３は、クライアントがＷｅｂブラウザ等を利用できるように、Ｗｅｂサーバを搭載する。Ｗｅｂサーバは公知のＡｐａｃｈｅ等を使用する。
【００３７】
新ネットワークストレージ１０４は、ネットワークインタフェース１２０、リモート制御手段１２１、ストレージ装置１２２、仮想一元化装置１２３で構成する。新ネットワークストレージ１０４は、専用装置であってもよいし、ストレージ装置を有する汎用サーバ、ワークステーション、あるいはＰＣにリモート制御手段と仮想一元化装置１２３を搭載してもよい。ネットワークインタフェース１２０、リモート制御手段１２１、及びストレージ装置１２２の構成は先に説明した設置済ネットワークストレージ１０３の各構成要素と同じであるため、説明を省略する。
【００３８】
仮想一元化装置１２３は、設置済ネットワークストレージ１０３と新ネットワークストレージ１０４を仮想的に一元管理し、クライアント１００〜１０１からは仮想的に一つのファイルシステムに見えるようにする。具体的には、クライアント１００〜１０１に対して、単一のディレクトリツリー構造を見せる。実施例中で本発明の特徴を成す部分でる。
【００３９】
仮想一元化装置１２３は、管理手段１３０、要求処理手段１３１、設定情報読み出し手段１３２、ディレクトリツリー複写手段１３３、設定情報置き換え手段１３４、メンバ登録手段１３５、ファイル移行手段１３６、マッピング手段１３７、ホストテーブル１４０、一元管理ディレクトリ１４１で構成する。
【００４０】
管理手段１３０は、仮想一元化装置１２３に常駐し、クライアントからの管理要求に従い、ＩＰアドレス、名前情報、マウントポイント等を設定する。また、複数のネットワークストレージを仮想一元化する場合に、ホストテーブル１４０、一元管理ディレクトリ１４１を書き換えたり、設定情報読み出し手段１３２、ディレクトリツリー複写手段１３３、設定情報置き換え手段１３４、メンバ登録手段１３５、ファイル移行手段１３５、マッピング手段１３６を呼び出して要求を処理する。管理者は、クライアント１００〜１０１上の汎用Ｗｅｂブラウザをユーザインタフェースとして管理手段１３０にアクセスする。あるいは、クライアント上に専用のユーザインタフェースプログラムを搭載してそれを用いてもよい。あるいは、新ネットワークストレージ１０４にコンソールを接続してそれを用いてもよい。Ｗｅｂブラウザ等を利用してアクセスできるように、Ｗｅｂサーバを搭載する。Ｗｅｂサーバは公知のＡｐａｃｈｅ等を使用する。本実施例では、管理手段１３０が複数ネットワークストレージを仮想一元化するだけでなく、ＩＰアドレス、名前情報、マウントポイント等の基本的な情報も設定するが、仮想一元化するための管理手段と基本的な情報を設定するための管理手段を分けて設けてもよい。
【００４１】
要求処理手段１３１は、クライアント１００〜１０１からのマウント要求とファイルアクセス要求を処理する。本実施例では、クライアント１００は、前述のＮＦＳプロトコルを用いて、要求処理手段１３１にアクセスする。仮想一元化装置１２３と設置済ネットワークストレージ１０３および新ネットワークストレージ１０４のファイルシステム間もＮＦＳプロトコルを用いてファイルアクセスを行なうものとする。クライアントがＣＩＦＳクライアントである場合には、ＣＩＦＳプロトコルを用いて、要求処理手段１３１にアクセスする。その場合、仮想一元化装置１２３の要求処理手段１３１と設置済ネットワークストレージ１０３および新ネットワークストレージ１０４のストレージ装置間でのファイルアクセスは、ＮＦＳプロトコルを使用する。ＣＩＦＳプロトコルを使用したファイルアクセスは、Ｓａｍｂａ等の公知の技術を用いて実現できるため、ここでは詳細には説明しない。要求処理手段１３１が処理するファイルアクセス要求処理については後述する。
【００４２】
設定情報読み出し手段１３２は、設置済ネットワークストレージ１０３から、ＩＰアドレス、名前情報、マウントポイント等の基本的な設定情報を読み出す。設定情報の読み出しは、設置済ネットワークストレージ１０３の管理手段１１３にアクセスすることで実現できる。あるいは、設置済ネットワークストレージ１０３における基本的な設定情報がファイルとして存在すれば、そのファイルを読み出すことでも実現できる。あるいは、基本的な設定情報が設置済ネットワークストレージ１０３の特定領域に書きこまれる場合には、その領域を読み出すことで実現できる。
【００４３】
ディレクトリツリー複写手段１３３は、設置済ネットワークストレージ１０３のストレージ装置１１２にアクセスし、設定情報読み出し手段１３２により読み出したマウントポイント以下のディレクトリツリー構造とファイル構造を探索して、ディレクトリツリー構造とファイル構造を仮想一元化装置１２３の一元管理ディレクトリ１４１に複写する。
【００４４】
設定情報置き換え手段１３４は、新ネットワークストレージ１０４の管理手段１３０に設定したＩＰアドレスと名前情報を設置済ネットワークストレージ１０３の管理手段１１３に設定する。そして、設定情報読み出し手段１３２により設置済ネットワークストレージ１０３から読み出したＩＰアドレスと名前情報を新ネットワークストレージ１０４の管理手段１３０に設定する。このように基本的な設定情報を入れ替えることにより、新ネットワークストレージ１０４が設置済ネットワークストレージ１０３に成りかわる。新ネットワークストレージ１０４は、設置済ネットワークストレージ１０３のＩＰアドレス、名前情報を持ち、設置済ネットワークストレージ１０３は新ネットワークストレージ１０４のＩＰアドレス、名前情報を持つ。その結果、クライアント１００〜１０１の設定を変更することなく、クライアントには、設置済ネットワークストレージ１０３の容量が拡張したようにみえる。
メンバ登録手段１３５は、管理手段１３０により起動する。メンバ登録手段１３５は、管理手段１３０からのメンバ登録要求を受け取ると、ホストテーブル１４０に仮想一元化装置１２３のメンバとなる、つまり仮想化して単一のネットワークストレージに見せるネットワークストレージを登録する。一元管理ディレクトリ１４１にディレクトリツリー構造が存在する場合には、新メンバのストレージ装置に一元管理ディレクトリ１４１のディレクトリツリー構造を複写する。また、管理手段１３０からメンバ削除要求を受け取ると、ホストテーブル１４０からメンバ情報を削除する。
【００４５】
ファイル移行手段１３６は、管理手段１３０により起動する。ファイル移行手段１３６は、設置済ネットワークストレージ１０３が古くなったり、動作が不安定な場合に、新ネットワークストレージ１０４を設置済ネットワークストレージ１０３に置き換えるためにファイルを移動する。また、設置済ネットワークストレージ１０３のストレージ装置１１２の空き容量が少なくなった場合には、設置済ネットワークストレージ１０３から新ネットワークストレージ１０４にファイルを移動する。さらに、設置済ネットワークストレージ１０３と新ネットワークストレージ１０４の間で空き容量に不均衡が生じた場合等に、空き容量の少ないネットワークストレージから空き容量の多いネットワークストレージに対してファイルを移動する。
【００４６】
ファイル移行手段１３６におけるファイルの移動は、クライアントからネットワークストレージへのファイルアクセスに影響を及ぼさないように、バックグラウンドで少しずつ行なってもよいし、クライアントからのファイルアクセスを一旦停止して、集中的に行なってもよい。
【００４７】
ホストテーブル１４０は、仮想一元化装置１２３のメンバ情報を管理する。また、設定情報置き換え手段１３４により名前情報が置き返られる場合に、ホストテーブル１４０に保持したネットワークストレージの名前情報も置き換える。ホストテーブル１４０の概要を図４に示す。ホストテーブル１４０は、仮想一元化装置１２３のメンバとなるネットワークストレージの名前情報とメンバ間で一意なネットワークストレージ識別子との対応付けを行なう。４０１の行はメンバとなるネットワークストレージのストレージ装置の名前情報であり、４０２の行は、各ストレージ装置のマウントポイント、４０３の行は各ネットワークストレージのストレージ装置に対応する識別子である。一つのネットワークストレージに複数のストレージ装置が存在する場合には、各ストレージ装置に対応して識別子を用意する。図４では、設置済ネットワークストレージ１０３のネットワークストレージ識別子をＰＳ１、新ネットワークストレージ１０４のネットワークストレージ識別子をＰＳ２に設定する。
【００４８】
一元管理ディレクトリ１４１は、設置済ネットワークストレージ１０３および新ネットワークストレージ１０４を含むシステム全体のディレクトリツリー構造と、全ファイル識別子（属性情報）のみを管理する。クライアントには一元管理ディレクトリ１４１のディレクトリツリー構造とファイル構造を見せるが、一元管理ディレクトリ１４１上の各ファイルは、各ファイルの実体であるデータを持たない。全データは、設置済ネットワークストレージおよび新ネットワークストレージに分散して格納する。
【００４９】
本実施例では、クライアントには仮想的に単一のディレクトリツリー構造を見せる一元管理ディレクトリ１４１としてファイルシステムを利用する。一般的なファイルシステムは、ファイルのディレクトリツリー構造とファイル識別子と共に、ファイルの実体であるデータも格納してしまう。そこで、仮想一元化装置１２３は、一元管理ディレクトリ１４１のファイルシステムにダミーファイルを生成する。ダミーファイルはファイルの実体であるデータを持たない。クライアントが仮想一元化装置１２３にファイル生成要求（ＮＦＳプロトコルではＣＲＥＡＴＥ要求）を発行すると、要求処理手段１３１は一元管理ディレクトリ１４１にファイル構造を作るが、ファイルの実体は設置済ネットワークストレージあるいは新ネットワークストレージのファイルシステムに格納する。また、クライアント１００が仮想一元化装置１２３の要求処理手段１３１にＲＥＡＤ要求を発行すると、要求処理手段１３１は、一元管理ディレクトリ１４１にアクセスして、ダミーファイルを特定し、ダミーファイルを利用してファイルの実体を格納するネットワークストレージを決定する。次に、そのネットワークストレージからファイルの実体であるデータを読み出し、一元管理ディレクトリ１４１で管理する属性情報とあわせて、クライアントに返送する。なお、一元管理ディレクトリ１４１は、ディレクトリツリー構造とファイル識別子の管理さえできればよいため、必ずしもファイルシステムを使用する必要はない。ファイル識別子が全ファイルに対して一意であることを保証できれば、データベースを利用してもよいし、専用のテーブルで管理してもよい。
【００５０】
マッピング手段１３７は、ファイルとファイルの格納先のネットワークストレージとを対応つける。本実施例では、マッピング手段１３７は、一元管理ディレクトリ１４１に作成したダミーファイルの中に、ファイルの実体を格納するネットワークストレージの識別子を格納する。ネットワークストレージの識別子はホストテーブル１４０に登録したシステムに一意な値であり、各ダミーファイルに書きこむネットワークストレージの識別子の決定方法は、各ネットワークストレージに均等にファイルが分配されるようにする。具体的には、ＣＲＥＡＴＥ要求によりファイルを新しく生成する場合に、ラウンドロビンでファイルの実体を格納するネットワークストレージの識別子を決定する。その他にも、各ネットワークストレージの容量を監視して、格納されている容量が均等になるようにネットワークストレージを決定することもできる。あるいは、特定ディレクトリ以下のファイルを全て同じネットワークストレージに割り当てることもできる。
【００５１】
本実施例では、ダミーファイルにファイルの実体を格納するネットワークストレージの識別子を格納する方法をとったが、ダミーファイルではなく、各ディレクトリ毎に保持するファイル名とファイルの実体を格納するネットワークストレージの識別子を対応付けるリストを別途保持してもよい。ファイル識別子から、各ファイルの実体を格納するネットワークストレージが一意に決定できる方法であれば、専用のテーブルで管理してもよいし、他のどのような方法を用いてもよい。
【００５２】
次に、ディレクトリツリー複写手段１３３が行なうディレクトリツリー複写処理について図５を用いて詳細に説明する。管理手段１３０は、設定情報読み出し手段１３２により設置済ネットワークストレージ１０３からマウントポイントを読み出すと、次にディレクトリツリー複写手段１３３を呼び出し、ディレクトリツリー複写処理を行なう。プロセス５０２では、設置済ネットワークストレージ１０３の未探索のファイルオブジェクトＦが存在するかをどうかを調査する。未探索のファイルオブジェクトＦが存在する場合はプロセス５０４において、ファイルオブジェクトＦがディレクトリであるかどうかを判定する。ディレクトリの場合、プロセス５０５を行なう。プロセス５０５では、一元管理ディレクトリ１４１にディレクトリＦを生成する。ＮＦＳプロトコルを利用する場合には、一元管理ディレクトリ１４１に対してディレクトリの名前Ｆと親ディレクトリのファイルハンドルＨを引数としたＭＫＤＩＲ要求を発行する。ＭＫＤＩＲ要求に対する応答が一元管理ディレクトリ１４１から返ると、ディレクトリＦの生成処理を終了し、プロセス５０２に戻る。
プロセス５０２において未探索のファイルオブジェクトＦがまだ存在する場合には、プロセス５０４を行なう。ファイルオブジェクトＦがファイルの場合、プロセス５０６において、ホストテーブル１４０を参照して設置済ネットワークストレージ１０３の識別子ＰＳを求める。ホストテーブル１４０から設置済ネットワークストレージ１０３の識別子ＰＳ１を求められる。ファイルは設置済ネットワークストレージ１０３にのみ存在するため、識別子ＰＳ１は変わらない。そこで、最初の一回のみプロセス５０６において識別子ＰＳ１を求め、後はメモリ等に格納したものをもちいればよい。プロセス５０７では、一元管理ディレクトリ１４１にプロセス５０６で求めた設置済ネットワークストレージ１０３の識別子Ｎをデータに持つダミーファイルＦを生成する。ダミーファイルＦの生成はＣＲＥＡＴＥ命令とＷＲＩＴＥ命令を利用して実現できる。ダミーファイルＦを生成後プロセス５０２に戻り処理を継続する。プロセス５０２において未探索のファイルオブジェクトＦがなくなると、ディレクトリツリー複写処理を完了する（プロセス５０３）。
【００５３】
図６にファイル移行手段１３６によるファイル移行処理の流れの詳細を示す。ファイル移行手段１３６は、設置済ネットワークストレージ１０３の空き容量が閾値を下回った場合や、設置済ネットワークストレージ１０３を新ネットワークストレージ１０４に置き換える場合に管理手段１３０により起動される。
【００５４】
ファイル移行処理ではプロセス６０２において移行元のネットワークストレージＰＳｓと移行先のネットワークストレージのＰＳｄを決定する。プロセス６０３では、ファイル移行処理の終了条件を満たすかどうかを判定する。例えば、ファイル移行手段１３６が、空き容量監視結果に従って管理手段１３０により起動された場合には、ファイル移行処理によりＰＳｓの空き容量が閾値よりも大きくなれば移行処理は終了する。設置済ネットワークストレージ１０３から新ネットワークストレージ１０４へのリプレース要求により、管理手段１３０がファイル移行手段１３６を起動する場合には、ファイル移行処理の終了条件はＰＳｓに存在するファイル全てをＰＳｄに移動することとなる。ファイル移行処理は、プロセス６０３において上記の終了条件を満たすまで、プロセス６０５以下を実行する。
【００５５】
プロセス６０５では、一元管理ディレクトリ１４１において、未探索のダミーファイルＦが存在するかどうかをチェックする。プロセス６０６では、ダミーファイルＦに保持したネットワークストレージの識別子ＰＳが移行元ネットワークストレージＰＳｓであるかどうかを判定する。ＰＳとＰＳｓが一致する場合、すなわちファイルＦの実体がＰＳｓに存在する場合、プロセス６０７を行なう。プロセス６０７では、要求処理手段１３１において処理中あるいは処理待ちのファイルアクセス要求があるかどうかをチェックする。ファイルアクセス要求がなければ、プロセス６０８において、ＰＳｓからＰＳｄにファイルＦの実体のコピー処理を開始する。
【００５６】
プロセス６０８のコピー処理は、移行元ネットワークストレージＰＳｓに対してＬＯＯＫＵＰ要求を発行することにより取得したファイルハンドルＨｐｓｓを引数としてＲＥＡＤ要求を発行する。そして、移行先であるＰＳｄに対して、ファイルＦのＣＲＥＡＴＥ要求を発行してファイルＦを生成し、ＷＲＩＴＥ要求により、ＰＳｄに対するＲＥＡＤ要求の返り値であるデータをファイルＦに書きこむ。ＮＦＳプロトコルでは、一定サイズ以上のファイルの読み書きは、複数のＲＥＡＤ要求および複数のＷＲＩＴＥ要求を発行することにより実現する。例えば、ＮＦＳプロトコルでのＲＥＡＤ要求、ＷＲＩＴＥ要求は８１９２Ｂずつデータを転送する。本実施例では、クライアントからのファイルアクセス要求を可能な限り停止しないように、ＲＥＡＤ要求およびＷＲＩＴＥ要求を実行する度に、プロセス６０９を実行して処理待ちのファイルアクセス要求があるかどうかをチェックする。処理待ちのファイルアクセス要求が存在する場合には、プロセス６１１を行なう。プロセス６１１では、ＰＳｄにコピー中のファイルＦを廃棄する。ファイルＦの廃棄はＰＳｄに対してＲＥＭＯＶＥ要求を発行することにより実現する。ＲＥＭＯＶＥ要求の返答を受け取ると、プロセス６０７に戻り、処理待ちのファイルアクセス要求がなくなるまで待つ。処理待ちのファイルアクセス要求がなくなると、ファイル移行処理を再開し、ファイルＦを再度ＰＳｓからＰＳｄに移動する。ファイルＦのコピー処理が終わるとプロセス６１０を実行する。
【００５７】
プロセス６１０では、ファイルＦのコピー処理完了後、一元管理ディレクトリ１４１のダミーファイルＦが保持するネットワークストレージの識別子ＰＳをＰＳｓからＰＳｄに変更し、ＰＳｓからファイルＦを削除する。ファイルＦの削除はＰＳｓに対してＲＥＭＯＶＥ要求を発行することにより実現する。そしてプロセス６０３に戻り処理を継続する。
【００５８】
図７にメンバ登録手段１３５を用いたメンバ登録処理の流れを示す。クライアントからの増設要求に従い、管理手段１３０がメンバ登録手段１３５を起動し、メンバ登録処理７０１が開始される。管理手段１３０からのメンバ登録要求は、登録対象のストレージ装置を持つネットワークストレージの名前情報とストレージ装置のファイルシステムのマウントポイントを引数とする。プロセス７０２では、管理手段１３０からのメンバ登録要求に従い、ホストテーブル１４０に登録対象のネットワークストレージの名前ＮＳｎａｍｅとマウントポイントＭを登録し、ネットワークストレージの識別子ＰＳを設定する。プロセス７０３では、一元管理ディレクトリ１４１にディレクトリツリー構造が存在するかどうかをチェックする。存在しない場合には、メンバ登録処理を完了する。プロセス７０３において、一元管理ディレクトリ１４１にディレクトリツリー構造が存在する場合には、プロセス７０４を行なう。プロセス７０４では、一元管理ディレクトリ１４１のディレクトリツリーを探索し、未探索のディレクトリＤがあるかどうかをチェックする。未探索のディレクトリＤがない場合にはメンバ登録処理を完了する。プロセス７０４において、一元管理ディレクトリ１４１のディレクトリツリーに未検索のディレクトリＤが存在すれば、プロセス７０５においてネットワークストレージの識別子ＰＳで識別されるネットワークストレージのストレージ装置にディレクトリＤを生成する。ディレクトリＤは識別子ＰＳのネットワークストレージに対してＭＫＤＩＲ要求を発行することで生成する。生成後プロセス７０４に戻り処理を継続する。図７ではメンバ登録処理の流れを説明したが、メンバ削除処理については登録処理のうちプロセス７０２に相当する処理のみ行なえばよい。具体的には、ホストテーブル１４０からメンバ削除対象のネットワークストレージに関する情報を全て削除する。
【００５９】
次に、要求処理手段１３１におけるファイルアクセス要求の処理について説明する。要求処理手段１３１は、ネットワークストレージが一元管理装置１２３により一元化されている場合にのみ、クライアントからのファイルアクセス要求を受け付け、要求を処理する。本実施例では、ＮＦＳプロトコルを利用する。
【００６０】
図８にＬＯＯＰＵＰ要求処理の流れを示す。ＬＯＯＫＵＰ要求は、ファイルオブジェクトの親ディレクトリのファイルハンドルＨと、ファイルオブジェクトの名前Ｆを引数とする。要求処理手段１３１が、クライアント１００からＬＯＯＰＵＰ要求を受け取ると、図８のプロセス８０１を呼び出す。プロセス８０２において、ファイルハンドルＨからフィールド２０１に保持されたｉノード番号ＰＩを取りだし、このｉノード番号で識別される一元管理ディレクトリ１４１に存在する名前Ｆのファイルオブジェクトのｉノード番号Ｉを取得する。次にプロセス８０３において、親ディレクトリのｉノード番号ＰＩとファイルオブジェクトＦのｉノード番号Ｉをあわせてファイルハンドルを構成し、それをクライアント１００に返す。
ＲＥＡＤＤＩＲ要求の処理はＬＯＯＰＵＰ要求と同様で、対象ディレクトリの情報を読み出し、クライアント１００に返す。
【００６１】
図９にＣＲＥＡＴＥ要求処理の流れを示す。ＣＲＥＡＴＥ要求は、ファイルを生成するディレクトリのファイルハンドルＨと、ファイルの名前Ｆを引数とする。要求処理手段１３１は、ＣＲＥＡＴＥ要求を受け取るとプロセス９０１を呼び出す。プロセス９０２では、ファイルハンドルＨのフィールド２０２から、ファイルを生成するディレクトリのｉノード番号ＰＩを取りだし、このｉノード番号で識別されるディレクトリにファイルの名前がＦとなるダミーファイルを生成する。プロセス９０３では、マッピング手段１３７およびホストテーブル１４０を利用して、ＣＲＥＡＴＥ要求対象のファイルを格納するネットワークストレージ識別子ＰＳを決定する。プロセス９０４では、識別子ＰＳをダミーファイルＦに書き込む。書きこみは、例えばＷＲＩＴＥ要求を利用する。プロセス９０５では、クライアントから送られてきたＣＲＥＡＴＥ要求をネットワークストレージＰＳに対して発行する。プロセス９０６では、ネットワークストレージＰＳからＣＲＥＡＴＥ要求の応答が返ると、ダミーファイルＦを生成したディレクトリのｉノード番号ＰＩとダミーファイルのｉノード番号Ｉからファイルハンドルを構成して、クライアント１００に返す。
【００６２】
図１０はＲＥＡＤ要求処理の流れを示す。ＲＥＡＤ要求は、読み出すファイルＦのファイルハンドルＨと読み出すファイルＦの親ディレクトリのファイルハンドルＨｐを引数とする。クライアント１００が要求処理手段１３１にＲＥＡＤ要求を発行すると、プロセス１００１を呼び出す。プロセス１００２では、ファイルハンドルＨからダミーファイルＦを読み出し、ダミーファイルＦからファイル実体格納先のネットワークストレージＰＳを求める。プロセス１００３では、ネットワークストレージＰＳからファイルＦの実体に対するファイルハンドルＨｐｓを取得する。ファイルハンドルＨｐｓは、ネットワークストレージＰＳに対してＬＯＯＫＵＰ要求を発行することにより取得できる。一度取得したファイルハンドルＨｐｓの値とファイルハンドルＨとの対応関係を一元管理ディレクトリ１４１内部に記録しておくことで次にファイルハンドルＨを用いてＲＥＡＤ要求を発行する場合には、ＬＯＯＰＵＰ要求を発行しなくてもファイル格納先ネットワークストレージＰＳにおけるファイルハンドルＨｐｓを取得できる。
【００６３】
プロセス１００４では、取得したファイルハンドルＨｐｓを引数としてＲＥＡＤ要求をネットワークストレージＰＳに発行する。プロセス１００５では、ネットワークストレージＰＳがＲＥＡＤ要求の返り値である読み出し結果を返すと、その結果をクライアント１００に返す。
【００６４】
ＷＲＩＴＥ要求もＲＥＡＤ要求の処理とほぼ同じである。プロセス１００３においてＲＥＡＤ要求を識別子ＰＳで識別されるネットワークストレージに発行するかわりに、ＷＲＩＴＥ要求をネットワークストレージＰＳに発行すればよい。ＲＥＮＡＭＥ要求とＲＥＭＯＶＥ要求も同様である。
【００６５】
図１１にＭＫＤＩＲ要求処理の流れを示す。ＭＫＤＩＲ要求は、生成するディレクトリの名前Ｄと、生成する親ディレクトリのファイルハンドルＨを引数とする。要求処理手段１３１が、クライアント１００からＭＫＤＩＲ要求を受け付けると、プロセス１１０１を読み出す。プロセス１１０２では、ファイルハンドルＨのフィールド２０２に保持されたｉノード番号によって識別される一元管理ディレクトリ１４１のディレクトリ内に、名前Ｄのディレクトリを生成する。生成したディレクトリのｉノード番号はＩとする。プロセス１１０３では、ホストテーブル１４０に登録されている全ネットワークストレージに、ＭＫＤＩＲ要求を発行して名前Ｄのディレクトリを生成する。プロセス１１０４では、ディレクトリＤの親ディレクトリのｉノード番号ＰＩと一元管理ディレクトリ１４１に生成したディレクトリＤのｉノード番号Ｉからファイルハンドルを生成し、クライアント１００に返送する。
【００６６】
ＲＭＤＩＲ要求処理も同じであり、ＭＫＤＩＲ要求をＲＭＤＩＲ要求に変更すればよい。ＧＥＴＡＴＴＲ要求とＳＥＴＡＴＴＲ要求は、アクセス対象のファイルオブジェクトがディレクトリの場合、ＭＫＤＩＲ要求処理と同様に、各ネットワークストレージに対して要求を発行してディレクトリ属性の読み出し、設定を行なう。アクセス対象のファイルオブジェクトがファイルの場合、ＲＥＡＤ要求処理と同様ファイル格納先のネットワークストレージに発行すればよい。
【００６７】
次に、本実施例における処理全体の流れについて説明する。
管理者が新ネットワークストレージ１０４を購入した場合に行う処理の種類としては、設置済ネットワークストレージ１０３の容量が足りなくなって、新ネットワークストレージ１０４を増設する増設処理と、設置済ネットワークストレージ１０３が古くなって、新ネットワークストレージ１０４に置きかえるリプレース処理がある。
【００６８】
最初に増設処理について説明する。
【００６９】
図１に示すように、新ネットワークストレージ１０４の増設する前、クライアント１００〜１０１は設置済ネットワークストレージ１０３を共有している。本実施例では、クライアントと設置済ネットワークストレージ１０３間のファイルアクセスにおいてＮＦＳプロトコルを利用するものとする。ＮＦＳプロトコルでは、最初にクライアントが設置済ネットワークストレージ１０３に対してマウント要求を発行して、共有ファイルのルートディレクトリ（マウントポイントと呼ぶ）をクライアントのファイルシステムの一部分にマウントする。そこで、設置済ネットワークストレージ１０３のリモート制御手段１１１は、クライアントからのマウント要求に対して、公知のｍｏｕｎｔｄを利用してマウント要求に応える。ｍｏｕｎｔｄは、設置済ネットワークストレージ１０３のマウントポイントのファイルハンドルをクライアントに返す。以降、クライアントはファイルハンドルを使用して設置済ネットワークストレージ１０３のファイルにアクセスする。また、設置済ネットワークストレージ１０３の管理手段１１３においてＩＰアドレスｘｘｘｘ、名前ＮＳｏｌｄが設定されているとする。また、マウントポイントは／である。
【００７０】
設置済ネットワークストレージ１０３の空き容量が少なくなると、設置済ネットワークストレージ１０３の管理手段１１３は管理者に対して、電子メール等を用いて、空き容量が少ないため新ネットワークストレージの追加するように、通知する。空き容量の監視および電子メール等による通知方法は公知であるためここでは詳細は説明しない。管理者は通知を受け取ると、新ネットワークストレージ１０４を設置済ネットワークストレージ１０３の拡張ストレージとして増設する。
【００７１】
図１２に管理者による新ネットワークストレージの増設手順を示す。増設手順は、電源およびネットワークとの接続（ステップ１２０２）、ネットワーク設定（ステップ１２０３）、増設先ネットワークストレージ指定（ステップ１２０４）、増設処理開始（ステップ１２０５）、増設処理完了（ステップ１２０６）の順に行なう。
【００７２】
ステップ１２０２において管理者は、新ネットワークストレージ１０４の電源コードをコンセントボックス等に接続し、新ネットワークストレージ１０４を物理的にネットワーク１０２に接続する。
【００７３】
ステップ１２０３〜１２０５は、クライアント上のＷｅｂブラウザ等により全ての入力情報を新ネットワークストレージ１０４の管理手段１３０に対して設定する。
【００７４】
ステップ１２０３では、管理者はＷｅｂブラウザ経由あるいは、専用のユーザインタフェースプログラムを利用して、新ネットワークストレージ１０４に対して仮のＩＰアドレスと名前情報を設定する。ＩＰアドレスは、クライアントが静的に与えてもよいし、ＤＨＣＰサーバ等を用いて動的に与えてもよい。ネットワークの設定を行なうことで、設置済ネットワークストレージ１０３との通信が可能となる。ネットワークアドレスの設定方法は公知であるため、ここでは詳細を説明しない。本実施例では、新ネットワークストレージ１０４に与える仮のＩＰアドレスをｙｙｙｙ、名前をＮＳｎｅｗとする。
【００７５】
ステップ１２０４〜１２０５における処理は、図１３に示すユーザインタフェース画面を利用して説明する。
【００７６】
図１３（ａ）および図１３（ｂ）にステップ１２０４〜１２０５を実行する場合のＷｅｂブラウザ上あるいは専用ユーザインタフェースプログラムにおけるユーザインタフェース画面を示す。図１３（ａ）の１３０１は、管理者がステップ１２０４を実行する時のユーザインタフェース画面、図１３（ｂ）の１３０２は、管理者がステップ１２０５を実行する場合のユーザインタフェース画面である。ユーザインタフェース画面１３０１には、初期設定画面として、増設処理あるいはリプレース処理を選択するためのチェックボックス１３１０〜１３１１がある。また、各処理について、増設先あるいはリプレース先のネットワークストレージを選択するリストボックス１３２０〜１３２１を用意し、リストボックスの中には増設先あるいはリプレース先候補のネットワークストレージの名前リスト１３３０を表示する。また、設定した情報を引数として増設処理あるいはリプレース処理を開始するための適用ボタン１３４０と、設定情報を無効化するためのキャンセルボタン１３４１を持つ。ネットワークストレージリスト１３３０は、ネットワーク１０２上に存在する増設あるいはリプレース可能なネットワークストレージのリストであり、新ネットワークストレージ１０４がネットワーク１０２上にブロードキャスト要求等を送出することで取得する。リストボックス１３２１にもネットワークストレージリスト１３３０と同様のリストが表示されるが、本実施例では記載していない。
【００７７】
本実施例では、ネットワークストレージリスト１４３０から増設先あるいはリプレース先のネットワークストレージの名前情報を選択して設定することにより、設置済ネットワークストレージ１０３の共有ファイルのルートディレクトリであるマウントポイントが一意に決まるとする。具体的には、ネットワークストレージが管理者に公開しているマウントポイントがあらかじめ決められているとする。マウントポイントが一意に決まらない場合には、設置済ネットワークストレージ１０３におけるマウントポイント入力欄を別途設け、管理者に入力させてもよい。
【００７８】
ステップ１２０４では、管理者は、図１３（ａ）に示すユーザインタフェース画面を利用して、新ネットワークストレージ１０４の増設先として、容量を増やしたいと考えているネットワークストレージを選択する。チェックボックス１３１０を選択し、ネットワークストレージリスト１３３０から、設置済ネットワークストレージ１０３の名前ＮＳｏｌｄを選択する。本実施例では、設置済ネットワークストレージ１０３は、名前情報で指定するが、名前情報はＮｅｔＢＩＯＳ名、ホスト名のいずれでもよい。あるいはＩＰアドレスでもよい。
【００７９】
ステップ１２０５では、増設開始コマンドを新ネットワークストレージ１０４に送信する。増設開始コマンドは、管理者がリストボックス１２２０に設定した設置済ネットワークストレージ１０３の名前を引数とする。ステップ１２０５におけるユーザインタフェース画面を図１３（ｂ）に示す。図１３（ｂ）のユーザインタフェース画面における各要素は、図１３（ａ）と同じである。ただし、ステップ１２０４実行後であるため、チェックボックス１３１２がチェックされ、リストボックス１３２２ではＮＳｏｌｄが選択されている。その状態で適用ボタン１３４０をクリックすることにより、新ネットワークストレージ１０３における仮想一元化装置１２３の管理手段１３０に増設開始コマンドと増設先のネットワークストレージの名前情報（ここでは、ＮＳｏｌｄ）が書きこまれ、管理者には増設処理あるいはリプレース処理中である旨が表示される。
【００８０】
ステップ１２０５を実行することにより、増設処理コマンドと増設先として設置済ネットワークストレージ１０３の名前ＮＳｏｌｄが新ネットワークストレージ１０４の仮想一元化装置１２３内の管理手段１３１に書き込まれる。書きこみは、ＨＴＭＬプロトコルのＰＵＴコマンド等を利用して実現できる。そのほかにもＷｅｂ対応のインタフェースを利用すれば公知の技術で実現できる。管理手段１３０はクライアントからの書きこみを契機として新ネットワークストレージ１０４上で増設処理を開始する。管理者は、ユーザインタフェース画面に処理完了の旨が表示されるまで待つ。
【００８１】
図１４に新ネットワークストレージ１０４が行う増設処理のフローを示す。新ネットワークストレージ１０４が行なう増設処理は、増設先ネットワークストレージのファイル共有サービス停止（ステップ１４０２）、増設先ネットワークストレージの設定情報の読み出し処理（ステップ１４０３）、増設先ネットワークストレージ１０３のメンバ登録処理（ステップ１４０４）、増設先ネットワークストレージのディレクトリツリー構造の複写処理（ステップ１４０５）、新ネットワークストレージ１０４のメンバ登録処理（ステップ１４０６）、設定情報の置き換え処理（ステップ１４０７）、ファイル共有サービス再開（ステップ１４０８）の順に行なう。ここでは、管理者が増設先ネットワークストレージとして設置済ネットワークストレージ１０３であるＮＳｏｌｄを選択した場合について説明する。
【００８２】
ステップ１４０２では、増設処理が終了するまでの間、設置済ネットワークストレージ１０３のファイル共有サービスを停止する。具体的には、設置済ネットワークストレージ１０３にアクセスして、ファイル共有サービスがＮＦＳプロトコルを利用している場合には、マウントポイントのクライアントへの公開を中止する。公開を一旦中止する場合にはｅｘｐｏｒｔｓファイルを変更する等で対処する。クライアントがＣＩＦＳプロトコルを利用している場合には、ｅｘｐｏｒｔｓを変更しなくともＳａｍｂａサービスを停止すればよい。これらの処理を行なわない場合には、管理者がクライアントに対して設置済ネットワークストレージ１０３にアクセスしないように電子メール等で通知してもよい。
【００８３】
ステップ１４０３では、設定情報読み出し手段１３２を用いて、設置済ネットワークストレージ１０３の基本的な設定情報を読み出す。具体的には、設置済ネットワークストレージ１０３の管理手段１１３にアクセスしてＩＰアドレスｘｘｘｘ、名前ＮＳｏｌｄ、マウントポイント／を読み出し、新ネットワークストレージ１０４の管理手段１３０に保持する。
【００８４】
ステップ１４０４では、メンバ登録手段１３５により、図７のメンバ登録処理に従って、ステップ１４０３で読み出した設定情報をホストテーブル１４０に登録する。図７のプロセス７０２では、管理手段１３０からメンバ登録手段１３５に送られた増設先ネットワークストレージの名前情報及びマウントポイントをホストテーブル１４０に登録する。増設先ネットワークストレージ１０３の名前ＮＳｏｌｄ、マウントポイント／であるため、これをホストテーブル１４０に登録し、識別子ＰＳ１を取得する。プロセス７０３では、一元管理ディレクトリ１４１にディレクトリツリー構造が存在しないため、メンバ登録処理を完了して管理手段１３０に戻る。
【００８５】
ステップ１４０５では、管理手段１３０がディレクトリツリー複写手段１３３を呼び出して、設置済ネットワークストレージ１０３のディレクトリツリー構造を新ネットワークストレージ１０４における仮想一元化装置１２３内の一元管理ディレクトリ１４１に複写する。設置済ネットワークストレージ１０３から新ネットワークストレージ１０４へのディレクトリツリー複写処理を図１および図５を使用して詳細に説明する。ディレクトリツリー複写処理では、設置済ネットワークストレージ１０３のストレージ装置１１２上のディレクトリツリー構造とファイル構造を一元管理ディレクトリ１４１に複写する。最初にマウント要求を発行することにより、設置済ネットワークストレージ１０３におけるストレージ装置１１２のファイルシステムをマウントし、そのルートディレクトリ／のファイルハンドルを入手する。プロセス５０２では、ストレージ装置１１２のファイルシステムに未検索のファイルオブジェクトがあるかどうかをチェックする。プロセス５０４では、ＬＯＯＫＵＰ要求を発行することにより、未検索のファイルオブジェクトがディレクトリかどうかをチェックする。ｄ１はディレクトリであるため、プロセス５０５を行なう。プロセス５０５は、ディレクトリの名前ｄ１と、設置済ネットワークストレージ１０３のディレクトリｄ１に対するＬＯＯＫＵＰ要求処理の結果取得したディレクトリｄ１の属性情報を引数としてＭＫＤＩＲ要求を発行し、一元管理ディレクトリ１４１にディレクトリｄ１を作成する。ディレクトリｄ１生成後、プロセス５０２に戻り、未探索のファイルオブジェクトを調査する。ファイルオブジェクトｄ２が存在し、ディレクトリであるため、設置済ネットワークストレージからディレクトリｄ２の属性情報を読み出す。プロセス５０５が、ディレクトリの名前ｄ２と属性情報を引数としてＭＫＤＩＲ要求を発行することにより、一元管理ディレクトリ１４１にディレクトリｄ２を作成する。ディレクトリｄ３も同様に生成する。プロセス５０２において次の未探索のファイルオブジェクトはｆ１であるから、プロセス５０６を実行する。プロセス５０６では、ホストテーブル１４０を参照し設置済ネットワークストレージ１０３の識別子を求める。設置済ネットワークストレージ１０３の識別子はＰＳ１である。次にプロセス５０７において、一元管理ディレクトリ１４１にＰＳ１をデータに持つダミーファイルｆ１を生成する。ダミーファイルの生成は、ＣＲＥＡＴＥ要求とＷＲＩＴＥ要求により実現する。生成後はプロセス５０２に戻る。次に、未検索のファイルオブジェクトは名前ｆ２のファイルであるため、再度プロセス５０６を実行する。ホストテーブル１４０の参照結果から、ネットワークストレージ識別子はＰＳ１であることがわかっている。次にプロセス５０７を実行し、一元管理ディレクトリ１４１にネットワークストレージ識別子ＰＳ１をもつダミーファイルｆ２を生成する。ファイルｆ３についても同様に処理を行ない、一元管理ディレクトリ１４１にダミーファイルｆ３を生成する。以上の処理の結果、一元管理ディレクトリ１４１には設置済ネットワークストレージ１０３と同じディレクトリツリー構造とファイル構造が生成される。ただし、一元管理ディレクトリ１４１の各ファイルはファイルの実体ではなく、実体を保持する設置済ネットワークストレージ１０３の識別子ＰＳ１を保持する。
【００８６】
ステップ１４０６では、メンバ登録手段１３５を用いて、新ネットワークストレージ１０４のストレージ装置１２２をメンバ登録する。図７に示すように、メンバ登録処理では、プロセス７０２において、新ネットワークストレージの名前情報とマウントポイントをホストテーブル１４０に登録する。プロセス７０３では、一元管理ディレクトリ１４１にディレクトリツリーが存在するため、プロセス７０４を行なう。プロセス７０４は、一元管理ディレクトリ１４１のディレクトリツリー構造のみ、新ネットワークストレージ１０４のストレージ装置１２２に複写する。複写の結果、新ネットワークストレージ１０４のストレージ装置１２２には、一元管理ディレクトリ１４１のディレクトリツリー構造がコピーされる。発明の実施の形態では、新ネットワークストレージ１０４がストレージ装置１２２を持つ場合について説明したが、新ネットワークストレージ１０４がストレージ装置を持たない場合には、このステップは行なわない。
【００８７】
ステップ１４０７では、設定情報置き換え手段１３４により設置済ネットワークストレージ１０３と新ネットワークストレージ１０４の設定情報をおき替える。まず新ネットワークストレージ１０４の管理手段１３０が保持する新ネットワークストレージ用のＩＰアドレスｙｙｙｙと名前ＮＳｎｅｗを設置済ネットワークストレージ１０３の管理手段１１３に設定する。また、設定情報読み出し手段１３２により読み出した設置済ネットワークストレージ１０３のＩＰアドレスｘｘｘｘ、名前ＮＳｏｌｄを管理手段１３０に設定する。同時に、ホストテーブル１４０の名前も置きかえる。
【００８８】
クライアントがＣＩＦＳプロトコルを利用している場合、クライアントがネットワークストレージを名前情報のみで共有していることがある。例えば、設置済ネットワークストレージ１０３をクライアントのネットワークドライブに割り当てて使用するケースではＮｅｔＢＩＯＳ名のみでネットワークストレージが管理される。このようなケースでは設定情報置き換え手段１３４において、設置済ネットワークストレージ１０３の名前ＮＳｏｌｄと新ネットワークストレージ１０４の名前ＮＳｎｅｗを交換するだけで、クライアントの設定を変更することなく、新ネットワークストレージ１０４が設置済ネットワークストレージ１０３に成り代わることができる。
【００８９】
ステップ１４０７を実行すると、増設処理は完了し、管理手段１３１経由でユーザインタフェース画面に処理完了のメッセージを表示する。処理完了後は、プロセス１４０８において、ファイル共有サービスを再開する。具体的には、一元管理ディレクトリ１４１のルートディレクトリをクライアントに公開することで、クライアントからのファイルアクセス操作が可能になる。クライアントからのファイルアクセス操作はステップ１４０８以降、全て要求処理手段１３１を経由して処理される。
【００９０】
増設処理完了直後は、ファイルの実体は全て設置済ネットワークストレージ１０３に存在する。そのため、クライアントがファイルアクセス要求を発行すると、新ネットワークストレージ１０４の要求処理手段１３１を介して、一元管理ディレクトリ１４１にアクセスし、設置済ネットワークストレージ１０３のストレージ装置１１２にアクセスする。ただし、クライアントの設定は変更していないため、クライアントには設置済ネットワークストレージ１０３の容量が拡張したようにみえる。
【００９１】
増設直後は、新ネットワークストレージ１０４のストレージ装置にはファイルを格納していない。そこで、ネットワークストレージ間の空き容量を平均化するためにファイル移行手段１３６により明示的に設置済みネットワークストレージ１０３から新ネットワークストレージ１０４にファイルを移動してもよい。ファイル移行処理は、クライアントのファイルアクセス処理の邪魔をしないように行なってもよいし、クライアントのファイルアクセスを完全に停止してまとめて行なってもよい。あるいは、マッピング手段１３７を変更して、増設処理以降新たに作成されるファイルを新しいネットワークストレージ１０４に格納するようにしてもよい。
【００９２】
次にリプレース処理について説明する。
【００９３】
図１に示すように、最初、クライアント１００〜１０１は名前がＮＳｏｌｄである設置済ネットワークストレージ１０３を共有している。リプレース処理においても増設処理と同様、クライアントと設置済ネットワークストレージ１０３間のファイルアクセスにおいてＮＦＳプロトコルを利用するものとする。
【００９４】
設置済ネットワークストレージ１０３が古くなると、管理者は、新ネットワークストレージ１０４を購入して、設置済ネットワークストレージ１０３と置き換える。図１５に管理者による新ネットワークストレージのリプレース手順を示す。リプレース手順は、電源およびネットワークとの接続（ステップ１５０１）、ネットワーク設定（ステップ１５０２）、リプレース先ネットワークストレージ指定（ステップ１５０３）、リプレース処理開始（ステップ１５０４）、リプレース処理終了（ステップ１５０５）の順に行なう。
【００９５】
各処理は、図１２に示す増設処理と同様であるため説明を省略する。リプレースの場合は、図１３に示すユーザインタフェース画面１３０１、１３０２でリプレース処理を選択する点が異なる。
【００９６】
ステップ１５０５までを実行することにより、リプレース処理コマンドとリプレース先の設置済ネットワークストレージ１０３の名前が新ネットワークストレージ１０４の管理手段１３０に書き込まれ、仮想一元化装置１２３の管理手段１３０がリプレース処理を開始する。クライアントは、ユーザインタフェース画面にファイル共有サービス再開の旨が表示されるまで待つ。リプレース処理は、設置済ネットワークストレージ１０３の全ファイルを新ネットワークストレージ１０４に移行する必要がある。全ファイルの移行を待つのでは、長時間ファイル共有サービスが停止してしまうため、リプレースによるファイル移行が終了していない状態でもクライアントに対するファイル共有サービスを再開する。ファイル移行が完全に済むと、クライアントにはリプレース完了およびネットワークストレージの切り離しが可能である旨のメッセージを表示する。
【００９７】
図１６に新ネットワークストレージ１０４が行うリプレース処理のフローを示す。新ネットワークストレージ１０４が行なうリプレース処理は、リプレース先ネットワークストレージのファイル共有サービス停止（ステップ１６０２）、ネットワークストレージの設定情報の読み出し処理（ステップ１６０３）、ホストテーブル１４０への登録処理（ステップ１６０４）、リプレース先ネットワークストレージのディレクトリツリー構造の複写処理（ステップ１６０５）、新ネットワークストレージ１０４のホストテーブル１４０への登録処理（ステップ１６０６）、設定情報の置き換え処理（ステップ１６０７）、ファイル共有サービスの再開（ステップ１６０８）、ファイル移行処理（ステップ１６０９）、設置済ネットワークストレージ１０３のホストテーブル１４０からの削除処理（ステップ１６１０）の順に行なう。ここでは、リプレース先ネットワークストレージとして設置済ネットワークストレージ１０３ＮＳｏｌｄが選択されている場合について説明する。
【００９８】
ステップ１６０２では、ステップ１６０７の処理が終了するまでの間、設置済ネットワークストレージ１０３のファイル共有サービスを停止する。ファイル共有サービスの停止方法は増設処理の場合と同様である。
【００９９】
ステップ１６０３からステップ１６０７までは、図１４に示す増設処理におけるステップ１４０３からステップ１４０７の処理と同じである。ステップ１６０７までの処理が完了すると、ステップ１６０８においてファイル共有サービスを再開し、クライアントからのファイルアクセスを許可する旨を表示する。ファイル共有サービスを再開では、一元管理ディレクトリ１４１のルートディレクトリをクライアントに対して公開する。
【０１００】
ステップ１６０９では、ファイル移行手段１３６を利用して設置済ネットワークストレージ１０３のストレージ装置１１２から新ネットワークストレージ１０４のストレージ装置１２２へファイルを移行する。ファイル移行は、図６に示すようにクライアントのファイルアクセスの邪魔をしないように行なう。また、マッピング手段１３７において、設置済ネットワークストレージ１０３にファイルを新しく作成しないようにマッピング方法を変更する。
ステップ１６１０では、ステップ１６０９におけるファイル移行処理が完了すると、ホストテーブル１４０から、設置済ネットワークストレージ１０３を削除する。ここで、先のステップで設定情報の置き換え処理をしているため、削除対象となるのは、名前ＮＳｎｅｗ、ネットワークストレージの識別子ＰＳ１である設置済ネットワークストレージ１０３である。増設処理と異なるのは、ファイル移行処理がリプレース処理完了前に完了しなければならない点、ファイル移行処理が完了後に、ホストテーブル１４０から設置済ネットワークストレージ１０３のエントリを削除する点である。クライアントからのファイルアクセスを完全に停止してファイルの移行を行なう場合には、ステップ１６０８の処理をスキップすればよい。
【０１０１】
ステップ１６１０を実行すると、リプレース処理は完了し、管理手段１３０経由でユーザインタフェース画面に処理完了のメッセージを表示する。リプレース処理完了後は、設置済ネットワークストレージ１０３へのファイルアクセスは発生しないため、ネットワークから切り離すことができる。
＜実施の形態の変形例１＞
上述の代表的な実施の形態では、一元管理ディレクトリ１４１とファイルの実体を保持する各ネットワークストレージとの対応付けを行なうために、各ダミーファイルがファイル実体を格納するネットワークストレージの識別子を保持した。ところが、この管理方法では、新しいネットワークストレージを増設したり、リプレースすることによりファイル移行処理が行なわれる場合に、各ダミーファイルに保持したネットワークストレージの識別子を書きかえる必要がある。また、ファイルアクセスの度にダミーファイルをオープンして、ネットワークストレージの識別子を読み取る必要があるため、ダミーファイル数が多いほど、書き換えオーバヘッドは大きくなる。
【０１０２】
そこで、変形例１では、一元管理ディレクトリ１４１に配置するダミーファイルにはネットワークストレージ識別子を持たない。そのかわりに、ファイルをグループ化し、ファイルグループ毎にファイルを保持するネットワークストレージの識別子を決定する。
【０１０３】
図１７に変形例１におけるネットワークストレージシステムの構成を示す。変形例１では、新ネットワークストレージ１０４の仮想一元化装置１２３がグループテーブル１７００を有する。また、一元管理ディレクトリ１７０１のダミーファイルの構造、マッピング手段１７０２、ディレクトリツリー複写手段１７０３、ファイル移行手段１７０４の処理が実施の形態とは異なる。さらに、要求処理手段１７０５で処理するファイルアクセス要求のうち、ネットワークストレージに保持したファイルの実体をアクセスする場合の要求処理が異なる。具体的には、ＣＲＥＡＴＥ要求、ＲＥＡＤ要求、ＷＲＩＴＥ要求、ＲＥＮＡＭＥ要求、ＲＥＭＯＶＥ要求処理におけるファイル格納先ネットワークストレージを決定するプロセスが異なる。また、ＳＥＴＡＴＴＲ要求およびＧＥＴＡＴＴＲ要求のうちアクセス対象のファイルオブジェクトがファイルであるものについては、ファイル格納先ネットワークストレージを決定するプロセスが異なる。
【０１０４】
グループテーブル１７００の構造を図１８に示す。グループテーブル１７００は、ファイルとファイルが属するファイルグループの対応関係を与える。具体的には、ファイル識別子であるｉノード番号Ｉと、ｉノード番号Ｉで識別されるファイルグループの識別子Ｇを与える。１８０１の行は４つのファイルグループの識別番号０〜３を示す。１８０２の行は、１８０１の各ファイルグループに属するファイルを格納するネットワークストレージ識別子ＰＳを示す。ファイルグループ０に属するファイルの格納先は識別子ＰＳ１を持つネットワークストレージであり、ファイルグループ３に属するファイルの格納先は識別子ＰＳ２を持つネットワークストレージである。ネットワークストレージの識別子がどのネットワークストレージに対応するかはホストテーブル１４０を参照すればよい。グループマップ１８００は、ファイル移行手段１３６によりファイルの属するグループを移動した場合に書きかえられる。
【０１０５】
一元管理ディレクトリ１７０１には各ネットワークストレージに分散されて保持されるファイルのダミーを置くが、変形例１では、ダミーファイルには格納先ネットワークストレージの識別情報を保持しない。
【０１０６】
マッピング手段１７０２は、ファイルとファイルが属するファイルグループの対応を与える。具体的には、一元管理ディレクトリ１４１で管理されるダミーファイルの識別子であるｉノード番号Ｉを検索鍵としハッシュ値をファイルグループ識別子とするハッシュ関数で与える。例えば、ファイルをＮ個のファイルグループに分割する場合のハッシュ関数として、ｉノード番号Ｉにファイルグループ数Ｎのモジュロ演算（Ｎで割ったあまり）を適用して得られた値をファイルグループ識別子Ｇとする。例えば、ファイルグループ数Ｎが４の場合、ファイルグループ識別子は０〜３のいずれかをとる。ファイルグループ数Ｎはネットワークストレージシステムの構成の違いによらず不変である。
【０１０７】
図１９は変形例１におけるディレクトリツリー複写手段１７０３によるディレクトリツリー複写処理の流れを示す。変形例１におけるディレクトリツリー複写処理では、設置済ネットワークストレージのディレクトリツリー構造を一元管理ディレクトリ１４１に複写した後、グループマップの１８０２に示す行に全てのグループが設置済ネットワークストレージ１０３に対応するように設定する点が実施例とは異なる。また、ディレクトリツリー構造のファイルオブジェクトＦがファイルである場合には、一元管理ディレクトリには容量０のダミーファイルを作成する点が実施例とは異なる。
【０１０８】
また、ファイル移行手段１７０４によるファイル移行処理において、移行元ネットワークストレージＰＳｓと移行先ネットワークストレージＰＳｄを決定すると、グループマップ１７００に示される移行元ネットワークストレージＰＳｓに属するグループの一つを選択して、そのグループに属するファイル群をまとめて移行先ネットワークストレージＰＳｄにコピーする点が実施例とは異なる。グループＧに属するファイルは、一元管理ディレクトリ１７０１のディレクトリツリーを探索することで抽出できる。移行処理を行なう場合に、抽出したファイル名をリスト等に保持し、グループＧの各ファイルについて移行状態を管理することで効率よくファイルを移行することが可能である。
＜実施の形態の変形例２＞
代表的な実施の形態では、新ネットワークストレージ１０４を増設して仮想一元化されていない設置済ネットワークストレージ１０３の容量拡張処理およびリプレース処理を実現する。実施の形態の変形例２では、新ネットワークストレージ１０４に、設置済ネットワークストレージ１０３が仮想一元化されているかどうかを識別する手段を持つ点が上記代表的な実施の形態とは異なる。
【０１０９】
図２０に変形例２におけるネットワークストレージシステムの構成を示す。変形例２では、識別手段２０００を有することに特徴がある。識別手段２０００は、管理手段１３０により起動され、クライアントが管理手段１３０に設定した増設先の設置済ネットワークストレージ１０３にアクセスし、仮想一元化されていないかどうか、仮想一元化するための手段を備えているかどうか、仮想一元化されているかどうかを識別した上で、増設処理あるいはリプレース処理を行う。設置済ネットワークストレージ１０３が仮想一元化されていない場合には、新ネットワークストレージ１０４の管理手段１３０が増設処理を行ない、設置済ネットワークストレージ１０３が仮想一元化するための手段を備えている場合、および仮想一元化している場合には、新ネットワークストレージ１０４の管理手段が設置済ネットワークストレージ１０３の管理手段を呼び出し、呼び出した設置済ネットワークストレージ１０３の管理手段が増設処理を行ない、処理結果を新ネットワークストレージ１０４の管理手段に返す。識別手段１９００は管理手段１３０に含んでもよい。
【０１１０】
図２１に増設処理における識別処理部分の流れを示す。図１２に示す増設手順において、新ネットワークストレージ１０４の管理手段１３０に、ＩＰアドレスや名前情報等を設定し、さらに新ネットワークストレージ１０４の増設開始コマンドと増設先のネットワークストレージの名前情報を設定すると、管理手段１３０は増設処理を開始する。増設処理を開始すると、管理手段１３０はまず識別手段２０００を呼び出す。識別手段２０００による識別処理では、プロセス２１０２において、増設先の設置済ネットワークストレージ１０３の管理手段１１３にアクセスして、仮想一元化装置が存在するかどうかをチェックする。仮想一元化装置が存在しない場合には、プロセス２１０７の増設処理Ｃを行なう。増設処理Ｃは、本発明の実施例で説明した増設処理と同じである。具体的には、新ネットワークストレージ１０４の管理手段１３０が主体となって、図１４に示す増設処理を行なう。仮想一元化装置のメンバを登録するホストテーブル１４０や一元管理ディレクトリ１４１は新ネットワークストレージ１０４に存在する。プロセス２１０１において、増設先ネットワークストレージに仮想一元化装置が存在する場合には、プロセス２１０２において、その仮想一元化装置が使用されているかどうかをチェックする。仮想一元化装置を使用しているかどうかは、ホストテーブルが設定されているかどうか、あるいは要求処理手段が起動されているかどうか等で識別可能である。プロセス２１０２において、増設先ネットワークストレージにおいて仮想一元化装置を使用している場合には、プロセス２１０３において、増設先ネットワークストレージにおける仮想一元化装置の管理手段を呼び出し、増設処理Ａを行なう。プロセス２１０２において、仮想一元化装置を使用していない場合には、プロセス２１０４において、増設先ネットワークストレージの仮想一元化装置を起動し、管理手段を呼び出して、増設処理Ｂを行なう。変形例２では、識別処理の結果、増設処理Ａおよび増設処理Ｂを増設先ネットワークストレージの管理手段が行ない、増設処理Ｃを新ネットワークストレージ１０４の管理手段１３０が行なうことに特徴がある。
【０１１１】
図２４に増設処理Ａの対象となるネットワークストレージシステムの概略構成と増設手順の概要を示す。設置済ネットワークストレージ２４０２および新ネットワークストレージ２４０３はそれぞれ仮想一元化装置２４３０および２４４０を有する。説明を簡単にするため、仮想一元化装置２４３０には管理手段２４３１と一元管理ディレクトリ２４３３のみ、仮想一元化装置２４４０には管理手段２４４１のみ記載しているが、実際には図１に示した構成要素も含んでいる。増設処理Ａでは、クライアント２４００は、仮想一元化装置２４３０を経由してファイルアクセスを行なっている（２４５０）。増設手順において、クライアントが新ネットワークストレージ２４０３の管理手段２４４１に、増設先である設置済ネットワークストレージ２４０２の名前情報を引数とした増設要求を発行すると（２４６０）、管理手段２４４１が設置済ネットワークストレージ２４０２の管理手段２４３１を呼び出す（２４６１）。そして、管理手段２４３１が一元管理ディレクトリ２４３３にアクセスして（２４６２）、一元管理ディレクトリ１４１からストレージ装置２４２２へディレクトリツリー構造を複写する（２４６２）。
【０１１２】
図２２に増設処理Ａの流れを示す。増設先ネットワークストレージは、設置済ネットワークストレージ２４０２とする。プロセス２２０２では、まず増設先である設置済ネットワークストレージ２４０２のファイル共有サービスを停止する。続いて、プロセス２２０３では、新ネットワークストレージを増設先ネットワークストレージのホストテーブルに登録する。図７に示すように、メンバ登録処理では、プロセス７０２において新ネットワークストレージ２４０３の名前情報とマウントポイントをホストテーブルに設定し、ネットワークストレージの識別子を取得する。プロセス７０３では、一元管理ディレクトリ２４３３にディレクトリツリー構造が存在するため、新ネットワークストレージ２４０３のストレージ装置２４２２にディレクトリツリー構造を複写して増設処理Ａを完了する。増設処理Ａを完了すると、新ネットワークストレージ２４０３の管理手段２４４１に完了通知が送出され、それをクライアントに返す。
【０１１３】
図２５に増設処理Ｂの対象となるネットワークストレージシステムの概略構成と増設手順の概要を示す。システムの概略構成は図２４と同じであるが、増設処理Ｂでは、クライアント２５００は、仮想一元化装置２５３０ではなく、リモート制御手段２５１１を経由してファイルアクセスを行なっている（２５５０）。仮想一元化装置２５３０は未使用である。増設手順において、クライアントが新ネットワークストレージ２５０３の管理手段２５４１に、増設先となる設置済ネットワークストレージ２５０２の名前情報を引数とした増設要求を発行すると（２５６０）、管理手段２５４１が設置済ネットワークストレージ２５０２の管理手段２５３１を起動し呼び出して、増設処理を行なう（２５６１）。管理手段２５３１は、設置済ネットワークストレージ２５０２のストレージ装置２５１２にアクセスし（２５６２）、そのディレクトリツリー構造とファイル構造を一元管理ディレクトリ２５３３に複写する（２５６３）。その後、一元管理ディレクトリ２５３３のディレクトリツリー構造を新ネットワークストレージ２５０３のストレージ装置２５２２へ複写する（２５６３）。
【０１１４】
図２３に増設処理Ｂの流れを示す。プロセス２３０２では、まず設置済ネットワークストレージ２５０２のファイル共有サービスを停止する。次にプロセス２３０３では、設置済ネットワークストレージ２５０２をホストテーブルにメンバ登録する。ここでは、設置済ネットワークストレージ２５０２の一元管理ディレクトリ２５３３にはディレクトリツリー構造が存在しないため、メンバ登録処理を終了する。プロセス２３０４では、設置済ネットワークストレージ２５０２の一元管理ディレクトリ１４１に設置済ネットワークストレージ２５０２のストレージ装置２５１２のディレクトリツリー構造を複写する。複写後、プロセス２３０５において、新ネットワークストレージ２５０３を設置済ネットワークストレージ２５０２のホストテーブルに登録する。メンバ登録処理では、一元管理ディレクトリ２５３３のディレクトリツリー構造を新ネットワークストレージ２５０３のストレージ装置２５２２にコピーする。プロセス２３０６では、クライアントへのファイル共有サービスを再開して増設処理Ｂを完了する。増設処理Ｂを完了すると、新ネットワークストレージ２５０３の管理手段２５４１に完了通知が送出され、それをクライアントに返す。クライアント２５００からのファイルアクセス要求の発行先はリモート制御手段２５１１から仮想一元化装置２５３０に変更になる。
図２６に増設処理Ｃを行なう場合のネットワークストレージシステムの概略構成と増設手順の概要を示す。増設処理Ｃでは、新ネットワークストレージ２６０３のみ仮想一元化装置２６４０を有する。クライアント２６００は、設置済ネットワークストレージ２６０２のリモート制御手段２６１１に対してファイルアクセス要求を発行している。増設手順において、クライアント２６００が新ネットワークストレージ２６０３の管理手段２６４１に、増設先となる設置済ネットワークストレージ２６０２の名前情報を引数とした増設要求を発行すると（２６６０）、管理手段２６４１が増設処理を行なう（２６６１）。管理手段２６４１は、設置済ネットワークストレージ２６０２のストレージ装置２６１２にアクセスし（２６６１）、そのディレクトリツリー構造とファイル構造を一元管理ディレクトリ２６４２に複写する（２６６２）。そして一元管理ディレクトリ２６４２から新ネットワークストレージ２６０３のストレージ装置２６２２へディレクトリツリー構造を複写する（２６６３）。複写後、設置済ネットワークストレージ２６０２と新ネットワークストレージ２６０３の設定情報を置き換えて、増設処理Ｃを完了する。完了後、管理手段２６４１はクライアントに完了通知を返送する。増設処理Ｃの結果、クライアント２６００は、新ネットワークストレージ２６０３の仮想一元化装置２６４０に対してファイルアクセス要求を発行する。ファイルアクセス要求の発行先は、設置済ネットワークストレージ２６０２から新ネットワークストレージ２６０３へと変わるが、設定情報が入れ換えられているため、クライアント２６００での設定変更は発生しない。
【０１１５】
増設処理Ｃの流れは、図１４と同じであるため、説明を省略する。
【０１１６】
増設処理Ａおよび増設処理Ｂでは仮想一元化装置が増設先ネットワークストレージに存在するため、増設処理Ｃのように増設先ネットワークストレージと新ネットワークストレージ間で設定情報を置き換える必要はない。
【０１１７】
変形例２では、管理者が新ネットワークストレージの増設処理を行なう場合に、増設先の設置済ネットワークストレージの管理状態を意識することなく、設置済ネットワークストレージの容量を拡張する方法について説明した。リプレース処理の場合も識別手段２０００を用いることにより、リプレース先のネットワークストレージが一元管理されているかどうかによらず、設置済ネットワークストレージをリプレースできる。
【０１１８】
また、変形例２では、識別手段２０００により、増設処理Ａ、Ｂ、Ｃのいずれを実行するかどうかを自動的に選択したが、管理者により識別情報を入力してもらう方法も考えられる。この場合は、新ネットワークストレージ１０４のユーザインタフェース画面において、管理者に増設あるいはリプレース先のネットワークストレージの運用状態を（Ａ）仮想一元化装置利用中、（Ｂ）仮想一元化装置はあるが、未使用、（Ｃ）仮想一元化装置なし、で分類してそのうちのいずれかを入力してもらうことで、識別手段２０００において、増設先のネットワークストレージに問い合わせることなく、増設先あるいは新ネットワークストレージの管理手段を呼び出して増設処理を行なうことができる。
＜実施の形態の変形例３＞
上述の代表的な実施の形態では、図１に示す設定情報読み出し手段１３２により読み出した設置済ネットワークストレージ１０３の設定情報と新ネットワークストレージ１０４の設定情報を置きかえる。設定情報には、ＩＰアドレスや名前情報だけでなく、ユーザアカウント情報も含まれる。アカウント情報の制御をネットワークストレージではない、ネットワーク上の別計算機システムが行なう場合には、アカウント情報を置き換え対象の設定情報に含む必要はないが、ネットワークストレージが行なう場合には設置済ネットワークストレージから暗号化されたアカウント情報も読み出す必要がある。そこで、変形例３では、仮想一元化装置１２３が暗号解読手段と暗号化手段を有する。設定情報読み出し手段１３２により設定情報を読み出す場合に、暗号化されているアカウント情報を暗号解読手段により解読して読み出す。また、設定情報を書き込む場合には、再度暗号化して書き込む。
【０１１９】
【発明の効果】
本発明の実施の形態によれば、仮想一元化されていない設置済ネットワークストレージの容量が足りなくなり、管理者が新しいネットワークストレージを増設した場合に、新しいネットワークストレージの仮想一元化装置が、設置済ネットワークストレージを仮想一元化ファイルシステムのメンバに登録し、設置済ネットワークストレージのローカルファイルシステム上のディレクトリツリー構造とファイル構造を複写することで、仮想一元化されていない設置済ネットワークストレージと新しいネットワークストレージを一元管理することができる。
【０１２０】
また、新ネットワークストレージ上の仮想一元化装置が、メンバとなる各ネットワークストレージと仮想一元化装置が管理する一意なネットワークストレージの識別子との対応表に従い、標準的なファイルアクセスプロトコルを用いて、設置済ネットワークストレージあるいは新ネットワークストレージのローカルファイルシステムをアクセスすることで、設置済ネットワークストレージに特別な情報を設定することなく、設置済ネットワークストレージと新ネットワークストレージを一元管理することができる。
【０１２１】
さらに、設置済ネットワークストレージが仮想一元化されていない場合にも、新ネットワークストレージ上の仮想一元化装置が、設置済ネットワークストレージの設定情報と、新しいネットワークストレージの設定情報を入れ替えることで、クライアント計算機におけるネットワークストレージの共有設定を変更することなく、仮想一元化されていなかった設置済ネットワークストレージと新しいネットワークストレージを一元管理することができる。
【図面の簡単な説明】
【図１】本発明の第表的な実施の形態におけるネットワークストレージシステムの全体構成を示す図である。
【図２】上記実施の形態におけるファイルハンドル２００の構成を示す図である。
【図３】上記実施の形態におけるファイルシステムの基本構造を示す図である。
【図４】上記実施の形態におけるホストテーブル１４０の構成を示す図である。
【図５】上記実施の形態におけるディレクトリツリー複写処理の流れを示す図である。
【図６】上記実施の形態におけるファイル移行処理の流れを示す図である。
【図７】上記実施の形態におけるメンバ登録処理の流れを示す図である。
【図８】上記実施の形態における要求処理手段１３１におけるＬＯＯＰＵＰ要求処理の流れを示す図である。
【図９】上記実施の形態における要求処理手段１３１におけるＣＲＥＡＴＥ要求処理の流れを示す図である。
【図１０】上記実施の形態における要求処理手段１３１におけるＲＥＡＤ要求処理の流れを示す図である。
【図１１】上記実施の形態における要求処理手段１３１におけるＭＫＤＩＲ要求処理の流れを示す図である。
【図１２】上記実施の形態における管理者によるネットワークストレージ増設手順を示す図である。
【図１３】上記実施の形態におけるユーザインタフェース画面を示す図である。
【図１４】上記実施の形態における増設処理の流れを示す図である。
【図１５】上記実施の形態における管理者によるネットワークストレージリプレース手順を示す図である。
【図１６】上記実施の形態におけるリプレース処理の流れを示す図である。
【図１７】変形例１におけるネットワークストレージシステムの構成を示す図である。
【図１８】上記変形例１におけるグループテーブル１７００の構成を示す図である。
【図１９】上記変形例１におけるディレクトリツリー複写処理の流れを示す図である。
【図２０】変形例２におけるネットワークストレージシステムの構成を示す図である。
【図２１】上記変形例２における識別処理の流れを示す図である。
【図２２】上記変形例２における増設処理Ａの流れを示す図である。
【図２３】上記変形例２における増設処理Ｂの流れを示す図である。
【図２４】上記変形例２における増設処理Ａの対象となるネットワークストレージシステムの概略構成と増設手順の概要を示す図である。
【図２５】上記変形例２における増設処理Ｂの対象となるネットワークストレージシステムの概略構成と増設手順の概要を示す図である。
【図２６】上記変形例２における増設処理Ｃの対象となるネットワークストレージシステムの概略構成と増設手順の概要を示す図である。
【符号の説明】
１００〜１０１…クライアント、１０２…ネットワーク、１０３…設置済ネットワークストレージ、１０４…新ネットワークストレージ、１１０…ネットワークインタフェース、１１１…リモート制御手段、１１２…ストレージ装置、１１３…管理手段、１２０…ネットワークインタフェース、１２１…リモート制御手段、１２２…ストレージ装置、１２３…仮想一元化装置、１３０…管理手段、１３１…要求処理手段、１３２…設定情報読み出し手段、１３３…ディレクトリツリー複写手段、１３４…設定情報入れ替え手段、１３５…メンバ登録手段、１３６…ファイル移行手段、１３７…マッピング手段、１４０…ホストテーブル、１４１…一元管理ディレクトリ、２００…ファイルハンドル、１７００…グループテーブル、２０００…識別手段。
【図１】
2004046661.tif 000003
【図２】
2004046661.tif 000004
【図３】
2004046661.tif 000005
【図４】
2004046661.tif 000006
【図５】
2004046661.tif 000007
【図６】
2004046661.tif 000008
【図７】
2004046661.tif 000009
【図８】
2004046661.tif 000010
【図９】
2004046661.tif 000011
【図１０】
2004046661.tif 000012
【図１１】
2004046661.tif 000013
【図１２】
2004046661.tif 000014
【図１３】
2004046661.tif 000015
【図１４】
2004046661.tif 000016
【図１５】
2004046661.tif 000017
【図１６】
2004046661.tif 000018
【図１７】
2004046661.tif 000019
【図１８】
2004046661.tif 000020
【図１９】
2004046661.tif 000021
【図２０】
2004046661.tif 000022
【図２１】
2004046661.tif 000023
【図２２】
2004046661.tif 000024
【図２３】
2004046661.tif 000025
【図２４】
2004046661.tif 000026
【図２５】
2004046661.tif 000027
【図２６】
2004046661.tif 000028