(57)【要約】      （修正有）【課題】クラスタ化ファイルシステムあるいはクラスタ化ＮＡＳ環境でバックアップを取る。【解決手段】単一のネームスペースを有するクラスタ化ファイルシステムあるいはクラスタ化ＮＡＳシステムにおいて、クライアントホストからのただ１つのバックアップ要求によりデータバックアップを実行することができる。１つのファイルサーバでバックアップ要求が受信されると、当該ファイルサーバはデータをバックアップし、必要に応じて、ネームスペース内でデータを管理している他のファイルサーバに他のバックアップ要求を送信する。このプロセスはバックアッププロセスが完了するまで繰り返される。同様に、復元オペレーションにおいて、復元要求を受信すると、復元要求を受信したファイルサーバは、同じく復元を要求されているデータを管理している他のファイルサーバにさらなる復元要求を発行する。【選択図】図１
2007272874.tif 000002
【特許請求の範囲】
【請求項１】
クライアントホストに単一のディレクトリツリーを提供するように相互に通信する各ファイルサーバのネットワークファイルシステムを、それぞれが有する複数のファイルサーバを有するクラスタ化ファイルシステムにおいて、
（ａ）前記のファイルサーバのうちの第一のファイルサーバでバックアップ要求を受信するステップと、
（ｂ）前記の第一のファイルサーバにより管理されるデータをバックアップストレージデバイスにコピーするステップと、
（ｃ）前記のファイルサーバのうちの第二のファイルサーバに、前記のファイルサーバにより管理されるデータを前記のファイルサーバがバックアップストレージデバイスにコピーするように要求を送信するステップと、
（ｄ）前記の単一のディレクトリツリーで参照された全てのデータがバックアップストレージデバイスにコピーされるまで、複数のファイルサーバの各々にステップ（ｃ）を繰り返すステップと、
から成ることを特徴とするクラスタ化ファイルシステムにおいてデータをバックアップする方法。
【請求項２】
前記のクラスタ化ファイルシステムがクラスタ化ネットワーク接続ストレージ（ＮＡＳ）システムであることを特徴とする請求項１に記載の方法。
【請求項３】
前記のデータの全てが前記のバックアップストレージデバイスに一度コピーされると、前記のバックアップストレージデバイスは、アーカイブファイルの総数が前記のファイルサーバの数と同じになるように、前記の複数のファイルサーバの各々に対して１つの前記のアーカイブファイルを含むことを特徴とする請求項１に記載の方法。
【請求項４】
前記のバックアップストレージがテープドライブであることを特徴とする請求項１に記載の方法。
【請求項５】
前記の第一のファイルサーバが、前記の複数のファイルサーバの各々からバックアップ情報を収集する要求を発行するステップと、
前記の複数のファイルサーバからファイルシステム情報を受信するステップと、
前記のファイルシステム情報を前記のバックアップストレージデバイスに書き込むステップとをさらに備えることを特徴とする請求項１に記載の方法。
【請求項６】
ファイル属性情報が、前記の複数のファイルサーバの中のどのサーバにファイルが保存されているかに関連して保存され、
前記のファイルシステム情報が、サーバ上でバックアップされる各々のファイルに対して、
バックアップするファイルの絶対パスネームである仮想パスと、
前記の複数のファイルサーバの各々のローカルファイルシステム内のバックアップするファイルのパスネームと
を含むファイルリストを含むことを特徴とする請求項５に記載の方法。
【請求項７】
前記の第一のファイルサーバにより管理される前記のデータを前記のバックアップストレージデバイスにコピーする前に、前記の第一のファイルサーバにより管理されるデータのスナップショットをとるステップをさらに含むことを特徴とする請求項１に記載の方法。
【請求項８】
前記のファイルサーバのうちの前記の第二のファイルサーバから第三のファイルサーバに、前記の第三のファイルサーバが管理するデータを前記の第三のファイルサーバが前記のバックアップストレージデバイスにコピーをとる要求を送信するステップをさらに含むことを特徴とする請求項１に記載の方法。
【請求項９】
クライアントホストに単一のディレクトリツリーを提供するように相互に通信する各ファイルサーバのネットワークファイルシステムをそれぞれが有する複数のファイルサーバを有するクラスタ化ファイルシステムにおいて、
（ａ）第一のファイルサーバにおいて、少なくとも前記の第一のファイルサーバと第二のファイルサーバが管理するファイルをバックアップする要求を受信するステップと、
（ｂ）前記の第一のファイルサーバの第一のファイルシステムのデータのスナップショットを生成するステップと、
（ｃ）前記の第一のファイルシステムのデータをバックアップストレージデバイスにコピーするステップと、
（ｄ）前記の第二のファイルサーバの第二のファイルシステムのデータのスナップショットを生成するステップと、
（ｅ）前記の第二のファイルシステムのデータを前記のバックアップストレージデバイスにコピーするステップと、
から成ることを特徴とする前記のクラスタ化ファイルシステムにおいてデータをバックアップする方法。
【請求項１０】
前記のステップ（ｃ）の後に、前記の第一のファイルサーバが前記の第二のファイルサーバにバックアップ要求を送信することを特徴とする請求項９に記載の方法。
【請求項１１】
前記のステップ（ｂ）の前に、前記の第一のファイルサーバが前記の第二のファイルサーバにバックアップ要求を送信することを特徴とする請求項９に記載の方法。
【請求項１２】
前記のステップ（ｂ）を実行中に前記の第一のファイルサーバが前記の第二のファイルサーバにバックアップ要求を送信することを特徴とする請求項９に記載の方法。
【請求項１３】
前記の第二のファイルサーバが前記の第一のファイルサーバから指示を受信した後に前記のステップ（ｅ）が実行されることを特徴とする請求項９に記載の方法。
【請求項１４】
前記の全てのデータが前記のバックアップストレージデバイスにコピーされると、前記のバックアップストレージデバイスに保存された２つのアーカイブファイルが存在するように、前記のバックアップストレージデバイスが前記の第一と第二のファイルサーバの各々に対して１つのアーカイブファイルを含むことを特徴とする請求項９に記載の方法。
【請求項１５】
複数のファイルサーバと、
前記の複数のファイルサーバと結合している複数のストレージデバイスと、
前記の複数のストレージデバイスに保存され、単一ネームスペースにおいてクライアントホストに提供される複数のファイルとを備え、
クラスタ化ファイルシステムのファイルのデータをバックアップするために、前記のクライアントホストが前記のファイルサーバの１つにバックアップ要求を発行し、
前記の要求を受信した前記の１つのファイルサーバがバックアップ要求を前記のファイルサーバのうちの１つ以上の他のファイルサーバにデータが完全にバックアップされるまで送信することを特徴とするクラスタ化ファイルシステム。
【請求項１６】
各々のファイルサーバがローカルファイルシステムとネットワークファイルシステムを備え、前記のクライアントホストに単一のネームスペースを提供するために前記のファイルサーバの前記のネットワークファイルシステムが相互に通信することを特徴とする請求項１５に記載のクラスタ化ファイルシステム。
【請求項１７】
前記のファイルの前記のバックアップデータを保存するバックアップストレージデバイスをさらに備えることを特徴とする請求項１５に記載のクラスタ化ファイルシステム。
【請求項１８】
前記のバックアップストレージデバイス、前記のファイルサーバ及び前記のストレージデバイスがファイバチャネル（ＦＣ）スイッチで相互接続していることを特徴とする請求項１７に記載のクラスタ化ファイルシステム。
【請求項１９】
ネットワークを介して接続し単一のネームスペースのデータをファイルサーバで分割して保存する前記の複数のファイルサーバを備えるシステムにおいて、前記のネームスペースの前記のデータがどのように前記のファイルサーバに保存されたかに応じて別々のファイルに保存されたバックアップデータを復元する方法であって、
前記のファイルサーバのうちの第一のファイルサーバで復元要求を受信するステップと、
復元先が前記の第一のファイルサーバ内であるかを判定するステップと、
復元先が前記の第一のファイルサーバ内でなかった場合、前記の第一のファイルサーバが前記のファイルサーバのうちの第二のファイルサーバに別の復元要求を発行するステップと、
から成ることを特徴とするシステム内のバックアップデータを復元する方法。
【請求項２０】
復元要求を受信した前記のファイルサーバの１つが、受信した復元要求の復元先でもあったとき、前記のファイルサーバは前記のバックアップデータのルートファイルシステムに対応するデータを前記のファイルサーバのローカルファイルシステムに復元することを特徴とする請求項１９に記載の方法。
【請求項２１】
単一のディスクに対して復元が要求されているかを判定するステップと、
単一のディスクに対して復元が要求されているのではない場合、バックアップデータからファイルシステムデータを他のディスクに復元するステップとをさらに含むことを特徴とする請求項２０に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
発明の背景
本発明は、本発明はストレージシステムのバックアップを取る方法全般に関する。特に、本発明は複数のホストインタフェスとプロセッサを有するクラスタ化ファイルサーバのバックアップを取る方法に関する。
【背景技術】
【０００２】
関連技術の説明
クラスタリングとは複数のコンピュータ、複数のストレージデバイス及び冗長性のある相互接続を使用して、ユーザからは１台の高可用性システムに見えるものを形成することである。クラスタリングは負荷バランス、ならびに高可用性を得るために使用することができる。クラスタ化ファイルシステム（クラスタ化ネットワーク接続ストレージ（ＮＡＳ））は複数のファイルシステムを有し、少なくとも１つの単一のネームスペースを生成する。ネームスペースはファイルシステムが認識した有効なネームの集合で、ディレクトリのツリー構造とファイルパス名を特定する。これらは組み合わさって、完全なファイルシステムを形成する。ファイルシステムは１つ以上の物理あるいは仮想ディスクのアドレス空間に対して、アプリケーションが可変サイズの抽象的に名付けられたデータオブジェクト、すなわちファイルをより簡便に扱うことができる構造を備えることを要求する。クラスタ化ファイルシステムでは、ファイルシステム（時として“グローバルファイルシステム”と呼ばれる）は、ユーザには１台のデバイスに存在する完全な単一のファイルシステムに見せながら、複数のＮＡＳデバイスに亘って分散することができる。グローバルファイルシステムでは、ファイルシステムのネームスペース（あるいはディレクトリツリー）は複数のファイルサーバあるいはＮＡＳシステムに亘って広がることができる。ネットワークファイルシステム（ＮＦＳ）第４版プロトコルの下でこれを実現する一つの方法は、ＮＡＳホストにネットワークファイルシステムソフトウェアを提供することであり、これにより１つのホストのリファーラルが他のホストのディレクトリとファイルの保存位置を示す。
【０００３】
多くの場合ＮＡＳシステムはヘテロジニアスで、ここではＮＡＳホストが異なるオペレーティングシステムあるいは異なるネットワークプロトコルを動作させている分散システムに（すなわち、ヘテロジニアスなネットワーク）ファイルサービスを提供している。ヘテロジニアスなＮＡＳシステムの標準バックアッププロトコルはネットワークデータ管理プロトコル（Ｎｅｔｗｏｒｋ  Ｄａｔａ  Ｍａｎａｇｅｍｅｎｔ  Ｐｒｏｔｏｃｏｌ，ＮＤＭＰ）と呼ばれ、ネットワーク上の異種のファイルサーバをバックアップする共通アーキテクチャを定義している。このプロトコル（例えば、ＮＤＭＰ第４版）は多くのＮＡＳシステムがデータバックアップのためにサポートしている（例えば、ｗｗｗ．ｎｄｍｐ．ｏｒｇ／ｄｏｗｎｌｏａｄ／ｓｄｋ＿ｖ４／ｄｒａｆｔ−ｓｋａｒｄａｌ−ｎｄｍｐ４−０４．ｄｏｃを参照）。ＮＤＭＰプロトコルは、バックアップ、回復、及びその他プライマリストレージとセカンダリストレージの間のデータ転送を制御するメカニズムとプロトコルを定義する。このプロトコルにより、センターバックアップアプリケーションが異なるプラットフォームと異なるプラットフォームバージョンを動作させている異なるファイルサーバのバックアップをとるために使用する共通エージェントの生成が可能になる。ＮＤＭＰによりデータパスと制御パスが分離されるのでネットワークの輻輳は最少になる。バックアップはファイルサーバから直接にテープドライブに行なわれることが可能であり、一方管理はセンターロケーションから行うことが可能である。
【０００４】
しかしながらＮＤＭＰプロトコルは複数のファイルシステムのバックアップを単一のオペレーションでとる方法を開示していない。それどころか、バックアップオペレーションにＮＤＭＰを使用する場合、ＮＤＭＰをサポートするバックアッププログラムが各ファイルシステムにバックアップ要求を発行しなければならない。ＮＤＭＰがクラスタ化ＮＡＳあるいはクラスタ化ファイルシステムに適用される場合、たとえ単一のネームスペースがあっても、複数のＮＡＳホストが存在するのでバックアッププログラムは複数のバックアップ要求を発行しなければならない。したがって、クラスタ化ＮＡＳあるいはクラスタ化ファイルシステムではファイルシステムをユーザに対して単一のファイルシステムに見せていると、ユーザあるいはクライアントホストの観点からは、複数のバックアップ要求を発行するというのは直感的に解りにくいオペレーションである。このため、ユーザあるいはホストに対して本発明で避けたいとしている不便さや負荷がかかってしまう。
【０００５】
先行技術の例としてＭｉｋｅ  Ｋａｚａｒの“Ｓｐｉｎｓｅｒｖｅｒ  Ｓｙｓｔｅｍｓ  ａｎｄ  Ｌｉｎｕｘ  Ｃｏｍｐｕｔｅ  Ｆａｒｍｓ”、ＮｅｔＡｐｐ  Ｔｅｃｈｎｉｃａｌ  Ｒｅｐｏｒｔ  Ｗｈｉｔｅ  Ｐａｐｅｒ、Ｎｅｔｗｏｒｋ  Ａｐｐｌｉａｎｃｅ  Ｉｎｃ．、２００４年２月、ｗｗｗ．ｎｅｔａｐｐ．ｃｏｍ／ｔｅｃｈ＿ｌｉｂｒａｒｙ／３３０４．ｈｔｍｌ；Ａｍｉｎａ  Ｓｉｆｙ他の“Ａｃｈｉｅｖｉｎｇ  Ｓｃａｌａｂｌｅ  Ｉ／Ｏ  Ｐｅｒｆｏｒｍａｎｃｅ  ｉｎ  Ｈｉｇｈ−Ｐｅｒｆｏｒｍａｎｃｅ  Ｃｏｍｐｕｔｉｎｇ  Ｅｎｖｉｒｏｎｍｅｎｔｓ”、Ｄｅｌｌ  Ｐｏｗｅｒ  Ｓｏｌｕｔｉｏｎｓ、２００５年２月、１２８−１３２頁、ｗｗｗ．ｉｂｒｉｘ．ｃｏｍ／ｄｅｌｌ＿ｓａｉｆｙ.ｐｄｆ；及び米国特許Ｎｏ．６，７８２，３８９、Ｃｈｒｉｎ他がある。これら先行技術の文献を読むとクラスタ化ファイルシステムあるいはクラスタ化ＮＡＳシステムの一般的な概要を知ることができる。しかしながらこれらの文献はクラスタ化ファイルシステムあるいはクラスタ化ＮＡＳ環境でデータのバックアップを取る方法は開示していない。
【０００６】
さらに、更新されたネットワークファイルシステム（ＮＦＳ）プロトコル、ＮＦＳｖ４が提案されている（例えば、“ＮＦＳ第４版プロトコル”、ｗｗｗ．ｉｅｔｆ．ｏｒｇ／ｒｆｃ／ｒｆｃ３５３０．ｔｘｔを参照）。しかしながらＮＦＳｖ４プロトコルには“移行機能”は載っているが、このプロトコルもクラスタ化ファイルシステムあるいはクラスタ化ＮＡＳ環境でバックアップを取る方法については一切開示していない。
【発明の開示】
【発明が解決しようとする課題】
【０００７】
発明の要約
本発明では、ユーザあるいはクライアントホストが行うクラスタ化ファイルシステムのバックアップオペレーションは単純化されている。１つの態様では、ストレージシステムは複数のファイルサーバ、複数のストレージボリューム、及び複数のファイルサーバと複数のストレージボリュームを接続する相互接続手段を有している。各ファイルサーバは少なくともそれ自身のローカルファイルシステムを管理し、他のファイルサーバの複数のローカルファイルシステムから単一のネームスペースを構築する。特定のファイルサーバでバックアップ要求を受信すると、その特定のファイルサーバは他のファイルサーバにバックアップ要求を発行する。
【０００８】
当業者には、好適なる実施例の以下の詳細な説明に照らして、本発明のこれらの、またその他の特徴と利点は明らかなものとなる。
【発明を実施するための最良の形態】
【０００９】
発明の詳細な説明
以下の本発明の詳細な説明に於いて、本開示の一部をなす添付図面が参照され、本発明を実施可能となる具体的な実施例が説明のために、限定するためでなく示されている。図面では複数の図面を通して、同じ番号は基本的に同様の構成要素を示す。なお、図面、以上の論議、と以下の記述は例示的かつ説明のみのものであり、いかなる意味においても本発明あるいは適用の範囲を制限することを意図したものではない。
【００１０】
第一の実施例
図１は本発明の第一の実施例によるファイルサーバシステム１０の構成例を示す。ファイルサーバシステム１０はファイバチャネル（ＦＣ）スイッチ２を介して複数のディスクストレージ３Ａ、３Ｂ．．．３Ｎに接続する複数のファイルサーバ１Ａ、１Ｂ．．．１Ｎを有している。各ファイルサーバ１Ａ乃至１Ｎは、イーサネット（登録商標）接続などを介して他のファイルサーバ１と相互接続し、１つ以上のクライアントホスト４からファイルアクセス要求を受信するのに使用される、ネットワークインタフェースコントローラ（ＮＩＣ）１４を有している。各ファイルサーバ１Ａ乃至１ＮはまたＣＰＵ１２、メモリ１３、及びＦＣインタフェース１５を備えている。ファイルサーバ１Ａ乃至１Ｎへのファイルアクセス要求を処理するプログラムはＣＰＵ１２とメモリ１３を使用する。
【００１１】
各ディスクストレージ３Ａ乃至３ＮはＦＣインタフェース３１、及びディスク３２Ａ−１乃至３２Ｎ−１と３２Ａ−２乃至３２Ｎ−２を有している。これらのディスクはハードディスクドライブでも良いし、ＲＡＩＤ（ｒｅｄｕｎｄａｎｔ  ａｒｒａｙｓ  ｏｆ  ｉｎｄｅｐｅｎｄｅｎｔ  ｄｉｓｋｓ）技術あるいは他の構成を用いて用意され動作する論理デバイスでも良い。クライアントホスト４は典型的なＰＣ／ＡＴ系のアーキテクチャでＵＮＩＸ（登録商標）あるいはＷｉｎｄｏｗｓ（登録商標）のオペレーティングシステムなどを動作させる。クライアントホスト４は、ＬＡＮスイッチ５（例えばイーサネット（登録商標）スイッチ）を介してネットワークファイルシステム（ＮＦＳ）または共通インタフェースファイルシステム（ＣＩＦＳ）プロトコル要求などのファイルアクセス要求を、ファイルサーバ１Ａ乃至１Ｎに発行する。
【００１２】
ファイルサーバ１Ａ乃至１Ｎのバックアップと復元オペレーションを管理するバックアップサーバ６が備えられ、これはまたＬＡＮスイッチ５に接続されている。バックアップサーバ６のハードウェアアーキテクチャはクライアントホスト４と同様でも良いし、異なるハードウェアアーキテクチャでも良い。バックアップデバイス７は磁気テープドライブ、磁気テープライブラリ装置、光ディスクドライブ、光ディスクライブラリあるいは他のタイプのストレージデバイスとすることができる。バックアップデバイス７はファイルサーバ１Ａ乃至１ＮからＦＣプロトコルを使用してアクセスできるようＦＣスイッチ２に接続している。
【００１３】
１つの実施例によれば、ファイルサーバ１Ａ乃至１Ｎ、ＦＣスイッチ２及びディスクストレージ３Ａ乃至３Ｎは単一の筐体に収納されている。あるいは、これら３つの要素のそれぞれが別の場所に設置されていても良い。ファイルサーバ１Ａ乃至１Ｎの数とディスクストレージ３Ａ乃至３Ｎの数は可変であり、図１の説明図のように必ずしも互いに同じである必要はない。
【００１４】
図２はファイルサーバシステム１０の機能図を示す。各ファイルサーバ（ホスト）１Ａ乃至１Ｎに、ドライバ１０１、ローカルファイルシステム１０２、ネットワークファイルシステム１０３、及びバックアッププログラム１０４が備えられている。ドライバ１０１とローカルファイルシステム１０２はディスクストレージ３Ａ乃至３Ｎのディスク３２Ａ−１乃至３２Ｎ−１及び３２Ａ−２乃至３２Ｎ−２にアクセスするために使用される。ネットワークファイルシステム１０３は、ネットワークファイルシステム（ＮＦＳ）あるいは共通インタネットファイルシステム（ＣＩＦＳ）プロトコルに基づいてクライアントホスト４からのファイルアクセス要求を処理する。各ネットワークファイルシステム１０３は、クライアントホストに単一ディレクトリツリーを示すように他のファイルサーバのネットワークファイルシステムと通信する。図２に示す構造の結果としての単一ディレクトリツリーが、図４と関連してより詳細に示され説明される。さらに、クライアントホスト４はＮＦＳプロトコルに基づいて要求を各ファイルサーバ１Ａ乃至１Ｎに転換するＮＦＳクライアントプログラム４１を有している。
【００１５】
本実施例によると、ファイルサーバ１Ａ乃至１Ｎの各々が物理的に各ディスクストレージ３Ａ乃至３Ｎに接続されていたとしても、ファイルサーバはディスクストレージ３Ａ乃至３Ｎのうちの１つにアクセスするだけである。ファイルサーバ１Ａはストレージシステム３Ａにアクセスし、ファイルサーバ１Ｂはストレージシステム３Ｂにアクセスし、そしてファイルサーバ１Ｎはストレージシステム３Ｎにアクセスする。しかしながら別の実施例では、各ファイルサーバ１Ａ乃至１Ｎは全てのディスクストレージ３Ａ乃至３Ｎにアクセスすることができる。
【００１６】
本発明ではバックアッププログラム１０４が、バックアップサーバ６にあるバックアップマネジャ６１からバックアップまたは復元要求を受信する。これに応じて、バックアッププログラム１０４は各ファイルサーバ１Ａ乃至１Ｎのそれぞれのファイルシステムデータのバックアップ／復元オペレーションを実行する。これについては以下にさらに詳細に説明する。バックアッププログラム１０４はメモリ１３にあっても良く、ディスクに保存してもよく、バックアップサーバ６上の他のコンピュータ読み出し可能な媒体に保存しても良い。他の実施例では、バックアッププログラム１０４はＮＦＳクライアントプログラム４１を備えるクライアントホスト４の１つにあっても良い。
【００１７】
各ファイルサーバ１Ａ乃至１Ｎのローカルファイルシステム１０２は、各ディスク３２（ディスク３２Ａ−１乃至３２Ｎ−１及びディスク３２Ａ−２乃至３２Ｎ−２に対応して）のデータ構造を、各ディスク上で１つ以上のファイルまたはディレクトリが管理されるように生成する。これはファイルシステムデータと呼ばれる。このようなファイルシステムデータのデータ構造の例が図３に示されている。図３に示すように、ディスク３２はメタデータ領域１１０、ディレクトリエントリ領域１２０、及びデータ領域１３０を有している。メタデータ領域１１０にはスーパーブロック１１１、ブロックビットマップ１１２、及びアイノードテーブル１１３がある。アイノードテーブル１１３は通常、各ファイルまたはディレクトリ情報の複数のセット、例えばファイルの所在、ファイルのサイズなど、を含んでいる。ファイルの情報のセットはアイノード１１４と呼ばれる。各アイノードは少なくともアイノード番号７１、ファイルタイプ７２、ファイルサイズ７３、最終アクセス時刻７４、最終更新時刻７５、ファイル生成時刻７６、アクセス許可７７、ＡＣＬ７８及びこのファイルが保存されるディスクブロックアドレスを示すポインタ７９を含む。各アイノード１１４を使用してファイルまたはディレクトリを示すことができる。アイノードがファイルを示す場合（ファイルタイプフィールド７２が“ｆｉｌｅ”の場合）、アイノードのポインタから示されるデータブロックはファイルの実際のデータを含む。ファイルが複数のブロックに保存されている場合（１０ブロックなど）、１０個のディスクブロックのアドレスがブロックポインタ７９に記録される。一方、アイノード１１４がディレクトリのものである場合、ファイルタイプフィールド７２は“ディレクトリ”で、ブロックポインタ７９から示されるデータブロックはディレクトリ（すなわち、ディレクトリエントリ１２１）内の全てのファイルとディレクトリ（サブディレクトリ）のアイノード番号と名前のリストを保存する。
【００１８】
さらに、ディレクトリエントリ領域１２０は複数のディレクトリエントリ１２１から構成されている。各ディレクトリエントリ１２１はファイルシステムデータのディレクトリに対応し、各ディレクトリエントリ１２１はディレクトリの下に位置するアイノード番号７１とファイル／ディレクトリネーム８１を含む。本実施例によれば、各ファイルサーバ１Ａ乃至１Ｎの各ローカルファイルシステムは２つのファイルシステムデータを保持している、すなわち各ファイルサーバ１Ａ乃至１Ｎにバイナリファイルまたは構成ファイルを保存する第一のファイルシステムデータ、及びクライアントホスト４からのデータを保存する第二のファイルシステムデータである。例えば、ファイルサーバ１Ａには、バイナリまたは構成ファイル（ローカルファイルシステム１０２、バックアッププログラム１０４などのファイルサーバ１Ａで作動するプログラム）がディスク３２Ａ−２に保持され、クライアントホスト４からのデータを保存するファイルシステムデータがディスク３２Ａ−１に保持されている。クライアントホスト４からのデータを保存するファイルシステムデータに関しては、ファイルサーバ１Ａは“／ｈｏｓｔａ”から始まるディレクトリツリーを保持しており（例えば、ファイル１Ａはファイルシステムデータをディスク３２Ａ−２内にディレクトリ“／ｈｏｓｔａ”の下にマウントしていて、このディレクトリはディスク３２Ａ−１のファイルシステムデータのルートディレクトリ“／”の下にある）、ファイルサーバ１Ｂは“／ｈｏｓｔｂ” から始まるディレクトリツリーを、ファイルサーバ１Ｎは“／ｈｏｓｔＮ”から始まるディレクトリツリーを保持している。
【００１９】
ネットワークファイルシステム１０３は、クライアントホスト４（あるいはバックアップサーバ６）に、各ファイルサーバ１Ａ乃至１Ｎのローカルファイルシステム１０２内に構築された複数のディレクトリツリーを集めた単一（仮想）のディレクトリツリー１７５を提示する。単一のディレクトリツリー１７５の例が図４に示され、本実施例では“単一のネームスペース”と呼ばれる。ディレクトリツリー１７５では例えば、実際にはファイルサーバ１Ｂと１Ｎにそれぞれ位置づけられているファイルであっても、ファイル“ｂ８”がディレクトリ“／ｈｏｓｔａ／ａ１／ａ４／ｂ６”の下に位置づけられたものとして見え、ファイル“ｃ５”がディレクトリ“／ｈｏｓｔａ／ａ２／ｃ１”の下に位置づけられたものとして見える。
【００２０】
クライアントホスト４とファイルサーバ１Ａ乃至１Ｎとの間のオペレーションの例を以下に説明する。本実施例によれば、ネットワークファイルシステム１０３はＮＦＳｖ４プロトコルを使用し、このプロトコルがサポートする“移行機能”を使用する。まず、各クライアントホスト４は次のコマンドを使用してファイルシステムをマウントする。
ｍｏｕｎｔ  ｈｏｓｔＡ：／ｈｏｓｔａ  ／ｕｓｒ１
【００２１】
マウントオペレーションの後に、クライアントホスト４はホスト１Ａ乃至１Ｎ内の全てのファイルシステムデータ例えば、ルートディレクトリネーム（すなわち、ディレクトリ階層の最上位にあるディレクトリネーム）が“／ｕｓｒ１”である図４に示すディレクトリツリーなど、にアクセスすることができる。クライアントホスト４のユーザが、例えば、図４Ａのファイル（またはディレクトリ）“ａ３”のファイル（またはディレクトリ）情報を見る要求を発行するとき、ユーザは次のコマンドを発行する。
ｌｓ  −  ａｌ／ｕｓｒ１／ａ１／ａ３
【００２２】
本コマンドはＮＦＳｖ４プロトコルに則してＮＦＳクライアントプログラム４１によって要求に変換され、変換された要求はホスト１Ａに送信される。ディレクトリ“／ｈｏｓｔａ／ａ１”のディレクトリエントリ１２１の内容が図４Ｂに示すものであるとすると、ホスト１Ａ内のネットワークファイルシステム１０３は、この要求を受信すると、ファイル／ディレクトリ“ａ３”のアイノード番号７１が‘２１４’なので、ローカルファイルシステム１０２を用いてディスク３２Ａ−２内のメタデータ領域１１０からアイノード番号７１が‘２１４’であるアイノードを検索し、ファイル（またはディレクトリ）“ａ３”の情報をクライアントホスト４に返す。次に、ユーザが図４Ａのディレクトリ“ｂ６”の情報を見たいとき、ユーザは次のコマンドを発行する。
ｌｓ  −  ａｌ／ｕｓｒ１／ａ１／ａ４／ｂ６
【００２３】
本実施例では、ディレクトリ“ａ４”の下のファイル／ディレクトリがホスト１Ｂにより管理されるとの情報はディレクトリエントリ１２１に保存される。ディレクトリエントリ１２１のアイノード番号７１が‘−１’の場合、ネームがファイル／ディレクトリフィールド８１にあるディレクトリ下のファイル／ディレクトリは他のファイルサーバ内にあることを意味し、他のファイルサーバをアクセスするのに必要な情報は、ファイル／ディレクトリフィールド８１内に‘ｄｉｒｅｃｔｏｒｙ  ｎａｍｅ’：‘ｈｏｓｔｎａｍｅ’；‘ｆｉｌｅｓｙｔｅｍ  ｎａｍｅ’（対応するディレクトリが存在する対象ファイルサーバの最上位のディレクトリネーム）のフォーマットで記載されている。図４Ｂでは、ディレクトリエントリ１２１の底部にあるファイル／ディレクトリネームフィールド８１が‘ａ４：ｈｏｓｔｂ：／ｈｏｓｔｂ’であるので、ファイルサーバ１Ａ内のネットワークファイルシステム１０３は、ディレクトリ“ａ４”とディレクトリ“ａ４”の下のファイル／サブディレクトリをホスト１Ｂが管理していると判定することができる。ディレクトリ“ａ１”のディレクトリエントリ１２１を参照して、ホスト１ＡはＮＦＳｖ４プロトコルに則して“ＮＦＳ４ＥＲＲ＿ＭＯＶＥＤ”などの類のエラーコードを送信する。同時にホスト１Ａは、ホストのうちのどれにディレクトリ“ｂ６”が現在存在するかに関するリファーラル情報を返す。ここで、ホスト１Ｂの情報がクライアントホスト４に返される。クライアントホスト４のＮＦＳクライアントプログラム４１はこの応答を受信すると、ＮＦＳ要求をホスト１Ｂに再発行し、ディレクトリ“ｂ６”の属性情報を取り込む。他の実施例では各ファイルサーバの上記のリファーラル情報は各ファイルサーバのメモリ１３にキャッシュされる場合がある。
【００２４】
図５は先行技術においてデータがバックアップされテープ装置に保存される方法の簡単な概略を示す。ファイルサーバあるいはＮＡＳがテープなどのバックアップ装置にデータをバックアップする際に、ファイルサーバまたはＮＡＳのバックアッププログラムがローカルファイルシステム経由でディスクの内容を読み取り、複数のファイルと複数のディレクトリが単一のファイルとして結合された単一のデータストリーム（以後、バックアッププログラムが生成する単一のデータストリームを“アーカイブファイル”と呼ぶ）を生成し、生成された単一のデータストリームをファイルサーバあるいはＮＡＳに接続されたテープ装置に書き込む。先行技術において、ＵＮＩＸ（登録商標）オペレーティングシステムの“ｔａｒ”あるいは"ｄｕｍｐ"など多数のバックアッププログラムが知られている。図５に示すように、アーカイブファイルを書き込む前に、磁気テープ２００の先端にテープの始点記号（ＢＯＴ）が記録され、アーカイブファイル２０３（データストリーム）が単一ファイルとして保存される。アーカイブファイルを書き込んだ後に、ファイルの終端記号（ＥＯＦ）がファイル２０３のすぐ後に記録される。
【００２５】
本先行技術のバックアップ法において、ファイルシステムデータのバックアップは単一のファイルサーバあるいは単一のＮＡＳ装置を用いて行われる。一方、本実施例によれば、複数のファイルサーバ１Ａ乃至１Ｎに亘って単一のネームスペースが構築されているので、複数のファイルサーバ１Ａ乃至１Ｎは各々が管理しているファイルシステムデータ内のデータをバックアップし、ファイルサーバの各々からバックアップされたデータを互いに関連付けて管理することが求められる。従って、本実施例において複数のファイルシステムデータが、複数のファイルサーバ１Ａ乃至１Ｎに亘って構築され複数のファイルシステムデータで構成される単一のネームスペースにバックアップされることが求められる。
【００２６】
図６は本発明によりバックアップデータがテープ装置のテープ２１０にどのように保存されるかの例を示す。単一のネームスペースの最上位のディレクトリ（ルートディレクトリ）はファイルサーバ１Ａから与えられる“／ｈｏｓｔａ”なので、ファイルサーバ１Ａのバックアッププログラム１０４はディスク３２Ａ−１からバックアップデータを生成し、アーカイブファイルをテープ装置７にＦＩＬＥ−１（２１３）として書き込む。ＦＩＬＥ−１（２１３）のフォーマットの詳細を図７を参照して後に説明する。ファイルサーバ１Ａのバックアッププログラム１０４がアーカイブファイルをテープ装置７に書き込み終わった後、ファイルサーバ１Ａは他のファイルサーバ１Ｂ乃至１Ｎに、バックアップデータを生成しそれをテープ装置７に書き込むことを要求する。
【００２７】
このオペレーションは順次実行することができる。例えば、最初にファイルサーバ１Ａがファイルサーバ１Ｂにバックアップ要求を発行し、ファイルサーバ１Ｂのバックアップオペレーションが完了したら、ファイルサーバ１Ａはネームスペースデータを有する次のファイルサーバに、要求が最後にファイルサーバ１Ｎに発行されるまで、バックアップ要求を発行する。これが完了すると、単一ネームスペースのバックアップオペレーションが完了する。磁気テープ媒体２１０上にはテープの始端２１１の後にＦＩＬＥ−１（２１３）が最初に書かれ、ＥＯＦ２０１が書かれる。次にＦＩＬＥ−２（２１４）がファイルサーバ１Ｂにより生成されテープ２１０に記録され、その後にＥＯＦ２１２が書かれる。次に、バックアップするファイルを含む次のファイルサーバによりＦＩＬＥ−３が生成されテープ２１０に書き込まれる。最後に全てのデータがバックアップされると他のＥＯＦ２１２がテープに書かれる。
【００２８】
図７はＦＩＬＥ−１（２１３）、ＦＩＬＥ−２（２１４）、またはＦＩＬＥ−３（２１５）のアーカイブファイルのフォーマットを示す。ファイルトータル４０１は単一ネームスペースにいくつのアーカイブファイルが含まれるかを示す。例えば、図４Ａに示す単一ネームスペースの全てのファイルとディレクトリをバックアップする場合、単一ネームスペースは３つのファイルサーバを有するので、３つのアーカイブファイルが生成される。従って、ファイルトータル４０１は３となる。
【００２９】
エレメント４０２乃至４０６はアーカイブファイルの属性情報である。単一のネームスペースが複数のアーカイブファイルを有する場合は、これらのエレメントの複数のセットが保存される。図４Ａの例で、単一ネームスペースが３つのファイルサーバを有する時、各アーカイブファイルに対してエレメント４０２乃至４０６のセットが３つ保存される。ファイルＮｏ．４０２は単一ネームスペースのバックアップデータを有する各アーカイブファイルの識別番号である。識別番号は負ではない整数である。アーカイブデータがバックアップされ保存されたとき、ルート４０３はファイルサーバのホストネーム（あるいはＩＰアドレス）を保存する。パスネーム４０４はアーカイブファイルにバックアップされたファイルシステムデータの最上位のディレクトリネームを保存する。単一のネームスペース内の絶対パスネームが最上位のディレクトリネームとして保存される。図４Ａの例では、ホスト１Ｂが生成するファイルシステムデータは単一仮想ネームスペース１７５の“／ｈｏｓｔ／ａ１／ａ４”に置かれる。従ってホスト１Ｂのアーカイブファイルへのパスネーム４０４は“／ｈｏｓｔ／ａ１／ａ４”である。
【００３０】
デバイスネーム４０５はドライバ１０１によりディスク３２に割り当てられたデバイスファイルネーム（“／ｄｅｖ／ｈｄａ２”、“／ｄｅｖ／ｄｓｋ／ｃ１ｔ０ｄ０ｓ２”など）であり、パスネーム４０４に対応するファイルシステムデータが保存されている。サイズ４０６はアーカイブデータとしてバックアップされたファイルシステムデータの合計サイズを示す。現在ファイル４０７はアーカイブデータフィールド（エレメント４０８）に保存されたアーカイブファイルのファイルＮｏ．情報を保存する。最後に、アーカイブデータ４０８はアーカイブファイルのデータである。ＵＮＩＸ（登録商標）のｔａｒコマンドで使用されるフォーマットなどの様々なデータフォーマットが使用可能である。
【００３１】
図８、９、及び１０は、ファイルサーバ１がバックアップサーバ６からバックアップ要求を受信したときにバックアッププログラム１０４により実行されるバックアップオペレーションのプロセスフローを示す。バックアップサーバ６のバックアップマネジャ６１がこれらの要求を発行するときバックアップマネジャ６１は、ユーザがデータバックアップを希望するファイルシステムの最上位のディレクトリネームまたはその一部を送信するか、あるいは代わりに、ディレクトリネームのリストを送信する。あるいはさらに代わりに、１つ以上のファイルのバックアップが希望される場合、そのファイルネームが送信されても良い。図８と９はファイルサーバ１Ａがバックアップマネジャ６１から単一のバックアップ要求を受信すると想定される場合のバックアップ方法で実行されるステップの例を示す。このプロセスは他のファイルサーバ１Ｂ乃至１Ｎの１つがバックアップ要求の対象となる場合にも同様に適用可能である。
【００３２】
ステップ１００１で、要求を受信したファイルサーバ１Ａが要求で指定されたディレクトリまたはファイルのいずれかを含んでいるかをプロセスが判定する。ディレクトリエントリ１２１をチェックし、バックアップするファイルまたはディレクトリがファイルサーバ１Ａ内にあるか否かを調べる。ディレクトリまたはファイルの全てが他のファイルサーバ内にあれば、ステップはステップ１０１０へ進み、サーバ１Ａにより他のファイルサーバに対してバックアップ要求が発行される。
【００３３】
しかしながら、プロセスが、要求を受信したファイルサーバ１Ａが管理するファイルまたはディレクトリが１つ以上あると判定した場合、プロセスはステップ１００２へ進み、バックアップマネジャ６１がバックアップ前にファイルシステムデータのスナップショットの生成要求を発行したら、スナップショットが生成される。このように、本発明はネームスペースのスナップショット生成も提供する。
【００３４】
次に、ステップ１００３で、プロセスはバックアップするファイルシステムデータの情報を集め、図７のファイルＮｏ．４０２、ルート４０３、パスネーム４０４、デバイスネーム４０５、及びサイズ４０７などの各ファイルの属性情報を生成する。
【００３５】
ステップ１００４で、ファイルサーバ１Ａは他のファイルサーバにバックアップ情報を集める要求を発行する。他のファイルサーバがこの要求を受信すると、他のファイルサーバのバックアッププログラムがステップ１００２と１００３を実行し、集めた情報をファイルサーバ１Ａに送り戻す。他のファイルサーバが実行するプロセスの詳細は図１０に示されており以下に説明する。
【００３６】
ステップ１００５で、ファイルサーバ１Ａは要求の発行先の他のファイルサーバが集めた情報を受信する。
【００３７】
ステップ１００６で、ファイルサーバ１Ａはそれ自身のファイルシステム情報を、要求する他のファイルサーバがあればそこに送信する。
【００３８】
ステップ１００７で、ファイルサーバ１Ａが受信したファイルシステム情報（図７を参照して説明したように）がテープに書き込まれる。
【００３９】
ここで、図９を参照して、ステップ１０１２のプロセスを続けると、ファイルまたはディレクトリがディスクから読み込まれアーカイブデータフォーマットでデータストリームが生成される（例えば、ＵＮＩＸ（登録商標）オペレーティングシステムの“ｔａｒ”または“ｄｕｍｐ”を使用して）。生成されたデータストリームはバックアップデータフォーマット内のエレメント４０７に対応する。生成されたデータストリームはステップ１００７で保存されたファイルシステム情報に続いてテープ装置に保存される。
【００４０】
ステップ１０１３でプロセスは他のファイルサーバに管理されバックアップが必要な他のファイルまたはディレクトリが存在するかを判定する。もしあれば、プロセスはステップ１０１４へ進む。なければ、プロセスは終了する。
【００４１】
ステップ１０１４で、プロセスは他のファイルサーバの１つに、ローカルファイルシステムデータの最上位のディレクトリネームを指定してデータのバックアップ要求を発行する。あるいは、１つ以上のファイルのみをバックアップするとき、プロセスがバックアップするファイルネームのリストを特定する。他のファイルサーバは要求を受信すると、ステップ１０１２に関して上で説明したプロセスを実行し、自分のディスクを読み出してアーカイブデータを生成し、アーカイブデータ４０８をテープに書き込む。他のファイルサーバでバックアップオペレーションが完了すると、他のファイルサーバはファイルサーバ１Ａにバックアップオペレーションが完了したことを通知する。この通知をファイルサーバ１Ａで受信すると、プロセスはステップ１０１５に進む。
【００４２】
ステップ１０１５で、プロセスはバックアップオペレーションがまだ完了していないでバックアップが必要なさらなるファイルまたはディレクトリを有する他のファイルサーバが存在するかを判定する。あれば、プロセスはステップ１０１４へ戻り、さらなるファイルまたはディレクトリが位置づけられた第二の他のファイルサーバにバックアップ要求を発行する。要求を受けた第二の他のファイルサーバは上記のステップ１０１２で説明されたプロセスを実行する。データバックアップを必要とする全てのファイルサーバがデータのバックアップを完了すると、プロセスは終了する。さらに、修正された実施例では、ステップ１００２でスナップショットが生成された直後、かつデータバックアップの前に、他のファイルサーバによりスナップショットを続けて生成する際の時間遅れを減少するため、ステップ１００４が遂行される。
【００４３】
図１０はファイルサーバ内のバックアップ情報を収集するプロセスの詳細を示す。本プロセスはファイルサーバ１Ａ（バックアッププログラム１０４からバックアップ要求を受信した）からファイルサーバ１Ａにより実行される図８のステップ１００４に応じて要求を受信したファイルサーバ内のバックアッププログラム１０４によって実行される。図１０に示すように、ステップ１００２’でバックアップマネジャ６１がバックアップ前にファイルシステムデータのスナップショットを取る要求を発行すると、スナップショットが生成される。次にステップ１００３’で、バックアップ対象のファイルシステムデータの情報を集めてファイルシステム情報が集められ、図７のファイルＮｏ．４０２、ルート４０３、パスネーム４０４、デバイスネーム４０５、及びサイズ４０７など各ファイルの属性情報が生成される。集められたファイルシステム情報はステップ１００６’でファイルサーバ１Ａに送られる。ステップ１００５’でファイルシステム情報は受信され、ファイルサーバ１Ａから要求が来る（ステップ１０１４で）までプロセスは保留される。図９のステップ１０１４からバックアップ要求が来ると、ステップ１００７’でファイルシステム情報はテープに書き込まれる。次に、指定されたデータ（ファイルまたはディレクトリ）がステップ１０１２’でテープにバックアップされプロセスが終了する。
【００４４】
さらに、別の実施例では、集中化方式で送信される全てのバックアップ要求を受信する第一のファイルサーバを持つ代わりに、バックアップ要求は第一のファイルサーバから第二のファイルサーバに、第二のファイルサーバから第三のファイルサーバへと全てのデータがバックアップされるまで順次配信される。これは他のファイルサーバ上のバックアッププログラム１０４によって上記のプロセスにて実現可能である。このように第二のファイルサーバが第一のファイルサーバからバックアップ要求を受信すると、単にステップ１０１２を実行するかわりに、プログラムはステップ１０１５を不必要として削除して、ステップ１０１１で図８と９に示すプロセスを開始する。このようにして、ファイルシステムの各ファイルサーバは、全ての要求されたデータがバックアップされるまで、バックアップ要求とバックアップデータを受信する。
【００４５】
図１１はバックアップデータがテープ装置にバックアップされた後に、そのバックアップデータからファイルまたはディレクトリを復元するオペレーションのフローチャートを示す。本実施例によれば、バックアップマネジャ６１が復元要求を発行し次の情報を提供する。
【００４６】
バックアップデータの復元先：“ファイルサーバネームとデバイスファイルネーム”の組み合わせ、またはファイルシステムのディレクトリネームが指定される。復元先が指定されていないとき、データは元の位置で復元される（バックアップが行なわれたときと同じ位置）。
【００４７】
復元するファイルまたはディレクトリ：ファイルまたはディレクトリの全てまでは復元する必要のないとき、バックアップマネジャ６１はどのファイルまたはディレクトリを復元すべきかを指定する。また復元先が指定されなければならない。
【００４８】
ディスクの数：単一ネームスペースのファイルシステムをバックアップするとき、データは複数のファイルサーバに（そして複数のディスクに）亘って広がっている可能性がある。バックアップされるデータの合計サイズがディスクのサイズより小さければ、ユーザは単一のディスク３２、またはバックアップが実行されたときに使用されていたのと同じ数のディスクのどちらにデータを復元するかを選択することができる。例えば、１実施例によれば、データを復元するディスクの数の情報を提供する場合、ユーザは“０”または“１”を選択することができる。“０”が選ばれた場合、復元されるディスクの数はバックアップが実行されたときと同じであることを意味する。“１”が選ばれた場合は、データは単一のディスクに復元されることを意味する。さらに、“１”が選ばれた場合は、復元先が指定される必要があり、デバイスファイルネームで指定されねばならない。
【００４９】
図１１のステップ１１０１で、復元要求を受信したファイルサーバのバックアッププログラム１０４は復元先が指定されているかを判定する。復元先が指定されていたら、プロセスはステップ１１０２へ進む。復元先が指定されてなければ、データはもとの位置に復元されることになる（すなわち、データがもともとバックアップされた場所）。そしてプロセスは図１２のステップ１２０１へ進む。
【００５０】
ステップ１１０２で復元先が復元要求を受信したファイルサーバの中であるかが判定される。そうであれば、プロセスはステップ１１０３へ進み、そうでなければプロセスは１１０６へ進む。
【００５１】
ステップ１１０３で単一ディレクトリツリー１７５のルートディレクトリの直下に置かれたファイルシステムデータがディスクに復元される。図４の例では、ディスク３２Ａ−１（ディレクトリａ１、ａ３、．．．）に存在するファイルシステムデータは単一ディレクトリツリー１７５内の最上位に置かれているので、ディスク３２Ａ−１からバックアップされたファイルシステムデータを含むアーカイブファイルはアーカイブファイル２１３、２１４、または２１５から最初にディスクに復元されることが選択される。最初に復元するアーカイブファイルを見つけるため、バックアッププログラム１０４はパスネーム４０４をチェックする。必要であれば、バックアッププログラム１０４は適切なアーカイブデータを読むためテープの巻き戻しを行なう。
【００５２】
ステップ１１０４でプロセスは復元するディスクの数が指定されているかを判定する。プロセスがデータは単一のディスクに保存されると判定すると、プロセスはステップ１１０５へ進む。そうでない場合はプロセスはステップ１１０７へ進む。
【００５３】
ステップ１１０５で、プロセスはバックアップデータを同じディスクに復元する。この場合、一部のディレクトリネームは変更されるか更新されることが必要になる。例えば、ホスト１Ｂが管理していたデータ（ｂ６、ｂ７、ｂ８、．．．）を同じディスクにディレクトリａ１、ａ３、．．．として復元する場合、ａ４のディレクトリ情報が更新されねばならない。次にディレクトリまたはファイル（ｂ６、ｂ７、ｂ８、．．．）をディレクトリａ４の下に置くことが出来る。
【００５４】
ローカルファイルサーバがデータの復元先ではないと判定された場合、ステップ１１０６でそのローカルファイルサーバから復元先のファイルサーバに復元要求が発行される。復元先のファイルサーバが要求を受信すると、復元先のファイルサーバは図１１のステップ１１０１で処理を開始する。
【００５５】
ステップ１１０７でプロセスはバックアップデータを他のディスクに復元する。ステップ１１０２で、復元先がローカルファイルサーバでなければ、復元要求は復元先ファイルサーバに発行される。
【００５６】
ここで図１２を参照して、ステップ１２０１でバックアップ要求を受信するファイルサーバにルートディレクトリが存在するかが判定される。そうであれば、プロセスはステップ１２０２へ進む。そうでなければ、プロセスは１２０５へ進む。
【００５７】
ステップ１２０２で、ルートファイルシステムデータをディスクに復元するステップ１１０３と同様のプロセスが実行される。
【００５８】
ステップ１２０３で、次のファイルサーバに復元要求が発行される。例えば、テープ装置に保存された第二のアーカイブファイルがもともとはファイルサーバ１Ｂによりバックアップされたものであった場合、プロセスはファイルサーバ１Ｂに復元要求を発行する。復元要求を受信したファイルサーバにデータを復元して、復元オペレーションが完了した後、プロセスは他のファイルサーバによる復元が完了したことの通知を受信する。これらの通知を受信した後、プロセスはステップ１２０４へ進む。
【００５９】
ステップ１２０４で、データの全てが復元されたかが判定される。そうなっていなければ、復元要求を次のファイルサーバに発行可能とするため、プロセスはステップ１２０３へもどる。データの全てが復元されていたら、プロセスは終了する。
【００６０】
ステップ１２０５は、他のファイルサーバに復元要求を発行するステップ１２０３と同様である。他のファイルサーバが要求を受信すると、この他のファイルサーバは図１１のステップ１１０１のプロセスを開始する。
【００６１】
追加の実施例
上記の実施例において、説明はＮＦＳｖ４プロトコルに基づく単一のネームスペースを生成するファイルサーバに基づいている。しかしながら、本発明は他のクラスタ化ファイルシステムにも適用可能である。図１３は他の実施例による単一のネームスペース１３７５の他の例を示す。図１３に示すネームスペースでは、ローカルファイルシステム１０２とネットワークファイルシステム１０３（図２）が、ファイルの各々がどのファイルサーバに置かれているかを管理する。ファイルの各々がどのファイルサーバに置かれているのかに関する情報はファイル属性情報（アイノード）に保存されている。例えば、ファイル“ｂ６”はファイルサーバホスト１Ｂ上に、ファイル“ｂ７”はファイルサーバホスト１Ｎ上に置くことができる。このような場合、同じディレクトリ（例えば、“／ａ１／ａ４”）下の各ファイルが異なるファイルサーバで管理されるので、バックアッププログラム１０４はファイルシステムデータをバックアップする際に各ファイルの位置をバックアップしなければならない。
【００６２】
図１４は追加の実施例によるアーカイブファイル２１３’、２１４’、または２１５’のフォーマットの例を示す。エレメント４０１乃至４０８は図７で説明したのと同じである。しかしながらこの追加の実施例では、ファイルリスト４１０がアーカイブファイルフォーマットに付加されている。ファイルリスト４１０はバックアップするファイル情報の複数のセットを有しており、すなわちファイル情報の各セットは仮想パス４１１、ファイルＮｏ．４１２、及びパスネーム４１３を含んでいる。仮想パス４１１はバックアップされるファイルの単一のネームスペースでは絶対パスネームである。例えば、図１２のファイル“ｂ６”はファイルサーバ１Ｂの別のディレクトリの下に保存可能であるが、このファイルの仮想パス４１１は“／ａ１／ａ４／ｂ６”である。ファイルＮｏ．４１２は各ファイルがどのアーカイブファイルに保存されているかを示す。ホスト１Ｂ下のファイルとディレクトリが、ファイルＮｏ．４０２が“１”のアーカイブファイルにバックアップされるとき、このファイルＮｏ．４１２は“１”でなければならない。パスネーム４１３はローカルファイルシステムデータのパスネームである。ファイルリスト４１０をアーカイブデータ４０８の前に加えることを別として、上で説明した本実施例のバックアップと復元の方法は前述の実施例のものと同じであり、データファイルは図６に示した２１３’、２１４’、及び２１５’などと同様にバックアップデバイスに保存される。
【００６３】
従って、本発明が、クラスタ化ファイルシステムのユーザまたはクライアントホストにとって簡単なバックアップオペレーションを説明していることが分かるであろう。単一のバックアップコマンドをサーバに発行し、複数のストレージに亘って広がるネームスペース内の全てのファイルを自動的に見つけ出しバックアップすることができる。さらに、本明細書において特定の実施例が説明され記述されているが、当業者には、同じ目的を達成するために計算されるいかなる態様も、開示された特定の実施例に置き換わることが可能であることが理解される。本開示は本発明のいかなる、そして全ての適応、変形をも含むことが意図されており、以上の記述は説明のためになされたものであり、限定するものではないことが理解されるべきである。従って、発明の範囲は添付される請求項、ならびにこれら請求項が与えられる権利と同等の範囲を参照して適切に決定されるべきである。
【図面の簡単な説明】
【００６４】
添付図面は、上記の一般的説明、以下に示す好適なる実施例の詳細な説明と相俟って、ここで考慮される本発明の最良の態様における好適なる実施例の原理を説明し明らかにする役を果たす。
【図１】図１は本発明の一実施例によるファイルサーバシステムの例を示す。
【図２】図２は図１のファイルサーバシステムの機能図を示す。
【図３】図３はファイルシステムデータの例を示す。
【図４Ａ】図４Ａは本発明の単一ディレクトリのツリーすなわち単一ネームスペースの例を示す。
【図４Ｂ】図４Ｂはファイルサーバまたは他のファイルサーバのいずれの内で、アクセスされるファイル／ディレクトリが管理されるかをファイルサーバが決定する方法を示す。
【図５】図５は先行技術によるテープ装置でのデータバックアップの例を示す。
【図６】図６は本発明の実施例によるテープ装置でのデータバックアップの例を示す。
【図７】図７は本発明の実施例によるアーカイブファイルのファーマットの例を示す。
【図８】図８は本発明の実施例によるバックアップオペレーションを実行するプロセスのフローを示す。
【図９】図９は本発明の実施例によるバックアップオペレーションを実行するプロセスのフローを示す。
【図１０】図１０は本発明の実施例によるバックアップオペレーションを実行するプロセスのフローを示す。
【図１１】図１１は本発明の実施例によるファイルまたはディレクトリの復元オペレーションのフローチャートを示す。
【図１２】図１２は本発明の実施例によるファイルまたはディレクトリの復元オペレーションのフローチャートを示す。
【図１３】図１３は本発明の他の実施例による単一ディレクトリすなわち単一ネームスペースの他の例を示す。
【図１４】図１４は本発明の他の実施例によるアーカイブファイルのフォーマットの例を示す。
【符号の説明】
【００６５】
２……ＦＣスイッチ、４……クライアントホスト、５……ＬＡＮスイッチ、６……バックアップサーバ、１２……ＣＰＵ、１３……メモリ、１４……ＮＩＣ、１５……ＦＣ  Ｉ/Ｆ、３１……ＦＣ  Ｉ/Ｆ、３Ａ，３Ｂ，３Ｎ……ディスクストレージ
【図１】
2007272874.tif 000003
【図２】
2007272874.tif 000004
【図３】
2007272874.tif 000005
【図４Ａ】
2007272874.tif 000006
【図４Ｂ】
2007272874.tif 000007
【図５】
2007272874.tif 000008
【図６】
2007272874.tif 000009
【図７】
2007272874.tif 000010
【図８】
2007272874.tif 000011
【図９】
2007272874.tif 000012
【図１０】
2007272874.tif 000013
【図１１】
2007272874.tif 000014
【図１２】
2007272874.tif 000015
【図１３】
2007272874.tif 000016
【図１４】
2007272874.tif 000017
【外国語明細書】
2007272874000001.pdf