(57)【特許請求の範囲】
【請求項１】
第１のサーバと、第２のサーバと、前記第１のサーバ及び前記第２のサーバに接続されるストレージ装置と、を備え、
前記ストレージ装置は、
前記第１のサーバからのアクセスが許可されている第１のファイルシステムが格納され、前記第１のサーバが認識する第１の論理ユニットに対応付けられた第１の論理デバイスと、
前記第２のサーバからのアクセスが許可されている第２のファイルシステムが格納され、前記第２のサーバが認識する第２の論理ユニットに対応付けられた第２の論理デバイスと、を備えたストレージシステムにおいて、
前記第１のファイルシステムを、前記第１のサーバから前記第２のサーバへマイグレーションする際、
前記第１のサーバは、
前記第１の論理ユニットを切断し、
前記第１の論理デバイスに第３の論理ユニットを対応付け、
前記第２のサーバへ前記第３の論理ユニットを認識するよう指示し、
前記第２のサーバは、
前記第３の論理ユニットを認識し、
前記第１のファイルシステムを前記第２のファイルシステムにマウントし、
前記第１のファイルシステムへのアクセスの許可対象を前記第１のサーバから前記第２のサーバに変更する
ことを特徴とするストレージシステムにおけるファイルシステムマイグレーション方法。
【請求項２】
請求項１に記載のストレージシステムにおけるファイルシステムマイグレーション方法において、
管理計算機が、前記第１のサーバから前記第２のサーバへの前記ファイルシステムのマイグレーション指示を行うことを特徴とするストレージシステムにおけるファイルシステムマイグレーション方法。
【請求項３】
請求項１に記載のストレージシステムにおけるファイルシステムマイグレーション方法において、
前記論理デバイスと論理ユニットとの関係が、前記論理デバイスを識別する名称と、前記論理デバイスが接続されたディスクコントローラのポートを識別するターゲット番号及びターゲット内での論理ユニット番号により関係付けられていることを特徴とするストレージシステムにおけるファイルシステムマイグレーション方法。
【請求項４】
請求項１に記載のストレージシステムにおけるファイルシステムマイグレーション方法において、
前記第１のサーバは、
前記第１の論理ユニットの切断処理の後、
論理デバイスマッピングテーブルと、サーバポートテーブルと、ゾーン管理テーブルとを用いて、前記ディスクサブシステムの論理デバイスとその論理デバイスを前記サーバで認識する論理ユニットとの関係を参照し、前記第１の論理デバイスと第３の論理ユニットの対応付けを設定することを特徴とするストレージシステムにおけるファイルシステムマイグレーション方法。
【請求項５】
請求項１に記載のストレージシステムにおけるファイルシステムマイグレーション方法において、
前記第１のファイルシステムを、前記第１のサーバから前記第２のサーバへマイグレーションする際に、
前記第１のファイルシステムのマイグレーション指示が、ディレクトリツリー管理テーブルのディレクトリツリー識別子を指定して行なわれることを特徴とするストレージシステムにおけるファイルシステムマイグレーション方法。
【請求項６】
請求項１に記載のストレージシステムにおけるファイルシステムマイグレーション方法において、
前記第１のファイルシステムを、前記第１のサーバから前記第２のサーバへマイグレーションする際に、
前記第１のサーバは、前記第１のサーバから前記第２のサーバへの前記第１のファイルシステムのマイグレーション指示を受けると、
マイグレーション対象の前記第１のファイルシステムの前記第１の論理ユニットの切断処理の後に、前記第１の論理デバイスと第３の論理ユニットの対応付けの設定の変更処理を行って、前記第２のサーバにマイグレーション指示を送信し、
前記マイグレーション指示を受けると、前記第２のサーバは、スキャン処理により新規に前記第３の論理ユニットを認識して、前記第１のファイルシステムの接続処理を行った後、前記第１のファイルシステムの全体または一部を管理するサーバの識別子を更新し、マイグレーション処理を終了することを特徴とするファイルシステムマイグレーション方法。
【請求項７】
第１のサーバと、第２のサーバと、前記第１のサーバ及び前記第２のサーバに接続されるストレージ装置と、を備えたストレージシステムにおいて、
前記ストレージ装置は、
前記第１のサーバからのアクセスが許可されている第１のファイルシステムが格納され、前記第１のサーバが認識する第１の論理ユニットに対応付けられた第１の論理デバイスと、
前記第２のサーバからのアクセスが許可されている第２のファイルシステムが格納され、前記第２のサーバが認識する第２の論理ユニットに対応付けられた第２の論理デバイスと、を備え、
前記第１のファイルシステムを、前記第１のサーバから前記第２のサーバへマイグレーションする際、
前記第１のサーバは、
前記第１の論理ユニットを切断し、
前記第１の論理デバイスに第３の論理ユニットを対応付け、
前記第２のサーバへ前記第３の論理ユニットを認識するよう指示し、
前記第２のサーバは、
前記第３の論理ユニットを認識し、
前記第１のファイルシステムを前記第２のファイルシステムにマウントし、
前記第１のファイルシステムへのアクセスの許可対象を前記第１のサーバから前記第２のサーバに変更する
ことを特徴とするストレージシステム。
【請求項８】
請求項７に記載のストレージシステムにおいて、
管理計算機が、前記第１のサーバから前記第２のサーバへの前記ファイルシステムのマイグレーション指示を行うことを特徴とするストレージシステム。
【請求項９】
請求項７に記載のストレージシステムにおいて、
前記論理デバイスと論理ユニットとの関係が、前記論理デバイスを識別する名称と、前記論理デバイスが接続されたディスクコントローラのポートを識別するターゲット番号及びターゲット内での論理ユニット番号により関係付けられていることを特徴とするストレージシステム。
【請求項１０】
ディレクトリツリー一覧表とマイグレートボタンを備えたディレクトリツリー一覧表示画面を表示する管理画面を備えており、
第１のサーバと、第２のサーバと、前記第１のサーバ及び前記第２のサーバに接続されるストレージ装置と、を備え、
前記ストレージ装置は、
前記第１のサーバからのアクセスが許可されている第１のファイルシステムが格納され、前記第１のサーバが認識する第１の論理ユニットに対応付けられた第１の論理デバイスと、
前記第２のサーバからのアクセスが許可されている第２のファイルシステムが格納され、前記第２のサーバが認識する第２の論理ユニットに対応付けられた第２の論理デバイスと、を備えたストレージシステムに対して、
前記第１のファイルシステムを、前記第１のサーバから前記第２のサーバへマイグレーションする際、
前記管理画面に表示された前記ディレクトリツリー一覧表のディレクトリツリーの選択操作に応じて、マイグレーション対象のファイルシステムを指定し、前記マイグレートボタンの操作に応じて、前記ストレージシステムに対するマイグレーション指示を行うことを特徴とする管理計算機。
【請求項１１】
請求項１０に記載の管理計算機において、
前記管理画面に表示された前記ディレクトリツリー一覧表示画面に作成ボタンと削除ボタンとを備えており、前記作成ボタンの操作に応じて、管理画面上でディレクトリツリーを新規作成し、前記削除ボタンの操作に応じて、選択されたディレクトリツリーを削除することを特徴とする管理計算機。
【請求項１２】
請求項１０に記載の管理計算機において、
前記マイグレートボタンの操作に応じて、前記管理画面に、名称表示欄とサーバ入力欄と実行ボタンと取り消しボタンを備えたマイグレーション操作画面が表示され、前記名称表示欄に表示されたディレクトリツリーに対して、前記実行ボタンの操作に応じて、前記第２のサーバにマイグレーションする処理が開始され、前記取り消しボタンの操作に応じて、前記マイグレーション操作画面が閉じられて、マイグレーション操作が中止され、ディレクトリツリー一覧表示画面が再び表示されることを特徴とする管理計算機。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のファイルサーバまたはネットワークストレージ（Network  Attached  Storage、ＮＡＳ）に関し、複数のファイルサーバまたはネットワークストレージ（Network  ttached  Storage、ＮＡＳ）におけるファイルシステムマイグレーションに関する。
【背景技術】
【０００２】
ストレージシステムをネットワークに接続し、ネットワークに接続された計算機の共有ディスクとして使用されるネットワークストレージ（Network  Attached  Storage、ＮＡＳ）が提案されている。ＮＡＳは、ネットワークインターフェース等を含むサーバと、データを格納するディスクドライブとによって構成される。
【０００３】
例えば、特許文献１には、複数のサーバを備え、各サーバがネットワークに接続されるクラスタ構成のＮＡＳが開示されている。特許文献１に記載されたシステムにおいて、ネットワークエレメント、スイッチングエレメント及びディスクエレメントが、ＮＡＳのサーバに相当する。ネットワークエレメントを複数備え、それらのネットワークエレメントがファイルシステムを共有することができる。また、ディスクエレメントを複数備えることによって、ディスク単位でマイグレーションすることができる。また、各ネットワークエレメントからディスクエレメントの持つ全てのファイルシステムに対してアクセスを行なうことができる。そしてディスクエレメント間で、ファイルシステムを格納しているディスクのマイグレーションが行なわれた場合も、各ネットワークエレメントからはマイグレーションによる影響を受けることなく、全てのファイルシステムに対してアクセスを行なうことができる。
【０００４】
また、ネットワーク上に分散して存在するファイルにアクセスするためのファイルシステムの一つとして、ネットワークファイルシステム（ＮＦＳ）が提案されている。ＮＦＳの現時点の最新版であるＮＦＳｖ４（ＲＦＣ３５３０）（非特許文献１参照）によれば、ファイルシステムがサーバ間でマイグレーションされた場合、サーバは、クライアントからの当該ファイルシステムへのアクセスに対して、マイグレーション先の位置の情報を通知し、クライアントは、通知された位置情報に従って、マイグレーション先のファイルシステムにアクセスすることができる。
【特許文献１】米国特許第６６７１７７３号明細書
【非特許文献１】RFC3530，NFS  version4，P．58−61，IETF  Home  Page＜URL:http://www.ietf.org/home.html＞
【発明の開示】
【発明が解決しようとする課題】
【０００５】
サーバを持つクラスタ構成のＮＡＳにおいて、ファイルシステム（またはその一部）をマイグレーションする場合、ＮＡＳの各サーバが持つディスクのデバイス間で、ファイルデータのコピーを行なう必要があった。これにより、マイグレーションに長時間を要し、その間コピーを行なうための処理により、クライアントからのファイルアクセスの性能が劣化するという問題があった。
【０００６】
また、マイグレーション時にコピーを行なわないために、全てのデバイスを全てのサーバで共有させておき、マイグレーションによりそのデバイスにアクセスを行なうサーバを変更する方法が考えられる。しかし、この場合、全てのサーバがシステム内の全てのデバイスを認識する必要がある。１つのサーバで認識できるデバイス数には、サーバの資源の制約等から上限があり、この上限によりシステム内のデバイス数も制限されてしまうことになってしまう。
【課題を解決するための手段】
【０００７】
本発明のストレージシステムにおけるファイルシステムマイグレーション方法は、第１のサーバと、第２のサーバと、前記第１のサーバ及び前記第２のサーバに接続されるストレージ装置と、を備え、前記ストレージ装置は、前記第１のサーバからのアクセスが許可されている第１のファイルシステムが格納され、前記第１のサーバが認識する第１の論理ユニットに対応付けられた第１の論理デバイスと、前記第２のサーバからのアクセスが許可されている第２のファイルシステムが格納され、前記第２のサーバが認識する第２の論理ユニットに対応付けられた第２の論理デバイスと、を備えたストレージシステムにおいて、前記第１のファイルシステムを、前記第１のサーバから前記第２のサーバへマイグレーションする際、前記第１のサーバは、前記第１の論理ユニットを切断し、前記第１の論理デバイスに第３の論理ユニットを対応付け、前記第２のサーバへ前記第３の論理ユニットを認識するよう指示し、前記第２のサーバは、前記第３の論理ユニットを認識し、前記第１のファイルシステムを前記第２のファイルシステムにマウントし、前記第１のファイルシステムへのアクセスの許可対象を前記第１のサーバから前記第２のサーバに変更することを特徴とする。
また、本発明のストレージシステムは、第１のサーバと、第２のサーバと、前記第１のサーバ及び前記第２のサーバに接続されるストレージ装置と、を備えたストレージシステムにおいて、前記ストレージ装置は、前記第１のサーバからのアクセスが許可されている第１のファイルシステムが格納され、前記第１のサーバが認識する第１の論理ユニットに対応付けられた第１の論理デバイスと、前記第２のサーバからのアクセスが許可されている第２のファイルシステムが格納され、前記第２のサーバが認識する第２の論理ユニットに対応付けられた第２の論理デバイスと、を備え、前記第１のファイルシステムを、前記第１のサーバから前記第２のサーバへマイグレーションする際、前記第１のサーバは、前記第１の論理ユニットを切断し、前記第１の論理デバイスに第３の論理ユニットを対応付け、前記第２のサーバへ前記第３の論理ユニットを認識するよう指示し、前記第２のサーバは、前記第３の論理ユニットを認識し、前記第１のファイルシステムを前記第２のファイルシステムにマウントし、前記第１のファイルシステムへのアクセスの許可対象を前記第１のサーバから前記第２のサーバに変更することを特徴とする。
また、本発明の管理計算機は、ディレクトリツリー一覧表とマイグレートボタンを備えたディレクトリツリー一覧表示画面を表示する管理画面を備えており、第１のサーバと、第２のサーバと、前記第１のサーバ及び前記第２のサーバに接続されるストレージ装置と、を備え、前記ストレージ装置は、前記第１のサーバからのアクセスが許可されている第１のファイルシステムが格納され、前記第１のサーバが認識する第１の論理ユニットに対応付けられた第１の論理デバイスと、前記第２のサーバからのアクセスが許可されている第２のファイルシステムが格納され、前記第２のサーバが認識する第２の論理ユニットに対応付けられた第２の論理デバイスと、を備えたストレージシステムに対して、前記第１のファイルシステムを、前記第１のサーバから前記第２のサーバへマイグレーションする際、前記管理画面に表示された前記ディレクトリツリー一覧表のディレクトリツリーの選択操作に応じて、マイグレーション対象のファイルシステムを指定し、前記マイグレードボタンの操作に応じて、前記ストレージシステムに対するマイグレーション指示を行うことを特徴とする。
【発明の効果】
【０００８】
本発明によれば、複数のサーバを備えるストレージシステムにおいて、ファイルシステム、またはその一部のディレクトリツリーをコピーせずにマイグレーションすることが可能となる。さらに、マイグレーション時に新規にデバイスを認識させることにより、１つのサーバで認識可能なデバイス数に制限されず、大規模なシステムを構築することが可能となる。
【発明を実施するための最良の形態】
【０００９】
以下、図面を参照して、本発明の実施例１を説明する。
【実施例１】
【００１０】
図１は、本発明の実施例１のストレージシステムの構成を示すブロック図である。
実施例１のストレージシステム１００は、ＬＡＮ１６０を介して、管理計算機１４０及びクライアント１５０と接続される。
【００１１】
管理計算機１４０は、ストレージシステム１００内のファイルシステムの作成、ファイルシステムのマウント及びマイグレーション等をサーバ１１０に指示したり、ディスクサブシステム１２０やスイッチ１３０に設定変更を指示したりする計算機である。
【００１２】
クライアント１５０は、ストレージシステム１００のファイルにアクセスする計算機である。具体的には、クライアント１５０は、ストレージシステム１００にファイルを書き込み、又は、ストレージシステム１００からファイルを読み出す。このとき、ストレージシステムのファイルシステムが使用される。
【００１３】
図１には、二つのクライアント（１５０Ａ及び１５０Ｂ）を示すが、任意の数のクライアント１５０がＬＡＮ１６０に接続され、ストレージシステム１００にアクセスすることができる。ＬＡＮ１６０は、例えば、ＴＣＰ／ＩＰ等のプロトコルで通信するネットワークである。
【００１４】
ストレージシステム１００は、いわゆるネットワークストレージ（Network  Attached  Storage、ＮＡＳ）である。ストレージシステム１００は、サーバ１１０、ディスクサブシステム１２０及びこれらを相互に接続するスイッチ１３０によって構成される。スイッチ１３０は、例えばファイバーチャネル（ＦＣ）のスイッチ１３０であり、複数存在し、ストレージエリアネットワーク（ＳＡＮ）を構成していてもよい。また、スイッチ１３０は、ＬＡＮのスイッチやストレージシステム専用のスイッチであってもよい。
サーバ１１０は、クライアント１５０からのアクセス要求に従ってディスクサブシステム１２０にアクセスする。
【００１５】
ストレージシステム１００は、複数のサーバ１１０を備える。図１には、二つのサーバ（１１０Ａ、１１０Ｂ）を示す。ストレージシステム１００は、さらに多くのサーバ１１０を備えてもよい。サーバ１１０は、ＮＡＳヘッド又はＮＡＳノードとも呼ばれる。なお、複数のサーバ１１０によりクラスタ構成されても良い。
サーバ１１０Ａは、ネットワークインターフェース１１１Ａ、ＣＰＵ１１２Ａ、ローカルメモリ１１３Ａ及びアダプタ１１６Ａによって構成される。ネットワークインターフェース１１１Ａは、ＬＡＮ１６０に接続され、管理計算機１４０及びクライアント１５０と通信するインターフェースである。ＣＰＵ１１２Ａは、サーバ１１０Ａの動作を制御するプロセッサである。具体的には、ＣＰＵ１１２Ａは、ローカルメモリ１１３Ａに格納されたプログラムを実行する。
【００１６】
ローカルメモリ１１３Ａは、例えば、半導体メモリであり、ＣＰＵ１１２Ａが実行するプログラム及びＣＰＵ１１２Ａによって参照されるデータを格納する。具体的には、ローカルメモリ１１３Ａには、プログラムであるサーバソフトウエアの他、後述するマウントポイント管理テーブル４００や、ディレクトリツリー管理テーブル５００、論理デバイスマッピングテーブル６００、ゾーン管理テーブル７００等が格納される。
アダプタ１１６Ａは、スイッチ１３０に接続され、ディスクサブシステム１２０と通信するインターフェースである。
【００１７】
サーバ１１０Ｂは、サーバ１１０Ｂと同様、ネットワークインターフェース１１１Ｂ、ＣＰＵ１１２Ｂ、ローカルメモリ１１３Ｂ及びアダプタ１１６Ｂによって構成される。これらは、それぞれ、ネットワークインターフェース１１１Ａ、ＣＰＵ１１２Ａ、ローカルメモリ１１３Ａ及びアダプタ１１６Ａと同様であるため、説明を省略する。
さらに多くのサーバ１１０が設けられる場合も、各サーバ１１０の構成は、サーバ１１０Ａと同様である。
【００１８】
ストレージシステム１００が複数のサーバ１１０を備える場合、これらのサーバ１１０は、サーバ間通信路１３５によって相互に接続される。サーバ１１０は、サーバ間通信路１３５を経由して相互に通信することができる。具体的には、一つのサーバ１１０のマウントポイント管理テーブル４００等の内容が更新された場合、その更新の内容がサーバ間通信路１３５を経由して他のサーバ１１０に送信される。送信先のサーバ１１０は、受信した更新の内容をそのサーバ１１０内のマウントポイント管理テーブル４００等に反映する。
【００１９】
なお、実施例１では、図１に示すように、スイッチ１３０及びＬＡＮ１６０と独立したサーバ間通信路１３５が設けられる。しかし、サーバ１１０は、スイッチ１３０又はＬＡＮ１６０を経由して相互に通信してもよい。あるいは、サーバ１１０は、ディスクサブシステム１２０のディスクキャッシュ１２２を使用して相互に通信してもよい。すなわち、一つのサーバ１１０のマウントポイント管理テーブル４００が更新されると、そのサーバ１１０は、更新の内容をディスクキャッシュ１２２に書き込む。他のサーバ１１０は、ディスクキャッシュ１２２に書き込まれた更新の内容を読み出し、各々のマウントポイント管理テーブル４００を更新する。サーバ１１０が上記のいずれの経路で通信しても、本発明を実施することができる。
【００２０】
ディスクサブシステム１２０は、ディスクコントローラ１２１、ディスクキャッシュ１２２及びディスクドライブ１２３によって構成される。
ディスクコントローラ１２１は、スイッチ１３０に接続される一つ以上のポート１２５を備え、サーバ１１０と通信し、ディスクサブシステム１２０を制御する。具体的には、ディスクコントローラ１２１は、スイッチ１３０を介してサーバ１１０と通信し、サーバ１１０からの要求に従ってディスクドライブ１２３にデータを書き込み、又は、ディスクドライブ１２３からデータを読み出す。
ディスクキャッシュ１２２は、例えば、半導体メモリであり、ディスクドライブ１２３に書き込まれるデータ又はディスクドライブ１２３から読み出されたデータを一時的に格納する。
【００２１】
ディスクドライブ１２３は、データを格納するハードディスクドライブである。ディスクサブシステムには、任意の数のディスクドライブ１２３が設けられる。これらのディスクドライブ１２３は、ＲＡＩＤを構成してもよい。図１には、４個のディスクドライブ（
１２３Ａ〜１２３Ｄ）を示す。
【００２２】
ディスクドライブ１２３の記憶領域は、任意の数の論理デバイス（ＬＤＥＶ）１２４に分割される。ＬＤＥＶ１２４は、ディスクコントローラ１２１によって論理的なディスクドライブとして扱われる領域である。ディスクドライブ１２３がＲＡＩＤを構成する場合、図１に示すように、一つのＬＤＥＶ１２４は、複数のディスクドライブの記憶領域によって構成されてもよい。各ＬＤＥＶ１２４の大きさは任意である。
【００２３】
図１には、例として、４個のＬＤＥＶ（１２４Ａ〜１２４Ｄ）を示す。各ＬＤＥＶには、ＬＤＥＶ識別子（ＩＤ）が付与される。図１の例において、ＬＤＥＶ１２４Ａ〜ＬＤＥＶ１２４ＤのＩＤは、それぞれ、ＬＤＥＶ０〜ＬＤＥＶ３である。以下、各ＬＤＥＶ１２４をＬＤＥＶＩＤ（ＬＤＥＶ０〜ＬＤＥＶ３）を用いて表記する。
【００２４】
ストレージシステム１００は、複数のディスクサブシステム１２０を含んでもよい。その場合、各ディスクサブシステム１２０は、スイッチ１３０に接続され、各サーバ１１０は、スイッチ１３０を経由して、いずれのディスクサブシステム１２０にもアクセスすることができる。
【００２５】
スイッチ１３０やディスクサブシステム１２０には、それぞれ管理用ポート（１３１、１２６）があり、ＬＡＮ１６０に接続されている。管理計算機１４０からＬＡＮ１６０を経由し、これらの管理用ポート（１３１、１２６）からスイッチ１３０とディスクサブシステム１２０それぞれの設定を参照、更新することが可能である。
図１３に、管理計算機１４０の構成図を示す。
管理計算機１４０は、少なくとも、入力装置１３０１、管理画面１３０２、およびディスク１３０３を含む。入力装置１３０１は、例えば、キーボードやポインティングデバイスである。管理画面に表示される内容及びポインティングデバイスによる操作については、後で詳細に説明する（図１０及び図１１参照）。
管理計算機１４０は、ＣＰＵ１３１０、ローカルメモリ１３１１を持ち、ディスク１３０３からサーバ１１０等と通信を行なうためのプログラムや、必要に応じてディスクサブシステムの管理を行なうためのプログラム等をローカルメモリ１３１１上に読み出し、ＣＰＵ１３１０で実行する。また、サーバ１１０やディスクサブシステム１２０との通信用にネットワークインターフェース１３１２を持つ。
【００２６】
図２は、本発明の実施例１のサーバソフトウエア２００の構成の説明図である。
サーバソフトウエア２００は、ＣＰＵ１１２によって実行されるプログラムであるネットワーク処理部２０１、ファイルシステム処理部２０２、ディスクアクセス部２０３、サーバ管理処理部２０５、サーバ間通信処理部２０６及びマイグレーション処理部２０７からなる。
ネットワーク処理部２０１は、ＬＡＮ１６０を介した管理計算機１４０及びクライアント１５０との通信を制御するプログラムである。
【００２７】
ファイルシステム処理部２０２は、クライアント１５０からファイルシステム２０２内のファイルへのアクセス要求を処理するプログラムである。具体的には、例えば、管理計算機１４０からの指示に従って、ファイルシステムを新規作成する。また、例えば、クライアント１５０からディレクトリ名又はファイル名を指定して、ファイルの識別子であるファイルハンドル取得要求を受けると、名前解決をして、ファイルハンドルを返す。また、例えば、クライアント１５０から受けたディレクトリ名又はファイル名が、他のサーバ１１０が管理するディレクトリツリーであった場合には、管理するサーバ１１０のＩＤをクライアントに返す。
【００２８】
ディスクアクセス部２０３は、クライアント１５０からのアクセス要求に従って、ファイルシステム２０２内のデータへのアクセスを実行するプログラムである。
サーバ管理処理部２０５は、管理計算機１４０と通信し、ＮＡＳの設定をするプログラムである。例えば、サーバ管理処理部２０５は、管理計算機１４０からファイルシステムの新規作成の指示を受けると、その指示をファイルシステム処理部２０２に伝え、ファイルシステムの新規作成を実行させる。また、管理計算機１４０からマイグレーションの指示を受けると、その指示をマイグレーション処理部２０７に伝え、マイグレーションを実行させる。
【００２９】
サーバ間通信処理部２０６は、サーバ間通信路１３５を経由したサーバ１１０間の通信を制御するプログラムである。例えば、サーバ間通信処理部２０６は、マウントポイント管理テーブル４００の内容が更新されたとき、その更新された内容を他のサーバ１１０に送信する。
【００３０】
マイグレーション処理部２０７は、マイグレーションを実行するプログラムである。具体的には、後で詳細に説明する（図８参照）。
【００３１】
図３は、本発明の実施例１においてクライアント１５０に提供される名前空間の説明図である。図３には、説明のために必要な最小限のディレクトリ及びファイルを示すが、各ファイルシステム２０２は、さらに多くのディレクトリ及びファイルを含んでもよい。
図３において、ｄｔ０は、最上位ディレクトリの下にディレクトリ「df11」及び「df12」を含み、ディレクトリ「df11」の下にファイル「file1」を含む。
【００３２】
図３において、ルートディレクトリ「/」及びディレクトリ「dirc」は、ｄｔ０〜ｄｔ３をマウントして共通の名前空間を提供するために設けられ、ルートツリーと呼ぶ。
ｄｔ０からｄｔ３は、それぞれファイルシステムまたは、ファイルシステムの一部のディレクトリツリーを表す。
【００３３】
ｄｔ０は、「/ dira」の下にマウントされている。したがって、ｄｔ０の最上位ディレクトリは、ディレクトリ「/」（ルートディレクトリ）の下のディレクトリ「dira」である。このとき、ファイル「file1」のパスは、「/dira/df11/file1」である。
【００３４】
同様にして、ｄｔ１は、最上位ディレクトリの下にディレクトリ「df21」及び「df22」を含み、ディレクトリ「df21」の下にファイル「file2」を含む。ｄｔ１は、「/dirb」の下にマウントされている（図４参照）。したがって、ｄｔ１の最上位ディレクトリは、ルートディレクトリの下のディレクトリ「dirb」である。このとき、ファイル「file2」のパスは、「/dirb/df21/file2」である。
【００３５】
ｄｔ２は、最上位ディレクトリの下にディレクトリ「df31」及び「df32」を含む。ｄｔ２は、「/dirc/subdir1」の下にマウントされている。したがって、ｄｔ２の最上位ディレクトリは、ルートディレクトリの下のディレクトリ「dirc」のさらに下のディレクトリ「subdir1」である。
【００３６】
ｄｔ３は、最上位ディレクトリの下にディレクトリ「df41」を含む。ｄｔ３は、「/dirc/subdir2」の下にマウントされている。したがって、ｄｔ３の最上位ディレクトリは、ルートディレクトリの下のディレクトリ「dirc」のさらに下のディレクトリ「subdir2」である。
【００３７】
各サーバ１１０のマウントポイント管理テーブル４００の内容が同一であるため、各サーバ１１０は、同一の名前空間（図３）をクライアント１５０に提供する。
各サーバ１１０は、ルートファイルシステム内の名前解決と、そのサーバ１１０が管理するディレクトリツリー内の名前解決をすることができる。
【００３８】
例えば、サーバ１１０Ａがｄｔ０を管理し、サーバ１１０Ｂがｄｔ１を管理する場合において、サーバ１１０Ｂが「/dira/df11/file1」へのアクセス要求を受けたとき、サーバ１１０Ｂは、ルートディレクトリの名前解決をすることはできるが、ディレクトリ「dira」の名前解決をすることはできない。このとき、サーバ１１０Ｂは、マウントポイント管理テーブル４００を参照して、ディレクトリ「dira」がサーバ１１０Ａの管理下にあることを、アクセス要求を発行したクライアント１５０に通知する。通知を受けたクライアント１５０は、サーバ１１０Ａにアクセス要求を発行することにより、「/dira/df11/file1」へアクセスすることが可能となる。
【００３９】
上記の例では、クライアント１５０から、サーバ１１０Ｂが管理するディレクトリツリー以外のファイルに対する名前解決要求を受け付けたとき、そのディレクトリツリーを管理するサーバ１１０Ａをクライアント１５０に通知したが、通知する変わりに、サーバＢがサーバＡにクライアント１５０からの名前解決要求を転送し、サーバＡで名前解決を行なってもよい。
【００４０】
図４は、本発明の実施例１のマウントポイント管理テーブル４００の説明図である。
マウントポイント管理テーブル４００は、ディスクサブシステム１２０に含まれるファイルシステム、またはファイルシステムの一部であるディレクトリツリーのマウント状況を管理するテーブルである。マウントポイント管理テーブル４００は、Ｄ−ｔｒｅｅ名４０１、パス４０２及びサーバＩＤ４０３を含む。
【００４１】
マウントポイント管理テーブル４００の一つのエントリ（行）が、一つのディレクトリツリーに対応する。Ｄ−ｔｒｅｅ名４０１は、マウントされているディレクトリツリーのＩＤである。図４の例では、４個のディレクトリツリー（ｄｔ０〜ｄｔ３）がマウントされている。
【００４２】
パス４０２は、各ディレクトリツリーのマウントポイントを示す。図４の例では、ｄｔ０は、「/dira」の下にマウントされている。同様にして、ｄｔ１、ｄｔ２及びｄｔ３は、それぞれ、「/dirb」、「/dirc/subdir1」及び「/dirc/subdir2」の下にマウントされている。各ファイルシステムが図４のようにマウントされた場合に提供される名前空間は、図３で説明した通りである。
【００４３】
サーバＩＤ４０３は、各ディレクトリツリーを管理するサーバ１１０の一意な識別子である。各サーバ１１０は、そのサーバ１１０が管理するディレクトリツリーのみにアクセスすることができる。すなわち、クライアント１５０は、ファイルにアクセスする場合、そのファイルを含むディレクトリツリーを管理するサーバ１１０にアクセス要求を発行する必要がある。
【００４４】
図４の例において、「ｓｉｄ１」は、サーバ１１０ＡのＩＤであり、「ｓｉｄ２」は、サーバ１１０ＢのＩＤである。すなわち、ｄｔ０及びｄｔ１がサーバ１１０Ａに管理され、ｄｔ２及びｄｔ３がサーバ１１０Ｂに管理されている。
【００４５】
ディレクトリツリーがマイグレーションされると、サーバＩＤ４０３の内容が更新される。例えば、ｄｔ０がサーバ１１０Ａからサーバ１１０Ｂにマイグレーションされると、ｄｔ０のサーバＩＤ４０３は、「ｓｉｄ１」から「ｓｉｄ２」に更新される。さらに、更新された内容が、サーバ間通信路１３５を経由して、ストレージシステム１００内の全てのサーバ１１０に通知される。この通知を受けたサーバ１１０は、通知に従って、マウントポイント管理テーブル４００を更新する。その結果、全てのサーバ１１０のマウントポイント管理テーブル４００の内容が同一になる。
【００４６】
図５は、本発明の実施例１のディレクトリツリー管理テーブル５００の説明図である。
ディレクトリツリー管理テーブルは、ストレージシステム１００がクライアントに提供する名前空間（図３）に含まれるディレクトリツリーを管理するテーブルであり、各ディレクトリツリーが格納されるディスクサブシステム１２０の論理デバイス（ＬＤＥＶ）１２４を示す。
【００４７】
Ｄ−ｔｒｅｅ名５０１は、ディレクトリツリーのＩＤである。デバイス名５０２は、そのＩＤのディレクトリツリーを格納しているディスクサブシステム内のＬＤＥＶ１２４の名称（ＩＤ）を示す。図５の例では、ディレクトリツリーｄｔ０に対して、デバイス名ｌｄｅｖ０、ｌｄｅｖ１が示されている。これは、ディレクトリツリーｄｔ０が二つのＬＤＥＶ１２４（ｌｄｅｖ０、ｌｄｅｖ１）に格納されていることを示す。
【００４８】
なお、ディレクトリツリー管理テーブル５００のデバイス名５０２として、ディスクサブシステム１２０内のＬＤＥＶ１２４の名称を使用したが、ストレージシステム１００内に複数のディスクサブシステム１２０が存在する場合は、それらの複数のディスクサブシステム１２０内で一意なＬＤＥＶ１２４の名称を使用するか、ディスクサブシステム１２０を識別するディスクサブシステム名（図示なし）とそのディスクサブシステム１２０内で一意なＬＤＥＶ１２４の名称をあわせてデバイス名５０２とする必要がある。
【００４９】
図６は、本発明の実施例１のの論理デバイスマッピングテーブル６００の説明図である。
論理デバイスマッピングテーブル６００は、サーバ１１０がスイッチ１３０を経由してディスクサブシステム１２０内のあるＬＤＥＶ１２４に対して更新や参照の要求を発行する時に、対象となるＬＤＥＶを指定するための方法を示している。
【００５０】
論理デバイスマッピングテーブル６００は、デバイス名６０１と、ターゲット６０２、ＬＵＮ６０３を含む。
デバイス名６０１は、対象となるＬＤＥＶ１２４を識別する名称（ＩＤ）である。
【００５１】
ターゲット６０２は、対象となるＬＤＥＶ１２４が接続されたディスクコントローラ１２１のポート１２５を識別する名称（ＩＤ）である。サーバ１１０とディスクサブシステム１２０間のスイッチ１３０がＦＣである場合には、ターゲットは、ＷＷＮ（ワールドワイドネーム）やポートＩＤである。
ＬＵＮ６０３は、ターゲット６０２内で論理ユニット（ＬＤＥＶ１２４に相当する）を識別する番号（論理ユニット番号）である。
【００５２】
デバイス名６０１は、ＬＤＥＶ１２４をディスクサブシステム１２０が識別するためのＩＤであり、サーバ１１０は、ディスクコントローラ１２１のあるポート１２５からアクセス可能な論理ユニットとして、ターゲット６０２とＬＵＮ６０３により識別することができる。
【００５３】
ディスクサブシステム１２０の設定により、それぞれのＬＤＥＶ１２４を、ディスクコントローラ１２１のあるポート１２５のあるＬＵＮにマッピングすることができる。この設定は、管理計算機１４０から管理用ポート１２６を経由してディスクサブシステムに対して行うことが可能である。また、サーバ１１０からネットワークインターフェース１１１を使用して管理用ポート１２６経由で行うことや、サーバ１１０からスイッチ１３０経由で行うことも可能である。
【００５４】
管理計算機１４０またはサーバ１１０は、図６に示す論理デバイスマッピングテーブル６００を持ち、このテーブルに従って、ディスクサブシステム１２０に対して、それぞれのＬＤＥＶ１２４を指定のターゲット６０２のＬＵＮ６０３にマッピングするよう設定を行う。
【００５５】
図７は、本発明の実施例１のサーバが持つポートを示すサーバポートテーブル７００の説明図である。サーバＩＤ７０１は、サーバ１１０の識別子である。サーバ１１０が同じ場合、マウントポイント管理テーブル４００のサーバＩＤ４０３と同じＩＤである。サーバポート７０２は、各サーバ１１０が持つポート１２５を示す識別子であり、スイッチ１３０がＦＣである場合には、ＷＷＮ（ワールドワイドネーム）やポートＩＤである。このサーバポートテーブル７００により、あるサーバ１１０がスイッチ１３０に接続するポート１２５がどのポート１２５であるかを知ることができる。
【００５６】
図８は、本発明の実施例１のゾーン管理テーブル８００の説明図である。ゾーン管理テーブル８００は、スイッチ１３０のゾーニングの設定を行うための管理情報である。ゾーニングにより、スイッチ１３０に複数のゾーンを形成し、スイッチ１３０を経由してサーバ１１０とディスクサブシステム１２０が通信を行うポート１２５の範囲を限定することができる。
【００５７】
ゾーン管理テーブル８００は、ゾーン名８０１とメンバ８０２を含む。ゾーン名８０１は、スイッチ１３０に設定される複数のゾーンを識別するＩＤである。メンバ８０２は、そのゾーンに属するポート１２５を識別するＩＤである。メンバは、論理デバイスマッピングテーブル６００のターゲット６０２と同様に、スイッチ１３０がＦＣである場合には、ターゲットは、ＷＷＮ（ワールドワイドネーム）やポートＩＤである。
【００５８】
ゾーニングにより、ゾーンに設定されたメンバ８０２のポート１２５間のみに通信範囲を限ることができ、サーバ１１０がそれ以外のポート１２５を認識することがなくなる。
ゾーニングの設定は、スイッチ１３０に対して行うものであり、先のディスクサブシステムの設定と同様、管理計算機１４０やサーバ１１０から、管理用ポート１３１経由または、サーバ１１０からアダプタ１１６経由でスイッチ１３０に対して行うことができる。
【００５９】
図９は、本発明の実施例１において実行される、サーバ間のディレクトリツリーのマイグレーション処理のフローチャートである。
マイグレーション処理は、管理計算機１４０からの開始指示（ステップ９００）により開始される。マイグレーション開始指示は、例えばディレクトリツリーとマイグレーション先のサーバ１１０を指定して、マイグレーション元のサーバ１１０に対して行われる。図４の例において、ｄｔ１をマイグレーションする場合、ｓｉｄ１のサーバ１１０に対し、ｄｔ１をｓｉｄ２のサーバ１１０にマイグレートするよう指示を出す。以下このマイグレーションを行う場合を例に説明を行う。
【００６０】
マイグレーション開始指示を受けたサーバ１１０は、ステップ９０１で、指定されたディレクトリツリーｄｔ１の切り離し処理を行う。切り離し処理では、ファイルシステム処理部２０２が持っているｄｔ１に関するディスクサブシステム１２０に未反映なデータ（ダーティデータ）を書き出す処理や、ディスクアクセス部２０３が認識している論理ユニットの切断処理等が行われる。切断が行われる論理ユニットは、図５のディレクトリツリー管理テーブル５００が示すとおり、ｄｔ１を格納しているＬＤＥＶ１２４（ｌｄｅｖ２）である。これは、図６に示す論理デバイスマッピングテーブル６００により、ターゲットｔ０のＬＵ２であることが分かる。このようにサーバ１は、マウントポイント管理テーブル４００と、ディレクトリツリー管理テーブル５００、論理デバイスマッピングテーブル６００を参照し、ｄｔ１を格納している論理ユニットを判断し、その切断を行う。
【００６１】
ディレクトリツリーの切り離し後、ディスクサブシステム１２０に対して設定変更を行う（ステップ９０２）。設定変更は、前述の通り管理計算機１４０から行ってもよいし、サーバ１１０から行ってもよい。
【００６２】
ディスクサブシステム１２０への設定は、論理デバイスマッピングテーブル６００と、サーバポートテーブル７００、ゾーン管理テーブル８００により、例えばターゲットｔ１のＬＵ３に変更する（サーバポートテーブル７００により、ｓｉｄ２のサーバのサーバポート７０２がｈ１であり、ゾーン管理テーブル８００より、ｈ１と同一のゾーン８０１であるzone1のメンバ８０２がｔ１であるため）。またこの変更にあわせて、論理デバイスマッピングテーブル６００の更新を行う。
【００６３】
ステップ９０３のスイッチ設定変更は、スイッチ１３０に対してゾーニングの変更等が必要となる場合について行う。ゾーニングの変更は、ディレクトリツリーｄｔ１をｓｉｄ１からｓｉｄ２のサーバ１１０へマイグレーションさせる場合には必要ないが、図８のゾーンの例で、メンバｈ５のポート１２５につながったサーバ１１０（サーバポートテーブル７００よりsid4）にマイグレーションさせる場合は、ｚｏｎｅ４にｔ０を追加する等の変更が必要となる。
【００６４】
スイッチ設定変更は、上記のようなゾーニングの変更の他、あるポートに対して特定のＬＵＮの論理ユニットのみへのアクセスを許可するＬＵＮマスキング等も行なう必要がある。図７のｚｏｎｅ３の例では、サーバが接続される二つのポートｈ３とｈ４が同じゾーンに属している。このような場合、ｔ５からアクセス可能な論理ユニットに対してＬＵＮマスキングを行い、ｈ３、ｈ４それぞれからアクセス可能な論理ユニットを分割する。
【００６５】
ステップ９０４は、ｓｉｄ２で表されるマイグレーション先のサーバ１１０で行なう処理である。この処理の開始を指示するために、ｓｉｄ１のサーバ１１０から、サーバ間通信路を通してｓｉｄ２のサーバ１１０へ通信が行なわれる。また、この処理の指示は、ｓｉｄ１のサーバ１１０からではなく、管理計算機１４０から行なわれる場合もある。
【００６６】
ステップ９０４のデバイスの認識は、ｓｉｄ２のサーバ１１０が接続されたポートｈ１に対して、全てのアクセス可能な論理ユニットを探すスキャン処理等により行なわれる。このデバイス認識処理により、例えばｓｉｄ２のサーバ１１０は、新たにターゲットｔ１のＬＵ３を認識する。
【００６７】
デバイスの認識後、マイグレーション先のサーバ１１０では、ディレクトリツリーの接続処理（ステップ９０５）を行なう。ディレクトリツリーの接続処理９０５は、ｄｔ１のディレクトリツリーを、ｓｉｄ２のサーバ２のルートツリーの「/dirb」にマウントすることにより行なう。
【００６８】
ディレクトリツリーの接続後、ネームスペース情報の更新処理（ステップ９０６）を行なう。この例の場合、ネームスペース情報の更新処理では、マウントポイント管理テーブル４００のｄｔ１に関するエントリのサーバＩＤ４０３をｓｉｄ１からｓｉｄ２へ変更する。この変更により、以降ｄｔ１に対するファイル要求は全て、ｓｉｄ２のサーバ１１０で行なう。
最後に管理計算機１４０に対してマイグレーション処理の終了を通知し（ステップ９０７）、マイグレーション処理を終了する。
なお、変形例として、ステップ９０２や、ステップ９０３での設定変更指示を管理計算機１４０から行なっても良い。
この場合、管理計算機１４０のローカルメモリ１３１１には、論理デバイスマッピングテーブル６００と、ゾーン管理テーブル７００、サーバポートテーブル１２００は、サーバ１１０ではなく、管理計算機１４０がディスク１３０３に格納する。管理計算機１４０のＣＰＵ１３１０は、論理デバイスマッピングテーブル６００と、ゾーン管理テーブル７００、サーバポートテーブル１２００を、ローカルメモリ１３１１に読み出し、設定変更の指示を行なうために参照する。また、管理計算機１４０が、設定変更に合わせて、これらのテーブルの更新を行なう。
管理計算機１４０から設定変更指示を行なう場合、サーバ１１０でステップ９０１終了後、サーバ１１０から管理計算機１４０に対し、終了通知が行なわれる。これを受けて管理計算機１４０のＣＰＵ１３１０は、ディスクサブシステム１２０やスイッチ１３０に、ステップ９０２、９０３の設定変更指示を行なう。
ステップ９０３終了後、管理計算機１４０のＣＰＵ１３１０は、サーバ１１０に対し、設定変更が終了したことを通知する。このとき、通知するサーバ１１０は、マイグレーション元のサーバ１１０とマイグレーション先のサーバ１１０のどちらでも良い。
マイグレーション元のサーバ１１０に通知が行なわれた場合、マイグレーション元のサーバ１１０からサーバ間通信路を通してマイグレーション先のサーバ１１０への通信が行なわれ、マイグレーション先のサーバ１１０にステップ９０４の開始が指示される。
マイグレーション先のサーバ１１０に通知が行なわれた場合、それを受けたマイグレーション先のサーバ１１０でステップ９０４が開始される。
【００６９】
上記説明は、マイグレーションを行なう対象のＬＤＥＶ１２４が１つのときを例にとって行なったが、複数のＬＤＥＶ１２４の場合もある。図５のｄｔ２のような場合、ディレクトリツリーに対して複数のＬＤＥＶ１２４（ｌｄｅｖ３からｌｄｅｖ５）が割り当てられている。このとき、マイグレーションは、この複数のＬＤＥＶ１２４（ｌｄｅｖ３からｌｄｅｖ５）に対して行なう。
【００７０】
本実施例で示したマイグレーション処理は、ファイルシステムまたはその一部のディレクトリツリーに対して行なう。一方、ディスクサブシステム１２０内では、切り替えを行なう単位はＬＤＥＶ１２４である。このため、ディレクトリツリー単位での切り替えによるマイグレーションを行なうためにはディレクトリツリー毎に異なるＬＤＥＶに領域を割り当てる必要がある。ディレクトリツリー毎に異なるＬＤＥＶ１２４に領域を割り当てる方法の一例を図１０に示す。
【００７１】
ディスクサブシステム１２０では、物理的な記憶容量を持つ物理デバイス（ＰＤＥＶ）１００４は、複数でプール１００３を形成する。ＬＤＥＶ１００５は各プール上に定義される仮想的なデバイスで、最初はサイズのみ定義され、物理的な記憶容量は割り当てられない。そして、ＬＤＥＶ１００５に対して書き込みが行なわれる等、記憶領域が必要になった場合に、プール１００３からデータを格納する領域として物理デバイス１００４の領域を割り当てる。
【００７２】
一方、ファイルシステム１００１は、それぞれ複数のディレクトリツリー１００２を含む構造をとる。そして、各ファイルシステム１００１Ａ、１００１Ｂに対しては、それぞれプール１００３Ａ、１００３Ｂを割り当てる。各ディレクトリツリー１００２に対しては、それぞれのファイルシステム１００１に割り当てられたプール１００３上のＬＤＥＶ１００５を割り当てる。
【００７３】
これにより、ファイルシステム１００１毎にプール１００３の記憶領域を占有し、同じファイルシステム１００１内のディレクトリツリー１００２間では、記憶領域を共有することができ、ＬＤＥＶ１００５に割り当てられたディレクトリツリー１００２単位での切り替えによるマイグレーションを行なうことが可能となる。
【００７４】
また、ＬＤＥＶ１００５に割り当てられた記憶領域の容量を管理することにより、ディレクトリツリー１００２単位の容量管理を行なうことができる。
また、ＬＤＥＶ１００５を定義する時のサイズにより、ディレクトリツリー１００２に割り当てることのできる記憶容量の最大値を限定することができる。
【００７５】
次に、本発明の実施例１のストレージシステム１００を管理するためのインターフェースについて説明する。このインターフェースは、管理計算機１４０によってストレージシステム１００の管理者に提供される。
【００７６】
図１１は、本発明の実施例１の管理計算機１４０の管理画面に表示されるディレクトリツリー一覧表示画面の説明図である。
ディレクトリツリー一覧表示画面には、ディレクトリツリー一覧表１１００、作成ボタン１１０６、削除ボタン１１０７及びマイグレートボタン１１０８が含まれる。
【００７７】
名称１１０１は、各ＬＤＥＶ１２４に格納されたディレクトリツリーの名称である。図１１の例では、各ＬＤＥＶ１２４に図３と同様のディレクトリツリーが格納されている。
サイズ１１０２は、各ディレクトリツリーに設定された記憶容量（メガバイト）である。
マウント位置１１０３は、各ディレクトリツリーのマウントポイントである。図１１の例では、図４のパス４０２と同様のマウントポイントが設定されている。
【００７８】
サーバ１１０４は、各ディレクトリツリーを管理するサーバ１１０の識別子である。図１１の例において、各ディレクトリツリーと、それを管理するサーバ１１０との関係は、図４と同様である。したがって、サーバ１１０４には、図４のサーバＩＤ４０３と同じ値が記載される。
【００７９】
オプション１１０５は、各ディレクトリツリーに設定された属性を示す。図１１の例では、ｄｔ０、ｄｔ１、ｄｔ３のオプション１１０５が「ｒｗ」（ｒｅａｄ／ｗｒｉｔｅ）と設定されている。これは、これらの三つのディレクトリツリーに、書き込み禁止属性及び読み出し禁止属性のいずれも設定されていないことを示す。すなわち、クライアント１５０は、これらの三つのディレクトリツリーに対して、データの書き込み及び読み出しのいずれも実行することができる。
【００８０】
一方、ｄｔ２のオプション１１０５は、「ｒｏ」（ｒｅａｄ＿ｏｎｌｙ）と設定されている。これは、ｄｔ２に書き込み禁止属性が設定されていることを示す。すなわち、クライアント１５０は、ｄｔ２にデータを書き込むことができない。
【００８１】
作成ボタン１１０６は、ディレクトリツリーを新規作成するときに使用される。
削除ボタン１１０７は、ディレクトリツリーを削除するときに使用される。例えば、管理者が削除しようとするディレクトリツリーを選択し、削除ボタン１１０７を操作すると、選択されたディレクトリツリーが削除される。ここで、ディレクトリツリーの選択は、図１１の名称１１０１の欄の左側にある丸印をポインティングデバイス（図示省略）で操作（例えば、マウスクリック）することによって実行されてもよい。削除ボタン１１０７の操作も同様である。
【００８２】
マイグレートボタン１１０８は、ディレクトリツリーをマイグレーションするときに使用される。例えば、管理者がマイグレーションしようとするディレクトリツリーを選択し、マイグレートボタン１１０８を操作すると、別の画面（図１１参照）が表示され、マイグレーションが実行される。
【００８３】
図１２は、本発明の実施例１の管理計算機１４０の管理画面に表示されるマイグレーション操作画面の説明図である。
マイグレーション操作画面は、管理者がディレクトリツリー一覧表示画面（図１１）においてあるディレクトリツリーを選択し、マイグレートボタン１１０８を操作したときに表示される。図１１は、例として、管理者がディレクトリツリー一覧表示画面においてｄｔ１を選択した場合のマイグレーション操作画面を示す。
【００８４】
マイグレーション操作画面は、名称表示欄１２０１、サーバ入力欄１２０２、実行ボタン１２０３、及び取り消しボタン１２０４を含む。
名称表示欄１２０１には、管理者が選択したディレクトリツリーの名称が表示される。図１１の例では、ｄｔ１が表示される。
【００８５】
サーバ入力欄１２０２には、マイグレーション先のサーバ１１１のＩＤが入力される。図１１の例では、「ｓｉｄ２」が入力されている。これは、管理者がｄｔ１をサーバ２に
マイグレーションしようとしていることを示す。
【００８６】
実行ボタン１２０３は、マイグレーションを実行するときに使用される。管理者が実行ボタン１２０３を操作すると、ｄｔ１をサーバ２にマイグレーションする処理が開始される。取り消しボタン１２０４は、マイグレーション操作を中止するときに使用される。管理者が取り消しボタン１２０４を操作すると、マイグレーション操作画面は閉じられ、ディレクトリツリー一覧表示画面が再び表示される。
【００８７】
以上の本実施例によれば、ディスクのデバイス間でファイルシステムのまたはその一部のコピーをすることなく、ストレージシステム内のサーバ間で、ファイルシステムまたはその一部のマイグレーションを行なうことができる。
【００８８】
また、本実施例によれば、マイグレーション時に、新たにディスクのデバイスをサーバで認識することにより、ストレージシステム内に１つのサーバが認識できるデバイス数を超えて多くのデバイスを持つことができる。
【図面の簡単な説明】
【００８９】
【図１】本発明の実施例１のストレージシステムの構成を示すブロック図である。
【図２】本発明の実施例１のサーバソフトウエアの構成の説明図である。
【図３】本発明の実施例１においてクライアントに提供される名前空間の説明図である。
【図４】本発明の実施例１のマウントポイント管理テーブルの説明図である。
【図５】本発明の実施例１のディレクトリツリー管理テーブルの説明図である。
【図６】本発明の実施例１の論理デバイスマッピングテーブルの説明図である。
【図７】本発明の実施例１のサーバが持つポートを示すサーバポートテーブルの説明図である。
【図８】本発明の実施例１のゾーン管理テーブルの説明図である。
【図９】本発明の実施例１において実行されるマイグレーション処理のフローチャートである。
【図１０】本発明の実施例１のディレクトリツリー割当て方法の説明図である。
【図１１】本発明の実施例１の管理計算機の管理画面に表示されるディレクトリツリー一覧表示画面の説明図である。
【図１２】本発明の実施例１の管理計算機の管理画面に表示されるマイグレーション操作画面の説明図である。
【図１３】管理計算機の構成説明図である。
【符号の説明】
【００９０】
１１０    ストレージシステム
１１１    サーバ
１１１    ネットワークインターフェース
１１２    ＣＰＵ
１１３    ローカルメモリ
１１６    アダプタ
１２０    ディスクサブシステム
１２１    ディスクコントローラ
１２２    ディスクキャッシュ
１２３    ディスクドライブ
１２４    論理デバイス（ＬＤＥＶ）
１２５    ポート
１３０    スイッチ
１３５    サーバ間通信路
１４０    管理計算機
１５０    クライアント
１６０    ＬＡＮ
２０１    ネットワーク処理部
２０２    ファイルシステム処理部
２０３    ディスクアクセス部
２０５    サーバ管理処理部
２０６    サーバ間通信処理部
２０７    マイグレーション処理部
４００    マウントポイント管理テーブル
５００    ディレクトリツリー管理テーブル
６００    論理デバイスマッピングテーブル
７００    サーバポートテーブル
８００    ゾーン管理テーブル
１１０１    ファイルシステム
１１０２    ディレクトリツリー
１１０３    プール
１１０４    物理デバイス（ＰＤＥＶ）
１１０５    論理デバイス（ＬＤＥＶ）
１１１０    ディレクトリツリー一覧表示画面
１２００    マイグレーション動作画面
１３０１    入力装置
１３０２    管理画面
１３０３    ディスク
１３１０    ＣＰＵ
１３１１    ローカルメモリ
１３１２    ネットワークインターフェース
【図１】
0004836533.tif 000002
【図２】
0004836533.tif 000003
【図３】
0004836533.tif 000004
【図４】
0004836533.tif 000005
【図５】
0004836533.tif 000006
【図６】
0004836533.tif 000007
【図７】
0004836533.tif 000008
【図８】
0004836533.tif 000009
【図９】
0004836533.tif 000010
【図１０】
0004836533.tif 000011
【図１１】
0004836533.tif 000012
【図１２】
0004836533.tif 000013
【図１３】
0004836533.tif 000014