(57)【要約】【課題】従来、クライアントからのデータをＨＤＤに反映する前に障害でサーバがフェイルオーバーを実施するとクライアントからのデータの再書込みが必要なる。また、サーバ間で定期的に障害検出をするため、検出に時間がかかる。【解決手段】ファイルアクセスにＤＡＦＳを有し、サーバ上でキャッシュ一元化する事でデータを保持し、障害発生時にはデータの再書込みをサーバで実施する。これにより、クライアントからのデータをＨＤＤに反映する前にＤＡＦＳ装置が障害でダウンしてもフェイルオーバー実施後アプリケーションは異常を検出でずにデータの整合性を保障できる。【選択図】  図１
2004326638.tif 000002
【特許請求の範囲】
【請求項１】
複数のＮＡＳ装置間で共有するデータをキャッシュする能力を持つ機構。
【請求項２】
ＮＡＳに対しファイルアクセスした時にＤＡＦＳプロトコルを使用し、その時にキャッシュを利用することを特徴とする請求項１記載の機構。
【請求項３】
複数のＮＡＳ装置間でメモリとメモリを関連付けることを特徴とする請求項１記載の機構。
【請求項４】
複数のＮＡＳ装置間でメモリとメモリの関連付けをＶＩアーキテクチャを利用して行うことを特徴とする請求項１記載の機構。
【請求項５】
複数のＮＡＳ装置間で関連付けられたメモリ間で同時に書込みを行うことを特徴とする請求項１記載の機構。
【請求項６】
ＮＡＳ装置へ書込まれたデータを関連付けられたメモリとメモリの間でデータを移す手段を有することを特徴とする請求項１記載の機構。
【請求項７】
前記キャッシュ一元化機構は、
あるＮＡＳ装置に障害が発生した場合にＤＡＦＳプロトコルによってフェイルオーバーを実現する手段を有することを特徴をする機構。
【請求項８】
更に前記キャッシュ一元化機構は、
フェイルオーバー後にフェイルオーバー先のＮＡＳ装置が書込みしたデータをファイルシステムに書込みする手段を有することを特徴をする機構。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、複数のＮＡＳ装置が１つのファイルシステムを共有するクラスタシステムにおいてクライアントからのファイルアクセスとファイルアクセス後の障害の発生に伴うフェイルオーバー実施後のデータ保障に関する。
【０００２】
【従来の技術】
複数のＮＡＳ装置が１つのファイルシステムを共有するクラスタシステムでは、クライアントからファイルアクセスを行った時にファイルシステムのメタデータをサーバ間で共有し、データの整合性を保持している。ＮＡＳ装置の障害は、ＮＡＳ装置間で定期的に状態のチェックを行うことで検出している。障害発生によるフェイルオーバー時には、正常なＮＡＳ装置が障害の発生したＮＡＳ装置のネットワーク情報を引継ぐ事で継続してクライアントからのアクセスを可能にする（非特許文献１、非特許文献２）。
【０００３】
【非特許文献１】
“クラスタ構成フェイルオーバーによる高可用性ソリューション”、〔ｏｎｌｉｎｅ〕、ネットワークアプライアンス（Ｎｅｔｗｏｒｋ  Ａｐｐｌｉａｎｃｅ）、〔２００３年２月１２日検索〕、インターネット＜ＵＲＬ：ｈｔｔｐ：／／ｗｗｗ−ｊｐ．ｎｅｔａｐｐ．ｃｏｍ／ｐｒｏｄｕｃｔｓ／ｆｉｌｅｒ／ｃｌｕｓｔｅｒｅｄ．ｈｔｍｌ＞
【非特許文献２】
“Ｌｉｎｕｘクラスタリングへの招待”、〔ｏｎｌｉｎｅ〕、アットマーク・アイティ、〔２００３年２月１２日検索〕、インターネット＜ＵＲＬ：ｈｔｔｐ：／／ｗｗｗ．ａｔｍａｒｋｉｔ．ｃｏ．ｊｐ／ｆｌｉｎｕｘ／ｒｅｎｓａｉ／ｃｌｕｓｔｅｒ０２／ｃｌｕｓｔｅｒ０２．ｈｔｍｌ＞
【０００４】
【発明が解決しようとする課題】
従来技術では、クライアントからＮＡＳ装置に対してファイルへの書込みを行い、そのデータをＮＡＳ装置上のメモリにキャッシュした場合、ファイルに対するメタデータの更新のみ行われる。その結果、ＮＡＳ装置に障害が発生するとデータは失われる為、フェイルオーバー後に再度クライアントから同じファイルに対してデータの書込みが必要になる。
【０００５】
また、ＮＡＳ装置の状態を定期的にチェックし障害を検出する必要があり、そのための処理を実施しているため、ＮＡＳ装置で発生した障害の検出に時間がかかりクライアントでの処理が停止する可能性が生じる。
【０００６】
本発明の目的は、ＮＡＳ装置間で実施するフェイルオーバー時間を低減すると同時にデータをＮＡＳ装置間で共有する、また、クライアント上で実施する処理への影響を低減させることで高速かつ影響の少ないフェイルオーバー処理を実現するものである。
【０００７】
【課題を解決するための手段】
上記目的を達成するためにクライアントとＮＡＳ装置とのファイルのアクセスにＤＡＦＳプロトコルを使用し、クライアントからのデータをＮＡＳ装置上にキャッシュする際にＮＡＳ装置間で共有するためのＮＡＳ装置間キャッシュ一元化機構を有する。
【０００８】
【発明の実施の形態】
図１は、本発明を適用したＮＡＳサーバの実施形態を示した図である。以下、ｘは任意の整数を表す。
【０００９】
ＮＡＳサーバ１は、ＤＡＦＳサーバ１０、ファイルシステム２０及びＤＡＦＳサーバキャッシュ一元化機構１００を有する。ＤＡＦＳサーバ１０はＤＡＦＳクライアントとＤＡＦＳプロトコルで接続されるプロトコルインタフェースである。ファイルシステム２０はファイルをＨＤＤ上で管理するシステムである。ＤＡＦＳサーバキャッシュ一元化機構１００は、ＤＡＦＳサーバ１０が受領したデータなどをＮＡＳサーバ１間で共有する仕組みを有する。
【００１０】
図２はキャッシュ一元化機構をＶＩアーキテクチャ２００で関連付けた図である。ＮＡＳサーバ１のメモリ３０をＶＩアーキテクチャ２００で関連付けデータを一元化する。データを受領したＤＡＦＳサーバ１０はＶＩアーキテクチャ２００によってマッピングされているＤＡＦＳサーバ１０のメモリ３０にデータをコピーする。
【００１１】
図３はキャッシュ一元化方式をメモリ二重書きシステム３００で実施した図である。データを受領したＤＡＦＳサーバ１０はメモリ二重書きシステム３００にデータ転送要求する事で両方のＤＡＦＳサーバ１０のメモリ３０にデータを転送する。
【００１２】
図４はＮＡＳサーバ１間で共有メモリ４００を実装した図である。共有メモリ４００のあるエリアを両方のＮＡＳサーバ１で仮想メモリとして割り当て、データを受領する事で一元化を行う。
【００１３】
図５はＮＡＳサーバ１間での管理情報を示した図である。ＭＨには各ＮＡＳサーバ１でのアドレス空間の識別子を示し、Ｖａｌｉｄは有効／無効を示す。Ｖａｌｉｄが有効の場合、メモリ３０上にデータが存在する。
【００１４】
図６はＮＡＳサーバ１間でのデータを共有する為のデータ書込み処理１００１のシーケンスである。クライアントがデータを書込む為にＮＡＳサーバ１に書込み要求を実施するとＮＡＳサーバ１はそれを受信する為にクライアントから書込み要求１００２を行う。クライアントから実際にデータが送信されるとＮＡＳサーバ１は、自ＮＡＳサーバ１にデータを書込む為にメモリ書込み処理１００３を行う。自ＮＡＳサーバ１に書込まれたデータを共有するＮＡＳサーバ１にデータを送信する為に共有メモリデータ送信処理１００４を行う。共有メモリをもつＮＡＳサーバ１からの完了を受領する為に完了報告受信１００５を行う。完了報告を受けたＮＡＳサーバ１はクライアントにデータの書き込み要求の完了を報告する為にクライアントへ完了報告１００６を行う。本来、受領したデータを受けたＮＡＳサーバ上に書込みが完了した時点でクライアントに報告する為、データを複数のＮＡＳサーバ間で共有できなかった事が可能にする点が従来方式と異なる点である。
【００１５】
【発明の効果】
本発明によれば、クライアントからのデータをＨＤＤに反映する前にＤＡＦＳ装置が障害でダウンしてもフェイルオーバー実施後アプリケーションは異常を検出でずにデータの整合性を保障できる。
【図面の簡単な説明】
【図１】本発明を適用したシステムの実施形態の構成を示す図である。
【図２】本実施形態におけるＶＩアーキテクチャを使用した場合の構成を示す図である。
【図３】本実施形態におけるメモリ二重書きシステムを使用した場合の構成を示す図である。
【図４】本実施形態における共有メモリを使用した場合の構成を示す図である。
【図５】ＮＡＳ装置間で共通して持つ情報を示す図である。
【図６】クライアントからデータを書込みした場合のＮＡＳ装置間で共有する処理を示したものである。
【符号の説明】
１…ＮＡＳサーバ。
【図１】
2004326638.tif 000003
【図２】
2004326638.tif 000004
【図３】
2004326638.tif 000005
【図４】
2004326638.tif 000006
【図５】
2004326638.tif 000007
【図６】
2004326638.tif 000008