JP2014191754A - Storage system, file server, cache management method and cache management program - Google Patents

Storage system, file server, cache management method and cache management program Download PDF

Info

Publication number
JP2014191754A
JP2014191754A JP2013068940A JP2013068940A JP2014191754A JP 2014191754 A JP2014191754 A JP 2014191754A JP 2013068940 A JP2013068940 A JP 2013068940A JP 2013068940 A JP2013068940 A JP 2013068940A JP 2014191754 A JP2014191754 A JP 2014191754A
Authority
JP
Japan
Prior art keywords
file
cache
identification information
system area
file server
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.)
Granted
Application number
JP2013068940A
Other languages
Japanese (ja)
Other versions
JP6094317B2 (en
Inventor
Masayuki Takahashi
正幸 高橋
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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP2013068940A priority Critical patent/JP6094317B2/en
Publication of JP2014191754A publication Critical patent/JP2014191754A/en
Application granted granted Critical
Publication of JP6094317B2 publication Critical patent/JP6094317B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

PROBLEM TO BE SOLVED: To provide a storage system, a file server, a cache management method, and a program which allow disk access load to be suppressed when fail-over occurs.SOLUTION: The storage system includes a plurality of file servers 10-1 to 10-n, and each file server includes a cache management part 11 which, when complying with an access request for a file stored in a file system area shared between the file server and the other file servers, transfers a page cache corresponding to the access request to the other file servers together with identification information of the file and identification information of the file system area. The cache management part 11 stores a page cache, identification information of a file, and identification information of a file system area, which are received from another file server, in association with each other and, when complying with an access request for the stored file, uses the associated page cache to responds to the access request.

Description

本発明は、複数サーバでストレージを共有するストレージシステム、ストレージシステムにおけるファイルサーバ、キャッシュ管理方法およびキャッシュ管理プログラムに関する。   The present invention relates to a storage system in which a plurality of servers share storage, a file server in the storage system, a cache management method, and a cache management program.

クラスタ接続されたNAS(Network Attached Storage)(以下、クラスタNASという。)において、あるファイルサーバ(以下、ノードともいう)が、障害発生やメンテナンス等によりサービス停止した場合、フェイルオーバにより他のノードでサービスが継続される。しかし、その場合、リードページキャッシュ(以下、単にページキャッシュという。)は、他のノードへ引き継がれない。そのため、サービスを引き継いだ他のノードは、ディスクからデータを直接読み出さなければならない。従って、フェイルオーバ時に、他のノードからのアクセスによるディスク負荷が急増し、サービスダウン等のシステム障害が発生する恐れがある。   In a cluster-connected NAS (Network Attached Storage) (hereinafter referred to as a cluster NAS), when a file server (hereinafter also referred to as a node) is stopped due to a failure or maintenance, the service is performed on another node due to failover. Will continue. However, in that case, the read page cache (hereinafter simply referred to as “page cache”) cannot be taken over to another node. Therefore, the other node that has taken over the service must read the data directly from the disk. Therefore, at the time of failover, the disk load due to access from other nodes increases rapidly, and there is a possibility that system failure such as service down may occur.

また、近年、DIMM(Dual Inline Memory Module)の大容量低価格化が進み、NASのリードページキャッシュ用のメモリが大容量化されつつある。そのような環境においてフェイルオーバが発生すると、サービスを引き継いだノードからのファイルアクセスによるディスク負荷がさらに増大し、システム障害が発生する可能性が高くなる。   In recent years, the capacity of DIMMs (Dual Inline Memory Modules) has been reduced and the capacity of NAS read page cache memories has been increased. When failover occurs in such an environment, the disk load due to file access from the node that has taken over the service further increases, and the possibility of a system failure increases.

ストレージシステムで構成変更または障害が発生した場合に、ストレージシステムの現状に合わせて、コピー先ボリュームにアクセスするための各通信パスを評価し直し、各通信パスの優先順位を再設定する方法がある(例えば、特許文献1参照。)。   There is a method to re-evaluate each communication path to access the copy destination volume and reset the priority of each communication path according to the current status of the storage system when a configuration change or failure occurs in the storage system (For example, refer to Patent Document 1).

特表2012−531654号公報Special table 2012-531654 gazette

特許文献1に記載された方法は、現在使用中のアクティブパスがそのまま継続して使用される可能性を高くし、アクティブパスからスタンバイパスへのフェイルオーバの発生を抑制することができる。しかし、特許文献1に記載された方法では、フェイルオーバ発生時のディスクアクセス負荷については考慮されていない。   The method described in Patent Document 1 increases the possibility that an active path that is currently being used will continue to be used as it is, and can suppress the occurrence of failover from the active path to the standby path. However, the method described in Patent Document 1 does not consider the disk access load when failover occurs.

そこで、本発明は、フェイルオーバ発生時のディスクアクセス負荷を抑制することができるストレージシステム、ファイルサーバ、キャッシュ管理方法およびキャッシュ管理プログラムを提供することを目的とする。   Accordingly, an object of the present invention is to provide a storage system, a file server, a cache management method, and a cache management program that can suppress a disk access load when a failover occurs.

本発明によるストレージシステムは、複数のファイルサーバを備え、ファイルサーバは、他のファイルサーバと共有するファイルシステム領域に格納されたファイルに対するアクセス要求を受け付けた場合に、当該アクセス要求に対応するページキャッシュを、当該ファイルの識別情報および当該ファイルシステム領域の識別情報とともに他のファイルサーバに転送するキャッシュ管理部を含み、キャッシュ管理部は、他のファイルサーバから受信した、ページキャッシュとファイルの識別情報とファイルシステム領域の識別情報とを対応付けて保持し、他のファイルサーバの停止時に、当該ファイルシステム領域に格納された当該ファイルに対するアクセス要求を受け付けた場合には、当該ページキャッシュを使用して応答することを特徴とする。   The storage system according to the present invention includes a plurality of file servers. When the file server receives an access request for a file stored in a file system area shared with other file servers, the page cache corresponding to the access request is received. A cache management unit that transfers to the other file server together with the identification information of the file and the identification information of the file system area, and the cache management unit receives the page cache and file identification information received from the other file server, If the access request for the file stored in the file system area is accepted when the other file server is stopped, a response is made using the page cache. Features to do To.

本発明によるファイルサーバは、他のファイルサーバと共有するファイルシステム領域に格納されたファイルに対するアクセス要求を受け付けた場合に、当該アクセス要求に対応するページキャッシュを、当該ファイルの識別情報および当該ファイルシステム領域の識別情報とともに他のファイルサーバに転送するキャッシュ管理部を含み、キャッシュ管理部は、他のファイルサーバから受信した、ページキャッシュとファイルの識別情報とファイルシステム領域の識別情報とを対応付けて保持し、他のファイルサーバの停止時に、当該ファイルシステム領域に格納された当該ファイルに対するアクセス要求を受け付けた場合には、当該ページキャッシュを使用して応答することを特徴とする。   When a file server according to the present invention receives an access request for a file stored in a file system area shared with another file server, the file cache stores the page cache corresponding to the access request, the identification information of the file, and the file system. A cache management unit that transfers to the other file server together with the area identification information. The cache management unit associates the page cache, the file identification information, and the file system area identification information received from the other file server. When the access request to the file stored in the file system area is received when the other file server is stopped, the page cache is used to respond.

本発明によるキャッシュ管理方法は、他のファイルサーバと共有するファイルシステム領域に格納されたファイルに対するアクセス要求を受け付けた場合に、当該アクセス要求に対応するページキャッシュを、当該ファイルの識別情報および当該ファイルシステム領域の識別情報とともに他のファイルサーバに転送し、他のファイルサーバから受信した、ページキャッシュとファイルの識別情報とファイルシステム領域の識別情報とを対応付けて保持し、他のファイルサーバの停止時に、当該ファイルシステム領域に格納された当該ファイルに対するアクセス要求を受け付けた場合には、当該ページキャッシュを使用して応答することを特徴とする。   In the cache management method according to the present invention, when an access request for a file stored in a file system area shared with another file server is received, the page cache corresponding to the access request is stored in the file identification information and the file. Transfers the system area identification information to another file server and retains the page cache, the file identification information, and the file system area identification information received from the other file server, and stops the other file server. In some cases, when an access request to the file stored in the file system area is received, a response is made using the page cache.

本発明によるキャッシュ管理プログラムは、コンピュータに、他のファイルサーバと共有するファイルシステム領域に格納されたファイルに対するアクセス要求を受け付けた場合に、当該アクセス要求に対応するページキャッシュを、当該ファイルの識別情報および当該ファイルシステム領域の識別情報とともに他のファイルサーバに転送する処理と、他のファイルサーバから受信した、ページキャッシュとファイルの識別情報とファイルシステム領域の識別情報とを対応付けて保持し、他のファイルサーバの停止時に、当該ファイルシステム領域に格納された当該ファイルに対するアクセス要求を受け付けた場合には、当該ページキャッシュを使用して応答する処理とを実行させることを特徴とする。   When the cache management program according to the present invention receives an access request for a file stored in a file system area shared with another file server, the cache management program displays the page cache corresponding to the access request as identification information of the file. And the process of transferring to the other file server together with the identification information of the file system area, the page cache and the file identification information received from the other file server, and the identification information of the file system area in association with each other. When an access request to the file stored in the file system area is received when the file server is stopped, a process of responding using the page cache is executed.

本発明によれば、フェイルオーバ発生時のディスクアクセス負荷を抑制することができる。   According to the present invention, it is possible to suppress a disk access load when a failover occurs.

本発明によるストレージシステムの第1の実施形態の構成を示すブロック図である。1 is a block diagram showing a configuration of a first embodiment of a storage system according to the present invention. 平常時のストレージシステムの様子を示すブロック図である。It is a block diagram which shows the mode of the storage system of normal times. ファイルリード時のファイルサーバの動作を示すフローチャートである。It is a flowchart which shows operation | movement of the file server at the time of file read. ファイルサーバで障害が発生したときのストレージシステムの様子を示すブロック図である。It is a block diagram which shows the mode of a storage system when a failure occurs in a file server. 障害発生時のファイルシステムマウント処理を示すフローチャートである。It is a flowchart which shows the file system mounting process at the time of failure occurrence. フェイルバック時のストレージシステムの様子を示すブロック図である。It is a block diagram which shows the mode of the storage system at the time of failback. フェイルバック時のファイルサーバの動作を示すフローチャートである。It is a flowchart which shows operation | movement of the file server at the time of failback. 本発明によるストレージシステムの最小構成を示すブロック図である。1 is a block diagram showing a minimum configuration of a storage system according to the present invention.

実施形態1.
以下、本発明の第1の実施形態を図面を参照して説明する。
Embodiment 1. FIG.
A first embodiment of the present invention will be described below with reference to the drawings.

図1は、本発明によるストレージシステムの第1の実施形態の構成を示すブロック図である。   FIG. 1 is a block diagram showing a configuration of a first embodiment of a storage system according to the present invention.

図1に示すように、ファイルサーバ300とファイルサーバ301とは、クラスタ系間通信機能350を利用して通信可能である。クラスタ系間通信機能350は、ファイルサーバ間の通信を制御する。   As shown in FIG. 1, the file server 300 and the file server 301 can communicate using an inter-cluster communication function 350. The inter-cluster communication function 350 controls communication between file servers.

ファイルサーバ300,301と、クライアント330とは、ネットワーク340を介して接続される。また、ファイルサーバ300,301は、共有ディスク320と接続される。なお、図1では、クライアント330が1つ例示されているが、ネットワーク340にはいくつクライアントが接続されていてもよい。   The file servers 300 and 301 and the client 330 are connected via a network 340. The file servers 300 and 301 are connected to the shared disk 320. In FIG. 1, one client 330 is illustrated, but any number of clients may be connected to the network 340.

共有ディスク320は、ディスク装置であって、ファイルシステム領域(以下、単にファイルシステムという。)321とファイルシステム322とを含む。なお、ファイルシステムは、共有ディスクにいくつ含まれていてもよい。   The shared disk 320 is a disk device, and includes a file system area (hereinafter simply referred to as a file system) 321 and a file system 322. Any number of file systems may be included in the shared disk.

ファイルシステム321は、平常時、ファイルサーバ300にマウントされる。ファイルシステム322は、平常時、ファイルサーバ301にマウントされる。本実施形態では、ファイルシステム321上にファイル323が格納されている。また、図1に示すサーバIPアドレス360は、クライアント330がファイルサーバのファイル共有サービスを利用して、ファイルシステム321にアクセスする際に使用するIPアドレスである。   The file system 321 is normally mounted on the file server 300. The file system 322 is normally mounted on the file server 301. In the present embodiment, a file 323 is stored on the file system 321. A server IP address 360 shown in FIG. 1 is an IP address used when the client 330 accesses the file system 321 using the file sharing service of the file server.

ファイルサーバ300は、拡張キャッシュ管理部100を有するVFS(Virtual File System)200と、クラスタ制御機能310とを有する。なお、ファイルサーバ301の構成は、ファイルサーバ300と同様の構成であるため、説明を省略する。また、図1では、2つのファイルサーバが例示されているが、ファイルサーバはいくつあってもよい。   The file server 300 includes a VFS (Virtual File System) 200 having the extended cache management unit 100 and a cluster control function 310. The configuration of the file server 301 is the same as that of the file server 300, and thus the description thereof is omitted. In FIG. 1, two file servers are illustrated, but any number of file servers may be provided.

VFS200の拡張キャッシュ管理部100は、他のファイルサーバとページキャッシュを共有するための拡張キャッシュ管理機能を有する。また、拡張キャッシュ管理部100は、キャッシュ作成部110と、キャッシュ転送部120と、キャッシュコピー部130とを含む。   The extended cache management unit 100 of the VFS 200 has an extended cache management function for sharing a page cache with other file servers. The extended cache management unit 100 includes a cache creation unit 110, a cache transfer unit 120, and a cache copy unit 130.

キャッシュ作成部110は、クライアント330からのファイルアクセスに応じて、ページキャッシュを作成する。キャッシュ作成部110は、ページキャッシュを作成したタイミングで、アクセス先のファイルシステムに対応するリードキャッシュテーブルがあるか否かを確認する。   The cache creation unit 110 creates a page cache in response to file access from the client 330. The cache creation unit 110 checks whether or not there is a read cache table corresponding to the file system to be accessed at the timing when the page cache is created.

キャッシュ作成部110は、リードキャッシュテーブルがなければ、リードキャッシュテーブルを作成する。リードキャッシュテーブルは、ファイルの識別情報であるインデックスノード(以下、iノードという。)の番号(以下、iノード番号という。)と、ページキャッシュを管理する情報(以下、アドレス空間(address_space(as))構造体という。)を辿るための情報(ポインタ)とを含むエントリを登録するためのテーブルである。キャッシュ作成部110は、ファイルシステムごとにリードキャッシュテーブルを生成する。また、キャッシュ作成部110は、リードキャッシュテーブルに、対応するファイルシステムを識別するためのデバイスIDを格納する。   If there is no read cache table, the cache creation unit 110 creates a read cache table. The read cache table includes an index node (hereinafter referred to as an i-node number) that is file identification information (hereinafter referred to as an i-node number) and information for managing a page cache (hereinafter referred to as an address space (address_space (as)). It is a table for registering an entry including information (pointer) for tracing a structure). The cache creation unit 110 creates a read cache table for each file system. In addition, the cache creation unit 110 stores a device ID for identifying the corresponding file system in the read cache table.

キャッシュ作成部110は、ファイルのアクセス要求があった場合には、対応するリードキャッシュテーブルに、当該ファイルに対応するiノード番号を含むエントリがあるか否かを確認する。当該ファイルに対応するiノード番号を含むエントリがなければ、当該エントリを追加する。   When there is a file access request, the cache creation unit 110 checks whether there is an entry including the i-node number corresponding to the file in the corresponding read cache table. If there is no entry including the i-node number corresponding to the file, the entry is added.

キャッシュ転送部120は、リードキャッシュテーブル160に格納されたデバイスIDと、リードキャッシュテーブル160のエントリに含まれるiノード番号と、当該エントリに含まれるas構造体のポインタから辿れるページキャッシュとを、他方のファイルサーバ、つまり対向するファイルサーバ301の拡張キャッシュ管理部101に、クラスタ系間通信機能350を利用して転送する。   The cache transfer unit 120 obtains the device ID stored in the read cache table 160, the i-node number included in the entry of the read cache table 160, and the page cache traced from the pointer of the as structure included in the entry. To the extended cache management unit 101 of the opposing file server 301 using the inter-cluster communication function 350.

キャッシュコピー部130は、対向するファイルサーバ301のキャッシュ転送部121から情報(デバイスID、iノード番号、ページキャッシュ)を受け取ると、新規にas構造体を作成する。そして、キャッシュコピー部130は、新規に作成したas構造体の配下に、受け取ったページキャッシュをインデックス毎に繋ぐ。具体的には、ページキャッシュのポインタをas構造体に格納する。キャッシュコピー部130は、iノード番号と新規に作成したas構造体へのポインタとを含むエントリを、リードキャッシュテーブル161に登録する。また、キャッシュコピー部130は、受信したデバイスIDをリードキャッシュテーブル161に格納する。   When the cache copy unit 130 receives information (device ID, i-node number, page cache) from the cache transfer unit 121 of the opposing file server 301, the cache copy unit 130 newly creates an as structure. Then, the cache copy unit 130 connects the received page cache for each index under the newly created as structure. Specifically, the page cache pointer is stored in the as structure. The cache copy unit 130 registers an entry including an i-node number and a pointer to a newly created as structure in the read cache table 161. Further, the cache copy unit 130 stores the received device ID in the read cache table 161.

なお、拡張キャッシュ管理部100、拡張キャッシュ管理部100におけるキャッシュ作成部110、キャッシュ転送部120およびキャッシュコピー部130は、例えば、キャッシュ管理プログラムに従って動作するコンピュータによって実現される。この場合、CPUがキャッシュ管理プログラムを読み込み、そのプログラムに従って、拡張キャッシュ管理部100、拡張キャッシュ管理部100におけるキャッシュ作成部110、キャッシュ転送部120およびキャッシュコピー部130として動作する。また、拡張キャッシュ管理部100、拡張キャッシュ管理部100におけるキャッシュ作成部110、キャッシュ転送部120およびキャッシュコピー部130が別々のハードウェアで実現されていてもよい。   The extended cache management unit 100, the cache creation unit 110, the cache transfer unit 120, and the cache copy unit 130 in the extended cache management unit 100 are realized by, for example, a computer that operates according to a cache management program. In this case, the CPU reads the cache management program and operates as the extended cache management unit 100, the cache creation unit 110 in the extended cache management unit 100, the cache transfer unit 120, and the cache copy unit 130 according to the program. Further, the extended cache management unit 100, the cache creation unit 110, the cache transfer unit 120, and the cache copy unit 130 in the extended cache management unit 100 may be realized by separate hardware.

次に、本実施形態の動作を説明する。   Next, the operation of this embodiment will be described.

ファイルサーバのクラスタ構成として、アクティブ−アクティブ(Active−Active)構成、アクティブ−スタンバイ(Active−Standby)構成がある。アクティブ−アクティブ構成は、アクティブ−スタンバイ構成が2組ある構成と見なすことができる。従って、本実施形態では、クラスタ構成が、アクティブ−スタンバイ構成である場合を例にする。   As the cluster configuration of the file server, there are an active-active configuration and an active-standby configuration. The active-active configuration can be regarded as a configuration with two sets of active-standby configurations. Therefore, in this embodiment, a case where the cluster configuration is an active-standby configuration is taken as an example.

図2は、平常時のストレージシステムの様子を示すブロック図である。   FIG. 2 is a block diagram showing the state of the storage system in a normal state.

まず、クラスタの状態が平常時であるときに、クライアント330が、サーバIPアドレス360を使用して、ファイルシステム321上のファイル323を初めてリードする場合の動作を説明する。   First, an operation when the client 330 reads the file 323 on the file system 321 for the first time using the server IP address 360 when the cluster state is normal will be described.

図3は、ファイルリード時のファイルサーバの動作を示すフローチャートである。   FIG. 3 is a flowchart showing the operation of the file server during file reading.

VFS200は、クライアント330からリード要求を受け付けると、既存の機能を用いて、共有ディスク320にアクセスする(ステップS301)。そして、VFS200は、ファイル管理構造体210、ディエントリのキャッシュ(ディエントリキャッシュ)220、iノードのキャッシュ(iノードキャッシュ)230を作成する。ディエントリは、ファイル管理構造体とiノードとを対応づける情報である。   When receiving a read request from the client 330, the VFS 200 accesses the shared disk 320 using an existing function (step S301). The VFS 200 creates a file management structure 210, a deentry cache (deentry cache) 220, and an i-node cache (i-node cache) 230. The deentry is information that associates a file management structure with an i-node.

VFS200は、ファイルシステム321を示すデバイスIDや、ファイル323を示すiノード番号を、iノードキャッシュ230に格納する。このようにして、リード要求対象のファイル323の管理情報(ファイル管理構造体210、ディエントリキャッシュ220、iノードキャッシュ230)が作成される(ステップS302)。   The VFS 200 stores the device ID indicating the file system 321 and the i-node number indicating the file 323 in the i-node cache 230. In this way, management information (file management structure 210, deentry cache 220, i-node cache 230) of the read request target file 323 is created (step S302).

ここでは、ページキャッシュが作成されていないので(ステップS303のNo)、VFS200は、リード要求されたオフセットまでデータをディスクから読み出す(ステップS304)。これにより、as構造体140と、オフセットに該当するインデックスとを含むページキャッシュ150が作成される。VFS200は、作成したページキャッシュ150へのポインタを、as構造体140に格納する。また、as構造体140へのポインタを、iノードキャッシュ230に設定する。   Here, since the page cache has not been created (No in step S303), the VFS 200 reads data from the disk up to the offset requested to be read (step S304). As a result, the page cache 150 including the as structure 140 and the index corresponding to the offset is created. The VFS 200 stores the pointer to the created page cache 150 in the as structure 140. In addition, a pointer to the as structure 140 is set in the i-node cache 230.

ページキャッシュの作成が完了したタイミングで、キャッシュ作成部110は、iノードキャッシュ230から、デバイスID、iノード番号およびas構造体140へのポインタを取得する。そして、キャッシュ作成部110は、取得したデバイスIDに対応するリードキャッシュテーブル160を作成する。キャッシュ作成部110は、作成したリードキャッシュテーブル160に、取得したiノード番号とas構造体140へのポインタとを含むエントリ170を追加する。   At the timing when the creation of the page cache is completed, the cache creation unit 110 acquires a device ID, an i-node number, and a pointer to the as structure 140 from the i-node cache 230. Then, the cache creation unit 110 creates a read cache table 160 corresponding to the acquired device ID. The cache creation unit 110 adds an entry 170 including the acquired i-node number and a pointer to the as structure 140 to the created read cache table 160.

相手ノード(ファイルサーバ301)が稼働している場合には(ステップS305のYes)、キャッシュ転送部120は、ファイルサーバ301の拡張キャッシュ管理部101に、ページキャッシュを、デバイスID、iノード番号とともに転送する(ステップS306)。   When the counterpart node (file server 301) is operating (Yes in step S305), the cache transfer unit 120 sends the page cache to the extended cache management unit 101 of the file server 301 together with the device ID and inode number. Transfer (step S306).

ステップS306の後、VFS200は、ページキャッシュに格納されたデータを、リード要求に対する応答として、クライアント330に送信する(ステップS307)。   After step S306, the VFS 200 transmits the data stored in the page cache to the client 330 as a response to the read request (step S307).

なお、ステップS303において、ページキャッシュ150が既に作成されている場合には(ステップS303のYes)、ステップS304〜S306の処理は実行されない。また、ステップS305において、相手ノードが稼働していない場合には(ステップS305のNo)、ステップS306の処理は実行されない。   If the page cache 150 has already been created in step S303 (Yes in step S303), the processes in steps S304 to S306 are not executed. In step S305, when the counterpart node is not operating (No in step S305), the process in step S306 is not executed.

ファイルサーバ301の拡張キャッシュ管理部101、具体的にはキャッシュコピー部131は、ファイルサーバ300のキャッシュ転送部120から、ページキャッシュ、デバイスIDおよびiノード番号を受け取ると(ステップS308)、as構造体140に相当するas構造体141を新規に作成する。また、受け取ったページキャッシュ(ページキャッシュ150)に相当するページキャッシュ151を作成する。キャッシュコピー部131は、受け取ったデバイスIDに対応するリードキャッシュテーブル161を作成する。キャッシュコピー部131は、リードキャッシュテーブル161に、受け取ったiノード番号とas構造体141へのポインタとを含むエントリ171を登録する。   When the extended cache management unit 101 of the file server 301, specifically, the cache copy unit 131 receives the page cache, device ID, and inode number from the cache transfer unit 120 of the file server 300 (step S308), the as structure As structure 141 corresponding to 140 is newly created. A page cache 151 corresponding to the received page cache (page cache 150) is created. The cache copy unit 131 creates a read cache table 161 corresponding to the received device ID. The cache copy unit 131 registers an entry 171 including the received i-node number and a pointer to the as structure 141 in the read cache table 161.

このようにして、ファイルシステム321上のファイル323に対するページキャッシュが、ファイルサーバ300からファイルサーバ301にコピーされる(ステップS309)。   In this way, the page cache for the file 323 on the file system 321 is copied from the file server 300 to the file server 301 (step S309).

次に、ファイルサーバ300で障害が発生した場合の動作を説明する。   Next, an operation when a failure occurs in the file server 300 will be described.

図4は、ファイルサーバ300で障害が発生したときのストレージシステムの様子を示す説明図である。図5は、障害発生時のファイルシステムマウント処理を示すフローチャートである。   FIG. 4 is an explanatory diagram showing the state of the storage system when a failure occurs in the file server 300. FIG. 5 is a flowchart showing the file system mounting process when a failure occurs.

なお、図4に示すように、ファイルサーバ300が使用できなくなった場合には、一般的なクラスタ制御により、ファイルサーバ300の処理は、フェイルオーバされる、つまり、ファイルサーバ300の処理は、ファイルサーバ301に引き継がれる。従って、ファイルシステム321は、ファイルサーバ301側にマウントされる(ステップS501)。また、サーバIPアドレス360が、ファイルサーバ301側に割り当てられる。   As shown in FIG. 4, when the file server 300 becomes unusable, the processing of the file server 300 is failed over by general cluster control. That is, the processing of the file server 300 is performed by the file server. 301 is taken over. Accordingly, the file system 321 is mounted on the file server 301 side (step S501). A server IP address 360 is assigned to the file server 301 side.

このとき、ファイルサーバ301、具体的にはVFS201の拡張キャッシュ管理部101は、ファイルシステム321がマウントされた後、ファイルシステム321のデバイスIDに対応するリードキャッシュテーブルを参照する(ステップS502)。   At this time, after the file system 321 is mounted, the file server 301, specifically, the extended cache management unit 101 of the VFS 201 refers to the read cache table corresponding to the device ID of the file system 321 (step S502).

ここでは、デバイスIDに対応するリードキャッシュテーブル161が存在するので(ステップS503のYes)、拡張キャッシュ管理部101は、さらに、リードキャッシュテーブル161にエントリが登録されているか否かを確認する(ステップS504)。   Here, since the read cache table 161 corresponding to the device ID exists (Yes in step S503), the extended cache management unit 101 further checks whether or not an entry is registered in the read cache table 161 (step S503). S504).

ここでは、エントリ171が登録されているので(ステップS504のYes)、拡張キャッシュ管理部101は、エントリ171のiノード番号に対応するファイルにアクセス要求があったかのように、ディスクI/O(Input/Output)を行う(ステップS505)。それにより、ファイル管理情報(ファイル管理構造体211、ディエントリキャッシュ221、iノードキャッシュ231)が作成される。次に、拡張キャッシュ管理部101は、エントリ171に含まれるas構造体141へのポインタをiノードキャッシュ231に設定する(ステップS506)。   Here, since the entry 171 is registered (Yes in step S504), the extended cache management unit 101 makes a disk I / O (Input) as if there was an access request to the file corresponding to the i-node number of the entry 171. / Output) is performed (step S505). As a result, file management information (file management structure 211, deentry cache 221, i-node cache 231) is created. Next, the extended cache management unit 101 sets a pointer to the as structure 141 included in the entry 171 in the i-node cache 231 (step S506).

なお、ステップS503において、リードキャッシュテーブル161が存在しない場合(ステップS503のNo)、拡張キャッシュ管理部101は処理を終了する。また、ステップS504において、エントリが登録されていない場合には(ステップS504のNo)、拡張キャッシュ管理部101は処理を終了する。   If the read cache table 161 does not exist in step S503 (No in step S503), the extended cache management unit 101 ends the process. If no entry is registered in step S504 (No in step S504), the extended cache management unit 101 ends the process.

ステップS506の後、拡張キャッシュ管理部101は、リードキャッシュテーブル161に未処理のエントリが他に存在するか否かを確認する(ステップS507)。未処理のエントリが存在する場合には(ステップS507のNo)、拡張キャッシュ管理部101は、当該未処理のエントリを処理対象として(ステップS508)、ステップS505〜S606の処理を実行する。   After step S506, the extended cache management unit 101 checks whether there are other unprocessed entries in the read cache table 161 (step S507). If there is an unprocessed entry (No in step S507), the extended cache management unit 101 executes the processes in steps S505 to S606 with the unprocessed entry as a processing target (step S508).

拡張キャッシュ管理部101は、未処理のエントリが存在しない場合には(ステップS507のNo)、ファイルシステムのマウント処理を完了する。   If there is no unprocessed entry (No in step S507), the extended cache management unit 101 completes the file system mounting process.

その後、例えば、クライアント330が、サーバIPアドレス360を使用して、ファイルシステム321上のファイル323のリード要求を行うと、ファイルサーバ301は、ページキャッシュ151を利用して応答を返す。   Thereafter, for example, when the client 330 makes a read request for the file 323 on the file system 321 using the server IP address 360, the file server 301 returns a response using the page cache 151.

このように、フェイルオーバ後のファイルアクセスには、事前に拡張キャッシュ管理部100、101間で共有していたページキャッシュが利用される。それにより、ディスクアクセス数が低減される。   As described above, the page cache shared in advance between the extended cache management units 100 and 101 is used for file access after failover. Thereby, the number of disk accesses is reduced.

最後に、ファイルサーバ300が復旧しフェイルバックする時の拡張キャッシュ管理部の動作を説明する。   Finally, the operation of the extended cache management unit when the file server 300 recovers and fails back will be described.

図6は、フェイルバック時のストレージシステムの様子を示すブロック図である。図7は、フェイルバック時のファイルサーバの動作を示すフローチャートである。   FIG. 6 is a block diagram showing the state of the storage system at the time of failback. FIG. 7 is a flowchart showing the operation of the file server at the time of failback.

ファイルサーバ301のクラスタ制御機能311は、ファイルサーバ300が復旧しフェイルバック可能となったことを検出すると、拡張キャッシュ管理部101に、フェイルバックを実行するように通知する。具体的には、サービス対象のファイルシステム321とサーバIPアドレス360について、フェイルバックすることを通知する(ステップS701)。   When the cluster control function 311 of the file server 301 detects that the file server 300 has been recovered and can be failed back, it notifies the extended cache management unit 101 to execute the failback. Specifically, the service target file system 321 and the server IP address 360 are notified of failback (step S701).

通知を受けた拡張キャッシュ管理部101は、ファイルシステム321のデバイスIDを確認する(ステップS702)。拡張キャッシュ管理部101は、当該デバイスIDに対応するリードキャッシュテーブルが存在するか否かを確認する(ステップS703)。   Upon receiving the notification, the extended cache management unit 101 checks the device ID of the file system 321 (step S702). The extended cache management unit 101 checks whether there is a read cache table corresponding to the device ID (step S703).

ここでは、デバイスIDに対応するリードキャッシュテーブル161が存在するので(ステップS703のYes)、拡張キャッシュ管理部101は、リードキャッシュテーブル161にエントリが登録されているか否かを確認する(ステップS704)。   Here, since the read cache table 161 corresponding to the device ID exists (Yes in step S703), the extended cache management unit 101 checks whether an entry is registered in the read cache table 161 (step S704). .

ここでは、エントリ171が存在するので(ステップS704のYes)、拡張キャッシュ管理部101は、エントリ171についてキャッシュ転送を実行するように、キャッシュ転送部121に指示する。キャッシュ転送部121は、キャッシュ転送を実行する(ステップS705)。   Here, since the entry 171 exists (Yes in step S704), the extended cache management unit 101 instructs the cache transfer unit 121 to execute cache transfer for the entry 171. The cache transfer unit 121 executes cache transfer (step S705).

拡張キャッシュ管理部101は、リードキャッシュテーブル161に未処理のエントリが他に存在するか否かを確認する(ステップS706)。未処理のエントリが存在する場合には(ステップS706のNo)、拡張キャッシュ管理部101は、当該未処理のエントリを処理対象として(ステップS707)、ステップS705,S706の処理を実行する。   The extended cache management unit 101 checks whether there are other unprocessed entries in the read cache table 161 (step S706). If there is an unprocessed entry (No in step S706), the extended cache management unit 101 executes the processes in steps S705 and S706 with the unprocessed entry as a processing target (step S707).

なお、ステップS703において、リードキャッシュテーブル161が存在しない場合には(ステップS703のNo)、ステップS704〜S707の処理は実行されない。また、ステップS704において、エントリが存在しなし場合には(ステップS704のNo)、ステップS705〜S707の処理は実行されない。   In step S703, when the read cache table 161 does not exist (No in step S703), the processes in steps S704 to S707 are not executed. If no entry exists in step S704 (No in step S704), the processes in steps S705 to S707 are not executed.

拡張キャッシュ管理部101は、すべてのエントリについて転送処理を完了すると(ステップS706のYes)、キャッシュ転送の完了をクラスタ制御機能311に通知する(ステップS708)。   When the extended cache management unit 101 completes the transfer process for all entries (Yes in step S706), it notifies the cluster control function 311 of the completion of the cache transfer (step S708).

ファイルサーバ300の拡張キャッシュ管理部100、具体的にはキャッシュコピー部130は、キャッシュ転送部121から受け取った情報をもとに、各エントリに対応するas構造体とページキャッシュを再作成する(ステップS709,S710)。   Based on the information received from the cache transfer unit 121, the extended cache management unit 100 of the file server 300, specifically, the cache copy unit 130, recreates an as structure and a page cache corresponding to each entry (step). S709, S710).

ファイルサーバ301のクラスタ制御機能311は、キャッシュ転送の完了後、既存の機能を用いてフェイルバック処理を行う。そして、クラスタ制御機能311は、ファイルサーバ300側にファイルシステム321をマウントさせて、ファイルサーバ300側にサーバIPアドレス360を割り当てる。   The cluster control function 311 of the file server 301 performs failback processing using the existing function after the cache transfer is completed. Then, the cluster control function 311 mounts the file system 321 on the file server 300 side and assigns a server IP address 360 to the file server 300 side.

このとき、ファイルサーバ300は、ファイルシステム321がマウントされると、図5に示すフロー従って、フェイルオーバ時と同様に処理を進める。このようにして、ファイルサーバ300におけるキャッシュの状態が、図2に示す平常時の状態と同じ状態となる。   At this time, when the file system 321 is mounted, the file server 300 proceeds with processing in the same manner as during failover according to the flow shown in FIG. In this way, the cache state in the file server 300 becomes the same as the normal state shown in FIG.

このようにして、クラスタNASのノード間でページキャッシュを共有することが可能となる。   In this way, the page cache can be shared between the nodes of the cluster NAS.

以上に説明したように、本実施形態では、クラスタNASにおいて、あるノードにおけるファイル共有サービスのリードページキャッシュをコピーして別のノードに転送し、リードページキャッシュを両ノードで保持させる。このようにノード間でリードページキャッシュを共有することにより、フェイルオーバ時にファイル共有サービスが別のノードに移ったときに、リードページキャッシュを引き継ぐことが可能となる。つまり、スタンバイノードは、そのリードページキャッシュを、フェイルオーバ直後から利用することができる。従って、フェイルオーバ時のスタンバイノードから共有ディスクへのディスクアクセス負荷を低減することができる。よって、フェイルオーバ直後に発生する、共有ディスクへのディスクアクセス負荷の急増によるシステム障害を回避できる。   As described above, in this embodiment, in the cluster NAS, the read page cache of the file sharing service in a certain node is copied and transferred to another node, and the read page cache is held in both nodes. By sharing the read page cache between the nodes in this way, it is possible to take over the read page cache when the file sharing service moves to another node at the time of failover. That is, the standby node can use the read page cache immediately after failover. Therefore, the disk access load from the standby node to the shared disk at the time of failover can be reduced. Therefore, it is possible to avoid a system failure that occurs immediately after failover due to a sudden increase in the disk access load on the shared disk.

また、共有ディスクよりクライアント側に近いファイルサーバ側でキャッシュヒットを検出することができるので、共有ディスク内キャッシュにヒットする場合でも、クライアントへの応答性能を向上させることができる。   Further, since the cache hit can be detected on the file server side closer to the client side than the shared disk, the response performance to the client can be improved even when the shared disk cache is hit.

図8は、本発明によるストレージシステムの最小構成を示すブロック図である。図8に示すように、ストレージシステムは、複数のファイルサーバ10−1〜10−n(図1に示すファイルサーバ300およびファイルサーバ301に相当。)を備え、ファイルサーバ(図1に示すファイルサーバ300に相当。)は、他のファイルサーバ(図1に示すファイルサーバ301に相当。)と共有するファイルシステム領域に格納されたファイルに対するアクセス要求を受け付けた場合に、当該アクセス要求に対応するページキャッシュを、当該ファイルの識別情報(iノード番号に相当。)および当該ファイルシステム領域の識別情報(デバイスIDに相当。)とともに他のファイルサーバに転送するキャッシュ管理部11(図1に示すファイルサーバ300におけるVFS200における拡張キャッシュ管理部100に相当。)を含み、キャッシュ管理部11は、他のファイルサーバから受信した、ページキャッシュとファイルの識別情報とファイルシステム領域の識別情報とを対応付けて保持し、他のファイルサーバの停止時に、当該ファイルシステム領域に格納された当該ファイルに対するアクセス要求を受け付けた場合には、当該ページキャッシュを使用して応答する。   FIG. 8 is a block diagram showing the minimum configuration of the storage system according to the present invention. As shown in FIG. 8, the storage system includes a plurality of file servers 10-1 to 10-n (corresponding to the file server 300 and the file server 301 shown in FIG. 1), and a file server (file server shown in FIG. 1). Is equivalent to 300.) is a page corresponding to the access request when an access request for a file stored in a file system area shared with another file server (corresponding to the file server 301 shown in FIG. 1) is received. A cache management unit 11 (file server shown in FIG. 1) that transfers the cache to another file server together with the identification information of the file (corresponding to the i-node number) and the identification information of the file system area (corresponding to the device ID). 300 to the extended cache management unit 100 in the VFS 200 The cache management unit 11 stores the page cache, the file identification information, and the file system area identification information received from another file server in association with each other, and when the other file server is stopped, When an access request for the file stored in the file system area is received, a response is made using the page cache.

そのような構成によれば、ノード間でリードページキャッシュを共有することができる。従って、フェイルオーバ時にファイル共有サービスが別のノードに移ったときに、リードページキャッシュを引き継ぐことが可能となる。つまり、スタンバイノードは、そのリードページキャッシュを、フェイルオーバ直後から利用することができる。従って、フェイルオーバ時のスタンバイノードからのディスクアクセス負荷を低減することができる。   According to such a configuration, the read page cache can be shared between nodes. Therefore, it is possible to take over the read page cache when the file sharing service moves to another node at the time of failover. That is, the standby node can use the read page cache immediately after failover. Therefore, the disk access load from the standby node at the time of failover can be reduced.

上記の実施形態には、以下のようなストレージシステムも開示されている。   In the above embodiment, the following storage system is also disclosed.

(1)キャッシュ管理部11は、他のファイルサーバと共有するファイルシステム領域ごとに、ページキャッシュを管理するためのリードキャッシュテーブルを作成し、ファイルシステム領域に格納されたファイルへアクセス要求があった場合に、当該アクセス要求に対応するファイルとページキャッシュとを特定可能な情報を含むエントリをリードキャッシュテーブルに登録するキャッシュ作成部12(図1に示すファイルサーバ300におけるVFS200における拡張キャッシュ管理部100におけるキャッシュ作成部110に相当。)と、リードキャッシュテーブルに登録された各エントリを参照し、各エントリに対応するページキャッシュを、他のファイルサーバに転送するキャッシュ転送部13(図1に示すファイルサーバ300におけるVFS200における拡張キャッシュ管理部100におけるキャッシュ転送部120に相当。)とを含むストレージシステム。 (1) The cache management unit 11 creates a read cache table for managing the page cache for each file system area shared with other file servers, and there is an access request to a file stored in the file system area In this case, the cache creation unit 12 (in the extended cache management unit 100 in the VFS 200 in the file server 300 shown in FIG. 1) registers an entry including information that can identify the file and page cache corresponding to the access request in the read cache table. And a cache transfer unit 13 (see FIG. 1) that refers to each entry registered in the read cache table and transfers the page cache corresponding to each entry to another file server. 30 Corresponding to the cache transfer section 120 in the expanded cache management unit 100 in VFS200 in.) And a storage system including a.

そのような構成によれば、ファイルシステム領域毎、ファイルアクセス毎にキャッシュを管理することができる。   According to such a configuration, the cache can be managed for each file system area and for each file access.

(2)キャッシュ管理部11は、他のファイルサーバからページキャッシュとファイルの識別情報とファイルシステム領域の識別情報とを受信すると、当該ファイルシステム領域に対応するリードキャッシュテーブルを作成し、当該ファイルと当該ページキャッシュとを特定可能な情報を含むエントリを、当該リードキャッシュテーブルに登録するキャッシュコピー部14(図1に示すファイルサーバ300におけるVFS200における拡張キャッシュ管理部100におけるキャッシュコピー部130に相当。)を含み、キャッシュ管理部11は、他のファイルサーバが停止した場合には、キャッシュコピー部14が登録したエントリごとに、ページキャッシュと、当該ページキャッシュに対応するファイルとを関連付ける処理を実行し、当該ページキャッシュを使用可能な状態にするストレージシステム。 (2) Upon receiving the page cache, file identification information, and file system area identification information from another file server, the cache management unit 11 creates a read cache table corresponding to the file system area, A cache copy unit 14 that registers an entry including information that can identify the page cache in the read cache table (corresponding to the cache copy unit 130 in the extended cache management unit 100 in the VFS 200 in the file server 300 shown in FIG. 1). The cache management unit 11 executes a process of associating the page cache with the file corresponding to the page cache for each entry registered by the cache copy unit 14 when another file server is stopped. Storage system to a usable state the page cache.

そのような構成によれば、他のファイルサーバから受け取ったページキャッシュを利用して、ファイルアクセス要求に応じることができる。従って、例えば、NASの再起動時に、リード用のページキャッシュデータが揮発した場合であっても、その後のファイルアクセスによるディスク負荷を低減することができる。   According to such a configuration, it is possible to respond to a file access request using a page cache received from another file server. Therefore, for example, even when the page cache data for reading is volatilized when the NAS is restarted, the disk load due to subsequent file access can be reduced.

また、上記の実施形態には、以下のようなファイルサーバも開示されている。   Further, the following file server is also disclosed in the above embodiment.

(3)他のファイルサーバと共有するファイルシステム領域に格納されたファイルに対するアクセス要求を受け付けた場合に、当該アクセス要求に対応するページキャッシュを、当該ファイルの識別情報および当該ファイルシステム領域の識別情報とともに他のファイルサーバに転送するキャッシュ管理部11を含み、キャッシュ管理部11は、他のファイルサーバから受信した、ページキャッシュとファイルの識別情報とファイルシステム領域の識別情報とを対応付けて保持し、他のファイルサーバの停止時に、当該ファイルシステム領域に格納された当該ファイルに対するアクセス要求を受け付けた場合には、当該ページキャッシュを使用して応答するファイルサーバ。 (3) When an access request for a file stored in a file system area shared with another file server is received, the page cache corresponding to the access request is displayed with the identification information of the file and the identification information of the file system area. The cache management unit 11 also transfers the page cache, the file identification information, and the file system area identification information received from the other file server in association with each other. A file server that responds using the page cache when an access request for the file stored in the file system area is received when another file server is stopped.

そのような構成によれば、ノード間でリードページキャッシュ共有することができる。従って、フェイルオーバ時にファイル共有サービスが別のノードに移ったときに、リードページキャッシュを引き継ぐことが可能となる。つまり、スタンバイノードは、そのリードページキャッシュを、フェイルオーバ直後から利用することができる。従って、フェイルオーバ時のスタンバイノードからのディスクアクセス負荷を低減することができる。   According to such a configuration, the read page cache can be shared between nodes. Therefore, it is possible to take over the read page cache when the file sharing service moves to another node at the time of failover. That is, the standby node can use the read page cache immediately after failover. Therefore, the disk access load from the standby node at the time of failover can be reduced.

(4)キャッシュ管理部11は、他のファイルサーバと共有するファイルシステム領域ごとに、ページキャッシュを管理するためのリードキャッシュテーブルを作成し、ファイルシステム領域に格納されたファイルへアクセス要求があった場合に、当該アクセス要求に対応するファイルとページキャッシュとを特定可能な情報を含むエントリをリードキャッシュテーブルに登録するキャッシュ作成部12と、リードキャッシュテーブルに登録された各エントリを参照し、各エントリに対応するページキャッシュを、他のファイルサーバに転送するキャッシュ転送部13とを含むファイルサーバ。 (4) The cache management unit 11 creates a read cache table for managing the page cache for each file system area shared with other file servers, and there is an access request to a file stored in the file system area The cache creation unit 12 that registers an entry including information that can identify the file and page cache corresponding to the access request in the read cache table, and refers to each entry registered in the read cache table. And a cache transfer unit 13 that transfers a page cache corresponding to the above to another file server.

そのような構成によれば、ファイルシステム領域毎、ファイルアクセス毎にキャッシュを管理することができる。   According to such a configuration, the cache can be managed for each file system area and for each file access.

(5)キャッシュ管理部11は、他のファイルサーバからページキャッシュとファイルの識別情報とファイルシステム領域の識別情報とを受信すると、当該ファイルシステム領域に対応するリードキャッシュテーブルを作成し、当該ファイルと当該ページキャッシュとを特定可能な情報を含むエントリを、当該リードキャッシュテーブルに登録するキャッシュコピー部14を含み、キャッシュ管理部11は、他のファイルサーバが停止した場合には、キャッシュコピー部14が登録したエントリごとに、ページキャッシュと、当該ページキャッシュに対応するファイルとを関連付ける処理を実行し、当該ページキャッシュを使用可能な状態にするファイルサーバ。 (5) Upon receiving the page cache, file identification information and file system area identification information from another file server, the cache management unit 11 creates a read cache table corresponding to the file system area, The cache management unit 11 includes an entry including information that can identify the page cache in the read cache table. When the other file server is stopped, the cache management unit 11 A file server that executes processing for associating a page cache and a file corresponding to the page cache for each registered entry, and makes the page cache usable.

そのような構成によれば、他のファイルサーバから受け取ったページキャッシュを利用して、ファイルアクセス要求に応じることができる。従って、例えば、NASの再起動時に、リード用のページキャッシュデータが揮発した場合であっても、その後のファイルアクセスによるディスク負荷を低減することができる。   According to such a configuration, it is possible to respond to a file access request using a page cache received from another file server. Therefore, for example, even when the page cache data for reading is volatilized when the NAS is restarted, the disk load due to subsequent file access can be reduced.

10−1〜10−n、301、302 ファイルサーバ
11 キャッシュ管理部
100、101 拡張キャッシュ管理部
110、111 キャッシュ作成部
120、121 キャッシュ転送部
130、131 キャッシュコピー部
200、201 VFS
310、311 クラスタ制御機能
320 共有ディスク
321、322 ファイルシステム領域
323 ファイル
330 クライアント
340 ネットワーク
350 クラスタ系間通信機能
360 サーバIPアドレス
10-1 to 10-n, 301, 302 File server 11 Cache management unit 100, 101 Extended cache management unit 110, 111 Cache creation unit 120, 121 Cache transfer unit 130, 131 Cache copy unit 200, 201 VFS
310, 311 Cluster control function 320 Shared disk 321, 322 File system area 323 File 330 Client 340 Network 350 Inter-cluster communication function 360 Server IP address

Claims (8)

複数のファイルサーバを備え、
前記ファイルサーバは、
他のファイルサーバと共有するファイルシステム領域に格納されたファイルに対するアクセス要求を受け付けた場合に、当該アクセス要求に対応するページキャッシュを、当該ファイルの識別情報および当該ファイルシステム領域の識別情報とともに前記他のファイルサーバに転送するキャッシュ管理部を含み、
前記キャッシュ管理部は、前記他のファイルサーバから受信した、ページキャッシュとファイルの識別情報とファイルシステム領域の識別情報とを対応付けて保持し、前記他のファイルサーバの停止時に、当該ファイルシステム領域に格納された当該ファイルに対するアクセス要求を受け付けた場合には、当該ページキャッシュを使用して応答する
ことを特徴とするストレージシステム。
With multiple file servers,
The file server is
When an access request for a file stored in a file system area shared with another file server is received, the page cache corresponding to the access request is displayed together with the identification information of the file and the identification information of the file system area. Including a cache management unit that transfers to the file server
The cache management unit holds the page cache, file identification information, and file system area identification information received from the other file server in association with each other, and when the other file server is stopped, the file system area When an access request for the file stored in is received, the storage system responds using the page cache.
キャッシュ管理部は、
他のファイルサーバと共有するファイルシステム領域ごとに、ページキャッシュを管理するためのリードキャッシュテーブルを作成し、ファイルシステム領域に格納されたファイルへアクセス要求があった場合に、当該アクセス要求に対応するファイルとページキャッシュとを特定可能な情報を含むエントリを前記リードキャッシュテーブルに登録するキャッシュ作成部と、
前記リードキャッシュテーブルに登録された各エントリを参照し、各エントリに対応するページキャッシュを、前記他のファイルサーバに転送するキャッシュ転送部とを含む
請求項1に記載のストレージシステム。
The cache management department
Create a read cache table for managing the page cache for each file system area shared with other file servers, and respond to the access request when there is an access request to a file stored in the file system area A cache creation unit that registers an entry including information that can identify a file and a page cache in the read cache table;
The storage system according to claim 1, further comprising: a cache transfer unit that refers to each entry registered in the read cache table and transfers a page cache corresponding to each entry to the other file server.
キャッシュ管理部は、
他のファイルサーバからページキャッシュとファイルの識別情報とファイルシステム領域の識別情報とを受信すると、当該ファイルシステム領域に対応するリードキャッシュテーブルを作成し、当該ファイルと当該ページキャッシュとを特定可能な情報を含むエントリを、当該リードキャッシュテーブルに登録するキャッシュコピー部を含み、
前記キャッシュ管理部は、前記他のファイルサーバが停止した場合には、前記キャッシュコピー部が登録したエントリごとに、ページキャッシュと、当該ページキャッシュに対応するファイルとを関連付ける処理を実行し、当該ページキャッシュを使用可能な状態にする
請求項2に記載のストレージシステム。
The cache management department
When the page cache, file identification information, and file system area identification information are received from another file server, a read cache table corresponding to the file system area is created, and the information that can identify the file and the page cache Including a cache copy unit that registers an entry including
The cache management unit executes a process of associating a page cache with a file corresponding to the page cache for each entry registered by the cache copy unit when the other file server is stopped, The storage system according to claim 2, wherein the cache is made available.
他のファイルサーバと共有するファイルシステム領域に格納されたファイルに対するアクセス要求を受け付けた場合に、当該アクセス要求に対応するページキャッシュを、当該ファイルの識別情報および当該ファイルシステム領域の識別情報とともに前記他のファイルサーバに転送するキャッシュ管理部を含み、
前記キャッシュ管理部は、前記他のファイルサーバから受信した、ページキャッシュとファイルの識別情報とファイルシステム領域の識別情報とを対応付けて保持し、前記他のファイルサーバの停止時に、当該ファイルシステム領域に格納された当該ファイルに対するアクセス要求を受け付けた場合には、当該ページキャッシュを使用して応答する
ことを特徴とするファイルサーバ。
When an access request for a file stored in a file system area shared with another file server is received, the page cache corresponding to the access request is displayed together with the identification information of the file and the identification information of the file system area. Including a cache management unit that transfers to the file server
The cache management unit holds the page cache, file identification information, and file system area identification information received from the other file server in association with each other, and when the other file server is stopped, the file system area A file server that responds by using the page cache when an access request for the file stored in is received.
キャッシュ管理部は、
他のファイルサーバと共有するファイルシステム領域ごとに、ページキャッシュを管理するためのリードキャッシュテーブルを作成し、ファイルシステム領域に格納されたファイルへアクセス要求があった場合に、当該アクセス要求に対応するファイルとページキャッシュとを特定可能な情報を含むエントリを前記リードキャッシュテーブルに登録するキャッシュ作成部と、
前記リードキャッシュテーブルに登録された各エントリを参照し、各エントリに対応するページキャッシュを、前記他のファイルサーバに転送するキャッシュ転送部とを含む
請求項4に記載のファイルサーバ。
The cache management department
Create a read cache table for managing the page cache for each file system area shared with other file servers, and respond to the access request when there is an access request to a file stored in the file system area A cache creation unit that registers an entry including information that can identify a file and a page cache in the read cache table;
The file server according to claim 4, further comprising: a cache transfer unit that refers to each entry registered in the read cache table and transfers a page cache corresponding to each entry to the other file server.
キャッシュ管理部は、
他のファイルサーバからページキャッシュとファイルの識別情報とファイルシステム領域の識別情報とを受信すると、当該ファイルシステム領域に対応するリードキャッシュテーブルを作成し、当該ファイルと当該ページキャッシュとを特定可能な情報を含むエントリを、当該リードキャッシュテーブルに登録するキャッシュコピー部を含み、
前記キャッシュ管理部は、前記他のファイルサーバが停止した場合には、前記キャッシュコピー部が登録したエントリごとに、ページキャッシュと、当該ページキャッシュに対応するファイルとを関連付ける処理を実行し、当該ページキャッシュを使用可能な状態にする
請求項5に記載のファイルサーバ。
The cache management department
When the page cache, file identification information, and file system area identification information are received from another file server, a read cache table corresponding to the file system area is created, and the information that can identify the file and the page cache Including a cache copy unit that registers an entry including
The cache management unit executes a process of associating a page cache with a file corresponding to the page cache for each entry registered by the cache copy unit when the other file server is stopped, The file server according to claim 5, wherein the cache is made available.
他のファイルサーバと共有するファイルシステム領域に格納されたファイルに対するアクセス要求を受け付けた場合に、当該アクセス要求に対応するページキャッシュを、当該ファイルの識別情報および当該ファイルシステム領域の識別情報とともに前記他のファイルサーバに転送し、
前記他のファイルサーバから受信した、ページキャッシュとファイルの識別情報とファイルシステム領域の識別情報とを対応付けて保持し、前記他のファイルサーバの停止時に、当該ファイルシステム領域に格納された当該ファイルに対するアクセス要求を受け付けた場合には、当該ページキャッシュを使用して応答する
ことを特徴とするキャッシュ管理方法。
When an access request for a file stored in a file system area shared with another file server is received, the page cache corresponding to the access request is displayed together with the identification information of the file and the identification information of the file system area. To the file server
The page cache, file identification information, and file system area identification information received from the other file server are stored in association with each other, and the file stored in the file system area when the other file server is stopped. A cache management method characterized by responding using the page cache when an access request is received.
コンピュータに、
他のファイルサーバと共有するファイルシステム領域に格納されたファイルに対するアクセス要求を受け付けた場合に、当該アクセス要求に対応するページキャッシュを、当該ファイルの識別情報および当該ファイルシステム領域の識別情報とともに前記他のファイルサーバに転送する処理と、
前記他のファイルサーバから受信した、ページキャッシュとファイルの識別情報とファイルシステム領域の識別情報とを対応付けて保持し、前記他のファイルサーバの停止時に、当該ファイルシステム領域に格納された当該ファイルに対するアクセス要求を受け付けた場合には、当該ページキャッシュを使用して応答する処理とを実行させる
ためのキャッシュ管理プログラム。
On the computer,
When an access request for a file stored in a file system area shared with another file server is received, the page cache corresponding to the access request is displayed together with the identification information of the file and the identification information of the file system area. Transfer to the file server of
The page cache, file identification information, and file system area identification information received from the other file server are stored in association with each other, and the file stored in the file system area when the other file server is stopped. A cache management program for executing a response process using the page cache when an access request is received.
JP2013068940A 2013-03-28 2013-03-28 Storage system, file server, cache management method, and cache management program Active JP6094317B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013068940A JP6094317B2 (en) 2013-03-28 2013-03-28 Storage system, file server, cache management method, and cache management program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013068940A JP6094317B2 (en) 2013-03-28 2013-03-28 Storage system, file server, cache management method, and cache management program

Publications (2)

Publication Number Publication Date
JP2014191754A true JP2014191754A (en) 2014-10-06
JP6094317B2 JP6094317B2 (en) 2017-03-15

Family

ID=51837898

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013068940A Active JP6094317B2 (en) 2013-03-28 2013-03-28 Storage system, file server, cache management method, and cache management program

Country Status (1)

Country Link
JP (1) JP6094317B2 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001092681A (en) * 1999-09-21 2001-04-06 Toshiba Corp System for sharing disk and method for sharing disk data
JP2003256276A (en) * 2002-02-27 2003-09-10 Nec Corp Switch device with incorporated cache with inter-switch data transfer function, and control method

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001092681A (en) * 1999-09-21 2001-04-06 Toshiba Corp System for sharing disk and method for sharing disk data
JP2003256276A (en) * 2002-02-27 2003-09-10 Nec Corp Switch device with incorporated cache with inter-switch data transfer function, and control method

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
JPN6017000220; 高橋浩和、三好和人: '図解 Linuxカーネル2.4の設計と実装' Linux Japan 第4巻,第5号,通巻29号, 20010501, pp.139-165, 東京:五橋研究所 *

Also Published As

Publication number Publication date
JP6094317B2 (en) 2017-03-15

Similar Documents

Publication Publication Date Title
US10642704B2 (en) Storage controller failover system
US10178168B2 (en) Read-after-write consistency in data replication
US8655851B2 (en) Method and system for performing a clean file lock recovery during a network filesystem server migration or failover
US9830088B2 (en) Optimized read access to shared data via monitoring of mirroring operations
US8484510B2 (en) Enhanced cluster failover management
US9262323B1 (en) Replication in distributed caching cluster
US20140188957A1 (en) Hierarchical storage system and file management method
US11070979B2 (en) Constructing a scalable storage device, and scaled storage device
US10185636B2 (en) Method and apparatus to virtualize remote copy pair in three data center configuration
US20160224437A1 (en) Efficient Mechanism to Replicate Data for Multiple Controllers
US20140059315A1 (en) Computer system, data management method and data management program
US20180069944A1 (en) Automatic data replica manager in distributed caching and data processing systems
EP3648405B1 (en) System and method to create a highly available quorum for clustered solutions
US11409471B2 (en) Method and apparatus for performing data access management of all flash array server
CN105468296A (en) No-sharing storage management method based on virtualization platform
US9454445B2 (en) Fault tolerant server
US11134121B2 (en) Method and system for recovering data in distributed computing system
KR102245309B1 (en) Method of data storage and operating methode of datacenter cluster caching system
US8621260B1 (en) Site-level sub-cluster dependencies
CN117176799A (en) Fault processing method of distributed system and related equipment
JP6094317B2 (en) Storage system, file server, cache management method, and cache management program
CN112131145B (en) Caching method and device applied to ceph
US9971532B2 (en) GUID partition table based hidden data store system
CN113641763A (en) Distributed time sequence database system, electronic equipment and storage medium
WO2016046951A1 (en) Computer system and file management method therefor

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160205

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20161114

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20170117

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170130

R150 Certificate of patent or registration of utility model

Ref document number: 6094317

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150