JP2003131924A - リモートアクセスプログラム、リモートアクセス要求処理プログラム、およびクライアントコンピュータ - Google Patents

リモートアクセスプログラム、リモートアクセス要求処理プログラム、およびクライアントコンピュータ

Info

Publication number
JP2003131924A
JP2003131924A JP2001321407A JP2001321407A JP2003131924A JP 2003131924 A JP2003131924 A JP 2003131924A JP 2001321407 A JP2001321407 A JP 2001321407A JP 2001321407 A JP2001321407 A JP 2001321407A JP 2003131924 A JP2003131924 A JP 2003131924A
Authority
JP
Japan
Prior art keywords
file
access
server
storage device
remote
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2001321407A
Other languages
English (en)
Inventor
Katsutoshi Yamauchi
勝利 山内
Yoshitake Kawase
義剛 川瀬
Isao Hosokawa
勲 細川
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2001321407A priority Critical patent/JP2003131924A/ja
Priority to US10/117,835 priority patent/US7124133B2/en
Publication of JP2003131924A publication Critical patent/JP2003131924A/ja
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Computer And Data Communications (AREA)

Abstract

(57)【要約】 【課題】 複数のサーバそれぞれを介した複数のアクセ
ス経路のうちの1つをファイル単位に指定できるように
する。 【解決手段】 クライアント1は、複数のサーバ3,
4,・・・それぞれを経由したストレージデバイス2へ
の複数のアクセス経路を定義する(ステップS1)。次
に、ストレージデバイス2内のファイル2a,2b,・
・・を指定したアクセス要求を受け取ると、ストレージ
デバイス2へのアクセスを複数のアクセス経路にファイ
ル単位で分散させるための所定の規則に従って、複数の
サーバ3,4,・・・の中から、ファイル2a,2b,
・・・へのアクセス経路となる中継サーバコンピュータ
を決定する(ステップS2)。そして、決定された中継
サーバコンピュータを経由したアクセス経路により、ス
トレージデバイス2内のファイル2a,2b,・・・に
対してアクセスする(ステップS3)。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明はリモートアクセスを
行うためのリモートアクセスプログラム、リモートアク
セス要求処理プログラムおよびクライアントコンピュー
タに関し、特に複数のサーバコンピュータに接続された
ストレージデバイスをクライアントコンピュータで使用
するためのリモートアクセスプログラム、リモートアク
セス要求処理プログラムおよびクライアントコンピュー
タに関する。
【0002】
【従来の技術】ネットワークを介して資源を共用するこ
とを可能にしたファイルシステムとして、一般的にNF
S(Network File System)が用いられる。NFSでは、
サーバコンピュータ(以下、単にサーバという)にスト
レージデバイスが接続される。このストレージデバイス
がサーバ上の資源として、ネットワークを介して接続さ
れた他のクライアントコンピュータ(以下、単にクライ
アントという)に提供される。
【0003】NFSを利用するクライアントが、サーバ
上の資源を、クライアント上のマウントポイント(UN
IX(商標)系のOS(Operating System)の場合)にマ
ウントする。これにより、クライアントのユーザはマウ
ントポイントからローカルファイルシステムと同様に、
サーバ上の資源を参照することができる。このとき、1
つのマウントポイントに対して指定できるサーバは1つ
である。
【0004】ところで、複数のノードから磁気ディスク
等のストレージデバイスを直接共有可能なシステムとし
て、SAN(Storage Area Network)がある。SANは、
それ全体をファイルサーバとして機能させることもでき
る。その場合、SANを構成する複数のサーバそれぞれ
が、ファイルサーバとなり得る。このとき、クライアン
トは、1つのマウントポイントに対して任意の1つのサ
ーバを指定することで、SANが提供するストレージデ
バイスにアクセスすることができる。
【0005】なお、ネットワーク上には、多数のクライ
アントが接続される場合がある。この場合、各クライア
ントにおいてSANで構成されたサーバ上の資源をNF
Sで参照するには、負荷が1つのサーバに集中しないよ
うクライアント又はマウントポイント単位で、指定する
サーバを分散する必要がある。
【0006】
【発明が解決しようとする課題】しかし、クライアント
又はマウントポイント単位で、資源を提供するサーバの
指定を分散させても、クライアントの使用状況に偏りが
あれば、特定のサーバを介したアクセスのみが大量に発
生することがある。すなわち、同じサーバを指定した複
数のクライアントにおいて同時にSANが提供する資源
へのアクセスがあった場合、他のサーバの処理能力に余
裕があっても、クライアントで予め指定されたサーバを
介したアクセスしかできない。そのため、SAN全体で
の処理能力に余裕があるにも拘わらず、処理速度の低下
を招くという不都合が生じる。
【0007】また、クライアント単位でサーバを分散
し、それらが同じ資源を参照すると、同じファイル(デ
ータ)を複数のサーバで管理することになり、ファイル
データの一貫性の保証が困難となる。
【0008】さらに、サーバが故障等によりシステムダ
ウンしてしまった場合、そのサーバをアクセスポイント
指定していたクライアントからの処理要求が、別サーバ
に自動的に切り替わるシステムが強く望まれている。
【0009】本発明はこのような点に鑑みてなされたも
のであり、複数のサーバそれぞれを介した複数のアクセ
ス経路をファイル毎に指定可能なリモートアクセスプロ
グラムおよびクライアントコンピュータを提供すること
を目的とする。
【0010】また、本発明の他の目的は、ファイル単位
でのアクセス経路の指定内容の変更を、クライアントコ
ンピュータに通知することができるリモートアクセス要
求処理プログラムを提供することである。
【0011】
【課題を解決するための手段】本発明では上記課題を解
決するために、図1に示すようなリモートアクセスプロ
グラムが提供される。本発明に係るリモートアクセスプ
ログラムは、共通のストレージデバイス2へのアクセス
機能を提供する複数のサーバ3,4,・・・を介して、
ストレージデバイス2へのアクセスを行うための以下の
処理を、コンピュータに実行させる。
【0012】本発明のリモートアクセスプログラムを実
行するコンピュータは、複数のサーバ3,4,・・・そ
れぞれを経由したストレージデバイス2への複数のアク
セス経路を定義する(ステップS1)。次に、コンピュ
ータは、ストレージデバイス2内のファイル2a,2
b,・・・を指定したアクセス要求を受け取ると、スト
レージデバイス2へのアクセスを複数のアクセス経路に
ファイル単位で分散させるための所定の規則に従って、
複数のサーバ3,4,・・・の中から、ファイル2a,
2b,・・・へのアクセス経路となる中継サーバコンピ
ュータを決定する(ステップS2)。そして、コンピュ
ータは、決定された中継サーバコンピュータを経由した
アクセス経路により、ストレージデバイス2内のファイ
ル2a,2b,・・・に対してアクセスする(ステップ
S3)。
【0013】このようなリモートアクセスプログラムが
コンピュータで実行されることにより、コンピュータで
アクセス要求が発生すると、ファイル毎に中継サーバコ
ンピュータが決定され、その中継サーバコンピュータを
介してストレージデバイス2内のファイル2a,2b,
・・・に対するアクセスが行われる。
【0014】また、ストレージデバイスへのアクセス機
能を提供するためのリモートアクセス要求処理プログラ
ムにおいて、コンピュータに、前記ストレージデバイス
へのアクセス機能の提供を希望するクライアントコンピ
ュータのリストを作成し、他のサーバコンピュータに代
わってストレージデバイスへのアクセス機能を提供すべ
き代行ファイルの情報を受け取ると、リストに登録され
たクライアントコンピュータそれぞれに対して、代行フ
ァイルへのアクセス機能提供処理を代行する旨を通知
し、ストレージデバイス内のファイルのうち、所定の規
則によって予め指定されたファイルおよび代行ファイル
へのアクセス機能を、リストに登録されたクライアント
コンピュータに対して提供する、処理を実行させること
を特徴とするリモートアクセス要求処理プログラムが提
供される。
【0015】このようなリモートアクセス要求処理プロ
グラムをコンピュータに実行させることで、そのコンピ
ュータが、他のサーバコンピュータに代わってストレー
ジデバイスへのアクセス機能を提供すべき代行ファイル
の情報を受け取ると、リストに登録されたクライアント
コンピュータに対して代行ファイルへのアクセス機能提
供処理を代行する旨が通知される。そして、ストレージ
デバイス内のファイルのうち、所定の規則によって予め
指定されたファイルおよび代行ファイルへのアクセス機
能が、リストに登録されたクライアントコンピュータに
対して提供される。
【0016】また、共通のストレージデバイスへのアク
セス機能を提供する複数のサーバ3,4,・・・を介し
て、ストレージデバイス2へのアクセスを行うためのク
ライアント1において、複数のサーバ3,4,・・・そ
れぞれを経由したストレージデバイス2への複数のアク
セス経路を定義するアクセス経路定義手段と、ストレー
ジデバイス2内のファイル2a,2b,・・・を指定し
たアクセス要求を受け取ると、ストレージデバイス2へ
のアクセスをアクセス経路定義手段で定義された複数の
アクセス経路にファイル単位で分散させるための所定の
規則に従って、複数のサーバ3,4,・・・の中から、
ファイルへのアクセス経路となる中継サーバコンピュー
タを決定するアクセス経路決定手段と、アクセス経路決
定手段で決定された中継サーバコンピュータを経由した
アクセス経路により、ストレージデバイス2内のファイ
ル2a,2b,・・・に対してアクセスするリモートア
クセス手段と、を有することを特徴とするクライアント
コンピュータが提供される。
【0017】このようなクライアントコンピュータによ
れば、クライアント1でアクセス要求が発生すると、フ
ァイル毎に中継サーバコンピュータが決定され、その中
継サーバコンピュータを介してストレージデバイス2内
のファイル2a,2b,・・・に対するアクセスが行わ
れる。
【0018】
【発明の実施の形態】以下、本発明の実施の形態を図面
を参照して説明する。まず、本発明の実施の形態に適用
される発明の概要について説明し、その後、本発明の実
施の形態の具体的な内容を説明する。
【0019】図1は、本発明の実施の形態に適用される
発明の概念図である。クライアントコンピュータ(クラ
イアント)1は、リモートアクセスプログラムを実行す
ることにより、複数のサーバコンピュータ(サーバ)
3,4,・・・を介してストレージデバイス2に格納さ
れたファイル2a,2b,・・・に対してアクセスする
ことができる。
【0020】クライアント1内には、リモートアクセス
プログラムを実行することで、分散ネットワークファイ
ルシステム1aが構築される。分散ネットワークファイ
ルシステム1aは、複数のサーバ3,4,・・・それぞ
れを経由したストレージデバイス2への複数のアクセス
経路を定義する(ステップS1)。アクセス経路の定義
とは、たとえば、マウントポイントにサーバ3,4,・
・・上のファイルシステムをマウントすることである。
【0021】定義内容は、たとえばテーブル1bで管理
される。テーブル1bに登録されるアクセス経路の情報
は、リモートアクセス要求を出力すべきサーバの識別情
報(たとえば、ネットワーク上でのサーバノード名)と
そのサーバでストレージデバイス2を管理しているファ
イルシステムの識別情報(たとえば、ファイルシステム
名)などである。
【0022】その後、クライアント1は、ストレージデ
バイス2内のファイル2a,2b,・・・を指定したア
クセス要求を受け取ると、ストレージデバイス2へのア
クセスを複数のアクセス経路にファイル単位で分散させ
るための所定の規則に従って、複数のサーバ3,4,・
・・の中から、ファイル2a,2b,・・・へのアクセ
ス経路となる中継サーバを決定する(ステップS2)。
すなわち、アクセス対象のファイルに対して、アクセス
経路となるサーバ(中継サーバ)を割り振る。
【0023】所定の規則としては、たとえば、アクセス
対象のファイルに予め設定されているファイルID(IDe
ntification)番号と、アクセス経路を構築しているサー
バ3,4,・・・の数とを変数とした計算式を用いるこ
とができる。クライアント1が複数ある場合、中継サー
バ決定用の規則として、全てのクライアント1で共通の
規則が用いられる。これにより、全てのクライアント1
において、各ファイル2a,2b,・・・に対応する中
継サーバが統一される。
【0024】次に、クライアント1は、決定された中継
サーバを経由したアクセス経路により、ストレージデバ
イス2内のファイル2a,2b,・・・に対してリモー
トアクセスを行う(ステップS3)。
【0025】このようにリモートアクセスを行えば、ス
トレージデバイス2内のファイル2a,2b,・・・に
対するリモートアクセスが、ファイル単位で複数のサー
バ3,4,・・・に分散処理される。その結果、クライ
アント1からストレージデバイス2に対する大量のアク
セスが発生しても、複数のサーバ3,4,・・・で効率
よく処理される。
【0026】なお、中継サーバが停止した場合には、停
止した中継サーバの処理を別のサーバに代行させること
ができる。その場合、クライアント1は、複数のサーバ
の中から、中継サーバの処理を代行する代行サーバを決
定する。そして、クライアント1は、決定された代行サ
ーバを経由したアクセス経路により、ストレージデバイ
ス2内のアクセス要求で指定されたファイル2a,2
b,・・・に対してアクセスする。
【0027】さらに、クライアント1が代行サーバを介
してファイルのリモートアクセスを行った場合、そのフ
ァイルに対する他のクライアントからのリモートアクセ
スも、代行サーバを介して行わせるようにしてもよい。
その場合、たとえば、代行サーバを介してリモートアク
セスするファイルの情報を、全クライアントに通知し、
全クライアントが、通知されたファイルに関しては代行
サーバを介してリモートアクセスを行うようにする。こ
れにより、1つのファイルに対するアクセスは、常に1
つのサーバを経由して行われることとなり、データの一
貫性を保証することができる。
【0028】なお、代行サーバを介してリモートアクセ
スするファイルの情報の全クライアントへの通知は、代
行サーバが行うことができる。たとえば、各サーバ3,
4,・・・は、ストレージデバイス2へのアクセス機能
の提供を希望するクライアントのリストを作成してお
く。そして、サーバ3,4,・・・は、他のサーバに代
わってストレージデバイス2へのアクセス機能を提供す
べきファイル(代行ファイル)の情報を受け取ると、リ
ストに登録されたクライアントそれぞれに対して、代行
ファイルへのアクセス機能提供処理を代行する旨を通知
する。その後、サーバ3,4,・・・は、ストレージデ
バイス2内のファイル2a,2b,・・・のうち、所定
の規則によって予め指定されたファイルおよび代行ファ
イルへのアクセス機能を、リストに登録されたクライア
ントに対して提供する。
【0029】このようなリモートアクセスの分散処理
は、たとえば、SANによって提供される資源に対する
ネットワークを介したアクセスに適用することができ
る。以下、SANによって提供される共有資源を、複数
のクライアントコンピュータで利用する処理に、本発明
の分散処理を適用した場合を例に採り、本発明の実施の
形態を具体的に説明する。
【0030】図2は、本実施の形態のシステム構成図で
ある。本実施の形態では、複数のクライアント100,
100a,・・・,100nがネットワーク10を介し
てSAN200に接続されている。
【0031】SAN200では、ストレージデバイス2
10に対して複数のサーバ220,220a,・・・,
220nが接続されている。ストレージデバイス210
には、複数のファイルが所定のファイルシステムに適合
したデータ構造で格納されている。ファイルシステム
は、OS毎に異なる。たとえば、UNIX系のOSであ
れば、ufs(4.3BSD(Berkeley Software Distr
ibution)と互換性のあるファイルシステム)やExtended
ファイルシステム(ext, ext2, ext3)などがある。
【0032】複数のサーバ220,220a,・・・,
220nは、それぞれネットワーク10に接続されてお
り、ネットワーク10を介して、ストレージデバイス2
10に格納されたファイルへのアクセス環境を、クライ
アント100,100a,・・・,100nに対して提
供する。
【0033】図3は、本発明の実施の形態に用いるクラ
イアントのハードウェア構成例を示す図である。クライ
アント100は、CPU(Central Processing Unit)1
01によって装置全体が制御されている。CPU101
には、バス107を介してRAM(Random Access Memor
y)102、ハードディスクドライブ(HDD:Hard Disk
Drive)103、グラフィック処理装置104、入力イ
ンタフェース105、および通信インタフェース106
が接続されている。
【0034】RAM102には、CPU101に実行さ
せるOS(Operating System)のプログラムやアプリケー
ションプログラムの少なくとも一部が一時的に格納され
る。また、RAM102には、CPU101による処理
に必要な各種データが格納される。HDD103には、
OSやアプリケーションプログラムが格納される。
【0035】グラフィック処理装置104には、モニタ
11が接続されている。グラフィック処理装置104
は、CPU101からの命令に従って、画像をモニタ1
1の画面に表示させる。入力インタフェース105に
は、キーボード12とマウス13とが接続されている。
入力インタフェース105は、キーボード12やマウス
13から送られてくる信号を、バス107を介してCP
U101に送信する。
【0036】通信インタフェース106は、ネットワー
ク10に接続されている。通信インタフェース106
は、ネットワーク10を介して、サーバ220,220
a,・・・,220nとの間でデータの送受信を行う。
【0037】以上のようなハードウェア構成によって、
本実施の形態の処理機能を実現することができる。な
お、図3には、代表的にクライアント100のハードウ
ェア構成を示したが、他のクライアント100a,・・
・,100nも同様のハードウェア構成で実現すること
ができる。また、サーバ220,220a,・・・,2
20nのハードウェア構成もほぼ同様である。ただし、
サーバ220,220a,・・・,220nには、外部
ストレージデバイス用のインタフェースが実装されてい
る。サーバ220,220a,・・・,220nは、そ
のインタフェースを介してストレージデバイス210に
接続される。
【0038】図4は、本実施の形態におけるクライアン
トとサーバとの機能ブロック図である。クライアント1
00は、リモートマウント構築・監視部110、マウン
ト情報テーブル120、ファイルID取得部130、取
得ファイルID管理テーブル140、リモートアクセス
処理部150、代行サーバ管理部160および代行サー
バノードテーブル170を有している。なお、クライア
ント100内に示している各構成要素によって、分散ネ
ットワークファイルシステム190が構築される。
【0039】リモートマウント構築・監視部110は、
クライアント100におけるローカルなファイルシステ
ム配下の1つのアクセスポイントに、各サーバ220,
220a,・・・,220nにおけるファイルシステム
をリモートマウントする。リモートマウント構築・監視
部110は、リモートマウントを行う際には、リモート
マウント要求をサーバ220に対して出力する。リモー
トマウント処理の終了後、リモートマウント構築・監視
部110は、サーバ220におけるファイルシステム名
などをサーバ220から受け取り、リモートマウントに
関するマウント情報テーブル120を生成する。
【0040】また、リモートマウント構築・監視部11
0は、リモートマウントしたサーバ220,220a,
・・・,220nの状態(動作しているか、停止してい
るかなど)を監視し、その状態をマウント情報テーブル
120に登録する。
【0041】リモートマウント情報テーブル222に
は、リモートマウントの対象となったサーバ220,2
20a,・・・,220nと、そのサーバ220,22
0a,・・・,220nが提供するファイルシステムと
に関する情報が登録される。なお、リモートマウント情
報テーブル222内では、各サーバ220,220a,
・・・,220nの情報が、予め決められた順番(全ク
ライアントで共通)で並べられている。
【0042】また、リモートマウント情報テーブル22
2には、各サーバ220,220a,・・・,220n
の状態や、マスタサーバを示す情報なども登録される。
ここで、マスタサーバとは、クライアント100,10
0a,・・・,100nに対して、ストレージデバイス
210内の各ファイルのファイルID番号を通知するサ
ーバである。ファイルID番号とは、ufs等のローカ
ルファイルシステムがファイルを番号により管理できる
よう各ファイルに割り当てられた番号であり、通常iノ
ード番号と呼ばれている。マスタサーバは、正常に動作
しているサーバのうちの1つである。
【0043】ファイルID取得部130は、リモートア
クセス処理部150からの要求に応じて、ファイルID
番号取得要求をマスタサーバに対して出力し、マスタサ
ーバからファイルID番号を取得する。ファイルID取
得部130は、取得したファイルID番号を取得ファイ
ルID管理テーブル140に登録する。
【0044】取得ファイルID管理テーブル140に
は、過去にクライアント100からアクセスしたことの
あるファイルのファイルID番号が登録されている。フ
ァイルID番号が取得ファイルID管理テーブル140
に登録されていることで、同じファイルに繰り返しアク
セスする際に、その都度マスタサーバからファイルID
を取得する必要がなくなる。
【0045】リモートアクセス処理部150は、他のア
プリケーションソフトウェアや対話型処理などを実行す
るプロセスからのアクセス要求に応答して、SAN20
0で提供されるストレージデバイス210にアクセスす
る。ストレージデバイス210へのアクセスは、複数の
サーバ220,220a,・・・,220nのいずれか
を介して行われる。
【0046】本実施の形態では、アクセス対象となるフ
ァイルのファイルID番号とSAN200を構成するサ
ーバ数とに基づく所定の計算によって、アクセス経路が
決定される。そこで、リモートアクセス処理部150
は、SAN200へのリモートアクセス要求の出力に先
立って、アクセス対象となるファイルのファイルID番
号を取得する。リモートアクセス処理部150は、アク
セス対象のファイルのファイルID番号が取得ファイル
ID管理テーブル140に登録されていれば、取得ファ
イルID管理テーブル140から該当するファイルID
番号を取得する。また、リモートアクセス処理部150
は、アクセス対象のファイルのファイルID番号が取得
済ファイルID管理テーブル140に登録されていなけ
れば、ファイルID取得部130に対してファイルID
番号の取得要求を出し、ファイルID取得部130から
ファイルID番号を取得する。
【0047】リモートアクセス処理部150は、ファイ
ルID番号を取得したら、ファイルID番号の数値をサ
ーバ数で除算し、その余りを得る。そして、リモートア
クセス処理部150は、余りの値に1を加算した値に対
応する順番のサーバ(中継サーバ)を介したアクセス経
路を、そのファイルへのアクセス経路として決定する。
ファイルID番号はファイルに対して一意であり、サー
バの配列が全てのクライアント100,100a,・・
・,100nで共通であるため、ある1つのファイルに
対するアクセス経路(どのサーバを介してアクセスする
か)は、全クライアント100,100a,・・・,1
00nにおいて同じとなる。
【0048】アクセス経路が決定したら、リモートアク
セス処理部150は、決定したアクセス経路に対応する
サーバに対して、リモートアクセス要求を出す。ファイ
ルの書き出し要求であれば、リモートアクセス要求と共
に、ファイルの内容がサーバに転送される。ファイルの
読み込み要求であれば、サーバからファイルが送り返さ
れる。その場合、リモートアクセス処理部150は、サ
ーバから送られたファイルを受け取り、アクセス要求を
出力したプロセスにそのファイルを渡す。
【0049】なお、中継サーバが停止している場合に
は、リモートアクセス処理部150は、代行サーバを介
してリモートアクセスを行う。また、リモートアクセス
処理部150は、代行サーバノードテーブル170に登
録されているファイルに関しては、代行サーバノードテ
ーブル170において指定されている代行サーバを介し
て、リモートアクセスを行う。
【0050】代行サーバ管理部160は、マウント情報
テーブル120の内容を参照して、システムダウンなど
により通信ができなくなったサーバの有無を判断する。
通信できないサーバが発生したら、代行サーバ管理部1
60は、そのサーバに対応する代行サーバノードテーブ
ル170を生成する。そして、代行サーバ管理部160
は、通信できないサーバが行うべき処理を代行させる他
のサーバを特定し、そのサーバに対して置換ファイルテ
ーブル作成依頼を出力する。
【0051】また、代行サーバ管理部160は、サーバ
220から代行サーバノードテーブル作成依頼を受け取
ったときにも、代行サーバノードテーブル170を作成
する。この際、代行サーバノードテーブル作成依頼に含
まれる置換ファイルのリストに基づいて、そのファイル
に対するリモートアクセスを、代行サーバノードテーブ
ル作成依頼を出力したサーバ220が代行するように、
代行サーバノードテーブル170に対して、各ファイル
の代行サーバの情報を登録する。
【0052】代行サーバノードテーブル170は、リモ
ートアクセスの処理に関して、通信できないサーバの処
理を代行させる他のサーバに関する情報である。どのサ
ーバに代行させるのかを示す情報が、アクセス対象とな
るファイル単位で管理される。代行サーバノードテーブ
ル170は、停止したサーバ毎に生成される。
【0053】サーバ220は、リモートマウント受付部
221、リモートマウント情報テーブル222、ファイ
ルID提供部223、ファイル提供部224、リモート
アクセス代行管理部225、および置換ファイルテーブ
ル226を有している。
【0054】リモートマウント受付部221は、クライ
アント100からのリモートマウント要求に応じて、ス
トレージデバイス210に対するネットワーク10(図
2に示す)を経由したリモートアクセス環境を、クライ
アント100に提供する。すなわち、リモートマウント
受付部221は、ストレージデバイス210をマウント
し、ファイル提供部224がストレージデバイス210
内のファイルにアクセスできるようにする。
【0055】さらに、リモートマウント受付部221
は、マウントした領域を制御するファイルシステム名
(装置内のパーティション毎に、サーバ内でユニークな
名称が付けられる)を、リモートマウント受付完了通知
と共にクライアント100のリモートマウント構築・監
視部110に通知する。また、リモートマウント受付部
221は、リモートマウントを依頼してきたクライアン
ト100の識別情報(クライアントノード名など)を、
リモートマウント情報テーブル222に登録する。
【0056】リモートマウント情報テーブル222は、
サーバ220に対してリモートマウントを行ったクライ
アントのリストを管理する情報である。リモートマウン
ト情報テーブル222には、クライアントの識別情報
や、リモートマウントの対象となるストレージデバイス
210のファイルシステム名などが登録される。
【0057】ファイルID提供部223は、クライアン
ト100からのファイルID番号取得要求に応答して、
ストレージデバイス210よりファイルID番号取得要
求で指定されたファイルのファイルID番号を取得す
る。そして、ファイルID提供部223は、取得したフ
ァイルID番号をクライアント100に通知する。な
お、ファイルID番号は、ストレージデバイス210に
設けられているファイル管理情報を参照することで取得
することができる。たとえば、ストレージデバイス21
0には、ディレクトリ毎のファイル名のリストと、その
ファイルのファイルID番号とが対応づけて登録されて
いる。
【0058】ファイル提供部224は、クライアントか
らのリモートアクセス要求に応答して、そのリモートア
クセス要求で指定されたストレージデバイス210内の
ファイルに対して、入出力を行う。リモートアクセス要
求が読み込み要求であれば、ファイル提供部224は、
指定されたファイルをストレージデバイス210から取
り出し、クライアント100に送信する。
【0059】リモートアクセス代行管理部225は、ク
ライアント100から置換ファイルテーブル作成依頼を
受け取ると、代行処理の対象とすべきファイルのリスト
を管理するための置換ファイルテーブル226を生成す
る。代行処理によるリモートファイルサクセスが行われ
置換ファイルテーブル226の内容が更新されると、リ
モートアクセス代行管理部225は、リモートマウント
情報テーブル222を参照し、サーバ220を介したリ
モートマウントを行っているクライアントのリストを取
得する。そして、リモートアクセス代行管理部225
は、代行処理依頼を出力したクライアント以外のクライ
アントに対して、代行サーバノードテーブルの作成依頼
を出力する。代行サーバノードテーブルの作成依頼に
は、置換ファイルテーブル226の内容を含める。
【0060】置換ファイルテーブル226は、他のサー
バが停止したときに、そのサーバの代行で処理を行うべ
き対象のファイルに関する情報である。次に、クライア
ント100とサーバ220とで生成される各種テーブル
のデータ構造例について説明する。
【0061】図5は、マウント情報テーブルの一例を示
す図である。図5の例では、マウント情報テーブル12
0には、「サーバノード名」、「IP(Internet Protoc
ol)アドレス」、「ファイルシステム」、および「状
態」の欄が設けられている。各欄の横方向に並べられた
情報同士が互いに関係づけられている。
【0062】「サーバノード名」は、リモートマウント
先のサーバの名称(ノード名)である。ノード名は、ネ
ットワーク10上でサーバを一意に識別するための名称
である。ノード名は、たとえば、インターネットなどに
おけるドメイン名である。ノード名は、予め決められた
順番で並べられている。ノード名の配列は、全てのクラ
イアント100,100a,・・・,100nのマウン
ト情報テーブルにおいて共通である。
【0063】「IPアドレス」は、サーバのIPアドレ
スである。IPアドレスは、ネットワーク10において
各サーバにユニークな値が割り振られる。「ファイルシ
ステム」は、マウント先のサーバにおいてストレージデ
バイス210を管理しているファイルシステムの名称
(ファイルシステム名)である。
【0064】「状態」は、サーバの動作状態と、マスタ
サーバの指定とを示す情報である。「状態」には、「O
K」、「NG」、および「MASTER」のいずれかの
状態が設定される。「OK」は、対応するサーバと通信
し、そのサーバのファイルシステムが管理するファイル
にアクセス可能である状態を示している。「NG」は、
対応するサーバとの通信が途絶え、そのサーバのファイ
ルシステムが管理するファイルにアクセスできない状態
を示している。「MASTER」は、対応するサーバ
が、ファイルID番号取得先のサーバ(マスタサーバ)
であることを示している。
【0065】マスタサーバは、状態が「OK」であるサ
ーバ中の1つのサーバであり、そのサーバとの通信が途
絶えたときには、状態が「OK」の他のサーバがマスタ
サーバとなる。本実施の形態では、サーバの配列で現在
のマスタサーバの次のサーバに、マスタサーバが引き継
がれるものとする。図5の例では、サーバノード名が
「SVR−1」のサーバが、マスタサーバとなってい
る。
【0066】図6は、取得ファイルID管理テーブルの
一例を示す図である。図6の例では、取得ファイルID
管理テーブル140には、「パス」、「ファイル名」、
および「ファイルID」の欄が設けられている。各欄の
横方向に並べられた情報どうしが互いに関係づけられて
いる。
【0067】「パス」は、過去にリモートアクセスした
ファイルのパスである。このパスは、ストレージデバイ
ス210におけるデータ構造上のルートディレクトリか
らアクセス対象のファイルが格納されたディレクトリま
でのパス(経路)である。
【0068】「ファイル名」は、過去にリモートアクセ
スしたファイルのファイル名である。「ファイルID」
は、過去にリモートアクセスしたファイルに関して、マ
スタサーバから取得したファイルID番号である。
【0069】図7は、代行サーバノードテーブルの一例
を示す図である。図7の例では、代行サーバノードテー
ブル170には、「サーバノード名」、「ファイルシス
テム」、「ファイルID」の欄が設けられている。各欄
の横方向に並べられた情報どうしが互いに関係づけられ
ている。なお、代行サーバノードテーブル170は、通
信できなくなったサーバそれぞれに対応づけて生成され
る。
【0070】「サーバノード名」は、代行サーバノード
テーブル170を介してリモートアクセスを行っていた
ファイルへのアクセスを代行するサーバ(代行サーバ)
のノード名である。
【0071】「ファイルシステム」は、リモートアクセ
スの代行を行う対象のファイルを管理する代行サーバ上
でのファイルシステムの名称である。「ファイルID」
は、リモートアクセスの代行を行う対象のファイルのフ
ァイルID番号である。
【0072】図8は、リモートマウント情報テーブルの
一例を示す図である。図8の例では、リモートマウント
情報テーブル222には、「クライアントノード名」、
「IPアドレス」、および「ファイルシステム」の欄が
設けられている。各欄の横方向に並べられた情報どうし
が互いに関係づけられている。
【0073】「クライアントノード名」は、サーバ22
0に対してリモートマウントを行ったクライアントのノ
ード名である「IPアドレス」は、対応するクライアン
トのIPアドレスである。
【0074】「ファイルシステム」は、クライアントに
よりリモートマウントが行われたファイルシステムのフ
ァイルシステム名である。図9は、置換ファイルテーブ
ルの一例を示す図である。図9の例では、置換ファイル
テーブル226には、「ファイルシステム」、「ファイ
ルID」の欄が設けられている。各欄の横方向に並べら
れた情報同士が互いに関係づけられている。
【0075】「ファイルシステム」は、他のサーバの代
行でリモートアクセス処理の対象とするべきファイルを
管理しているファイルシステムのファイルシステム名で
ある。
【0076】「ファイルID」は、他のサーバの代行で
リモートアクセス処理の対象とするべきファイルのファ
イルID番号である。以上のような構成およびデータ構
造のシステムによって、ファイル単位でアクセス経路を
切り替えたリモートアクセスが行われる。以下に、本実
施の形態におけるリモートアクセス処理について詳しく
説明する。なお、以下の説明では、ネットワーク10に
接続されたクライアント数が8であり、サーバ数も8で
あるものとして説明する。
【0077】図10は、リモートマウント処理の概念図
である。リモートマウント処理は、各クライアント10
0,100a,・・・,100nから各サーバ220,
220a,・・・,220nに対して行われる。
【0078】たとえば、クライアント100のリモート
マウント構築・監視部110がサーバ220に対してリ
モートマウント要求を出力すると、その要求がサーバ2
20のリモートマウント受付部221で受け取られる。
そして、リモートマウント受付部221により、ストレ
ージデバイス210がマウントされるとともに、リモー
トマウント情報テーブル222が生成される。各クライ
アント100,100a,・・・,100nからリモー
トマウント要求が出されることで、リモートマウント情
報テーブル222には、各クライアント100,100
a,・・・,100nに対応する情報が登録される。
【0079】リモートマウントの状態を構築したリモー
トマウント受付部221は、ストレージデバイス210
を管理するファイルシステムのファイルシステム名(F
S−1)を、クライアント100,100a,・・・,
100nに返す。クライアント100においては、ファ
イルシステム名を受け取ったリモートマウント構築・監
視部110が、サーバ220を介したリモートマウント
の情報を、マウント情報テーブル120に登録する。こ
のとき、マウント情報テーブル120における「状態」
の欄には、「OK」または「MASTER」が設定され
る。
【0080】このように、クライアント100からSA
N200に対してリモートマウントする際、SAN20
0上のサーバ220,220a,・・・,220nから
1ノードをファイルサーバとして選択するのではなく、
全てのノードがファイルサーバとして選択される。そし
て、リモートマウントが成功するとクライアント100
内にはマウントしたサーバの情報を管理するマウント情
報テーブル120が設けられ、サーバ220内にはリモ
ートマウント情報テーブル222が設けられる。
【0081】図11は、リモートマウント処理の手順を
示すシーケンス図である。なお、図11では、クライア
ント100とサーバ220との間で行われる処理の例を
示している。以下、図11に示すシーケンス図をステッ
プ番号に沿って説明する。
【0082】[ステップS11]クライアント100の
リモートマウント構築・監視部110は、サーバ220
に対して、リモートマウント処理を依頼する。なお、リ
モートマウント処理依頼には、クライアント100のノ
ード名(CLT−1)やIPアドレス(uuu.uuu.uuu.uu
u)が含まれる。
【0083】[ステップS12]サーバ220のリモー
トマウント受付部221は、リモートマウント情報テー
ブル222を作成する。[ステップS13]サーバ22
0のリモートマウント受付部221は、リモートマウン
ト受付完了通知をクライアント100に通知する。リモ
ートマウント受付完了通知には、サーバ220のノード
名(SVR−1)、IPアドレス(xxx.xxx.xxx.xx
x)、ファイルシステム名(FS−1)が含まれる。
【0084】[ステップS14]クライアント100の
リモートマウント構築・監視部110は、マウント情報
テーブル120に、サーバ220とファイルシステム
(FS−1)の情報を登録する。
【0085】[ステップS15]クライアント100
は、マウントポイントに分散ネットワークファイルシス
テム(RFS−1)をマウントする。以上のようにし
て、リモートマウントが行われ、以後、クライアント1
00からサーバ220のファイルシステム(FS−1)
を経由して、ストレージデバイス210にアクセス可能
となる。
【0086】次に、各クライアント100,100a,
・・・,100nにおける、各サーバ220,220
a,・・・,220nとの通信が正常に保たれているか
どうか(サーバが停止していないかどうか)を監視する
処理について説明する。
【0087】図12は、サーバ監視処理を示すフローチ
ャートである。このフローチャートで示す処理は各クラ
イアント100,100a,・・・,100nで共通で
あるが、以下、クライアント100が実行するものとし
て、図12に示す処理をステップ番号に沿って説明す
る。
【0088】[ステップS21]クライアント100の
リモートマウント構築・監視部110は、マウント情報
テーブル120に登録されているサーバを1つ選択す
る。各サーバは、マウント情報テーブル120に登録さ
れている順に、所定間隔で繰り返し選択される。
【0089】[ステップS22]リモートマウント構築
・監視部110は、選択したサーバとの間で、正常な通
信が可能かどうかを確認する。たとえば、リモートマウ
ント構築・監視部110は、各サーバに対して状態を確
認するためのパケットを送信し、そのパケットに対して
所定時間内に応答があれば、そのサーバと正常に通信可
能であると判断することができる。リモートマウント構
築・監視部110は、所定時間経過しても応答が返って
こなければ、そのサーバが停止(ダウン)したものと判
断することができる。
【0090】[ステップS23]リモートマウント構築
・監視部110は、サーバとの通信確認結果がダウンか
正常かを判断する。ダウンであれば処理がステップS2
4に進められ、正常であれば処理がステップS28に進
められる。
【0091】[ステップS24]リモートマウント構築
・監視部110は、選択したサーバのマウント情報テー
ブル120における現在の状態を確認する。状態が「N
G」であれば処理がステップS30に進められる。状態
が「OK」(「MASTER」も含む)であれば、処理
がステップS25に進められる。
【0092】[ステップS25]リモートマウント構築
・監視部110は、マウント情報テーブル120におけ
る選択したサーバに対応する「状態」の欄を「NG」に
変更する。その後、処理がステップS26に進められ
る。
【0093】[ステップS26]リモートマウント構築
・監視部110は、選択したサーバのマウント情報テー
ブル120における元の状態(ステップS25で変更す
る前の状態)が「MASTER」か否かを判断する。状
態が「MASTER」であった場合には、処理がステッ
プS27に進められる。そうでなければ、処理がステッ
プS30に進められる。
【0094】[ステップS27]リモートマウント構築
・監視部110は、マウント情報テーブル120に登録
されている配列において、選択されたサーバ以降の順番
(最後尾のサーバの次は、先頭のサーバとなる)のサー
バの中で、状態が「OK」である最も順番の早いサーバ
の状態を「MASTER」に変更する。その後、処理が
ステップS30に進められる。
【0095】[ステップS28]リモートマウント構築
・監視部110は、選択したサーバのマウント情報テー
ブル120における状態を確認する。状態が「OK」で
あれば処理がステップS30に進められる。状態が「N
G」であれば、処理がステップS29に進められる。
【0096】[ステップS29]リモートマウント構築
・監視部110は、マウント情報テーブル120におけ
る選択したサーバに対応する「状態」の欄を「OK」に
変更する。その後、処理がステップS30に進められ
る。
【0097】[ステップS30]リモートマウント構築
・監視部110は、分散ネットワークファイルシステム
のアンマウント処理が行われたか否かを判断する。分散
ネットワークファイルシステムのアンマウントが行われ
た場合には処理が終了し、そうでなければ処理がステッ
プS21に進められる。
【0098】このようにして、マウント情報テーブル1
20に登録されているサーバの状態が、更新される。な
お、一度停止したサーバが復旧して、そのサーバの状態
が「OK」となっても、停止したサーバに対応する代行
サーバノードテーブル170は、そのまま保存される。
すなわち、サーバがダウンし、代行サーバによってリモ
ートアクセスが行われたファイルに関しては、元のサー
バ復旧後であっても代行サーバを経由したアクセスを行
う。これは、ストレージデバイス210におけるデータ
の一貫性を保証するためである。
【0099】つまり、通常、サーバはディスクキャッシ
ュを持っており、ストレージデバイス210内のファイ
ルの一部を、キャッシュメモリに保持している。1つの
ファイルに複数のサーバがアクセスすると、それぞれの
サーバのキャッシュメモリ上に同じファイルが保持さ
れ、そのファイルの一貫性の確保が困難となる。そこ
で、本実施の形態では、一度ダウンしたサーバからは、
代行サーバアクセスしたファイルに対してアクセスをで
きないようにすることで、そのファイルの一貫性を確保
している。
【0100】次に、クライアントからSAN200への
リモートアクセス処理について説明する。図13は、正
常なサーバへのアクセス状況を示す概念図である。図1
3では、例として8台のサーバ220,220a,・・
・,220n(サーバノード名「SRV−1」、「SR
V−2」、・・・、「SRV−8」)上にそれぞれ同じス
トレージデバイス210上の資源をローカルファイルシ
ステム201,201a,・・・,201n(たとえば
「FS−1」、「FS−2」、・・・、「FS−8」)で
マウントしたSAN200システムを、クライアント1
00が分散ネットワークファイルシステム190(たと
えばRFS−1)でリモートマウントしている状態を示
している。
【0101】ここで、ストレージデバイス210内に格
納されているファイルのうち、ファイルID番号が「1
7」のファイル211と、ファイルID番号が「23」
のファイル212とに対してアクセスする場合について
説明する。たとえば、クライアント100内のアプリケ
ーションソフトウェア等を実行するプロセスから、ファ
イル211,212に対するアクセス要求が出される。
アクセス要求では、分散ネットワークファイルシステム
190(RFS−1)がマウントされたマウントポイン
トへのパスに続けて、SAN200で提供されるファイ
ルシステムにおけるファイル211,212までのパス
が指定され、さらにファイル211,212の名称(フ
ァイル名)が指定される。これにより、アクセス対象の
ファイル211,212が一意に特定される。
【0102】アクセス要求が出されると、リモートアク
セス処理部150が、取得ファイルID管理テーブル1
40を参照し、アクセス対象のファイル211,212
のファイルID番号を取得する。リモートアクセス処理
部150は、アクセス対象のファイル211,212の
ファイルID番号がまだ取得されていなければ、ファイ
ルID取得部130に対して、ファイルID番号の取得
を依頼する。
【0103】ファイルID番号の取得依頼を受け取った
ファイルID取得部130は、マスタサーバ(図13の
例では、サーバ220がマスタサーバである)に対し
て、ファイル211,212のファイルID番号取得要
求を出力する。すると、サーバ220のファイルID提
供部223(図4に示す)が、ファイル211,212
のファイルID番号「17」、「23」をファイルID
取得部130に返す。ファイルID取得部130は、取
得したファイルID番号を、リモートアクセス処理部1
50に渡すと共に、取得ファイルID管理テーブル14
0に登録する。
【0104】ファイル211,212のファイルID番
号を取得したリモートアクセス処理部150は、ファイ
ルID番号に基づいて、そのファイルに対するリモート
アクセスを行うべきサーバを特定する。具体的には、フ
ァイルID番号の数値を、サーバ数「8」で除算し、そ
の余りに1を加算する。ファイル211のファイルID
番号「17」を8で割ったときの余りは1である。ファ
イル212のファイルID番号「23」を8で割ったと
きの余りは7である。従って、ファイル211へのリモ
ートアクセスは、順番が2(余り1+1)番目のサーバ
220aに対して行われる。また、ファイル212への
リモートアクセスは、順番が8(余り7+1)番目のサ
ーバ220nに対して行われる。
【0105】リモートアクセス処理部150は、マウン
ト情報テーブル120を参照し、リモートアクセスの対
象となるサーバ220a,220nの状態が「OK」か
どうかを判断し、状態が「OK」であれば、サーバ22
0a,220nに対して、それぞれファイル211,2
12のリモートアクセス要求を出力する。リモートアク
セス要求が読み込み要求であれば、サーバ220a,2
20nのファイル提供部224(図4に示す)がストレ
ージデバイス210からファイル211,212を取得
し、ファイル211,212のデータをクライアント1
00に送信する。リモートアクセス要求が書き出し要求
であれば、サーバ220a,220nのファイル提供部
224がストレージデバイス210のファイル211,
212に対して、リモートアクセス要求に含まれるデー
タを書き込む。
【0106】このようにして、クライアント100から
SAN200で提供されるストレージデバイス210内
のファイル211,212に対して、ファイル毎に異な
った経路でアクセスすることができる。
【0107】次に、リモートアクセス対象のサーバ(中
継サーバ)が停止したときのリモートアクセス処理につ
いて説明する。リモートアクセス対象のサーバが停止し
た場合、他のサーバが代行サーバとして指定され、以
後、停止しているサーバを介して行われるべきリモート
アクセスが、代行サーバを介して行われる。
【0108】図14は、代行サーバを介したアクセス状
況を示す概念図である。図14は、サーバ220nが停
止した場合の例である。サーバ220nが停止すると、
クライアント100において、サーバ220nとの間の
通信が途絶えたことをリモートマウント構築・監視部1
10が検知する。リモートマウント構築・監視部110
は、マウント情報テーブル120内のサーバ220nに
対応するマウント情報(サーバノード名「SVR−
8」)の状態を「NG」に変更する。
【0109】すると、代行サーバ管理部160によっ
て、サーバ220n(サーバノード名「SVR−8」)
に対応する代行サーバノードテーブル170が生成され
る。以後、代行サーバ管理部160は、本来サーバ22
0nを経由してリモートアクセスすべきファイルへのア
クセス要求が出される毎に、そのファイルに関する情報
を代行サーバノードテーブル170に登録する。
【0110】なお、代行サーバは、マウント情報テーブ
ル120において、停止したサーバの次に登録されてい
るサーバである。ただし、停止したサーバがマウント情
報テーブル120の最後に登録されている場合には、先
頭に登録されているサーバが代行サーバとして決定され
る。図14の例では、停止したサーバ220nは、マウ
ント情報テーブル120の最後に登録されているため、
先頭に登録されているサーバ220(サーバノード名
「SVR−1」)が代行サーバとなる。
【0111】その後、ファイル212(ファイルID番
号「23」)に対するアクセス要求が出されると、図1
3で説明したように、マウント情報テーブル120の8
番目に登録されているサーバ220n(サーバノード名
「SVR−8」)がリモートアクセスの対象として特定
される。アクセス要求を受け取ったリモートアクセス処
理部150は、マウント情報テーブル120を参照し、
サーバ220nの状態を確認する。すると、サーバ22
0nの状態が「NG」であるため、リモートアクセス処
理部150は、サーバ220nに対応する代行サーバノ
ードテーブル170を参照する。
【0112】代行サーバノードテーブル170には、フ
ァイルID番号「23」に対応づけて、代行サーバであ
るサーバ220のサーバノード名「SVR−1」とファ
イルシステム名「FS−1」が登録されている。従っ
て、リモートアクセス処理部150は、サーバノード名
「SVR−1」のサーバ220のファイルシステム「F
S−1」を介して、ファイル212にリモートアクセス
すべきことを認識し、サーバ220に対して、ファイル
212のリモートアクセス要求を出す。以後、ファイル
212に対するリモートアクセスは、サーバ220を介
して行われる。
【0113】なお、マスタサーバが停止してしまった場
合、マウント情報テーブル120においてマスタサーバ
の次に登録されているサーバ、または、マスタサーバが
マウント情報テーブル120の最後に登録されている場
合は、マウント情報テーブル120の先頭に登録されて
いるサーバによって、マスタサーバが代行される。この
とき、リモートマウント構築・監視部110が、マスタ
サーバとなるサーバの状態に「MASTER」を設定す
る。
【0114】なお、停止したサーバ220n(サーバノ
ード名「SVR−8」)が復旧した場合、マウント情報
テーブル120の状態を「OK」に変更し、以後のサー
バ220nを介したリモートアクセスが可能となる。た
だし、一度代行サーバノードテーブル170に登録され
たファイルは、停止したサーバが復旧しても元のサーバ
からのアクセスは行わない。
【0115】クライアント100において代行サーバノ
ードテーブル170に登録されたファイルに関しては、
他のクライアント100a,・・・,100nからも代
行サーバ経由でアクセスする必要がある。そこで、本実
施の形態では、サーバ220において生成された代行サ
ーバノードテーブル170の情報を、代行サーバを介し
て他のクライアント100a,・・・,100nに配信
する。以下、代行サーバでリモートアクセスが代行され
るファイルに関する情報の受け渡しについて説明する。
【0116】図15は、リモートアクセス代行に関する
情報の受け渡し状況を示す概念図である。図15に示す
ように、代行サーバ管理部160は、代行サーバノード
テーブル170を作成すると、代行サーバとして機能す
るサーバ220に対して、置換ファイルテーブル226
の作成依頼を出力する。その作成依頼を受け取ったサー
バ220では、リモートアクセス代行管理部225が置
換ファイルテーブル226を作成する。置換ファイルテ
ーブル226には、代行サーバによってリモートアクセ
スが行われるファイルに関する情報(ファイルシステム
名とファイルID番号)が登録される。
【0117】さらに、リモートアクセス代行管理部22
5は、リモートマウント情報テーブル222を参照し
て、サーバ220に対してリモートマウントを行ってい
るクライアント(置換ファイルテーブル226の作成依
頼を出力したクライアント100を除く)の情報を取得
する。図15の例では、8つのクライアント100,1
00a,・・・,100n(クライアントノード名「C
LT−1」,「CLT−2」,・・・,「CLT−
8」)の分散ネットワークファイルシステム109,1
09a,・・・,109n(ファイルシステム名「RF
S−1」,「RFS−2」,・・・,「RFS−8」)
からサーバ220に対してリモートマウントが行われて
いる。
【0118】リモートアクセス代行管理部225は、置
換ファイルテーブルの作成依頼を出力したクライアント
100以外の各クライアント100a,・・・,100
nに対して、置換ファイルテーブル226の内容に応じ
た代行サーバノードテーブルの作成要求を出力する。ク
ライアント100a,・・・,100nでは、代行サー
バノードテーブルの作成要求に応答して、クライアント
100に作成された代行サーバノードテーブル170と
同じ内容の代行サーバノードテーブルが作成される。
【0119】以降、各クライアント100,100a,
・・・,100nにおいて代行サーバノードテーブルに
ファイルの情報が登録される毎に、そのファイルに関す
る情報が代行サーバであるサーバ220に送られ、サー
バ220の置換ファイルテーブル226が更新される。
そして、サーバ220に対してリモートマウントを行っ
ている各クライアント(ファイルの情報をサーバ220
に対して出力したクライアントを除く)に対して、新た
に置換ファイルテーブル226に登録されたファイルの
情報が送られ、各クライアントの代行サーバノードテー
ブルが更新される。
【0120】これにより、ストレージデバイス210内
のファイルは、1つのサーバが停止した場合において
も、どのクライアントでも同一のサーバを経由してアク
セスされる。
【0121】次に、クライアントで行われるリモートフ
ァイルアクセス処理手順について説明する。図16は、
リモートファイルアクセスの処理手順を示すフローチャ
ートである。以下、図16に示す処理をステップ番号に
沿って説明する。なお、この処理は、クライアントにお
いて、SAN200で管理しているストレージデバイス
210内のファイルに対するアクセス要求が出されたと
きに実行される。
【0122】[ステップS41]リモートアクセス処理
部150は、取得ファイルID管理テーブル140内
に、アクセス要求で指定されたファイルの情報が登録さ
れているか否かを判断する。指定されたファイルの情報
が登録されていれば処理がステップS43に進められ、
登録されていなければ処理がステップS42に進められ
る。
【0123】[ステップS42]リモートアクセス処理
部150は、ファイルID取得部130を介して、マス
タサーバからファイルID番号を獲得する。具体的に
は、リモートアクセス処理部150からファイルID取
得部130に対して、アクセス要求で指定されたファイ
ルのファイルID番号取得要求が出される。すると、フ
ァイルID取得部130は、アクセス要求で示されるフ
ァイルのパスやファイル名と共に、ファイルID番号取
得要求をマスタサーバに送信する。そして、リモートア
クセス処理部150は、マスタサーバから送られたファ
イルID番号を、リモートアクセス処理部150に渡
す。その後、処理がステップS44に進められる。
【0124】[ステップS43]リモートアクセス処理
部150は、取得ファイルID管理テーブル140を参
照し、アクセス要求で指定されたファイルのファイルI
D番号を取得する。
【0125】[ステップS44]リモートアクセス処理
部150は、取得したファイルID番号の数値とマウン
ト情報テーブル120に登録されたサーバ数とに基づい
て、リモートアクセス要求を出力すべきサーバを決定す
る。
【0126】[ステップS45]リモートアクセス処理
部150は、代行サーバノードテーブル170を参照す
る。[ステップS46]リモートアクセス処理部150
は、停止したサーバ毎に設けられた代行サーバノードテ
ーブル170のいずれかに、ステップS42またはステ
ップS43で取得したファイルID番号のファイルに関
する情報が存在するか否かを判断する。ファイル情報が
存在する場合には、処理がステップS51に進められ
る。ファイル情報が存在しない場合には処理がステップ
S47に進められる。
【0127】[ステップS47]リモートアクセス処理
部150は、ステップS44で決定したサーバの状態フ
ラグが「OK(MASTERも含む)」か「NG」かを
判断する。状態フラグが「OK」であれば処理がステッ
プS48に進められる。状態フラグが「NG」であれば
処理がステップS49に進められる。
【0128】[ステップS48]リモートアクセス処理
部150は、ステップS44で決定したサーバを介し
て、アクセス要求で指定されたファイルへのリモートア
クセスを行う。その後、処理が終了する。
【0129】[ステップS49]代行サーバ管理部16
0は、ステップS44で決定したサーバに対応する代行
サーバノードテーブル170に、アクセス対象のファイ
ルの情報を追加する。
【0130】[ステップS50]代行サーバ管理部16
0は、ステップS44で決定したサーバに対応する代行
サーバノードテーブル170に登録されている代行サー
バに対して、置換テーブルの更新依頼を出力する。
【0131】[ステップS51]リモートアクセス処理
部150は、代行サーバを介して、アクセス要求で指定
されたファイルへのリモートアクセスを行う。その後、
処理が終了する。
【0132】以上のようにして、SAN200で提供さ
れるストレージデバイス210内のファイル単位で、リ
モートアクセスを中継するサーバを決定することができ
る。これにより、サーバに対して出力されるリモートア
クセス要求の偏りを少なくし、SAN200におけるサ
ーバ間の負荷分散を効果的に行うことができる。その結
果、SAN200全体としての処理効率が向上する。
【0133】すなわち、従来のように、1つのクライア
ントから出力されるリモートアクセス要求の全てを1つ
のサーバで処理した場合、あるクライアントから大量の
リモートアクセス要求が出されると、対応するサーバの
処理負荷が増大する。その結果、他のサーバの処理能力
に余裕があっても、そのクライアントに対応するサーバ
を介したリモートアクセス処理の速度低下を招く。
【0134】一方、本実施の形態のように、リモートア
クセスを中継するサーバがファイル単位で異なれば、1
つのクライアントから大量のリモートアクセス要求が出
されると、それらのリモートアクセス要求が、SAN2
00を構成する複数のサーバ220,220a,・・
・,220nによって分散処理される。その結果、各サ
ーバ220,220a,・・・,220nに処理負荷が
分散され、特定のサーバのみの処理負荷が増大すること
を防止できる。
【0135】なお、複数のクライアント100,100
a,・・・,100nから同じファイルに対するリモー
トアクセスが同時期に行われると、そのリモートアクセ
スの処理は1つのサーバで行われるが、この場合、サー
バ内にそのファイルのデータをキャッシュしておくこと
で、処理負荷の増加を抑制することができる。しかも、
各クライアント100,100a,・・・,100nに
おいて、リモートアクセスしたファイルのデータをキャ
ッシュしておけば、1つのクライアントから1つのファ
イルに対する連続のリモートアクセスは発生しない。そ
のため、1つのサーバに対して処理負荷が集中する可能
性が少なくなる。
【0136】また、本実施の形態では、サーバが停止し
た場合、停止したサーバの代行サーバを決定し、ファイ
ルのアクセス経路を動的に変更するようにしたため、S
AN200によるファイル提供処理の信頼性が向上す
る。
【0137】しかも、停止したサーバの代行サーバを全
てのクライアントにおいて統一するようにし、代行サー
バ経由でアクセスしたファイルに関しては、その後も継
続して代行サーバを経由したアクセスを行うようにし
た。そのため、同時期に、1つのファイルに複数のサー
バを介したリモートアクセスは発生しない。その結果、
データの一貫性が保証される。
【0138】なお、上記の処理機能は、サーバコンピュ
ータとクライアントコンピュータとによって実現するこ
とができる。その場合、サーバコンピュータが有すべき
機能の処理内容を記述したリモートアクセス要求処理プ
ログラム、およびクライアントコンピュータが有すべき
機能の処理内容を記述したリモートアクセスプログラム
が提供される。リモートアクセス要求処理プログラムを
サーバコンピュータで実行することにより、上記実施の
形態で説明したサーバの処理機能が実現される。また、
リモートアクセスプログラムをクライアントコンピュー
タで実行することにより、上記実施の形態で説明したク
ライアントの処理機能が実現される。
【0139】処理内容を記述したリモートアクセス要求
処理プログラムやリモートアクセスプログラムは、コン
ピュータで読み取り可能な記録媒体に記録しておくこと
ができる。コンピュータで読み取り可能な記録媒体とし
ては、磁気記録装置、光ディスク、光磁気記録媒体、半
導体メモリなどがある。磁気記録装置には、ハードディ
スク装置(HDD)、フレキシブルディスク(FD)、
磁気テープなどがある。光ディスクには、DVD(Digit
al Versatile Disc)、DVD−RAM(RandomAccess Me
mory)、CD−ROM(Compact Disc Read Only Memor
y)、CD−R(Recordable)/RW(ReWritable)などがあ
る。光磁気記録媒体には、MO(Magneto-Optical disc)
などがある。
【0140】リモートアクセス要求処理プログラムやリ
モートアクセスプログラムを流通させる場合には、たと
えば、各プログラムが記録されたDVD、CD−ROM
などの可搬型記録媒体が販売される。また、リモートア
クセスプログラムをサーバコンピュータの記憶装置に格
納しておき、ネットワークを介して、サーバコンピュー
タからクライアントコンピュータにリモートアクセスプ
ログラムを転送することもできる。
【0141】リモートアクセス要求処理プログラムを実
行するサーバコンピュータは、たとえば、可搬型記録媒
体に記録されたリモートアクセス要求処理プログラム
を、自己の記憶装置に格納する。そして、サーバコンピ
ュータは、自己の記憶装置からリモートアクセス要求処
理プログラムを読み取り、リモートアクセス要求処理プ
ログラムに従った処理を実行する。なお、サーバコンピ
ュータは、可搬型記録媒体から直接リモートアクセス要
求処理プログラムを読み取り、そのリモートアクセス要
求処理プログラムに従った処理を実行することもでき
る。
【0142】リモートアクセスプログラムを実行するク
ライアントコンピュータは、たとえば、可搬型記録媒体
に記録されたリモートアクセスプログラムもしくはサー
バコンピュータから転送されたリモートアクセスプログ
ラムを、自己の記憶装置に格納する。そして、クライア
ントコンピュータは、自己の記憶装置からリモートアク
セスプログラムを読み取り、リモートアクセスプログラ
ムに従った処理を実行する。なお、クライアントコンピ
ュータは、可搬型記録媒体から直接リモートアクセスプ
ログラムを読み取り、そのリモートアクセスプログラム
に従った処理を実行することもできる。また、クライア
ントコンピュータは、サーバコンピュータからリモート
アクセスプログラムが転送される毎に、逐次、受け取っ
たリモートアクセスプログラムに従った処理を実行する
こともできる。
【0143】(付記1) 共通のストレージデバイスへ
のアクセス機能を提供する複数のサーバコンピュータを
介して、前記ストレージデバイスへのアクセスを行うた
めのリモートアクセスプログラムにおいて、コンピュー
タに、前記複数のサーバコンピュータそれぞれを経由し
た前記ストレージデバイスへの複数のアクセス経路を定
義し、前記ストレージデバイス内のファイルを指定した
アクセス要求を受け取ると、前記ストレージデバイスへ
のアクセスを前記複数のアクセス経路にファイル単位で
分散させるための所定の規則に従って、前記複数のサー
バコンピュータの中から、前記ファイルへのアクセス経
路となる中継サーバコンピュータを決定し、決定された
前記中継サーバコンピュータを経由したアクセス経路に
より、前記ストレージデバイス内の前記ファイルに対し
てアクセスする、処理を実行させることを特徴とするリ
モートアクセスプログラム。
【0144】(付記2) 前記所定の規則は、前記ファ
イルに予め設定されている識別番号と、前記複数のサー
バコンピュータの数とを変数とした計算式であることを
特徴とする付記1記載のリモートアクセスプログラム。
【0145】(付記3) 前記中継サーバコンピュータ
が停止した場合には、前記複数のサーバコンピュータの
中から、前記中継サーバコンピュータの処理を代行する
代行サーバコンピュータを決定し、前記決定された代行
サーバコンピュータを経由したアクセス経路により、前
記ストレージデバイス内の前記アクセス要求で指定され
たファイルに対してアクセスすることを特徴とする付記
1記載のリモートアクセスプログラム。
【0146】(付記4) 前記代行サーバコンピュータ
から所定のファイルへのリモートアクセスを代行する旨
の通知を受け取ると、以後発生する当該通知で示された
前記所定のファイルに対するアクセスは、前記代行サー
バコンピュータ経由で行うことを特徴とする付記1記載
のリモートアクセスプログラム。
【0147】(付記5) ストレージデバイスへのアク
セス機能を提供するためのリモートアクセス要求処理プ
ログラムにおいて、コンピュータに、前記ストレージデ
バイスへのアクセス機能の提供を希望するクライアント
コンピュータのリストを作成し、他のサーバコンピュー
タに代わって前記ストレージデバイスへのアクセス機能
を提供すべき代行ファイルの情報を受け取ると、前記リ
ストに登録されたクライアントコンピュータそれぞれに
対して、前記代行ファイルへのアクセス機能提供処理を
代行する旨を通知し、前記ストレージデバイス内のファ
イルのうち、所定の規則によって予め指定されたファイ
ルおよび前記代行ファイルへのアクセス機能を、前記リ
ストに登録されたクライアントコンピュータに対して提
供する、処理を実行させることを特徴とするリモートア
クセス要求処理プログラム。
【0148】(付記6) 共通のストレージデバイスへ
のアクセス機能を提供する複数のサーバコンピュータを
介して、前記ストレージデバイスへのアクセスを行うた
めのクライアントコンピュータにおいて、前記複数のサ
ーバコンピュータそれぞれを経由した前記ストレージデ
バイスへの複数のアクセス経路を定義するアクセス経路
定義手段と、前記ストレージデバイス内のファイルを指
定したアクセス要求を受け取ると、前記ストレージデバ
イスへのアクセスを前記アクセス経路定義手段で定義さ
れた前記複数のアクセス経路にファイル単位で分散させ
るための所定の規則に従って、前記複数のサーバコンピ
ュータの中から、前記ファイルへのアクセス経路となる
中継サーバコンピュータを決定するアクセス経路決定手
段と、前記アクセス経路決定手段で決定された前記中継
サーバコンピュータを経由したアクセス経路により、前
記ストレージデバイス内の前記ファイルに対してアクセ
スするリモートアクセス手段と、を有することを特徴と
するクライアントコンピュータ。
【0149】(付記7) ストレージデバイスへのアク
セス機能を提供するためのサーバコンピュータにおい
て、前記ストレージデバイスへのアクセス機能の提供を
希望するクライアントコンピュータのリストを作成する
リスト作成手段と、他のサーバコンピュータに代わって
前記ストレージデバイスへのアクセス機能を提供すべき
ファイルの情報を受け取ると、前記リストに登録された
クライアントコンピュータそれぞれに対して、前記代行
ファイルへのアクセス機能提供処理を代行する旨を通知
する代行ファイル通知手段と、前記ストレージデバイス
内のファイルのうち、所定の規則によって予め指定され
たファイルおよび前記代行ファイルへのアクセス機能
を、前記リストに登録されたクライアントコンピュータ
に対して提供するリモートアクセス提供手段と、を有す
ることを特徴とするサーバコンピュータ。
【0150】(付記8) 共通のストレージデバイスへ
のアクセス機能を提供する複数のサーバコンピュータを
介して、前記ストレージデバイスへのアクセスを行うた
めのリモートアクセス方法において、前記複数のサーバ
コンピュータそれぞれを経由した前記ストレージデバイ
スへの複数のアクセス経路を定義し、前記ストレージデ
バイス内のファイルを指定したアクセス要求を受け取る
と、前記ストレージデバイスへのアクセスを前記複数の
アクセス経路にファイル単位で分散させるための所定の
規則に従って、前記複数のサーバコンピュータの中か
ら、前記ファイルへのアクセス経路となる中継サーバコ
ンピュータを決定し、決定された前記中継サーバコンピ
ュータを経由したアクセス経路により、前記ストレージ
デバイス内の前記ファイルに対してアクセスする、処置
を含むことを特徴とするリモートアクセス方法。
【0151】(付記9) ストレージデバイスへのアク
セス機能を提供するためのリモートアクセス要求処理方
法において、前記ストレージデバイスへのアクセス機能
の提供を希望するクライアントコンピュータのリストを
作成し、他のサーバコンピュータに代わって前記ストレ
ージデバイスへのアクセス機能を提供すべき代行ファイ
ルの情報を受け取ると、前記リストに登録されたクライ
アントコンピュータそれぞれに対して、前記代行ファイ
ルへのアクセス機能提供処理を代行する旨を通知し、前
記ストレージデバイス内のファイルのうち、所定の規則
によって予め指定されたファイルおよび前記代行ファイ
ルへのアクセス機能を、前記リストに登録されたクライ
アントコンピュータに対して提供する、処理を含むこと
を特徴とするリモートアクセス要求処理方法。
【0152】(付記10) 共通のストレージデバイス
へのアクセス機能を提供する複数のサーバコンピュータ
を介して、前記ストレージデバイスへのアクセスを行う
ためのリモートアクセスプログラムを記録したコンピュ
ータ読み取り可能な記録媒体において、前記コンピュー
タに、前記複数のサーバコンピュータそれぞれを経由し
た前記ストレージデバイスへの複数のアクセス経路を定
義し、前記ストレージデバイス内のファイルを指定した
アクセス要求を受け取ると、前記ストレージデバイスへ
のアクセスを前記複数のアクセス経路にファイル単位で
分散させるための所定の規則に従って、前記複数のサー
バコンピュータの中から、前記ファイルへのアクセス経
路となる中継サーバコンピュータを決定し、決定された
前記中継サーバコンピュータを経由したアクセス経路に
より、前記ストレージデバイス内の前記ファイルに対し
てアクセスする、処理を実行させることを特徴とする記
録媒体。
【0153】(付記11) ストレージデバイスへのア
クセス機能を提供するためのリモートアクセス要求処理
プログラムを記録したコンピュータ読み取り可能な記録
媒体において、前記コンピュータに、前記ストレージデ
バイスへのアクセス機能の提供を希望するクライアント
コンピュータのリストを作成し、他のサーバコンピュー
タに代わって前記ストレージデバイスへのアクセス機能
を提供すべき代行ファイルの情報を受け取ると、前記リ
ストに登録されたクライアントコンピュータそれぞれに
対して、前記代行ファイルへのアクセス機能提供処理を
代行する旨を通知し、前記ストレージデバイス内のファ
イルのうち、所定の規則によって予め指定されたファイ
ルおよび前記代行ファイルへのアクセス機能を、前記リ
ストに登録されたクライアントコンピュータに対して提
供する、処理を実行させることを特徴とする記録媒体。
【0154】
【発明の効果】以上説明したように本発明では、ストレ
ージデバイスへのアクセスを複数のアクセス経路にファ
イル単位で分散させるための所定の規則に従って、ファ
イルへのアクセス経路となる中継サーバコンピュータを
決定し、決定された中継サーバコンピュータを経由でフ
ァイルに対するアクセスを行うようにした。そのため、
アクセス要求がファイル単位で複数のサーバコンピュー
タに分散でき、リモートアクセス処理の負荷分散が可能
となった。
【図面の簡単な説明】
【図1】本発明の実施の形態に適用される発明の概念図
である。
【図2】本実施の形態のシステム構成図である。
【図3】本発明の実施の形態に用いるクライアントのハ
ードウェア構成例を示す図である。
【図4】本実施の形態におけるクライアントとサーバと
の機能ブロック図である。
【図5】マウント情報テーブルの一例を示す図である。
【図6】取得ファイルID管理テーブルの一例を示す図
である。
【図7】代行サーバノードテーブルの一例を示す図であ
る。
【図8】リモートマウント情報テーブルの一例を示す図
である。
【図9】置換ファイルテーブルの一例を示す図である。
【図10】リモートマウント処理の概念図である。
【図11】リモートマウント処理の手順を示すシーケン
ス図である。
【図12】サーバ監視処理を示すフローチャートであ
る。
【図13】正常なサーバへのアクセス状況を示す概念図
である。
【図14】代行サーバを介したアクセス状況を示す概念
図である。
【図15】リモートアクセス代行に関する情報の受け渡
し状況を示す概念図である。
【図16】リモートファイルアクセスの処理手順を示す
フローチャートである。
【符号の説明】
1 クライアントコンピュータ 1a 分散ネットワークファイルシステム 1b テーブル 2 ストレージデバイス 2a,2b,・・・ ファイル 3,4,・・・ サーバコンピュータ 10 ネットワーク 100,100a,・・・,100n クライアント 200 SAN 210 ストレージデバイス 220,220a,・・・,220n サーバ
─────────────────────────────────────────────────────
【手続補正書】
【提出日】平成14年4月4日(2002.4.4)
【手続補正1】
【補正対象書類名】明細書
【補正対象項目名】0041
【補正方法】変更
【補正内容】
【0041】マウント情報テーブル120には、リモー
トマウントの対象となったサーバ220,220a,・
・・,220nと、そのサーバ220,220a,・・
・,220nが提供するファイルシステムとに関する情
報が登録される。なお、マウント情報テーブル120
では、各サーバ220,220a,・・・,220nの
情報が、予め決められた順番(全クライアントで共通)
で並べられている。
【手続補正2】
【補正対象書類名】明細書
【補正対象項目名】0042
【補正方法】変更
【補正内容】
【0042】また、マウント情報テーブル120には、
各サーバ220,220a,・・・,220nの状態
や、マスタサーバを示す情報なども登録される。ここ
で、マスタサーバとは、クライアント100,100
a,・・・,100nに対して、ストレージデバイス2
10内の各ファイルのファイルID番号を通知するサー
バである。ファイルID番号とは、ufs等のローカル
ファイルシステムがファイルを番号により管理できるよ
う各ファイルに割り当てられた番号であり、通常iノー
ド番号と呼ばれている。マスタサーバは、正常に動作し
ているサーバのうちの1つである。
【手続補正3】
【補正対象書類名】明細書
【補正対象項目名】0059
【補正方法】変更
【補正内容】
【0059】リモートアクセス代行管理部225は、ク
ライアント100から置換ファイルテーブル作成依頼を
受け取ると、代行処理の対象とすべきファイルのリスト
を管理するための置換ファイルテーブル226を生成す
る。代行処理によるリモートファイルアクセスが行われ
置換ファイルテーブル226の内容が更新されると、リ
モートアクセス代行管理部225は、リモートマウント
情報テーブル222を参照し、サーバ220を介したリ
モートマウントを行っているクライアントのリストを取
得する。そして、リモートアクセス代行管理部225
は、代行処理依頼を出力したクライアント以外のクライ
アントに対して、代行サーバノードテーブルの作成依頼
を出力する。代行サーバノードテーブルの作成依頼に
は、置換ファイルテーブル226の内容を含める。
【手続補正4】
【補正対象書類名】明細書
【補正対象項目名】0117
【補正方法】変更
【補正内容】
【0117】さらに、リモートアクセス代行管理部22
5は、リモートマウント情報テーブル222を参照し
て、サーバ220に対してリモートマウントを行ってい
るクライアント(置換ファイルテーブル226の作成依
頼を出力したクライアント100を除く)の情報を取得
する。図15の例では、8つのクライアント100,1
00a,・・・,100n(クライアントノード名「C
LT−1」,「CLT−2」,・・・,「CLT−
8」)の分散ネットワークファイルシステム190
90a,・・・,190n(ファイルシステム名「RF
S−1」,「RFS−2」,・・・,「RFS−8」)
からサーバ220に対してリモートマウントが行われて
いる。
【手続補正5】
【補正対象書類名】明細書
【補正対象項目名】0123
【補正方法】変更
【補正内容】
【0123】[ステップS42]リモートアクセス処理
部150は、ファイルID取得部130を介して、マス
タサーバからファイルID番号を獲得する。具体的に
は、リモートアクセス処理部150からファイルID取
得部130に対して、アクセス要求で指定されたファイ
ルのファイルID番号取得要求が出される。すると、フ
ァイルID取得部130は、アクセス要求で示されるフ
ァイルのパスやファイル名と共に、ファイルID番号取
得要求をマスタサーバに送信する。そして、ファイルI
D取得部130は、マスタサーバから送られたファイル
ID番号を、リモートアクセス処理部150に渡す。そ
の後、処理がステップS44に進められる。
【手続補正6】
【補正対象書類名】明細書
【補正対象項目名】0130
【補正方法】変更
【補正内容】
【0130】[ステップS50]代行サーバ管理部16
0は、ステップS44で決定したサーバに対応する代行
サーバノードテーブル170に登録されている代行サー
バに対して、置換ファイルテーブルの更新依頼を出力す
る。
【手続補正7】
【補正対象書類名】明細書
【補正対象項目名】0146
【補正方法】変更
【補正内容】
【0146】(付記4) 前記代行サーバコンピュータ
から所定のファイルへのリモートアクセスを代行する旨
の通知を受け取ると、以後発生する当該通知で示された
前記所定のファイルに対するアクセスは、前記代行サー
バコンピュータ経由で行うことを特徴とする付記記載
のリモートアクセスプログラム。
【手続補正8】
【補正対象書類名】図面
【補正対象項目名】図13
【補正方法】変更
【補正内容】
【図13】
【手続補正9】
【補正対象書類名】図面
【補正対象項目名】図14
【補正方法】変更
【補正内容】
【図14】
【手続補正10】
【補正対象書類名】図面
【補正対象項目名】図16
【補正方法】変更
【補正内容】
【図16】
───────────────────────────────────────────────────── フロントページの続き (72)発明者 細川 勲 愛知県名古屋市東区葵一丁目16番38号 株 式会社富士通プライムソフトテクノロジ内 Fターム(参考) 5B082 HA05 HA08

Claims (5)

    【特許請求の範囲】
  1. 【請求項1】 共通のストレージデバイスへのアクセス
    機能を提供する複数のサーバコンピュータを介して、前
    記ストレージデバイスへのアクセスを行うためのリモー
    トアクセスプログラムにおいて、 コンピュータに、 前記複数のサーバコンピュータそれぞれを経由した前記
    ストレージデバイスへの複数のアクセス経路を定義し、 前記ストレージデバイス内のファイルを指定したアクセ
    ス要求を受け取ると、前記ストレージデバイスへのアク
    セスを前記複数のアクセス経路にファイル単位で分散さ
    せるための所定の規則に従って、前記複数のサーバコン
    ピュータの中から、前記ファイルへのアクセス経路とな
    る中継サーバコンピュータを決定し、 決定された前記中継サーバコンピュータを経由したアク
    セス経路により、前記ストレージデバイス内の前記ファ
    イルに対してアクセスする、 処理を実行させることを特徴とするリモートアクセスプ
    ログラム。
  2. 【請求項2】 前記中継サーバコンピュータが停止した
    場合には、前記複数のサーバコンピュータの中から、前
    記中継サーバコンピュータの処理を代行する代行サーバ
    コンピュータを決定し、 前記決定された代行サーバコンピュータを経由したアク
    セス経路により、前記ストレージデバイス内の前記アク
    セス要求で指定されたファイルに対してアクセスするこ
    とを特徴とする請求項1記載のリモートアクセスプログ
    ラム。
  3. 【請求項3】 前記代行サーバコンピュータから所定の
    ファイルへのリモートアクセスを代行する旨の通知を受
    け取ると、以後発生する当該通知で示された前記所定の
    ファイルに対するアクセスは、前記代行サーバコンピュ
    ータ経由で行うことを特徴とする請求項1記載のリモー
    トアクセスプログラム。
  4. 【請求項4】 ストレージデバイスへのアクセス機能を
    提供するためのリモートアクセス要求処理プログラムに
    おいて、 コンピュータに、 前記ストレージデバイスへのアクセス機能の提供を希望
    するクライアントコンピュータのリストを作成し、 他のサーバコンピュータに代わって前記ストレージデバ
    イスへのアクセス機能を提供すべき代行ファイルの情報
    を受け取ると、前記リストに登録されたクライアントコ
    ンピュータそれぞれに対して、前記代行ファイルへのア
    クセス機能提供処理を代行する旨を通知し、 前記ストレージデバイス内のファイルのうち、所定の規
    則によって予め指定されたファイルおよび前記代行ファ
    イルへのアクセス機能を、前記リストに登録されたクラ
    イアントコンピュータに対して提供する、 処理を実行させることを特徴とするリモートアクセス要
    求処理プログラム。
  5. 【請求項5】 共通のストレージデバイスへのアクセス
    機能を提供する複数のサーバコンピュータを介して、前
    記ストレージデバイスへのアクセスを行うためのクライ
    アントコンピュータにおいて、 前記複数のサーバコンピュータそれぞれを経由した前記
    ストレージデバイスへの複数のアクセス経路を定義する
    アクセス経路定義手段と、 前記ストレージデバイス内のファイルを指定したアクセ
    ス要求を受け取ると、前記ストレージデバイスへのアク
    セスを前記アクセス経路定義手段で定義された前記複数
    のアクセス経路にファイル単位で分散させるための所定
    の規則に従って、前記複数のサーバコンピュータの中か
    ら、前記ファイルへのアクセス経路となる中継サーバコ
    ンピュータを決定するアクセス経路決定手段と、 前記アクセス経路決定手段で決定された前記中継サーバ
    コンピュータを経由したアクセス経路により、前記スト
    レージデバイス内の前記ファイルに対してアクセスする
    リモートアクセス手段と、 を有することを特徴とするクライアントコンピュータ。
JP2001321407A 2001-10-19 2001-10-19 リモートアクセスプログラム、リモートアクセス要求処理プログラム、およびクライアントコンピュータ Pending JP2003131924A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2001321407A JP2003131924A (ja) 2001-10-19 2001-10-19 リモートアクセスプログラム、リモートアクセス要求処理プログラム、およびクライアントコンピュータ
US10/117,835 US7124133B2 (en) 2001-10-19 2002-04-08 Remote access program, remote access request-processing program, and client computer

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001321407A JP2003131924A (ja) 2001-10-19 2001-10-19 リモートアクセスプログラム、リモートアクセス要求処理プログラム、およびクライアントコンピュータ

Publications (1)

Publication Number Publication Date
JP2003131924A true JP2003131924A (ja) 2003-05-09

Family

ID=19138626

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001321407A Pending JP2003131924A (ja) 2001-10-19 2001-10-19 リモートアクセスプログラム、リモートアクセス要求処理プログラム、およびクライアントコンピュータ

Country Status (2)

Country Link
US (1) US7124133B2 (ja)
JP (1) JP2003131924A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005339300A (ja) * 2004-05-28 2005-12-08 Hitachi Ltd データベース処理方法およびシステム並びにその処理プログラム
JP2010160822A (ja) * 2010-04-23 2010-07-22 Hitachi Ltd データベース処理方法、データベース処理システム及びデータベース管理プログラム
JPWO2008139521A1 (ja) * 2007-04-27 2010-07-29 富士通株式会社 リモートファイルシステム、端末装置およびサーバ装置

Families Citing this family (43)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4211285B2 (ja) * 2002-05-24 2009-01-21 株式会社日立製作所 ネットワークストレージシステムの仮想一元化方法及び装置
US7194690B2 (en) * 2003-04-17 2007-03-20 Lenovo (Singapore) Pte. Ltd. Remote support for computer or other electronic device
JP4349871B2 (ja) * 2003-09-09 2009-10-21 株式会社日立製作所 ファイル共有装置及びファイル共有装置間のデータ移行方法
US7814131B1 (en) * 2004-02-02 2010-10-12 Network Appliance, Inc. Aliasing of exported paths in a storage system
US8412685B2 (en) * 2004-07-26 2013-04-02 Riverbed Technology, Inc. Method and system for managing data
TWI303057B (en) * 2004-08-26 2008-11-11 Asustek Comp Inc Electronic apparatus and optical disc drive thereof
KR100661170B1 (ko) * 2005-01-07 2006-12-26 삼성전자주식회사 화상형성장치 및 그의 제어방법
US8290901B2 (en) * 2005-03-07 2012-10-16 Novell, Inc. Techniques for remote resource mounting
JP4168052B2 (ja) * 2005-04-01 2008-10-22 株式会社日立製作所 管理サーバ
US20060271579A1 (en) * 2005-05-10 2006-11-30 Arun Batish Storage usage analysis
US7552240B2 (en) * 2005-05-23 2009-06-23 International Business Machines Corporation Method for user space operations for direct I/O between an application instance and an I/O adapter
US20060265525A1 (en) * 2005-05-23 2006-11-23 Boyd William T System and method for processor queue to linear block address translation using protection table control based on a protection domain
US7464189B2 (en) * 2005-05-23 2008-12-09 International Business Machines Corporation System and method for creation/deletion of linear block address table entries for direct I/O
US20070005815A1 (en) * 2005-05-23 2007-01-04 Boyd William T System and method for processing block mode I/O operations using a linear block address translation protection table
US7502871B2 (en) * 2005-05-23 2009-03-10 International Business Machines Corporation Method for query/modification of linear block address table entries for direct I/O
US7502872B2 (en) * 2005-05-23 2009-03-10 International Bsuiness Machines Corporation Method for out of user space block mode I/O directly between an application instance and an I/O adapter
US20070055740A1 (en) * 2005-08-23 2007-03-08 Luciani Luis E System and method for interacting with a remote computer
US7500071B2 (en) * 2005-08-31 2009-03-03 International Business Machines Corporation Method for out of user space I/O with server authentication
US20070168567A1 (en) * 2005-08-31 2007-07-19 Boyd William T System and method for file based I/O directly between an application instance and an I/O adapter
US7577761B2 (en) * 2005-08-31 2009-08-18 International Business Machines Corporation Out of user space I/O directly between a host system and a physical adapter using file based linear block address translation
US7657662B2 (en) * 2005-08-31 2010-02-02 International Business Machines Corporation Processing user space operations directly between an application instance and an I/O adapter
US7949301B2 (en) 2006-07-21 2011-05-24 Research In Motion Limited Mobile communications device access from personal computer
US8402064B2 (en) * 2010-02-01 2013-03-19 Oracle International Corporation Orchestration of business processes using templates
US9904898B2 (en) * 2010-03-05 2018-02-27 Oracle International Corporation Distributed order orchestration system with rules engine
US10395205B2 (en) * 2010-03-05 2019-08-27 Oracle International Corporation Cost of change for adjusting long running order management fulfillment processes for a distributed order orchestration system
US10789562B2 (en) * 2010-03-05 2020-09-29 Oracle International Corporation Compensation patterns for adjusting long running order management fulfillment processes in an distributed order orchestration system
US8793262B2 (en) * 2010-03-05 2014-07-29 Oracle International Corporation Correlating and mapping original orders with new orders for adjusting long running order management fulfillment processes
US9269075B2 (en) * 2010-03-05 2016-02-23 Oracle International Corporation Distributed order orchestration system for adjusting long running order management fulfillment processes with delta attributes
US20110218925A1 (en) * 2010-03-05 2011-09-08 Oracle International Corporation Change management framework in distributed order orchestration system
US20110218926A1 (en) * 2010-03-05 2011-09-08 Oracle International Corporation Saving order process state for adjusting long running order management fulfillment processes in a distributed order orchestration system
US20110218923A1 (en) * 2010-03-05 2011-09-08 Oracle International Corporation Task layer service patterns for adjusting long running order management fulfillment processes for a distributed order orchestration system
US20110218921A1 (en) * 2010-03-05 2011-09-08 Oracle International Corporation Notify/inquire fulfillment systems before processing change requests for adjusting long running order management fulfillment processes in a distributed order orchestration system
US9658901B2 (en) 2010-11-12 2017-05-23 Oracle International Corporation Event-based orchestration in distributed order orchestration system
US10552769B2 (en) 2012-01-27 2020-02-04 Oracle International Corporation Status management framework in a distributed order orchestration system
US9466036B1 (en) * 2012-05-10 2016-10-11 Amazon Technologies, Inc. Automated reconfiguration of shared network resources
US8762322B2 (en) 2012-05-22 2014-06-24 Oracle International Corporation Distributed order orchestration system with extensible flex field support
US9672560B2 (en) 2012-06-28 2017-06-06 Oracle International Corporation Distributed order orchestration system that transforms sales products to fulfillment products
US20150331916A1 (en) * 2013-02-06 2015-11-19 Hitachi, Ltd. Computer, data access management method and recording medium
US10514857B2 (en) 2013-08-29 2019-12-24 Pure Storage, Inc. Dynamic adjusting of parameters based on resource scoring
US9438675B2 (en) * 2013-08-29 2016-09-06 International Business Machines Corporation Dispersed storage with variable slice length and methods for use therewith
US10684924B2 (en) 2016-02-18 2020-06-16 Commvault Systems, Inc. Data restoration operations based on network path information
US10664447B2 (en) 2016-07-12 2020-05-26 Commvault Systems, Inc. Dynamic management of expandable cache storage for multiple network shares configured in a file server
CN109542862B (zh) * 2018-11-21 2020-04-24 北京百度网讯科技有限公司 用于控制文件***的挂载的方法、装置和***

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5463772A (en) * 1993-04-23 1995-10-31 Hewlett-Packard Company Transparent peripheral file systems with on-board compression, decompression, and space management
DE19513308A1 (de) * 1994-10-04 1996-04-11 Hewlett Packard Co Dreidimensionales Dateisystem unter Verwendung einer virtuellen Knotenarchitektur
US5778384A (en) * 1995-12-22 1998-07-07 Sun Microsystems, Inc. System and method for automounting and accessing remote file systems in Microsoft Windows in a networking environment
US6044367A (en) * 1996-08-02 2000-03-28 Hewlett-Packard Company Distributed I/O store
US6697846B1 (en) * 1998-03-20 2004-02-24 Dataplow, Inc. Shared file system
US6260120B1 (en) * 1998-06-29 2001-07-10 Emc Corporation Storage mapping and partitioning among multiple host processors in the presence of login state changes and host controller replacement
US6356863B1 (en) * 1998-09-08 2002-03-12 Metaphorics Llc Virtual network file server
US6389420B1 (en) * 1999-09-30 2002-05-14 Emc Corporation File manager providing distributed locking and metadata management for shared data access by clients relinquishing locks after time period expiration
US6718372B1 (en) * 2000-01-07 2004-04-06 Emc Corporation Methods and apparatus for providing access by a first computing system to data stored in a shared storage device managed by a second computing system
US6601101B1 (en) * 2000-03-15 2003-07-29 3Com Corporation Transparent access to network attached devices
US6826613B1 (en) * 2000-03-15 2004-11-30 3Com Corporation Virtually addressing storage devices through a switch
US7254607B2 (en) * 2000-03-30 2007-08-07 United Devices, Inc. Dynamic coordination and control of network connected devices for large-scale network site testing and associated architectures
US20020040389A1 (en) * 2000-10-03 2002-04-04 Wirespring Technologies, Inc. System and method for remotely-managed content distribution network
WO2002035359A2 (en) * 2000-10-26 2002-05-02 Prismedia Networks, Inc. Method and system for managing distributed content and related metadata
US7165096B2 (en) * 2000-12-22 2007-01-16 Data Plow, Inc. Storage area network file system
TW561358B (en) * 2001-01-11 2003-11-11 Force Corp Z File switch and switched file system
US6782400B2 (en) * 2001-06-21 2004-08-24 International Business Machines Corporation Method and system for transferring data between server systems

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005339300A (ja) * 2004-05-28 2005-12-08 Hitachi Ltd データベース処理方法およびシステム並びにその処理プログラム
JP4572581B2 (ja) * 2004-05-28 2010-11-04 株式会社日立製作所 データベース処理方法およびシステム並びにその処理プログラム
JPWO2008139521A1 (ja) * 2007-04-27 2010-07-29 富士通株式会社 リモートファイルシステム、端末装置およびサーバ装置
JP2010160822A (ja) * 2010-04-23 2010-07-22 Hitachi Ltd データベース処理方法、データベース処理システム及びデータベース管理プログラム

Also Published As

Publication number Publication date
US20030078944A1 (en) 2003-04-24
US7124133B2 (en) 2006-10-17

Similar Documents

Publication Publication Date Title
JP2003131924A (ja) リモートアクセスプログラム、リモートアクセス要求処理プログラム、およびクライアントコンピュータ
US11375008B2 (en) Consumption of data services provisioned in cloud infrastructures
US6775673B2 (en) Logical volume-level migration in a partition-based distributed file system
WO2019245764A1 (en) Hierarchical namespace with strong consistency and horizontal scalability
US11818209B2 (en) State management and object storage in a distributed cloud computing network
US8429129B2 (en) Database restructuring apparatus, and computer-readable recording medium recording database restructuring program
US9390156B2 (en) Distributed directory environment using clustered LDAP servers
CN111966482B (zh) 边缘计算***
US10986065B1 (en) Cell-based distributed service architecture with dynamic cell assignment
CN111444157B (zh) 分布式文件***及数据访问方法
KR101236477B1 (ko) 비대칭 클러스터 파일 시스템의 데이터 처리 방법
US9740717B2 (en) Method of operation for a hierarchical file block variant tracker apparatus
CN116451213A (zh) 主机的容器***、动态挂载主机数据至容器的方法及应用程序
JP2004318744A (ja) 高可用性を提供するデータベース処理方法
CN113746641A (zh) 一种基于分布式存储的odx协议处理方法
CN113079098A (zh) 路由更新的方法、装置、设备和计算机可读介质
JP7137072B2 (ja) 情報処理システム、負荷分散処理装置および負荷分散処理プログラム
JP4874807B2 (ja) サーバ管理プログラム、サーバ管理方法、およびサーバ管理装置
JP4224279B2 (ja) ファイル管理プログラム
JP2004302564A (ja) ネームサービス提供方法及びその実施装置並びにその処理プログラム
US20160357780A1 (en) Hierarchical file block variant tracker apparatus coupled to a Librarian and to a remote file service
CN111400110B (zh) 数据库访问管理***
JP2001318905A (ja) ディスク共有型分散サーバシステム
JP2003157194A (ja) ファイルサーバプログラム
JP2001331398A (ja) サーバ管理システム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040512

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070814

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20080122